├── .dockerignore ├── .env.template ├── .eslintrc.json ├── .gitignore ├── .npmrc ├── .readthedocs.yml ├── .yarnrc ├── .yo-rc.json ├── Dockerfile ├── LICENSE ├── Procfile ├── README.md ├── app.json ├── bin ├── dev.js ├── docker └── harvester ├── docs ├── collaboration.md ├── configuration_resource.md ├── css │ ├── ap-footer.css │ └── tables.css ├── development.md ├── dockerhub_readme.md ├── entry.md ├── first_project.md ├── google_credentials.md ├── images │ ├── googe_credentials_project_credentials.png │ ├── google_credentials_api_search.png │ ├── google_credentials_create_oauth.png │ ├── google_credentials_create_service_account.png │ ├── google_credentials_oauth_consent_type.png │ ├── google_credentials_oauth_scopes.png │ ├── google_credentials_people_api.png │ ├── google_credentials_project_dashboard.png │ ├── google_credentials_select_a_project.png │ ├── google_credentials_select_project_dialog.png │ └── google_credentials_service_account_create_key.png ├── index.md ├── schema.md └── setup.md ├── docs_theme └── footer.html ├── mkdocs.yml ├── package.json ├── server ├── __tests__ │ └── logger.tests.js ├── auth │ ├── __tests__ │ │ ├── index.tests.js │ │ └── oauth-google.tests.js │ ├── index.js │ └── oauth-google.js ├── config.js ├── index.js ├── logger.js ├── render.js ├── router.js ├── stores │ ├── __tests__ │ │ ├── current.tests.js │ │ ├── index.tests.js │ │ └── schema.tests.js │ ├── current.js │ ├── google-sheets │ │ ├── __tests__ │ │ │ ├── google.tests.js │ │ │ └── index.tests.js │ │ ├── google.js │ │ └── index.js │ ├── index.js │ └── schema.js └── views │ ├── error.ejs │ ├── formId.ejs │ ├── landing.ejs │ └── signIn.ejs ├── src ├── images │ ├── ap_logo.png │ ├── clear.svg │ ├── collapse.svg │ ├── delete_forever.svg │ ├── expand.svg │ └── trash.svg ├── js │ ├── components │ │ ├── app │ │ │ ├── App.js │ │ │ └── index.js │ │ ├── controls │ │ │ ├── Controls.js │ │ │ ├── index.js │ │ │ └── styles.js │ │ ├── date_time_input │ │ │ ├── DateTimeInput.js │ │ │ ├── cal.svg │ │ │ ├── clock.svg │ │ │ ├── index.js │ │ │ └── styles.js │ │ ├── error_boundary │ │ │ ├── ErrorBoundary.js │ │ │ └── index.js │ │ ├── error_page │ │ │ ├── ErrorPage.js │ │ │ ├── index.js │ │ │ └── styles.js │ │ ├── field │ │ │ ├── Field.js │ │ │ ├── index.js │ │ │ └── styles.js │ │ ├── field_errors │ │ │ ├── FieldErrors.js │ │ │ ├── index.js │ │ │ └── styles.js │ │ ├── field_help │ │ │ ├── FieldHelp.js │ │ │ ├── index.js │ │ │ └── styles.js │ │ ├── finished │ │ │ ├── Finished.js │ │ │ ├── index.js │ │ │ └── styles.js │ │ ├── footer │ │ │ ├── Footer.js │ │ │ ├── index.js │ │ │ └── styles.js │ │ ├── form │ │ │ ├── Form.js │ │ │ └── index.js │ │ ├── has_many_input │ │ │ ├── HasManyInput.js │ │ │ ├── Relative.js │ │ │ ├── UndoDelete.js │ │ │ ├── index.js │ │ │ └── styles.js │ │ ├── header │ │ │ ├── Header.js │ │ │ ├── index.js │ │ │ └── styles.js │ │ ├── index.js │ │ ├── landing_page │ │ │ ├── LandingPage.js │ │ │ ├── index.js │ │ │ └── styles.js │ │ ├── layout │ │ │ ├── Layout.js │ │ │ ├── index.js │ │ │ └── styles.js │ │ ├── navbar │ │ │ ├── Navbar.js │ │ │ ├── index.js │ │ │ └── styles.js │ │ ├── notifications │ │ │ ├── Notifications.js │ │ │ ├── index.js │ │ │ └── styles.js │ │ ├── number_input │ │ │ ├── NumberInput.js │ │ │ ├── index.js │ │ │ └── styles.js │ │ ├── select_input │ │ │ ├── ChoiceInput.js │ │ │ ├── SelectInput.js │ │ │ ├── index.js │ │ │ └── styles.js │ │ ├── sign_in_page │ │ │ ├── SignInPage.js │ │ │ ├── defaultIcon.svg │ │ │ ├── index.js │ │ │ └── styles.js │ │ ├── string_input │ │ │ ├── StringInput.js │ │ │ ├── index.js │ │ │ └── styles.js │ │ ├── text_block │ │ │ ├── TextBlock.js │ │ │ └── index.js │ │ └── text_input │ │ │ ├── TextInput.js │ │ │ ├── index.js │ │ │ └── styles.js │ ├── error-app.js │ ├── landing-app.js │ ├── main-app.js │ ├── signIn-app.js │ ├── store │ │ ├── actions │ │ │ ├── __tests__ │ │ │ │ ├── api.tests.js │ │ │ │ ├── form.tests.js │ │ │ │ ├── notification.tests.js │ │ │ │ └── ui.tests.js │ │ │ ├── api.js │ │ │ ├── form.js │ │ │ ├── notification.js │ │ │ ├── ui.js │ │ │ └── user.js │ │ ├── index.js │ │ ├── middleware │ │ │ ├── core │ │ │ │ ├── __tests__ │ │ │ │ │ ├── actionSplitter.tests.js │ │ │ │ │ └── notification.tests.js │ │ │ │ ├── actionSplitter.js │ │ │ │ ├── api.js │ │ │ │ └── notification.js │ │ │ └── feature │ │ │ │ ├── __tests__ │ │ │ │ └── form.tests.js │ │ │ │ └── form.js │ │ ├── reducers │ │ │ ├── __tests__ │ │ │ │ ├── form.tests.js │ │ │ │ ├── notification.tests.js │ │ │ │ └── ui.tests.js │ │ │ ├── form.js │ │ │ ├── notification.js │ │ │ ├── ui.js │ │ │ └── user.js │ │ └── selectors │ │ │ ├── .gitkeep │ │ │ ├── __tests__ │ │ │ ├── form.tests.js │ │ │ └── notification.tests.js │ │ │ ├── form.js │ │ │ ├── notification.js │ │ │ └── user.js │ ├── styles │ │ ├── colors.js │ │ ├── containers.js │ │ └── fonts.js │ └── utils │ │ ├── __tests__ │ │ ├── datetime.tests.js │ │ └── serialize.tests.js │ │ ├── datetime.js │ │ ├── serialize.js │ │ └── validation │ │ ├── __tests__ │ │ ├── datetime.tests.js │ │ ├── number.tests.js │ │ ├── regex.tests.js │ │ └── select.tests.js │ │ ├── datetime.js │ │ ├── has_many.js │ │ ├── index.js │ │ ├── number.js │ │ ├── required.js │ │ ├── select.js │ │ └── string.js ├── live-data │ └── .keep └── scss │ └── app.scss ├── webpack-dev.config.js ├── webpack-prod.config.js └── yarn.lock /.dockerignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/.dockerignore -------------------------------------------------------------------------------- /.env.template: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/.env.template -------------------------------------------------------------------------------- /.eslintrc.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/.eslintrc.json -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/.gitignore -------------------------------------------------------------------------------- /.npmrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/.npmrc -------------------------------------------------------------------------------- /.readthedocs.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/.readthedocs.yml -------------------------------------------------------------------------------- /.yarnrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/.yarnrc -------------------------------------------------------------------------------- /.yo-rc.json: -------------------------------------------------------------------------------- 1 | { 2 | "generator-interact": {} 3 | } -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/Dockerfile -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/LICENSE -------------------------------------------------------------------------------- /Procfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/Procfile -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/README.md -------------------------------------------------------------------------------- /app.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/app.json -------------------------------------------------------------------------------- /bin/dev.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/bin/dev.js -------------------------------------------------------------------------------- /bin/docker: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/bin/docker -------------------------------------------------------------------------------- /bin/harvester: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/bin/harvester -------------------------------------------------------------------------------- /docs/collaboration.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/docs/collaboration.md -------------------------------------------------------------------------------- /docs/configuration_resource.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/docs/configuration_resource.md -------------------------------------------------------------------------------- /docs/css/ap-footer.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/docs/css/ap-footer.css -------------------------------------------------------------------------------- /docs/css/tables.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/docs/css/tables.css -------------------------------------------------------------------------------- /docs/development.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/docs/development.md -------------------------------------------------------------------------------- /docs/dockerhub_readme.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/docs/dockerhub_readme.md -------------------------------------------------------------------------------- /docs/entry.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/docs/entry.md -------------------------------------------------------------------------------- /docs/first_project.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/docs/first_project.md -------------------------------------------------------------------------------- /docs/google_credentials.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/docs/google_credentials.md -------------------------------------------------------------------------------- /docs/images/googe_credentials_project_credentials.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/docs/images/googe_credentials_project_credentials.png -------------------------------------------------------------------------------- /docs/images/google_credentials_api_search.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/docs/images/google_credentials_api_search.png -------------------------------------------------------------------------------- /docs/images/google_credentials_create_oauth.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/docs/images/google_credentials_create_oauth.png -------------------------------------------------------------------------------- /docs/images/google_credentials_create_service_account.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/docs/images/google_credentials_create_service_account.png -------------------------------------------------------------------------------- /docs/images/google_credentials_oauth_consent_type.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/docs/images/google_credentials_oauth_consent_type.png -------------------------------------------------------------------------------- /docs/images/google_credentials_oauth_scopes.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/docs/images/google_credentials_oauth_scopes.png -------------------------------------------------------------------------------- /docs/images/google_credentials_people_api.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/docs/images/google_credentials_people_api.png -------------------------------------------------------------------------------- /docs/images/google_credentials_project_dashboard.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/docs/images/google_credentials_project_dashboard.png -------------------------------------------------------------------------------- /docs/images/google_credentials_select_a_project.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/docs/images/google_credentials_select_a_project.png -------------------------------------------------------------------------------- /docs/images/google_credentials_select_project_dialog.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/docs/images/google_credentials_select_project_dialog.png -------------------------------------------------------------------------------- /docs/images/google_credentials_service_account_create_key.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/docs/images/google_credentials_service_account_create_key.png -------------------------------------------------------------------------------- /docs/index.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/docs/index.md -------------------------------------------------------------------------------- /docs/schema.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/docs/schema.md -------------------------------------------------------------------------------- /docs/setup.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/docs/setup.md -------------------------------------------------------------------------------- /docs_theme/footer.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/docs_theme/footer.html -------------------------------------------------------------------------------- /mkdocs.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/mkdocs.yml -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/package.json -------------------------------------------------------------------------------- /server/__tests__/logger.tests.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/server/__tests__/logger.tests.js -------------------------------------------------------------------------------- /server/auth/__tests__/index.tests.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/server/auth/__tests__/index.tests.js -------------------------------------------------------------------------------- /server/auth/__tests__/oauth-google.tests.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/server/auth/__tests__/oauth-google.tests.js -------------------------------------------------------------------------------- /server/auth/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/server/auth/index.js -------------------------------------------------------------------------------- /server/auth/oauth-google.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/server/auth/oauth-google.js -------------------------------------------------------------------------------- /server/config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/server/config.js -------------------------------------------------------------------------------- /server/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/server/index.js -------------------------------------------------------------------------------- /server/logger.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/server/logger.js -------------------------------------------------------------------------------- /server/render.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/server/render.js -------------------------------------------------------------------------------- /server/router.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/server/router.js -------------------------------------------------------------------------------- /server/stores/__tests__/current.tests.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/server/stores/__tests__/current.tests.js -------------------------------------------------------------------------------- /server/stores/__tests__/index.tests.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/server/stores/__tests__/index.tests.js -------------------------------------------------------------------------------- /server/stores/__tests__/schema.tests.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/server/stores/__tests__/schema.tests.js -------------------------------------------------------------------------------- /server/stores/current.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/server/stores/current.js -------------------------------------------------------------------------------- /server/stores/google-sheets/__tests__/google.tests.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/server/stores/google-sheets/__tests__/google.tests.js -------------------------------------------------------------------------------- /server/stores/google-sheets/__tests__/index.tests.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/server/stores/google-sheets/__tests__/index.tests.js -------------------------------------------------------------------------------- /server/stores/google-sheets/google.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/server/stores/google-sheets/google.js -------------------------------------------------------------------------------- /server/stores/google-sheets/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/server/stores/google-sheets/index.js -------------------------------------------------------------------------------- /server/stores/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/server/stores/index.js -------------------------------------------------------------------------------- /server/stores/schema.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/server/stores/schema.js -------------------------------------------------------------------------------- /server/views/error.ejs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/server/views/error.ejs -------------------------------------------------------------------------------- /server/views/formId.ejs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/server/views/formId.ejs -------------------------------------------------------------------------------- /server/views/landing.ejs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/server/views/landing.ejs -------------------------------------------------------------------------------- /server/views/signIn.ejs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/server/views/signIn.ejs -------------------------------------------------------------------------------- /src/images/ap_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/images/ap_logo.png -------------------------------------------------------------------------------- /src/images/clear.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/images/clear.svg -------------------------------------------------------------------------------- /src/images/collapse.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/images/collapse.svg -------------------------------------------------------------------------------- /src/images/delete_forever.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/images/delete_forever.svg -------------------------------------------------------------------------------- /src/images/expand.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/images/expand.svg -------------------------------------------------------------------------------- /src/images/trash.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/images/trash.svg -------------------------------------------------------------------------------- /src/js/components/app/App.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/app/App.js -------------------------------------------------------------------------------- /src/js/components/app/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/app/index.js -------------------------------------------------------------------------------- /src/js/components/controls/Controls.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/controls/Controls.js -------------------------------------------------------------------------------- /src/js/components/controls/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/controls/index.js -------------------------------------------------------------------------------- /src/js/components/controls/styles.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/controls/styles.js -------------------------------------------------------------------------------- /src/js/components/date_time_input/DateTimeInput.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/date_time_input/DateTimeInput.js -------------------------------------------------------------------------------- /src/js/components/date_time_input/cal.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/date_time_input/cal.svg -------------------------------------------------------------------------------- /src/js/components/date_time_input/clock.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/date_time_input/clock.svg -------------------------------------------------------------------------------- /src/js/components/date_time_input/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/date_time_input/index.js -------------------------------------------------------------------------------- /src/js/components/date_time_input/styles.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/date_time_input/styles.js -------------------------------------------------------------------------------- /src/js/components/error_boundary/ErrorBoundary.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/error_boundary/ErrorBoundary.js -------------------------------------------------------------------------------- /src/js/components/error_boundary/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/error_boundary/index.js -------------------------------------------------------------------------------- /src/js/components/error_page/ErrorPage.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/error_page/ErrorPage.js -------------------------------------------------------------------------------- /src/js/components/error_page/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/error_page/index.js -------------------------------------------------------------------------------- /src/js/components/error_page/styles.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/error_page/styles.js -------------------------------------------------------------------------------- /src/js/components/field/Field.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/field/Field.js -------------------------------------------------------------------------------- /src/js/components/field/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/field/index.js -------------------------------------------------------------------------------- /src/js/components/field/styles.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/field/styles.js -------------------------------------------------------------------------------- /src/js/components/field_errors/FieldErrors.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/field_errors/FieldErrors.js -------------------------------------------------------------------------------- /src/js/components/field_errors/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/field_errors/index.js -------------------------------------------------------------------------------- /src/js/components/field_errors/styles.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/field_errors/styles.js -------------------------------------------------------------------------------- /src/js/components/field_help/FieldHelp.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/field_help/FieldHelp.js -------------------------------------------------------------------------------- /src/js/components/field_help/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/field_help/index.js -------------------------------------------------------------------------------- /src/js/components/field_help/styles.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/field_help/styles.js -------------------------------------------------------------------------------- /src/js/components/finished/Finished.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/finished/Finished.js -------------------------------------------------------------------------------- /src/js/components/finished/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/finished/index.js -------------------------------------------------------------------------------- /src/js/components/finished/styles.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/finished/styles.js -------------------------------------------------------------------------------- /src/js/components/footer/Footer.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/footer/Footer.js -------------------------------------------------------------------------------- /src/js/components/footer/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/footer/index.js -------------------------------------------------------------------------------- /src/js/components/footer/styles.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/footer/styles.js -------------------------------------------------------------------------------- /src/js/components/form/Form.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/form/Form.js -------------------------------------------------------------------------------- /src/js/components/form/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/form/index.js -------------------------------------------------------------------------------- /src/js/components/has_many_input/HasManyInput.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/has_many_input/HasManyInput.js -------------------------------------------------------------------------------- /src/js/components/has_many_input/Relative.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/has_many_input/Relative.js -------------------------------------------------------------------------------- /src/js/components/has_many_input/UndoDelete.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/has_many_input/UndoDelete.js -------------------------------------------------------------------------------- /src/js/components/has_many_input/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/has_many_input/index.js -------------------------------------------------------------------------------- /src/js/components/has_many_input/styles.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/has_many_input/styles.js -------------------------------------------------------------------------------- /src/js/components/header/Header.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/header/Header.js -------------------------------------------------------------------------------- /src/js/components/header/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/header/index.js -------------------------------------------------------------------------------- /src/js/components/header/styles.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/header/styles.js -------------------------------------------------------------------------------- /src/js/components/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/index.js -------------------------------------------------------------------------------- /src/js/components/landing_page/LandingPage.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/landing_page/LandingPage.js -------------------------------------------------------------------------------- /src/js/components/landing_page/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/landing_page/index.js -------------------------------------------------------------------------------- /src/js/components/landing_page/styles.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/landing_page/styles.js -------------------------------------------------------------------------------- /src/js/components/layout/Layout.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/layout/Layout.js -------------------------------------------------------------------------------- /src/js/components/layout/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/layout/index.js -------------------------------------------------------------------------------- /src/js/components/layout/styles.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/layout/styles.js -------------------------------------------------------------------------------- /src/js/components/navbar/Navbar.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/navbar/Navbar.js -------------------------------------------------------------------------------- /src/js/components/navbar/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/navbar/index.js -------------------------------------------------------------------------------- /src/js/components/navbar/styles.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/navbar/styles.js -------------------------------------------------------------------------------- /src/js/components/notifications/Notifications.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/notifications/Notifications.js -------------------------------------------------------------------------------- /src/js/components/notifications/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/notifications/index.js -------------------------------------------------------------------------------- /src/js/components/notifications/styles.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/notifications/styles.js -------------------------------------------------------------------------------- /src/js/components/number_input/NumberInput.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/number_input/NumberInput.js -------------------------------------------------------------------------------- /src/js/components/number_input/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/number_input/index.js -------------------------------------------------------------------------------- /src/js/components/number_input/styles.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/number_input/styles.js -------------------------------------------------------------------------------- /src/js/components/select_input/ChoiceInput.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/select_input/ChoiceInput.js -------------------------------------------------------------------------------- /src/js/components/select_input/SelectInput.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/select_input/SelectInput.js -------------------------------------------------------------------------------- /src/js/components/select_input/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/select_input/index.js -------------------------------------------------------------------------------- /src/js/components/select_input/styles.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/select_input/styles.js -------------------------------------------------------------------------------- /src/js/components/sign_in_page/SignInPage.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/sign_in_page/SignInPage.js -------------------------------------------------------------------------------- /src/js/components/sign_in_page/defaultIcon.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/sign_in_page/defaultIcon.svg -------------------------------------------------------------------------------- /src/js/components/sign_in_page/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/sign_in_page/index.js -------------------------------------------------------------------------------- /src/js/components/sign_in_page/styles.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/sign_in_page/styles.js -------------------------------------------------------------------------------- /src/js/components/string_input/StringInput.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/string_input/StringInput.js -------------------------------------------------------------------------------- /src/js/components/string_input/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/string_input/index.js -------------------------------------------------------------------------------- /src/js/components/string_input/styles.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/string_input/styles.js -------------------------------------------------------------------------------- /src/js/components/text_block/TextBlock.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/text_block/TextBlock.js -------------------------------------------------------------------------------- /src/js/components/text_block/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/text_block/index.js -------------------------------------------------------------------------------- /src/js/components/text_input/TextInput.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/text_input/TextInput.js -------------------------------------------------------------------------------- /src/js/components/text_input/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/text_input/index.js -------------------------------------------------------------------------------- /src/js/components/text_input/styles.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/components/text_input/styles.js -------------------------------------------------------------------------------- /src/js/error-app.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/error-app.js -------------------------------------------------------------------------------- /src/js/landing-app.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/landing-app.js -------------------------------------------------------------------------------- /src/js/main-app.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/main-app.js -------------------------------------------------------------------------------- /src/js/signIn-app.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/signIn-app.js -------------------------------------------------------------------------------- /src/js/store/actions/__tests__/api.tests.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/store/actions/__tests__/api.tests.js -------------------------------------------------------------------------------- /src/js/store/actions/__tests__/form.tests.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/store/actions/__tests__/form.tests.js -------------------------------------------------------------------------------- /src/js/store/actions/__tests__/notification.tests.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/store/actions/__tests__/notification.tests.js -------------------------------------------------------------------------------- /src/js/store/actions/__tests__/ui.tests.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/store/actions/__tests__/ui.tests.js -------------------------------------------------------------------------------- /src/js/store/actions/api.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/store/actions/api.js -------------------------------------------------------------------------------- /src/js/store/actions/form.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/store/actions/form.js -------------------------------------------------------------------------------- /src/js/store/actions/notification.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/store/actions/notification.js -------------------------------------------------------------------------------- /src/js/store/actions/ui.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/store/actions/ui.js -------------------------------------------------------------------------------- /src/js/store/actions/user.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/store/actions/user.js -------------------------------------------------------------------------------- /src/js/store/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/store/index.js -------------------------------------------------------------------------------- /src/js/store/middleware/core/__tests__/actionSplitter.tests.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/store/middleware/core/__tests__/actionSplitter.tests.js -------------------------------------------------------------------------------- /src/js/store/middleware/core/__tests__/notification.tests.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/store/middleware/core/__tests__/notification.tests.js -------------------------------------------------------------------------------- /src/js/store/middleware/core/actionSplitter.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/store/middleware/core/actionSplitter.js -------------------------------------------------------------------------------- /src/js/store/middleware/core/api.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/store/middleware/core/api.js -------------------------------------------------------------------------------- /src/js/store/middleware/core/notification.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/store/middleware/core/notification.js -------------------------------------------------------------------------------- /src/js/store/middleware/feature/__tests__/form.tests.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/store/middleware/feature/__tests__/form.tests.js -------------------------------------------------------------------------------- /src/js/store/middleware/feature/form.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/store/middleware/feature/form.js -------------------------------------------------------------------------------- /src/js/store/reducers/__tests__/form.tests.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/store/reducers/__tests__/form.tests.js -------------------------------------------------------------------------------- /src/js/store/reducers/__tests__/notification.tests.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/store/reducers/__tests__/notification.tests.js -------------------------------------------------------------------------------- /src/js/store/reducers/__tests__/ui.tests.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/store/reducers/__tests__/ui.tests.js -------------------------------------------------------------------------------- /src/js/store/reducers/form.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/store/reducers/form.js -------------------------------------------------------------------------------- /src/js/store/reducers/notification.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/store/reducers/notification.js -------------------------------------------------------------------------------- /src/js/store/reducers/ui.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/store/reducers/ui.js -------------------------------------------------------------------------------- /src/js/store/reducers/user.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/store/reducers/user.js -------------------------------------------------------------------------------- /src/js/store/selectors/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/js/store/selectors/__tests__/form.tests.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/store/selectors/__tests__/form.tests.js -------------------------------------------------------------------------------- /src/js/store/selectors/__tests__/notification.tests.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/store/selectors/__tests__/notification.tests.js -------------------------------------------------------------------------------- /src/js/store/selectors/form.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/store/selectors/form.js -------------------------------------------------------------------------------- /src/js/store/selectors/notification.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/store/selectors/notification.js -------------------------------------------------------------------------------- /src/js/store/selectors/user.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/store/selectors/user.js -------------------------------------------------------------------------------- /src/js/styles/colors.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/styles/colors.js -------------------------------------------------------------------------------- /src/js/styles/containers.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/styles/containers.js -------------------------------------------------------------------------------- /src/js/styles/fonts.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/styles/fonts.js -------------------------------------------------------------------------------- /src/js/utils/__tests__/datetime.tests.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/utils/__tests__/datetime.tests.js -------------------------------------------------------------------------------- /src/js/utils/__tests__/serialize.tests.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/utils/__tests__/serialize.tests.js -------------------------------------------------------------------------------- /src/js/utils/datetime.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/utils/datetime.js -------------------------------------------------------------------------------- /src/js/utils/serialize.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/utils/serialize.js -------------------------------------------------------------------------------- /src/js/utils/validation/__tests__/datetime.tests.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/utils/validation/__tests__/datetime.tests.js -------------------------------------------------------------------------------- /src/js/utils/validation/__tests__/number.tests.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/utils/validation/__tests__/number.tests.js -------------------------------------------------------------------------------- /src/js/utils/validation/__tests__/regex.tests.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/utils/validation/__tests__/regex.tests.js -------------------------------------------------------------------------------- /src/js/utils/validation/__tests__/select.tests.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/utils/validation/__tests__/select.tests.js -------------------------------------------------------------------------------- /src/js/utils/validation/datetime.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/utils/validation/datetime.js -------------------------------------------------------------------------------- /src/js/utils/validation/has_many.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/utils/validation/has_many.js -------------------------------------------------------------------------------- /src/js/utils/validation/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/utils/validation/index.js -------------------------------------------------------------------------------- /src/js/utils/validation/number.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/utils/validation/number.js -------------------------------------------------------------------------------- /src/js/utils/validation/required.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/utils/validation/required.js -------------------------------------------------------------------------------- /src/js/utils/validation/select.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/utils/validation/select.js -------------------------------------------------------------------------------- /src/js/utils/validation/string.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/js/utils/validation/string.js -------------------------------------------------------------------------------- /src/live-data/.keep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/scss/app.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/src/scss/app.scss -------------------------------------------------------------------------------- /webpack-dev.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/webpack-dev.config.js -------------------------------------------------------------------------------- /webpack-prod.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/webpack-prod.config.js -------------------------------------------------------------------------------- /yarn.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/associatedpress/harvester/HEAD/yarn.lock --------------------------------------------------------------------------------