Commit graph

144 commits

Author SHA1 Message Date
Vim
33c3288160
Allows the user to download CBG list (#318)
* adds initial download CBG box

* componentize download packet, adds e2e tests

* changes download file url in test to smaller size

* improve testing functions

* removes underline, colors icon

* replace csv with zip for safari security issue
2021-07-15 11:01:10 -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
3cd6e06115
Parameterize zoom experiments (#339)
* Adding ability to set flags in url
* parameterizing tile layers
2021-07-14 11:26:12 -04:00
Nat Hillard
6c8d71c5b9
Followup styling fixes (#335)
* Followup to add proper score property to popup
* Adding Additional property name constants
2021-07-13 11:17:49 -04:00
Nat Hillard
68c345b950
Adding low zoom level styling (#334)
* Fixes #201 - As an EVCM, I want the map to make sense at varying zoom levels so that I'm not confused . For now uses a usa_low tileset created as part of #209 for zoom levels 3-7. Will need further iteration
* Adding comments
2021-07-12 18:05:11 -04:00
Nat Hillard
be0256e896
[BUG] Tiles disappear after zoom 11 (#324) 2021-07-12 08:41:29 -04:00
Nat Hillard
d0c281ec72
Census block groups should highlight when selected (#317)
* Fixes #280 - adds territory focus buttons for Alaska, Hawaii, Lower 48, and Puerto Rico to enable easy zoom to these locations

* Adding tests - Specifically:
    * Adding VSCode debug command for Cypress and debug port specification
    * Disabling CORS on local tests
    * Adding waitForMapIdle Cypress test helper
    * Adding constants for easy change and access
2021-07-09 10:56:38 -04:00
Nat Hillard
5bade764c6
Fixes #280 - adds territory focus buttons for Alaska, Hawaii, Lower 48, and Puerto Rico to enable easy zoom to these locations (#315) 2021-07-09 09:56:18 -04: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
27d9472326
Add Zoom/Lat/Lng to the URL (#293)
* mandatory eslint fix
* Addresses #286 - Adding lat/lng to the URL
* setting zoom on map load
* adding integration tests for zoom
2021-07-06 14:52:35 -04:00
Vim
e8385e1439
fixes prettier error message during build (#295)
fixes #290
2021-07-02 12:32:55 -07:00
Nat Hillard
beac44ef20
Various map styling fixes (#278)
Addresses #182, #291, #273 and #191 

In particular:
* Removes zoom fading for now
* adds legend
* Styles mapbox popup correctly
* Styles zoom control
* Adds feature borders at higher zoom levels
2021-07-01 12:57:59 -04:00
TomNUSDS
f4f7c35ca8
Site content and style update for sprint2/3 (#279)
* add legend and styling for map page
* update header to latest style/content
* add contact page
* add methodology page
#199 and #200
2021-07-01 07:28:43 -07: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
8b8314aeb3
Addresses #199 - removing non-functioning layer switcher for now (#212)
* Addresses #199 , but just the switcher part. Not functioning at the moment, we should remove to minimize confusion
* Adding comment
2021-06-23 13:31:03 -04:00
Nat Hillard
922740a4cb
Addresses #210, aside should not appear on map page (#211) 2021-06-23 12:47:31 -04:00
TomNUSDS
e7ccd35aa6
Minimal refactor to make maps wider (#149)
Not particularly pretty, but it works.
2021-06-17 07:31:18 -07: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
TomNUSDS
9155326775
Make the accessibility checkers happy (#129)
* Make the accessibility checkers happy
* Include a lang specification in the `<html>` tag.
* reorder `<h#>` header tags.
The `<Aside` to from `<h1>`, `<h2>` to be `<h2>`, `<h3>`. This is because trusswork's `<Footer>` uses and `<h4>` and the accessibility checkers complain it was skipping from `<h2>` -> `<h4>`
* Change `<aria-details>` to `<aria-label>` for milestone list
* Update J40Header.tsx 80 column line
2021-06-14 19:35:35 -07:00
TomNUSDS
760edb4feb
Update global.scss (#127)
Fix some low-contrast accessibility issues for mobile menu.
2021-06-14 13:21:18 -07:00
TomNUSDS
3837538e51
Tomn usds/template8 (#118)
* 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
2021-06-14 11:06:23 -07:00
Nat Hillard
9ea0f946eb
Adding SHA (for PRs)/ Main (for main) to URL (#121)
* Fixes #90 - adds a GHA SHA to PR branches and 'main' for merges to main
2021-06-14 10:42:09 -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
TomNUSDS
acfcf523a7
Add timeline page (#105)
* Add timeline page
* Factor out common aside into component.
* Update J40Footer.spec.tsx.snap
TODO: Get nav menu working.
2021-06-07 09:22:07 -07:00
TomNUSDS
63d33b40d0
More layout fixes (#94)
* 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?
2021-06-04 07:36:16 -07: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
TomNUSDS
f9ac170c6a
More tweaks from today's meeting (#87)
Just playing with layout.
- Inverted header
- updated snapshot
- adjusted column widths
- Update J40Footer.spec.tsx.snap
2021-06-02 18:34:21 -07: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