* Fix issues from #120
* Include USWDS scss into build.
Allows us to do theme things. Compile time slower... Not sure if it's worth it since most items can be overridden in css and we can't theme the Navbar (e.g. invert colors).
* Update J40Footer.spec.tsx.snap
* Update gatsby-config.js
* Fixes#66: As a developer, I want to limit the audience
that sees new features, so that we can control
the message and positioning of our tool.
Implements simple feature flagging via URL parameters.
Provide "?flags=x,y,z" to enable flags x, y, and z.
* Fixing type to use Location instead of URL
* Updating README with info on how to use feature flags
* More layout fixes
* Get aside flush with top/bottom
* Media change iconlist to one column on mobile
* Misc other fixes
* convert className to use React syntax consistently.
* Update J40Footer.spec.tsx.snap
TODO: body font need to be addressed at the theme level?
* Addresses #78 - As a member of the public, I want to know that our site is a work in progress, so I can set appropriate expectations
* updating wording
* eslint changes
* package-lock updates
* Updating styling slightly and moving to top of page
* using the higher-level react-testing-library, and regenerating snapshot - renders real DOM elements
* Basic e2e testing with Cypress, following the guide here: https://www.gatsbyjs.com/docs/how-to/testing/end-to-end-testing/ ; needed to install cypress-local to avoid jest-cypress collision
* Adding accessibility testing support and basic a11y tests
* adding failure logging
* Adding nightly test run
* Fix misc stuff from lighthouse (#81)
* Removing local-cypress, relying instead on a combination
of type reference and eslint-plugin-cypress;
adding cypress to jest ignore paths to avoid conflict -
`npm test` is now jest-only, use `npm run test:e2e` to run cypress tests
* updating comment to clarify timezone
* Fix misc stuff from lighthouse
- Icons in list were resizing to be too small.
- Added robots.txt (full exclude for now)
- Add favicon.ico placeholder
- Added page title using helmet (react-helmet + gatsby-plugin-react-helmet)
Note: not sure if react-helmet can be in dev section of package.json?
* Move helmet to header file
- Moved `<Helmet><title>{title}</title></Helmet>` to Header.
- Added ts support for Helmet.
* Fix title header
* Basic Layout
- Merge with main into new branch
- Most of main content and footer working.
- Could not get fixed branch of trussworks to `npm install` correctly, so reverted back to public version. (`trussworks/react-uswds#kh-serverside-rendering-fix-1250"`)
TODO:
- stack sgv warning+cloud icons
- get timeline image (which as text that needs to scale)
- localization support
- move icon includes out of header?
- start converting elements over to trussworks
* Cleanup
- removed unused styles
- added some better comments
* Revert trussworks to fixed branch
* Update package-lock.json
* Temporarily pointing toward personal fork until SSR issue has been addressed
* Update J40Footer.spec.tsx.snap
* setting jestEnvironment to the proper 'jsdom' value, needed for snapshot tests
* lingering prettier fix
* small version bump
Co-authored-by: Nat Hillard <Nathaniel.K.Hillard@omb.eop.gov>
Addresses #11 item "Linting/formatting (eg eslnt, prettier)":
* Adding eslint, prettier, and config targeting Google, typescript, and both nodejs and client builds
* Addressing linter-found issues
* Adding lint and lint:fix commands
* Adding documentation
* Renaming workflow and adding lint check
* Adding documentation about VSCode linting/formatting, ran formatting on a few files, set up exclude list for gatsby develop, setup build to fail on error
Addresses #58 , "As a member of the public, I want to see J40's website live on the internet, so that I know it's real!" - hosting on github pages for now as a temporary measure. This fix does NOT: 1) add .gov domain hosting, or 2) post to the geoplatform s3 bucket. This will need to happen in a subsequent fix.
The changes made specifically to enable this for now:
* Adding github action to build, test, and deploy on pushes to client/
* Adding path prefix to build gh-pages at https://usds.github.io/justice40-tool/
* (Temporarily) pointing to fix branch for trussworks to enable SSR building
* Removing the workaround for the above bug in gatsby-node.js
* Setting build target to be 14.x due to version number limitations
* Adding gh-pages dependency, deploy action for manual deploy
* Force renaming J40header -> J40Header and J40footer -> J40Footer due to Linux case sensitivity
Integrate gatsby-plugin-intl for internationalization
Replaces static text with `intl.formatMessage` call and Links with `gatsby-plugin-intl` equivalent
Note: `npm install` now requires `--force` to install the latest `gatsby-plugin-intl` as it doesn't explicitly support gatsby3.0
* Addresses issue #16 -
Add styles via sass and module imports
Adds typed scss imports via gatsby-plugin-sass.
Makes use of .d.scss file generated by gatsby-plugin-scss-typescript,
but avoids importing that directly while they work out issue in gatsby v3.
* adding vscode config for easier local debugging