diff --git a/.circleci/config.yml b/.circleci/config.yml
index 3fe45e002..4dd8ca76b 100644
--- a/.circleci/config.yml
+++ b/.circleci/config.yml
@@ -16,7 +16,7 @@ executors:
working_directory: *workspace_root
jobs:
- api:
+ setup:
executor: main-executor
steps:
- checkout
@@ -34,36 +34,6 @@ jobs:
paths:
- _api
- _data
- gatsby-build:
- executor: main-executor
- steps:
- - checkout
- - attach_workspace:
- at: *workspace_root
- - run:
- name: apt-update
- command: 'sudo apt-get update'
- - run:
- name: install-dependencies
- command: 'sudo apt-get install gconf-service libasound2 libatk1.0-0 libc6 libcairo2 libcups2 libdbus-1-3 libexpat1 libfontconfig1 libgcc1 libgconf-2-4 libgdk-pixbuf2.0-0 libglib2.0-0 libgtk-3-0 libnspr4 libpango-1.0-0 libpangocairo-1.0-0 libstdc++6 libx11-6 libx11-xcb1 libxcb1 libxcomposite1 libxcursor1 libxdamage1 libxext6 libxfixes3 libxi6 libxrandr2 libxrender1 libxss1 libxtst6 ca-certificates fonts-liberation libappindicator1 libnss3 lsb-release xdg-utils wget'
- - run:
- name: install
- command: 'yarn install'
- - run:
- name: setup
- command: 'yarn run setup:env-vars'
- - run:
- name: build
- command: 'yarn run build:gatsby'
- - run:
- name: test
- command: 'yarn run build:test'
- - persist_to_workspace:
- root: *workspace_root
- paths:
- - _api
- - _data
- - public
gatsby-test:
executor: main-executor
steps:
@@ -90,32 +60,14 @@ jobs:
- run:
name: lint
command: 'yarn run test:lint'
- storybook:
- executor: main-executor
- steps:
- - checkout
- - attach_workspace:
- at: *workspace_root
- - run:
- name: install
- command: 'yarn install'
- - run:
- name: storybook
- command: 'yarn run storybook:build'
workflows:
version: 2
build_and_test:
jobs:
- - api
- - gatsby-build:
- requires:
- - api
+ - setup
- gatsby-lint:
requires:
- - api
+ - setup
- gatsby-test:
requires:
- - api
- - storybook:
- requires:
- - api
+ - setup
diff --git a/gatsby-config.js b/gatsby-config.js
index 31e92d2ba..044c900f7 100644
--- a/gatsby-config.js
+++ b/gatsby-config.js
@@ -242,6 +242,13 @@ const gatsbyConfig = {
type: 'covidAnnotation',
},
},
+ {
+ resolve: 'gatsby-source-covid-tracking-api',
+ options: {
+ file: './_data/ltc_fed_vaccinations.json',
+ type: 'ltcFedVaccinations',
+ },
+ },
{
resolve: 'gatsby-source-covid-tracking-api',
options: {
@@ -303,6 +310,14 @@ const gatsbyConfig = {
},
},
},
+ {
+ resolve: 'gatsby-source-covid-tracking-counties',
+ options: {
+ type: 'Counties',
+ counties: `${__dirname}/_data/nyt_counties.json`,
+ demographics: `${__dirname}/_data/census_demographics_counties.json`,
+ },
+ },
{
resolve: 'gatsby-render-components',
options: {
diff --git a/src/components/pages/data/cards/long-term-care-vaccinations.js b/src/components/pages/data/cards/long-term-care-vaccinations.js
new file mode 100644
index 000000000..6afc0029a
--- /dev/null
+++ b/src/components/pages/data/cards/long-term-care-vaccinations.js
@@ -0,0 +1,34 @@
+import React from 'react'
+import { Link } from 'gatsby'
+import { Card, CardBody, CardNote } from '~components/common/card'
+import { Statistic } from '~components/common/statistic'
+import LastUpdatedLabel from './last-updated-label'
+
+const LongTermCareVaccinations = ({ ltcFedVaccinations }) => (
+
+
+
+
+
+
+
+ Vaccinations administered through the{' '}
+
+ Pharmacy Partnership for Long-Term Care Program
+
+
+
+
+
+)
+
+export default LongTermCareVaccinations
diff --git a/src/components/pages/data/state-data.js b/src/components/pages/data/state-data.js
index 1bf7fe0ee..9f3fb4d98 100644
--- a/src/components/pages/data/state-data.js
+++ b/src/components/pages/data/state-data.js
@@ -33,6 +33,7 @@ const State = ({ state, metadata }) => {
longTermCare={state.childLtc}
annotations={state.annotations}
hhsHospitalization={state.hhsHospitalization}
+ ltcFedVaccinations={state.ltcFedVaccinations}
/>
{
const stateList = []
@@ -58,6 +59,10 @@ const States = ({
? hhsHospitalization.find(record => record.state === state.state)
: false
+ state.ltcFedVaccinations = ltcFedVaccinations
+ ? ltcFedVaccinations.find(record => record.Location === state.state)
+ : false
+
stateList.push(state)
})
diff --git a/src/components/pages/data/summary.js b/src/components/pages/data/summary.js
index 3d84441ae..bcb79502b 100644
--- a/src/components/pages/data/summary.js
+++ b/src/components/pages/data/summary.js
@@ -18,7 +18,7 @@ import TestsViralCard from './cards/tests-viral'
import NationalTestsCard from './cards/tests-national'
import LongTermCareCard from './cards/long-term-care'
import HospitalizationHhsCard from './cards/hospitalization-hhs-card'
-
+import LongTermCareVaccinationsCard from './cards/long-term-care-vaccinations'
import createRaceValues from './cards/crdt/create-race-data'
import CrdtCasesCard from './cards/crdt/cases-card'
import CrdtDeathsCard from './cards/crdt/deaths-card'
@@ -54,6 +54,7 @@ const StateSummary = ({
longTermCare,
raceData,
hhsHospitalization,
+ ltcFedVaccinations,
annotations = false,
national = false,
}) => {
@@ -364,17 +365,27 @@ const StateSummary = ({
recoveredMetricName={getMetricTitle('Recovered', annotations)}
national={national}
/>
- {!national && (
+
+ {national && }
+
+ {!national && (
+ <>
+ Long-term-care facilities
+
- )}
-
- {national && }
-
+ {ltcFedVaccinations && (
+
+ )}
+
+ >
+ )}
{!national && (
<>
Race & ethnicity data
diff --git a/src/pages/data/index.js b/src/pages/data/index.js
index caa9d3ba6..bb92409bd 100644
--- a/src/pages/data/index.js
+++ b/src/pages/data/index.js
@@ -54,6 +54,7 @@ const DataPage = ({ data }) => {
raceDataCombined={data.allCovidRaceDataCombined.nodes}
raceDataSeparate={data.allCovidRaceDataSeparate.nodes}
hhsHospitalization={data.allHhsHospitals.nodes}
+ ltcFedVaccinations={data.allLtcFedVaccinations.nodes}
/>
)
@@ -294,5 +295,14 @@ export const query = graphql`
total_pediatric_patients_hospitalized_confirmed_covid
}
}
+ allLtcFedVaccinations {
+ nodes {
+ Administered_Fed_LTC
+ Administered_Fed_LTC_Dose1
+ Administered_Fed_LTC_Dose2
+ Date
+ Location
+ }
+ }
}
`
diff --git a/src/templates/state/index.js b/src/templates/state/index.js
index c5ff53107..60c79948c 100644
--- a/src/templates/state/index.js
+++ b/src/templates/state/index.js
@@ -31,6 +31,7 @@ const StateTemplate = ({ pageContext, data, path }) => {
allTweets,
allCovidAnnotation,
hhsHospitals,
+ ltcFedVaccinations,
} = data
return (
{
raceData={getRaceData(data)}
longTermCare={data.covidStateInfo.childLtc}
hhsHospitalization={hhsHospitals}
+ ltcFedVaccinations={ltcFedVaccinations}
/>