* initial docker
* adds concurrency to be able to run yarn install
* adds 0.0.0.0 to allow docker access
* adds web service
* adds env variables
* updates root path
* adds volumes
* adds docker to readme
* adds score server client docker
* docker updates after convo
* speeds up build and removes env vars
* adds client as volume
* updates to docker setup
* checkpoint
* updates the docker file
* adds .env.* files
* replaces serve with http-server for cors
Co-authored-by: Jorge Escobar <jorge.e.escobar@omb.eop.gov>
* Fix button centering on iphone
For some reason, physical iPhones are not centering the text inside the map buttons correctly. (`48`, `AK`, `HI`, `PR`)
* convert to verbose css syntax
* Test using svg buttons
* Remove unused style reference
* Fix new icon svg images were "eating" the button's click events
* 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.
* Refactor alerts
* Remove J40Alert and classes
* Make AlertWrapper the primary component.
* Props to show one or both alerts
* Unit tests to verify one or both works correctly
* Update pages to use AlertWrapper
* Remove unused J40Aside.
* Remove dead code from index
* Card sections of the About page
* Create index.test.tsx
* Add test that verifies no console errors and no undefined variables.
* Added unit test with snapshot
* use global.console.error
* Fix unit test for console.error()
* Remove areasOfFocusList since it's no longer used
* CSS adjustments from PR
* Add back in AlertWrapper
* github.com link opens in new tab
* adds comment to globalize console.error check
* Refactor AboutCard
* Fixing the top grid so it resizes correctly on mobile. (e.g. using `<Grid desktop={{col: 9}}>` will expand to full width when going to mobile.
* So AboutCard can now do 'large' cards (ones at the top) and 'small' cards (ones at the bottom that are 2x per row).
* change `desktop` -> `tablet`
* `<Grid col={1}>{' '}</Grid>`
Co-authored-by: Vim <86254807+vim-usds@users.noreply.github.com>
* Fix putting elements under <p>
* Added Jest test to catch this mistake in the future. It does it by watching console.error().
To add in fixing the bug the test's emulated `console.error()` are echoed to the jest console.error() so they are not lost.
* I tested this by putting a `<h1>` back into the `<p>` and it caught it.
* Update scoreStepsList.test.tsx
* added comment to move console.error ticket to global location
Co-authored-by: Vim <86254807+vim-usds@users.noreply.github.com>
* update areaDetail with data from d3 CDN
- updated constants with d3 CDN info
- placed AreaDetail component in folder
- fixed J40Alert padding-left console warning
- added tests for both J40Alert rendering
* udpates FE to percentile data
* testing CORS on PR'd URL
* testing PR'd URL
* Step progress list
* Layout mostly done. Need to do intl() conversion but it's easier to understand the layout like this.
Will do intl in a different PR
* fix: `em` to `rem`
* Add basic snapshot unit test
* Refactor to move `<DatasetContainer>` out of layout
* `<DatasetContainer>` is now in the methodology page. Starting the review there will help understand the motive for this change.
* Fixed 404 page which seems way out of date.
* Use row/col grid syntax
* intial cards for methodology page
* PR and QA feedback
- adds alert above dataset section
- adds intl
- removes nbsp
- creates directory structure for new components
* revert noUsedLocals flag
* fixed path error
* re-creates scss file to test build failure
* renaming file to troubleshoot build error
* links open in new tabs and removes console.log
* removes units on all scss value that equal 0
* resolving merge conflicts from header merge
* updates snapshots from conflict resolution
* 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.
* Fixing #410 - Clicking a CBG region, then another, then hitting territory button results in random CBG being selected
* Part of fix for #410 - refactoring selection
logic to remove setFeatureState call.
* Renaming layers for clarity and adding constants
* Using constant for layer identifier
* Fixes#409 - Loading a URL with lat/lng/zoom specified occasionally does not work . We now parse the URL on page before initializing the map. Also adds tests for this
* 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
* adding readme with debug instructions
* updating translation tests to pass
* fixes failing latlng url test
* localizing focus buttons
* updating map tests to pass
* temporarily setting to only flag critical+ accessibility errors. To be addressed with full accessibility audit later
* Fixes#320, Zoom button styling does not match spec
* Setting explicit size for icon dimension to avoid automatic SVG sizing weirdness for gatsby build static site
* Update INSTALLATION.md
Update INSTALLATION with more narrative text on how to install and start running parts of the app. We will need to update this soon with more info about the repo organization (once we have a `data` directory), but for now this reflects the current state of the repo.
* Update docs
Move client-specific things to client README, and update client README with steps to get the clientside app running locally.
- site not being at the "topmost level" (e.g. there's a `/path`) makes the approach of having the favicon in a known, static location break (`https://[tld]/favicon.ico`).
Setting the icon via the plugin should make it work. It should be here anyways.
We'll still need to add the SEO plugin as part of the accessibility fixes (setting page meta tags in a i18n way)
Fix for issue #366
* Create gatsby-ssr.js
Note: SSR means "server side rendering". This fix is from a long github discussion about how broken including all css inline in the file is. (Especially since newer CSP guidelines say all css should be in a separate file.)
* PR code review fixes
* Check el.props['data-href'] is valid
* Add comment for production only.
* 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.
* 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
* 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
* 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
* 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