mirror of
https://github.com/DOI-DO/j40-cejst-2.git
synced 2025-02-23 10:04:18 -08:00
Merge branch 'main' into esfoobar-usds/release/yaml-based-score-datasets
This commit is contained in:
commit
06a0e802bb
62 changed files with 1066 additions and 1781 deletions
|
@ -1,15 +1,15 @@
|
|||
# Contributor Code of Conduct
|
||||
|
||||
*[¡Lea esto en español!](CODE_OF_CONDUCT-es.md)*
|
||||
_[¡Lea esto en español!](CODE_OF_CONDUCT-es.md)_
|
||||
|
||||
As contributors and maintainers of this project, we pledge to respect all people who contribute through reporting issues, posting feature requests, updating documentation, submitting pull requests or patches, and other activities.
|
||||
|
||||
We are committed to making participation in this project a harassment-free experience for everyone, regardless of level of experience, gender, gender identity and expression, sexual orientation, disability, personal appearance, body size, race, ethnicity, age, or religion.
|
||||
We are committed to making participation in this project a harassment-free experience for everyone, regardless of the level of experience, gender, gender identity, expression, sexual orientation, disability, personal appearance, body size, race, ethnicity, age, or religion.
|
||||
|
||||
Examples of unacceptable behavior by participants include the use of sexual language or imagery, derogatory comments or personal attacks, trolling, public or private harassment, insults, or other unprofessional conduct.
|
||||
|
||||
Project maintainers have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct.
|
||||
Project maintainers have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned with this Code of Conduct.
|
||||
|
||||
Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by opening an issue or contacting one or more of the project maintainers at justice40open@usds.gov.
|
||||
|
||||
This Code of Conduct is adapted from the [Contributor Covenant](http://contributor-covenant.org), version 1.0.0, available at [http://contributor-covenant.org/version/1/0/0/](http://contributor-covenant.org/version/1/0/0/)
|
||||
This Code of Conduct is adapted from the [Contributor Covenant](http://contributor-covenant.org), version 1.0.0, available at [http://contributor-covenant.org/version/1/0/0/](http://contributor-covenant.org/version/1/0/0/)
|
|
@ -1,34 +1,35 @@
|
|||
# Justice40 Open Source Community Guidelines
|
||||
|
||||
This document contains principles and guidelines for participating in the Justice40 open source community.
|
||||
This document contains principles and guidelines for participating in the Justice40 open source community.
|
||||
|
||||
## Principles
|
||||
These principles guide our data, product, and process decisions, architecture, and approach. We discussed and developed these principles on the Open Source Community Kickoff on May 10, 2021.
|
||||
|
||||
* Open means transparent and participatory.
|
||||
* We take a modular and modern approach to software development.
|
||||
* We build open source software and open source process.
|
||||
* We value ease of implementation.
|
||||
* Fostering community includes building capacity and making our software and processes accessible to participants with diverse backgrounds and skill sets.
|
||||
* Data (and data science) is as important as software and process. We build open data sets where possible.
|
||||
* We strive for transparency for algorithms and places we might be introducing bias.
|
||||
* We prioritize data sets that address community vulnerabilities for programs in Justice40.
|
||||
These principles guide our data, product, and process decisions, architecture, and approach. We discussed and developed these principles at the Open Source Community Kickoff on May 10, 2021.
|
||||
|
||||
- Open means transparent and participatory.
|
||||
- We take a modular and modern approach to software development.
|
||||
- We build open-source software and open-source process.
|
||||
- We value ease of implementation.
|
||||
- Fostering community includes building capacity and making our software and processes accessible to participants with diverse backgrounds and skillsets.
|
||||
- Data (and data science) is as important as software and process. We build open data sets where possible.
|
||||
- We strive for transparency for algorithms and places we might be introducing bias.
|
||||
- We prioritize data sets that address community vulnerabilities for programs in Justice40.
|
||||
|
||||
## Community Guidelines
|
||||
|
||||
All community members are expected to adhere to our [Code of Conduct](CODE_OF_CONDUCT.md).
|
||||
|
||||
Information on contributing to this repository are available in our [Contributing file](CONTRIBUTING.md).
|
||||
Information on contributing to this repository is available in our [Contributing file](CONTRIBUTING.md).
|
||||
|
||||
When participating in Justice40 open source community conversations and spaces, we ask individuals to follow the following guidelines:
|
||||
|
||||
* When joining a conversation for the first time, please introduce yourself by providing a brief intro that includes:
|
||||
* your related organization (if applicable)
|
||||
* your pronouns
|
||||
* disclosure of any current or potential financial interest in this work
|
||||
* your superpower, and how you hope to use it for Justice 40
|
||||
* Embrace a culture of learning, and educate each other. We are all entering this conversation from different starting points and with different backgrounds. There are no dumb questions.
|
||||
* Take space and give space. We strive to create an equitable environment in which all are welcome and able to participate. We hope individuals feel comfortable voicing their opinions and providing contributions, and will do our best to recognize and make space for individuals who may be struggling to find space here. Likewise we expect individuals to recognize when they are taking up significant space and take a step back to allow room for others.
|
||||
* Be present when joining synchronous conversations such as our community chat. Why be here if you're not going to _be here_?
|
||||
* Be respectful.
|
||||
* Default to positive. Assume others' contributions are legitimate and valuable and that they are made with good intention.
|
||||
- When joining a conversation for the first time, please introduce yourself by providing a brief intro that includes:
|
||||
- your related organization (if applicable)
|
||||
- your pronouns
|
||||
- disclosure of any current or potential financial interest in this work
|
||||
- your superpower, and how you hope to use it for Justice 40
|
||||
- Embrace a culture of learning, and educate each other. We are all entering this conversation from different starting points and with different backgrounds. There are no dumb questions.
|
||||
- Take space and give space. We strive to create an equitable environment in which all are welcome and able to participate. We hope individuals feel comfortable voicing their opinions and providing contributions and will do our best to recognize and make space for individuals who may be struggling to find space here. Likewise, we expect individuals to recognize when they are taking up significant space and take a step back to allow room for others.
|
||||
- Be present when joining synchronous conversations such as our community chat. Why be here if you're not going to _be here_?
|
||||
- Be respectful.
|
||||
- Default to positive. Assume others' contributions are legitimate and valuable and that they are made with good intention.
|
|
@ -35,7 +35,9 @@ Abra [aquí](https://github.com/usds/justice40-tool/issues/new/choose) un proble
|
|||
En el problema, describa la función que desea, por qué la necesita y cómo debería funcionar esta. Los integrantes del equipo responderán a este lo antes posible.
|
||||
|
||||
### Colaboraciones con código
|
||||
<!-- markdown-link-check-disable -->
|
||||
Si desea colaborar con alguna parte del código base, bifurque el repositorio siguiendo la [siguiente metodología de GitHub para hacer la bifurcación](https://docs.github.com/es/get-started/quickstart/fork-a-repo) *(en inglés)*. Luego, haga los cambios en el código de su propia copia del repositorio (incluya pruebas, si corresponde) y, por último, [envíe una solicitud para incorporar los cambios en el repositorio precedente](https://docs.github.com/es/github/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-a-pull-request-from-a-fork) *(en inglés)*. Para poder fusionar una solicitud de incorporación de cambios, las siguientes opciones en este repositorio deben estar habilitadas:
|
||||
<!-- markdown-link-check-disable -->
|
||||
|
||||
* No se permiten las fusiones al proyecto principal `main`; abra una solicitud de incorporación de cambios desde una rama.
|
||||
* Al menos un revisor autorizado debe aprobar la confirmación (en [CODEOWNERS](https://github.com/usds/justice40-tool/tree/main/.github/CODEOWNERS), en inglés, consulte la lista más reciente de estos revisores).
|
||||
|
|
|
@ -40,8 +40,9 @@ Please open an issue of type "Feature request" [here](https://github.com/usds/ju
|
|||
In the issue, please describe the feature you would like to see, why you need it, and how it should work. Team members will respond to the issue as soon as possible.
|
||||
|
||||
### Code contributions
|
||||
|
||||
<!-- markdown-link-check-disable -->
|
||||
If you would like to contribute to any part of the codebase, please fork the repository [following the Github forking methodology](https://docs.github.com/en/github/getting-started-with-github/quickstart/fork-a-repo). Then, make changes to the code in your own copy of the repository, including tests if applicable, and finally [submit a pull request against the upstream repo.](https://docs.github.com/en/github/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-a-pull-request-from-a-fork) In order for us to merge a pull request, the following checks are enabled within this repo:
|
||||
<!-- markdown-link-check-enable -->
|
||||
|
||||
- Merges to `main` are prohibited - please open a pull request from a branch
|
||||
- Please create a branch name in the format of `<github-username>`/`<issue-number>`-`<kebab-case-description>`. For example vimusds/1069-fix-territory-on-mobile
|
||||
|
|
|
@ -2,6 +2,8 @@
|
|||
|
||||
This page contains web links to the datasets that are uploaded as part of our data pipeline, if you want to access them directly. Note that this is just a quick reference and the [Data Pipeline README](/data/data-pipeline/README.md) has the comprehensive documentation on all these datasets.
|
||||
|
||||
This page contains web links to the datasets that are uploaded as part of our data pipeline if you want to access them directly. Note that this is just a quick reference and the [Data Pipeline README](/data/data-pipeline/README.md) has comprehensive documentation on all these datasets.
|
||||
|
||||
> Note: These currently aren't updated on any specific cadence, so be aware of this if you know that the dataset you are using might change frequently.
|
||||
|
||||
- Census data, generated by the [Generate Census Github Action](https://github.com/usds/justice40-tool/blob/main/.github/workflows/generate-census.yml): <https://justice40-data.s3.us-east-1.amazonaws.com/data-sources/census.zip>
|
||||
|
|
|
@ -49,8 +49,10 @@ Si bien se puede usar cualquier IDE, describimos cómo configurar VS Code
|
|||
5. [Live Share Extention Pack](https://github.com/MicrosoftDocs/live-share)
|
||||
|
||||
## Ejecuta el código
|
||||
|
||||
<!-- markdown-link-check-disable -->
|
||||
1. Bifurcar este repositorio y crear un clon local. [Más información](https://docs.github.com/es/github/getting-started-with-github/quickstart/fork-a-repo)
|
||||
<!-- markdown-link-check-enable -->
|
||||
|
||||
1. Si está usando una Mac y Homebrew, abra la terminal y escriba `brew update` y `brew doctor`.
|
||||
|
||||
Para el desarrollo de front-end, lea el [Client README](client/README.md).
|
||||
|
|
|
@ -1,12 +1,12 @@
|
|||
# Justice40 Tool Installation
|
||||
|
||||
*[¡Lea esto en español!](INSTALLATION-es.md)*
|
||||
_[¡Lea esto en español!](INSTALLATION-es.md)_
|
||||
|
||||
This page documents the installation steps for some of the software needed to work with this project.
|
||||
|
||||
> **NOTE: If you all you want to do is quickly run everything locally to try out the application, go straight to [`QUICKSTART.md`](QUICKSTART.md).**
|
||||
> **NOTE: If all you want to do is quickly run everything locally to try out the application, go straight to [`QUICKSTART.md`](QUICKSTART.md).**
|
||||
|
||||
After the generic installation steps on this page, continue on to one of the following, depending on what you are trying to do:
|
||||
After the generic installation steps on this page, continue to one of the following, depending on what you are trying to do:
|
||||
|
||||
- If you are working with the frontend, see [`client/README.md`](client/README.md).
|
||||
- If you are working with the data pipeline, see [`data/data-pipeline/README.md`](data/data-pipeline/README.md).
|
||||
|
@ -25,10 +25,10 @@ Download from [website](https://git-scm.com/download/win)
|
|||
|
||||
## Install Homebrew (MacOS only)
|
||||
|
||||
Homebrew is an easy way to manage software downloads on MacOS. You don't *have* to use it, but we recommend it.
|
||||
Homebrew is an easy way to manage software downloads on MacOS. You don't _have_ to use it, but we recommend it.
|
||||
|
||||
1. First, open your terminal and run `brew -v` to determine whether you have Homebrew installed. If you get a resopnse that looks something like `Homebrew 3.1.9`, you've already got it! If you get nothing back, or an error, continue.
|
||||
2. Open the terminal and copy / paste this command and hit RETURN. Go through the prompts (you will need to grant `sudo` access).
|
||||
1. First, open your terminal and run `brew -v` to determine whether you have Homebrew installed. If you get a response that looks something like `Homebrew 3.1.9`, you've already got it! If you get nothing back, or an error, continue.
|
||||
2. Open the terminal and copy/paste this command and hit RETURN. Go through the prompts (you will need to grant `sudo` access).
|
||||
|
||||
`/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"`
|
||||
|
||||
|
@ -36,6 +36,28 @@ Homebrew is an easy way to manage software downloads on MacOS. You don't *have*
|
|||
|
||||
You should regularly run `brew update` and `brew doctor` to make sure your packages are up to date and in good condition.
|
||||
|
||||
### Install Node using NVM
|
||||
|
||||
This will work for both MacOS and Win10. Follow instructions on this [link](https://medium.com/@nodesource/installing-node-js-tutorial-using-nvm-5c6ff5925dd8). Be sure to read through the whole doc to find the sections within each step relevant to you (e.g. if you're using Homebrew, when you get to Step 2 look for the section, "Install NVM with Homebrew").
|
||||
|
||||
If you install NVM using Homebrew, make sure to read the output in terminal after you run `brew install nvm`. You will need to add a few lines to your ~/.bash_profile and perhaps complete a couple other tasks.
|
||||
|
||||
Once you install NVM, don't forget to install Node! This is included in the linked tutorial above.
|
||||
|
||||
After you've downloaded the nvm and the latest node (using the above steps) also install node version 14 by:
|
||||
|
||||
`brew install node@14`
|
||||
|
||||
You should then be able to switch to that version of node by:
|
||||
|
||||
`nvm use 14`
|
||||
|
||||
To validate you are using node 14, type:
|
||||
|
||||
`node -v`
|
||||
|
||||
This should return *Now using node 14.x.x (npm v6.x.x)*
|
||||
|
||||
## IDE set up (Optional)
|
||||
While any IDE can be used, we're outlining how to set up VS Code
|
||||
|
||||
|
|
|
@ -20,7 +20,7 @@ The Justice40 team is taking a community-first and open source approach to the p
|
|||
|
||||
We know that we can learn from a wide variety of communities, including those who will use or will be impacted by the tool, who are experts in data science or technology, or who have experience in climate, economic,or environmental justice work. We are dedicated to creating forums for continuous conversation and feedback to help shape the design and development of the tool.
|
||||
|
||||
We also recognize capacity building as a key part of involving a diverse open source community. We are doing our best to use accessible language, provide technical and process documents in multiple languages, and offer support to our community members of a wide variety of background and skillsets, directly or in the form of group chats and training. If you have ideas for how we can improve or add to our capacity building efforts and methods for welcoming folks into our community, please let use know in the [Google Group](https://groups.google.com/u/4/g/justice40-open-source) or email us at justice40open@usds.gov.
|
||||
We also recognize capacity building as a key part of involving a diverse open source community. We are doing our best to use accessible language, provide technical and process documents in multiple languages, and offer support to our community members of a wide variety of backgrounds and skillsets, directly or in the form of group chats and training. If you have ideas for how we can improve or add to our capacity building efforts and methods for welcoming folks into our community, please let us know in the [Google Group](https://groups.google.com/u/4/g/justice40-open-source) or email us at justice40open@usds.gov.
|
||||
|
||||
### Community Guidelines
|
||||
Principles and guidelines for participating in our open source community are available [here](COMMUNITY_GUIDELINES.md). Please read them before joining or starting a conversation in this repo or one of the channels listed below.
|
||||
|
@ -35,7 +35,7 @@ Our [Google Group](https://groups.google.com/u/4/g/justice40-open-source) is ope
|
|||
|
||||
The core team uses the group to post updates on the program and tech/data issues, and to share the agenda and call for community participation in the community chat.
|
||||
|
||||
Curious about whether to ask a question here as a Github issue or in the Google Group? The general rule of thumb is that issues are for actionable topics related to the tool or data itself (e.g. questions about a specific data set in use, or suggestion for a new tool feature), and the Google Group is for more general topics or questions. If you can't decide, use the google group and we'll discuss there before moving to Github if appropriate!
|
||||
Curious about whether to ask a question here as a Github issue or in the Google Group? The general rule of thumb is that issues are for actionable topics related to the tool or data itself (e.g. questions about a specific data set in use, or suggestion for a new tool feature), and the Google Group is for more general topics or questions. If you can't decide, use the google group and we'll discuss it there before moving to Github if appropriate!
|
||||
|
||||
## Contributing
|
||||
|
||||
|
@ -55,7 +55,7 @@ If you want to run the entire application locally, see [QUICKSTART.md](QUICKSTAR
|
|||
|
||||
### Advanced Guides
|
||||
|
||||
If you have software experience or more specific use cases, start at [INSTALLATION.md](INSTALLATION.md) for more in depth documentation of how to work with this project.
|
||||
If you have software experience or more specific use cases, start at [INSTALLATION.md](INSTALLATION.md) for more in-depth documentation of how to work with this project.
|
||||
|
||||
### Project Documentation
|
||||
|
||||
|
|
|
@ -9,9 +9,12 @@ GATSBY_LOCAL_TILES_BASE_URL=http://localhost:5000/data/data-pipeline
|
|||
GATSBY_DATA_PIPELINE_SCORE_PATH_LOCAL=data_pipeline/data/score
|
||||
GATSBY_DATA_PIPELINE_SCORE_PATH=data-pipeline/data/score
|
||||
|
||||
GATSBY_SCORE_DOWNLOAD_FILE_PATH=downloadable/Screening_Tool_Data.zip
|
||||
GATSBY_SHAPE_FILE_PATH=shapefile/usa.zip
|
||||
GATSBY_TSD_DOWNLOAD_FILE_PATH=downloadable/cejst_technical_support_document.pdf
|
||||
GATSBY_FILE_DL_PATH_SCREENING_TOOL_DATA_ZIP=downloadable/Screening_Tool_Data.zip
|
||||
GATSBY_FILE_DL_PATH_SHAPE_FILE_ZIP=shapefile/usa.zip
|
||||
GATSBY_FILE_DL_PATH_TSD_PDF=downloadable/cejst_technical_support_document.pdf
|
||||
GATSBY_FILE_DL_PATH_COMMUNITIES_LIST_XLS=downloadable/communities-2022-05-12-1914GMT.xlsx
|
||||
GATSBY_FILE_DL_PATH_COMMUNITIES_LIST_CSV=downloadable/communities-2022-05-12-1914GMT.csv
|
||||
GATSBY_FILE_DL_PATH_HOW_TO_COMMUNITIES_PDF=downloadable/Draft_Communities_List.pdf
|
||||
|
||||
GATSBY_MAP_TILES_PATH=tiles
|
||||
|
||||
|
|
|
@ -6,7 +6,12 @@
|
|||
GATSBY_CDN_TILES_BASE_URL=https://static-data-screeningtool.geoplatform.gov
|
||||
|
||||
GATSBY_DATA_PIPELINE_SCORE_PATH=data-pipeline/data/score
|
||||
GATSBY_SCORE_DOWNLOAD_FILE_PATH=downloadable/Screening_Tool_Data.zip
|
||||
GATSBY_SHAPE_FILE_PATH=shapefile/usa.zip
|
||||
GATSBY_TSD_DOWNLOAD_FILE_PATH=downloadable/cejst_technical_support_document.pdf
|
||||
|
||||
GATSBY_FILE_DL_PATH_SCREENING_TOOL_DATA_ZIP=downloadable/Screening_Tool_Data.zip
|
||||
GATSBY_FILE_DL_PATH_SHAPE_FILE_ZIP=shapefile/usa.zip
|
||||
GATSBY_FILE_DL_PATH_TSD_PDF=downloadable/cejst_technical_support_document.pdf
|
||||
GATSBY_FILE_DL_PATH_COMMUNITIES_LIST_XLS=downloadable/communities-2022-05-12-1914GMT.csv
|
||||
GATSBY_FILE_DL_PATH_COMMUNITIES_LIST_CSV=downloadable/communities-2022-05-12-1914GMT.xlsx
|
||||
GATSBY_FILE_DL_PATH_HOW_TO_COMMUNITIES_PDF=downloadable/Draft_Communities_List.pdf
|
||||
|
||||
GATSBY_MAP_TILES_PATH=tiles
|
||||
|
|
|
@ -26,6 +26,19 @@ If you install NVM using Homebrew, make sure to read the output in terminal afte
|
|||
|
||||
Once you install NVM, don't forget to install Node! This is included in the linked tutorial above. This will also install `npm` which you need for the steps below.
|
||||
|
||||
After you've downloaded the nvm and the latest node (using the above steps) also install node version 14 by:
|
||||
|
||||
`brew install node@14`
|
||||
|
||||
You should then be able to switch to that version of node by:
|
||||
|
||||
`nvm use 14`
|
||||
|
||||
To validate you are using node 14, type:
|
||||
|
||||
`node -v`
|
||||
|
||||
This should return *Now using node 14.x.x (npm v6.x.x)*
|
||||
#### Install Yarn
|
||||
|
||||
Install yarn if you do not have it yet. Open your terminal and run `sudo npm install -global yarn`. This works on MacOS and Win10. To confirm it is installed, run `yarn -v`. A version number should be returned.
|
||||
|
|
|
@ -51,7 +51,13 @@ If the file is super big we can just look at the head of the file:
|
|||
|
||||
In order to see the json file in a pretty format, pipe to jq:
|
||||
|
||||
- `tippecanoe-decode d3_313.pbf 3 1 3 | head -40 | jq`
|
||||
- `tippecanoe-decode d3_313.pbf 3 1 3 | jq`
|
||||
|
||||
While to view just a portion of the feature tile (note we're using a high zoom tile in this example):
|
||||
|
||||
- `tippecanoe-decode d3_9_138_206.pbf 9 138 206 | jq .features | head -100`
|
||||
|
||||
This will filter the decoded pbf by the `features` key and then show the first element in the feature array.
|
||||
|
||||
When the map is clicked, the data (aka features - which are sets of properties in the geojson file ) of the map are able to be accessed via the MapEvent. See [j40Map.tsx](https://github.com/usds/justice40-tool/blob/main/client/src/components/J40Map.tsx)'s `onClick` method for more details.
|
||||
|
||||
|
|
|
@ -0,0 +1,7 @@
|
|||
@use '../../styles/design-system.scss' as *;
|
||||
|
||||
.downloadIcon {
|
||||
height: 1rem;
|
||||
vertical-align: middle;
|
||||
filter: invert(57%) sepia(6%) saturate(3932%) hue-rotate(163deg) brightness(86%) contrast(88%);
|
||||
}
|
13
client/src/components/DownloadLink/DownloadLink.module.scss.d.ts
vendored
Normal file
13
client/src/components/DownloadLink/DownloadLink.module.scss.d.ts
vendored
Normal file
|
@ -0,0 +1,13 @@
|
|||
declare namespace DownloadLinkNamespace {
|
||||
export interface IDownloadLink {
|
||||
downloadIcon: string;
|
||||
}
|
||||
}
|
||||
|
||||
declare const DownloadLinkModule: DownloadLinkNamespace.IDownloadLink & {
|
||||
/** WARNING: Only available when `css-loader` is used without `style-loader` or `mini-css-extract-plugin` */
|
||||
locals: DownloadLinkNamespace.IDownloadLink;
|
||||
};
|
||||
|
||||
export = DownloadLinkModule;
|
||||
|
|
@ -1,12 +1,12 @@
|
|||
import * as React from 'react';
|
||||
import {render} from '@testing-library/react';
|
||||
import {LocalizedComponent} from '../../test/testHelpers';
|
||||
import DownloadPacket from './DownloadPacket';
|
||||
import DownloadLink from './DownloadLink';
|
||||
|
||||
describe('download packet component defined', () => {
|
||||
describe('rendering of the DownloadLink disadvantaged', () => {
|
||||
const {asFragment} = render(
|
||||
<LocalizedComponent>
|
||||
<DownloadPacket />
|
||||
<DownloadLink href="https://google.com" linkText="Google"/>
|
||||
</LocalizedComponent>,
|
||||
);
|
||||
|
||||
|
@ -14,4 +14,3 @@ describe('download packet component defined', () => {
|
|||
expect(asFragment()).toMatchSnapshot();
|
||||
});
|
||||
});
|
||||
|
40
client/src/components/DownloadLink/DownloadLink.tsx
Normal file
40
client/src/components/DownloadLink/DownloadLink.tsx
Normal file
|
@ -0,0 +1,40 @@
|
|||
import React from 'react';
|
||||
import {defineMessages, useIntl} from 'gatsby-plugin-intl';
|
||||
|
||||
import {IDefineMessage} from '../../data/copy/common';
|
||||
|
||||
// @ts-ignore
|
||||
import fileDownloadIcon from '/node_modules/uswds/dist/img/usa-icons/file_download.svg';
|
||||
import * as styles from './DownloadLink.module.scss';
|
||||
|
||||
export const DOWNLOAD_ICON = defineMessages({
|
||||
ALT_TAG: {
|
||||
id: 'downloads.page.download.icon.alt.tag',
|
||||
defaultMessage: 'The icon used to indicate that the file is downloadable',
|
||||
description: 'Navigate to the Downloads page, this is the icon used to indicate that the file is downloadable',
|
||||
},
|
||||
});
|
||||
|
||||
interface IDownloadLink {
|
||||
href: string | IDefineMessage,
|
||||
linkText: string | JSX.Element,
|
||||
}
|
||||
const DownloadLink = ({href, linkText}:IDownloadLink) => {
|
||||
const intl = useIntl();
|
||||
|
||||
if (href && typeof href !== `string`) {
|
||||
href = intl.formatMessage(href);
|
||||
}
|
||||
return (
|
||||
<>
|
||||
<a href={href} download>{linkText}</a>
|
||||
<img
|
||||
className={styles.downloadIcon}
|
||||
src={fileDownloadIcon}
|
||||
alt={intl.formatMessage(DOWNLOAD_ICON.ALT_TAG)}
|
||||
/>
|
||||
</>
|
||||
);
|
||||
};
|
||||
|
||||
export default DownloadLink;
|
|
@ -0,0 +1,16 @@
|
|||
// Jest Snapshot v1, https://goo.gl/fbAQLP
|
||||
|
||||
exports[`rendering of the DownloadLink disadvantaged checks if component renders 1`] = `
|
||||
<DocumentFragment>
|
||||
<a
|
||||
download=""
|
||||
href="https://google.com"
|
||||
>
|
||||
Google
|
||||
</a>
|
||||
<img
|
||||
alt="The icon used to indicate that the file is downloadable"
|
||||
src="test-file-stub"
|
||||
/>
|
||||
</DocumentFragment>
|
||||
`;
|
3
client/src/components/DownloadLink/index.tsx
Normal file
3
client/src/components/DownloadLink/index.tsx
Normal file
|
@ -0,0 +1,3 @@
|
|||
import DownloadLink from './DownloadLink';
|
||||
|
||||
export default DownloadLink;
|
|
@ -1,94 +0,0 @@
|
|||
import React, {FC} from 'react';
|
||||
import {Button, Grid, Tag} from '@trussworks/react-uswds';
|
||||
|
||||
import * as styles from './downloadPacket.module.scss';
|
||||
import * as METHODOLOGY_COPY from '../../data/copy/methodology';
|
||||
|
||||
// @ts-ignore
|
||||
import downloadIcon from '/node_modules/uswds/dist/img/usa-icons/file_download.svg';
|
||||
|
||||
const DownloadPacket = () => {
|
||||
// inline components to make build layout below more readable
|
||||
const UpdateTag = () => <div className={styles.tagContainer}><Tag
|
||||
className={styles.updateTag}>{METHODOLOGY_COPY.DOWNLOAD_PACKAGE.UPDATED_TAG}</Tag></div>;
|
||||
|
||||
const NewTag = () => <div className={styles.tagContainer}>
|
||||
<Tag className={styles.newTag}>{METHODOLOGY_COPY.DOWNLOAD_PACKAGE.NEW_TAG}</Tag></div>;
|
||||
|
||||
const DownloadButton: FC = ({children}) =>
|
||||
<Button className={styles.downloadBoxButton} type="button">
|
||||
<span className={styles.downloadButtonIconSpan}>
|
||||
<img src={downloadIcon} className={styles.downloadButtonIcon}
|
||||
alt={'download icon for download package'} />
|
||||
</span>
|
||||
<span className={styles.downloadButtonText} >
|
||||
{children}
|
||||
</span>
|
||||
</Button>;
|
||||
|
||||
return (
|
||||
<Grid>
|
||||
<div className={styles.downloadBoxContainer}>
|
||||
<div className={styles.downloadBox}>
|
||||
<div className={styles.downloadBoxTextBox}>
|
||||
|
||||
{/* Download box title */}
|
||||
<div className={styles.downloadBoxTitle}>
|
||||
{METHODOLOGY_COPY.DOWNLOAD_PACKAGE.TITLE}
|
||||
</div>
|
||||
|
||||
{/* Download box description 1 */}
|
||||
<div className={styles.downloadSourceText}>
|
||||
{METHODOLOGY_COPY.DOWNLOAD_PACKAGE.DESCRIPTION1}
|
||||
</div>
|
||||
|
||||
{/* Download box button 1 */}
|
||||
<div className={styles.downloadButtonContainer}>
|
||||
<UpdateTag/>
|
||||
<a data-cy={'download-link'}
|
||||
download
|
||||
href={METHODOLOGY_COPY.DOWNLOAD_ZIP_URL}>
|
||||
<DownloadButton>{METHODOLOGY_COPY.DOWNLOAD_PACKAGE.BUTTON_TEXT1}</DownloadButton>
|
||||
</a>
|
||||
</div>
|
||||
<div className={styles.lastUpdated}>
|
||||
{METHODOLOGY_COPY.DOWNLOAD_PACKAGE.ZIP_LAST_UPDATED}
|
||||
</div>
|
||||
|
||||
|
||||
{/* Download box button 2 */}
|
||||
<div className={styles.downloadButtonContainer}>
|
||||
<UpdateTag/>
|
||||
<a data-cy={'shapefile-link'}
|
||||
download
|
||||
href={METHODOLOGY_COPY.DOWNLOAD_SHAPEFILE_URL}>
|
||||
<DownloadButton>{METHODOLOGY_COPY.DOWNLOAD_PACKAGE.BUTTON_TEXT2}</DownloadButton>
|
||||
</a>
|
||||
</div>
|
||||
<div className={styles.lastUpdated}>
|
||||
{METHODOLOGY_COPY.DOWNLOAD_PACKAGE.SHAPE_LAST_UPDATED}
|
||||
</div>
|
||||
|
||||
{/* Download box button 3 */}
|
||||
<div className={styles.downloadButtonContainer}>
|
||||
<NewTag/>
|
||||
{/* target and rel required since PDFs open in browser and don't download */}
|
||||
<a data-cy={'tsd-link'}
|
||||
download
|
||||
target={'_blank'}
|
||||
rel={'noreferrer'}
|
||||
href={METHODOLOGY_COPY.DOWNLOAD_TSD_URL}>
|
||||
<DownloadButton>{METHODOLOGY_COPY.DOWNLOAD_PACKAGE.BUTTON_TEXT3}</DownloadButton>
|
||||
</a>
|
||||
</div>
|
||||
<div className={styles.lastUpdated}>
|
||||
{METHODOLOGY_COPY.DOWNLOAD_PACKAGE.TSD_LAST_UPDATED}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</Grid>
|
||||
);
|
||||
};
|
||||
|
||||
export default DownloadPacket;
|
|
@ -1,148 +0,0 @@
|
|||
// Jest Snapshot v1, https://goo.gl/fbAQLP
|
||||
|
||||
exports[`download packet component defined checks if component renders 1`] = `
|
||||
<DocumentFragment>
|
||||
<div
|
||||
class=""
|
||||
data-testid="grid"
|
||||
>
|
||||
<div>
|
||||
<div>
|
||||
<div>
|
||||
<div>
|
||||
<span>
|
||||
NEW
|
||||
</span>
|
||||
files available for download
|
||||
</div>
|
||||
<div>
|
||||
Download the data sources used in the CEJST (.csv, .xlxs,
|
||||
<span>
|
||||
.pdf
|
||||
</span>
|
||||
that describes how to use the list, and a
|
||||
<span>
|
||||
codebook
|
||||
</span>
|
||||
, 53MB unzipped), the shapefile, along with a
|
||||
<span>
|
||||
codebook
|
||||
</span>
|
||||
(.zip, 742MB unzipped) or the technical support document (.pdf, 2.5MB unzipped).
|
||||
</div>
|
||||
<div>
|
||||
<div>
|
||||
<span
|
||||
class="usa-tag"
|
||||
data-testid="tag"
|
||||
>
|
||||
<strong>
|
||||
Updated
|
||||
</strong>
|
||||
</span>
|
||||
</div>
|
||||
<a
|
||||
data-cy="download-link"
|
||||
download=""
|
||||
href="//"
|
||||
>
|
||||
<button
|
||||
class="usa-button"
|
||||
data-testid="button"
|
||||
type="button"
|
||||
>
|
||||
<span>
|
||||
<img
|
||||
alt="download icon for download package"
|
||||
src="test-file-stub"
|
||||
/>
|
||||
</span>
|
||||
<span>
|
||||
Download data sources
|
||||
</span>
|
||||
</button>
|
||||
</a>
|
||||
</div>
|
||||
<div>
|
||||
Last updated: 05/04/22
|
||||
</div>
|
||||
<div>
|
||||
<div>
|
||||
<span
|
||||
class="usa-tag"
|
||||
data-testid="tag"
|
||||
>
|
||||
<strong>
|
||||
Updated
|
||||
</strong>
|
||||
</span>
|
||||
</div>
|
||||
<a
|
||||
data-cy="shapefile-link"
|
||||
download=""
|
||||
href="//"
|
||||
>
|
||||
<button
|
||||
class="usa-button"
|
||||
data-testid="button"
|
||||
type="button"
|
||||
>
|
||||
<span>
|
||||
<img
|
||||
alt="download icon for download package"
|
||||
src="test-file-stub"
|
||||
/>
|
||||
</span>
|
||||
<span>
|
||||
Download shapefile
|
||||
</span>
|
||||
</button>
|
||||
</a>
|
||||
</div>
|
||||
<div>
|
||||
Last updated: 04/26/22
|
||||
</div>
|
||||
<div>
|
||||
<div>
|
||||
<span
|
||||
class="usa-tag"
|
||||
data-testid="tag"
|
||||
>
|
||||
<strong>
|
||||
NEW
|
||||
</strong>
|
||||
</span>
|
||||
</div>
|
||||
<a
|
||||
data-cy="tsd-link"
|
||||
download=""
|
||||
href="//"
|
||||
rel="noreferrer"
|
||||
target="_blank"
|
||||
>
|
||||
<button
|
||||
class="usa-button"
|
||||
data-testid="button"
|
||||
type="button"
|
||||
>
|
||||
<span>
|
||||
<img
|
||||
alt="download icon for download package"
|
||||
src="test-file-stub"
|
||||
/>
|
||||
</span>
|
||||
<span>
|
||||
Download technical support document
|
||||
</span>
|
||||
</button>
|
||||
</a>
|
||||
</div>
|
||||
<div>
|
||||
Last updated: 04/19/22
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</DocumentFragment>
|
||||
`;
|
|
@ -1,114 +0,0 @@
|
|||
@use '../../styles/design-system.scss' as *;
|
||||
|
||||
@mixin baseButtonContainerStyles {
|
||||
align-self: center;
|
||||
@include u-margin-top(2);
|
||||
|
||||
a {
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
img {
|
||||
// This should be a global css-filter value as it's generated
|
||||
// from the primary color.
|
||||
filter: invert(15%) sepia(9%) saturate(5666%) hue-rotate(175deg) brightness(96%) contrast(95%);
|
||||
}
|
||||
}
|
||||
|
||||
@mixin baseTextStyle {
|
||||
@include typeset('sans', 'xs', 3);
|
||||
@include u-margin-top(2);
|
||||
@include u-margin-bottom(2);
|
||||
|
||||
};
|
||||
|
||||
@mixin baseButtonTextStyle {
|
||||
padding-top: 4px;
|
||||
padding-left: 5px;
|
||||
}
|
||||
|
||||
.downloadBoxContainer {
|
||||
color: whitesmoke;
|
||||
margin: auto;
|
||||
@include u-margin-top(2.5);
|
||||
|
||||
.downloadBox {
|
||||
@include u-bg('blue-80v');
|
||||
border-radius: 6px 6px;
|
||||
// @include u-margin-top(3);
|
||||
|
||||
.downloadBoxTextBox {
|
||||
padding: 25px 25px;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
|
||||
.downloadBoxTitle {
|
||||
@include typeset('sans', 'xs', 3);
|
||||
@include u-text('semibold');
|
||||
}
|
||||
|
||||
.downloadSourceText {
|
||||
@include u-margin-top(2);
|
||||
}
|
||||
|
||||
// Last updated
|
||||
.lastUpdated {
|
||||
font-style: italic;
|
||||
align-self: center;
|
||||
@include u-margin-top(1);
|
||||
}
|
||||
|
||||
// Data source button (scoped)
|
||||
.downloadButtonContainer {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
@include baseButtonContainerStyles();
|
||||
text-align: center;
|
||||
|
||||
.downloadButtonText {
|
||||
@include baseButtonTextStyle();
|
||||
@include u-margin-right(1);
|
||||
}
|
||||
|
||||
.downloadButtonIconSpan {
|
||||
display: contents;
|
||||
max-width: 1.5em;
|
||||
}
|
||||
|
||||
.downloadButtonIcon {
|
||||
width: 1.5em;
|
||||
height: 1.5em;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.downloadBoxButton {
|
||||
@include u-bg('white');
|
||||
@include u-color('blue-80v');
|
||||
display: flex;
|
||||
width: 16em;
|
||||
}
|
||||
|
||||
.tagContainer {
|
||||
align-self: end;
|
||||
@include u-margin-bottom(-1);
|
||||
z-index: 2;
|
||||
}
|
||||
|
||||
.newTag {
|
||||
@include u-text('bold');
|
||||
@include u-text("blue-80v");
|
||||
@include u-bg("gold-20v");
|
||||
}
|
||||
|
||||
.updateTag {
|
||||
@include u-text('bold');
|
||||
@include u-text("blue-80v");
|
||||
@include u-bg("gray-10");
|
||||
}
|
||||
|
||||
.newCalloutFontColor {
|
||||
@include u-text("gold-20v");
|
||||
}
|
|
@ -1,26 +0,0 @@
|
|||
declare namespace DownloadPacketModuleScssNamespace {
|
||||
export interface IDownloadPacketModuleScss {
|
||||
downloadBoxContainer: string;
|
||||
downloadBox: string;
|
||||
downloadBoxTextBox: string;
|
||||
downloadBoxTitle: string;
|
||||
downloadSourceText: string;
|
||||
downloadButtonContainer: string;
|
||||
downloadBoxButton: string;
|
||||
downloadButtonText: string;
|
||||
downloadButtonIconSpan: string;
|
||||
downloadButtonIcon: string;
|
||||
tagContainer: string;
|
||||
newTag: string;
|
||||
updateTag: string;
|
||||
newCalloutFontColor: string;
|
||||
lastUpdated:string;
|
||||
}
|
||||
}
|
||||
|
||||
declare const DownloadPacketModuleScssModule: DownloadPacketModuleScssNamespace.IDownloadPacketModuleScss & {
|
||||
/** WARNING: Only available when `css-loader` is used without `style-loader` or `mini-css-extract-plugin` */
|
||||
locals: DownloadPacketModuleScssNamespace.IDownloadPacketModuleScss;
|
||||
};
|
||||
|
||||
export = DownloadPacketModuleScssModule;
|
|
@ -1,3 +0,0 @@
|
|||
import DownloadPacket from './DownloadPacket';
|
||||
|
||||
export default DownloadPacket;
|
27
client/src/components/HowYouCanHelp/HowYouCanHelp.tsx
Normal file
27
client/src/components/HowYouCanHelp/HowYouCanHelp.tsx
Normal file
|
@ -0,0 +1,27 @@
|
|||
import React from 'react';
|
||||
|
||||
import * as styles from './howYouCanHelp.module.scss';
|
||||
import * as EXPLORE_COPY from '../../data/copy/explore';
|
||||
|
||||
const HowYouCanHelp = () => {
|
||||
return (
|
||||
<div className={styles.howYouCanHelpContainer}>
|
||||
<h2>
|
||||
{EXPLORE_COPY.HOW_YOU_CAN_HELP_LIST_ITEMS.HEADING}
|
||||
</h2>
|
||||
<ul className={styles.howYouCanHelpListWrapper}>
|
||||
<li className={styles.howYouCanHelpList}>
|
||||
{EXPLORE_COPY.HOW_YOU_CAN_HELP_LIST_ITEMS.LIST_ITEM_1}
|
||||
</li>
|
||||
<li className={styles.howYouCanHelpList}>
|
||||
{EXPLORE_COPY.HOW_YOU_CAN_HELP_LIST_ITEMS.LIST_ITEM_2}
|
||||
</li>
|
||||
<li className={styles.howYouCanHelpList}>
|
||||
{EXPLORE_COPY.HOW_YOU_CAN_HELP_LIST_ITEMS.LIST_ITEM_3}
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
);
|
||||
};
|
||||
|
||||
export default HowYouCanHelp;
|
|
@ -1,27 +1,3 @@
|
|||
import React from 'react';
|
||||
|
||||
import * as styles from './howYouCanHelp.module.scss';
|
||||
import * as EXPLORE_COPY from '../../data/copy/explore';
|
||||
|
||||
const HowYouCanHelp = () => {
|
||||
return (
|
||||
<div className={styles.howYouCanHelpContainer}>
|
||||
<h2>
|
||||
{EXPLORE_COPY.HOW_YOU_CAN_HELP_LIST_ITEMS.HEADING}
|
||||
</h2>
|
||||
<ul className={styles.howYouCanHelpListWrapper}>
|
||||
<li className={styles.howYouCanHelpList}>
|
||||
{EXPLORE_COPY.HOW_YOU_CAN_HELP_LIST_ITEMS.LIST_ITEM_1}
|
||||
</li>
|
||||
<li className={styles.howYouCanHelpList}>
|
||||
{EXPLORE_COPY.HOW_YOU_CAN_HELP_LIST_ITEMS.LIST_ITEM_2}
|
||||
</li>
|
||||
<li className={styles.howYouCanHelpList}>
|
||||
{EXPLORE_COPY.HOW_YOU_CAN_HELP_LIST_ITEMS.LIST_ITEM_3}
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
);
|
||||
};
|
||||
import HowYouCanHelp from './HowYouCanHelp';
|
||||
|
||||
export default HowYouCanHelp;
|
||||
|
|
|
@ -30,17 +30,7 @@ exports[`rendering of the HowYouCanHelp checks if various text fields are visibl
|
|||
.
|
||||
</li>
|
||||
<li>
|
||||
Respond to our Request for Information on
|
||||
<a
|
||||
class="usa-link usa-link--external"
|
||||
data-cy=""
|
||||
href="https://www.federalregister.gov/d/2022-03920"
|
||||
rel="noreferrer"
|
||||
target="_blank"
|
||||
>
|
||||
federalregister.gov
|
||||
</a>
|
||||
.
|
||||
The Request for Information on the Federal Register is now closed.
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
@ -5,14 +5,14 @@ import {
|
|||
NavMenuButton,
|
||||
PrimaryNav,
|
||||
Grid,
|
||||
Alert,
|
||||
// NavDropDownButton,
|
||||
// Menu,
|
||||
NavDropDownButton,
|
||||
Menu,
|
||||
} from '@trussworks/react-uswds';
|
||||
import BetaBanner from '../BetaBanner';
|
||||
import J40MainGridContainer from '../J40MainGridContainer';
|
||||
import GovernmentBanner from '../GovernmentBanner';
|
||||
import Language from '../Language';
|
||||
import {useWindowSize} from 'react-use';
|
||||
|
||||
// @ts-ignore
|
||||
import siteLogo from '../../images/j40-logo-v2.png';
|
||||
|
@ -20,75 +20,79 @@ import * as styles from './J40Header.module.scss';
|
|||
import * as COMMON_COPY from '../../data/copy/common';
|
||||
import {PAGES_ENDPOINTS} from '../../data/constants';
|
||||
|
||||
const isAlertValid = new Date < COMMON_COPY.ALERTS.EXPIRATION_DATE;
|
||||
|
||||
/**
|
||||
* The J40Header component will control how the header looks for both mobile and desktop
|
||||
*
|
||||
* The Header is defined as
|
||||
* 1. Two rows of Banners (ie, official gov website and beta site)
|
||||
* 2. Logo and Nav Links Row
|
||||
* 3. Any Alerts
|
||||
*
|
||||
* @return {JSX.Element}
|
||||
*/
|
||||
const J40Header = () => {
|
||||
const intl = useIntl();
|
||||
const {width} = useWindowSize();
|
||||
|
||||
const titleL1 = intl.formatMessage(COMMON_COPY.HEADER.TITLE_LINE_1);
|
||||
const titleL2 = intl.formatMessage(COMMON_COPY.HEADER.TITLE_LINE_2);
|
||||
// Logo text
|
||||
const logoLine1 = intl.formatMessage(COMMON_COPY.HEADER.TITLE_LINE_1);
|
||||
const logoLine2 = intl.formatMessage(COMMON_COPY.HEADER.TITLE_LINE_2);
|
||||
|
||||
/**
|
||||
* State variable to control the mobile menu toggle
|
||||
* State variable to control the toggling of mobile menu button
|
||||
*/
|
||||
const [mobileNavOpen, setMobileNavOpen] = useState(false);
|
||||
const toggleMobileNav = (): void =>
|
||||
setMobileNavOpen((prevOpen) => !prevOpen);
|
||||
|
||||
/**
|
||||
* State variable to hold the open/close state of each nav dropdown. This will allow for two
|
||||
* dropdown that are being used, each corresponding to an index in the state array:
|
||||
*
|
||||
* index 0 = Data & Methodology dropdown (being used)
|
||||
* index 1 = About dropdown (removed for now)
|
||||
*/
|
||||
const [isOpen, setIsOpen] = useState([true]);
|
||||
const onToggle = (index: number): void => {
|
||||
setIsOpen((prevIsOpen) => {
|
||||
const newIsOpen = [true];
|
||||
newIsOpen[index] = !prevIsOpen[index];
|
||||
return newIsOpen;
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* The original work of this release called for creating a download page, a FAQ page and TSD page. These
|
||||
* were to be embedded in dropdown menus in the navigation bar of the header. These were all completed.
|
||||
* After discovering that the dropdown component from USWDS was not operating as expected, we decided to
|
||||
* revert to another design.
|
||||
*
|
||||
* It was also decided that some more design was needed and that these pages along with their designs will
|
||||
* be used in the near future. Rather than deleted the code or moving it to another branch, the assumption
|
||||
* was made that since this will be added back in the near term, let's comment it out for now.
|
||||
*
|
||||
* If for some reason we haven't integrated this logic in the near future, this code will be deleted.
|
||||
* On mobile, the Methodology & Data page should have two sub-nav links. This defines
|
||||
* the array that will hold these links
|
||||
*/
|
||||
const methPageSubNavLinks = [
|
||||
<Link
|
||||
to={PAGES_ENDPOINTS.METHODOLOGY}
|
||||
key={'methodology'}
|
||||
activeClassName="usa-current"
|
||||
data-cy={'nav-link-methodology'}>
|
||||
{intl.formatMessage(COMMON_COPY.HEADER.METHODOLOGY)}
|
||||
</Link>,
|
||||
<Link
|
||||
to={PAGES_ENDPOINTS.DOWNLOADS}
|
||||
key={'downloads'}
|
||||
activeClassName="usa-current"
|
||||
data-cy={'nav-link-downloads'}>
|
||||
{intl.formatMessage(COMMON_COPY.HEADER.DOWNLOADS)}
|
||||
</Link>,
|
||||
// <Link
|
||||
// to={PAGES_ENDPOINTS.TSD}
|
||||
// key={'tsd'}
|
||||
// activeClassName="usa-current"
|
||||
// data-cy={'nav-link-technical-support-docs'}>
|
||||
// {intl.formatMessage(COMMON_COPY.HEADER.TSD)}
|
||||
// </Link>,
|
||||
];
|
||||
|
||||
/**
|
||||
* State variable to hold the open/close state of each nav dropdown. There are currently two
|
||||
* dropdowns that are being used, each corresponding to an index in the state array:
|
||||
*
|
||||
* index 0 = Data & Methodology dropdown
|
||||
* index 1 = About dropdown
|
||||
* In the future, we may want to add sub-pages to the About page. This array will
|
||||
* define the sub-pages for the About page.
|
||||
*/
|
||||
// const [isOpen, setIsOpen] = useState([false, false]);
|
||||
// const onToggle = (index: number): void => {
|
||||
// setIsOpen((prevIsOpen) => {
|
||||
// const newIsOpen = [false, false];
|
||||
// newIsOpen[index] = !prevIsOpen[index];
|
||||
// return newIsOpen;
|
||||
// });
|
||||
// };
|
||||
|
||||
// const methPageSubNavLinks = [
|
||||
// <Link
|
||||
// to={PAGES_ENDPOINTS.METHODOLOGY}
|
||||
// key={'methodology'}
|
||||
// activeClassName="usa-current"
|
||||
// data-cy={'nav-link-methodology'}>
|
||||
// {intl.formatMessage(COMMON_COPY.HEADER.METHODOLOGY)}
|
||||
// </Link>,
|
||||
// <Link
|
||||
// to={PAGES_ENDPOINTS.DOWNLOADS}
|
||||
// key={'downloads'}
|
||||
// activeClassName="usa-current"
|
||||
// data-cy={'nav-link-downloads'}>
|
||||
// {intl.formatMessage(COMMON_COPY.HEADER.DOWNLOADS)}
|
||||
// </Link>,
|
||||
// <Link
|
||||
// to={PAGES_ENDPOINTS.TSD}
|
||||
// key={'tsd'}
|
||||
// activeClassName="usa-current"
|
||||
// data-cy={'nav-link-technical-support-docs'}>
|
||||
// {intl.formatMessage(COMMON_COPY.HEADER.TSD)}
|
||||
// </Link>,
|
||||
// ];
|
||||
|
||||
// const aboutSubNavLinks = [
|
||||
// <Link
|
||||
// to={PAGES_ENDPOINTS.ABOUT}
|
||||
|
@ -113,6 +117,17 @@ const J40Header = () => {
|
|||
// </Link>,
|
||||
// ];
|
||||
|
||||
|
||||
/**
|
||||
* This is the array that holds the navigation links and eventually is the one
|
||||
* that is passed to the render function. It only defines Explore, About and
|
||||
* Contact.
|
||||
*
|
||||
* The Methodology & Data link is passed in depending on screen size.
|
||||
*
|
||||
* For mobile: the Methodology & Data link should have sub-pages
|
||||
* For desktop: the Methodology & Data link should NOT have sub-pages
|
||||
*/
|
||||
const navLinks = [
|
||||
<Link
|
||||
to={PAGES_ENDPOINTS.EXPLORE}
|
||||
|
@ -121,13 +136,6 @@ const J40Header = () => {
|
|||
data-cy={'nav-link-explore-the-map'}>
|
||||
{intl.formatMessage(COMMON_COPY.HEADER.EXPLORE)}
|
||||
</Link>,
|
||||
<Link
|
||||
to={PAGES_ENDPOINTS.METHODOLOGY}
|
||||
key={'methodology'}
|
||||
activeClassName="usa-current"
|
||||
data-cy={'nav-link-methodology'}>
|
||||
{intl.formatMessage(COMMON_COPY.HEADER.METHODOLOGY)}
|
||||
</Link>,
|
||||
<Link
|
||||
to={PAGES_ENDPOINTS.ABOUT}
|
||||
key={'about'}
|
||||
|
@ -135,43 +143,6 @@ const J40Header = () => {
|
|||
data-cy={'nav-link-about'}>
|
||||
{intl.formatMessage(COMMON_COPY.HEADER.ABOUT)}
|
||||
</Link>,
|
||||
// <>
|
||||
// <NavDropDownButton
|
||||
// key="methDropDown"
|
||||
// label={intl.formatMessage(COMMON_COPY.HEADER.METHODOLOGY)}
|
||||
// menuId="methMenu"
|
||||
// isOpen={isOpen[0]}
|
||||
// onToggle={(): void => onToggle(0)}
|
||||
// data-cy={'nav-dropdown-methodology'}
|
||||
// className={styles.navDropDownBtn}
|
||||
// >
|
||||
// </NavDropDownButton>
|
||||
// <Menu
|
||||
// id='methMenu'
|
||||
// type='subnav'
|
||||
// items={methPageSubNavLinks}
|
||||
// isOpen={isOpen[0]}
|
||||
// >
|
||||
// </Menu>
|
||||
// </>,
|
||||
// <>
|
||||
// <NavDropDownButton
|
||||
// key="aboutDropDown"
|
||||
// label={intl.formatMessage(COMMON_COPY.HEADER.ABOUT)}
|
||||
// menuId="aboutMenu"
|
||||
// isOpen={isOpen[1]}
|
||||
// onToggle={(): void => onToggle(1)}
|
||||
// data-cy={'nav-dropdown-about'}
|
||||
// >
|
||||
// </NavDropDownButton>
|
||||
// <Menu
|
||||
// id='aboutMenu'
|
||||
// type='subnav'
|
||||
// items={aboutSubNavLinks}
|
||||
// isOpen={isOpen[1]}
|
||||
// >
|
||||
// </Menu>
|
||||
// </>,
|
||||
<Link
|
||||
to={PAGES_ENDPOINTS.CONTACT}
|
||||
key={'contact'}
|
||||
|
@ -184,6 +155,40 @@ const J40Header = () => {
|
|||
</div>,
|
||||
];
|
||||
|
||||
// For mobile: the Methodology & Data link should have sub-pages
|
||||
const MethPageNavWithSubPages = () =>
|
||||
<>
|
||||
<NavDropDownButton
|
||||
key="methDropDown"
|
||||
label={intl.formatMessage(COMMON_COPY.HEADER.METHODOLOGY)}
|
||||
menuId="methMenu"
|
||||
isOpen={isOpen[0]}
|
||||
onToggle={(): void => onToggle(0)}
|
||||
data-cy={'nav-dropdown-methodology'}
|
||||
>
|
||||
</NavDropDownButton>
|
||||
<Menu
|
||||
id='methMenu'
|
||||
type='subnav'
|
||||
items={methPageSubNavLinks}
|
||||
isOpen={isOpen[0]}
|
||||
>
|
||||
</Menu>
|
||||
</>;
|
||||
|
||||
// For desktop: the Methodology & Data link should NOT have sub-pages
|
||||
const MethPageNav = () =>
|
||||
<Link
|
||||
to={PAGES_ENDPOINTS.METHODOLOGY}
|
||||
key={'methodology'}
|
||||
activeClassName="usa-current"
|
||||
data-cy={'nav-link-methodology'}>
|
||||
{intl.formatMessage(COMMON_COPY.HEADER.METHODOLOGY)}
|
||||
</Link>;
|
||||
|
||||
// Modify navLinks to choose the appropriate Methodology & Data nav link depending on screen size
|
||||
navLinks.splice(1, 0, width > 1024 ? <MethPageNav/> : <MethPageNavWithSubPages/>);
|
||||
|
||||
return (
|
||||
<Header basic={true} role={'banner'}>
|
||||
|
||||
|
@ -198,15 +203,15 @@ const J40Header = () => {
|
|||
|
||||
{/* Logo */}
|
||||
<Grid col={1}>
|
||||
<img className={styles.logo} src={siteLogo} alt={`${titleL1} ${titleL2}`} />
|
||||
<img className={styles.logo} src={siteLogo} alt={`${logoLine1} ${logoLine2}`} />
|
||||
</Grid>
|
||||
|
||||
{/* Logo Title */}
|
||||
<Grid col={6}>
|
||||
<div className={styles.logoTitle}>
|
||||
<div>{titleL1}</div>
|
||||
<div>{logoLine1}</div>
|
||||
<div className={styles.title2BetaPill}>
|
||||
<div> {titleL2} </div>
|
||||
<div> {logoLine2} </div>
|
||||
<div className={styles.betaPill}>BETA</div>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -232,7 +237,7 @@ const J40Header = () => {
|
|||
</J40MainGridContainer>
|
||||
|
||||
{/* Alert */}
|
||||
{isAlertValid && <J40MainGridContainer>
|
||||
{/* {<J40MainGridContainer>
|
||||
<Alert
|
||||
className={styles.alert}
|
||||
type="info"
|
||||
|
@ -247,7 +252,7 @@ const J40Header = () => {
|
|||
{COMMON_COPY.ALERTS.ALERT_1_DESCRIPTION}
|
||||
</Alert>
|
||||
</J40MainGridContainer>
|
||||
}
|
||||
} */}
|
||||
</Header>
|
||||
);
|
||||
};
|
||||
|
|
|
@ -247,12 +247,43 @@ exports[`rendering of the J40Header checks if component renders 1`] = `
|
|||
<li
|
||||
class="usa-nav__primary-item"
|
||||
>
|
||||
<a
|
||||
data-cy="nav-link-methodology"
|
||||
href="/en/methodology"
|
||||
<button
|
||||
aria-controls="methMenu"
|
||||
aria-expanded="true"
|
||||
class="usa-accordion__button usa-nav__link"
|
||||
data-cy="nav-dropdown-methodology"
|
||||
data-testid="navDropDownButton"
|
||||
type="button"
|
||||
>
|
||||
Methodology & data
|
||||
</a>
|
||||
<span>
|
||||
Methodology & data
|
||||
</span>
|
||||
</button>
|
||||
<ul
|
||||
class="usa-nav__submenu"
|
||||
id="methMenu"
|
||||
>
|
||||
<li
|
||||
class="usa-nav__submenu-item"
|
||||
>
|
||||
<a
|
||||
data-cy="nav-link-methodology"
|
||||
href="/en/methodology"
|
||||
>
|
||||
Methodology & data
|
||||
</a>
|
||||
</li>
|
||||
<li
|
||||
class="usa-nav__submenu-item"
|
||||
>
|
||||
<a
|
||||
data-cy="nav-link-downloads"
|
||||
href="/en/downloads"
|
||||
>
|
||||
Downloads
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li
|
||||
class="usa-nav__primary-item"
|
||||
|
@ -301,79 +332,6 @@ exports[`rendering of the J40Header checks if component renders 1`] = `
|
|||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div
|
||||
class="grid-container-desktop-lg"
|
||||
data-testid="gridContainer"
|
||||
>
|
||||
<div
|
||||
class="usa-alert usa-alert--info"
|
||||
data-testid="alert"
|
||||
>
|
||||
<div
|
||||
class="usa-alert__body"
|
||||
>
|
||||
<h4
|
||||
class="usa-alert__heading"
|
||||
>
|
||||
Additional documentation now available
|
||||
</h4>
|
||||
<p
|
||||
class="usa-alert__text"
|
||||
>
|
||||
Download new
|
||||
<a
|
||||
class="usa-link usa-link--external"
|
||||
data-cy=""
|
||||
href="https://static-data-screeningtool.geoplatform.gov/data-pipeline/data/score/downloadable/cejst_technical_support_document.pdf"
|
||||
rel="noreferrer"
|
||||
target="_blank"
|
||||
>
|
||||
technical support
|
||||
</a>
|
||||
and other documentation and
|
||||
<a
|
||||
class="usa-link usa-link--external"
|
||||
data-cy=""
|
||||
href="mailto:Screeningtool-Support@omb.eop.gov"
|
||||
rel="noreferrer"
|
||||
target="_blank"
|
||||
>
|
||||
send feedback
|
||||
</a>
|
||||
.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
<div
|
||||
class="usa-alert usa-alert--info"
|
||||
data-testid="alert"
|
||||
>
|
||||
<div
|
||||
class="usa-alert__body"
|
||||
>
|
||||
<h4
|
||||
class="usa-alert__heading"
|
||||
>
|
||||
Public comment period extended
|
||||
</h4>
|
||||
<p
|
||||
class="usa-alert__text"
|
||||
>
|
||||
The public comment period for
|
||||
<a
|
||||
class="usa-link usa-link--external"
|
||||
data-cy=""
|
||||
href="https://www.federalregister.gov/documents/2022/04/25/2022-08774/climate-and-economic-justice-screening-tool-beta-version"
|
||||
rel="noreferrer"
|
||||
target="_blank"
|
||||
>
|
||||
sending feedback
|
||||
</a>
|
||||
via the Request for Information has been extended to May 25, 2022.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</header>
|
||||
</DocumentFragment>
|
||||
`;
|
||||
|
|
|
@ -4,7 +4,7 @@ import {Link as TrussLink} from '@trussworks/react-uswds';
|
|||
|
||||
import {IDefineMessage} from '../../data/copy/common';
|
||||
|
||||
interface ILinkTypeWrapper {
|
||||
export interface ILinkTypeWrapper {
|
||||
linkText?: string | JSX.Element;
|
||||
internal?: boolean;
|
||||
url: string | IDefineMessage;
|
||||
|
|
|
@ -17,6 +17,7 @@
|
|||
display: flex;
|
||||
flex-direction: column;
|
||||
@include u-padding-top(2.5);
|
||||
@include u-margin-top(4);
|
||||
|
||||
.link, .link:visited {
|
||||
color:white;
|
||||
|
|
|
@ -1,6 +1,9 @@
|
|||
import React from 'react';
|
||||
import {useIntl, Link} from 'gatsby-plugin-intl';
|
||||
import {Button, Tag} from '@trussworks/react-uswds';
|
||||
import {
|
||||
Button,
|
||||
// Tag
|
||||
} from '@trussworks/react-uswds';
|
||||
|
||||
import * as styles from './PublicEngageButton.module.scss';
|
||||
import * as PUBLIC_ENG_COPY from '../../data/copy/publicEngage';
|
||||
|
@ -13,11 +16,12 @@ const PublicEngageButton = () => {
|
|||
|
||||
return (
|
||||
<div className={styles.container}>
|
||||
<div className={styles.tagContainer}>
|
||||
{/* Remove Updated Tag for now */}
|
||||
{/* <div className={styles.tagContainer}>
|
||||
<Tag className={styles.tag}>
|
||||
{intl.formatMessage(PUBLIC_ENG_COPY.PUBLIC_ENG_BUTTON.TAG_LABEL)}
|
||||
</Tag>
|
||||
</div>
|
||||
</div> */}
|
||||
<Link className={styles.link} to={'/public-engagement'}>
|
||||
<Button
|
||||
type="button"
|
||||
|
|
|
@ -3,14 +3,6 @@
|
|||
exports[`rendering of the PublicEngageButton checks if component renders 1`] = `
|
||||
<DocumentFragment>
|
||||
<div>
|
||||
<div>
|
||||
<span
|
||||
class="usa-tag"
|
||||
data-testid="tag"
|
||||
>
|
||||
UPDATED
|
||||
</span>
|
||||
</div>
|
||||
<a
|
||||
href="/en/public-engagement"
|
||||
>
|
||||
|
|
|
@ -4,16 +4,13 @@ import {useIntl} from 'gatsby-plugin-intl';
|
|||
|
||||
import * as CONTACT_COPY from '../../data/copy/contact';
|
||||
import * as styles from './RequestForInfo.module.scss';
|
||||
import * as COMMON_COPY from '../../data/copy/common';
|
||||
|
||||
const RequestForInfo = () => {
|
||||
const intl = useIntl();
|
||||
const commentPeriodExpired = new Date < COMMON_COPY.ALERTS.EXPIRATION_DATE;
|
||||
|
||||
return (
|
||||
<SummaryBox className={styles.rfiBox} heading={intl.formatMessage(CONTACT_COPY.RFI_BOX.TITLE)}>
|
||||
<p>{CONTACT_COPY.RFI_BOX_BODY}</p>
|
||||
<p>{commentPeriodExpired && COMMON_COPY.ALERTS.ALERT_1_DESCRIPTION}</p>
|
||||
</SummaryBox>
|
||||
);
|
||||
};
|
||||
|
|
|
@ -18,30 +18,7 @@ exports[`rendering of the RequestForInfo checks if component renders 1`] = `
|
|||
class="usa-summary-box__text"
|
||||
>
|
||||
<p>
|
||||
During the beta period, comments may be submitted on the Climate and Economic Justice Screening Tool via CEQ’s Request for Information available on
|
||||
<a
|
||||
class="usa-link usa-link--external"
|
||||
data-cy=""
|
||||
href="https://www.federalregister.gov/d/2022-03920"
|
||||
rel="noreferrer"
|
||||
target="_blank"
|
||||
>
|
||||
federalregister.gov
|
||||
</a>
|
||||
.
|
||||
</p>
|
||||
<p>
|
||||
The public comment period for
|
||||
<a
|
||||
class="usa-link usa-link--external"
|
||||
data-cy=""
|
||||
href="https://www.federalregister.gov/documents/2022/04/25/2022-08774/climate-and-economic-justice-screening-tool-beta-version"
|
||||
rel="noreferrer"
|
||||
target="_blank"
|
||||
>
|
||||
sending feedback
|
||||
</a>
|
||||
via the Request for Information has been extended to May 25, 2022.
|
||||
The Request for Information on the Federal Register for the public beta period closed on May 25, 2022.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
@ -47,7 +47,7 @@ exports[`rendering of the component expects the render to match snapshot 1`] = `
|
|||
tabindex="0"
|
||||
>
|
||||
|
||||
The tool ranks each census tract using percentiles that show how much burden each tract experiences relative to all other tracts, for each criteria.
|
||||
The tool ranks each census tract using percentiles that show how much burden each tract experiences relative to all other tracts, for each criterion.
|
||||
|
||||
</p>
|
||||
<img
|
||||
|
|
0
client/src/components/SubPageNav/SubPageNav.module.scss
Normal file
0
client/src/components/SubPageNav/SubPageNav.module.scss
Normal file
0
client/src/components/SubPageNav/SubPageNav.module.scss.d.ts
vendored
Normal file
0
client/src/components/SubPageNav/SubPageNav.module.scss.d.ts
vendored
Normal file
35
client/src/components/SubPageNav/SubPageNav.test.tsx
Normal file
35
client/src/components/SubPageNav/SubPageNav.test.tsx
Normal file
|
@ -0,0 +1,35 @@
|
|||
import * as React from 'react';
|
||||
import {render} from '@testing-library/react';
|
||||
import {LocalizedComponent} from '../../test/testHelpers';
|
||||
import SubPageNav from './SubPageNav';
|
||||
|
||||
describe('rendering of the SubPageNav', () => {
|
||||
const firstLinkActive = 1;
|
||||
const secondLinkIndex = 2;
|
||||
|
||||
it('checks if the first link is active', () => {
|
||||
const {container} = render(
|
||||
<LocalizedComponent>
|
||||
<SubPageNav activeSubPageIndex={firstLinkActive}/>
|
||||
</LocalizedComponent>,
|
||||
);
|
||||
|
||||
const firstLink = container.querySelector(`.usa-sidenav li:nth-child(${firstLinkActive}) a`);
|
||||
const secondLink = container.querySelector(`.usa-sidenav li:nth-child(${secondLinkIndex}) a`);
|
||||
expect(firstLink?.className).toBe('usa-current');
|
||||
expect(secondLink?.className).not.toBe('usa-current');
|
||||
});
|
||||
|
||||
it('checks if the second link is active', () => {
|
||||
const {container} = render(
|
||||
<LocalizedComponent>
|
||||
<SubPageNav activeSubPageIndex={secondLinkIndex}/>
|
||||
</LocalizedComponent>,
|
||||
);
|
||||
|
||||
const firstLink = container.querySelector(`.usa-sidenav li:nth-child(${firstLinkActive}) a`);
|
||||
const secondLink = container.querySelector(`.usa-sidenav li:nth-child(${secondLinkIndex}) a`);
|
||||
expect(secondLink?.className).toBe('usa-current');
|
||||
expect(firstLink?.className).not.toBe('usa-current');
|
||||
});
|
||||
});
|
39
client/src/components/SubPageNav/SubPageNav.tsx
Normal file
39
client/src/components/SubPageNav/SubPageNav.tsx
Normal file
|
@ -0,0 +1,39 @@
|
|||
import React from 'react';
|
||||
import {SideNav} from '@trussworks/react-uswds';
|
||||
import {useIntl} from 'gatsby-plugin-intl';
|
||||
|
||||
import LinkTypeWrapper from '../LinkTypeWrapper';
|
||||
import {PAGES_ENDPOINTS} from '../../data/constants';
|
||||
import * as COMMON_COPY from '../../data/copy/common';
|
||||
|
||||
// This prop is used to set which sub-page navigation is active
|
||||
interface ISubPageNav {
|
||||
activeSubPageIndex?: number;
|
||||
}
|
||||
|
||||
const SubPageNav = ({activeSubPageIndex}:ISubPageNav) => {
|
||||
const intl = useIntl();
|
||||
|
||||
const subPages = [
|
||||
<LinkTypeWrapper
|
||||
key={0}
|
||||
className={activeSubPageIndex === 1 ? 'usa-current' : ''}
|
||||
url={PAGES_ENDPOINTS.METHODOLOGY}
|
||||
internal={true}
|
||||
linkText={intl.formatMessage(COMMON_COPY.HEADER.METHODOLOGY)}
|
||||
/>,
|
||||
<LinkTypeWrapper
|
||||
key={1}
|
||||
className={activeSubPageIndex === 2 ? 'usa-current' : ''}
|
||||
url={PAGES_ENDPOINTS.DOWNLOADS}
|
||||
internal={true}
|
||||
linkText={intl.formatMessage(COMMON_COPY.HEADER.DOWNLOADS)}
|
||||
/>,
|
||||
];
|
||||
|
||||
return (
|
||||
<SideNav items={subPages}/>
|
||||
);
|
||||
};
|
||||
|
||||
export default SubPageNav;
|
3
client/src/components/SubPageNav/index.tsx
Normal file
3
client/src/components/SubPageNav/index.tsx
Normal file
|
@ -0,0 +1,3 @@
|
|||
import SubPageNav from './SubPageNav';
|
||||
|
||||
export default SubPageNav;
|
|
@ -52,7 +52,7 @@ exports[`simulate app starting up, no click on map should match the snapshot of
|
|||
tabindex="0"
|
||||
>
|
||||
|
||||
The tool ranks each census tract using percentiles that show how much burden each tract experiences relative to all other tracts, for each criteria.
|
||||
The tool ranks each census tract using percentiles that show how much burden each tract experiences relative to all other tracts, for each criterion.
|
||||
|
||||
</p>
|
||||
<img
|
||||
|
|
|
@ -4,6 +4,7 @@ import React from 'react';
|
|||
import {FormattedDate, FormattedMessage} from 'gatsby-plugin-intl';
|
||||
import {defineMessages} from 'react-intl';
|
||||
import LinkTypeWrapper from '../../components/LinkTypeWrapper';
|
||||
import DownloadLink from '../../components/DownloadLink';
|
||||
|
||||
export interface IDefineMessage {
|
||||
id: string,
|
||||
|
@ -20,6 +21,8 @@ export interface IDefineMessage {
|
|||
export const italicFn = (str:string) => <i>{str}</i>;
|
||||
export const boldFn = (str:string) => <strong>{str}</strong>;
|
||||
export const simpleLink = (href:string) => (str:string) => <a href={href}>{str}</a>;
|
||||
// export const downloadLink = (href:string) => (str:string) => <a href={href} download>{str}</a>;
|
||||
export const downloadLink = (href:string) => (str:string) => <DownloadLink href={href} linkText={str} />;
|
||||
// eslint-disable-next-line max-len
|
||||
export const linkFn = (to:string | IDefineMessage, isInternal:boolean, isOpenNewTab:boolean) => (str:string) => <LinkTypeWrapper linkText={str} internal={isInternal} url={to} openUrlNewTab={isOpenNewTab}/>;
|
||||
|
||||
|
@ -51,7 +54,7 @@ export const TSD = defineMessages({
|
|||
|
||||
// Alerts
|
||||
// Expiration month is zero-based: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/getMonth
|
||||
const ALERT_1_EXPIRATION_DATE= new Date(2022, 4, 25); // May 25
|
||||
export const RFI_EXPIRATION_DATE= new Date(2022, 4, 25, 11, 59, 59); // May 25
|
||||
export const ALERTS = {
|
||||
ALERT_1_TITLE: defineMessages({
|
||||
TITLE: {
|
||||
|
@ -60,7 +63,7 @@ export const ALERTS = {
|
|||
description: 'Alert title that appears on landing page.',
|
||||
},
|
||||
}),
|
||||
EXPIRATION_DATE: ALERT_1_EXPIRATION_DATE,
|
||||
EXPIRATION_DATE: RFI_EXPIRATION_DATE,
|
||||
ALERT_1_DESCRIPTION: <FormattedMessage
|
||||
id={'common.pages.alerts.public_comment_period.description'}
|
||||
defaultMessage={`The public comment period for <link1>sending feedback</link1> via the Request for Information has been extended to {expDate1}.`}
|
||||
|
@ -68,7 +71,7 @@ export const ALERTS = {
|
|||
values={{
|
||||
link1: linkFn('https://www.federalregister.gov/documents/2022/04/25/2022-08774/climate-and-economic-justice-screening-tool-beta-version', false, true),
|
||||
expDate1: <FormattedDate
|
||||
value={ALERT_1_EXPIRATION_DATE}
|
||||
value={RFI_EXPIRATION_DATE}
|
||||
year="numeric"
|
||||
month="short"
|
||||
day="numeric"
|
||||
|
|
|
@ -1,10 +1,9 @@
|
|||
/* eslint-disable max-len */
|
||||
import React from 'react';
|
||||
import {defineMessages} from 'react-intl';
|
||||
import {FormattedMessage} from 'gatsby-plugin-intl';
|
||||
import {FormattedDate, FormattedMessage} from 'gatsby-plugin-intl';
|
||||
import * as COMMON_COPY from './common';
|
||||
import {PAGES_ENDPOINTS} from '../constants';
|
||||
import {FOOTER} from './common';
|
||||
|
||||
export const PAGE_INTRO = defineMessages({
|
||||
PAGE_TILE: {
|
||||
|
@ -49,10 +48,15 @@ export const RFI_BOX = defineMessages({
|
|||
|
||||
export const RFI_BOX_BODY = <FormattedMessage
|
||||
id={'contact.page.request.for.info.box.body'}
|
||||
defaultMessage={`During the beta period, comments may be submitted on the Climate and Economic Justice Screening Tool via CEQ’s Request for Information available on <link1>federalregister.gov</link1>.`}
|
||||
defaultMessage={`The Request for Information on the Federal Register for the public beta period closed on {rfiExpDate}.`}
|
||||
description={'Navigate to the contact page, this is the body of the request for information box'}
|
||||
values={{
|
||||
link1: COMMON_COPY.linkFn(FOOTER.RFI_LINK.defaultMessage, false, true),
|
||||
rfiExpDate: <FormattedDate
|
||||
value={COMMON_COPY.RFI_EXPIRATION_DATE}
|
||||
year="numeric"
|
||||
month="long"
|
||||
day="numeric"
|
||||
/>,
|
||||
}}
|
||||
/>;
|
||||
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
import React from 'react';
|
||||
import {defineMessages} from 'react-intl';
|
||||
import {FormattedMessage, FormattedNumber} from 'gatsby-plugin-intl';
|
||||
import {simpleLink} from './common';
|
||||
import * as COMMON_COPY from './common';
|
||||
|
||||
export const PAGE_INTRO = defineMessages({
|
||||
PAGE_TILE: {
|
||||
|
@ -27,53 +27,129 @@ export const PAGE_INTRO = defineMessages({
|
|||
},
|
||||
});
|
||||
|
||||
export const DOWNLOAD_LINKS = {
|
||||
EXCEL: <FormattedMessage
|
||||
id={'downloads.page.excel.link'}
|
||||
defaultMessage={`
|
||||
<link1>Excel file</link1> (.xlxs {excelFileSize} unzipped)
|
||||
`}
|
||||
description={'On the downloads page, the description of the excel link'}
|
||||
values={{
|
||||
link1: (str:string) => <a href='/about'>{str}</a>,
|
||||
excelFileSize: <FormattedNumber
|
||||
value={54}
|
||||
style="unit"
|
||||
unit="megabyte"
|
||||
unitDisplay="narrow"
|
||||
/>,
|
||||
}}
|
||||
/>,
|
||||
CSV: <FormattedMessage
|
||||
id={'downloads.page.csv.link'}
|
||||
defaultMessage={`
|
||||
<link1>CSV file </link1> (.csv {csvFileSize} unzipped)
|
||||
`}
|
||||
description={'On the downloads page, the description of the csv link'}
|
||||
values={{
|
||||
link1: simpleLink('/csv'),
|
||||
csvFileSize: <FormattedNumber
|
||||
value={52}
|
||||
style="unit"
|
||||
unit="megabyte"
|
||||
unitDisplay="narrow"
|
||||
/>,
|
||||
}}
|
||||
/>,
|
||||
SHAPE: <FormattedMessage
|
||||
id={'downloads.page.shape.link'}
|
||||
defaultMessage={`
|
||||
<link1>Shapefiles </link1> (Codebook included with geojson {shapeFileSize} unzipped)
|
||||
`}
|
||||
description={'On the downloads page, the description of the shapefiles link'}
|
||||
values={{
|
||||
link1: simpleLink('/shape'),
|
||||
shapeFileSize: <FormattedNumber
|
||||
value={110}
|
||||
style="unit"
|
||||
unit="megabyte"
|
||||
unitDisplay="narrow"
|
||||
/>,
|
||||
}}
|
||||
/>,
|
||||
const getDownloadFileUrl = (filePath:string | undefined) => {
|
||||
return [
|
||||
process.env.GATSBY_CDN_TILES_BASE_URL,
|
||||
process.env.GATSBY_DATA_PIPELINE_SCORE_PATH,
|
||||
filePath,
|
||||
].join('/');
|
||||
};
|
||||
|
||||
// Define meta data on dowload files
|
||||
export const DOWNLOAD_FILES = {
|
||||
SCREENING_TOOL_DATA_ZIP: {
|
||||
SIZE: 53.7, // MB
|
||||
URL: getDownloadFileUrl(process.env.GATSBY_FILE_DL_PATH_SCREENING_TOOL_DATA_ZIP),
|
||||
LAST_UPDATED: new Date('5/4/2022').getTime(),
|
||||
},
|
||||
COMMUNITIES_LIST_CSV: {
|
||||
SIZE: 28.1, // MB
|
||||
URL: getDownloadFileUrl(process.env.GATSBY_FILE_DL_PATH_COMMUNITIES_LIST_CSV),
|
||||
LAST_UPDATED: new Date('5/4/2022').getTime(),
|
||||
},
|
||||
COMMUNITIES_LIST_XLS: {
|
||||
SIZE: 24.9, // MB
|
||||
URL: getDownloadFileUrl(process.env.GATSBY_FILE_DL_PATH_COMMUNITIES_LIST_XLS),
|
||||
LAST_UPDATED: new Date('5/4/2022').getTime(),
|
||||
},
|
||||
SHAPE_FILE: {
|
||||
SIZE: 741, // MB
|
||||
URL: getDownloadFileUrl(process.env.GATSBY_FILE_DL_PATH_SHAPE_FILE_ZIP),
|
||||
LAST_UPDATED: new Date('5/4/2022').getTime(),
|
||||
},
|
||||
TSD: {
|
||||
SIZE: 2.5, // MB
|
||||
URL: getDownloadFileUrl(process.env.GATSBY_FILE_DL_PATH_TSD_PDF),
|
||||
LAST_UPDATED: new Date('5/4/2022').getTime(),
|
||||
},
|
||||
HOW_TO_COMMUNITIES: {
|
||||
SIZE: 674, // KB
|
||||
URL: getDownloadFileUrl(process.env.GATSBY_FILE_DL_PATH_HOW_TO_COMMUNITIES_PDF),
|
||||
LAST_UPDATED: new Date('5/4/2022').getTime(),
|
||||
},
|
||||
};
|
||||
|
||||
// If this is not a function, it will cause a circular dependency
|
||||
export const getDownloadIconAltTag = () => defineMessages({
|
||||
ALT_TAG: {
|
||||
id: 'downloads.page.download.icon.alt.tag',
|
||||
defaultMessage: 'The icon used to indicate that the file is downloadable',
|
||||
description: 'Navigate to the Downloads page, this is the icon used to indicate that the file is downloadable',
|
||||
},
|
||||
});
|
||||
|
||||
export const DOWNLOAD_LINKS = {
|
||||
LINK1: <FormattedMessage
|
||||
id={'download.page.download.file.1'}
|
||||
defaultMessage={`
|
||||
<link1>Communities list data</link1> (.xlsx {cldXlsFileSize})
|
||||
`}
|
||||
description={'Navigate to the download page. This is first download file link'}
|
||||
values={{
|
||||
link1: COMMON_COPY.downloadLink(DOWNLOAD_FILES.COMMUNITIES_LIST_XLS.URL),
|
||||
cldXlsFileSize: <FormattedNumber
|
||||
value={DOWNLOAD_FILES.COMMUNITIES_LIST_XLS.SIZE}
|
||||
style="unit"
|
||||
unit="megabyte"
|
||||
unitDisplay="narrow"
|
||||
/>,
|
||||
}}
|
||||
/>,
|
||||
LINK2: <FormattedMessage
|
||||
id={'download.page.download.file.2'}
|
||||
defaultMessage={`<link2>Communities list data</link2> (.csv {cldCsvFileSize})`}
|
||||
description={'Navigate to the download page. This is second download file link'}
|
||||
values={{
|
||||
link2: COMMON_COPY.downloadLink(DOWNLOAD_FILES.COMMUNITIES_LIST_CSV.URL),
|
||||
cldCsvFileSize: <FormattedNumber
|
||||
value={DOWNLOAD_FILES.COMMUNITIES_LIST_CSV.SIZE}
|
||||
style="unit"
|
||||
unit="megabyte"
|
||||
unitDisplay="narrow"
|
||||
/>,
|
||||
}}
|
||||
/>,
|
||||
LINK3: <FormattedMessage
|
||||
id={'download.page.download.file.3'}
|
||||
defaultMessage={`<link3>Shapefile</link3> (Codebook included with geojson {shapeFileSize} unzipped)`}
|
||||
description={'Navigate to the download page. This is third download file link'}
|
||||
values={{
|
||||
link3: COMMON_COPY.downloadLink(DOWNLOAD_FILES.SHAPE_FILE.URL),
|
||||
shapeFileSize: <FormattedNumber
|
||||
value={DOWNLOAD_FILES.SHAPE_FILE.SIZE}
|
||||
style="unit"
|
||||
unit="megabyte"
|
||||
unitDisplay="narrow"
|
||||
/>,
|
||||
}}
|
||||
/>,
|
||||
LINK4: <FormattedMessage
|
||||
id={'download.page.download.file.4'}
|
||||
defaultMessage={`<link4>Technical support document</link4> (.pdf {tsdFileSize})`}
|
||||
description={'Navigate to the download page. This is fourth download file link'}
|
||||
values={{
|
||||
link4: COMMON_COPY.linkFn(DOWNLOAD_FILES.TSD.URL, false, true),
|
||||
tsdFileSize: <FormattedNumber
|
||||
value={DOWNLOAD_FILES.TSD.SIZE}
|
||||
style="unit"
|
||||
unit="megabyte"
|
||||
unitDisplay="narrow"
|
||||
/>,
|
||||
}}
|
||||
/>,
|
||||
LINK5: <FormattedMessage
|
||||
id={'download.page.download.file.5'}
|
||||
defaultMessage={`<link5>How to use the list of communities</link5> (.pdf {howToCommFileSize})`}
|
||||
description={'Navigate to the download page. This is fifth download file link'}
|
||||
values={{
|
||||
link5: COMMON_COPY.linkFn(DOWNLOAD_FILES.HOW_TO_COMMUNITIES.URL, false, true),
|
||||
howToCommFileSize: <FormattedNumber
|
||||
value={DOWNLOAD_FILES.HOW_TO_COMMUNITIES.SIZE}
|
||||
style="unit"
|
||||
unit="kilobyte"
|
||||
unitDisplay="narrow"
|
||||
/>,
|
||||
}}
|
||||
/>,
|
||||
// };
|
||||
};
|
||||
|
|
|
@ -5,8 +5,8 @@ import {defineMessages} from 'react-intl';
|
|||
import {FormattedDate, FormattedMessage, FormattedNumber} from 'gatsby-plugin-intl';
|
||||
|
||||
import * as COMMON_COPY from './common';
|
||||
import * as DOWNLOADS_COPY from './downloads';
|
||||
import * as METHODOLOGY_COPY from './methodology';
|
||||
import {simpleLink, linkFn} from './common';
|
||||
import {PAGES_ENDPOINTS} from '../constants';
|
||||
|
||||
export const PAGE_INTRO = defineMessages({
|
||||
|
@ -32,7 +32,7 @@ export const PAGE_DESCRIPTION = <FormattedMessage
|
|||
`}
|
||||
description={'On the explore the map page, the description of the page'}
|
||||
values={{
|
||||
link1: linkFn(PAGES_ENDPOINTS.METHODOLOGY, true, false),
|
||||
link1: COMMON_COPY.linkFn(PAGES_ENDPOINTS.METHODOLOGY, true, false),
|
||||
}}
|
||||
/>;
|
||||
|
||||
|
@ -187,7 +187,7 @@ export const SIDE_PANEL_INITIAL_STATE = defineMessages({
|
|||
PARA3: {
|
||||
id: 'explore.map.page.side.panel.info.para3',
|
||||
defaultMessage: `
|
||||
The tool ranks each census tract using percentiles that show how much burden each tract experiences relative to all other tracts, for each criteria.
|
||||
The tool ranks each census tract using percentiles that show how much burden each tract experiences relative to all other tracts, for each criterion.
|
||||
`,
|
||||
description: `Navigate to the explore the map page. When the map is in view, click on the map. The side panel will show Things to know, this is the third paragraph of this side panel`,
|
||||
},
|
||||
|
@ -777,15 +777,15 @@ export const DOWNLOAD_DRAFT = {
|
|||
map that will download the data packet
|
||||
`}
|
||||
values={{
|
||||
link1: simpleLink(METHODOLOGY_COPY.DOWNLOAD_ZIP_URL),
|
||||
link1: COMMON_COPY.downloadLink(DOWNLOADS_COPY.DOWNLOAD_FILES.SHAPE_FILE.URL),
|
||||
downloadFileSize: <FormattedNumber
|
||||
value={METHODOLOGY_COPY.DOWNLOAD_FILE_SIZE}
|
||||
value={DOWNLOADS_COPY.DOWNLOAD_FILES.SHAPE_FILE.SIZE}
|
||||
style="unit"
|
||||
unit="megabyte"
|
||||
unitDisplay="narrow"
|
||||
/>,
|
||||
dateUpdated: <FormattedDate
|
||||
value={METHODOLOGY_COPY.DOWNLOAD_ZIP_LAST_UPDATED}
|
||||
value={DOWNLOADS_COPY.DOWNLOAD_FILES.SHAPE_FILE.LAST_UPDATED}
|
||||
year="2-digit"
|
||||
month="2-digit"
|
||||
day="2-digit"
|
||||
|
@ -809,7 +809,7 @@ export const NOTE_ON_TERRITORIES = {
|
|||
`}
|
||||
description={`Navigate to the explore the map page. Under the map, you will see territories paragraph 1`}
|
||||
values={{
|
||||
link1: linkFn(PAGES_ENDPOINTS.METHODOLOGY, true, false),
|
||||
link1: COMMON_COPY.linkFn(PAGES_ENDPOINTS.METHODOLOGY, true, false),
|
||||
}}
|
||||
/>,
|
||||
PARA_2: <FormattedMessage
|
||||
|
@ -863,10 +863,10 @@ export const NOTE_ON_TRIBAL_NATIONS = {
|
|||
`}
|
||||
description={`Navigate to the explore the map page. Under the map, you will see tribal nations paragraph 1`}
|
||||
values={{
|
||||
link1: linkFn(PAGES_ENDPOINTS.METHODOLOGY, true, false),
|
||||
link2: linkFn(`https://www.whitehouse.gov/wp-content/uploads/2022/01/CEQ-Tribal-Consultation-Plan-04.26.2021.pdf`, false, true),
|
||||
link3: linkFn(`https://www.whitehouse.gov/briefing-room/presidential-actions/2021/01/26/memorandum-on-tribal-consultation-and-strengthening-nation-to-nation-relationships/`, false, true),
|
||||
link4: linkFn(`https://www.federalregister.gov/documents/2000/11/09/00-29003/consultation-and-coordination-with-indian-tribal-governments`, false, true),
|
||||
link1: COMMON_COPY.linkFn(PAGES_ENDPOINTS.METHODOLOGY, true, false),
|
||||
link2: COMMON_COPY.linkFn(`https://www.whitehouse.gov/wp-content/uploads/2022/01/CEQ-Tribal-Consultation-Plan-04.26.2021.pdf`, false, true),
|
||||
link3: COMMON_COPY.linkFn(`https://www.whitehouse.gov/briefing-room/presidential-actions/2021/01/26/memorandum-on-tribal-consultation-and-strengthening-nation-to-nation-relationships/`, false, true),
|
||||
link4: COMMON_COPY.linkFn(`https://www.federalregister.gov/documents/2000/11/09/00-29003/consultation-and-coordination-with-indian-tribal-governments`, false, true),
|
||||
}}
|
||||
/>,
|
||||
};
|
||||
|
@ -884,7 +884,7 @@ export const HOW_YOU_CAN_HELP_LIST_ITEMS = {
|
|||
`}
|
||||
defaultMessage={`View the <link1>Methodology & data</link1> page and send feedback.`}
|
||||
values={{
|
||||
link1: linkFn(PAGES_ENDPOINTS.METHODOLOGY, true, false),
|
||||
link1: COMMON_COPY.linkFn(PAGES_ENDPOINTS.METHODOLOGY, true, false),
|
||||
}}
|
||||
/>,
|
||||
LIST_ITEM_2: <FormattedMessage
|
||||
|
@ -892,16 +892,13 @@ export const HOW_YOU_CAN_HELP_LIST_ITEMS = {
|
|||
description={`Navigate to the explore the map page. Under the map, you will see share your feedback`}
|
||||
defaultMessage={`Use the map to find communities and <link1>share your feedback</link1>.`}
|
||||
values={{
|
||||
link1: linkFn(`mailto:${COMMON_COPY.FEEDBACK_EMAIL}`, false, true),
|
||||
link1: COMMON_COPY.linkFn(`mailto:${COMMON_COPY.FEEDBACK_EMAIL}`, false, true),
|
||||
}}
|
||||
/>,
|
||||
LIST_ITEM_3: <FormattedMessage
|
||||
id={'explore.map.page.under.map.how.you.can.help.list.item.3'}
|
||||
description={`Navigate to the explore the map page. Under the map, you will see share your feedback`}
|
||||
defaultMessage={`Respond to our Request for Information on <link1>federalregister.gov</link1>.`}
|
||||
values={{
|
||||
link1: linkFn(`https://www.federalregister.gov/d/2022-03920`, false, true),
|
||||
}}
|
||||
description={`Navigate to the explore the map page. Under the map, you will see RFI is expired`}
|
||||
defaultMessage={`The Request for Information on the Federal Register is now closed.`}
|
||||
/>,
|
||||
|
||||
};
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
/* eslint-disable max-len */
|
||||
import React from 'react';
|
||||
import {defineMessages} from 'react-intl';
|
||||
import {FormattedDate, FormattedMessage, FormattedNumber} from 'gatsby-plugin-intl';
|
||||
import {FormattedMessage} from 'gatsby-plugin-intl';
|
||||
import {boldFn, linkFn, simpleLink} from './common';
|
||||
import * as styles from '../../components/DownloadPacket/downloadPacket.module.scss';
|
||||
|
||||
export const VERSION_NUMBER = 0.1;
|
||||
|
||||
export const PAGE = defineMessages({
|
||||
TILE: {
|
||||
|
@ -24,7 +25,7 @@ export const PAGE = defineMessages({
|
|||
which publicly-available and nationally-consistent datasets can be consistently displayed on the
|
||||
tool. Census tract geographical boundaries are determined by the U.S. Census Bureau once every ten
|
||||
years. This tool utilizes the census tract boundaries from 2010 because they match the datasets used
|
||||
in the tool. The U.S. Census Bureau will update these census tract boundaries in 2020.
|
||||
in the tool.
|
||||
`,
|
||||
description: 'Navigate to the methodology page. This is the methodology page paragraph',
|
||||
},
|
||||
|
@ -40,7 +41,6 @@ export const PAGE = defineMessages({
|
|||
|
||||
});
|
||||
|
||||
|
||||
export const FORMULA = {
|
||||
INTRO: <FormattedMessage
|
||||
id={'methodology.page.formula.intro'}
|
||||
|
@ -72,143 +72,6 @@ export const FORMULA = {
|
|||
/>,
|
||||
};
|
||||
|
||||
// Download Package
|
||||
export const DOWNLOAD_FILE_SIZE = 53;
|
||||
export const DOWNLOAD_SHAPE_FILE_SIZE = 742;
|
||||
export const DOWNLOAD_TSD_FILE_SIZE = 2.5;
|
||||
export const DOWNLOAD_ZIP_LAST_UPDATED = new Date('5/4/2022').getTime();
|
||||
export const DOWNLOAD_SHAPE_LAST_UPDATED = new Date('4/26/2022').getTime();
|
||||
export const DOWNLOAD_TSD_LAST_UPDATED = new Date('4/19/2022').getTime();
|
||||
export const VERSION_NUMBER = 0.1;
|
||||
|
||||
export const DOWNLOAD_ZIP_URL = [
|
||||
process.env.GATSBY_CDN_TILES_BASE_URL,
|
||||
process.env.GATSBY_DATA_PIPELINE_SCORE_PATH,
|
||||
process.env.GATSBY_SCORE_DOWNLOAD_FILE_PATH,
|
||||
].join('/');
|
||||
|
||||
export const DOWNLOAD_SHAPEFILE_URL = [
|
||||
process.env.GATSBY_CDN_TILES_BASE_URL,
|
||||
process.env.GATSBY_DATA_PIPELINE_SCORE_PATH,
|
||||
process.env.GATSBY_SHAPE_FILE_PATH,
|
||||
].join('/');
|
||||
|
||||
// TSD = Tech Support Document
|
||||
export const DOWNLOAD_TSD_URL = [
|
||||
process.env.GATSBY_CDN_TILES_BASE_URL,
|
||||
process.env.GATSBY_DATA_PIPELINE_SCORE_PATH,
|
||||
process.env.GATSBY_TSD_DOWNLOAD_FILE_PATH,
|
||||
].join('/');
|
||||
|
||||
const newCalloutFontColorFn = (str: string) => <span className={styles.newCalloutFontColor}>{str}</span>;
|
||||
|
||||
export const DOWNLOAD_PACKAGE = {
|
||||
TITLE: <FormattedMessage
|
||||
id={'methodology.page.downloadPacket.header.text'}
|
||||
defaultMessage={`<callout>NEW</callout> files available for download`}
|
||||
description={'Navigate to the methodology page. This is the download packet header text'}
|
||||
values={{
|
||||
callout: newCalloutFontColorFn,
|
||||
}}
|
||||
/>,
|
||||
DESCRIPTION1: <FormattedMessage
|
||||
id={'methodology.page.downloadPacket.info.text1'}
|
||||
defaultMessage={`Download the data sources used in the CEJST (.csv, .xlxs, <callout>.pdf</callout> that describes how to use the list, and a <callout>codebook</callout>, {downloadFileSize} unzipped), the shapefile, along with a <callout>codebook</callout> (.zip, {shapefileSize} unzipped) or the technical support document (.pdf, {tsdFileSize} unzipped).`}
|
||||
description={'Navigate to the methodology page. This is the download packet info text'}
|
||||
values={{
|
||||
callout: newCalloutFontColorFn,
|
||||
downloadFileSize: <FormattedNumber
|
||||
value={DOWNLOAD_FILE_SIZE}
|
||||
style="unit"
|
||||
unit="megabyte"
|
||||
unitDisplay="narrow"
|
||||
/>,
|
||||
shapefileSize: <FormattedNumber
|
||||
value={DOWNLOAD_SHAPE_FILE_SIZE}
|
||||
style="unit"
|
||||
unit="megabyte"
|
||||
unitDisplay="narrow"
|
||||
/>,
|
||||
tsdFileSize: <FormattedNumber
|
||||
value={DOWNLOAD_TSD_FILE_SIZE}
|
||||
style="unit"
|
||||
unit="megabyte"
|
||||
unitDisplay="narrow"
|
||||
/>,
|
||||
}}
|
||||
/>,
|
||||
ZIP_LAST_UPDATED: <FormattedMessage
|
||||
id={'methodology.page.downloadPacket.info.zip.last.updated'}
|
||||
defaultMessage={`Last updated: {downloadLastUpdated} `}
|
||||
description={'Navigate to the methodology page. This is the download packet info last updated'}
|
||||
values={{
|
||||
downloadLastUpdated: <FormattedDate
|
||||
value={DOWNLOAD_ZIP_LAST_UPDATED}
|
||||
year="2-digit"
|
||||
month="2-digit"
|
||||
day="2-digit"
|
||||
/>,
|
||||
}}
|
||||
/>,
|
||||
SHAPE_LAST_UPDATED: <FormattedMessage
|
||||
id={'methodology.page.downloadPacket.info.shape.last.updated'}
|
||||
defaultMessage={`Last updated: {shapeLastUpdated} `}
|
||||
description={'Navigate to the methodology page. This is the download packet info last updated'}
|
||||
values={{
|
||||
shapeLastUpdated: <FormattedDate
|
||||
value={DOWNLOAD_SHAPE_LAST_UPDATED}
|
||||
year="2-digit"
|
||||
month="2-digit"
|
||||
day="2-digit"
|
||||
/>,
|
||||
}}
|
||||
/>,
|
||||
TSD_LAST_UPDATED: <FormattedMessage
|
||||
id={'methodology.page.downloadPacket.info.tsd.last.updated'}
|
||||
defaultMessage={`Last updated: {tsdLastUpdated} `}
|
||||
description={'Navigate to the methodology page. This is the download packet info last updated'}
|
||||
values={{
|
||||
tsdLastUpdated: <FormattedDate
|
||||
value={DOWNLOAD_TSD_LAST_UPDATED}
|
||||
year="2-digit"
|
||||
month="2-digit"
|
||||
day="2-digit"
|
||||
/>,
|
||||
}}
|
||||
/>,
|
||||
BUTTON_TEXT1: <FormattedMessage
|
||||
id={'methodology.page.downloadPacket.button1.text'}
|
||||
defaultMessage={'Download data sources'}
|
||||
description={'Navigate to the methodology page. This is the download packet button text'}
|
||||
/>,
|
||||
BUTTON_TEXT2: <FormattedMessage
|
||||
id={'methodology.page.downloadPacket.button2.text'}
|
||||
defaultMessage={'Download shapefile'}
|
||||
description={'Navigate to the methodology page. This is the download shapefiles text'}
|
||||
/>,
|
||||
BUTTON_TEXT3: <FormattedMessage
|
||||
id={'methodology.page.downloadPacket.button3.text'}
|
||||
defaultMessage={'Download technical support document'}
|
||||
description={'Navigate to the methodology page. This is the download technical support document spreadsheet'}
|
||||
/>,
|
||||
NEW_TAG: <FormattedMessage
|
||||
id={'methodology.page.downloadPacket.new.tag.text'}
|
||||
defaultMessage={`<boldtag>NEW</boldtag>`}
|
||||
description={'Navigate to the methodology page. This is the new tag text'}
|
||||
values={{
|
||||
boldtag: boldFn,
|
||||
}}
|
||||
/>,
|
||||
UPDATED_TAG: <FormattedMessage
|
||||
id={'methodology.page.downloadPacket.updated.tag.text'}
|
||||
defaultMessage={`<boldtag>Updated</boldtag>`}
|
||||
description={'Navigate to the methodology page. This is the update callout tag text that overlaps the button'}
|
||||
values={{
|
||||
boldtag: boldFn,
|
||||
}}
|
||||
/>,
|
||||
};
|
||||
|
||||
export const CATEGORY = {
|
||||
HEADING: <FormattedMessage
|
||||
id={'methodology.page.indicator.categories.heading'}
|
||||
|
|
|
@ -272,7 +272,7 @@
|
|||
"description": "Navigate to the contact page, this is the contact page header text"
|
||||
},
|
||||
"contact.page.request.for.info.box.body": {
|
||||
"defaultMessage": "During the beta period, comments may be submitted on the Climate and Economic Justice Screening Tool via CEQ’s Request for Information available on <link1>federalregister.gov</link1>.",
|
||||
"defaultMessage": "The Request for Information on the Federal Register for the public beta period closed on {rfiExpDate}.",
|
||||
"description": "Navigate to the contact page, this is the body of the request for information box"
|
||||
},
|
||||
"contact.page.request.for.info.box.title": {
|
||||
|
@ -287,17 +287,33 @@
|
|||
"defaultMessage": "Contact",
|
||||
"description": "Navigate to the contact page, this is the contact page title text"
|
||||
},
|
||||
"downloads.page.csv.link": {
|
||||
"defaultMessage": "<link1>CSV file </link1> (.csv {csvFileSize} unzipped)",
|
||||
"description": "On the downloads page, the description of the csv link"
|
||||
"download.page.download.file.1": {
|
||||
"defaultMessage": "<link1>Communities list data</link1> (.xlsx {cldXlsFileSize})",
|
||||
"description": "Navigate to the download page. This is first download file link"
|
||||
},
|
||||
"download.page.download.file.2": {
|
||||
"defaultMessage": "<link2>Communities list data</link2> (.csv {cldCsvFileSize})",
|
||||
"description": "Navigate to the download page. This is second download file link"
|
||||
},
|
||||
"download.page.download.file.3": {
|
||||
"defaultMessage": "<link3>Shapefile</link3> (Codebook included with geojson {shapeFileSize} unzipped)",
|
||||
"description": "Navigate to the download page. This is third download file link"
|
||||
},
|
||||
"download.page.download.file.4": {
|
||||
"defaultMessage": "<link4>Technical support document</link4> (.pdf {tsdFileSize})",
|
||||
"description": "Navigate to the download page. This is fourth download file link"
|
||||
},
|
||||
"download.page.download.file.5": {
|
||||
"defaultMessage": "<link5>How to use the list of communities</link5> (.pdf {howToCommFileSize})",
|
||||
"description": "Navigate to the download page. This is fifth download file link"
|
||||
},
|
||||
"downloads.page.description1.text": {
|
||||
"defaultMessage": "The dataset used in the tool, along with a data dictionary and information about how to use the list of communities (.pdf) are available in the following file formats:",
|
||||
"description": "Navigate to the Downloads page, this will be the page description1 text"
|
||||
},
|
||||
"downloads.page.excel.link": {
|
||||
"defaultMessage": "<link1>Excel file</link1> (.xlxs {excelFileSize} unzipped)",
|
||||
"description": "On the downloads page, the description of the excel link"
|
||||
"downloads.page.download.icon.alt.tag": {
|
||||
"defaultMessage": "The icon used to indicate that the file is downloadable",
|
||||
"description": "Navigate to the Downloads page, this is the icon used to indicate that the file is downloadable"
|
||||
},
|
||||
"downloads.page.heading1.text": {
|
||||
"defaultMessage": "Downloads",
|
||||
|
@ -307,10 +323,6 @@
|
|||
"defaultMessage": "File formats",
|
||||
"description": "Navigate to the Downloads page, this will be the page heading2 text"
|
||||
},
|
||||
"downloads.page.shape.link": {
|
||||
"defaultMessage": "<link1>Shapefiles </link1> (Codebook included with geojson {shapeFileSize} unzipped)",
|
||||
"description": "On the downloads page, the description of the shapefiles link"
|
||||
},
|
||||
"downloads.page.title.text": {
|
||||
"defaultMessage": "Downloads",
|
||||
"description": "Navigate to the Downloads page, this will be the page title text"
|
||||
|
@ -744,7 +756,7 @@
|
|||
"description": "Navigate to the explore the map page. When the map is in view, click on the map. The side panel will show Things to know, this is the second paragraph of this side panel"
|
||||
},
|
||||
"explore.map.page.side.panel.info.para3": {
|
||||
"defaultMessage": "The tool ranks each census tract using percentiles that show how much burden each tract experiences relative to all other tracts, for each criteria.",
|
||||
"defaultMessage": "The tool ranks each census tract using percentiles that show how much burden each tract experiences relative to all other tracts, for each criterion.",
|
||||
"description": "Navigate to the explore the map page. When the map is in view, click on the map. The side panel will show Things to know, this is the third paragraph of this side panel"
|
||||
},
|
||||
"explore.map.page.side.panel.info.para4": {
|
||||
|
@ -816,8 +828,8 @@
|
|||
"description": "Navigate to the explore the map page. Under the map, you will see share your feedback"
|
||||
},
|
||||
"explore.map.page.under.map.how.you.can.help.list.item.3": {
|
||||
"defaultMessage": "Respond to our Request for Information on <link1>federalregister.gov</link1>.",
|
||||
"description": "Navigate to the explore the map page. Under the map, you will see share your feedback"
|
||||
"defaultMessage": "The Request for Information on the Federal Register is now closed.",
|
||||
"description": "Navigate to the explore the map page. Under the map, you will see RFI is expired"
|
||||
},
|
||||
"explore.map.page.under.map.note.on.territories.intro": {
|
||||
"defaultMessage": "A note on the U.S. territories",
|
||||
|
@ -1235,46 +1247,6 @@
|
|||
"defaultMessage": "All categories",
|
||||
"description": "Navigate to the methodology page. Navigate to the dataset section. This is the portion of the dataset card Used In text for all methodologies"
|
||||
},
|
||||
"methodology.page.downloadPacket.button1.text": {
|
||||
"defaultMessage": "Download data sources",
|
||||
"description": "Navigate to the methodology page. This is the download packet button text"
|
||||
},
|
||||
"methodology.page.downloadPacket.button2.text": {
|
||||
"defaultMessage": "Download shapefile",
|
||||
"description": "Navigate to the methodology page. This is the download shapefiles text"
|
||||
},
|
||||
"methodology.page.downloadPacket.button3.text": {
|
||||
"defaultMessage": "Download technical support document",
|
||||
"description": "Navigate to the methodology page. This is the download technical support document spreadsheet"
|
||||
},
|
||||
"methodology.page.downloadPacket.header.text": {
|
||||
"defaultMessage": "<callout>NEW</callout> files available for download",
|
||||
"description": "Navigate to the methodology page. This is the download packet header text"
|
||||
},
|
||||
"methodology.page.downloadPacket.info.shape.last.updated": {
|
||||
"defaultMessage": "Last updated: {shapeLastUpdated}",
|
||||
"description": "Navigate to the methodology page. This is the download packet info last updated"
|
||||
},
|
||||
"methodology.page.downloadPacket.info.text1": {
|
||||
"defaultMessage": "Download the data sources used in the CEJST (.csv, .xlxs, <callout>.pdf</callout> that describes how to use the list, and a <callout>codebook</callout>, {downloadFileSize} unzipped), the shapefile, along with a <callout>codebook</callout> (.zip, {shapefileSize} unzipped) or the technical support document (.pdf, {tsdFileSize} unzipped).",
|
||||
"description": "Navigate to the methodology page. This is the download packet info text"
|
||||
},
|
||||
"methodology.page.downloadPacket.info.tsd.last.updated": {
|
||||
"defaultMessage": "Last updated: {tsdLastUpdated}",
|
||||
"description": "Navigate to the methodology page. This is the download packet info last updated"
|
||||
},
|
||||
"methodology.page.downloadPacket.info.zip.last.updated": {
|
||||
"defaultMessage": "Last updated: {downloadLastUpdated}",
|
||||
"description": "Navigate to the methodology page. This is the download packet info last updated"
|
||||
},
|
||||
"methodology.page.downloadPacket.new.tag.text": {
|
||||
"defaultMessage": "<boldtag>NEW</boldtag>",
|
||||
"description": "Navigate to the methodology page. This is the new tag text"
|
||||
},
|
||||
"methodology.page.downloadPacket.updated.tag.text": {
|
||||
"defaultMessage": "<boldtag>Updated</boldtag>",
|
||||
"description": "Navigate to the methodology page. This is the update callout tag text that overlaps the button"
|
||||
},
|
||||
"methodology.page.formula.first": {
|
||||
"defaultMessage": "<boldtag>IF</boldtag> the census tract is above the threshold for one or more environmental or climate indicators",
|
||||
"description": "Navigate to the methodology page. This is the first part of the formula used in the methodology"
|
||||
|
@ -1364,7 +1336,7 @@
|
|||
"description": "Navigate to the methodology page. Navigate to the dataset section. This is the portion of the dataset card that populates the Used in section for the Training and workforce development"
|
||||
},
|
||||
"methodology.page.paragraph": {
|
||||
"defaultMessage": "The current version of the tool identifies communities that are disadvantaged for the purposes of the Justice40 Initiative using census tracts, which are the smallest geographic unit for which publicly-available and nationally-consistent datasets can be consistently displayed on the tool. Census tract geographical boundaries are determined by the U.S. Census Bureau once every ten years. This tool utilizes the census tract boundaries from 2010 because they match the datasets used in the tool. The U.S. Census Bureau will update these census tract boundaries in 2020.",
|
||||
"defaultMessage": "The current version of the tool identifies communities that are disadvantaged for the purposes of the Justice40 Initiative using census tracts, which are the smallest geographic unit for which publicly-available and nationally-consistent datasets can be consistently displayed on the tool. Census tract geographical boundaries are determined by the U.S. Census Bureau once every ten years. This tool utilizes the census tract boundaries from 2010 because they match the datasets used in the tool.",
|
||||
"description": "Navigate to the methodology page. This is the methodology page paragraph"
|
||||
},
|
||||
"methodology.page.return.to.top.link": {
|
||||
|
|
|
@ -67,12 +67,17 @@
|
|||
"contact.page.fab.survey.text": "Ayude a mejorar el sitio web y los datos",
|
||||
"contact.page.general": "Para comentarios generales, envíe un correo eléctronico a {general_email_address}.",
|
||||
"contact.page.header.text": "Contacto",
|
||||
"contact.page.request.for.info.box.body": "Durante el periodo beta, se pueden enviar comentarios sobre la Herramienta para la evaluación de la justicia climática y económica mediante la Solicitud de información del CEQ que se encuentra disponible en <link1>federalregister.gov</link1>.",
|
||||
"contact.page.request.for.info.box.body": "La Solicitud de Información en el Registro Federal para el período beta público cerró el {rfiExpDate}.",
|
||||
"contact.page.request.for.info.box.title": "Solicitud de información",
|
||||
"contact.page.sub.header.text": "Envíenos un correo electrónico",
|
||||
"contact.page.title.text": "Contacto",
|
||||
"downloads.page.csv.link": "<link1>Archivo CSV </link1> (.csv {csvFileSize} descomprimido)",
|
||||
"download.page.download.file.1": "<link1>Datos de la lista de comunidades</link1> (.xlsx {cldXlsFileSize})",
|
||||
"download.page.download.file.2": "<link2>Datos de la lista de comunidades</link2> (.csv {cldCsvFileSize})",
|
||||
"download.page.download.file.3": "<link3>Archivo de forma</link3> (Libro de códigos incluido con geojson {shapeFileSize} descomprimido)",
|
||||
"download.page.download.file.4": "<link4>Documento de soporte técnico</link4> (.pdf {tsdFileSize})",
|
||||
"download.page.download.file.5": "<link5>Cómo utilizar la lista de comunidades</link5> (.pdf {howToCommFileSize})",
|
||||
"downloads.page.description1.text": "Los conjuntos de datos que se utilizan en la herramienta, junto con un diccionario de datos e información sobre cómo utilizar la lista de comunidades (.pdf) están disponibles en los siguientes formatos del archivo:",
|
||||
"downloads.page.download.icon.alt.tag": "El icono utilizado para indicar que el archivo se puede descargar",
|
||||
"downloads.page.excel.link": "<link1>Archivo Excel</link1> (.xlxs {excelFileSize} descomprimido)",
|
||||
"downloads.page.heading1.text": "Descargas",
|
||||
"downloads.page.heading2.text": "Formatos del archivo",
|
||||
|
@ -205,7 +210,7 @@
|
|||
"explore.map.page.under.map.how.you.can.help.heading": "Contribuya a mejorar la herramienta",
|
||||
"explore.map.page.under.map.how.you.can.help.list.item.1": "Vaya a la página <link1>Metodología y datos</link1> y envíe sus comentarios.",
|
||||
"explore.map.page.under.map.how.you.can.help.list.item.2": "Use la herramienta para buscar comunidades y <link1>enviar sus comentarios</link1>.",
|
||||
"explore.map.page.under.map.how.you.can.help.list.item.3": "En <link1>federalregister.gov</link1>, responda a nuestra Solicitud de información.",
|
||||
"explore.map.page.under.map.how.you.can.help.list.item.3": "La Solicitud de Información en el Registro Federal ya está cerrada.",
|
||||
"explore.map.page.under.map.note.on.territories.intro": "Observaciones sobre los territorios de los Estados Unidos",
|
||||
"explore.map.page.under.map.note.on.territories.para.1": "Las fuentes de datos que se describen en la página <link1>Metodología y datos</link1> se usan para identificar las comunidades desfavorecidas en los cincuenta estados y el Distrito de Columbia. No obstante, no todas estas fuentes de datos están disponibles actualmente para los territorios de los EE. UU.",
|
||||
"explore.map.page.under.map.note.on.territories.para.2": "Para Puerto Rico, se usan los datos de la Encuesta sobre la Comunidad Estadounidense (ACS, por sus siglas en inglés) de 2015 a 2019 de la Oficina del Censo para la tasa de inscripción en educación superior y los demás campos de la categoría Capacitación y desarrollo de la fuerza laboral a fin de identificar las comunidades desfavorecidas. Por ahora, no se dispone de datos en las demás categorías.",
|
||||
|
@ -341,7 +346,7 @@
|
|||
"methodology.page.indicator.categories.legacy.pollution.if": "<boldtag>SI</boldtag> está en el percentil de 90 o por encima de este para la <link1>proximidad a instalaciones para manejo de residuos peligrosos</link1> O la <link2>proximidad a los sitios de la Lista Nacional de Prioridades (NPL)</link2> O la <link3>proximidad a las instalaciones del Plan de Manejo de Riesgos (RMP)</link3>",
|
||||
"methodology.page.indicator.categories.work.dev.if": "<boldtag>SI</boldtag> se encuentra en el percentil de 90 o por encima de este para la <link1>mediana de bajos ingresos</link1> como un porcentaje de la mediana de ingresos de la zona O el <link2>aislamiento lingüístico</link2> O el <link3>desempleo</link3> O el porcentaje de personas en familias que se encuentran en el 100% del nivel de <link4>pobreza</link4> federal o por debajo de este",
|
||||
"methodology.page.indicator.categories.workforce.dev.methodology": "Categoría de capacitación y desarrollo de la fuerza laboral",
|
||||
"methodology.page.paragraph": "La versión actual de la herramienta identifica comunidades que están desfavorecidas para los fines de la Iniciativa Justice40 utilizando los grupos de bloques del censo, los cuales son la unidad geográfica más pequeña para las que existen conjuntos de datos nacionales coherentes a disposición del público que se pueden presentar coherentemente en la herramienta. Los límites de los grupos de bloques del censo se determinan por medio de la Oficina del Censo de los EE. UU. cada diez años. Esta herramienta utiliza los límites de los grupos de bloques del censo de 2010 porque coinciden con los conjuntos de datos que se utilizan en la herramienta. La Oficina del Censo de los EE. UU. actualizará estos grupos de bloques del censo en 2020.",
|
||||
"methodology.page.paragraph": "La versión actual de la herramienta identifica comunidades que están desfavorecidas para los fines de la Iniciativa Justice40 utilizando los grupos de bloques del censo, los cuales son la unidad geográfica más pequeña para las que existen conjuntos de datos nacionales coherentes a disposición del público que se pueden presentar coherentemente en la herramienta. Los límites de los grupos de bloques del censo se determinan por medio de la Oficina del Censo de los EE. UU. cada diez años. Esta herramienta utiliza los límites de los grupos de bloques del censo de 2010 porque coinciden con los conjuntos de datos que se utilizan en la herramienta.",
|
||||
"methodology.page.return.to.top.link": "Regresar arriba",
|
||||
"methodology.page.title.text": "Metodología y datos",
|
||||
"pageNotFound.Guidance.text": "Intente crear una página en",
|
||||
|
|
|
@ -4,37 +4,64 @@ import {useIntl} from 'gatsby-plugin-intl';
|
|||
|
||||
import J40MainGridContainer from '../components/J40MainGridContainer';
|
||||
import Layout from '../components/layout';
|
||||
import PublicEngageButton from '../components/PublicEngageButton';
|
||||
import SubPageNav from '../components/SubPageNav';
|
||||
import {useWindowSize} from 'react-use';
|
||||
|
||||
import * as DOWNLOADS_COPY from '../data/copy/downloads';
|
||||
|
||||
import * as CONSTANTS from '../data/constants';
|
||||
interface IDownloadsPageProps {
|
||||
location: Location;
|
||||
}
|
||||
|
||||
const DownloadsPage = ({location}: IDownloadsPageProps) => {
|
||||
const intl = useIntl();
|
||||
const {width} = useWindowSize();
|
||||
|
||||
return (
|
||||
<Layout location={location} title={intl.formatMessage(DOWNLOADS_COPY.PAGE_INTRO.PAGE_TILE)}>
|
||||
|
||||
<J40MainGridContainer>
|
||||
|
||||
<h1>{intl.formatMessage(DOWNLOADS_COPY.PAGE_INTRO.PAGE_HEADING1)}</h1>
|
||||
<section className={'page-heading'}>
|
||||
<h1>{intl.formatMessage(DOWNLOADS_COPY.PAGE_INTRO.PAGE_HEADING1)}</h1>
|
||||
<PublicEngageButton />
|
||||
</section>
|
||||
|
||||
<Grid desktop={{col: 8}}>
|
||||
<h2>{intl.formatMessage(DOWNLOADS_COPY.PAGE_INTRO.PAGE_HEADING2)}</h2>
|
||||
<p>
|
||||
{intl.formatMessage(DOWNLOADS_COPY.PAGE_INTRO.PAGE_DESCRIPTION1)}
|
||||
</p>
|
||||
<p>
|
||||
{DOWNLOADS_COPY.DOWNLOAD_LINKS.EXCEL}
|
||||
</p>
|
||||
<p>
|
||||
{DOWNLOADS_COPY.DOWNLOAD_LINKS.CSV}
|
||||
</p>
|
||||
<p>
|
||||
{DOWNLOADS_COPY.DOWNLOAD_LINKS.SHAPE}
|
||||
</p>
|
||||
<Grid row gap className={'j40-mb5-mt3'}>
|
||||
|
||||
<Grid col={12} tablet={{col: 8}}>
|
||||
<h2>{intl.formatMessage(DOWNLOADS_COPY.PAGE_INTRO.PAGE_HEADING2)}</h2>
|
||||
<p>
|
||||
{intl.formatMessage(DOWNLOADS_COPY.PAGE_INTRO.PAGE_DESCRIPTION1)}
|
||||
</p>
|
||||
<p>
|
||||
{DOWNLOADS_COPY.DOWNLOAD_LINKS.LINK1}
|
||||
</p>
|
||||
<p>
|
||||
{DOWNLOADS_COPY.DOWNLOAD_LINKS.LINK2}
|
||||
</p>
|
||||
<p>
|
||||
{DOWNLOADS_COPY.DOWNLOAD_LINKS.LINK3}
|
||||
</p>
|
||||
<p>
|
||||
{DOWNLOADS_COPY.DOWNLOAD_LINKS.LINK4}
|
||||
</p>
|
||||
<p>
|
||||
{DOWNLOADS_COPY.DOWNLOAD_LINKS.LINK5}
|
||||
</p>
|
||||
</Grid>
|
||||
|
||||
{/* Second column */}
|
||||
<Grid col={12} tablet={{col: 1}}>
|
||||
{/* Spacer column */}
|
||||
</Grid>
|
||||
|
||||
{/* Third column - Only show the SubPagNav component on desktop width */}
|
||||
{width > CONSTANTS.USWDS_BREAKPOINTS.DESKTOP ?
|
||||
<Grid col={12} tablet={{col: 3}}>
|
||||
<SubPageNav activeSubPageIndex={2}/>
|
||||
</Grid> : ''}
|
||||
</Grid>
|
||||
|
||||
</J40MainGridContainer>
|
||||
|
|
|
@ -4,12 +4,14 @@ import {useIntl} from 'gatsby-plugin-intl';
|
|||
|
||||
import Categories from '../components/Categories';
|
||||
import DatasetContainer from '../components/DatasetContainer';
|
||||
import DownloadPacket from '../components/DownloadPacket';
|
||||
import J40MainGridContainer from '../components/J40MainGridContainer';
|
||||
import MethodologyFormula from '../components/MethodologyFormula';
|
||||
import Layout from '../components/layout';
|
||||
import PublicEngageButton from '../components/PublicEngageButton';
|
||||
import SubPageNav from '../components/SubPageNav';
|
||||
import {useWindowSize} from 'react-use';
|
||||
|
||||
import * as CONSTANTS from '../data/constants';
|
||||
import * as METHODOLOGY_COPY from '../data/copy/methodology';
|
||||
|
||||
interface MethodPageProps {
|
||||
|
@ -18,6 +20,7 @@ interface MethodPageProps {
|
|||
|
||||
const IndexPage = ({location}: MethodPageProps) => {
|
||||
const intl = useIntl();
|
||||
const {width} = useWindowSize();
|
||||
|
||||
return (
|
||||
<Layout location={location} title={intl.formatMessage(METHODOLOGY_COPY.PAGE.TILE)}>
|
||||
|
@ -51,9 +54,15 @@ const IndexPage = ({location}: MethodPageProps) => {
|
|||
</Grid>
|
||||
|
||||
{/* Second column */}
|
||||
<Grid col={12} tablet={{col: 4}}>
|
||||
<DownloadPacket />
|
||||
<Grid col={12} tablet={{col: 1}}>
|
||||
{/* Spacer column */}
|
||||
</Grid>
|
||||
|
||||
{/* Third column */}
|
||||
{width > CONSTANTS.USWDS_BREAKPOINTS.DESKTOP ?
|
||||
<Grid col={12} tablet={{col: 3}}>
|
||||
<SubPageNav activeSubPageIndex={1}/>
|
||||
</Grid> : ''}
|
||||
</Grid>
|
||||
</J40MainGridContainer>
|
||||
|
||||
|
|
|
@ -247,12 +247,43 @@ exports[`rendering of the DatasetContainer checks if various text fields are vis
|
|||
<li
|
||||
class="usa-nav__primary-item"
|
||||
>
|
||||
<a
|
||||
data-cy="nav-link-methodology"
|
||||
href="/en/methodology"
|
||||
<button
|
||||
aria-controls="methMenu"
|
||||
aria-expanded="true"
|
||||
class="usa-accordion__button usa-nav__link"
|
||||
data-cy="nav-dropdown-methodology"
|
||||
data-testid="navDropDownButton"
|
||||
type="button"
|
||||
>
|
||||
Methodology & data
|
||||
</a>
|
||||
<span>
|
||||
Methodology & data
|
||||
</span>
|
||||
</button>
|
||||
<ul
|
||||
class="usa-nav__submenu"
|
||||
id="methMenu"
|
||||
>
|
||||
<li
|
||||
class="usa-nav__submenu-item"
|
||||
>
|
||||
<a
|
||||
data-cy="nav-link-methodology"
|
||||
href="/en/methodology"
|
||||
>
|
||||
Methodology & data
|
||||
</a>
|
||||
</li>
|
||||
<li
|
||||
class="usa-nav__submenu-item"
|
||||
>
|
||||
<a
|
||||
data-cy="nav-link-downloads"
|
||||
href="/en/downloads"
|
||||
>
|
||||
Downloads
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li
|
||||
class="usa-nav__primary-item"
|
||||
|
@ -301,79 +332,6 @@ exports[`rendering of the DatasetContainer checks if various text fields are vis
|
|||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div
|
||||
class="grid-container-desktop-lg"
|
||||
data-testid="gridContainer"
|
||||
>
|
||||
<div
|
||||
class="usa-alert usa-alert--info"
|
||||
data-testid="alert"
|
||||
>
|
||||
<div
|
||||
class="usa-alert__body"
|
||||
>
|
||||
<h4
|
||||
class="usa-alert__heading"
|
||||
>
|
||||
Additional documentation now available
|
||||
</h4>
|
||||
<p
|
||||
class="usa-alert__text"
|
||||
>
|
||||
Download new
|
||||
<a
|
||||
class="usa-link usa-link--external"
|
||||
data-cy=""
|
||||
href="https://static-data-screeningtool.geoplatform.gov/data-pipeline/data/score/downloadable/cejst_technical_support_document.pdf"
|
||||
rel="noreferrer"
|
||||
target="_blank"
|
||||
>
|
||||
technical support
|
||||
</a>
|
||||
and other documentation and
|
||||
<a
|
||||
class="usa-link usa-link--external"
|
||||
data-cy=""
|
||||
href="mailto:Screeningtool-Support@omb.eop.gov"
|
||||
rel="noreferrer"
|
||||
target="_blank"
|
||||
>
|
||||
send feedback
|
||||
</a>
|
||||
.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
<div
|
||||
class="usa-alert usa-alert--info"
|
||||
data-testid="alert"
|
||||
>
|
||||
<div
|
||||
class="usa-alert__body"
|
||||
>
|
||||
<h4
|
||||
class="usa-alert__heading"
|
||||
>
|
||||
Public comment period extended
|
||||
</h4>
|
||||
<p
|
||||
class="usa-alert__text"
|
||||
>
|
||||
The public comment period for
|
||||
<a
|
||||
class="usa-link usa-link--external"
|
||||
data-cy=""
|
||||
href="https://www.federalregister.gov/documents/2022/04/25/2022-08774/climate-and-economic-justice-screening-tool-beta-version"
|
||||
rel="noreferrer"
|
||||
target="_blank"
|
||||
>
|
||||
sending feedback
|
||||
</a>
|
||||
via the Request for Information has been extended to May 25, 2022.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</header>
|
||||
<main
|
||||
id="main-content"
|
||||
|
@ -391,14 +349,6 @@ exports[`rendering of the DatasetContainer checks if various text fields are vis
|
|||
About
|
||||
</h1>
|
||||
<div>
|
||||
<div>
|
||||
<span
|
||||
class="usa-tag"
|
||||
data-testid="tag"
|
||||
>
|
||||
UPDATED
|
||||
</span>
|
||||
</div>
|
||||
<a
|
||||
href="/en/public-engagement"
|
||||
>
|
||||
|
|
|
@ -247,12 +247,43 @@ exports[`rendering of the DatasetContainer checks if various text fields are vis
|
|||
<li
|
||||
class="usa-nav__primary-item"
|
||||
>
|
||||
<a
|
||||
data-cy="nav-link-methodology"
|
||||
href="/en/methodology"
|
||||
<button
|
||||
aria-controls="methMenu"
|
||||
aria-expanded="true"
|
||||
class="usa-accordion__button usa-nav__link"
|
||||
data-cy="nav-dropdown-methodology"
|
||||
data-testid="navDropDownButton"
|
||||
type="button"
|
||||
>
|
||||
Methodology & data
|
||||
</a>
|
||||
<span>
|
||||
Methodology & data
|
||||
</span>
|
||||
</button>
|
||||
<ul
|
||||
class="usa-nav__submenu"
|
||||
id="methMenu"
|
||||
>
|
||||
<li
|
||||
class="usa-nav__submenu-item"
|
||||
>
|
||||
<a
|
||||
data-cy="nav-link-methodology"
|
||||
href="/en/methodology"
|
||||
>
|
||||
Methodology & data
|
||||
</a>
|
||||
</li>
|
||||
<li
|
||||
class="usa-nav__submenu-item"
|
||||
>
|
||||
<a
|
||||
data-cy="nav-link-downloads"
|
||||
href="/en/downloads"
|
||||
>
|
||||
Downloads
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li
|
||||
class="usa-nav__primary-item"
|
||||
|
@ -301,79 +332,6 @@ exports[`rendering of the DatasetContainer checks if various text fields are vis
|
|||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div
|
||||
class="grid-container-desktop-lg"
|
||||
data-testid="gridContainer"
|
||||
>
|
||||
<div
|
||||
class="usa-alert usa-alert--info"
|
||||
data-testid="alert"
|
||||
>
|
||||
<div
|
||||
class="usa-alert__body"
|
||||
>
|
||||
<h4
|
||||
class="usa-alert__heading"
|
||||
>
|
||||
Additional documentation now available
|
||||
</h4>
|
||||
<p
|
||||
class="usa-alert__text"
|
||||
>
|
||||
Download new
|
||||
<a
|
||||
class="usa-link usa-link--external"
|
||||
data-cy=""
|
||||
href="https://static-data-screeningtool.geoplatform.gov/data-pipeline/data/score/downloadable/cejst_technical_support_document.pdf"
|
||||
rel="noreferrer"
|
||||
target="_blank"
|
||||
>
|
||||
technical support
|
||||
</a>
|
||||
and other documentation and
|
||||
<a
|
||||
class="usa-link usa-link--external"
|
||||
data-cy=""
|
||||
href="mailto:Screeningtool-Support@omb.eop.gov"
|
||||
rel="noreferrer"
|
||||
target="_blank"
|
||||
>
|
||||
send feedback
|
||||
</a>
|
||||
.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
<div
|
||||
class="usa-alert usa-alert--info"
|
||||
data-testid="alert"
|
||||
>
|
||||
<div
|
||||
class="usa-alert__body"
|
||||
>
|
||||
<h4
|
||||
class="usa-alert__heading"
|
||||
>
|
||||
Public comment period extended
|
||||
</h4>
|
||||
<p
|
||||
class="usa-alert__text"
|
||||
>
|
||||
The public comment period for
|
||||
<a
|
||||
class="usa-link usa-link--external"
|
||||
data-cy=""
|
||||
href="https://www.federalregister.gov/documents/2022/04/25/2022-08774/climate-and-economic-justice-screening-tool-beta-version"
|
||||
rel="noreferrer"
|
||||
target="_blank"
|
||||
>
|
||||
sending feedback
|
||||
</a>
|
||||
via the Request for Information has been extended to May 25, 2022.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</header>
|
||||
<main
|
||||
id="main-content"
|
||||
|
@ -389,14 +347,6 @@ exports[`rendering of the DatasetContainer checks if various text fields are vis
|
|||
Contact
|
||||
</h1>
|
||||
<div>
|
||||
<div>
|
||||
<span
|
||||
class="usa-tag"
|
||||
data-testid="tag"
|
||||
>
|
||||
UPDATED
|
||||
</span>
|
||||
</div>
|
||||
<a
|
||||
href="/en/public-engagement"
|
||||
>
|
||||
|
@ -499,30 +449,7 @@ exports[`rendering of the DatasetContainer checks if various text fields are vis
|
|||
class="usa-summary-box__text"
|
||||
>
|
||||
<p>
|
||||
During the beta period, comments may be submitted on the Climate and Economic Justice Screening Tool via CEQ’s Request for Information available on
|
||||
<a
|
||||
class="usa-link usa-link--external"
|
||||
data-cy=""
|
||||
href="https://www.federalregister.gov/d/2022-03920"
|
||||
rel="noreferrer"
|
||||
target="_blank"
|
||||
>
|
||||
federalregister.gov
|
||||
</a>
|
||||
.
|
||||
</p>
|
||||
<p>
|
||||
The public comment period for
|
||||
<a
|
||||
class="usa-link usa-link--external"
|
||||
data-cy=""
|
||||
href="https://www.federalregister.gov/documents/2022/04/25/2022-08774/climate-and-economic-justice-screening-tool-beta-version"
|
||||
rel="noreferrer"
|
||||
target="_blank"
|
||||
>
|
||||
sending feedback
|
||||
</a>
|
||||
via the Request for Information has been extended to May 25, 2022.
|
||||
The Request for Information on the Federal Register for the public beta period closed on May 25, 2022.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
@ -247,12 +247,43 @@ exports[`rendering of the DatasetContainer checks if various text fields are vis
|
|||
<li
|
||||
class="usa-nav__primary-item"
|
||||
>
|
||||
<a
|
||||
data-cy="nav-link-methodology"
|
||||
href="/en/methodology"
|
||||
<button
|
||||
aria-controls="methMenu"
|
||||
aria-expanded="true"
|
||||
class="usa-accordion__button usa-nav__link"
|
||||
data-cy="nav-dropdown-methodology"
|
||||
data-testid="navDropDownButton"
|
||||
type="button"
|
||||
>
|
||||
Methodology & data
|
||||
</a>
|
||||
<span>
|
||||
Methodology & data
|
||||
</span>
|
||||
</button>
|
||||
<ul
|
||||
class="usa-nav__submenu"
|
||||
id="methMenu"
|
||||
>
|
||||
<li
|
||||
class="usa-nav__submenu-item"
|
||||
>
|
||||
<a
|
||||
data-cy="nav-link-methodology"
|
||||
href="/en/methodology"
|
||||
>
|
||||
Methodology & data
|
||||
</a>
|
||||
</li>
|
||||
<li
|
||||
class="usa-nav__submenu-item"
|
||||
>
|
||||
<a
|
||||
data-cy="nav-link-downloads"
|
||||
href="/en/downloads"
|
||||
>
|
||||
Downloads
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li
|
||||
class="usa-nav__primary-item"
|
||||
|
@ -301,79 +332,6 @@ exports[`rendering of the DatasetContainer checks if various text fields are vis
|
|||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div
|
||||
class="grid-container-desktop-lg"
|
||||
data-testid="gridContainer"
|
||||
>
|
||||
<div
|
||||
class="usa-alert usa-alert--info"
|
||||
data-testid="alert"
|
||||
>
|
||||
<div
|
||||
class="usa-alert__body"
|
||||
>
|
||||
<h4
|
||||
class="usa-alert__heading"
|
||||
>
|
||||
Additional documentation now available
|
||||
</h4>
|
||||
<p
|
||||
class="usa-alert__text"
|
||||
>
|
||||
Download new
|
||||
<a
|
||||
class="usa-link usa-link--external"
|
||||
data-cy=""
|
||||
href="https://static-data-screeningtool.geoplatform.gov/data-pipeline/data/score/downloadable/cejst_technical_support_document.pdf"
|
||||
rel="noreferrer"
|
||||
target="_blank"
|
||||
>
|
||||
technical support
|
||||
</a>
|
||||
and other documentation and
|
||||
<a
|
||||
class="usa-link usa-link--external"
|
||||
data-cy=""
|
||||
href="mailto:Screeningtool-Support@omb.eop.gov"
|
||||
rel="noreferrer"
|
||||
target="_blank"
|
||||
>
|
||||
send feedback
|
||||
</a>
|
||||
.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
<div
|
||||
class="usa-alert usa-alert--info"
|
||||
data-testid="alert"
|
||||
>
|
||||
<div
|
||||
class="usa-alert__body"
|
||||
>
|
||||
<h4
|
||||
class="usa-alert__heading"
|
||||
>
|
||||
Public comment period extended
|
||||
</h4>
|
||||
<p
|
||||
class="usa-alert__text"
|
||||
>
|
||||
The public comment period for
|
||||
<a
|
||||
class="usa-link usa-link--external"
|
||||
data-cy=""
|
||||
href="https://www.federalregister.gov/documents/2022/04/25/2022-08774/climate-and-economic-justice-screening-tool-beta-version"
|
||||
rel="noreferrer"
|
||||
target="_blank"
|
||||
>
|
||||
sending feedback
|
||||
</a>
|
||||
via the Request for Information has been extended to May 25, 2022.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</header>
|
||||
<main
|
||||
id="main-content"
|
||||
|
@ -382,52 +340,119 @@ exports[`rendering of the DatasetContainer checks if various text fields are vis
|
|||
class="grid-container-desktop-lg"
|
||||
data-testid="gridContainer"
|
||||
>
|
||||
<h1>
|
||||
Downloads
|
||||
</h1>
|
||||
<section
|
||||
class="page-heading"
|
||||
>
|
||||
<h1>
|
||||
Downloads
|
||||
</h1>
|
||||
<div>
|
||||
<a
|
||||
href="/en/public-engagement"
|
||||
>
|
||||
<button
|
||||
class="usa-button"
|
||||
data-testid="button"
|
||||
type="button"
|
||||
>
|
||||
<div>
|
||||
<img
|
||||
alt="an icon that represents a calendar"
|
||||
src="test-file-stub"
|
||||
/>
|
||||
<div>
|
||||
Public engagement
|
||||
</div>
|
||||
</div>
|
||||
</button>
|
||||
</a>
|
||||
</div>
|
||||
</section>
|
||||
<div
|
||||
class="desktop:grid-col-8"
|
||||
class="grid-row grid-gap j40-mb5-mt3"
|
||||
data-testid="grid"
|
||||
>
|
||||
<h2>
|
||||
File formats
|
||||
</h2>
|
||||
<p>
|
||||
The dataset used in the tool, along with a data dictionary and information about how to use the list of communities (.pdf) are available in the following file formats:
|
||||
</p>
|
||||
<p>
|
||||
|
||||
|
||||
<a
|
||||
href="/about"
|
||||
>
|
||||
Excel file
|
||||
</a>
|
||||
(.xlxs 54MB unzipped)
|
||||
<div
|
||||
class="grid-col-12 tablet:grid-col-8"
|
||||
data-testid="grid"
|
||||
>
|
||||
<h2>
|
||||
File formats
|
||||
</h2>
|
||||
<p>
|
||||
The dataset used in the tool, along with a data dictionary and information about how to use the list of communities (.pdf) are available in the following file formats:
|
||||
</p>
|
||||
<p>
|
||||
|
||||
|
||||
</p>
|
||||
<p>
|
||||
|
||||
|
||||
<a
|
||||
href="/csv"
|
||||
>
|
||||
CSV file
|
||||
</a>
|
||||
(.csv 52MB unzipped)
|
||||
<a
|
||||
download=""
|
||||
href="//"
|
||||
>
|
||||
Communities list data
|
||||
</a>
|
||||
<img
|
||||
alt="The icon used to indicate that the file is downloadable"
|
||||
src="test-file-stub"
|
||||
/>
|
||||
(.xlsx 24.9MB)
|
||||
|
||||
</p>
|
||||
<p>
|
||||
|
||||
|
||||
<a
|
||||
href="/shape"
|
||||
>
|
||||
Shapefiles
|
||||
</a>
|
||||
(Codebook included with geojson 110MB unzipped)
|
||||
|
||||
</p>
|
||||
</p>
|
||||
<p>
|
||||
<a
|
||||
download=""
|
||||
href="//"
|
||||
>
|
||||
Communities list data
|
||||
</a>
|
||||
<img
|
||||
alt="The icon used to indicate that the file is downloadable"
|
||||
src="test-file-stub"
|
||||
/>
|
||||
(.csv 28.1MB)
|
||||
</p>
|
||||
<p>
|
||||
<a
|
||||
download=""
|
||||
href="//"
|
||||
>
|
||||
Shapefile
|
||||
</a>
|
||||
<img
|
||||
alt="The icon used to indicate that the file is downloadable"
|
||||
src="test-file-stub"
|
||||
/>
|
||||
(Codebook included with geojson 741MB unzipped)
|
||||
</p>
|
||||
<p>
|
||||
<a
|
||||
class="usa-link usa-link--external"
|
||||
data-cy=""
|
||||
href="//"
|
||||
rel="noreferrer"
|
||||
target="_blank"
|
||||
>
|
||||
Technical support document
|
||||
</a>
|
||||
(.pdf 2.5MB)
|
||||
</p>
|
||||
<p>
|
||||
<a
|
||||
class="usa-link usa-link--external"
|
||||
data-cy=""
|
||||
href="//"
|
||||
rel="noreferrer"
|
||||
target="_blank"
|
||||
>
|
||||
How to use the list of communities
|
||||
</a>
|
||||
(.pdf 674kB)
|
||||
</p>
|
||||
</div>
|
||||
<div
|
||||
class="grid-col-12 tablet:grid-col-1"
|
||||
data-testid="grid"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
</main>
|
||||
|
|
|
@ -247,12 +247,43 @@ exports[`rendering of the DatasetContainer checks if various text fields are vis
|
|||
<li
|
||||
class="usa-nav__primary-item"
|
||||
>
|
||||
<a
|
||||
data-cy="nav-link-methodology"
|
||||
href="/en/methodology"
|
||||
<button
|
||||
aria-controls="methMenu"
|
||||
aria-expanded="true"
|
||||
class="usa-accordion__button usa-nav__link"
|
||||
data-cy="nav-dropdown-methodology"
|
||||
data-testid="navDropDownButton"
|
||||
type="button"
|
||||
>
|
||||
Methodology & data
|
||||
</a>
|
||||
<span>
|
||||
Methodology & data
|
||||
</span>
|
||||
</button>
|
||||
<ul
|
||||
class="usa-nav__submenu"
|
||||
id="methMenu"
|
||||
>
|
||||
<li
|
||||
class="usa-nav__submenu-item"
|
||||
>
|
||||
<a
|
||||
data-cy="nav-link-methodology"
|
||||
href="/en/methodology"
|
||||
>
|
||||
Methodology & data
|
||||
</a>
|
||||
</li>
|
||||
<li
|
||||
class="usa-nav__submenu-item"
|
||||
>
|
||||
<a
|
||||
data-cy="nav-link-downloads"
|
||||
href="/en/downloads"
|
||||
>
|
||||
Downloads
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li
|
||||
class="usa-nav__primary-item"
|
||||
|
@ -301,79 +332,6 @@ exports[`rendering of the DatasetContainer checks if various text fields are vis
|
|||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div
|
||||
class="grid-container-desktop-lg"
|
||||
data-testid="gridContainer"
|
||||
>
|
||||
<div
|
||||
class="usa-alert usa-alert--info"
|
||||
data-testid="alert"
|
||||
>
|
||||
<div
|
||||
class="usa-alert__body"
|
||||
>
|
||||
<h4
|
||||
class="usa-alert__heading"
|
||||
>
|
||||
Additional documentation now available
|
||||
</h4>
|
||||
<p
|
||||
class="usa-alert__text"
|
||||
>
|
||||
Download new
|
||||
<a
|
||||
class="usa-link usa-link--external"
|
||||
data-cy=""
|
||||
href="https://static-data-screeningtool.geoplatform.gov/data-pipeline/data/score/downloadable/cejst_technical_support_document.pdf"
|
||||
rel="noreferrer"
|
||||
target="_blank"
|
||||
>
|
||||
technical support
|
||||
</a>
|
||||
and other documentation and
|
||||
<a
|
||||
class="usa-link usa-link--external"
|
||||
data-cy=""
|
||||
href="mailto:Screeningtool-Support@omb.eop.gov"
|
||||
rel="noreferrer"
|
||||
target="_blank"
|
||||
>
|
||||
send feedback
|
||||
</a>
|
||||
.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
<div
|
||||
class="usa-alert usa-alert--info"
|
||||
data-testid="alert"
|
||||
>
|
||||
<div
|
||||
class="usa-alert__body"
|
||||
>
|
||||
<h4
|
||||
class="usa-alert__heading"
|
||||
>
|
||||
Public comment period extended
|
||||
</h4>
|
||||
<p
|
||||
class="usa-alert__text"
|
||||
>
|
||||
The public comment period for
|
||||
<a
|
||||
class="usa-link usa-link--external"
|
||||
data-cy=""
|
||||
href="https://www.federalregister.gov/documents/2022/04/25/2022-08774/climate-and-economic-justice-screening-tool-beta-version"
|
||||
rel="noreferrer"
|
||||
target="_blank"
|
||||
>
|
||||
sending feedback
|
||||
</a>
|
||||
via the Request for Information has been extended to May 25, 2022.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</header>
|
||||
<main
|
||||
id="main-content"
|
||||
|
|
|
@ -247,12 +247,43 @@ exports[`rendering of the DatasetContainer checks if various text fields are vis
|
|||
<li
|
||||
class="usa-nav__primary-item"
|
||||
>
|
||||
<a
|
||||
data-cy="nav-link-methodology"
|
||||
href="/en/methodology"
|
||||
<button
|
||||
aria-controls="methMenu"
|
||||
aria-expanded="true"
|
||||
class="usa-accordion__button usa-nav__link"
|
||||
data-cy="nav-dropdown-methodology"
|
||||
data-testid="navDropDownButton"
|
||||
type="button"
|
||||
>
|
||||
Methodology & data
|
||||
</a>
|
||||
<span>
|
||||
Methodology & data
|
||||
</span>
|
||||
</button>
|
||||
<ul
|
||||
class="usa-nav__submenu"
|
||||
id="methMenu"
|
||||
>
|
||||
<li
|
||||
class="usa-nav__submenu-item"
|
||||
>
|
||||
<a
|
||||
data-cy="nav-link-methodology"
|
||||
href="/en/methodology"
|
||||
>
|
||||
Methodology & data
|
||||
</a>
|
||||
</li>
|
||||
<li
|
||||
class="usa-nav__submenu-item"
|
||||
>
|
||||
<a
|
||||
data-cy="nav-link-downloads"
|
||||
href="/en/downloads"
|
||||
>
|
||||
Downloads
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li
|
||||
class="usa-nav__primary-item"
|
||||
|
@ -301,79 +332,6 @@ exports[`rendering of the DatasetContainer checks if various text fields are vis
|
|||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div
|
||||
class="grid-container-desktop-lg"
|
||||
data-testid="gridContainer"
|
||||
>
|
||||
<div
|
||||
class="usa-alert usa-alert--info"
|
||||
data-testid="alert"
|
||||
>
|
||||
<div
|
||||
class="usa-alert__body"
|
||||
>
|
||||
<h4
|
||||
class="usa-alert__heading"
|
||||
>
|
||||
Additional documentation now available
|
||||
</h4>
|
||||
<p
|
||||
class="usa-alert__text"
|
||||
>
|
||||
Download new
|
||||
<a
|
||||
class="usa-link usa-link--external"
|
||||
data-cy=""
|
||||
href="https://static-data-screeningtool.geoplatform.gov/data-pipeline/data/score/downloadable/cejst_technical_support_document.pdf"
|
||||
rel="noreferrer"
|
||||
target="_blank"
|
||||
>
|
||||
technical support
|
||||
</a>
|
||||
and other documentation and
|
||||
<a
|
||||
class="usa-link usa-link--external"
|
||||
data-cy=""
|
||||
href="mailto:Screeningtool-Support@omb.eop.gov"
|
||||
rel="noreferrer"
|
||||
target="_blank"
|
||||
>
|
||||
send feedback
|
||||
</a>
|
||||
.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
<div
|
||||
class="usa-alert usa-alert--info"
|
||||
data-testid="alert"
|
||||
>
|
||||
<div
|
||||
class="usa-alert__body"
|
||||
>
|
||||
<h4
|
||||
class="usa-alert__heading"
|
||||
>
|
||||
Public comment period extended
|
||||
</h4>
|
||||
<p
|
||||
class="usa-alert__text"
|
||||
>
|
||||
The public comment period for
|
||||
<a
|
||||
class="usa-link usa-link--external"
|
||||
data-cy=""
|
||||
href="https://www.federalregister.gov/documents/2022/04/25/2022-08774/climate-and-economic-justice-screening-tool-beta-version"
|
||||
rel="noreferrer"
|
||||
target="_blank"
|
||||
>
|
||||
sending feedback
|
||||
</a>
|
||||
via the Request for Information has been extended to May 25, 2022.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</header>
|
||||
<main
|
||||
id="main-content"
|
||||
|
@ -389,14 +347,6 @@ exports[`rendering of the DatasetContainer checks if various text fields are vis
|
|||
Methodology
|
||||
</h1>
|
||||
<div>
|
||||
<div>
|
||||
<span
|
||||
class="usa-tag"
|
||||
data-testid="tag"
|
||||
>
|
||||
UPDATED
|
||||
</span>
|
||||
</div>
|
||||
<a
|
||||
href="/en/public-engagement"
|
||||
>
|
||||
|
@ -434,7 +384,7 @@ exports[`rendering of the DatasetContainer checks if various text fields are vis
|
|||
which publicly-available and nationally-consistent datasets can be consistently displayed on the
|
||||
tool. Census tract geographical boundaries are determined by the U.S. Census Bureau once every ten
|
||||
years. This tool utilizes the census tract boundaries from 2010 because they match the datasets used
|
||||
in the tool. The U.S. Census Bureau will update these census tract boundaries in 2020.
|
||||
in the tool.
|
||||
|
||||
</p>
|
||||
</section>
|
||||
|
@ -475,152 +425,9 @@ exports[`rendering of the DatasetContainer checks if various text fields are vis
|
|||
</section>
|
||||
</div>
|
||||
<div
|
||||
class="grid-col-12 tablet:grid-col-4"
|
||||
class="grid-col-12 tablet:grid-col-1"
|
||||
data-testid="grid"
|
||||
>
|
||||
<div
|
||||
class=""
|
||||
data-testid="grid"
|
||||
>
|
||||
<div>
|
||||
<div>
|
||||
<div>
|
||||
<div>
|
||||
<span>
|
||||
NEW
|
||||
</span>
|
||||
files available for download
|
||||
</div>
|
||||
<div>
|
||||
Download the data sources used in the CEJST (.csv, .xlxs,
|
||||
<span>
|
||||
.pdf
|
||||
</span>
|
||||
that describes how to use the list, and a
|
||||
<span>
|
||||
codebook
|
||||
</span>
|
||||
, 53MB unzipped), the shapefile, along with a
|
||||
<span>
|
||||
codebook
|
||||
</span>
|
||||
(.zip, 742MB unzipped) or the technical support document (.pdf, 2.5MB unzipped).
|
||||
</div>
|
||||
<div>
|
||||
<div>
|
||||
<span
|
||||
class="usa-tag"
|
||||
data-testid="tag"
|
||||
>
|
||||
<strong>
|
||||
Updated
|
||||
</strong>
|
||||
</span>
|
||||
</div>
|
||||
<a
|
||||
data-cy="download-link"
|
||||
download=""
|
||||
href="//"
|
||||
>
|
||||
<button
|
||||
class="usa-button"
|
||||
data-testid="button"
|
||||
type="button"
|
||||
>
|
||||
<span>
|
||||
<img
|
||||
alt="download icon for download package"
|
||||
src="test-file-stub"
|
||||
/>
|
||||
</span>
|
||||
<span>
|
||||
Download data sources
|
||||
</span>
|
||||
</button>
|
||||
</a>
|
||||
</div>
|
||||
<div>
|
||||
Last updated: 05/04/22
|
||||
</div>
|
||||
<div>
|
||||
<div>
|
||||
<span
|
||||
class="usa-tag"
|
||||
data-testid="tag"
|
||||
>
|
||||
<strong>
|
||||
Updated
|
||||
</strong>
|
||||
</span>
|
||||
</div>
|
||||
<a
|
||||
data-cy="shapefile-link"
|
||||
download=""
|
||||
href="//"
|
||||
>
|
||||
<button
|
||||
class="usa-button"
|
||||
data-testid="button"
|
||||
type="button"
|
||||
>
|
||||
<span>
|
||||
<img
|
||||
alt="download icon for download package"
|
||||
src="test-file-stub"
|
||||
/>
|
||||
</span>
|
||||
<span>
|
||||
Download shapefile
|
||||
</span>
|
||||
</button>
|
||||
</a>
|
||||
</div>
|
||||
<div>
|
||||
Last updated: 04/26/22
|
||||
</div>
|
||||
<div>
|
||||
<div>
|
||||
<span
|
||||
class="usa-tag"
|
||||
data-testid="tag"
|
||||
>
|
||||
<strong>
|
||||
NEW
|
||||
</strong>
|
||||
</span>
|
||||
</div>
|
||||
<a
|
||||
data-cy="tsd-link"
|
||||
download=""
|
||||
href="//"
|
||||
rel="noreferrer"
|
||||
target="_blank"
|
||||
>
|
||||
<button
|
||||
class="usa-button"
|
||||
data-testid="button"
|
||||
type="button"
|
||||
>
|
||||
<span>
|
||||
<img
|
||||
alt="download icon for download package"
|
||||
src="test-file-stub"
|
||||
/>
|
||||
</span>
|
||||
<span>
|
||||
Download technical support document
|
||||
</span>
|
||||
</button>
|
||||
</a>
|
||||
</div>
|
||||
<div>
|
||||
Last updated: 04/19/22
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
<div
|
||||
|
|
|
@ -247,12 +247,43 @@ exports[`rendering of the DatasetContainer checks if various text fields are vis
|
|||
<li
|
||||
class="usa-nav__primary-item"
|
||||
>
|
||||
<a
|
||||
data-cy="nav-link-methodology"
|
||||
href="/en/methodology"
|
||||
<button
|
||||
aria-controls="methMenu"
|
||||
aria-expanded="true"
|
||||
class="usa-accordion__button usa-nav__link"
|
||||
data-cy="nav-dropdown-methodology"
|
||||
data-testid="navDropDownButton"
|
||||
type="button"
|
||||
>
|
||||
Methodology & data
|
||||
</a>
|
||||
<span>
|
||||
Methodology & data
|
||||
</span>
|
||||
</button>
|
||||
<ul
|
||||
class="usa-nav__submenu"
|
||||
id="methMenu"
|
||||
>
|
||||
<li
|
||||
class="usa-nav__submenu-item"
|
||||
>
|
||||
<a
|
||||
data-cy="nav-link-methodology"
|
||||
href="/en/methodology"
|
||||
>
|
||||
Methodology & data
|
||||
</a>
|
||||
</li>
|
||||
<li
|
||||
class="usa-nav__submenu-item"
|
||||
>
|
||||
<a
|
||||
data-cy="nav-link-downloads"
|
||||
href="/en/downloads"
|
||||
>
|
||||
Downloads
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li
|
||||
class="usa-nav__primary-item"
|
||||
|
@ -301,79 +332,6 @@ exports[`rendering of the DatasetContainer checks if various text fields are vis
|
|||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div
|
||||
class="grid-container-desktop-lg"
|
||||
data-testid="gridContainer"
|
||||
>
|
||||
<div
|
||||
class="usa-alert usa-alert--info"
|
||||
data-testid="alert"
|
||||
>
|
||||
<div
|
||||
class="usa-alert__body"
|
||||
>
|
||||
<h4
|
||||
class="usa-alert__heading"
|
||||
>
|
||||
Additional documentation now available
|
||||
</h4>
|
||||
<p
|
||||
class="usa-alert__text"
|
||||
>
|
||||
Download new
|
||||
<a
|
||||
class="usa-link usa-link--external"
|
||||
data-cy=""
|
||||
href="https://static-data-screeningtool.geoplatform.gov/data-pipeline/data/score/downloadable/cejst_technical_support_document.pdf"
|
||||
rel="noreferrer"
|
||||
target="_blank"
|
||||
>
|
||||
technical support
|
||||
</a>
|
||||
and other documentation and
|
||||
<a
|
||||
class="usa-link usa-link--external"
|
||||
data-cy=""
|
||||
href="mailto:Screeningtool-Support@omb.eop.gov"
|
||||
rel="noreferrer"
|
||||
target="_blank"
|
||||
>
|
||||
send feedback
|
||||
</a>
|
||||
.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
<div
|
||||
class="usa-alert usa-alert--info"
|
||||
data-testid="alert"
|
||||
>
|
||||
<div
|
||||
class="usa-alert__body"
|
||||
>
|
||||
<h4
|
||||
class="usa-alert__heading"
|
||||
>
|
||||
Public comment period extended
|
||||
</h4>
|
||||
<p
|
||||
class="usa-alert__text"
|
||||
>
|
||||
The public comment period for
|
||||
<a
|
||||
class="usa-link usa-link--external"
|
||||
data-cy=""
|
||||
href="https://www.federalregister.gov/documents/2022/04/25/2022-08774/climate-and-economic-justice-screening-tool-beta-version"
|
||||
rel="noreferrer"
|
||||
target="_blank"
|
||||
>
|
||||
sending feedback
|
||||
</a>
|
||||
via the Request for Information has been extended to May 25, 2022.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</header>
|
||||
<main
|
||||
id="main-content"
|
||||
|
@ -448,15 +406,7 @@ exports[`rendering of the DatasetContainer checks if various text fields are vis
|
|||
<h3
|
||||
class="usa-collection__heading"
|
||||
>
|
||||
<a
|
||||
class="usa-link usa-link--external"
|
||||
data-cy="may-19-reg-link-block"
|
||||
href="https://pitc.zoomgov.com/webinar/register/WN_1PR73vLDQpq1zoAWkhKB5g"
|
||||
rel="noreferrer"
|
||||
target="_blank"
|
||||
>
|
||||
CEJST listening session #4
|
||||
</a>
|
||||
CEJST listening session #4
|
||||
</h3>
|
||||
<p
|
||||
class="usa-collection__description"
|
||||
|
@ -488,6 +438,7 @@ exports[`rendering of the DatasetContainer checks if various text fields are vis
|
|||
<button
|
||||
class="usa-button"
|
||||
data-testid="button"
|
||||
disabled=""
|
||||
type="button"
|
||||
>
|
||||
Registration link
|
||||
|
|
|
@ -247,12 +247,43 @@ exports[`rendering of the DatasetContainer checks if various text fields are vis
|
|||
<li
|
||||
class="usa-nav__primary-item"
|
||||
>
|
||||
<a
|
||||
data-cy="nav-link-methodology"
|
||||
href="/en/methodology"
|
||||
<button
|
||||
aria-controls="methMenu"
|
||||
aria-expanded="true"
|
||||
class="usa-accordion__button usa-nav__link"
|
||||
data-cy="nav-dropdown-methodology"
|
||||
data-testid="navDropDownButton"
|
||||
type="button"
|
||||
>
|
||||
Methodology & data
|
||||
</a>
|
||||
<span>
|
||||
Methodology & data
|
||||
</span>
|
||||
</button>
|
||||
<ul
|
||||
class="usa-nav__submenu"
|
||||
id="methMenu"
|
||||
>
|
||||
<li
|
||||
class="usa-nav__submenu-item"
|
||||
>
|
||||
<a
|
||||
data-cy="nav-link-methodology"
|
||||
href="/en/methodology"
|
||||
>
|
||||
Methodology & data
|
||||
</a>
|
||||
</li>
|
||||
<li
|
||||
class="usa-nav__submenu-item"
|
||||
>
|
||||
<a
|
||||
data-cy="nav-link-downloads"
|
||||
href="/en/downloads"
|
||||
>
|
||||
Downloads
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li
|
||||
class="usa-nav__primary-item"
|
||||
|
@ -301,79 +332,6 @@ exports[`rendering of the DatasetContainer checks if various text fields are vis
|
|||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div
|
||||
class="grid-container-desktop-lg"
|
||||
data-testid="gridContainer"
|
||||
>
|
||||
<div
|
||||
class="usa-alert usa-alert--info"
|
||||
data-testid="alert"
|
||||
>
|
||||
<div
|
||||
class="usa-alert__body"
|
||||
>
|
||||
<h4
|
||||
class="usa-alert__heading"
|
||||
>
|
||||
Additional documentation now available
|
||||
</h4>
|
||||
<p
|
||||
class="usa-alert__text"
|
||||
>
|
||||
Download new
|
||||
<a
|
||||
class="usa-link usa-link--external"
|
||||
data-cy=""
|
||||
href="https://static-data-screeningtool.geoplatform.gov/data-pipeline/data/score/downloadable/cejst_technical_support_document.pdf"
|
||||
rel="noreferrer"
|
||||
target="_blank"
|
||||
>
|
||||
technical support
|
||||
</a>
|
||||
and other documentation and
|
||||
<a
|
||||
class="usa-link usa-link--external"
|
||||
data-cy=""
|
||||
href="mailto:Screeningtool-Support@omb.eop.gov"
|
||||
rel="noreferrer"
|
||||
target="_blank"
|
||||
>
|
||||
send feedback
|
||||
</a>
|
||||
.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
<div
|
||||
class="usa-alert usa-alert--info"
|
||||
data-testid="alert"
|
||||
>
|
||||
<div
|
||||
class="usa-alert__body"
|
||||
>
|
||||
<h4
|
||||
class="usa-alert__heading"
|
||||
>
|
||||
Public comment period extended
|
||||
</h4>
|
||||
<p
|
||||
class="usa-alert__text"
|
||||
>
|
||||
The public comment period for
|
||||
<a
|
||||
class="usa-link usa-link--external"
|
||||
data-cy=""
|
||||
href="https://www.federalregister.gov/documents/2022/04/25/2022-08774/climate-and-economic-justice-screening-tool-beta-version"
|
||||
rel="noreferrer"
|
||||
target="_blank"
|
||||
>
|
||||
sending feedback
|
||||
</a>
|
||||
via the Request for Information has been extended to May 25, 2022.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</header>
|
||||
<main
|
||||
id="main-content"
|
||||
|
|
|
@ -139,7 +139,6 @@ components include:
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
******************************
|
||||
* FOOTER STYLES
|
||||
|
|
Binary file not shown.
Binary file not shown.
|
@ -42,11 +42,11 @@ We provide more detail on these factors below.
|
|||
5. [ArcGIS API for Javascript](https://developers.arcgis.com/javascript/latest/) - v4.18 (12/2020)
|
||||
|
||||
## Not Considered Options
|
||||
|
||||
<!-- markdown-link-check-disable -->
|
||||
- Non-ArcGIS-JS-API Esri [products](https://www.esri.com/en-us/arcgis/products/index) - The focus of this investigation is web APIs that can be incorporated into a website and rendered as part of a cloud-based, modular web-development flow. Additionally, these are not open source.
|
||||
- [Google Maps Platform](https://developers.google.com/maps)/[Bing Maps APIs](https://www.microsoft.com/en-us/maps/choose-your-bing-maps-api) - These mapping are also closed source and proprietary, and do not allow for significant customization or visualization of the sort we would need for this product
|
||||
- [d3.js](https://d3js.org/) - though impressive in its offerings and performance, d3 appears more oriented to more general-purpose infographic use than a mapping-specific product requiring significant GIS-adjacent features. We may consider aspects of D3 for particular chart renderings.
|
||||
|
||||
<!-- markdown-link-check-enable -->
|
||||
## Decision Outcome
|
||||
|
||||
**OpenLayers** ([Source](https://github.com/openlayers/openlayers) - v6.5.0 (12/27/20)). This library is completely free and open-source, modular, and modern. As a modern, well-typed and well-documented javascript library, it is approachable, yet offers a full-featured and familiar interface as well for those with a background in GIS systems. As it is free to use, anyone could clone our source and run our project locally without payment or registration. Additionally, it has relatively good performance for large feature sets, despite not using WebGL for rendering.
|
||||
|
|
|
@ -100,7 +100,7 @@ Others providers:
|
|||
- Many are not open source
|
||||
|
||||
### Data Science Toolkit
|
||||
|
||||
<!-- markdown-link-check-disable -->
|
||||
Data-science-oriented search framework that combines osm with geoip data.
|
||||
|
||||
An overall good option, but if we went down this path we would want to host ourselves -- it is notable that it does give this option.
|
||||
|
@ -120,7 +120,7 @@ An overall good option, but if we went down this path we would want to host ours
|
|||
- Cons:
|
||||
- Recommended that you host your own given these limitations
|
||||
- Not recommended for production use
|
||||
|
||||
<!-- markdown-link-check-enable -->
|
||||
### Census Geocoding Services
|
||||
|
||||
Geocoding service provided directly by the census. More info [here](https://www.census.gov/programs-surveys/geography/technical-documentation/complete-technical-documentation/census-geocoder.html).
|
||||
|
|
Loading…
Add table
Reference in a new issue