Commit graph

28 commits

Author SHA1 Message Date
TomNUSDS
55b37fe448
Fix footer alignment (#564)
* Fix footer alignment
* Can't really tweak alignment using trusswork's library.
* Reimplement parts of layout to control grid better.
* Removed trusswork's weird mobile expanding footer menu.
* Update snapshot
* Add some extra bottom padding for mobile view
* Replace fork of trussworks react/uswds with ^2.0.0
Since we're not using trusswork's `<Footer>` component anymore, we should be able to stop using our branch that fixes issues it has with Gatsby.
2021-08-25 10:13:13 -07:00
TomNUSDS
08e21e5d5b
fix #249 header 2 (#425)
* Header updates
* More pixel alignment for nav
* Update unit test snapshots
I removed a stray `,` from `testHelpers.tsx` which changed the output of several snapshots.
* Fixes from PR review
* Forgot to update snapshots after merge with main
* Removed unused (and outdated) timeline page
* Updated some translation descriptions.
2021-08-02 07:48:19 -07:00
Nat Hillard
3238e09792
Loading a URL with lat/lng/zoom specified does not work (#414) 2021-07-27 20:51:35 -04:00
Vim
36f43b2d44
adds map side panel (#406)
* initial map side panel

* componentize MapSidePanel

* remove selection from J40Map

* adds isFeatureSelected to toggle component

* filters data from server for client UI

* styling and refactor

* added TODO

* adds styling to intro and pairing feedback

* add mobile styling

* adds popup back to fs feature flag

* adds tests and aria roles

* makes mobile content same as desktop

* prettier update

* initial e2e mapSidePanel test

* adds cypress tests on desktop and mobile

* adds sass util and updates cypress tests

* cleans up tests

* reverts tsconfig file

* fixes map alignment

* renaming and using constants

* renaming sidePanel to infoPanel

* intl messaging

* adds snapshot testing and utility sass file

* PR feedback
- adds intl messages
- adds data-cy attr to cy tests
- snapshot testing for unit tests
- fixes bug where side panel extends past the map
- moves all wrapper content in MapWrapper

* logs isMobile to troubleshoot deployed PR

* adds react-device-detect for isMobile detection

* adds new instance of map for mobile

* adds instance

* adds isMobile to state

* tests the fix for mobile map view on PR

* PR review feedback
- localize MapIntroduction
- update snapshot tests
- QA feedback
- constants.isMobile points to react-device-detect
2021-07-27 12:05:25 -07:00
TomNUSDS
e066f459fa
Fixed es.json (#354)
* Fixed es.json
- converted remaining english to spanish in file so as to check more locations.
- the `formatjs compile` for Spanish was failing converted back to english for now. build does the correct thing, so it's more just to keep things correct in source.
* add support for eslint-plugin-formatjs
 - eslint rules for formatjs
 - we are mostly protected by typescript checking, but this is a nice sanity check.
2021-07-15 13:00:15 -07:00
Nat Hillard
dbf1ae2ad8
Zoom button styling does not match spec // General custom controls fix (#357) 2021-07-15 10:28:51 -04:00
TomNUSDS
cfce0dc826
End-to-end working localization (#336)
* End-to-end localization working
* Update package.json
* fix FormattedMessage confusion by using the `FormattedMessage` from `gatsby-plugin-intl` NOT `react-intl`
* TODO: `client/src/intl/es.json` should be generated from a translation tool.
* Update package-lock.json
2021-07-14 12:05:18 -07:00
Nat Hillard
2257627938
Use MapLibre for Map Visualization (#300)
* switching to MapLibre (see more at https://github.com/usds/justice40-tool/issues/299)
* Removing traces of OpenLayers
* Review comments - removing unused properties, component
This is a pre-requisite for addressing issue #280 and other similar control-related tickets
2021-07-07 15:04:00 -04:00
Nat Hillard
92efc5c937
Zoom fade for higher zoom levels (#265) 2021-06-30 07:08:22 -04:00
Nat Hillard
f12ab4d3b7
Issue 191 - Multi-state visualization (#226)
Addresses issue #191 - As a stakeholder interested in the cumulative impact score, I want to see more states in the map, so that I can further analyze the score results. Introduces gradient coloration on limited 5-state dataset as well as the core of a few key visual aspects of the map to be expanded upon later.
2021-06-24 13:20:45 -04:00
Nat Hillard
a67b79a748
Adding ol-mapbox-style for easier styling (#148) 2021-06-17 09:28:37 -04:00
Nat Hillard
292c5bc8f5
CEJST Map (#139)
* styles prettier fix
* Addresses issue #100 from the frontend:
* Creates new cejst page and related OL components
* temporarily loads census-derived tileserver at higher zoom levels
* lays out cejst page : TODO :  remove aside
* temporarily removing license check - TODO: fix jsonlint
* review comments
2021-06-16 18:16:49 -04:00
Nat Hillard
7ab14c7f3d
Adding Simple URL-based feature flags (#117)
* 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
2021-06-09 15:32:59 -04:00
Nat Hillard
55d6e6635b
addresses issue #11 sub-item 'license checker' (#92) 2021-06-03 15:03:10 -04:00
Nat Hillard
dddd6d5e03
Warning Banner (#86)
* 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
2021-06-03 13:49:38 -04:00
Nat Hillard
426f596c7a
Adding Cypress for e2e testing (#85)
* 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
2021-06-02 20:53:22 -04:00
Nat Hillard
394260bbec
Splitting dev and prod dependencies, adding npm audit step to catch security vulnerabilities (#88) 2021-06-02 13:21:23 -04:00
TomNUSDS
9f3a030fd5
Fix misc stuff from lighthouse (#81)
* 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
2021-05-28 17:07:50 -07:00
TomNUSDS
3ca4ca9e6d
Basic Layout (#80)
* 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>
2021-05-27 09:54:42 -07:00
Nat Hillard
ce7245b1a2
Addresses issue #11 items unit testing, snapshot testing. Follows instructions from https://www.gatsbyjs.com/docs/how-to/testing/unit-testing/ ; Adding typescript config, mocks, snapshot capabilities; initial test for j40footer and snapshot, readme update, test helper for intl plugin (#79) 2021-05-26 10:01:05 -04:00
Nat Hillard
a432a0d8c9
Adding Linting and Formatting (#77)
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
2021-05-25 16:21:21 -04:00
Nat Hillard
16a9e67db0
Static Deploy to Github Pages (#73)
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
2021-05-25 12:07:45 -04:00
Nat Hillard
a579cb13bf
Addresses part of #16, (#71)
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
2021-05-21 13:05:27 -04:00
Nat Hillard
5c3a3c022a
Temporarily removing the use of useStaticQuery as it seems to have introduced a bug in page rendering. Hard-coding for now; incidentally we will need to load this as a string anyway for localization purposes (#70) 2021-05-21 10:57:20 -04:00
Nat Hillard
a587482967
Typed Sass Styling (#69)
* 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
2021-05-20 23:59:20 -04:00
Nat Hillard
13a4e5f47a
Adding Trussworks USWDS React Wrapper (#67)
* removing unused js
* Working for first load, second raises 'failed to SSR' without DEV_SSR enabled. We will need to fix this before prod
2021-05-20 21:54:08 -04:00
Nat Hillard
ad72a5014c
Informational Site: Typescript (#63)
* #16 pt 2 - adding typescript
* Updating package/package-lock
2021-05-19 18:55:10 -04:00
Nat Hillard
edfe94d2ef
Informational Site: Initial Gatsby Init (#62)
* Initial 'npm init gatsby'
* npm update
2021-05-19 18:19:38 -04:00