From 5ae92ea4c6c22f6629e31cd105963eea9441effa Mon Sep 17 00:00:00 2001 From: labkey-tchad Date: Mon, 24 Feb 2025 15:11:47 -0800 Subject: [PATCH] Remove module code. Moved to https://github.com/LabKey/ehrModules --- .babelrc | 16 - .gitattributes | 1 - .gitignore | 9 - LICENSE.txt | 202 - README.md | 2 +- api-src/org/labkey/api/snd/AttributeData.java | 143 - api-src/org/labkey/api/snd/Category.java | 136 - api-src/org/labkey/api/snd/Event.java | 489 - api-src/org/labkey/api/snd/EventData.java | 280 - .../labkey/api/snd/EventNarrativeOption.java | 36 - api-src/org/labkey/api/snd/EventNote.java | 41 - api-src/org/labkey/api/snd/EventTrigger.java | 33 - .../labkey/api/snd/EventTriggerFactory.java | 23 - api-src/org/labkey/api/snd/Package.java | 366 - .../org/labkey/api/snd/PackageDomainKind.java | 91 - .../snd/PlainTextNarrativeDisplayColumn.java | 63 - api-src/org/labkey/api/snd/Project.java | 383 - api-src/org/labkey/api/snd/ProjectItem.java | 154 - api-src/org/labkey/api/snd/QCStateEnum.java | 81 - api-src/org/labkey/api/snd/SNDDomainKind.java | 116 - api-src/org/labkey/api/snd/SNDSequencer.java | 57 - api-src/org/labkey/api/snd/SNDService.java | 77 - api-src/org/labkey/api/snd/SuperPackage.java | 264 - api-src/org/labkey/api/snd/TriggerAction.java | 90 - build.gradle | 9 - module.properties | 6 - package-lock.json | 8016 ----------------- package.json | 100 - pull_request_template.md | 8 - resources/domain-templates/test.template.xml | 69 - .../auditLog/NarrativeAuditEvent.query.xml | 18 - resources/queries/snd/DeletedLookupSets.sql | 9 - resources/queries/snd/DeletedLookups.sql | 9 - resources/queries/snd/Events.query.xml | 9 - resources/queries/snd/EventsCache.query.xml | 16 - resources/queries/snd/LookupSets.js | 39 - resources/queries/snd/LookupSets.query.xml | 17 - resources/queries/snd/LookupSets/.qview.xml | 8 - resources/queries/snd/Lookups.js | 99 - resources/queries/snd/Lookups.query.xml | 20 - resources/queries/snd/Lookups/.qview.xml | 11 - resources/queries/snd/PkgCategories.query.xml | 9 - .../queries/snd/PkgCategories/.qview.xml | 15 - resources/queries/snd/Pkgs.query.xml | 9 - resources/queries/snd/Pkgs/.qview.xml | 18 - resources/queries/snd/Projects/.qview.xml | 15 - resources/queries/snd/TopLevelSuperPkgs.sql | 23 - .../queries/snd/TopLevelSuperPkgs/.qview.xml | 12 - .../dbscripts/sqlserver/snd-0.000-22.000.sql | 1001 -- .../dbscripts/sqlserver/snd-23.000-23.001.sql | 15 - .../dbscripts/sqlserver/snd-23.001-23.003.sql | 2 - .../dbscripts/sqlserver/snd-23.003-23.004.sql | 1 - .../dbscripts/sqlserver/snd-23.004-23.005.sql | 80 - resources/schemas/snd.xml | 367 - resources/views/app.html | 1 - resources/views/app.view.xml | 7 - resources/views/appDev.html | 2 - resources/views/appDev.view.xml | 6 - resources/views/importPackages.html | 39 - resources/views/importPackages.view.xml | 8 - resources/views/test.html | 74 - resources/views/test.view.xml | 10 - schemas/snd.xsd | 79 - src/client/app.tsx | 67 - .../Categories/CategoriesSelectResults.tsx | 150 - src/client/components/Crumb/Crumb.tsx | 35 - src/client/components/Form/Attributes.tsx | 244 - src/client/components/Form/Checkbox.tsx | 65 - src/client/components/Form/DataTypeSelect.tsx | 102 - src/client/components/Form/DatePicker.tsx | 64 - src/client/components/Form/EmailInput.tsx | 35 - .../components/Form/ExtraFieldSelect.tsx | 45 - src/client/components/Form/ExtraFields.tsx | 129 - src/client/components/Form/IdInput.tsx | 51 - src/client/components/Form/LookupKeyInput.tsx | 52 - src/client/components/Form/NumericInput.tsx | 39 - src/client/components/Form/OrderSelect.tsx | 67 - src/client/components/Form/PasswordInput.tsx | 35 - src/client/components/Form/TextArea.tsx | 42 - src/client/components/Form/TextInput.tsx | 65 - src/client/components/Form/validators.ts | 24 - src/client/components/NotFound/NotFound.tsx | 33 - src/client/components/Packages/PackageRow.tsx | 100 - .../Packages/PackageSearchInput.tsx | 83 - .../Packages/PackageSearchResults.tsx | 65 - src/client/components/Projects/ProjectRow.tsx | 107 - .../Projects/ProjectSearchInput.tsx | 81 - .../Projects/ProjectSearchResults.tsx | 67 - src/client/components/Search/SearchInput.tsx | 102 - .../SuperPackages/SuperPackageRow.tsx | 165 - .../SuperPackageSearchResults.tsx | 100 - src/client/containers/App/App.tsx | 166 - src/client/containers/App/actions.ts | 56 - src/client/containers/App/constants.ts | 36 - src/client/containers/App/model.ts | 45 - src/client/containers/App/reducer.ts | 104 - .../containers/LandingPage/LandingPage.tsx | 52 - .../containers/Packages/Forms/PackageForm.tsx | 475 - .../Packages/Forms/PackageFormContainer.tsx | 355 - .../Packages/Forms/PackageSearch.tsx | 41 - .../Packages/Forms/PackageViewer.tsx | 217 - src/client/containers/Packages/actions.ts | 91 - src/client/containers/Packages/constants.ts | 66 - src/client/containers/Packages/model.ts | 157 - src/client/containers/Packages/reducer.ts | 142 - .../containers/Projects/Forms/ProjectForm.tsx | 378 - .../Projects/Forms/ProjectFormContainer.tsx | 325 - .../Projects/Forms/ProjectRevisionForm.tsx | 377 - .../Projects/Forms/ProjectSearch.tsx | 41 - .../Projects/Forms/ProjectViewer.tsx | 244 - src/client/containers/Projects/actions.ts | 94 - src/client/containers/Projects/constants.ts | 54 - src/client/containers/Projects/model.ts | 119 - src/client/containers/Projects/reducer.ts | 201 - src/client/containers/SignIn/model.ts | 64 - src/client/containers/SignIn/reducer.ts | 22 - .../SuperPackages/Forms/NarrativeRow.tsx | 38 - .../SuperPackages/Forms/SubpackageViewer.tsx | 157 - .../SuperPackages/Forms/SuperPackageForm.tsx | 158 - .../Forms/SuperPackageViewer.tsx | 161 - .../containers/SuperPackages/constants.ts | 56 - src/client/containers/SuperPackages/model.ts | 77 - .../Wizards/Categories/EditCategories.tsx | 399 - .../containers/Wizards/Categories/actions.ts | 194 - .../Wizards/Packages/CategoriesSelect.tsx | 211 - .../containers/Wizards/Packages/actions.ts | 417 - .../containers/Wizards/Packages/constants.ts | 43 - .../containers/Wizards/Packages/model.ts | 228 - .../containers/Wizards/Packages/reducer.ts | 497 - .../containers/Wizards/Projects/actions.ts | 329 - .../containers/Wizards/Projects/constants.ts | 43 - .../containers/Wizards/Projects/model.ts | 270 - .../containers/Wizards/Projects/reducer.ts | 353 - .../Wizards/SuperPackages/actions.ts | 93 - .../containers/Wizards/SuperPackages/model.ts | 42 - src/client/containers/Wizards/model.ts | 108 - src/client/containers/Wizards/reducer.ts | 31 - src/client/query/QuerySearch.tsx | 132 - src/client/query/actions.ts | 374 - src/client/query/constants.ts | 40 - src/client/query/model.ts | 474 - src/client/query/reducer.ts | 293 - src/client/reducers/index.ts | 37 - src/client/routing/Routes.tsx | 159 - src/client/theme/css/App.css | 20 - src/client/theme/css/Common.css | 14 - src/client/theme/css/PackageForm.css | 69 - src/client/theme/css/PackageRow.css | 15 - src/client/theme/css/PackageSearch.css | 19 - src/client/theme/css/ProjectRow.css | 24 - src/client/theme/css/ProjectSearch.css | 24 - src/client/theme/css/SearchInput.css | 35 - src/client/theme/css/SuperPackageRow.css | 33 - src/client/theme/css/index.css | 9 - src/client/theme/style.js | 6 - src/client/typings/globals.d.ts | 42 - src/client/typings/main.d.ts | 17 - src/client/utils/actions.tsx | 43 - src/client/utils/constants.ts | 0 src/org/labkey/snd/CategoryUserSchema.java | 76 - .../labkey/snd/NarrativeAuditProvider.java | 219 - src/org/labkey/snd/PackageUserSchema.java | 440 - .../labkey/snd/PropertyDescriptorMixin.java | 51 - .../labkey/snd/PropertyValidatorMixin.java | 31 - src/org/labkey/snd/SNDContainerListener.java | 78 - src/org/labkey/snd/SNDController.java | 1310 --- src/org/labkey/snd/SNDManager.java | 4393 --------- src/org/labkey/snd/SNDModule.java | 146 - src/org/labkey/snd/SNDSchema.java | 122 - src/org/labkey/snd/SNDServiceImpl.java | 592 -- src/org/labkey/snd/SNDUserSchema.java | 337 - .../labkey/snd/pipeline/SNDDataHandler.java | 354 - .../snd/query/AbstractSNDTableInfo.java | 26 - .../labkey/snd/query/AttributeDataTable.java | 465 - src/org/labkey/snd/query/CategoriesTable.java | 156 - src/org/labkey/snd/query/EventDataTable.java | 374 - .../snd/query/EventNotesDataIterator.java | 91 - .../query/EventNotesDataIteratorBuilder.java | 33 - src/org/labkey/snd/query/EventNotesTable.java | 130 - .../labkey/snd/query/EventsCacheTable.java | 84 - src/org/labkey/snd/query/EventsTable.java | 227 - src/org/labkey/snd/query/LookupSetsTable.java | 42 - .../snd/query/LookupSetsVirtualTable.java | 74 - src/org/labkey/snd/query/LookupsTable.java | 131 - .../snd/query/PackageAttributeTable.java | 257 - src/org/labkey/snd/query/PackagesTable.java | 256 - src/org/labkey/snd/query/ProjectsTable.java | 161 - .../snd/query/SNDQueryUpdateService.java | 37 - .../labkey/snd/query/SuperPackagesTable.java | 195 - .../snd/security/QCStateActionEnum.java | 76 - .../snd/security/SNDSecurityManager.java | 381 - .../snd/security/SecurityRolesEnum.java | 42 - .../SNDCompletedDeletePermission.java | 26 - .../SNDCompletedInsertPermission.java | 26 - .../SNDCompletedReadPermission.java | 26 - .../SNDCompletedUpdatePermission.java | 26 - .../permissions/SNDEditorPermission.java | 16 - .../SNDInProgressDeletePermission.java | 26 - .../SNDInProgressInsertPermission.java | 26 - .../SNDInProgressReadPermission.java | 27 - .../SNDInProgressUpdatePermission.java | 26 - .../SNDPackageEditorPermission.java | 15 - .../SNDPackageViewerPermission.java | 15 - .../SNDProjectEditorPermission.java | 16 - .../SNDProjectViewerPermission.java | 16 - .../permissions/SNDQCStatePermission.java | 36 - .../SNDRejectedDeletePermission.java | 26 - .../SNDRejectedInsertPermission.java | 26 - .../SNDRejectedReadPermission.java | 26 - .../SNDRejectedUpdatePermission.java | 26 - .../SNDReviewRequiredDeletePermission.java | 27 - .../SNDReviewRequiredInsertPermission.java | 26 - .../SNDReviewRequiredReadPermission.java | 26 - .../SNDReviewRequiredUpdatePermission.java | 26 - .../permissions/SNDViewerPermission.java | 16 - .../security/roles/SNDBasicSubmitterRole.java | 61 - .../snd/security/roles/SNDDataAdminRole.java | 62 - .../security/roles/SNDDataReviewerRole.java | 49 - .../snd/security/roles/SNDEditorRole.java | 23 - .../security/roles/SNDPackageEditorRole.java | 23 - .../security/roles/SNDPackageViewerRole.java | 21 - .../security/roles/SNDProjectEditorRole.java | 23 - .../security/roles/SNDProjectViewerRole.java | 21 - .../snd/security/roles/SNDReaderRole.java | 40 - .../snd/security/roles/SNDViewerRole.java | 21 - .../snd/security/view/categorySecurity.jsp | 255 - .../labkey/snd/trigger/SNDTriggerManager.java | 203 - .../test/SNDTestEventTriggerFactory.java | 57 - .../test/triggers/CalciumTestTrigger.java | 83 - .../triggers/ChlorideBloodTestTrigger.java | 48 - .../test/triggers/ChlorideTestTrigger.java | 80 - .../triggers/ElectrolytesTestTrigger.java | 41 - .../trigger/test/triggers/SNDTestTrigger.java | 38 - .../trigger/test/triggers/TriggerHelper.java | 138 - src/org/labkey/snd/view/sndAdmin.jsp | 168 - .../snd/pipeline/import/1_initial.snd.xml | 56 - .../pipeline/import/2_changeNarrative.snd.xml | 56 - .../pipeline/import/3_insertPackage.snd.xml | 63 - .../pipeline/import/4_addAttribute.snd.xml | 70 - .../pipeline/import/5_removeAttribute.snd.xml | 164 - .../import/6_removeAllAttributes.snd.xml | 28 - .../test/components/snd/AttributeGridRow.java | 235 - .../test/components/snd/AttributesGrid.java | 103 - .../test/components/snd/CategoryEditRow.java | 152 - .../test/components/snd/FilterSelect.java | 178 - .../components/snd/PackageViewerResult.java | 125 - .../components/snd/ProjectViewerResult.java | 137 - .../test/components/snd/SuperPackageRow.java | 158 - .../org/labkey/test/pages/snd/BeginPage.java | 53 - .../test/pages/snd/EditCategoriesPage.java | 109 - .../test/pages/snd/EditPackagePage.java | 261 - .../test/pages/snd/EditProjectPage.java | 349 - .../test/pages/snd/PackageListPage.java | 115 - .../test/pages/snd/ProjectListPage.java | 151 - .../org/labkey/test/tests/snd/SNDTest.java | 2235 ----- tsconfig.json | 22 - webapp/WEB-INF/snd/sndContext.xml | 50 - webapp/snd/test/LKEquals.js | 46 - webapp/snd/test/data.js | 1809 ---- webapp/snd/test/deepmerge.js | 77 - webapp/snd/test/driver.js | 1280 --- webapp/snd/test/tests.js | 844 -- webpack/dev-server.js | 33 - webpack/dev-style.config.js | 56 - webpack/dev.config.js | 50 - webpack/prod.config.js | 73 - 266 files changed, 1 insertion(+), 47856 deletions(-) delete mode 100644 .babelrc delete mode 100644 .gitattributes delete mode 100644 .gitignore delete mode 100644 LICENSE.txt delete mode 100644 api-src/org/labkey/api/snd/AttributeData.java delete mode 100644 api-src/org/labkey/api/snd/Category.java delete mode 100644 api-src/org/labkey/api/snd/Event.java delete mode 100644 api-src/org/labkey/api/snd/EventData.java delete mode 100644 api-src/org/labkey/api/snd/EventNarrativeOption.java delete mode 100644 api-src/org/labkey/api/snd/EventNote.java delete mode 100644 api-src/org/labkey/api/snd/EventTrigger.java delete mode 100644 api-src/org/labkey/api/snd/EventTriggerFactory.java delete mode 100644 api-src/org/labkey/api/snd/Package.java delete mode 100644 api-src/org/labkey/api/snd/PackageDomainKind.java delete mode 100644 api-src/org/labkey/api/snd/PlainTextNarrativeDisplayColumn.java delete mode 100644 api-src/org/labkey/api/snd/Project.java delete mode 100644 api-src/org/labkey/api/snd/ProjectItem.java delete mode 100644 api-src/org/labkey/api/snd/QCStateEnum.java delete mode 100644 api-src/org/labkey/api/snd/SNDDomainKind.java delete mode 100644 api-src/org/labkey/api/snd/SNDSequencer.java delete mode 100644 api-src/org/labkey/api/snd/SNDService.java delete mode 100644 api-src/org/labkey/api/snd/SuperPackage.java delete mode 100644 api-src/org/labkey/api/snd/TriggerAction.java delete mode 100644 build.gradle delete mode 100644 module.properties delete mode 100644 package-lock.json delete mode 100644 package.json delete mode 100644 pull_request_template.md delete mode 100644 resources/domain-templates/test.template.xml delete mode 100644 resources/queries/auditLog/NarrativeAuditEvent.query.xml delete mode 100644 resources/queries/snd/DeletedLookupSets.sql delete mode 100644 resources/queries/snd/DeletedLookups.sql delete mode 100644 resources/queries/snd/Events.query.xml delete mode 100644 resources/queries/snd/EventsCache.query.xml delete mode 100644 resources/queries/snd/LookupSets.js delete mode 100644 resources/queries/snd/LookupSets.query.xml delete mode 100644 resources/queries/snd/LookupSets/.qview.xml delete mode 100644 resources/queries/snd/Lookups.js delete mode 100644 resources/queries/snd/Lookups.query.xml delete mode 100644 resources/queries/snd/Lookups/.qview.xml delete mode 100644 resources/queries/snd/PkgCategories.query.xml delete mode 100644 resources/queries/snd/PkgCategories/.qview.xml delete mode 100644 resources/queries/snd/Pkgs.query.xml delete mode 100644 resources/queries/snd/Pkgs/.qview.xml delete mode 100644 resources/queries/snd/Projects/.qview.xml delete mode 100644 resources/queries/snd/TopLevelSuperPkgs.sql delete mode 100644 resources/queries/snd/TopLevelSuperPkgs/.qview.xml delete mode 100644 resources/schemas/dbscripts/sqlserver/snd-0.000-22.000.sql delete mode 100644 resources/schemas/dbscripts/sqlserver/snd-23.000-23.001.sql delete mode 100644 resources/schemas/dbscripts/sqlserver/snd-23.001-23.003.sql delete mode 100644 resources/schemas/dbscripts/sqlserver/snd-23.003-23.004.sql delete mode 100644 resources/schemas/dbscripts/sqlserver/snd-23.004-23.005.sql delete mode 100644 resources/schemas/snd.xml delete mode 100644 resources/views/app.html delete mode 100644 resources/views/app.view.xml delete mode 100644 resources/views/appDev.html delete mode 100644 resources/views/appDev.view.xml delete mode 100644 resources/views/importPackages.html delete mode 100644 resources/views/importPackages.view.xml delete mode 100644 resources/views/test.html delete mode 100644 resources/views/test.view.xml delete mode 100644 schemas/snd.xsd delete mode 100644 src/client/app.tsx delete mode 100644 src/client/components/Categories/CategoriesSelectResults.tsx delete mode 100644 src/client/components/Crumb/Crumb.tsx delete mode 100644 src/client/components/Form/Attributes.tsx delete mode 100644 src/client/components/Form/Checkbox.tsx delete mode 100644 src/client/components/Form/DataTypeSelect.tsx delete mode 100644 src/client/components/Form/DatePicker.tsx delete mode 100644 src/client/components/Form/EmailInput.tsx delete mode 100644 src/client/components/Form/ExtraFieldSelect.tsx delete mode 100644 src/client/components/Form/ExtraFields.tsx delete mode 100644 src/client/components/Form/IdInput.tsx delete mode 100644 src/client/components/Form/LookupKeyInput.tsx delete mode 100644 src/client/components/Form/NumericInput.tsx delete mode 100644 src/client/components/Form/OrderSelect.tsx delete mode 100644 src/client/components/Form/PasswordInput.tsx delete mode 100644 src/client/components/Form/TextArea.tsx delete mode 100644 src/client/components/Form/TextInput.tsx delete mode 100644 src/client/components/Form/validators.ts delete mode 100644 src/client/components/NotFound/NotFound.tsx delete mode 100644 src/client/components/Packages/PackageRow.tsx delete mode 100644 src/client/components/Packages/PackageSearchInput.tsx delete mode 100644 src/client/components/Packages/PackageSearchResults.tsx delete mode 100644 src/client/components/Projects/ProjectRow.tsx delete mode 100644 src/client/components/Projects/ProjectSearchInput.tsx delete mode 100644 src/client/components/Projects/ProjectSearchResults.tsx delete mode 100644 src/client/components/Search/SearchInput.tsx delete mode 100644 src/client/components/SuperPackages/SuperPackageRow.tsx delete mode 100644 src/client/components/SuperPackages/SuperPackageSearchResults.tsx delete mode 100644 src/client/containers/App/App.tsx delete mode 100644 src/client/containers/App/actions.ts delete mode 100644 src/client/containers/App/constants.ts delete mode 100644 src/client/containers/App/model.ts delete mode 100644 src/client/containers/App/reducer.ts delete mode 100644 src/client/containers/LandingPage/LandingPage.tsx delete mode 100644 src/client/containers/Packages/Forms/PackageForm.tsx delete mode 100644 src/client/containers/Packages/Forms/PackageFormContainer.tsx delete mode 100644 src/client/containers/Packages/Forms/PackageSearch.tsx delete mode 100644 src/client/containers/Packages/Forms/PackageViewer.tsx delete mode 100644 src/client/containers/Packages/actions.ts delete mode 100644 src/client/containers/Packages/constants.ts delete mode 100644 src/client/containers/Packages/model.ts delete mode 100644 src/client/containers/Packages/reducer.ts delete mode 100644 src/client/containers/Projects/Forms/ProjectForm.tsx delete mode 100644 src/client/containers/Projects/Forms/ProjectFormContainer.tsx delete mode 100644 src/client/containers/Projects/Forms/ProjectRevisionForm.tsx delete mode 100644 src/client/containers/Projects/Forms/ProjectSearch.tsx delete mode 100644 src/client/containers/Projects/Forms/ProjectViewer.tsx delete mode 100644 src/client/containers/Projects/actions.ts delete mode 100644 src/client/containers/Projects/constants.ts delete mode 100644 src/client/containers/Projects/model.ts delete mode 100644 src/client/containers/Projects/reducer.ts delete mode 100644 src/client/containers/SignIn/model.ts delete mode 100644 src/client/containers/SignIn/reducer.ts delete mode 100644 src/client/containers/SuperPackages/Forms/NarrativeRow.tsx delete mode 100644 src/client/containers/SuperPackages/Forms/SubpackageViewer.tsx delete mode 100644 src/client/containers/SuperPackages/Forms/SuperPackageForm.tsx delete mode 100644 src/client/containers/SuperPackages/Forms/SuperPackageViewer.tsx delete mode 100644 src/client/containers/SuperPackages/constants.ts delete mode 100644 src/client/containers/SuperPackages/model.ts delete mode 100644 src/client/containers/Wizards/Categories/EditCategories.tsx delete mode 100644 src/client/containers/Wizards/Categories/actions.ts delete mode 100644 src/client/containers/Wizards/Packages/CategoriesSelect.tsx delete mode 100644 src/client/containers/Wizards/Packages/actions.ts delete mode 100644 src/client/containers/Wizards/Packages/constants.ts delete mode 100644 src/client/containers/Wizards/Packages/model.ts delete mode 100644 src/client/containers/Wizards/Packages/reducer.ts delete mode 100644 src/client/containers/Wizards/Projects/actions.ts delete mode 100644 src/client/containers/Wizards/Projects/constants.ts delete mode 100644 src/client/containers/Wizards/Projects/model.ts delete mode 100644 src/client/containers/Wizards/Projects/reducer.ts delete mode 100644 src/client/containers/Wizards/SuperPackages/actions.ts delete mode 100644 src/client/containers/Wizards/SuperPackages/model.ts delete mode 100644 src/client/containers/Wizards/model.ts delete mode 100644 src/client/containers/Wizards/reducer.ts delete mode 100644 src/client/query/QuerySearch.tsx delete mode 100644 src/client/query/actions.ts delete mode 100644 src/client/query/constants.ts delete mode 100644 src/client/query/model.ts delete mode 100644 src/client/query/reducer.ts delete mode 100644 src/client/reducers/index.ts delete mode 100644 src/client/routing/Routes.tsx delete mode 100644 src/client/theme/css/App.css delete mode 100644 src/client/theme/css/Common.css delete mode 100644 src/client/theme/css/PackageForm.css delete mode 100644 src/client/theme/css/PackageRow.css delete mode 100644 src/client/theme/css/PackageSearch.css delete mode 100644 src/client/theme/css/ProjectRow.css delete mode 100644 src/client/theme/css/ProjectSearch.css delete mode 100644 src/client/theme/css/SearchInput.css delete mode 100644 src/client/theme/css/SuperPackageRow.css delete mode 100644 src/client/theme/css/index.css delete mode 100644 src/client/theme/style.js delete mode 100644 src/client/typings/globals.d.ts delete mode 100644 src/client/typings/main.d.ts delete mode 100644 src/client/utils/actions.tsx delete mode 100644 src/client/utils/constants.ts delete mode 100644 src/org/labkey/snd/CategoryUserSchema.java delete mode 100644 src/org/labkey/snd/NarrativeAuditProvider.java delete mode 100644 src/org/labkey/snd/PackageUserSchema.java delete mode 100644 src/org/labkey/snd/PropertyDescriptorMixin.java delete mode 100644 src/org/labkey/snd/PropertyValidatorMixin.java delete mode 100644 src/org/labkey/snd/SNDContainerListener.java delete mode 100644 src/org/labkey/snd/SNDController.java delete mode 100644 src/org/labkey/snd/SNDManager.java delete mode 100644 src/org/labkey/snd/SNDModule.java delete mode 100644 src/org/labkey/snd/SNDSchema.java delete mode 100644 src/org/labkey/snd/SNDServiceImpl.java delete mode 100644 src/org/labkey/snd/SNDUserSchema.java delete mode 100644 src/org/labkey/snd/pipeline/SNDDataHandler.java delete mode 100644 src/org/labkey/snd/query/AbstractSNDTableInfo.java delete mode 100644 src/org/labkey/snd/query/AttributeDataTable.java delete mode 100644 src/org/labkey/snd/query/CategoriesTable.java delete mode 100644 src/org/labkey/snd/query/EventDataTable.java delete mode 100644 src/org/labkey/snd/query/EventNotesDataIterator.java delete mode 100644 src/org/labkey/snd/query/EventNotesDataIteratorBuilder.java delete mode 100644 src/org/labkey/snd/query/EventNotesTable.java delete mode 100644 src/org/labkey/snd/query/EventsCacheTable.java delete mode 100644 src/org/labkey/snd/query/EventsTable.java delete mode 100644 src/org/labkey/snd/query/LookupSetsTable.java delete mode 100644 src/org/labkey/snd/query/LookupSetsVirtualTable.java delete mode 100644 src/org/labkey/snd/query/LookupsTable.java delete mode 100644 src/org/labkey/snd/query/PackageAttributeTable.java delete mode 100644 src/org/labkey/snd/query/PackagesTable.java delete mode 100644 src/org/labkey/snd/query/ProjectsTable.java delete mode 100644 src/org/labkey/snd/query/SNDQueryUpdateService.java delete mode 100644 src/org/labkey/snd/query/SuperPackagesTable.java delete mode 100644 src/org/labkey/snd/security/QCStateActionEnum.java delete mode 100644 src/org/labkey/snd/security/SNDSecurityManager.java delete mode 100644 src/org/labkey/snd/security/SecurityRolesEnum.java delete mode 100644 src/org/labkey/snd/security/permissions/SNDCompletedDeletePermission.java delete mode 100644 src/org/labkey/snd/security/permissions/SNDCompletedInsertPermission.java delete mode 100644 src/org/labkey/snd/security/permissions/SNDCompletedReadPermission.java delete mode 100644 src/org/labkey/snd/security/permissions/SNDCompletedUpdatePermission.java delete mode 100644 src/org/labkey/snd/security/permissions/SNDEditorPermission.java delete mode 100644 src/org/labkey/snd/security/permissions/SNDInProgressDeletePermission.java delete mode 100644 src/org/labkey/snd/security/permissions/SNDInProgressInsertPermission.java delete mode 100644 src/org/labkey/snd/security/permissions/SNDInProgressReadPermission.java delete mode 100644 src/org/labkey/snd/security/permissions/SNDInProgressUpdatePermission.java delete mode 100644 src/org/labkey/snd/security/permissions/SNDPackageEditorPermission.java delete mode 100644 src/org/labkey/snd/security/permissions/SNDPackageViewerPermission.java delete mode 100644 src/org/labkey/snd/security/permissions/SNDProjectEditorPermission.java delete mode 100644 src/org/labkey/snd/security/permissions/SNDProjectViewerPermission.java delete mode 100644 src/org/labkey/snd/security/permissions/SNDQCStatePermission.java delete mode 100644 src/org/labkey/snd/security/permissions/SNDRejectedDeletePermission.java delete mode 100644 src/org/labkey/snd/security/permissions/SNDRejectedInsertPermission.java delete mode 100644 src/org/labkey/snd/security/permissions/SNDRejectedReadPermission.java delete mode 100644 src/org/labkey/snd/security/permissions/SNDRejectedUpdatePermission.java delete mode 100644 src/org/labkey/snd/security/permissions/SNDReviewRequiredDeletePermission.java delete mode 100644 src/org/labkey/snd/security/permissions/SNDReviewRequiredInsertPermission.java delete mode 100644 src/org/labkey/snd/security/permissions/SNDReviewRequiredReadPermission.java delete mode 100644 src/org/labkey/snd/security/permissions/SNDReviewRequiredUpdatePermission.java delete mode 100644 src/org/labkey/snd/security/permissions/SNDViewerPermission.java delete mode 100644 src/org/labkey/snd/security/roles/SNDBasicSubmitterRole.java delete mode 100644 src/org/labkey/snd/security/roles/SNDDataAdminRole.java delete mode 100644 src/org/labkey/snd/security/roles/SNDDataReviewerRole.java delete mode 100644 src/org/labkey/snd/security/roles/SNDEditorRole.java delete mode 100644 src/org/labkey/snd/security/roles/SNDPackageEditorRole.java delete mode 100644 src/org/labkey/snd/security/roles/SNDPackageViewerRole.java delete mode 100644 src/org/labkey/snd/security/roles/SNDProjectEditorRole.java delete mode 100644 src/org/labkey/snd/security/roles/SNDProjectViewerRole.java delete mode 100644 src/org/labkey/snd/security/roles/SNDReaderRole.java delete mode 100644 src/org/labkey/snd/security/roles/SNDViewerRole.java delete mode 100644 src/org/labkey/snd/security/view/categorySecurity.jsp delete mode 100644 src/org/labkey/snd/trigger/SNDTriggerManager.java delete mode 100644 src/org/labkey/snd/trigger/test/SNDTestEventTriggerFactory.java delete mode 100644 src/org/labkey/snd/trigger/test/triggers/CalciumTestTrigger.java delete mode 100644 src/org/labkey/snd/trigger/test/triggers/ChlorideBloodTestTrigger.java delete mode 100644 src/org/labkey/snd/trigger/test/triggers/ChlorideTestTrigger.java delete mode 100644 src/org/labkey/snd/trigger/test/triggers/ElectrolytesTestTrigger.java delete mode 100644 src/org/labkey/snd/trigger/test/triggers/SNDTestTrigger.java delete mode 100644 src/org/labkey/snd/trigger/test/triggers/TriggerHelper.java delete mode 100644 src/org/labkey/snd/view/sndAdmin.jsp delete mode 100644 test/sampledata/snd/pipeline/import/1_initial.snd.xml delete mode 100644 test/sampledata/snd/pipeline/import/2_changeNarrative.snd.xml delete mode 100644 test/sampledata/snd/pipeline/import/3_insertPackage.snd.xml delete mode 100644 test/sampledata/snd/pipeline/import/4_addAttribute.snd.xml delete mode 100644 test/sampledata/snd/pipeline/import/5_removeAttribute.snd.xml delete mode 100644 test/sampledata/snd/pipeline/import/6_removeAllAttributes.snd.xml delete mode 100644 test/src/org/labkey/test/components/snd/AttributeGridRow.java delete mode 100644 test/src/org/labkey/test/components/snd/AttributesGrid.java delete mode 100644 test/src/org/labkey/test/components/snd/CategoryEditRow.java delete mode 100644 test/src/org/labkey/test/components/snd/FilterSelect.java delete mode 100644 test/src/org/labkey/test/components/snd/PackageViewerResult.java delete mode 100644 test/src/org/labkey/test/components/snd/ProjectViewerResult.java delete mode 100644 test/src/org/labkey/test/components/snd/SuperPackageRow.java delete mode 100644 test/src/org/labkey/test/pages/snd/BeginPage.java delete mode 100644 test/src/org/labkey/test/pages/snd/EditCategoriesPage.java delete mode 100644 test/src/org/labkey/test/pages/snd/EditPackagePage.java delete mode 100644 test/src/org/labkey/test/pages/snd/EditProjectPage.java delete mode 100644 test/src/org/labkey/test/pages/snd/PackageListPage.java delete mode 100644 test/src/org/labkey/test/pages/snd/ProjectListPage.java delete mode 100644 test/src/org/labkey/test/tests/snd/SNDTest.java delete mode 100644 tsconfig.json delete mode 100644 webapp/WEB-INF/snd/sndContext.xml delete mode 100644 webapp/snd/test/LKEquals.js delete mode 100644 webapp/snd/test/data.js delete mode 100644 webapp/snd/test/deepmerge.js delete mode 100644 webapp/snd/test/driver.js delete mode 100644 webapp/snd/test/tests.js delete mode 100644 webpack/dev-server.js delete mode 100644 webpack/dev-style.config.js delete mode 100644 webpack/dev.config.js delete mode 100644 webpack/prod.config.js diff --git a/.babelrc b/.babelrc deleted file mode 100644 index ad2ef38b..00000000 --- a/.babelrc +++ /dev/null @@ -1,16 +0,0 @@ -{ - "presets": [["env", { - "targets": { - "browsers": ["> 0.2%", "last 2 versions", "Firefox 45", "not dead"] - } - } - ], "react"], - "env": { - "development": { - "presets": ["react-hmre"] - }, - "test": { - "plugins": ["transform-es2015-modules-commonjs"] - } - } -} \ No newline at end of file diff --git a/.gitattributes b/.gitattributes deleted file mode 100644 index 176a458f..00000000 --- a/.gitattributes +++ /dev/null @@ -1 +0,0 @@ -* text=auto diff --git a/.gitignore b/.gitignore deleted file mode 100644 index 5e42d202..00000000 --- a/.gitignore +++ /dev/null @@ -1,9 +0,0 @@ -node_modules -app.css -app.css.map -app.js -app.js.map -.labkey -import -resources/web/snd/app/style.js -.gradle diff --git a/LICENSE.txt b/LICENSE.txt deleted file mode 100644 index 8f71f43f..00000000 --- a/LICENSE.txt +++ /dev/null @@ -1,202 +0,0 @@ - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - - TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - - 1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - - 2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - - 3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - - 4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - - 5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - - 6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - - 7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - - 8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - - 9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - - END OF TERMS AND CONDITIONS - - APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "{}" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - - Copyright {yyyy} {name of copyright owner} - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - diff --git a/README.md b/README.md index bf6f1a43..f611b836 100644 --- a/README.md +++ b/README.md @@ -1 +1 @@ -# snd \ No newline at end of file +Module moved to [LabKey/ehrModules](https://github.com/LabKey/ehrModules) in 24.11 diff --git a/api-src/org/labkey/api/snd/AttributeData.java b/api-src/org/labkey/api/snd/AttributeData.java deleted file mode 100644 index 2e24a8af..00000000 --- a/api-src/org/labkey/api/snd/AttributeData.java +++ /dev/null @@ -1,143 +0,0 @@ -/* - * Copyright (c) 2018 LabKey Corporation - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.labkey.api.snd; - -import org.jetbrains.annotations.NotNull; -import org.jetbrains.annotations.Nullable; -import org.json.JSONObject; -import org.labkey.api.data.Container; -import org.labkey.api.gwt.client.model.GWTPropertyDescriptor; -import org.labkey.api.query.ValidationException; -import org.labkey.api.security.User; - -/** - * Class for attribute data and related methods. Used in EventData class - */ -public class AttributeData -{ - private int _propertyId = -1; - private String _propertyName; - private GWTPropertyDescriptor _propertyDescriptor; - private String _value; - private ValidationException _exception; - - public static final String ATTRIBUTE_DATA_PROPERTY_ID = "propertyId"; - public static final String ATTRIBUTE_DATA_PROPERTY_NAME = "propertyName"; - public static final String ATTRIBUTE_DATA_PROPERTY_DESCRIPTOR = "propertyDescriptor"; - public static final String ATTRIBUTE_DATA_VALUE = "value"; - - public static final String ATTRIBUTE_DATA_CSS_CLASS = "snd-attribute-data"; - - public static final String DATE_TIME_FORMAT = "yyyy-MM-dd'T'HH:mm:ss"; // ISO8601 w/24-hour time and 'T' character - public static final String DATE_FORMAT = "yyyy-MM-dd"; // ISO8601 - - public AttributeData(int propertyId, @Nullable GWTPropertyDescriptor propertyDescriptor, @Nullable String value) - { - _propertyId = propertyId; - _propertyDescriptor = propertyDescriptor; - _value = value; - } - - public AttributeData(String propertyName, @Nullable GWTPropertyDescriptor propertyDescriptor, @Nullable String value) - { - _propertyName = propertyName; - _propertyDescriptor = propertyDescriptor; - _value = value; - } - - public AttributeData() - {} - - public int getPropertyId() - { - return _propertyId; - } - - public void setPropertyId(int propertyId) - { - _propertyId = propertyId; - } - - public String getPropertyName() - { - return _propertyName; - } - - public void setPropertyName(String propertyName) - { - _propertyName = propertyName; - } - - public ValidationException getException() - { - return _exception; - } - - public void setException(Event event, ValidationException exception) - { - _exception = exception; - event.updateExceptionCount(exception); - } - - @Nullable - public GWTPropertyDescriptor getPropertyDescriptor() - { - return _propertyDescriptor; - } - - public void setPropertyDescriptor(GWTPropertyDescriptor propertyDescriptor) - { - _propertyDescriptor = propertyDescriptor; - } - - @Nullable - public String getValue() - { - return _value; - } - - public void setValue(String value) - { - _value = value; - } - - @NotNull - public JSONObject toJSON(Container c, User u) - { - JSONObject json = new JSONObject(); - if (getPropertyId() != 0) - json.put(ATTRIBUTE_DATA_PROPERTY_ID, getPropertyId()); - - if (getPropertyName() != null) - json.put(ATTRIBUTE_DATA_PROPERTY_NAME, getPropertyName()); - - if (getPropertyDescriptor() != null) - json.put(ATTRIBUTE_DATA_PROPERTY_DESCRIPTOR, SNDService.get().convertPropertyDescriptorToJson(c, u, getPropertyDescriptor(), true)); - - // We want to ensure the attribute is returned even if null - json.put(ATTRIBUTE_DATA_VALUE, getValue() == null ? JSONObject.NULL : getValue()); - - if (_exception != null) - { - JSONObject jsonException = new JSONObject(); - jsonException.put(Event.SND_EXCEPTION_MSG_JSON, _exception.getMessage()); - jsonException.put(Event.SND_EXCEPTION_SEVERITY_JSON, _exception.getSeverity()); - json.put(Event.SND_EXCEPTION_JSON, jsonException); - } - - return json; - } -} diff --git a/api-src/org/labkey/api/snd/Category.java b/api-src/org/labkey/api/snd/Category.java deleted file mode 100644 index 8091ff90..00000000 --- a/api-src/org/labkey/api/snd/Category.java +++ /dev/null @@ -1,136 +0,0 @@ -/* - * Copyright (c) 2018 LabKey Corporation - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.labkey.api.snd; - -import org.jetbrains.annotations.NotNull; -import org.jetbrains.annotations.Nullable; -import org.labkey.api.data.Container; -import org.labkey.api.module.Module; -import org.labkey.api.module.ModuleLoader; -import org.labkey.api.security.HasPermission; -import org.labkey.api.security.SecurableResource; -import org.labkey.api.security.User; -import org.labkey.api.util.GUID; - -import java.util.Collections; -import java.util.List; - -public class Category implements SecurableResource, HasPermission -{ - private int _categoryId; - private String _description; - private boolean _active; - private GUID _objectId; - private Container _container; - - public int getCategoryId() - { - return _categoryId; - } - - public void setCategoryId(int categoryId) - { - _categoryId = categoryId; - } - - public String getDescription() - { - return _description; - } - - public void setDescription(String description) - { - _description = description; - } - - public boolean isActive() - { - return _active; - } - - public void setActive(boolean active) - { - _active = active; - } - - public GUID getObjectId() - { - return _objectId; - } - - public void setObjectId(GUID objectId) - { - _objectId = objectId; - } - - public Container getContainer() - { - return _container; - } - - public void setContainer(Container container) - { - _container = container; - } - - @Override - public @NotNull String getResourceId() - { - return _objectId.toString(); - } - - @Override - public @NotNull String getResourceName() - { - return "SND.Category." + _categoryId; - } - - @Override - public @NotNull String getResourceDescription() - { - return _description; - } - - @Override - public @NotNull Module getSourceModule() - { - return ModuleLoader.getInstance().getModule("SND"); - } - - @Override - public @Nullable SecurableResource getParentResource() - { - return null; - } - - @Override - public @NotNull Container getResourceContainer() - { - return _container; - } - - @Override - public @NotNull List getChildResources(User user) - { - return Collections.emptyList(); - } - - @Override - public boolean mayInheritPolicy() - { - return false; - } -} diff --git a/api-src/org/labkey/api/snd/Event.java b/api-src/org/labkey/api/snd/Event.java deleted file mode 100644 index a1ac4df9..00000000 --- a/api-src/org/labkey/api/snd/Event.java +++ /dev/null @@ -1,489 +0,0 @@ -/* - * Copyright (c) 2018 LabKey Corporation - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.labkey.api.snd; - -import org.jetbrains.annotations.NotNull; -import org.jetbrains.annotations.Nullable; -import org.json.JSONArray; -import org.json.JSONObject; -import org.labkey.api.collections.ArrayListMap; -import org.labkey.api.data.Container; -import org.labkey.api.gwt.client.model.GWTPropertyDescriptor; -import org.labkey.api.query.BatchValidationException; -import org.labkey.api.query.ValidationException; -import org.labkey.api.security.User; -import org.labkey.api.util.DateUtil; - -import java.util.Comparator; -import java.util.Date; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.Set; -import java.util.TreeSet; - -import static org.labkey.api.snd.EventNarrativeOption.HTML_NARRATIVE; -import static org.labkey.api.snd.EventNarrativeOption.REDACTED_HTML_NARRATIVE; -import static org.labkey.api.snd.EventNarrativeOption.REDACTED_TEXT_NARRATIVE; -import static org.labkey.api.snd.EventNarrativeOption.TEXT_NARRATIVE; - -/** - * Class for event data and related methods. Used when saving, updating, deleting and getting an event - */ -public class Event -{ - private Integer _eventId; - private String _subjectId; - private Date _date; - private String _projectIdRev; - private String _note; - private Integer _noteId; - private List _eventData; - private String _parentObjectId; - private Map narratives; - private Map _extraFields = new HashMap<>(); - private Integer _qcState; - private String _objectId; - - // This will store a count of the different severity of exceptions - private Map _exceptionCount = new HashMap<>(); - private ValidationException _eventException = null; - - public static final String EVENT_ID = "eventId"; - public static final String EVENT_SUBJECT_ID = "subjectId"; - public static final String EVENT_DATE = "date"; - public static final String EVENT_PROJECT_ID_REV = "projectIdRev"; - public static final String EVENT_NOTE = "note"; - public static final String EVENT_QCSTATE = "qcState"; - public static final String EVENT_DATA = "eventData"; - public static final String EVENT_PARENT_OBJECTID = "parentObjectId"; - public static final String EVENT_CONTAINER = "Container"; - public static final String EVENT_OBJECTID = "ObjectId"; - - public static final String DATE_TIME_FORMAT = "yyyy-MM-dd'T'HH:mm:ss"; // ISO8601 w/24-hour time and 'T' character - - public static final String SND_EVENT_NAMESPACE = "SND.EventData"; - - public static final String SND_EVENT_DATE_CSS_CLASS = "snd-event-date"; - public static final String SND_EVENT_SUBJECT_CSS_CLASS = "snd-event-subject"; - public static final String SND_EVENT_NOTE_CSS_CLASS = "snd-event-note"; - - public static final String SND_EXCEPTION_MSG_JSON = "message"; - public static final String SND_EXCEPTION_SEVERITY_JSON = "severity"; - public static final String SND_EXCEPTION_JSON = "exception"; - - public Event(@Nullable Integer eventId, String subjectId, @Nullable Date date, @NotNull String projectIdRev, @Nullable String note, @Nullable List eventData, @NotNull Container c, @Nullable String objectId) - { - _eventId = eventId != null ? eventId : SNDSequencer.EVENTID.ensureId(c, null); - _subjectId = subjectId; - _date = date; - _projectIdRev = projectIdRev; - _note = note; - _eventData = eventData; - _noteId = SNDSequencer.EVENTID.ensureId(c, null); - _objectId = objectId; - } - - public Event () {} - - @Nullable - public Integer getEventId() - { - return _eventId; - } - - public void setEventId(Integer eventId) - { - _eventId = eventId; - } - - public String getSubjectId() - { - return _subjectId; - } - - public void setSubjectId(String subjectId) - { - _subjectId = subjectId; - } - - @Nullable - public Date getDate() - { - return _date; - } - - public void setDate(Date date) - { - _date = date; - } - - @Nullable - public String getProjectIdRev() - { - return _projectIdRev; - } - - public void setProjectIdRev(String projectIdRev) - { - _projectIdRev = projectIdRev; - } - - @Nullable - public String getParentObjectId() - { - return _parentObjectId; - } - - public void setParentObjectId(String parentObjectId) - { - _parentObjectId = parentObjectId; - } - - @Nullable - public String getNote() - { - return _note; - } - - public void setNote(String note) - { - _note = note; - } - - @Nullable - public Integer getNoteId() - { - return _noteId; - } - - public void setNoteId(Integer noteId) - { - _noteId = noteId; - } - - @Nullable - public List getEventData() - { - return _eventData; - } - - public void setEventData(List eventData) - { - _eventData = eventData; - } - - @NotNull - public Map getExtraFields() - { - return _extraFields; - } - - public void setExtraFields(@NotNull Map extraFields) - { - _extraFields = extraFields; - } - - public Map getNarratives() - { - return narratives; - } - - public void setNarratives(Map narratives) - { - this.narratives = narratives; - } - - public Integer getQcState() - { - return _qcState; - } - - @Nullable - public QCStateEnum getQcState(Container c, User u) - { - if (_qcState == null) - { - return null; - } - - return SNDService.get().getQCState(c, u, _qcState); - } - - public void setQcState(Integer qcState) - { - _qcState = qcState; - } - - public void setQcState(Container c, User u, QCStateEnum qcState) - { - _qcState = SNDService.get().getQCStateId(c, u, qcState); - } - - public String getObjectId() - { - return _objectId; - } - - public void setObjectId(String objectId) - { - _objectId = objectId; - } - - public ValidationException getException() - { - return _eventException; - } - - public void setException(ValidationException eventException) - { - _eventException = eventException; - } - - public Map getExceptionCountMap() - { - return _exceptionCount; - } - - public void updateExceptionCount(ValidationException e) - { - Integer count = _exceptionCount.get(e.getSeverity()); - if (count != null) - { - count++; - } - else - { - count = 1; - } - - _exceptionCount.put(e.getSeverity(), count); - } - - public Integer getErrorCount() - { - Integer count = _exceptionCount.get(ValidationException.SEVERITY.ERROR); - return count == null ? 0 : count; - } - - public void addBatchValidationExceptions(BatchValidationException bve) - { - int count; - for (ValidationException ve : bve.getRowErrors()) - { - count = 0; - if (_exceptionCount.get(ve.getSeverity()) != null) - { - count = _exceptionCount.get(ve.getSeverity()) + 1; - } - _exceptionCount.put(ve.getSeverity(), count); - if (ve.getSeverity() == ValidationException.SEVERITY.ERROR) - _eventException = ve; - } - } - - public boolean hasErrors() - { - Integer count = _exceptionCount.get(ValidationException.SEVERITY.ERROR); - if (count != null && count > 0) - return true; - - return (_eventException != null && _eventException.getSeverity() == ValidationException.SEVERITY.ERROR); - } - - public boolean hasErrorsWarningsOrInfo() - { - Integer errorCount = _exceptionCount.get(ValidationException.SEVERITY.ERROR); - Integer warningCount = _exceptionCount.get(ValidationException.SEVERITY.WARN); - Integer infoCount = _exceptionCount.get(ValidationException.SEVERITY.INFO); - if ((errorCount != null && errorCount > 0) || (warningCount != null && warningCount > 0) || (infoCount != null && infoCount > 0)) - return true; - - return (_eventException != null); - } - - @NotNull - public Map getEventRow(Container c) - { - Map eventValues = new ArrayListMap<>(); - if (getEventId() != null) - eventValues.put(EVENT_ID, getEventId()); - - eventValues.put(EVENT_SUBJECT_ID, getSubjectId()); - eventValues.put(EVENT_DATE, getDate()); - eventValues.put(EVENT_PARENT_OBJECTID, getParentObjectId()); - eventValues.put(EVENT_QCSTATE, getQcState()); - eventValues.put(EVENT_CONTAINER, c.getId()); - eventValues.put(EVENT_OBJECTID, getObjectId()); - - Map extras = getExtraFields(); - for (GWTPropertyDescriptor gpd : extras.keySet()) - { - eventValues.put(gpd.getName(), extras.get(gpd)); - } - - return eventValues; - } - - @NotNull - public Map getEventNotesRow(Container c) - { - Map eventValues = new ArrayListMap<>(); - if (getEventId() != null) - eventValues.put(EVENT_ID, getEventId()); - - eventValues.put(EVENT_NOTE, getNote()); - eventValues.put(EVENT_CONTAINER, c.getId()); - - return eventValues; - } - - @NotNull - public JSONObject toJSON(Container c, User u) - { - JSONObject json = new JSONObject(); - json.put(EVENT_ID, getEventId()); - json.put(EVENT_SUBJECT_ID, getSubjectId()); - - if (getDate() != null) - json.put(EVENT_DATE, DateUtil.formatDateTime(getDate(), DATE_TIME_FORMAT)); - - json.put(EVENT_PROJECT_ID_REV, getProjectIdRev()); - json.put(EVENT_NOTE, getNote()); - - if (_qcState != null) - { - json.put(EVENT_QCSTATE, getQcState(c, u).getName()); - } - if (_objectId != null) - { - json.put(EVENT_OBJECTID, getObjectId()); - } - - JSONArray eventDataJson = new JSONArray(); - if (getEventData() != null) - { - for (EventData eventData : getEventData()) - { - eventDataJson.put(eventData.toJSON(c, u)); - } - } - json.put(EVENT_DATA, eventDataJson); - - JSONArray extras = new JSONArray(); - Map extraFields = getExtraFields(); - if (extraFields != null) - { - JSONObject jsonExtra; - Set keys = new TreeSet<>( - Comparator.comparing(GWTPropertyDescriptor::getName) - ); - keys.addAll(extraFields.keySet()); - for (GWTPropertyDescriptor extraPd : keys) - { - jsonExtra = SNDService.get().convertPropertyDescriptorToJson(c, u, extraPd, true); - jsonExtra.put("value", extraFields.get(extraPd)); - extras.put(jsonExtra); - } - - json.put("extraFields", extras); - } - - if (_eventException != null) - { - JSONObject jsonException = new JSONObject(); - jsonException.put(Event.SND_EXCEPTION_MSG_JSON, _eventException.getMessage()); - jsonException.put(Event.SND_EXCEPTION_SEVERITY_JSON, _eventException.getSeverity()); - json.put(Event.SND_EXCEPTION_JSON, jsonException); - } - else - { - StringBuilder msg = new StringBuilder(); - Integer count = _exceptionCount.get(ValidationException.SEVERITY.ERROR); - ValidationException.SEVERITY severity = null; - if (count != null && count > 0) - { - severity = ValidationException.SEVERITY.ERROR; - msg.append(count + " error"); - if (count > 1) - msg.append("s"); - } - - count = _exceptionCount.get(ValidationException.SEVERITY.WARN); - if (count != null && count > 0) - { - if (severity == null) - severity = ValidationException.SEVERITY.WARN; - - if (msg.length() > 0) - msg.append(", "); - - msg.append(count + " warning"); - if (count > 1) - msg.append("s"); - } - - count = _exceptionCount.get(ValidationException.SEVERITY.INFO); - if (count != null && count > 0) - { - if (severity == null) - severity = ValidationException.SEVERITY.INFO; - - if (msg.length() > 0) - msg.append(", "); - - msg.append(count + " info"); - if (count > 1) - msg.append("s"); - } - - if (msg.length() > 0) - { - msg.append(" found"); - - JSONObject jsonException = new JSONObject(); - jsonException.put(Event.SND_EXCEPTION_MSG_JSON, msg.toString()); - jsonException.put(Event.SND_EXCEPTION_SEVERITY_JSON, severity); - json.put(Event.SND_EXCEPTION_JSON, jsonException); - } - } - Map narratives = getNarratives(); - if (narratives != null) - { - for (EventNarrativeOption narrativeOption : narratives.keySet()) - { - String narrative = narratives.get(narrativeOption); - switch (narrativeOption) - { - case TEXT_NARRATIVE: - json.put(TEXT_NARRATIVE.getKey(), narrative); - break; - case REDACTED_TEXT_NARRATIVE: - json.put(REDACTED_TEXT_NARRATIVE.getKey(), narrative); - break; - case HTML_NARRATIVE: - json.put(HTML_NARRATIVE.getKey(), narrative); - break; - case REDACTED_HTML_NARRATIVE: - json.put(REDACTED_HTML_NARRATIVE.getKey(), narrative); - break; - } - } - } - - return json; - } -} diff --git a/api-src/org/labkey/api/snd/EventData.java b/api-src/org/labkey/api/snd/EventData.java deleted file mode 100644 index a764eab2..00000000 --- a/api-src/org/labkey/api/snd/EventData.java +++ /dev/null @@ -1,280 +0,0 @@ -/* - * Copyright (c) 2018 LabKey Corporation - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.labkey.api.snd; - -import org.jetbrains.annotations.NotNull; -import org.jetbrains.annotations.Nullable; -import org.json.JSONArray; -import org.json.JSONObject; -import org.labkey.api.collections.ArrayListMap; -import org.labkey.api.data.Container; -import org.labkey.api.gwt.client.model.GWTPropertyDescriptor; -import org.labkey.api.query.ValidationException; -import org.labkey.api.security.User; - -import java.util.ArrayList; -import java.util.Comparator; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.Set; -import java.util.TreeSet; - -/** - * Class for event data and related methods. Used in Event class - */ -public class EventData -{ - private Integer _eventDataId; - private int _superPkgId; - private int _eventId; - private Integer _parentEventDataId; - private Integer _sortOrder; - private String _narrativeTemplate; - private String _objectURI; - private List _subPackages; - private List _attributes = new ArrayList<>(); - private Map _extraFields = new HashMap<>(); - private ValidationException _exception; - - public static final String EVENT_DATA_ID = "eventDataId"; - public static final String EVENT_DATA_SUPER_PACKAGE_ID = "superPkgId"; - public static final String EVENT_DATA_NARRATIVE_TEMPLATE = "narrativeTemplate"; - public static final String EVENT_DATA_SUB_PACKAGES = "subPackages"; - public static final String EVENT_DATA_ATTRIBUTES = "attributes"; - public static final String EVENT_DATA_OBJECTURI = "objectURI"; - public static final String EVENT_DATA_EVENTID = "eventId"; - public static final String EVENT_DATA_PARENT_EVENTDATAID = "parentEventDataId"; - public static final String EVENT_DATA_SORT_ORDER = "sortOrder"; - public static final String EVENT_DATA_CONTAINER = "Container"; - public static final String EVENT_DATA_CSS_CLASS = "snd-event-data"; - public static final String EVENT_DATA_EXTRA_FIELDS = "extraFields"; - - public EventData(@Nullable Integer eventDataId, int superPkgId, @Nullable String narrative, @Nullable List subPackages, @NotNull List attributes) - { - this(eventDataId, superPkgId, narrative, subPackages, attributes, null); - } - public EventData(@Nullable Integer eventDataId, int superPkgId, @Nullable String narrative, @Nullable List subPackages, @NotNull List attributes , @Nullable Integer sortOrder) - { - _eventDataId = eventDataId; - _superPkgId = superPkgId; - _narrativeTemplate = narrative; - _subPackages = subPackages; - _sortOrder = sortOrder; - - if (attributes != null) - _attributes = attributes; - } - public EventData() {} - - @Nullable - public Integer getEventDataId() - { - return _eventDataId; - } - - public void setEventDataId(Integer eventDataId) - { - _eventDataId = eventDataId; - } - - public int getSuperPkgId() - { - return _superPkgId; - } - - public void setSuperPkgId(int superPkgId) - { - _superPkgId = superPkgId; - } - - @Nullable - public Integer getParentEventDataId() - { - return _parentEventDataId; - } - - public void setParentEventDataId(Integer parentEventDataId) - { - _parentEventDataId = parentEventDataId; - } - - @Nullable - public String getNarrativeTemplate() - { - return _narrativeTemplate; - } - - public void setNarrativeTemplate(String narrative) - { - _narrativeTemplate = narrative; - } - - @Nullable - public String getObjectURI() - { - return _objectURI; - } - - public void setObjectURI(String objectURI) - { - _objectURI = objectURI; - } - - public int getEventId() - { - return _eventId; - } - - public void setEventId(int eventId) - { - _eventId = eventId; - } - - public ValidationException getException() - { - return _exception; - } - - public void setException(Event event, ValidationException exception) - { - _exception = exception; - event.updateExceptionCount(exception); - } - - public Integer getSortOrder() - { - return _sortOrder; - } - - public void setSortOrder(Integer sortOrder) - { - _sortOrder = sortOrder; - } - - @Nullable - public List getSubPackages() - { - return _subPackages; - } - - public void setSubPackages(List subPackages) - { - _subPackages = subPackages; - } - - @NotNull - public List getAttributes() - { - return _attributes; - } - - public void setAttributes(@NotNull List attributes) - { - _attributes = attributes; - } - - @NotNull - public Map getExtraFields() - { - return _extraFields; - } - - public void setExtraFields(@NotNull Map extraFields) - { - _extraFields = extraFields; - } - - @NotNull - public Map getEventDataRow(Container c) - { - Map eventDataValues = new ArrayListMap<>(); - eventDataValues.put(EVENT_DATA_ID, getEventDataId()); - eventDataValues.put(EVENT_DATA_SUPER_PACKAGE_ID, getSuperPkgId()); - eventDataValues.put(EVENT_DATA_OBJECTURI, getObjectURI()); - eventDataValues.put(EVENT_DATA_EVENTID, getEventId()); - eventDataValues.put(EVENT_DATA_PARENT_EVENTDATAID, getParentEventDataId()); - eventDataValues.put(EVENT_DATA_CONTAINER, c); - eventDataValues.put(EVENT_DATA_SORT_ORDER, getSortOrder()); - - Map extras = getExtraFields(); - for (GWTPropertyDescriptor gpd : extras.keySet()) - { - eventDataValues.put(gpd.getName(), extras.get(gpd)); - } - - return eventDataValues; - } - - @NotNull - public JSONObject toJSON(Container c, User u) - { - JSONObject json = new JSONObject(); - json.put(EVENT_DATA_ID, getEventDataId()); - json.put(EVENT_DATA_SUPER_PACKAGE_ID, getSuperPkgId()); - json.put(EVENT_DATA_NARRATIVE_TEMPLATE, getNarrativeTemplate()); - json.put(EVENT_DATA_SORT_ORDER, getSortOrder()); - - JSONArray subPackagesJson = new JSONArray(); - if (getSubPackages() != null) - { - for (EventData eventData : getSubPackages()) - { - subPackagesJson.put(eventData.toJSON(c, u)); - } - } - json.put(EVENT_DATA_SUB_PACKAGES, subPackagesJson); - - JSONArray attributesJson = new JSONArray(); - if (getAttributes() != null) - { - for (AttributeData attributeData : getAttributes()) - { - attributesJson.put(attributeData.toJSON(c, u)); - } - } - json.put(EVENT_DATA_ATTRIBUTES, attributesJson); - - JSONArray extras = new JSONArray(); - Map extraFields = getExtraFields(); - if(extraFields != null) - { - JSONObject jsonExtra; - Set keys = new TreeSet<>( - Comparator.comparing(GWTPropertyDescriptor::getName) - ); - keys.addAll(extraFields.keySet()); - for (GWTPropertyDescriptor extraPd : keys) - { - jsonExtra = SNDService.get().convertPropertyDescriptorToJson(c, u, extraPd, true); - jsonExtra.put("value", extraFields.get(extraPd)); - extras.put(jsonExtra); - } - - json.put("extraFields", extras); - } - - if (_exception != null) - { - JSONObject jsonException = new JSONObject(); - jsonException.put(Event.SND_EXCEPTION_MSG_JSON, _exception.getMessage()); - jsonException.put(Event.SND_EXCEPTION_SEVERITY_JSON, _exception.getSeverity()); - json.put(Event.SND_EXCEPTION_JSON, jsonException); - } - - return json; - } -} diff --git a/api-src/org/labkey/api/snd/EventNarrativeOption.java b/api-src/org/labkey/api/snd/EventNarrativeOption.java deleted file mode 100644 index 5726d7e6..00000000 --- a/api-src/org/labkey/api/snd/EventNarrativeOption.java +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright (c) 2018 LabKey Corporation - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.labkey.api.snd; - -public enum EventNarrativeOption -{ - TEXT_NARRATIVE("textNarrative"), - REDACTED_TEXT_NARRATIVE("redactedTextNarrative"), - HTML_NARRATIVE("htmlNarrative"), - REDACTED_HTML_NARRATIVE("redactedHtmlNarrative"); - - private String _key; - - EventNarrativeOption(String key) - { - _key = key; - } - - public String getKey() - { - return _key; - } -} diff --git a/api-src/org/labkey/api/snd/EventNote.java b/api-src/org/labkey/api/snd/EventNote.java deleted file mode 100644 index f13a99d6..00000000 --- a/api-src/org/labkey/api/snd/EventNote.java +++ /dev/null @@ -1,41 +0,0 @@ -package org.labkey.api.snd; - -public class EventNote -{ - private Integer _eventId; - private String _note; - private Integer _eventNoteId; - private String _container; - - public static final String EVENT_ID = "eventId"; - public static final String NOTE = "note"; - public static final String EVENT_NOTE_ID = "eventNoteId"; - public static final String CONTAINER = "Container"; - - public EventNote(Integer eventId, String note, Integer eventNoteId) { - _eventId = eventId; - _note = note; - _eventNoteId = eventNoteId; - } - - public EventNote () {} - - public Integer getEventId() - { - return _eventId; - } - - public void setEventId(Integer eventId) - { - _eventId = eventId; - } - - public String getNote() { return _note; } - - public void setNote(String note) { _note = note; } - - public Integer getEventNoteId() { return _eventNoteId; } - - public void setEventNoteId(Integer eventNoteId) { _eventNoteId = eventNoteId; } - -} diff --git a/api-src/org/labkey/api/snd/EventTrigger.java b/api-src/org/labkey/api/snd/EventTrigger.java deleted file mode 100644 index ed3f9d2e..00000000 --- a/api-src/org/labkey/api/snd/EventTrigger.java +++ /dev/null @@ -1,33 +0,0 @@ -/* - * Copyright (c) 2018 LabKey Corporation - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.labkey.api.snd; - -import org.labkey.api.data.Container; -import org.labkey.api.query.BatchValidationException; -import org.labkey.api.security.User; - -import java.util.List; -import java.util.Map; - -public interface EventTrigger -{ - void onInsert(Container c, User u, TriggerAction triggerAction, Map extraContext); - void onUpdate(Container c, User u, TriggerAction triggerAction, Map extraContext); - default Integer getOrder() - { - return null; - } -} diff --git a/api-src/org/labkey/api/snd/EventTriggerFactory.java b/api-src/org/labkey/api/snd/EventTriggerFactory.java deleted file mode 100644 index ee80b96b..00000000 --- a/api-src/org/labkey/api/snd/EventTriggerFactory.java +++ /dev/null @@ -1,23 +0,0 @@ -/* - * Copyright (c) 2018 LabKey Corporation - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.labkey.api.snd; - -import org.jetbrains.annotations.Nullable; - -public interface EventTriggerFactory -{ - @Nullable EventTrigger createTrigger(String category); -} diff --git a/api-src/org/labkey/api/snd/Package.java b/api-src/org/labkey/api/snd/Package.java deleted file mode 100644 index 7a42c45a..00000000 --- a/api-src/org/labkey/api/snd/Package.java +++ /dev/null @@ -1,366 +0,0 @@ -/* - * Copyright (c) 2017-2018 LabKey Corporation - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.labkey.api.snd; - -import org.jetbrains.annotations.NotNull; -import org.jetbrains.annotations.Nullable; -import org.json.JSONArray; -import org.json.JSONObject; -import org.labkey.api.collections.ArrayListMap; -import org.labkey.api.data.Container; -import org.labkey.api.gwt.client.model.GWTPropertyDescriptor; -import org.labkey.api.security.User; - -import java.util.ArrayList; -import java.util.Comparator; -import java.util.Date; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.Set; -import java.util.TreeMap; -import java.util.TreeSet; - -/** - * Created by marty on 8/4/2017. - * - * Class for package data and related methods. Used when saving, updating, deleting and getting a package - */ -public class Package -{ - private Integer _pkgId; - private String _description; - private String _narrative; - private boolean _repeatable; - private boolean _active; - private boolean _hasEvent; - private boolean _hasProject; - private Date _modified; // column will be used as a timestamp - private Map _categories = new HashMap<>(); - private List _attributes = new ArrayList<>(); - private List _subpackages = new ArrayList<>(); - private Map _extraFields = new HashMap<>(); - private Map _lookups = new TreeMap<>(); - private Integer _qcState; - private Integer _topLevelSuperPkgId; - - public static final String PKG_ID = "pkgId"; - public static final String PKG_DESCRIPTION = "description"; - public static final String PKG_ACTIVE = "active"; - public static final String PKG_REPEATABLE = "repeatable"; - public static final String PKG_TOPLEVEL_SUPERPKG = "superPkgId"; - public static final String PKG_QCSTATE = "qcState"; - public static final String PKG_NARRATIVE = "narrative"; - public static final String PKG_CONTAINER = "container"; - public static final String PKG_HASEVENT = "hasEvent"; - public static final String PKG_HASPROJECT = "hasProject"; - - public static final String PKG_CATEGORIES = "categories"; - public static final String PKG_ATTRIBUTES = "attributes"; - public static final String PKG_SUBPACKAGES = "subPackages"; - public static final String PKG_MODIFIED = "modified"; - - @Nullable - public Integer getPkgId() - { - return _pkgId; - } - - public void setPkgId(int pkgId) - { - _pkgId = pkgId; - } - - @Nullable - public String getDescription() - { - return _description; - } - - public void setDescription(String description) - { - _description = description; - } - - @Nullable - public String getNarrative() - { - return _narrative; - } - - public void setNarrative(String narrative) - { - _narrative = narrative; - } - - public boolean isRepeatable() - { - return _repeatable; - } - - public void setRepeatable(boolean repeatable) - { - _repeatable = repeatable; - } - - public boolean isActive() - { - return _active; - } - - public void setActive(boolean active) - { - _active = active; - } - - public boolean hasEvent() - { - return _hasEvent; - } - - public void setHasEvent(boolean hasEvent) - { - _hasEvent = hasEvent; - } - - public boolean hasProject() - { - return _hasProject; - } - - public void setHasProject(boolean hasProject) - { - _hasProject = hasProject; - } - - @NotNull - public Map getCategories() - { - return _categories; - } - - public void setCategories(@NotNull Map categories) - { - _categories = categories; - } - - @NotNull - public List getAttributes() - { - return _attributes; - } - - public void setAttributes(@NotNull List attributes) - { - _attributes = attributes; - } - - @NotNull - public List getSubpackages() - { - return _subpackages; - } - - public void setSubpackages(@NotNull List subpackages) - { - _subpackages = subpackages; - } - - @NotNull - public Map getExtraFields() - { - return _extraFields; - } - - public void setExtraFields(@NotNull Map extraFields) - { - _extraFields = extraFields; - } - - @NotNull - public Map getLookups() - { - return _lookups; - } - - public void setLookups(@NotNull Map lookups) - { - _lookups = lookups; - } - - @Nullable - public Integer getQcState() - { - return _qcState; - } - - public void setQcState(Integer qcState) - { - _qcState = qcState; - } - - public Date getModified() - { - return _modified; - } - - public void setModified(Date modified) - { - _modified = modified; - } - - @Nullable - public Integer getTopLevelSuperPkgId() - { - return _topLevelSuperPkgId; - } - - public void setTopLevelSuperPkgId(Integer topLevelSuperPkgId) - { - _topLevelSuperPkgId = topLevelSuperPkgId; - } - - @NotNull - public Map getPackageRow(Container c) - { - Map pkgValues = new ArrayListMap<>(); - pkgValues.put(PKG_ID, getPkgId()); - pkgValues.put(PKG_NARRATIVE, getNarrative()); - pkgValues.put(PKG_DESCRIPTION, getDescription()); - pkgValues.put(PKG_ACTIVE, isActive()); - pkgValues.put(PKG_REPEATABLE, isRepeatable()); - pkgValues.put(PKG_QCSTATE, getQcState()); - pkgValues.put(PKG_CONTAINER, c); - pkgValues.put(PKG_MODIFIED, getModified()); - - Map extras = getExtraFields(); - for (GWTPropertyDescriptor gpd : extras.keySet()) - { - pkgValues.put(gpd.getName(), extras.get(gpd)); - } - - return pkgValues; - } - - @NotNull - public List> getCategoryRows(Container c) - { - List> rows = new ArrayList<>(); - Map row; - - for (Integer categoryId : getCategories().keySet()) - { - row = new ArrayListMap<>(); - row.put(PKG_ID, getPkgId()); - row.put("categoryId", categoryId); - row.put(PKG_CONTAINER, c); - rows.add(row); - } - - return rows; - } - - @NotNull - public JSONArray attributesToJson(Container c, User u) - { - JSONArray attributes = new JSONArray(); - if(getAttributes() != null) - { - for (GWTPropertyDescriptor pd : getAttributes()) - { - attributes.put(SNDService.get().convertPropertyDescriptorToJson(c, u, pd, true)); - } - } - - return attributes; - } - - @NotNull - public JSONObject toJSON(Container c, User u) - { - JSONObject json = new JSONObject(); - json.put(PKG_ID, getPkgId()); - json.put(PKG_DESCRIPTION, getDescription()); - json.put(PKG_REPEATABLE, isRepeatable()); - json.put(PKG_ACTIVE, isActive()); - json.put(PKG_NARRATIVE, getNarrative()); - json.put(PKG_HASEVENT, hasEvent()); - json.put(PKG_HASPROJECT, hasProject()); - json.put(PKG_QCSTATE, getQcState()); - json.put(PKG_TOPLEVEL_SUPERPKG, getTopLevelSuperPkgId()); - json.put(PKG_CONTAINER, c.getId()); - json.put(PKG_MODIFIED, getModified()); - - JSONArray categories = new JSONArray(); - - for (Integer categoryId : getCategories().keySet()) - { - categories.put(categoryId); - } - json.put(PKG_CATEGORIES, categories); - - - if (getAttributes() != null) - { - json.put(PKG_ATTRIBUTES, attributesToJson(c, u)); - } - - JSONArray subPackages = new JSONArray(); - if(getSubpackages() != null) - { - for (SuperPackage subPackage : getSubpackages()) - { - subPackages.put(subPackage.toJSON(c, u)); - } - json.put(PKG_SUBPACKAGES, subPackages); - } - - JSONArray extras = new JSONArray(); - Map extraFields = getExtraFields(); - if(extraFields != null) - { - JSONObject jsonExtra; - Set keys = new TreeSet<>( - Comparator.comparing(GWTPropertyDescriptor::getName) - ); - keys.addAll(extraFields.keySet()); - for (GWTPropertyDescriptor extraPd : keys) - { - jsonExtra = SNDService.get().convertPropertyDescriptorToJson(c, u, extraPd, true); - jsonExtra.put("value", extraFields.get(extraPd)); - extras.put(jsonExtra); - } - - json.put("extraFields", extras); - } - - JSONArray lookups = new JSONArray(); - Map lookupMap = getLookups(); - - JSONObject jsonLookup; - for (String key : lookupMap.keySet()) - { - jsonLookup = new JSONObject(); - jsonLookup.put("value", key); - jsonLookup.put("label", lookupMap.get(key)); - lookups.put(jsonLookup); - } - - json.put("attributeLookups", lookups); - - return json; - } -} diff --git a/api-src/org/labkey/api/snd/PackageDomainKind.java b/api-src/org/labkey/api/snd/PackageDomainKind.java deleted file mode 100644 index ae8cca69..00000000 --- a/api-src/org/labkey/api/snd/PackageDomainKind.java +++ /dev/null @@ -1,91 +0,0 @@ -/* - * Copyright (c) 2017-2018 LabKey Corporation - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.labkey.api.snd; - -import org.labkey.api.data.Container; -import org.labkey.api.data.ContainerType; -import org.labkey.api.exp.XarContext; -import org.labkey.api.exp.XarFormatException; -import org.labkey.api.exp.xar.LsidUtils; -import org.labkey.api.module.SimpleModule; -import org.labkey.api.query.ExtendedTableDomainKind; -import org.labkey.api.security.User; -import org.labkey.api.security.permissions.AdminPermission; - -/** - * Created by marty on 8/14/2017. - */ -public class PackageDomainKind extends ExtendedTableDomainKind -{ - private static final String NAMESPACE_PREFIX = "package"; - private static final String SCHEMA_NAME = "snd"; - private static final String KIND_NAME = "Package"; - - private static final String DOMAIN_NAMESPACE_PREFIX_TEMPLATE = NAMESPACE_PREFIX + "-${SchemaName}"; - - @Override - public boolean canCreateDefinition(User user, Container container) - { - return container.hasPermission("PackageDomainKind.canCreateDefinition", user, AdminPermission.class); - } - - @Override - public String generateDomainURI(String schemaName, String tableName, Container c, User u) - { - return getDomainURI(schemaName, tableName, c, u); - } - - public static String getDomainURI(String schemaName, String tableName, Container c, User u) - { - try - { - XarContext xc = getXarContext(schemaName, tableName, c.getContainerFor(ContainerType.DataType.domainDefinitions), u); - return LsidUtils.resolveLsidFromTemplate(SimpleModule.DOMAIN_LSID_TEMPLATE, xc, DOMAIN_NAMESPACE_PREFIX_TEMPLATE); - } - catch (XarFormatException xfe) - { - return null; - } - } - - @Override - protected String getSchemaName() - { - return getPackageSchemaName(); - } - - public static String getPackageSchemaName() - { - return SCHEMA_NAME; - } - - @Override - protected String getNamespacePrefix() - { - return NAMESPACE_PREFIX; - } - - @Override - public String getKindName() - { - return getPackageKindName(); - } - - public static String getPackageKindName() - { - return KIND_NAME; - } -} diff --git a/api-src/org/labkey/api/snd/PlainTextNarrativeDisplayColumn.java b/api-src/org/labkey/api/snd/PlainTextNarrativeDisplayColumn.java deleted file mode 100644 index 9f4687ac..00000000 --- a/api-src/org/labkey/api/snd/PlainTextNarrativeDisplayColumn.java +++ /dev/null @@ -1,63 +0,0 @@ -/* - * Copyright (c) 2018 LabKey Corporation - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.labkey.api.snd; - -import org.labkey.api.data.ColumnInfo; -import org.labkey.api.data.DataColumn; -import org.labkey.api.data.RenderContext; -import org.labkey.api.util.HtmlString; - -public class PlainTextNarrativeDisplayColumn extends DataColumn -{ - public PlainTextNarrativeDisplayColumn(ColumnInfo col) - { - super(col); - } - - @Override - public HtmlString getFormattedHtml(RenderContext ctx) - { - String htmlNarrative = (String)ctx.get(getColumnInfo().getFieldKey()); - return HtmlString.of(removeHtmlTagsFromNarrative(htmlNarrative)); - } - - @Override - public Object getDisplayValue(RenderContext ctx) - { - String htmlNarrative = (String)ctx.get(getColumnInfo().getFieldKey()); - return removeHtmlTagsFromNarrative(htmlNarrative); - } - - public static String removeHtmlTagsFromNarrative(String htmlNarrative) - { - String textNarrative; - - if (htmlNarrative != null && !htmlNarrative.isEmpty()) - { - // first crudely change these three tags to newlines - textNarrative = htmlNarrative.replace("
", "\n"); - textNarrative = textNarrative.replace("
", "\n"); - textNarrative = textNarrative.replace("
", "\n"); - textNarrative = textNarrative.replace(" ", "\s\s\s\s"); - // then crudely remove all other HTML open/close tags, or things that look like them - textNarrative = textNarrative.replaceAll("\\<.*?\\>", ""); - } - else - textNarrative = ""; - - return textNarrative; - } -} diff --git a/api-src/org/labkey/api/snd/Project.java b/api-src/org/labkey/api/snd/Project.java deleted file mode 100644 index c71cf534..00000000 --- a/api-src/org/labkey/api/snd/Project.java +++ /dev/null @@ -1,383 +0,0 @@ -/* - * Copyright (c) 2017-2018 LabKey Corporation - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.labkey.api.snd; - -import org.jetbrains.annotations.NotNull; -import org.jetbrains.annotations.Nullable; -import org.json.JSONArray; -import org.json.JSONObject; -import org.labkey.api.collections.ArrayListMap; -import org.labkey.api.data.Container; -import org.labkey.api.gwt.client.model.GWTPropertyDescriptor; -import org.labkey.api.security.User; -import org.labkey.api.util.DateUtil; -import org.labkey.api.util.GUID; - -import java.util.ArrayList; -import java.util.Comparator; -import java.util.Date; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.Set; -import java.util.TreeSet; - -/** - * Created by marty on 8/4/2017. - * - * Class for project data and related methods. Used when saving, updating, deleting and getting a project - */ - -public class Project -{ - private int _projectId = -1; - private int _revisionNum; - private String _objectId; - private Date _startDate; - private Date _endDate; - private String _description; - private boolean _active; - private int _referenceId; - private boolean _hasEvent; - private boolean _copyRevisedPkgs; - private Date _endDateRevised; - private List _projectItems = new ArrayList<>(); - private Map _extraFields = new HashMap<>(); - - private String _container; - private String _revisedObjectId; - private Integer _revisedRevNum; - - public static final String PROJECT_ID = "projectId"; - public static final String PROJECT_DESCRIPTION = "description"; - public static final String PROJECT_ACTIVE = "active"; - public static final String PROJECT_STARTDATE = "startDate"; - public static final String PROJECT_ENDDATE = "endDate"; - public static final String PROJECT_OBJECTID = "objectId"; - public static final String PROJECT_CONTAINER = "container"; - public static final String PROJECT_REVNUM = "revisionNum"; - public static final String PROJECT_REFID = "referenceId"; - public static final String PROJECT_ITEMS = "projectItems"; - - public static final String PROJECT_HASEVENT = "hasEvent"; - - public Project (int id, @Nullable Integer revNum, boolean edit, boolean revision, @NotNull Container c) - { - _projectId = ((edit || revision) ? id : SNDSequencer.PROJECTID.ensureId(c, id)); - _objectId = ((edit || revision) ? null : GUID.makeGUID()); - _revisionNum = ((edit || revision) ? revNum : 0); - - if (revision) - { - _revisedObjectId = GUID.makeGUID(); - _revisedRevNum = ++revNum; - } - } - - public Project () {} - - public int getProjectId() - { - return _projectId; - } - - public void setProjectId(int projectId) - { - _projectId = projectId; - } - - public int getReferenceId() - { - return _referenceId; - } - - public void setReferenceId(int refId) - { - _referenceId = refId; - } - - @Nullable - public String getContainer() - { - return _container; - } - - public void setContainer(String container) - { - _container = container; - } - - public int getRevisionNum() - { - return _revisionNum; - } - - public void setRevisionNum(int revisionNum) - { - _revisionNum = revisionNum; - } - - @Nullable - public String getObjectId() - { - return _objectId; - } - - public void setObjectId(String objectId) - { - _objectId = objectId; - } - - public void updateObjectId(String objectId) - { - setObjectId(objectId); - for (ProjectItem projectItem : _projectItems) - { - projectItem.setParentObjectId(objectId); - } - } - - @Nullable - public String getRevisedObjectId() - { - return _revisedObjectId; - } - - public void setRevisedObjectId(String revisedObjectId) - { - _revisedObjectId = revisedObjectId; - } - - @Nullable - public Integer getRevisedRevNum() - { - return _revisedRevNum; - } - - public void setRevisedRevNum(Integer revisedRevNum) - { - _revisedRevNum = revisedRevNum; - } - - @Nullable - public Date getStartDate() - { - return _startDate; - } - - @Nullable - public String startDateToString() - { - return DateUtil.formatDateISO8601(getStartDate()); - } - - public void setStartDate(Date startDate) - { - _startDate = startDate; - } - - @Nullable - public Date getEndDate() - { - return _endDate; - } - - @Nullable - public String endDateToString() - { - return DateUtil.formatDateISO8601(getEndDate()); - } - - public void setEndDate(Date endDate) - { - _endDate = endDate; - } - - @Nullable - public String getDescription() - { - return _description; - } - - public void setDescription(String description) - { - _description = description; - } - - public boolean isActive() - { - return _active; - } - - public void setActive(boolean active) - { - _active = active; - } - - public boolean hasEvent() - { - return _hasEvent; - } - - public void setHasEvent(boolean hasEvent) - { - _hasEvent = hasEvent; - } - - public boolean isCopyRevisedPkgs() - { - return _copyRevisedPkgs; - } - - public void setCopyRevisedPkgs(boolean copyRevisedPkgs) - { - _copyRevisedPkgs = copyRevisedPkgs; - } - - @Nullable - public Date getEndDateRevised() - { - return _endDateRevised; - } - - public void setEndDateRevised(Date endDateRevised) - { - _endDateRevised = endDateRevised; - } - - @NotNull - public List getProjectItems() - { - return _projectItems; - } - - public void setProjectItems(@NotNull List subpackages) - { - _projectItems = subpackages; - } - - @NotNull - public Map getExtraFields() - { - return _extraFields; - } - - public void setExtraFields(@NotNull Map extraFields) - { - _extraFields = extraFields; - } - - @NotNull - public Map getProjectRow(Container c) - { - Map projectValues = new ArrayListMap<>(); - projectValues.put(PROJECT_ID, getProjectId()); - projectValues.put(PROJECT_OBJECTID, getObjectId()); - projectValues.put(PROJECT_REVNUM, getRevisionNum()); - projectValues.put(PROJECT_DESCRIPTION, getDescription()); - projectValues.put(PROJECT_ACTIVE, isActive()); - projectValues.put(PROJECT_STARTDATE, getStartDate()); - projectValues.put(PROJECT_ENDDATE, getEndDate()); - projectValues.put(PROJECT_REFID, getReferenceId()); - projectValues.put(PROJECT_CONTAINER, c); - - Map extras = getExtraFields(); - for (GWTPropertyDescriptor gpd : extras.keySet()) - { - projectValues.put(gpd.getName(), extras.get(gpd)); - } - - return projectValues; - } - - @NotNull - public List> getProjectItemRows(Container c) - { - List> rows = new ArrayList<>(); - - for (ProjectItem projectItem : getProjectItems()) - { - rows.add(projectItem.getRow(c)); - } - - return rows; - } - - @NotNull - public JSONObject toJSON(Container c, User u) - { - JSONObject json = new JSONObject(); - json.put(PROJECT_ID, getProjectId()); - json.put(PROJECT_DESCRIPTION, getDescription()); - json.put(PROJECT_ACTIVE, isActive()); - json.put(PROJECT_STARTDATE, startDateToString()); - json.put(PROJECT_REVNUM, getRevisionNum()); - json.put(PROJECT_REFID, getReferenceId()); - json.put(PROJECT_HASEVENT, hasEvent()); - if (getEndDate() != null) - json.put(PROJECT_ENDDATE, endDateToString()); - - if (getProjectItems().size() > 0) - { - JSONArray jsonProjectItems = new JSONArray(); - for (ProjectItem projectItem : getProjectItems()) - { - jsonProjectItems.put(projectItem.toJSON(c, u)); - } - json.put(PROJECT_ITEMS, jsonProjectItems); - } - - JSONArray extras = new JSONArray(); - Map extraFields = getExtraFields(); - if(extraFields.size() > 0) - { - JSONObject jsonExtra; - Set keys = new TreeSet<>( - Comparator.comparing(GWTPropertyDescriptor::getName) - ); - keys.addAll(extraFields.keySet()); - for (GWTPropertyDescriptor extraPd : keys) - { - jsonExtra = SNDService.get().convertPropertyDescriptorToJson(c, u, extraPd, true); - jsonExtra.put("value", extraFields.get(extraPd)); - extras.put(jsonExtra); - } - - json.put("extraFields", extras); - } - - return json; - } - - @NotNull - public Map toShallowMap(Container c, User u) - { - Map map = new ArrayListMap<>(); - - map.put(PROJECT_ID, getProjectId()); - map.put(PROJECT_DESCRIPTION, getDescription()); - map.put(PROJECT_ACTIVE, isActive()); - map.put(PROJECT_STARTDATE, startDateToString()); - map.put(PROJECT_REVNUM, getRevisionNum()); - map.put(PROJECT_REFID, getReferenceId()); - map.put(PROJECT_HASEVENT, hasEvent()); - if (getEndDate() != null) - map.put(PROJECT_ENDDATE, endDateToString()); - map.put(PROJECT_OBJECTID, getObjectId()); - - return map; - } -} diff --git a/api-src/org/labkey/api/snd/ProjectItem.java b/api-src/org/labkey/api/snd/ProjectItem.java deleted file mode 100644 index c1af1e08..00000000 --- a/api-src/org/labkey/api/snd/ProjectItem.java +++ /dev/null @@ -1,154 +0,0 @@ -/* - * Copyright (c) 2017-2018 LabKey Corporation - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.labkey.api.snd; - -import org.jetbrains.annotations.NotNull; -import org.jetbrains.annotations.Nullable; -import org.json.JSONObject; -import org.labkey.api.collections.ArrayListMap; -import org.labkey.api.data.Container; -import org.labkey.api.security.User; - -import java.util.Map; -import java.util.Objects; - -/** - * Created by marty on 8/4/2017. - * - * Class for project item data and related methods. Used in project class. - */ -public class ProjectItem -{ - boolean _active; - int _projectItemId; - int _superPkgId; - String _parentObjectId; - String _container; - SuperPackage _superPackage; - - public static final String PROJECTITEM_ID = "projectItemId"; - public static final String PROJECTITEM_PARENTOBJECTID = "parentObjectId"; - public static final String PROJECTITEM_ACTIVE = "active"; - public static final String PROJECTITEM_CONTAINER = "container"; - public static final String PROJECTITEM_SUPERPKGID = "superPkgId"; - public static final String PROJECTITEM_SUPERPKG = "superPkg"; - - public int getProjectItemId() - { - return _projectItemId; - } - - public void setProjectItemId(int projectItemId) - { - _projectItemId = projectItemId; - } - - public boolean isActive() - { - return _active; - } - - public void setActive(boolean active) - { - _active = active; - } - - public int getSuperPkgId() - { - return _superPkgId; - } - - public void setSuperPkgId(int superPkgId) - { - _superPkgId = superPkgId; - } - - @Nullable - public String getParentObjectId() - { - return _parentObjectId; - } - - public void setParentObjectId(String parentObjectId) - { - _parentObjectId = parentObjectId; - } - - @Nullable - public String getContainer() - { - return _container; - } - - public void setContainer(String container) - { - _container = container; - } - - @Nullable - public SuperPackage getSuperPackage() - { - return _superPackage; - } - - public void setSuperPackage(SuperPackage superPackage) - { - _superPackage = superPackage; - } - - @NotNull - public Map getRow(Container c) - { - Map projectItemValues = new ArrayListMap<>(); - projectItemValues.put(PROJECTITEM_ID, getProjectItemId()); - projectItemValues.put(PROJECTITEM_PARENTOBJECTID, getParentObjectId()); - projectItemValues.put(PROJECTITEM_SUPERPKGID, getSuperPkgId()); - projectItemValues.put(PROJECTITEM_ACTIVE, isActive()); - projectItemValues.put(PROJECTITEM_CONTAINER, c); - - return projectItemValues; - } - - @NotNull - public JSONObject toJSON(Container c, User u) - { - JSONObject json = new JSONObject(); - json.put(PROJECTITEM_ID, getProjectItemId()); - json.put(PROJECTITEM_ACTIVE, isActive()); - json.put(PROJECTITEM_SUPERPKG, getSuperPackage().toJSON(c, u)); - - return json; - } - - @Override - public boolean equals(Object o) - { - if (this == o) return true; - if (o == null || getClass() != o.getClass()) return false; - ProjectItem that = (ProjectItem) o; - return _active == that._active && - _projectItemId == that._projectItemId && - _superPkgId == that._superPkgId && - Objects.equals(_parentObjectId, that._parentObjectId) && - Objects.equals(_container, that._container); - } - - @Override - public int hashCode() - { - return Objects.hash(_active, _projectItemId, _superPkgId, _parentObjectId, _container); - } -} diff --git a/api-src/org/labkey/api/snd/QCStateEnum.java b/api-src/org/labkey/api/snd/QCStateEnum.java deleted file mode 100644 index 2aa98205..00000000 --- a/api-src/org/labkey/api/snd/QCStateEnum.java +++ /dev/null @@ -1,81 +0,0 @@ -/* - * Copyright (c) 2018 LabKey Corporation - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.labkey.api.snd; - -import org.jetbrains.annotations.Nullable; - -public enum QCStateEnum -{ - COMPLETED("Completed", "Record has been completed and is public", true), - REJECTED("Rejected", "Record has been reviewed and rejected", false), - REVIEW_REQUIRED("Review Required", "Review is required prior to public release", false), - IN_PROGRESS("In Progress", "Draft Record, not public", false); - - private String _name; - private String _description; - private boolean _publicData; - - QCStateEnum(String name, String description, boolean publicData) - { - _name = name; - _description = description; - _publicData = publicData; - } - - public String getName() - { - return _name; - } - - public void setName(String name) - { - _name = name; - } - - public String getDescription() - { - return _description; - } - - public void setDescription(String description) - { - _description = description; - } - - public boolean isPublicData() - { - return _publicData; - } - - public void setPublicData(boolean publicData) - { - _publicData = publicData; - } - - @Nullable - public static QCStateEnum getByName(String name) - { - for (QCStateEnum qcStateEnum : QCStateEnum.values()) - { - if (qcStateEnum.getName().equals(name)) - { - return qcStateEnum; - } - } - - return null; - } -} diff --git a/api-src/org/labkey/api/snd/SNDDomainKind.java b/api-src/org/labkey/api/snd/SNDDomainKind.java deleted file mode 100644 index d7c57a07..00000000 --- a/api-src/org/labkey/api/snd/SNDDomainKind.java +++ /dev/null @@ -1,116 +0,0 @@ -/* - * Copyright (c) 2017-2018 LabKey Corporation - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.labkey.api.snd; - -import org.labkey.api.data.CompareType; -import org.labkey.api.data.Container; -import org.labkey.api.data.CoreSchema; -import org.labkey.api.data.SQLFragment; -import org.labkey.api.data.dialect.SqlDialect; -import org.labkey.api.exp.property.Domain; -import org.labkey.api.gwt.client.model.GWTPropertyDescriptor; -import org.labkey.api.query.ExtendedTableDomainKind; -import org.labkey.api.security.User; -import org.labkey.api.security.permissions.AdminPermission; -import org.labkey.api.settings.AppProps; -import org.labkey.data.xml.domainTemplate.DomainTemplateType; -import org.labkey.data.xml.domainTemplate.SNDTemplateType; - -import java.util.HashSet; -import java.util.List; -import java.util.Set; - -/** - * Created by marty on 7/11/2017. - */ -public class SNDDomainKind extends ExtendedTableDomainKind -{ - private final String NAMESPACE_PREFIX = "snd"; - private final String SCHEMA_NAME = "snd"; - private final String KIND_NAME = "SND"; - - - @Override - public boolean canCreateDefinition(User user, Container container) - { - return container.hasPermission("SNDDomainKind.canCreateDefinition", user, AdminPermission.class); - } - - @Override - protected String getSchemaName() - { - return SCHEMA_NAME; - } - - @Override - protected String getNamespacePrefix() - { - return NAMESPACE_PREFIX; - } - - @Override - public String getKindName() - { - return KIND_NAME; - } - - @Override - public boolean ensurePropertyLookup() - { - return true; - } - - @Override - public Set getReservedPropertyNames(Domain domain, User user) - { - Set result = new HashSet<>(); - result.add("Description"); - result.add("Active"); - result.add("ObjectId"); - result.add("QcState"); - result.add("Container"); - result.add("CreatedBy"); - result.add("Created"); - result.add("ModifiedBy"); - result.add("Modified"); - return result; - } - - @Override - public boolean matchesTemplateXML(String templateName, DomainTemplateType template, List properties) - { - return template instanceof SNDTemplateType; - } - - - public static String formatSndDomainURI(int containerRowId, int packageId) - { - return String.format("urn:lsid:%s:package-snd.Folder-%d:Package-%d", - AppProps.getInstance().getDefaultLsidAuthority(), - containerRowId, - packageId); - } - - public static SQLFragment likeSndDomainURI(Integer containerRowId, Integer packageId) - { - String pattern = String.format("urn:lsid:%s:package-snd.Folder-%s:Package-%s", - CompareType.escapeLikePattern(AppProps.getInstance().getDefaultLsidAuthority(), '!'), - null==containerRowId ? "%" : Integer.toString(containerRowId), - null==packageId ? "%" : Integer.toString(packageId) - ); - return new SQLFragment("LIKE ").appendValue(pattern).append(" ESCAPE '!'"); - } -} diff --git a/api-src/org/labkey/api/snd/SNDSequencer.java b/api-src/org/labkey/api/snd/SNDSequencer.java deleted file mode 100644 index 94d1a1e9..00000000 --- a/api-src/org/labkey/api/snd/SNDSequencer.java +++ /dev/null @@ -1,57 +0,0 @@ -/* - * Copyright (c) 2017-2019 LabKey Corporation - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.labkey.api.snd; - -import org.labkey.api.data.Container; -import org.labkey.api.data.DbSequence; -import org.labkey.api.data.DbSequenceManager; - -public enum SNDSequencer -{ - PKGID ("org.labkey.snd.api.Package", 10000), - SUPERPKGID ("org.labkey.snd.api.SuperPackage", 10000), - CATEGORYID ("org.labkey.snd.api.Categories", 100), - PROJECTID ("org.labkey.snd.api.Project", 10000), - PROJECTITEMID ("org.labkey.snd.api.ProjectItem", 30000), - EVENTID ("org.labkey.snd.api.Event", 2000000), - EVENTDATAID ("org.labkey.snd.api.EventData", 5000000); - - private String sequenceName; - private int minId; - - SNDSequencer(String name, int id) - { - sequenceName = name; - minId = id; - } - - private int generateId(Container c) - { - DbSequence sequence = DbSequenceManager.get(c, sequenceName); - sequence.ensureMinimum(minId); - return Math.toIntExact(sequence.next()); - } - - public Integer ensureId(Container container, Integer id) - { - if (id == null || id >= minId || id < 0) - { - return generateId(container); - } - - return id; - } -} diff --git a/api-src/org/labkey/api/snd/SNDService.java b/api-src/org/labkey/api/snd/SNDService.java deleted file mode 100644 index c601108f..00000000 --- a/api-src/org/labkey/api/snd/SNDService.java +++ /dev/null @@ -1,77 +0,0 @@ -/* - * Copyright (c) 2017-2019 LabKey Corporation - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.labkey.api.snd; - -import org.apache.logging.log4j.Logger; -import org.jetbrains.annotations.Nullable; -import org.json.JSONObject; -import org.labkey.api.data.Container; -import org.labkey.api.data.SimpleFilter; -import org.labkey.api.dataiterator.DataIteratorBuilder; -import org.labkey.api.dataiterator.DataIteratorContext; -import org.labkey.api.gwt.client.model.GWTPropertyDescriptor; -import org.labkey.api.module.Module; -import org.labkey.api.security.User; -import org.labkey.api.services.ServiceRegistry; - -import java.io.IOException; -import java.util.ArrayList; -import java.util.Date; -import java.util.List; -import java.util.Map; -import java.util.Set; -import java.util.concurrent.locks.Lock; - -/** - * Created by marty on 8/4/2017. - */ -public interface SNDService -{ - @Nullable - static SNDService get() - { - return ServiceRegistry.get(SNDService.class); - } - - void savePackage(Container c, User u, Package pkg); - void savePackage(Container c, User u, Package pkg, SuperPackage superPkg, boolean cloneFlag); - void savePackage(Container c, User u, Package pkg, SuperPackage superPkg, boolean cloneFlag, boolean isPipelineJob); - void saveSuperPackages(Container c, User u, List superPkgs); - List getPackages(Container c, User u, List pkgIds, boolean includeExtraFields, boolean includeLookups, boolean includeFullSubpackages); - void registerAttributeLookup(Container c, User u, String schema, @Nullable String table); - Map getAttributeLookups(Container c, User u); - Object getDefaultLookupDisplayValue(User u, Container c, String schema, String table, Object key); - void saveProject(Container c, User u, Project project, boolean isRevision); - Project getProject(Container c, User u, int projectId, int revNum); - Event saveEvent(Container c, User u, Event event, boolean validateOnly); - Event getEvent(Container c, User u, int eventId, @Nullable Set narrativeOptions); - JSONObject convertPropertyDescriptorToJson(Container c, User u, GWTPropertyDescriptor pd, boolean resolveLookupValues); - Object normalizeLookupValue(User u, Container c, String schema, String table, Object display); - void registerEventTriggerFactory(Module module, EventTriggerFactory factory); - void unregisterEventTriggerFactory(Module module); - Lock getWriteLock(); - List> getMutableData(DataIteratorBuilder rows, DataIteratorContext dataIteratorContext) throws IOException; - void fillInNarrativeCache(Container c, User u, Logger logger); - void clearNarrativeCache(Container c, User u); - void deleteNarrativeCacheRows(Container c, User u, List> eventIds); - void populateNarrativeCache(Container c, User u, List eventIds, Logger logger, boolean isFullReload); - Map getAllCategories(Container c, User u); - Integer getQCStateId(Container c, User u, QCStateEnum qcState); - QCStateEnum getQCState(Container c, User u, int qcStateId); - List> getActiveProjects(Container c, User u, ArrayList filters, Boolean activeProjectItemsOnly, Date eventDate); - List> getActiveProjects(Container c, User u, ArrayList filters, Boolean activeProjectItemsOnly); - List> getActiveProjects(Container c, User u, ArrayList filters); -} diff --git a/api-src/org/labkey/api/snd/SuperPackage.java b/api-src/org/labkey/api/snd/SuperPackage.java deleted file mode 100644 index 2bf9cd95..00000000 --- a/api-src/org/labkey/api/snd/SuperPackage.java +++ /dev/null @@ -1,264 +0,0 @@ -/* - * Copyright (c) 2017-2018 LabKey Corporation - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.labkey.api.snd; - -import org.jetbrains.annotations.NotNull; -import org.jetbrains.annotations.Nullable; -import org.json.JSONArray; -import org.json.JSONObject; -import org.labkey.api.collections.ArrayListMap; -import org.labkey.api.data.Container; -import org.labkey.api.security.User; - -import java.util.ArrayList; -import java.util.List; -import java.util.Map; -import java.util.function.Function; - -import static org.labkey.api.snd.Package.PKG_ATTRIBUTES; - -/** - * Created by marty on 8/14/2017. - * - * Class for holding super package data and methods. Used when saving, updating, getting and deleting super packages - */ -public class SuperPackage -{ - private Integer _superPkgId; - private List _childPackages; - private Integer _pkgId; - private Package _pkg; - private String _superPkgPath; - private String _treePath; - private Integer _parentSuperPkgId; - private Integer _topLevelPkgId; - private String _description; // From referenced package - private String _narrative; // From referenced package - private Integer _sortOrder; - private Boolean _repeatable; - private boolean _required; - // NOTE: if you add a variable here, add it to the copy constructor, getSuperPackageRow(), and toJson() too! - - public static final String SUPERPKG_ID = "superPkgId"; - public static final String SUPERPKG_PARENTID = "parentSuperPkgId"; - public static final String SUPERPKG_TOP_LEVEL_PKGID = "topLevelPkgId"; - public static final String SUPERPKG_PKGID = "pkgId"; - public static final String SUPERPKG_DESCRIPTION = "description"; - public static final String SUPERPKG_NARRATIVE = "narrative"; - public static final String SUPERPKG_ORDER = "sortOrder"; - public static final String SUPERPKG_REPEATABLE = "repeatable"; - public static final String SUPERPKG_PATH = "superPkgPath"; - public static final String SUPERPKG_TREEPATH = "treePath"; - public static final String SUPERPKG_REQUIRED = "required"; - public static final String SUPERPKG_PKGID_CSS_CLASS = "snd-superpkg-pkg-id"; - - public SuperPackage() - { - - } - - // copy constructor - public SuperPackage(SuperPackage _superPackage) - { - _superPkgId = _superPackage.getSuperPkgId(); // Integers are immutable - _childPackages = new ArrayList<>(); - List childPackages = _superPackage.getChildPackages(); - if (childPackages != null) - { - for (SuperPackage childPackage : _superPackage.getChildPackages()) - _childPackages.add(new SuperPackage(childPackage)); - } - _pkgId = _superPackage.getPkgId(); - _superPkgId = _superPackage.getSuperPkgId(); // Strings are also immutable - _parentSuperPkgId = _superPackage.getParentSuperPkgId(); - _description = _superPackage.getDescription(); - _narrative = _superPackage.getNarrative(); - _sortOrder = _superPackage.getSortOrder(); - _repeatable = _superPackage.getRepeatable(); - _required = _superPackage.getRequired(); - } - - @Nullable - public Integer getParentSuperPkgId() - { - return _parentSuperPkgId; - } - - public void setParentSuperPkgId(Integer parentSuperPkgId) - { - _parentSuperPkgId = parentSuperPkgId; - } - - @Nullable - public Integer getTopLevelPkgId() { return _topLevelPkgId; } - - public void setTopLevelPkgId(Integer topLevelPkgId) { _topLevelPkgId = topLevelPkgId; } - - @Nullable - public List getChildPackages() - { - return _childPackages; - } - - @Nullable - public Integer getSortOrder() - { - return _sortOrder; - } - - public void setSortOrder(Integer sortOrder) - { - _sortOrder = sortOrder; - } - - @Nullable - public String getDescription() - { - return _description; - } - - public void setDescription(String description) - { - _description = description; - } - - @Nullable - public Boolean getRepeatable() { return _repeatable; } - - public void setRepeatable(Boolean repeatable) { _repeatable = repeatable; } - - @Nullable - public String getNarrative() - { - return _narrative; - } - - public void setNarrative(String narrative) - { - _narrative = narrative; - } - - public void setChildPackages(List childPackages) - { - _childPackages = childPackages; - } - - @Nullable - public String getSuperPkgPath() - { - return _superPkgPath; - } - - public void setSuperPkgPath(String superPkgPath) - { - _superPkgPath = superPkgPath; - } - - @Nullable - public String getTreePath() { return _treePath; } - - public void setTreePath(String treePath) { _treePath = treePath; } - - @Nullable - public Integer getSuperPkgId() - { - return _superPkgId; - } - - public void setSuperPkgId(Integer superPkgId) - { - _superPkgId = superPkgId; - } - - @Nullable - public Integer getPkgId() - { - return _pkgId; - } - - public void setPkgId(Integer pkgId) - { - _pkgId = pkgId; - } - - @Nullable - public Package getPkg() - { - return _pkg; - } - - public void setPkg(Package pkg) - { - _pkg = pkg; - } - - public boolean getRequired() - { - return _required; - } - - public void setRequired(boolean required) - { - _required = required; - } - - @NotNull - public Map getSuperPackageRow(Container c) - { - Map superPkgValues = new ArrayListMap<>(); - superPkgValues.put(SUPERPKG_ID, getSuperPkgId()); - superPkgValues.put(SUPERPKG_PARENTID, getParentSuperPkgId()); - superPkgValues.put(SUPERPKG_PKGID, getPkgId()); - superPkgValues.put(SUPERPKG_ORDER, getSortOrder()); - superPkgValues.put(SUPERPKG_REPEATABLE, getRepeatable()); - superPkgValues.put("container", c); - superPkgValues.put(SUPERPKG_PATH, getSuperPkgPath()); - superPkgValues.put(SUPERPKG_REQUIRED, getRequired()); - superPkgValues.put(SUPERPKG_TREEPATH, getTreePath()); - superPkgValues.put(SUPERPKG_TOP_LEVEL_PKGID, getTopLevelPkgId()); - - return superPkgValues; - } - - @NotNull - public JSONObject toJSON(Container c, User u) - { - JSONObject json = new JSONObject(); - json.put(SUPERPKG_ID, getSuperPkgId()); - json.put(SUPERPKG_PKGID, getPkgId()); - json.put(SUPERPKG_DESCRIPTION, getDescription()); - json.put(SUPERPKG_NARRATIVE, getNarrative()); - json.put(SUPERPKG_ORDER, getSortOrder()); - json.put(SUPERPKG_REPEATABLE, getRepeatable()); - json.put(SUPERPKG_REQUIRED, getRequired()); - if (getPkg() != null) - { - json.put(PKG_ATTRIBUTES, getPkg().attributesToJson(c, u)); - } - - JSONArray subPackages = new JSONArray(); - if (getChildPackages() != null) - { - for (SuperPackage subPackage : getChildPackages()) - { - subPackages.put(subPackage.toJSON(c, u)); - } - } - - json.put("subPackages", subPackages); - return json; - } -} diff --git a/api-src/org/labkey/api/snd/TriggerAction.java b/api-src/org/labkey/api/snd/TriggerAction.java deleted file mode 100644 index b5a8c744..00000000 --- a/api-src/org/labkey/api/snd/TriggerAction.java +++ /dev/null @@ -1,90 +0,0 @@ -/* - * Copyright (c) 2018 LabKey Corporation - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.labkey.api.snd; - - -import org.jetbrains.annotations.NotNull; - -import java.util.Map; - -public class TriggerAction -{ - EventTrigger _trigger; - Event _event; - EventData _eventData; - Map _topLevelSuperPkgs; // Maps EventDataId to SuperPackage - SuperPackage _superPackage; - - public TriggerAction(@NotNull EventTrigger trigger, @NotNull Event event, @NotNull EventData eventData, - @NotNull SuperPackage superPackage, @NotNull Map topLevelPkgs) - { - _trigger = trigger; - _event = event; - _eventData = eventData; - _topLevelSuperPkgs = topLevelPkgs; - _superPackage = superPackage; - } - - public EventTrigger getTrigger() - { - return _trigger; - } - - public void setTrigger(EventTrigger trigger) - { - _trigger = trigger; - } - - public Event getEvent() - { - return _event; - } - - public void setEvent(Event event) - { - _event = event; - } - - public EventData getEventData() - { - return _eventData; - } - - public void setEventData(EventData eventData) - { - _eventData = eventData; - } - - public Map getTopLevelSuperPkgs() - { - return _topLevelSuperPkgs; - } - - public void setTopLevelSuperPkgs(Map topLevelSuperPkgsPkgs) - { - _topLevelSuperPkgs = topLevelSuperPkgsPkgs; - } - - public SuperPackage getSuperPackage() - { - return _superPackage; - } - - public void setSuperPackage(SuperPackage superPackage) - { - _superPackage = superPackage; - } -} \ No newline at end of file diff --git a/build.gradle b/build.gradle deleted file mode 100644 index dbd9d7c4..00000000 --- a/build.gradle +++ /dev/null @@ -1,9 +0,0 @@ -import org.labkey.gradle.util.BuildUtils; - -plugins { - id 'org.labkey.build.module' -} - -dependencies { - BuildUtils.addLabKeyDependency(project: project, config: "modules", depProjectPath: BuildUtils.getPlatformModuleProjectPath(project.gradle, "experiment"), depProjectConfig: "published", depExtension: "module") -} diff --git a/module.properties b/module.properties deleted file mode 100644 index 91a49168..00000000 --- a/module.properties +++ /dev/null @@ -1,6 +0,0 @@ -ModuleClass: org.labkey.snd.SNDModule -Label: Structured Narrative Datasets -Description: Dynamically defined hierarchical datasets. -License: Apache 2.0 -LicenseURL: http://www.apache.org/licenses/LICENSE-2.0 -SupportedDatabases: mssql diff --git a/package-lock.json b/package-lock.json deleted file mode 100644 index 9aa30635..00000000 --- a/package-lock.json +++ /dev/null @@ -1,8016 +0,0 @@ -{ - "name": "SND", - "version": "1.0.0", - "lockfileVersion": 3, - "requires": true, - "packages": { - "": { - "name": "SND", - "version": "1.0.0", - "license": "ISC", - "dependencies": { - "@types/react": "15.6.0", - "@types/react-bootstrap": "0.0.52", - "@types/react-dom": "15.5.1", - "@types/react-redux": "4.4.47", - "@types/react-router": "4.0.14", - "@types/react-router-dom": "4.0.7", - "@types/react-router-redux": "5.0.4", - "@types/redux-actions": "1.2.7", - "@types/redux-form": "6.6.2", - "babel-polyfill": "6.26.0", - "history": "4.6.3", - "merge": "1.2.1", - "prop-types": "15.5.10", - "react": "16.8.6", - "react-bootstrap": "0.31.1", - "react-dom": "16.8.6", - "react-redux": "5.0.5", - "react-router": "4.1.2", - "react-router-dom": "4.1.2", - "react-router-redux": "5.0.0-alpha.6", - "redux": "3.7.2", - "redux-actions": "2.2.1", - "redux-form": "6.8.0", - "redux-thunk": "2.2.0" - }, - "devDependencies": { - "@types/enzyme": "2.8.4", - "@types/react-test-renderer": "15.5.2", - "@types/redux-mock-store": "0.0.9", - "babel-core": "6.25.0", - "babel-loader": "7.1.1", - "babel-plugin-react-transform": "2.0.2", - "babel-plugin-transform-es2015-modules-commonjs": "6.24.1", - "babel-preset-env": "1.7.0", - "babel-preset-react": "6.24.1", - "babel-preset-react-hmre": "1.1.1", - "better-npm-run": "0.0.15", - "cors": "2.8.4", - "css-loader": "2.1.1", - "enzyme": "2.9.1", - "express": "4.16.4", - "express-http-proxy": "1.0.6", - "extract-text-webpack-plugin": "3.0.0", - "react-test-renderer": "15.6.1", - "react-transform-hmr": "1.0.4", - "redux-devtools-extension": "2.13.2", - "redux-mock-store": "1.2.3", - "rimraf": "2.6.1", - "style-loader": "0.18.2", - "ts-loader": "2.3.2", - "typescript": "2.4.2", - "webpack": "3.4.1", - "webpack-dev-middleware": "2.0.6", - "webpack-hot-middleware": "2.18.2" - } - }, - "node_modules/@types/cheerio": { - "version": "0.22.8", - "resolved": "https://registry.npmjs.org/@types/cheerio/-/cheerio-0.22.8.tgz", - "integrity": "sha512-LzF540VOFabhS2TR2yYFz2Mu/fTfkA+5AwYddtJbOJGwnYrr2e7fHadT7/Z3jNGJJdCRlO3ySxmW26NgRdwhNA==", - "dev": true - }, - "node_modules/@types/enzyme": { - "version": "2.8.4", - "resolved": "https://registry.npmjs.org/@types/enzyme/-/enzyme-2.8.4.tgz", - "integrity": "sha512-VGvanTriOBYsVvuO47ABam3FatkNeQrNbYdkXSzK7F5AJkRwpH3lVM5ChS0Zp6SclC05tBoas0wYJmfA3t7vsA==", - "dev": true, - "dependencies": { - "@types/cheerio": "*", - "@types/react": "*" - } - }, - "node_modules/@types/history": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/@types/history/-/history-4.6.2.tgz", - "integrity": "sha512-eVAb52MJ4lfPLiO9VvTgv8KaZDEIqCwhv+lXOMLlt4C1YHTShgmMULEg0RrCbnqfYd6QKfHsMp0MiX0vWISpSw==" - }, - "node_modules/@types/react": { - "version": "15.6.0", - "resolved": "https://registry.npmjs.org/@types/react/-/react-15.6.0.tgz", - "integrity": "sha512-cj0xPUuKS+5K9UWeHMeRUc32i7qrDZNKTrW92crNphx8hMy1gVmuJVune7E7NXpFVPn6O7VazXuXeDiCvNXDhg==" - }, - "node_modules/@types/react-bootstrap": { - "version": "0.0.52", - "resolved": "https://registry.npmjs.org/@types/react-bootstrap/-/react-bootstrap-0.0.52.tgz", - "integrity": "sha512-ygCxAjoRp5cHUOc5K2nWVf31Pd92bmYVxswHQKveFR3quYawnNVs8pR3YkxbbsMBCCET7km08+EgbAZToe2/og==", - "dependencies": { - "@types/react": "*" - } - }, - "node_modules/@types/react-dom": { - "version": "15.5.1", - "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-15.5.1.tgz", - "integrity": "sha512-4c+e/QPfvSa48YhgGOcQWoHishTo6BuJqka0Bh8qeLdnK1jS+1Nz8W/w1G17AIjtLxONYFUqmi8qyt+8p/yMFA==", - "dependencies": { - "@types/react": "*" - } - }, - "node_modules/@types/react-redux": { - "version": "4.4.47", - "resolved": "https://registry.npmjs.org/@types/react-redux/-/react-redux-4.4.47.tgz", - "integrity": "sha512-wyFTmLtEymHCjOmVVvsbNqJaGM9Q0x6sZTQfz4XkDj06P8Xe+ys9wKSQHx2Jt9J5Mi7HZnGcJaMFktn60sXluw==", - "dependencies": { - "@types/react": "*", - "redux": "^3.6.0" - } - }, - "node_modules/@types/react-router": { - "version": "4.0.14", - "resolved": "https://registry.npmjs.org/@types/react-router/-/react-router-4.0.14.tgz", - "integrity": "sha512-wbcqBGFv2KcBo0fIief2MJeE5e1Ph9Z35FzWPmadNMzd5dwpFGLVxyDQiLc30u3ehNrgG7JlQcFYLe5YJnToyA==", - "dependencies": { - "@types/history": "*", - "@types/react": "*" - } - }, - "node_modules/@types/react-router-dom": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/@types/react-router-dom/-/react-router-dom-4.0.7.tgz", - "integrity": "sha512-U0MRf2YP/Bf23jKc+9rh9Ugn2JuAGUFfgMGnaHlL5iX7m8VvE5Mt+vuHikR10nysduEUg1Etc8xwBcLEh7E3rw==", - "dependencies": { - "@types/history": "*", - "@types/react": "*", - "@types/react-router": "*" - } - }, - "node_modules/@types/react-router-redux": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/@types/react-router-redux/-/react-router-redux-5.0.4.tgz", - "integrity": "sha512-xX5elU0hUeggBqReX8b0PnUkNtoDX4tH+z4CIXWAAoMnqAH5MUKUEH8L8myQptE8uSKep0wr09MNV9DqdUD+JQ==", - "dependencies": { - "@types/history": "*", - "@types/react": "*", - "redux": "^3.7.2" - } - }, - "node_modules/@types/react-test-renderer": { - "version": "15.5.2", - "resolved": "https://registry.npmjs.org/@types/react-test-renderer/-/react-test-renderer-15.5.2.tgz", - "integrity": "sha512-qlyf4F+iQIVD8/0AmkNqMa3u/hZi956ZPnm8i/LeqvGkuP9jqM8R2QYph6Plvy4SI185Idyl02SYBTF5RDAdVA==", - "dev": true, - "dependencies": { - "@types/react": "*" - } - }, - "node_modules/@types/redux-actions": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/@types/redux-actions/-/redux-actions-1.2.7.tgz", - "integrity": "sha512-V/uwJjkC90gSj613aPF2kqJVFgdfgq1fxDjBSTuTSuMpc7kGRpyylKacWeMOlZlpGPhgrMsfjqrzvlGZI1RioQ==" - }, - "node_modules/@types/redux-form": { - "version": "6.6.2", - "resolved": "https://registry.npmjs.org/@types/redux-form/-/redux-form-6.6.2.tgz", - "integrity": "sha1-8zhARqs2CVeMwo2vbFAjHCWGCgY=", - "dependencies": { - "@types/react": "*", - "redux": "^3.6.0" - } - }, - "node_modules/@types/redux-mock-store": { - "version": "0.0.9", - "resolved": "https://registry.npmjs.org/@types/redux-mock-store/-/redux-mock-store-0.0.9.tgz", - "integrity": "sha512-Azxv7Yx8qN8K/YkYjB9OUJZXZ3vkoSEk7VqvgKl9h2FuGwzyakGdRUQxZfOdTbC1cUB9vJRWZcFQrhR3kIEITA==", - "dev": true, - "dependencies": { - "redux": "^3.6.0", - "redux-mock-store": "^1.2.3" - } - }, - "node_modules/accepts": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.5.tgz", - "integrity": "sha1-63d99gEXI6OxTopywIBcjoZ0a9I=", - "dev": true, - "dependencies": { - "mime-types": "~2.1.18", - "negotiator": "0.6.1" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/acorn": { - "version": "4.0.13", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-4.0.13.tgz", - "integrity": "sha1-EFSVrlNh1pe9GVyCUZLhrX8lN4c=", - "dev": true, - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/acorn-dynamic-import": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/acorn-dynamic-import/-/acorn-dynamic-import-2.0.2.tgz", - "integrity": "sha1-x1K9IQvvZ5UBtsbLf8hPj0cVjMQ=", - "deprecated": "This is probably built in to whatever tool you're using. If you still need it... idk", - "dev": true, - "dependencies": { - "acorn": "^4.0.3" - } - }, - "node_modules/ajv": { - "version": "5.5.2", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz", - "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=", - "dev": true, - "dependencies": { - "co": "^4.6.0", - "fast-deep-equal": "^1.0.0", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.3.0" - } - }, - "node_modules/ajv-errors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/ajv-errors/-/ajv-errors-1.0.1.tgz", - "integrity": "sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==", - "dev": true, - "peerDependencies": { - "ajv": ">=5.0.0" - } - }, - "node_modules/ajv-keywords": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-2.1.1.tgz", - "integrity": "sha1-YXmX/F9gV2iUxDX5QNgZ4TW4B2I=", - "dev": true, - "peerDependencies": { - "ajv": "^5.0.0" - } - }, - "node_modules/align-text": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/align-text/-/align-text-0.1.4.tgz", - "integrity": "sha1-DNkKVhCT810KmSVsIrcGlDP60Rc=", - "dev": true, - "dependencies": { - "kind-of": "^3.0.2", - "longest": "^1.0.1", - "repeat-string": "^1.5.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/align-text/node_modules/kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ansi-html": { - "version": "0.0.7", - "resolved": "https://registry.npmjs.org/ansi-html/-/ansi-html-0.0.7.tgz", - "integrity": "sha1-gTWEAhliqenm/QOflA0S9WynhZ4=", - "dev": true, - "engines": [ - "node >= 0.8.0" - ], - "bin": { - "ansi-html": "bin/ansi-html" - } - }, - "node_modules/ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/arr-diff": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", - "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/arr-flatten": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", - "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/arr-union": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", - "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/array-find-index": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", - "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/array-flatten": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", - "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=", - "dev": true - }, - "node_modules/array-unique": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", - "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/asap": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", - "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=" - }, - "node_modules/asn1.js": { - "version": "4.10.1", - "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.10.1.tgz", - "integrity": "sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==", - "dev": true, - "dependencies": { - "bn.js": "^4.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0" - } - }, - "node_modules/assert": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/assert/-/assert-1.4.1.tgz", - "integrity": "sha1-mZEtWRg2tab1s0XA8H7vwI/GXZE=", - "dev": true, - "dependencies": { - "util": "0.10.3" - } - }, - "node_modules/assert/node_modules/inherits": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", - "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=", - "dev": true - }, - "node_modules/assert/node_modules/util": { - "version": "0.10.3", - "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", - "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=", - "dev": true, - "dependencies": { - "inherits": "2.0.1" - } - }, - "node_modules/assign-symbols": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", - "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/async": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.1.tgz", - "integrity": "sha512-fNEiL2+AZt6AlAw/29Cr0UDe4sRAHCpEHh54WMz+Bb7QfNcFw4h3loofyJpLeQs4Yx7yuqu/2dLgM5hKOs6HlQ==", - "dev": true, - "dependencies": { - "lodash": "^4.17.10" - } - }, - "node_modules/async-each": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.1.tgz", - "integrity": "sha1-GdOGodntxufByF04iu28xW0zYC0=", - "dev": true - }, - "node_modules/atob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.1.tgz", - "integrity": "sha1-ri1acpR38onWDdf5amMUoi3Wwio=", - "dev": true, - "bin": { - "atob": "bin/atob.js" - }, - "engines": { - "node": ">= 4.5.0" - } - }, - "node_modules/babel-code-frame": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", - "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", - "dev": true, - "dependencies": { - "chalk": "^1.1.3", - "esutils": "^2.0.2", - "js-tokens": "^3.0.2" - } - }, - "node_modules/babel-code-frame/node_modules/js-tokens": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", - "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", - "dev": true - }, - "node_modules/babel-core": { - "version": "6.25.0", - "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-6.25.0.tgz", - "integrity": "sha1-fdQrBGPHQunVKW3rPsZ6kyLa1yk=", - "dev": true, - "dependencies": { - "babel-code-frame": "^6.22.0", - "babel-generator": "^6.25.0", - "babel-helpers": "^6.24.1", - "babel-messages": "^6.23.0", - "babel-register": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-template": "^6.25.0", - "babel-traverse": "^6.25.0", - "babel-types": "^6.25.0", - "babylon": "^6.17.2", - "convert-source-map": "^1.1.0", - "debug": "^2.1.1", - "json5": "^0.5.0", - "lodash": "^4.2.0", - "minimatch": "^3.0.2", - "path-is-absolute": "^1.0.0", - "private": "^0.1.6", - "slash": "^1.0.0", - "source-map": "^0.5.0" - } - }, - "node_modules/babel-generator": { - "version": "6.26.1", - "resolved": "https://registry.npmjs.org/babel-generator/-/babel-generator-6.26.1.tgz", - "integrity": "sha512-HyfwY6ApZj7BYTcJURpM5tznulaBvyio7/0d4zFOeMPUmfxkCjHocCuoLa2SAGzBI8AREcH3eP3758F672DppA==", - "dev": true, - "dependencies": { - "babel-messages": "^6.23.0", - "babel-runtime": "^6.26.0", - "babel-types": "^6.26.0", - "detect-indent": "^4.0.0", - "jsesc": "^1.3.0", - "lodash": "^4.17.4", - "source-map": "^0.5.7", - "trim-right": "^1.0.1" - } - }, - "node_modules/babel-helper-builder-binary-assignment-operator-visitor": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.24.1.tgz", - "integrity": "sha1-zORReto1b0IgvK6KAsKzRvmlZmQ=", - "dev": true, - "dependencies": { - "babel-helper-explode-assignable-expression": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" - } - }, - "node_modules/babel-helper-builder-react-jsx": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-helper-builder-react-jsx/-/babel-helper-builder-react-jsx-6.26.0.tgz", - "integrity": "sha1-Of+DE7dci2Xc7/HzHTg+D/KkCKA=", - "dev": true, - "dependencies": { - "babel-runtime": "^6.26.0", - "babel-types": "^6.26.0", - "esutils": "^2.0.2" - } - }, - "node_modules/babel-helper-call-delegate": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-call-delegate/-/babel-helper-call-delegate-6.24.1.tgz", - "integrity": "sha1-7Oaqzdx25Bw0YfiL/Fdb0Nqi340=", - "dev": true, - "dependencies": { - "babel-helper-hoist-variables": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" - } - }, - "node_modules/babel-helper-define-map": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-helper-define-map/-/babel-helper-define-map-6.26.0.tgz", - "integrity": "sha1-pfVtq0GiX5fstJjH66ypgZ+Vvl8=", - "dev": true, - "dependencies": { - "babel-helper-function-name": "^6.24.1", - "babel-runtime": "^6.26.0", - "babel-types": "^6.26.0", - "lodash": "^4.17.4" - } - }, - "node_modules/babel-helper-explode-assignable-expression": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.24.1.tgz", - "integrity": "sha1-8luCz33BBDPFX3BZLVdGQArCLKo=", - "dev": true, - "dependencies": { - "babel-runtime": "^6.22.0", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" - } - }, - "node_modules/babel-helper-function-name": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz", - "integrity": "sha1-00dbjAPtmCQqJbSDUasYOZ01gKk=", - "dev": true, - "dependencies": { - "babel-helper-get-function-arity": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" - } - }, - "node_modules/babel-helper-get-function-arity": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz", - "integrity": "sha1-j3eCqpNAfEHTqlCQj4mwMbG2hT0=", - "dev": true, - "dependencies": { - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" - } - }, - "node_modules/babel-helper-hoist-variables": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.24.1.tgz", - "integrity": "sha1-HssnaJydJVE+rbyZFKc/VAi+enY=", - "dev": true, - "dependencies": { - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" - } - }, - "node_modules/babel-helper-optimise-call-expression": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-optimise-call-expression/-/babel-helper-optimise-call-expression-6.24.1.tgz", - "integrity": "sha1-96E0J7qfc/j0+pk8VKl4gtEkQlc=", - "dev": true, - "dependencies": { - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" - } - }, - "node_modules/babel-helper-regex": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-helper-regex/-/babel-helper-regex-6.26.0.tgz", - "integrity": "sha1-MlxZ+QL4LyS3T6zu0DY5VPZJXnI=", - "dev": true, - "dependencies": { - "babel-runtime": "^6.26.0", - "babel-types": "^6.26.0", - "lodash": "^4.17.4" - } - }, - "node_modules/babel-helper-remap-async-to-generator": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz", - "integrity": "sha1-XsWBgnrXI/7N04HxySg5BnbkVRs=", - "dev": true, - "dependencies": { - "babel-helper-function-name": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" - } - }, - "node_modules/babel-helper-replace-supers": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-replace-supers/-/babel-helper-replace-supers-6.24.1.tgz", - "integrity": "sha1-v22/5Dk40XNpohPKiov3S2qQqxo=", - "dev": true, - "dependencies": { - "babel-helper-optimise-call-expression": "^6.24.1", - "babel-messages": "^6.23.0", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" - } - }, - "node_modules/babel-helpers": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helpers/-/babel-helpers-6.24.1.tgz", - "integrity": "sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI=", - "dev": true, - "dependencies": { - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1" - } - }, - "node_modules/babel-loader": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-7.1.1.tgz", - "integrity": "sha1-uHE0yLEuPkwqlOBUYIW8aAorhIg=", - "dev": true, - "dependencies": { - "find-cache-dir": "^1.0.0", - "loader-utils": "^1.0.2", - "mkdirp": "^0.5.1" - }, - "engines": { - "node": ">=4" - }, - "peerDependencies": { - "babel-core": "6 || 7 || ^7.0.0-alpha || ^7.0.0-beta || ^7.0.0-rc", - "webpack": "2 || 3" - } - }, - "node_modules/babel-messages": { - "version": "6.23.0", - "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz", - "integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=", - "dev": true, - "dependencies": { - "babel-runtime": "^6.22.0" - } - }, - "node_modules/babel-plugin-check-es2015-constants": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.22.0.tgz", - "integrity": "sha1-NRV7EBQm/S/9PaP3XH0ekYNbv4o=", - "dev": true, - "dependencies": { - "babel-runtime": "^6.22.0" - } - }, - "node_modules/babel-plugin-react-transform": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/babel-plugin-react-transform/-/babel-plugin-react-transform-2.0.2.tgz", - "integrity": "sha1-UVu/qZaJOYEULZCx+bFjXeKZUQk=", - "dev": true, - "dependencies": { - "lodash": "^4.6.1" - } - }, - "node_modules/babel-plugin-syntax-async-functions": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz", - "integrity": "sha1-ytnK0RkbWtY0vzCuCHI5HgZHvpU=", - "dev": true - }, - "node_modules/babel-plugin-syntax-exponentiation-operator": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz", - "integrity": "sha1-nufoM3KQ2pUoggGmpX9BcDF4MN4=", - "dev": true - }, - "node_modules/babel-plugin-syntax-flow": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-flow/-/babel-plugin-syntax-flow-6.18.0.tgz", - "integrity": "sha1-TDqyCiryaqIM0lmVw5jE63AxDI0=", - "dev": true - }, - "node_modules/babel-plugin-syntax-jsx": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz", - "integrity": "sha1-CvMqmm4Tyno/1QaeYtew9Y0NiUY=", - "dev": true - }, - "node_modules/babel-plugin-syntax-trailing-function-commas": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.22.0.tgz", - "integrity": "sha1-ugNgk3+NBuQBgKQ/4NVhb/9TLPM=", - "dev": true - }, - "node_modules/babel-plugin-transform-async-to-generator": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz", - "integrity": "sha1-ZTbjeK/2yx1VF6wOQOs+n8jQh2E=", - "dev": true, - "dependencies": { - "babel-helper-remap-async-to-generator": "^6.24.1", - "babel-plugin-syntax-async-functions": "^6.8.0", - "babel-runtime": "^6.22.0" - } - }, - "node_modules/babel-plugin-transform-es2015-arrow-functions": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz", - "integrity": "sha1-RSaSy3EdX3ncf4XkQM5BufJE0iE=", - "dev": true, - "dependencies": { - "babel-runtime": "^6.22.0" - } - }, - "node_modules/babel-plugin-transform-es2015-block-scoped-functions": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-block-scoped-functions/-/babel-plugin-transform-es2015-block-scoped-functions-6.22.0.tgz", - "integrity": "sha1-u8UbSflk1wy42OC5ToICRs46YUE=", - "dev": true, - "dependencies": { - "babel-runtime": "^6.22.0" - } - }, - "node_modules/babel-plugin-transform-es2015-block-scoping": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-block-scoping/-/babel-plugin-transform-es2015-block-scoping-6.26.0.tgz", - "integrity": "sha1-1w9SmcEwjQXBL0Y4E7CgnnOxiV8=", - "dev": true, - "dependencies": { - "babel-runtime": "^6.26.0", - "babel-template": "^6.26.0", - "babel-traverse": "^6.26.0", - "babel-types": "^6.26.0", - "lodash": "^4.17.4" - } - }, - "node_modules/babel-plugin-transform-es2015-classes": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-classes/-/babel-plugin-transform-es2015-classes-6.24.1.tgz", - "integrity": "sha1-WkxYpQyclGHlZLSyo7+ryXolhNs=", - "dev": true, - "dependencies": { - "babel-helper-define-map": "^6.24.1", - "babel-helper-function-name": "^6.24.1", - "babel-helper-optimise-call-expression": "^6.24.1", - "babel-helper-replace-supers": "^6.24.1", - "babel-messages": "^6.23.0", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" - } - }, - "node_modules/babel-plugin-transform-es2015-computed-properties": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-computed-properties/-/babel-plugin-transform-es2015-computed-properties-6.24.1.tgz", - "integrity": "sha1-b+Ko0WiV1WNPTNmZttNICjCBWbM=", - "dev": true, - "dependencies": { - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1" - } - }, - "node_modules/babel-plugin-transform-es2015-destructuring": { - "version": "6.23.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.23.0.tgz", - "integrity": "sha1-mXux8auWf2gtKwh2/jWNYOdlxW0=", - "dev": true, - "dependencies": { - "babel-runtime": "^6.22.0" - } - }, - "node_modules/babel-plugin-transform-es2015-duplicate-keys": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-duplicate-keys/-/babel-plugin-transform-es2015-duplicate-keys-6.24.1.tgz", - "integrity": "sha1-c+s9MQypaePvnskcU3QabxV2Qj4=", - "dev": true, - "dependencies": { - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" - } - }, - "node_modules/babel-plugin-transform-es2015-for-of": { - "version": "6.23.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-for-of/-/babel-plugin-transform-es2015-for-of-6.23.0.tgz", - "integrity": "sha1-9HyVsrYT3x0+zC/bdXNiPHUkhpE=", - "dev": true, - "dependencies": { - "babel-runtime": "^6.22.0" - } - }, - "node_modules/babel-plugin-transform-es2015-function-name": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.24.1.tgz", - "integrity": "sha1-g0yJhTvDaxrw86TF26qU/Y6sqos=", - "dev": true, - "dependencies": { - "babel-helper-function-name": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" - } - }, - "node_modules/babel-plugin-transform-es2015-literals": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-literals/-/babel-plugin-transform-es2015-literals-6.22.0.tgz", - "integrity": "sha1-T1SgLWzWbPkVKAAZox0xklN3yi4=", - "dev": true, - "dependencies": { - "babel-runtime": "^6.22.0" - } - }, - "node_modules/babel-plugin-transform-es2015-modules-amd": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-amd/-/babel-plugin-transform-es2015-modules-amd-6.24.1.tgz", - "integrity": "sha1-Oz5UAXI5hC1tGcMBHEvS8AoA0VQ=", - "dev": true, - "dependencies": { - "babel-plugin-transform-es2015-modules-commonjs": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1" - } - }, - "node_modules/babel-plugin-transform-es2015-modules-commonjs": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.24.1.tgz", - "integrity": "sha1-0+MQtA72ZKNmIiAAl8bUQCmPK/4=", - "dev": true, - "dependencies": { - "babel-plugin-transform-strict-mode": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1", - "babel-types": "^6.24.1" - } - }, - "node_modules/babel-plugin-transform-es2015-modules-systemjs": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-systemjs/-/babel-plugin-transform-es2015-modules-systemjs-6.24.1.tgz", - "integrity": "sha1-/4mhQrkRmpBhlfXxBuzzBdlAfSM=", - "dev": true, - "dependencies": { - "babel-helper-hoist-variables": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1" - } - }, - "node_modules/babel-plugin-transform-es2015-modules-umd": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-umd/-/babel-plugin-transform-es2015-modules-umd-6.24.1.tgz", - "integrity": "sha1-rJl+YoXNGO1hdq22B9YCNErThGg=", - "dev": true, - "dependencies": { - "babel-plugin-transform-es2015-modules-amd": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1" - } - }, - "node_modules/babel-plugin-transform-es2015-object-super": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-object-super/-/babel-plugin-transform-es2015-object-super-6.24.1.tgz", - "integrity": "sha1-JM72muIcuDp/hgPa0CH1cusnj40=", - "dev": true, - "dependencies": { - "babel-helper-replace-supers": "^6.24.1", - "babel-runtime": "^6.22.0" - } - }, - "node_modules/babel-plugin-transform-es2015-parameters": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.24.1.tgz", - "integrity": "sha1-V6w1GrScrxSpfNE7CfZv3wpiXys=", - "dev": true, - "dependencies": { - "babel-helper-call-delegate": "^6.24.1", - "babel-helper-get-function-arity": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" - } - }, - "node_modules/babel-plugin-transform-es2015-shorthand-properties": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-shorthand-properties/-/babel-plugin-transform-es2015-shorthand-properties-6.24.1.tgz", - "integrity": "sha1-JPh11nIch2YbvZmkYi5R8U3jiqA=", - "dev": true, - "dependencies": { - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" - } - }, - "node_modules/babel-plugin-transform-es2015-spread": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.22.0.tgz", - "integrity": "sha1-1taKmfia7cRTbIGlQujdnxdG+NE=", - "dev": true, - "dependencies": { - "babel-runtime": "^6.22.0" - } - }, - "node_modules/babel-plugin-transform-es2015-sticky-regex": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.24.1.tgz", - "integrity": "sha1-AMHNsaynERLN8M9hJsLta0V8zbw=", - "dev": true, - "dependencies": { - "babel-helper-regex": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" - } - }, - "node_modules/babel-plugin-transform-es2015-template-literals": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-template-literals/-/babel-plugin-transform-es2015-template-literals-6.22.0.tgz", - "integrity": "sha1-qEs0UPfp+PH2g51taH2oS7EjbY0=", - "dev": true, - "dependencies": { - "babel-runtime": "^6.22.0" - } - }, - "node_modules/babel-plugin-transform-es2015-typeof-symbol": { - "version": "6.23.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-typeof-symbol/-/babel-plugin-transform-es2015-typeof-symbol-6.23.0.tgz", - "integrity": "sha1-3sCfHN3/lLUqxz1QXITfWdzOs3I=", - "dev": true, - "dependencies": { - "babel-runtime": "^6.22.0" - } - }, - "node_modules/babel-plugin-transform-es2015-unicode-regex": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.24.1.tgz", - "integrity": "sha1-04sS9C6nMj9yk4fxinxa4frrNek=", - "dev": true, - "dependencies": { - "babel-helper-regex": "^6.24.1", - "babel-runtime": "^6.22.0", - "regexpu-core": "^2.0.0" - } - }, - "node_modules/babel-plugin-transform-exponentiation-operator": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz", - "integrity": "sha1-KrDJx/MJj6SJB3cruBP+QejeOg4=", - "dev": true, - "dependencies": { - "babel-helper-builder-binary-assignment-operator-visitor": "^6.24.1", - "babel-plugin-syntax-exponentiation-operator": "^6.8.0", - "babel-runtime": "^6.22.0" - } - }, - "node_modules/babel-plugin-transform-flow-strip-types": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-flow-strip-types/-/babel-plugin-transform-flow-strip-types-6.22.0.tgz", - "integrity": "sha1-hMtnKTXUNxT9wyvOhFaNh0Qc988=", - "dev": true, - "dependencies": { - "babel-plugin-syntax-flow": "^6.18.0", - "babel-runtime": "^6.22.0" - } - }, - "node_modules/babel-plugin-transform-react-display-name": { - "version": "6.25.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-react-display-name/-/babel-plugin-transform-react-display-name-6.25.0.tgz", - "integrity": "sha1-Z+K/Hx6ck6sI25Z5LgU5K/LMKNE=", - "dev": true, - "dependencies": { - "babel-runtime": "^6.22.0" - } - }, - "node_modules/babel-plugin-transform-react-jsx": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-react-jsx/-/babel-plugin-transform-react-jsx-6.24.1.tgz", - "integrity": "sha1-hAoCjn30YN/DotKfDA2R9jduZqM=", - "dev": true, - "dependencies": { - "babel-helper-builder-react-jsx": "^6.24.1", - "babel-plugin-syntax-jsx": "^6.8.0", - "babel-runtime": "^6.22.0" - } - }, - "node_modules/babel-plugin-transform-react-jsx-self": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-react-jsx-self/-/babel-plugin-transform-react-jsx-self-6.22.0.tgz", - "integrity": "sha1-322AqdomEqEh5t3XVYvL7PBuY24=", - "dev": true, - "dependencies": { - "babel-plugin-syntax-jsx": "^6.8.0", - "babel-runtime": "^6.22.0" - } - }, - "node_modules/babel-plugin-transform-react-jsx-source": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-react-jsx-source/-/babel-plugin-transform-react-jsx-source-6.22.0.tgz", - "integrity": "sha1-ZqwSFT9c0tF7PBkmj0vwGX9E7NY=", - "dev": true, - "dependencies": { - "babel-plugin-syntax-jsx": "^6.8.0", - "babel-runtime": "^6.22.0" - } - }, - "node_modules/babel-plugin-transform-regenerator": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-6.26.0.tgz", - "integrity": "sha1-4HA2lvveJ/Cj78rPi03KL3s6jy8=", - "dev": true, - "dependencies": { - "regenerator-transform": "^0.10.0" - } - }, - "node_modules/babel-plugin-transform-strict-mode": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz", - "integrity": "sha1-1fr3qleKZbvlkc9e2uBKDGcCB1g=", - "dev": true, - "dependencies": { - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" - } - }, - "node_modules/babel-polyfill": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-polyfill/-/babel-polyfill-6.26.0.tgz", - "integrity": "sha1-N5k3q8Z9eJWXCtxiHyhM2WbPIVM=", - "dependencies": { - "babel-runtime": "^6.26.0", - "core-js": "^2.5.0", - "regenerator-runtime": "^0.10.5" - } - }, - "node_modules/babel-preset-env": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/babel-preset-env/-/babel-preset-env-1.7.0.tgz", - "integrity": "sha512-9OR2afuKDneX2/q2EurSftUYM0xGu4O2D9adAhVfADDhrYDaxXV0rBbevVYoY9n6nyX1PmQW/0jtpJvUNr9CHg==", - "dev": true, - "dependencies": { - "babel-plugin-check-es2015-constants": "^6.22.0", - "babel-plugin-syntax-trailing-function-commas": "^6.22.0", - "babel-plugin-transform-async-to-generator": "^6.22.0", - "babel-plugin-transform-es2015-arrow-functions": "^6.22.0", - "babel-plugin-transform-es2015-block-scoped-functions": "^6.22.0", - "babel-plugin-transform-es2015-block-scoping": "^6.23.0", - "babel-plugin-transform-es2015-classes": "^6.23.0", - "babel-plugin-transform-es2015-computed-properties": "^6.22.0", - "babel-plugin-transform-es2015-destructuring": "^6.23.0", - "babel-plugin-transform-es2015-duplicate-keys": "^6.22.0", - "babel-plugin-transform-es2015-for-of": "^6.23.0", - "babel-plugin-transform-es2015-function-name": "^6.22.0", - "babel-plugin-transform-es2015-literals": "^6.22.0", - "babel-plugin-transform-es2015-modules-amd": "^6.22.0", - "babel-plugin-transform-es2015-modules-commonjs": "^6.23.0", - "babel-plugin-transform-es2015-modules-systemjs": "^6.23.0", - "babel-plugin-transform-es2015-modules-umd": "^6.23.0", - "babel-plugin-transform-es2015-object-super": "^6.22.0", - "babel-plugin-transform-es2015-parameters": "^6.23.0", - "babel-plugin-transform-es2015-shorthand-properties": "^6.22.0", - "babel-plugin-transform-es2015-spread": "^6.22.0", - "babel-plugin-transform-es2015-sticky-regex": "^6.22.0", - "babel-plugin-transform-es2015-template-literals": "^6.22.0", - "babel-plugin-transform-es2015-typeof-symbol": "^6.23.0", - "babel-plugin-transform-es2015-unicode-regex": "^6.22.0", - "babel-plugin-transform-exponentiation-operator": "^6.22.0", - "babel-plugin-transform-regenerator": "^6.22.0", - "browserslist": "^3.2.6", - "invariant": "^2.2.2", - "semver": "^5.3.0" - } - }, - "node_modules/babel-preset-env/node_modules/browserslist": { - "version": "3.2.8", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-3.2.8.tgz", - "integrity": "sha512-WHVocJYavUwVgVViC0ORikPHQquXwVh939TaelZ4WDqpWgTX/FsGhl/+P4qBUAGcRvtOgDgC+xftNWWp2RUTAQ==", - "dev": true, - "dependencies": { - "caniuse-lite": "^1.0.30000844", - "electron-to-chromium": "^1.3.47" - }, - "bin": { - "browserslist": "cli.js" - } - }, - "node_modules/babel-preset-flow": { - "version": "6.23.0", - "resolved": "https://registry.npmjs.org/babel-preset-flow/-/babel-preset-flow-6.23.0.tgz", - "integrity": "sha1-5xIYiHCFrpoktb5Baa/7WZgWxJ0=", - "dev": true, - "dependencies": { - "babel-plugin-transform-flow-strip-types": "^6.22.0" - } - }, - "node_modules/babel-preset-react": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-preset-react/-/babel-preset-react-6.24.1.tgz", - "integrity": "sha1-umnfrqRfw+xjm2pOzqbhdwLJE4A=", - "dev": true, - "dependencies": { - "babel-plugin-syntax-jsx": "^6.3.13", - "babel-plugin-transform-react-display-name": "^6.23.0", - "babel-plugin-transform-react-jsx": "^6.24.1", - "babel-plugin-transform-react-jsx-self": "^6.22.0", - "babel-plugin-transform-react-jsx-source": "^6.22.0", - "babel-preset-flow": "^6.23.0" - } - }, - "node_modules/babel-preset-react-hmre": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/babel-preset-react-hmre/-/babel-preset-react-hmre-1.1.1.tgz", - "integrity": "sha1-0hbmDLW41Mhz4Z7Q9U6v8UN7xJI=", - "dev": true, - "dependencies": { - "babel-plugin-react-transform": "^2.0.2", - "react-transform-catch-errors": "^1.0.2", - "react-transform-hmr": "^1.0.3", - "redbox-react": "^1.2.2" - } - }, - "node_modules/babel-register": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-register/-/babel-register-6.26.0.tgz", - "integrity": "sha1-btAhFz4vy0htestFxgCahW9kcHE=", - "dev": true, - "dependencies": { - "babel-core": "^6.26.0", - "babel-runtime": "^6.26.0", - "core-js": "^2.5.0", - "home-or-tmp": "^2.0.0", - "lodash": "^4.17.4", - "mkdirp": "^0.5.1", - "source-map-support": "^0.4.15" - } - }, - "node_modules/babel-register/node_modules/babel-core": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-6.26.0.tgz", - "integrity": "sha1-rzL3izGm/O8RnIew/Y2XU/A6C7g=", - "dev": true, - "dependencies": { - "babel-code-frame": "^6.26.0", - "babel-generator": "^6.26.0", - "babel-helpers": "^6.24.1", - "babel-messages": "^6.23.0", - "babel-register": "^6.26.0", - "babel-runtime": "^6.26.0", - "babel-template": "^6.26.0", - "babel-traverse": "^6.26.0", - "babel-types": "^6.26.0", - "babylon": "^6.18.0", - "convert-source-map": "^1.5.0", - "debug": "^2.6.8", - "json5": "^0.5.1", - "lodash": "^4.17.4", - "minimatch": "^3.0.4", - "path-is-absolute": "^1.0.1", - "private": "^0.1.7", - "slash": "^1.0.0", - "source-map": "^0.5.6" - } - }, - "node_modules/babel-runtime": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", - "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", - "dependencies": { - "core-js": "^2.4.0", - "regenerator-runtime": "^0.11.0" - } - }, - "node_modules/babel-runtime/node_modules/regenerator-runtime": { - "version": "0.11.1", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", - "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==" - }, - "node_modules/babel-template": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz", - "integrity": "sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=", - "dev": true, - "dependencies": { - "babel-runtime": "^6.26.0", - "babel-traverse": "^6.26.0", - "babel-types": "^6.26.0", - "babylon": "^6.18.0", - "lodash": "^4.17.4" - } - }, - "node_modules/babel-traverse": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz", - "integrity": "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=", - "dev": true, - "dependencies": { - "babel-code-frame": "^6.26.0", - "babel-messages": "^6.23.0", - "babel-runtime": "^6.26.0", - "babel-types": "^6.26.0", - "babylon": "^6.18.0", - "debug": "^2.6.8", - "globals": "^9.18.0", - "invariant": "^2.2.2", - "lodash": "^4.17.4" - } - }, - "node_modules/babel-types": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz", - "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=", - "dev": true, - "dependencies": { - "babel-runtime": "^6.26.0", - "esutils": "^2.0.2", - "lodash": "^4.17.4", - "to-fast-properties": "^1.0.3" - } - }, - "node_modules/babylon": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", - "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", - "dev": true, - "bin": { - "babylon": "bin/babylon.js" - } - }, - "node_modules/balanced-match": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", - "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", - "dev": true - }, - "node_modules/base": { - "version": "0.11.2", - "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", - "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", - "dev": true, - "dependencies": { - "cache-base": "^1.0.1", - "class-utils": "^0.3.5", - "component-emitter": "^1.2.1", - "define-property": "^1.0.0", - "isobject": "^3.0.1", - "mixin-deep": "^1.2.0", - "pascalcase": "^0.1.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/base/node_modules/define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "dev": true, - "dependencies": { - "is-descriptor": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/base/node_modules/is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "deprecated": "Please upgrade to v1.0.1", - "dev": true, - "dependencies": { - "kind-of": "^6.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/base/node_modules/is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "deprecated": "Please upgrade to v1.0.1", - "dev": true, - "dependencies": { - "kind-of": "^6.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/base/node_modules/is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "dependencies": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/base64-js": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.0.tgz", - "integrity": "sha512-ccav/yGvoa80BQDljCxsmmQ3Xvx60/UpBIij5QN21W3wBi/hhIC9OoO+KLpu9IJTS9j4DRVJ3aDDF9cMSoa2lw==", - "dev": true - }, - "node_modules/better-npm-run": { - "version": "0.0.15", - "resolved": "https://registry.npmjs.org/better-npm-run/-/better-npm-run-0.0.15.tgz", - "integrity": "sha1-EADtFLT3fIU95aUUiAX35093HPA=", - "dev": true, - "dependencies": { - "commander": "^2.9.0", - "dotenv": "^2.0.0", - "object-assign": "^4.0.1" - }, - "bin": { - "better-npm-run": "index.js", - "bnr": "index.js" - } - }, - "node_modules/big.js": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/big.js/-/big.js-3.2.0.tgz", - "integrity": "sha512-+hN/Zh2D08Mx65pZ/4g5bsmNiZUuChDiQfTUQ7qJr4/kuopCr88xZsAXv6mBoZEsUI4OuGHlX59qE94K2mMW8Q==", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/binary-extensions": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.11.0.tgz", - "integrity": "sha1-RqoXUftqL5PuXmibsQh9SxTGwgU=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/bn.js": { - "version": "4.11.8", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", - "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==", - "dev": true - }, - "node_modules/body-parser": { - "version": "1.18.3", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.18.3.tgz", - "integrity": "sha1-WykhmP/dVTs6DyDe0FkrlWlVyLQ=", - "dev": true, - "dependencies": { - "bytes": "3.0.0", - "content-type": "~1.0.4", - "debug": "2.6.9", - "depd": "~1.1.2", - "http-errors": "~1.6.3", - "iconv-lite": "0.4.23", - "on-finished": "~2.3.0", - "qs": "6.5.2", - "raw-body": "2.3.3", - "type-is": "~1.6.16" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/boolbase": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", - "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=", - "dev": true - }, - "node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", - "dev": true, - "dependencies": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/braces/node_modules/extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "dependencies": { - "is-extendable": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/brorand": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", - "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=", - "dev": true - }, - "node_modules/browserify-aes": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", - "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", - "dev": true, - "dependencies": { - "buffer-xor": "^1.0.3", - "cipher-base": "^1.0.0", - "create-hash": "^1.1.0", - "evp_bytestokey": "^1.0.3", - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, - "node_modules/browserify-cipher": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", - "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", - "dev": true, - "dependencies": { - "browserify-aes": "^1.0.4", - "browserify-des": "^1.0.0", - "evp_bytestokey": "^1.0.0" - } - }, - "node_modules/browserify-des": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", - "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", - "dev": true, - "dependencies": { - "cipher-base": "^1.0.1", - "des.js": "^1.0.0", - "inherits": "^2.0.1", - "safe-buffer": "^5.1.2" - } - }, - "node_modules/browserify-rsa": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz", - "integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=", - "dev": true, - "dependencies": { - "bn.js": "^4.1.0", - "randombytes": "^2.0.1" - } - }, - "node_modules/browserify-sign": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.0.4.tgz", - "integrity": "sha1-qk62jl17ZYuqa/alfmMMvXqT0pg=", - "dev": true, - "dependencies": { - "bn.js": "^4.1.1", - "browserify-rsa": "^4.0.0", - "create-hash": "^1.1.0", - "create-hmac": "^1.1.2", - "elliptic": "^6.0.0", - "inherits": "^2.0.1", - "parse-asn1": "^5.0.0" - } - }, - "node_modules/browserify-zlib": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz", - "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", - "dev": true, - "dependencies": { - "pako": "~1.0.5" - } - }, - "node_modules/buffer": { - "version": "4.9.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.1.tgz", - "integrity": "sha1-bRu2AbB6TvztlwlBMgkwJ8lbwpg=", - "deprecated": "This version of 'buffer' is out-of-date. You must update to v4.9.2 or newer", - "dev": true, - "dependencies": { - "base64-js": "^1.0.2", - "ieee754": "^1.1.4", - "isarray": "^1.0.0" - } - }, - "node_modules/buffer-xor": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", - "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=", - "dev": true - }, - "node_modules/buffer/node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true - }, - "node_modules/builtin-modules": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz", - "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/builtin-status-codes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", - "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=", - "dev": true - }, - "node_modules/bytes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", - "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/cache-base": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", - "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", - "dev": true, - "dependencies": { - "collection-visit": "^1.0.0", - "component-emitter": "^1.2.1", - "get-value": "^2.0.6", - "has-value": "^1.0.0", - "isobject": "^3.0.1", - "set-value": "^2.0.0", - "to-object-path": "^0.3.0", - "union-value": "^1.0.0", - "unset-value": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/camelcase": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz", - "integrity": "sha1-m7UwTS4LVmmLLHWLCKPqqdqlijk=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/caniuse-lite": { - "version": "1.0.30000865", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30000865.tgz", - "integrity": "sha512-vs79o1mOSKRGv/1pSkp4EXgl4ZviWeYReXw60XfacPU64uQWZwJT6vZNmxRF9O+6zu71sJwMxLK5JXxbzuVrLw==", - "dev": true - }, - "node_modules/center-align": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/center-align/-/center-align-0.1.3.tgz", - "integrity": "sha1-qg0yYptu6XIgBBHL1EYckHvCt60=", - "dev": true, - "dependencies": { - "align-text": "^0.1.3", - "lazy-cache": "^1.0.3" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "dev": true, - "dependencies": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/cheerio": { - "version": "0.22.0", - "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-0.22.0.tgz", - "integrity": "sha1-qbqoYKP5tZWmuBsahocxIe06Jp4=", - "dev": true, - "dependencies": { - "css-select": "~1.2.0", - "dom-serializer": "~0.1.0", - "entities": "~1.1.1", - "htmlparser2": "^3.9.1", - "lodash.assignin": "^4.0.9", - "lodash.bind": "^4.1.4", - "lodash.defaults": "^4.0.1", - "lodash.filter": "^4.4.0", - "lodash.flatten": "^4.2.0", - "lodash.foreach": "^4.3.0", - "lodash.map": "^4.4.0", - "lodash.merge": "^4.4.0", - "lodash.pick": "^4.2.1", - "lodash.reduce": "^4.4.0", - "lodash.reject": "^4.4.0", - "lodash.some": "^4.4.0" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/chokidar": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.0.4.tgz", - "integrity": "sha512-z9n7yt9rOvIJrMhvDtDictKrkFHeihkNl6uWMmZlmL6tJtX9Cs+87oK+teBx+JIgzvbX3yZHT3eF8vpbDxHJXQ==", - "deprecated": "Chokidar 2 does not receive security updates since 2019. Upgrade to chokidar 3 with 15x fewer dependencies", - "dev": true, - "dependencies": { - "anymatch": "^2.0.0", - "async-each": "^1.0.0", - "braces": "^2.3.0", - "glob-parent": "^3.1.0", - "inherits": "^2.0.1", - "is-binary-path": "^1.0.0", - "is-glob": "^4.0.0", - "lodash.debounce": "^4.0.8", - "normalize-path": "^2.1.1", - "path-is-absolute": "^1.0.0", - "readdirp": "^2.0.0", - "upath": "^1.0.5" - }, - "optionalDependencies": { - "fsevents": "^1.2.2" - } - }, - "node_modules/chokidar/node_modules/anymatch": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", - "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", - "dev": true, - "dependencies": { - "micromatch": "^3.1.4", - "normalize-path": "^2.1.1" - } - }, - "node_modules/chokidar/node_modules/glob-parent": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", - "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", - "dev": true, - "dependencies": { - "is-glob": "^3.1.0", - "path-dirname": "^1.0.0" - } - }, - "node_modules/chokidar/node_modules/glob-parent/node_modules/is-glob": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", - "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", - "dev": true, - "dependencies": { - "is-extglob": "^2.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/chokidar/node_modules/is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/chokidar/node_modules/is-glob": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.0.tgz", - "integrity": "sha1-lSHHaEXMJhCoUgPd8ICpWML/q8A=", - "dev": true, - "dependencies": { - "is-extglob": "^2.1.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/cipher-base": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", - "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", - "dev": true, - "dependencies": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, - "node_modules/class-utils": { - "version": "0.3.6", - "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", - "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", - "dev": true, - "dependencies": { - "arr-union": "^3.1.0", - "define-property": "^0.2.5", - "isobject": "^3.0.0", - "static-extend": "^0.1.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/class-utils/node_modules/define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, - "dependencies": { - "is-descriptor": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/classnames": { - "version": "2.2.6", - "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.2.6.tgz", - "integrity": "sha512-JR/iSQOSt+LQIWwrwEzJ9uk0xfN3mTVYMwt1Ir5mUcSN6pU+V4zQFFaJsclJbPuAUQH+yfWef6tm7l1quW3C8Q==" - }, - "node_modules/cliui": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-2.1.0.tgz", - "integrity": "sha1-S0dXYP+AJkx2LDoXGQMukcf+oNE=", - "dev": true, - "dependencies": { - "center-align": "^0.1.1", - "right-align": "^0.1.1", - "wordwrap": "0.0.2" - } - }, - "node_modules/cliui/node_modules/wordwrap": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz", - "integrity": "sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=", - "dev": true, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/co": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", - "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=", - "dev": true, - "engines": { - "iojs": ">= 1.0.0", - "node": ">= 0.12.0" - } - }, - "node_modules/code-point-at": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/collection-visit": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", - "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", - "dev": true, - "dependencies": { - "map-visit": "^1.0.0", - "object-visit": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/color-convert": { - "version": "1.9.2", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.2.tgz", - "integrity": "sha512-3NUJZdhMhcdPn8vJ9v2UQJoH0qqoGUkYTgFEPZaPjEtwmmKUfNV46zZmgB2M5M4DCEQHMaCfWHCxiBflLm04Tg==", - "dev": true, - "dependencies": { - "color-name": "1.1.1" - } - }, - "node_modules/color-name": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.1.tgz", - "integrity": "sha1-SxQVMEz1ACjqgWQ2Q72C6gWANok=", - "dev": true - }, - "node_modules/commander": { - "version": "2.16.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.16.0.tgz", - "integrity": "sha512-sVXqklSaotK9at437sFlFpyOcJonxe0yST/AG9DkQKUdIE6IqGIMv4SfAQSKaJbSdVEJYItASCrBiVQHq1HQew==", - "dev": true - }, - "node_modules/commondir": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", - "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", - "dev": true - }, - "node_modules/component-emitter": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz", - "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=", - "dev": true - }, - "node_modules/concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", - "dev": true - }, - "node_modules/console-browserify": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.1.0.tgz", - "integrity": "sha1-8CQcRXMKn8YyOyBtvzjtx0HQuxA=", - "dev": true, - "dependencies": { - "date-now": "^0.1.4" - } - }, - "node_modules/constants-browserify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", - "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=", - "dev": true - }, - "node_modules/content-disposition": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.2.tgz", - "integrity": "sha1-DPaLud318r55YcOoUXjLhdunjLQ=", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/content-type": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", - "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/convert-source-map": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.5.1.tgz", - "integrity": "sha1-uCeAl7m8IpNl3lxiz1/K7YtVmeU=", - "dev": true - }, - "node_modules/cookie": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz", - "integrity": "sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s=", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/cookie-signature": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=", - "dev": true - }, - "node_modules/copy-descriptor": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", - "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/core-js": { - "version": "2.5.7", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.7.tgz", - "integrity": "sha512-RszJCAxg/PP6uzXVXL6BsxSXx/B05oJAQ2vkJRjyjrEcNVycaqOmNb5OTxZPE3xa5gwZduqza6L9JOCenh/Ecw==", - "deprecated": "core-js@<3.23.3 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Some versions have web compatibility issues. Please, upgrade your dependencies to the actual version of core-js." - }, - "node_modules/core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", - "dev": true - }, - "node_modules/cors": { - "version": "2.8.4", - "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.4.tgz", - "integrity": "sha1-K9OB8usgECAQXNUOpZ2mMJBpRoY=", - "dev": true, - "dependencies": { - "object-assign": "^4", - "vary": "^1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/create-ecdh": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.3.tgz", - "integrity": "sha512-GbEHQPMOswGpKXM9kCWVrremUcBmjteUaQ01T9rkKCPDXfUHX0IoP9LpHYo2NPFampa4e+/pFDc3jQdxrxQLaw==", - "dev": true, - "dependencies": { - "bn.js": "^4.1.0", - "elliptic": "^6.0.0" - } - }, - "node_modules/create-hash": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", - "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", - "dev": true, - "dependencies": { - "cipher-base": "^1.0.1", - "inherits": "^2.0.1", - "md5.js": "^1.3.4", - "ripemd160": "^2.0.1", - "sha.js": "^2.4.0" - } - }, - "node_modules/create-hmac": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", - "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", - "dev": true, - "dependencies": { - "cipher-base": "^1.0.3", - "create-hash": "^1.1.0", - "inherits": "^2.0.1", - "ripemd160": "^2.0.0", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" - } - }, - "node_modules/create-react-class": { - "version": "15.6.3", - "resolved": "https://registry.npmjs.org/create-react-class/-/create-react-class-15.6.3.tgz", - "integrity": "sha512-M+/3Q6E6DLO6Yx3OwrWjwHBnvfXXYA7W+dFjt/ZDBemHO1DDZhsalX/NUtnTYclN6GfnBDRh4qRHjcDHmlJBJg==", - "dependencies": { - "fbjs": "^0.8.9", - "loose-envify": "^1.3.1", - "object-assign": "^4.1.1" - } - }, - "node_modules/cross-spawn": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", - "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", - "dev": true, - "dependencies": { - "lru-cache": "^4.0.1", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - } - }, - "node_modules/crypto-browserify": { - "version": "3.12.0", - "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", - "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", - "dev": true, - "dependencies": { - "browserify-cipher": "^1.0.0", - "browserify-sign": "^4.0.0", - "create-ecdh": "^4.0.0", - "create-hash": "^1.1.0", - "create-hmac": "^1.1.0", - "diffie-hellman": "^5.0.0", - "inherits": "^2.0.1", - "pbkdf2": "^3.0.3", - "public-encrypt": "^4.0.0", - "randombytes": "^2.0.0", - "randomfill": "^1.0.3" - }, - "engines": { - "node": "*" - } - }, - "node_modules/css-loader": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-2.1.1.tgz", - "integrity": "sha512-OcKJU/lt232vl1P9EEDamhoO9iKY3tIjY5GU+XDLblAykTdgs6Ux9P1hTHve8nFKy5KPpOXOsVI/hIwi3841+w==", - "dev": true, - "dependencies": { - "camelcase": "^5.2.0", - "icss-utils": "^4.1.0", - "loader-utils": "^1.2.3", - "normalize-path": "^3.0.0", - "postcss": "^7.0.14", - "postcss-modules-extract-imports": "^2.0.0", - "postcss-modules-local-by-default": "^2.0.6", - "postcss-modules-scope": "^2.1.0", - "postcss-modules-values": "^2.0.0", - "postcss-value-parser": "^3.3.0", - "schema-utils": "^1.0.0" - }, - "engines": { - "node": ">= 6.9.0" - }, - "peerDependencies": { - "webpack": "^4.0.0" - } - }, - "node_modules/css-loader/node_modules/ajv": { - "version": "6.10.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.10.0.tgz", - "integrity": "sha512-nffhOpkymDECQyR0mnsUtoCE8RlX38G0rYP+wgLWFyZuUyuuojSSvi/+euOiQBIn63whYwYVIIH1TvE3tu4OEg==", - "dev": true, - "dependencies": { - "fast-deep-equal": "^2.0.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "node_modules/css-loader/node_modules/ajv-keywords": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.4.0.tgz", - "integrity": "sha512-aUjdRFISbuFOl0EIZc+9e4FfZp0bDZgAdOOf30bJmw8VM9v84SHyVyxDfbWxpGYbdZD/9XoKxfHVNmxPkhwyGw==", - "dev": true, - "peerDependencies": { - "ajv": "^6.9.1" - } - }, - "node_modules/css-loader/node_modules/big.js": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", - "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/css-loader/node_modules/camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/css-loader/node_modules/fast-deep-equal": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", - "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", - "dev": true - }, - "node_modules/css-loader/node_modules/json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "node_modules/css-loader/node_modules/json5": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dev": true, - "dependencies": { - "minimist": "^1.2.0" - }, - "bin": { - "json5": "lib/cli.js" - } - }, - "node_modules/css-loader/node_modules/loader-utils": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.2.3.tgz", - "integrity": "sha512-fkpz8ejdnEMG3s37wGL07iSBDg99O9D5yflE9RGNH3hRdx9SOwYfnGYdZOUIZitN8E+E2vkq3MUMYMvPYl5ZZA==", - "dev": true, - "dependencies": { - "big.js": "^5.2.2", - "emojis-list": "^2.0.0", - "json5": "^1.0.1" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/css-loader/node_modules/minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", - "dev": true - }, - "node_modules/css-loader/node_modules/normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/css-loader/node_modules/schema-utils": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", - "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", - "dev": true, - "dependencies": { - "ajv": "^6.1.0", - "ajv-errors": "^1.0.0", - "ajv-keywords": "^3.1.0" - }, - "engines": { - "node": ">= 4" - } - }, - "node_modules/css-select": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-1.2.0.tgz", - "integrity": "sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg=", - "dev": true, - "dependencies": { - "boolbase": "~1.0.0", - "css-what": "2.1", - "domutils": "1.5.1", - "nth-check": "~1.0.1" - } - }, - "node_modules/css-what": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.0.tgz", - "integrity": "sha1-lGfQMsOM+u+58teVASUwYvh/ob0=", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/cssesc": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", - "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", - "dev": true, - "bin": { - "cssesc": "bin/cssesc" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/currently-unhandled": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", - "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=", - "dev": true, - "dependencies": { - "array-find-index": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/d": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/d/-/d-1.0.0.tgz", - "integrity": "sha1-dUu1v+VUUdpppYuU1F9MWwRi1Y8=", - "dev": true, - "dependencies": { - "es5-ext": "^0.10.9" - } - }, - "node_modules/date-now": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/date-now/-/date-now-0.1.4.tgz", - "integrity": "sha1-6vQ5/U1ISK105cx9vvIAZyueNFs=", - "dev": true - }, - "node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/decode-uri-component": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", - "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=", - "dev": true, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/deep-equal": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.0.1.tgz", - "integrity": "sha1-9dJgKStmDghO/0zbyfCK0yR0SLU=" - }, - "node_modules/define-properties": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.2.tgz", - "integrity": "sha1-g6c/L+pWmJj7c3GTyPhzyvbUXJQ=", - "dev": true, - "dependencies": { - "foreach": "^2.0.5", - "object-keys": "^1.0.8" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/define-property": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", - "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", - "dev": true, - "dependencies": { - "is-descriptor": "^1.0.2", - "isobject": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/define-property/node_modules/is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "deprecated": "Please upgrade to v1.0.1", - "dev": true, - "dependencies": { - "kind-of": "^6.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/define-property/node_modules/is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "deprecated": "Please upgrade to v1.0.1", - "dev": true, - "dependencies": { - "kind-of": "^6.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/define-property/node_modules/is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "dependencies": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/des.js": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.0.tgz", - "integrity": "sha1-wHTS4qpqipoH29YfmhXCzYPsjsw=", - "dev": true, - "dependencies": { - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0" - } - }, - "node_modules/destroy": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", - "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=", - "dev": true - }, - "node_modules/detect-indent": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-4.0.0.tgz", - "integrity": "sha1-920GQ1LN9Docts5hnE7jqUdd4gg=", - "dev": true, - "dependencies": { - "repeating": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/diffie-hellman": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", - "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", - "dev": true, - "dependencies": { - "bn.js": "^4.1.0", - "miller-rabin": "^4.0.0", - "randombytes": "^2.0.0" - } - }, - "node_modules/dom-helpers": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/dom-helpers/-/dom-helpers-3.3.1.tgz", - "integrity": "sha512-2Sm+JaYn74OiTM2wHvxJOo3roiq/h25Yi69Fqk269cNUwIXsCvATB6CRSFC9Am/20G2b28hGv/+7NiWydIrPvg==" - }, - "node_modules/dom-serializer": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.0.tgz", - "integrity": "sha1-BzxpdUbOB4DOI75KKOKT5AvDDII=", - "dev": true, - "dependencies": { - "domelementtype": "~1.1.1", - "entities": "~1.1.1" - } - }, - "node_modules/dom-serializer/node_modules/domelementtype": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.1.3.tgz", - "integrity": "sha1-vSh3PiZCiBrsUVRJJCmcXNgiGFs=", - "dev": true - }, - "node_modules/dom-walk": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/dom-walk/-/dom-walk-0.1.1.tgz", - "integrity": "sha1-ZyIm3HTI95mtNTB9+TaroRrNYBg=", - "dev": true - }, - "node_modules/domain-browser": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz", - "integrity": "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==", - "dev": true, - "engines": { - "node": ">=0.4", - "npm": ">=1.2" - } - }, - "node_modules/domelementtype": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.0.tgz", - "integrity": "sha1-sXrtguirWeUt2cGbF1bg/BhyBMI=", - "deprecated": "update to domelementtype@1.3.1", - "dev": true - }, - "node_modules/domhandler": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz", - "integrity": "sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==", - "dev": true, - "dependencies": { - "domelementtype": "1" - } - }, - "node_modules/domutils": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz", - "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=", - "dev": true, - "dependencies": { - "dom-serializer": "0", - "domelementtype": "1" - } - }, - "node_modules/dotenv": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-2.0.0.tgz", - "integrity": "sha1-vXWcNXqqcDZeAclrewvsCKbg2Uk=", - "dev": true - }, - "node_modules/ee-first": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=", - "dev": true - }, - "node_modules/electron-to-chromium": { - "version": "1.3.52", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.52.tgz", - "integrity": "sha1-0tnxJwuko7lnuDHEDvcftNmrXOA=", - "dev": true - }, - "node_modules/elliptic": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.4.0.tgz", - "integrity": "sha1-ysmvh2LIWDYYcAPI3+GT5eLq5d8=", - "dev": true, - "dependencies": { - "bn.js": "^4.4.0", - "brorand": "^1.0.1", - "hash.js": "^1.0.0", - "hmac-drbg": "^1.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.0" - } - }, - "node_modules/emojis-list": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-2.1.0.tgz", - "integrity": "sha1-TapNnbAPmBmIDHn6RXrlsJof04k=", - "dev": true, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/encodeurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/encoding": { - "version": "0.1.12", - "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.12.tgz", - "integrity": "sha1-U4tm8+5izRq1HsMjgp0flIDHS+s=", - "dependencies": { - "iconv-lite": "~0.4.13" - } - }, - "node_modules/enhanced-resolve": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-3.4.1.tgz", - "integrity": "sha1-BCHjOf1xQZs9oT0Smzl5BAIwR24=", - "dev": true, - "dependencies": { - "graceful-fs": "^4.1.2", - "memory-fs": "^0.4.0", - "object-assign": "^4.0.1", - "tapable": "^0.2.7" - }, - "engines": { - "node": ">=4.3.0 <5.0.0 || >=5.10" - } - }, - "node_modules/entities": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.1.tgz", - "integrity": "sha1-blwtClYhtdra7O+AuQ7ftc13cvA=", - "dev": true - }, - "node_modules/enzyme": { - "version": "2.9.1", - "resolved": "https://registry.npmjs.org/enzyme/-/enzyme-2.9.1.tgz", - "integrity": "sha1-B9XOaRJBJA+4F78sSxjW5TAkDfY=", - "dev": true, - "dependencies": { - "cheerio": "^0.22.0", - "function.prototype.name": "^1.0.0", - "is-subset": "^0.1.1", - "lodash": "^4.17.4", - "object-is": "^1.0.1", - "object.assign": "^4.0.4", - "object.entries": "^1.0.4", - "object.values": "^1.0.4", - "prop-types": "^15.5.10", - "uuid": "^3.0.1" - }, - "peerDependencies": { - "react": "0.13.x || 0.14.x || ^15.0.0-0 || 15.x" - } - }, - "node_modules/errno": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.7.tgz", - "integrity": "sha512-MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg==", - "dev": true, - "dependencies": { - "prr": "~1.0.1" - }, - "bin": { - "errno": "cli.js" - } - }, - "node_modules/error-ex": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", - "dev": true, - "dependencies": { - "is-arrayish": "^0.2.1" - } - }, - "node_modules/error-stack-parser": { - "version": "1.3.6", - "resolved": "https://registry.npmjs.org/error-stack-parser/-/error-stack-parser-1.3.6.tgz", - "integrity": "sha1-4Oc7k+QXE40c18C3RrGkoUhUwpI=", - "dev": true, - "dependencies": { - "stackframe": "^0.3.1" - } - }, - "node_modules/es-abstract": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.12.0.tgz", - "integrity": "sha512-C8Fx/0jFmV5IPoMOFPA9P9G5NtqW+4cOPit3MIuvR2t7Ag2K15EJTpxnHAYTzL+aYQJIESYeXZmDBfOBE1HcpA==", - "dev": true, - "dependencies": { - "es-to-primitive": "^1.1.1", - "function-bind": "^1.1.1", - "has": "^1.0.1", - "is-callable": "^1.1.3", - "is-regex": "^1.0.4" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-to-primitive": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.1.1.tgz", - "integrity": "sha1-RTVSSKiJeQNLZ5Lhm7gfK3l13Q0=", - "dev": true, - "dependencies": { - "is-callable": "^1.1.1", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es5-ext": { - "version": "0.10.45", - "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.45.tgz", - "integrity": "sha512-FkfM6Vxxfmztilbxxz5UKSD4ICMf5tSpRFtDNtkAhOxZ0EKtX6qwmXNyH/sFyIbX2P/nU5AMiA9jilWsUGJzCQ==", - "dev": true, - "dependencies": { - "es6-iterator": "~2.0.3", - "es6-symbol": "~3.1.1", - "next-tick": "1" - } - }, - "node_modules/es6-error": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz", - "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==" - }, - "node_modules/es6-iterator": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", - "integrity": "sha1-p96IkUGgWpSwhUQDstCg+/qY87c=", - "dev": true, - "dependencies": { - "d": "1", - "es5-ext": "^0.10.35", - "es6-symbol": "^3.1.1" - } - }, - "node_modules/es6-map": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/es6-map/-/es6-map-0.1.5.tgz", - "integrity": "sha1-kTbgUD3MBqMBaQ8LsU/042TpSfA=", - "dev": true, - "dependencies": { - "d": "1", - "es5-ext": "~0.10.14", - "es6-iterator": "~2.0.1", - "es6-set": "~0.1.5", - "es6-symbol": "~3.1.1", - "event-emitter": "~0.3.5" - } - }, - "node_modules/es6-promise": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-3.3.1.tgz", - "integrity": "sha1-oIzd6EzNvzTQJ6FFG8kdS80ophM=", - "dev": true - }, - "node_modules/es6-set": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/es6-set/-/es6-set-0.1.5.tgz", - "integrity": "sha1-0rPsXU2ADO2BjbU40ol02wpzzLE=", - "dev": true, - "dependencies": { - "d": "1", - "es5-ext": "~0.10.14", - "es6-iterator": "~2.0.1", - "es6-symbol": "3.1.1", - "event-emitter": "~0.3.5" - } - }, - "node_modules/es6-symbol": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.1.tgz", - "integrity": "sha1-vwDvT9q2uhtG7Le2KbTH7VcVzHc=", - "dev": true, - "dependencies": { - "d": "1", - "es5-ext": "~0.10.14" - } - }, - "node_modules/es6-weak-map": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-2.0.2.tgz", - "integrity": "sha1-XjqzIlH/0VOKH45f+hNXdy+S2W8=", - "dev": true, - "dependencies": { - "d": "1", - "es5-ext": "^0.10.14", - "es6-iterator": "^2.0.1", - "es6-symbol": "^3.1.1" - } - }, - "node_modules/escape-html": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=", - "dev": true - }, - "node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/escope": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/escope/-/escope-3.6.0.tgz", - "integrity": "sha1-4Bl16BJ4GhY6ba392AOY3GTIicM=", - "dev": true, - "dependencies": { - "es6-map": "^0.1.3", - "es6-weak-map": "^2.0.1", - "esrecurse": "^4.1.0", - "estraverse": "^4.1.1" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/esrecurse": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz", - "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==", - "dev": true, - "dependencies": { - "estraverse": "^4.1.0" - }, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/estraverse": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.2.0.tgz", - "integrity": "sha1-De4/7TH81GlhjOc0IJn8GvoL2xM=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/esutils": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", - "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/etag": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", - "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/event-emitter": { - "version": "0.3.5", - "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz", - "integrity": "sha1-34xp7vFkeSPHFXuc6DhAYQsCzDk=", - "dev": true, - "dependencies": { - "d": "1", - "es5-ext": "~0.10.14" - } - }, - "node_modules/events": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/events/-/events-1.1.1.tgz", - "integrity": "sha1-nr23Y1rQmccNzEwqH1AEKI6L2SQ=", - "dev": true, - "engines": { - "node": ">=0.4.x" - } - }, - "node_modules/evp_bytestokey": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", - "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", - "dev": true, - "dependencies": { - "md5.js": "^1.3.4", - "safe-buffer": "^5.1.1" - } - }, - "node_modules/execa": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz", - "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=", - "dev": true, - "dependencies": { - "cross-spawn": "^5.0.1", - "get-stream": "^3.0.0", - "is-stream": "^1.1.0", - "npm-run-path": "^2.0.0", - "p-finally": "^1.0.0", - "signal-exit": "^3.0.0", - "strip-eof": "^1.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/expand-brackets": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", - "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", - "dev": true, - "dependencies": { - "debug": "^2.3.3", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "posix-character-classes": "^0.1.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/expand-brackets/node_modules/define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, - "dependencies": { - "is-descriptor": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/expand-brackets/node_modules/extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "dependencies": { - "is-extendable": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/express": { - "version": "4.16.4", - "resolved": "https://registry.npmjs.org/express/-/express-4.16.4.tgz", - "integrity": "sha512-j12Uuyb4FMrd/qQAm6uCHAkPtO8FDTRJZBDd5D2KOL2eLaz1yUNdUB/NOIyq0iU4q4cFarsUCrnFDPBcnksuOg==", - "dev": true, - "dependencies": { - "accepts": "~1.3.5", - "array-flatten": "1.1.1", - "body-parser": "1.18.3", - "content-disposition": "0.5.2", - "content-type": "~1.0.4", - "cookie": "0.3.1", - "cookie-signature": "1.0.6", - "debug": "2.6.9", - "depd": "~1.1.2", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "finalhandler": "1.1.1", - "fresh": "0.5.2", - "merge-descriptors": "1.0.1", - "methods": "~1.1.2", - "on-finished": "~2.3.0", - "parseurl": "~1.3.2", - "path-to-regexp": "0.1.7", - "proxy-addr": "~2.0.4", - "qs": "6.5.2", - "range-parser": "~1.2.0", - "safe-buffer": "5.1.2", - "send": "0.16.2", - "serve-static": "1.13.2", - "setprototypeof": "1.1.0", - "statuses": "~1.4.0", - "type-is": "~1.6.16", - "utils-merge": "1.0.1", - "vary": "~1.1.2" - }, - "engines": { - "node": ">= 0.10.0" - } - }, - "node_modules/express-http-proxy": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/express-http-proxy/-/express-http-proxy-1.0.6.tgz", - "integrity": "sha1-KTDoKHDnSlMapEP6yfBlIu5cHqI=", - "dev": true, - "dependencies": { - "debug": "^2.6.4", - "es6-promise": "^3.3.1", - "raw-body": "^2.2.0" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/express/node_modules/path-to-regexp": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", - "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=", - "dev": true - }, - "node_modules/extend-shallow": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", - "dev": true, - "dependencies": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/extend-shallow/node_modules/is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "dev": true, - "dependencies": { - "is-plain-object": "^2.0.4" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/extglob": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", - "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", - "dev": true, - "dependencies": { - "array-unique": "^0.3.2", - "define-property": "^1.0.0", - "expand-brackets": "^2.1.4", - "extend-shallow": "^2.0.1", - "fragment-cache": "^0.2.1", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/extglob/node_modules/define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "dev": true, - "dependencies": { - "is-descriptor": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/extglob/node_modules/extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "dependencies": { - "is-extendable": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/extglob/node_modules/is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "deprecated": "Please upgrade to v1.0.1", - "dev": true, - "dependencies": { - "kind-of": "^6.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/extglob/node_modules/is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "deprecated": "Please upgrade to v1.0.1", - "dev": true, - "dependencies": { - "kind-of": "^6.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/extglob/node_modules/is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "dependencies": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/extract-text-webpack-plugin": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/extract-text-webpack-plugin/-/extract-text-webpack-plugin-3.0.0.tgz", - "integrity": "sha1-kMqnkHvESfM1AF46x1MrQbAN5hI=", - "deprecated": "Deprecated. Please use https://github.com/webpack-contrib/mini-css-extract-plugin", - "dev": true, - "dependencies": { - "async": "^2.4.1", - "loader-utils": "^1.1.0", - "schema-utils": "^0.3.0", - "webpack-sources": "^1.0.1" - }, - "engines": { - "node": ">= 4.3 < 5.0.0 || >= 5.10" - }, - "peerDependencies": { - "webpack": "^3.1.0" - } - }, - "node_modules/fast-deep-equal": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz", - "integrity": "sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ=", - "dev": true - }, - "node_modules/fast-json-stable-stringify": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", - "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=", - "dev": true - }, - "node_modules/fbjs": { - "version": "0.8.17", - "resolved": "https://registry.npmjs.org/fbjs/-/fbjs-0.8.17.tgz", - "integrity": "sha1-xNWY6taUkRJlPWWIsBpc3Nn5D90=", - "dependencies": { - "core-js": "^1.0.0", - "isomorphic-fetch": "^2.1.1", - "loose-envify": "^1.0.0", - "object-assign": "^4.1.0", - "promise": "^7.1.1", - "setimmediate": "^1.0.5", - "ua-parser-js": "^0.7.18" - } - }, - "node_modules/fbjs/node_modules/core-js": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-1.2.7.tgz", - "integrity": "sha1-ZSKUwUZR2yj6k70tX/KYOk8IxjY=", - "deprecated": "core-js@<3.23.3 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Some versions have web compatibility issues. Please, upgrade your dependencies to the actual version of core-js." - }, - "node_modules/fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", - "dev": true, - "dependencies": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/fill-range/node_modules/extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "dependencies": { - "is-extendable": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/finalhandler": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.1.tgz", - "integrity": "sha512-Y1GUDo39ez4aHAw7MysnUD5JzYX+WaIj8I57kO3aEPT1fFRL4sr7mjei97FgnwhAyyzRYmQZaTHb2+9uZ1dPtg==", - "dev": true, - "dependencies": { - "debug": "2.6.9", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "on-finished": "~2.3.0", - "parseurl": "~1.3.2", - "statuses": "~1.4.0", - "unpipe": "~1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/find-cache-dir": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-1.0.0.tgz", - "integrity": "sha1-kojj6ePMN0hxfTnq3hfPcfww7m8=", - "dev": true, - "dependencies": { - "commondir": "^1.0.1", - "make-dir": "^1.0.0", - "pkg-dir": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", - "dev": true, - "dependencies": { - "locate-path": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/for-in": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", - "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/foreach": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/foreach/-/foreach-2.0.5.tgz", - "integrity": "sha1-C+4AUBiusmDQo6865ljdATbsG5k=", - "dev": true - }, - "node_modules/forwarded": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz", - "integrity": "sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ=", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/fragment-cache": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", - "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", - "dev": true, - "dependencies": { - "map-cache": "^0.2.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/fresh": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", - "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", - "dev": true - }, - "node_modules/fsevents": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.4.tgz", - "integrity": "sha512-z8H8/diyk76B7q5wg+Ud0+CqzcAF3mBBI/bA5ne5zrRUUIvNkJY//D3BqyH571KuAC4Nr7Rw7CjWX4r0y9DvNg==", - "bundleDependencies": [ - "node-pre-gyp" - ], - "deprecated": "The v1 package contains DANGEROUS / INSECURE binaries. Upgrade to safe fsevents v2", - "dev": true, - "hasInstallScript": true, - "optional": true, - "os": [ - "darwin" - ], - "dependencies": { - "nan": "^2.9.2", - "node-pre-gyp": "^0.10.0" - }, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/fsevents/node_modules/abbrev": { - "version": "1.1.1", - "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", - "dev": true, - "inBundle": true, - "optional": true - }, - "node_modules/fsevents/node_modules/ansi-regex": { - "version": "2.1.1", - "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", - "dev": true, - "inBundle": true, - "optional": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/fsevents/node_modules/aproba": { - "version": "1.2.0", - "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", - "dev": true, - "inBundle": true, - "optional": true - }, - "node_modules/fsevents/node_modules/are-we-there-yet": { - "version": "1.1.4", - "integrity": "sha512-QbMPI8teYlZBIBqDgmIWfDKO149dGtQV2ium8WniCaARFFRd1e+IES1LA4sSGcVTFdVL628+163WUbxev7R/aQ==", - "deprecated": "This package is no longer supported.", - "dev": true, - "inBundle": true, - "optional": true, - "dependencies": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" - } - }, - "node_modules/fsevents/node_modules/balanced-match": { - "version": "1.0.0", - "integrity": "sha512-9Y0g0Q8rmSt+H33DfKv7FOc3v+iRI+o1lbzt8jGcIosYW37IIW/2XVYq5NPdmaD5NQ59Nk26Kl/vZbwW9Fr8vg==", - "dev": true, - "inBundle": true, - "optional": true - }, - "node_modules/fsevents/node_modules/brace-expansion": { - "version": "1.1.11", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "inBundle": true, - "optional": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/fsevents/node_modules/chownr": { - "version": "1.0.1", - "integrity": "sha512-cKnqUJAC8G6cuN1DiRRTifu+s1BlAQNtalzGphFEV0pl0p46dsxJD4l1AOlyKJeLZOFzo3c34R7F3djxaCu8Kw==", - "dev": true, - "inBundle": true, - "optional": true - }, - "node_modules/fsevents/node_modules/code-point-at": { - "version": "1.1.0", - "integrity": "sha512-RpAVKQA5T63xEj6/giIbUEtZwJ4UFIc3ZtvEkiaUERylqe8xb5IvqcgOurZLahv93CLKfxcw5YI+DZcUBRyLXA==", - "dev": true, - "inBundle": true, - "optional": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/fsevents/node_modules/concat-map": { - "version": "0.0.1", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", - "dev": true, - "inBundle": true, - "optional": true - }, - "node_modules/fsevents/node_modules/console-control-strings": { - "version": "1.1.0", - "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==", - "dev": true, - "inBundle": true, - "optional": true - }, - "node_modules/fsevents/node_modules/core-util-is": { - "version": "1.0.2", - "integrity": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==", - "dev": true, - "inBundle": true, - "optional": true - }, - "node_modules/fsevents/node_modules/debug": { - "version": "2.6.9", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "inBundle": true, - "optional": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/fsevents/node_modules/deep-extend": { - "version": "0.5.1", - "integrity": "sha512-N8vBdOa+DF7zkRrDCsaOXoCs/E2fJfx9B9MrKnnSiHNh4ws7eSys6YQE4KvT1cecKmOASYQBhbKjeuDD9lT81w==", - "dev": true, - "inBundle": true, - "optional": true, - "engines": { - "iojs": ">=1.0.0", - "node": ">=0.10.0" - } - }, - "node_modules/fsevents/node_modules/delegates": { - "version": "1.0.0", - "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==", - "dev": true, - "inBundle": true, - "optional": true - }, - "node_modules/fsevents/node_modules/detect-libc": { - "version": "1.0.3", - "integrity": "sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==", - "dev": true, - "inBundle": true, - "optional": true, - "bin": { - "detect-libc": "bin/detect-libc.js" - }, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/fsevents/node_modules/fs-minipass": { - "version": "1.2.5", - "integrity": "sha512-JhBl0skXjUPCFH7x6x61gQxrKyXsxB5gcgePLZCwfyCGGsTISMoIeObbrvVeP6Xmyaudw4TT43qV2Gz+iyd2oQ==", - "dev": true, - "inBundle": true, - "optional": true, - "dependencies": { - "minipass": "^2.2.1" - } - }, - "node_modules/fsevents/node_modules/fs.realpath": { - "version": "1.0.0", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", - "dev": true, - "inBundle": true, - "optional": true - }, - "node_modules/fsevents/node_modules/gauge": { - "version": "2.7.4", - "integrity": "sha512-14x4kjc6lkD3ltw589k0NrPD6cCNTD6CWoVUNpB85+DrtONoZn+Rug6xZU5RvSC4+TZPxA5AnBibQYAvZn41Hg==", - "deprecated": "This package is no longer supported.", - "dev": true, - "inBundle": true, - "optional": true, - "dependencies": { - "aproba": "^1.0.3", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.0", - "object-assign": "^4.1.0", - "signal-exit": "^3.0.0", - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wide-align": "^1.1.0" - } - }, - "node_modules/fsevents/node_modules/glob": { - "version": "7.1.2", - "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", - "deprecated": "Glob versions prior to v9 are no longer supported", - "dev": true, - "inBundle": true, - "optional": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - } - }, - "node_modules/fsevents/node_modules/has-unicode": { - "version": "2.0.1", - "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==", - "dev": true, - "inBundle": true, - "optional": true - }, - "node_modules/fsevents/node_modules/iconv-lite": { - "version": "0.4.21", - "integrity": "sha512-En5V9za5mBt2oUA03WGD3TwDv0MKAruqsuxstbMUZaj9W9k/m1CV/9py3l0L5kw9Bln8fdHQmzHSYtvpvTLpKw==", - "dev": true, - "inBundle": true, - "optional": true, - "dependencies": { - "safer-buffer": "^2.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/fsevents/node_modules/ignore-walk": { - "version": "3.0.1", - "integrity": "sha512-DTVlMx3IYPe0/JJcYP7Gxg7ttZZu3IInhuEhbchuqneY9wWe5Ojy2mXLBaQFUQmo0AW2r3qG7m1mg86js+gnlQ==", - "dev": true, - "inBundle": true, - "optional": true, - "dependencies": { - "minimatch": "^3.0.4" - } - }, - "node_modules/fsevents/node_modules/inflight": { - "version": "1.0.6", - "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", - "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", - "dev": true, - "inBundle": true, - "optional": true, - "dependencies": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "node_modules/fsevents/node_modules/inherits": { - "version": "2.0.3", - "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==", - "dev": true, - "inBundle": true, - "optional": true - }, - "node_modules/fsevents/node_modules/ini": { - "version": "1.3.5", - "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==", - "deprecated": "Please update to ini >=1.3.6 to avoid a prototype pollution issue", - "dev": true, - "inBundle": true, - "optional": true, - "engines": { - "node": "*" - } - }, - "node_modules/fsevents/node_modules/is-fullwidth-code-point": { - "version": "1.0.0", - "integrity": "sha512-1pqUqRjkhPJ9miNq9SwMfdvi6lBJcd6eFxvfaivQhaH3SgisfiuudvFntdKOmxuee/77l+FPjKrQjWvmPjWrRw==", - "dev": true, - "inBundle": true, - "optional": true, - "dependencies": { - "number-is-nan": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/fsevents/node_modules/isarray": { - "version": "1.0.0", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", - "dev": true, - "inBundle": true, - "optional": true - }, - "node_modules/fsevents/node_modules/minimatch": { - "version": "3.0.4", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", - "dev": true, - "inBundle": true, - "optional": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/fsevents/node_modules/minimist": { - "version": "0.0.8", - "integrity": "sha512-miQKw5Hv4NS1Psg2517mV4e4dYNaO3++hjAvLOAzKqZ61rH8NS1SK+vbfBWZ5PY/Me/bEWhUwqMghEW5Fb9T7Q==", - "dev": true, - "inBundle": true, - "optional": true - }, - "node_modules/fsevents/node_modules/minipass": { - "version": "2.2.4", - "integrity": "sha512-hzXIWWet/BzWhYs2b+u7dRHlruXhwdgvlTMDKC6Cb1U7ps6Ac6yQlR39xsbjWJE377YTCtKwIXIpJ5oP+j5y8g==", - "dev": true, - "inBundle": true, - "optional": true, - "dependencies": { - "safe-buffer": "^5.1.1", - "yallist": "^3.0.0" - } - }, - "node_modules/fsevents/node_modules/minizlib": { - "version": "1.1.0", - "integrity": "sha512-4T6Ur/GctZ27nHfpt9THOdRZNgyJ9FZchYO1ceg5S8Q3DNLCKYy44nCZzgCJgcvx2UM8czmqak5BCxJMrq37lA==", - "dev": true, - "inBundle": true, - "optional": true, - "dependencies": { - "minipass": "^2.2.1" - } - }, - "node_modules/fsevents/node_modules/mkdirp": { - "version": "0.5.1", - "integrity": "sha512-SknJC52obPfGQPnjIkXbmA6+5H15E+fR+E4iR2oQ3zzCLbd7/ONua69R/Gw7AgkTLsRG+r5fzksYwWe1AgTyWA==", - "deprecated": "Legacy versions of mkdirp are no longer supported. Please update to mkdirp 1.x. (Note that the API surface has changed to use Promises in 1.x.)", - "dev": true, - "inBundle": true, - "optional": true, - "dependencies": { - "minimist": "0.0.8" - }, - "bin": { - "mkdirp": "bin/cmd.js" - } - }, - "node_modules/fsevents/node_modules/ms": { - "version": "2.0.0", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true, - "inBundle": true, - "optional": true - }, - "node_modules/fsevents/node_modules/needle": { - "version": "2.2.0", - "integrity": "sha512-eFagy6c+TYayorXw/qtAdSvaUpEbBsDwDyxYFgLZ0lTojfH7K+OdBqAF7TAFwDokJaGpubpSGG0wO3iC0XPi8w==", - "dev": true, - "inBundle": true, - "optional": true, - "dependencies": { - "debug": "^2.1.2", - "iconv-lite": "^0.4.4", - "sax": "^1.2.4" - }, - "bin": { - "needle": "bin/needle" - }, - "engines": { - "node": ">= 0.10.x" - } - }, - "node_modules/fsevents/node_modules/node-pre-gyp": { - "version": "0.10.0", - "integrity": "sha512-G7kEonQLRbcA/mOoFoxvlMrw6Q6dPf92+t/l0DFSMuSlDoWaI9JWIyPwK0jyE1bph//CUEL65/Fz1m2vJbmjQQ==", - "deprecated": "Please upgrade to @mapbox/node-pre-gyp: the non-scoped node-pre-gyp package is deprecated and only the @mapbox scoped package will recieve updates in the future", - "dev": true, - "inBundle": true, - "optional": true, - "dependencies": { - "detect-libc": "^1.0.2", - "mkdirp": "^0.5.1", - "needle": "^2.2.0", - "nopt": "^4.0.1", - "npm-packlist": "^1.1.6", - "npmlog": "^4.0.2", - "rc": "^1.1.7", - "rimraf": "^2.6.1", - "semver": "^5.3.0", - "tar": "^4" - }, - "bin": { - "node-pre-gyp": "bin/node-pre-gyp" - } - }, - "node_modules/fsevents/node_modules/nopt": { - "version": "4.0.1", - "integrity": "sha512-+5XZFpQZEY0cg5JaxLwGxDlKNKYxuXwGt8/Oi3UXm5/4ymrJve9d2CURituxv3rSrVCGZj4m1U1JlHTdcKt2Ng==", - "dev": true, - "inBundle": true, - "optional": true, - "dependencies": { - "abbrev": "1", - "osenv": "^0.1.4" - }, - "bin": { - "nopt": "bin/nopt.js" - } - }, - "node_modules/fsevents/node_modules/npm-bundled": { - "version": "1.0.3", - "integrity": "sha512-ByQ3oJ/5ETLyglU2+8dBObvhfWXX8dtPZDMePCahptliFX2iIuhyEszyFk401PZUNQH20vvdW5MLjJxkwU80Ow==", - "dev": true, - "inBundle": true, - "optional": true - }, - "node_modules/fsevents/node_modules/npm-packlist": { - "version": "1.1.10", - "integrity": "sha512-AQC0Dyhzn4EiYEfIUjCdMl0JJ61I2ER9ukf/sLxJUcZHfo+VyEfz2rMJgLZSS1v30OxPQe1cN0LZA1xbcaVfWA==", - "dev": true, - "inBundle": true, - "optional": true, - "dependencies": { - "ignore-walk": "^3.0.1", - "npm-bundled": "^1.0.1" - } - }, - "node_modules/fsevents/node_modules/npmlog": { - "version": "4.1.2", - "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", - "deprecated": "This package is no longer supported.", - "dev": true, - "inBundle": true, - "optional": true, - "dependencies": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" - } - }, - "node_modules/fsevents/node_modules/number-is-nan": { - "version": "1.0.1", - "integrity": "sha512-4jbtZXNAsfZbAHiiqjLPBiCl16dES1zI4Hpzzxw61Tk+loF+sBDBKx1ICKKKwIqQ7M0mFn1TmkN7euSncWgHiQ==", - "dev": true, - "inBundle": true, - "optional": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/fsevents/node_modules/object-assign": { - "version": "4.1.1", - "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", - "dev": true, - "inBundle": true, - "optional": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/fsevents/node_modules/once": { - "version": "1.4.0", - "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", - "dev": true, - "inBundle": true, - "optional": true, - "dependencies": { - "wrappy": "1" - } - }, - "node_modules/fsevents/node_modules/os-homedir": { - "version": "1.0.2", - "integrity": "sha512-B5JU3cabzk8c67mRRd3ECmROafjYMXbuzlwtqdM8IbS8ktlTix8aFGb2bAGKrSRIlnfKwovGUUr72JUPyOb6kQ==", - "dev": true, - "inBundle": true, - "optional": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/fsevents/node_modules/os-tmpdir": { - "version": "1.0.2", - "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", - "dev": true, - "inBundle": true, - "optional": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/fsevents/node_modules/osenv": { - "version": "0.1.5", - "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==", - "deprecated": "This package is no longer supported.", - "dev": true, - "inBundle": true, - "optional": true, - "dependencies": { - "os-homedir": "^1.0.0", - "os-tmpdir": "^1.0.0" - } - }, - "node_modules/fsevents/node_modules/path-is-absolute": { - "version": "1.0.1", - "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", - "dev": true, - "inBundle": true, - "optional": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/fsevents/node_modules/process-nextick-args": { - "version": "2.0.0", - "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==", - "dev": true, - "inBundle": true, - "optional": true - }, - "node_modules/fsevents/node_modules/rc": { - "version": "1.2.7", - "integrity": "sha512-LdLD8xD4zzLsAT5xyushXDNscEjB7+2ulnl8+r1pnESlYtlJtVSoCMBGr30eDRJ3+2Gq89jK9P9e4tCEH1+ywA==", - "dev": true, - "inBundle": true, - "optional": true, - "dependencies": { - "deep-extend": "^0.5.1", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - }, - "bin": { - "rc": "cli.js" - } - }, - "node_modules/fsevents/node_modules/rc/node_modules/minimist": { - "version": "1.2.0", - "integrity": "sha512-7Wl+Jz+IGWuSdgsQEJ4JunV0si/iMhg42MnQQG6h1R6TNeVenp4U9x5CC5v/gYqz/fENLQITAWXidNtVL0NNbw==", - "dev": true, - "inBundle": true, - "optional": true - }, - "node_modules/fsevents/node_modules/readable-stream": { - "version": "2.3.6", - "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", - "dev": true, - "inBundle": true, - "optional": true, - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "node_modules/fsevents/node_modules/rimraf": { - "version": "2.6.2", - "integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==", - "deprecated": "Rimraf versions prior to v4 are no longer supported", - "dev": true, - "inBundle": true, - "optional": true, - "dependencies": { - "glob": "^7.0.5" - }, - "bin": { - "rimraf": "bin.js" - } - }, - "node_modules/fsevents/node_modules/safe-buffer": { - "version": "5.1.1", - "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==", - "dev": true, - "inBundle": true, - "optional": true - }, - "node_modules/fsevents/node_modules/safer-buffer": { - "version": "2.1.2", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "dev": true, - "inBundle": true, - "optional": true - }, - "node_modules/fsevents/node_modules/sax": { - "version": "1.2.4", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", - "dev": true, - "inBundle": true, - "optional": true - }, - "node_modules/fsevents/node_modules/semver": { - "version": "5.5.0", - "integrity": "sha512-4SJ3dm0WAwWy/NVeioZh5AntkdJoWKxHxcmyP622fOkgHa4z3R0TdBJICINyaSDE6uNwVc8gZr+ZinwZAH4xIA==", - "dev": true, - "inBundle": true, - "optional": true, - "bin": { - "semver": "bin/semver" - } - }, - "node_modules/fsevents/node_modules/set-blocking": { - "version": "2.0.0", - "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", - "dev": true, - "inBundle": true, - "optional": true - }, - "node_modules/fsevents/node_modules/signal-exit": { - "version": "3.0.2", - "integrity": "sha512-meQNNykwecVxdu1RlYMKpQx4+wefIYpmxi6gexo/KAbwquJrBUrBmKYJrE8KFkVQAAVWEnwNdu21PgrD77J3xA==", - "dev": true, - "inBundle": true, - "optional": true - }, - "node_modules/fsevents/node_modules/string_decoder": { - "version": "1.1.1", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "inBundle": true, - "optional": true, - "dependencies": { - "safe-buffer": "~5.1.0" - } - }, - "node_modules/fsevents/node_modules/string-width": { - "version": "1.0.2", - "integrity": "sha512-0XsVpQLnVCXHJfyEs8tC0zpTVIr5PKKsQtkT29IwupnPTjtPmQ3xT/4yCREF9hYkV/3M3kzcUTSAZT6a6h81tw==", - "dev": true, - "inBundle": true, - "optional": true, - "dependencies": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/fsevents/node_modules/strip-ansi": { - "version": "3.0.1", - "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", - "dev": true, - "inBundle": true, - "optional": true, - "dependencies": { - "ansi-regex": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/fsevents/node_modules/strip-json-comments": { - "version": "2.0.1", - "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==", - "dev": true, - "inBundle": true, - "optional": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/fsevents/node_modules/tar": { - "version": "4.4.1", - "integrity": "sha512-O+v1r9yN4tOsvl90p5HAP4AEqbYhx4036AGMm075fH9F8Qwi3oJ+v4u50FkT/KkvywNGtwkk0zRI+8eYm1X/xg==", - "dev": true, - "inBundle": true, - "optional": true, - "dependencies": { - "chownr": "^1.0.1", - "fs-minipass": "^1.2.5", - "minipass": "^2.2.4", - "minizlib": "^1.1.0", - "mkdirp": "^0.5.0", - "safe-buffer": "^5.1.1", - "yallist": "^3.0.2" - }, - "engines": { - "node": ">=4.5" - } - }, - "node_modules/fsevents/node_modules/util-deprecate": { - "version": "1.0.2", - "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", - "dev": true, - "inBundle": true, - "optional": true - }, - "node_modules/fsevents/node_modules/wide-align": { - "version": "1.1.2", - "integrity": "sha512-ijDLlyQ7s6x1JgCLur53osjm/UXUYD9+0PbYKrBsYisYXzCxN+HC3mYDNy/dWdmf3AwqwU3CXwDCvsNgGK1S0w==", - "dev": true, - "inBundle": true, - "optional": true, - "dependencies": { - "string-width": "^1.0.2" - } - }, - "node_modules/fsevents/node_modules/wrappy": { - "version": "1.0.2", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", - "dev": true, - "inBundle": true, - "optional": true - }, - "node_modules/fsevents/node_modules/yallist": { - "version": "3.0.2", - "integrity": "sha512-U+iKQ8rDYMRmvEpvDUIWZ3CtM9/imlAc+c1yJ7YV0vu+HNtP82sAkXzuDXPLkIPoLZohnXFSs9wf2E17xk5yZA==", - "dev": true, - "inBundle": true, - "optional": true - }, - "node_modules/function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true - }, - "node_modules/function.prototype.name": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.0.tgz", - "integrity": "sha512-Bs0VRrTz4ghD8pTmbJQD1mZ8A/mN0ur/jGz+A6FBxPDUPkm1tNfF6bhTYPA7i7aF4lZJVr+OXTNNrnnIl58Wfg==", - "dev": true, - "dependencies": { - "define-properties": "^1.1.2", - "function-bind": "^1.1.1", - "is-callable": "^1.1.3" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/get-caller-file": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", - "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==", - "dev": true - }, - "node_modules/get-stream": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", - "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/get-value": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", - "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/glob": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", - "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", - "deprecated": "Glob versions prior to v9 are no longer supported", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - } - }, - "node_modules/global": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/global/-/global-4.3.2.tgz", - "integrity": "sha1-52mJJopsdMOJCLEwWxD8DjlOnQ8=", - "dev": true, - "dependencies": { - "min-document": "^2.19.0", - "process": "~0.5.1" - } - }, - "node_modules/globals": { - "version": "9.18.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", - "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/graceful-fs": { - "version": "4.1.11", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", - "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=", - "dev": true, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, - "dependencies": { - "function-bind": "^1.1.1" - }, - "engines": { - "node": ">= 0.4.0" - } - }, - "node_modules/has-ansi": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", - "dev": true, - "dependencies": { - "ansi-regex": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/has-symbols": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.0.tgz", - "integrity": "sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q=", - "dev": true, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/has-value": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", - "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", - "dev": true, - "dependencies": { - "get-value": "^2.0.6", - "has-values": "^1.0.0", - "isobject": "^3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/has-values": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", - "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", - "dev": true, - "dependencies": { - "is-number": "^3.0.0", - "kind-of": "^4.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/has-values/node_modules/kind-of": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", - "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", - "dev": true, - "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/hash-base": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.0.4.tgz", - "integrity": "sha1-X8hoaEfs1zSZQDMZprCj8/auSRg=", - "dev": true, - "dependencies": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/hash.js": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.5.tgz", - "integrity": "sha512-eWI5HG9Np+eHV1KQhisXWwM+4EPPYe5dFX1UZZH7k/E3JzDEazVH+VGlZi6R94ZqImq+A3D1mCEtrFIfg/E7sA==", - "dev": true, - "dependencies": { - "inherits": "^2.0.3", - "minimalistic-assert": "^1.0.1" - } - }, - "node_modules/history": { - "version": "4.6.3", - "resolved": "https://registry.npmjs.org/history/-/history-4.6.3.tgz", - "integrity": "sha1-bXI6hxLFgda+836MJvSu3G64aWc=", - "dependencies": { - "invariant": "^2.2.1", - "loose-envify": "^1.2.0", - "resolve-pathname": "^2.0.0", - "value-equal": "^0.2.0", - "warning": "^3.0.0" - } - }, - "node_modules/hmac-drbg": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", - "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", - "dev": true, - "dependencies": { - "hash.js": "^1.0.3", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.1" - } - }, - "node_modules/hoist-non-react-statics": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-1.2.0.tgz", - "integrity": "sha1-qkSM8JhtVcxAdzsXF0t90GbLfPs=" - }, - "node_modules/home-or-tmp": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-2.0.0.tgz", - "integrity": "sha1-42w/LSyufXRqhX440Y1fMqeILbg=", - "dev": true, - "dependencies": { - "os-homedir": "^1.0.0", - "os-tmpdir": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/hosted-git-info": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.7.1.tgz", - "integrity": "sha512-7T/BxH19zbcCTa8XkMlbK5lTo1WtgkFi3GvdWEyNuc4Vex7/9Dqbnpsf4JMydcfj9HCg4zUWFTL3Za6lapg5/w==", - "dev": true - }, - "node_modules/html-entities": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-1.2.1.tgz", - "integrity": "sha1-DfKTUfByEWNRXfueVUPl9u7VFi8=", - "dev": true, - "engines": [ - "node >= 0.4.0" - ] - }, - "node_modules/htmlparser2": { - "version": "3.9.2", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.9.2.tgz", - "integrity": "sha1-G9+HrMoPP55T+k/M6w9LTLsAszg=", - "dev": true, - "dependencies": { - "domelementtype": "^1.3.0", - "domhandler": "^2.3.0", - "domutils": "^1.5.1", - "entities": "^1.1.1", - "inherits": "^2.0.1", - "readable-stream": "^2.0.2" - } - }, - "node_modules/http-errors": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", - "integrity": "sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=", - "dev": true, - "dependencies": { - "depd": "~1.1.2", - "inherits": "2.0.3", - "setprototypeof": "1.1.0", - "statuses": ">= 1.4.0 < 2" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/http-errors/node_modules/setprototypeof": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", - "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", - "dev": true - }, - "node_modules/http-errors/node_modules/statuses": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", - "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/https-browserify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", - "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=", - "dev": true - }, - "node_modules/iconv-lite": { - "version": "0.4.23", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.23.tgz", - "integrity": "sha512-neyTUVFtahjf0mB3dZT77u+8O0QB89jFdnBkd5P1JgYPbPaia3gXXOVL2fq8VyU2gMMD7SaN7QukTB/pmXYvDA==", - "dependencies": { - "safer-buffer": ">= 2.1.2 < 3" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/icss-replace-symbols": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/icss-replace-symbols/-/icss-replace-symbols-1.1.0.tgz", - "integrity": "sha1-Bupvg2ead0njhs/h/oEq5dsiPe0=", - "dev": true - }, - "node_modules/icss-utils": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-4.1.1.tgz", - "integrity": "sha512-4aFq7wvWyMHKgxsH8QQtGpvbASCf+eM3wPRLI6R+MgAnTCZ6STYsRvttLvRWK0Nfif5piF394St3HeJDaljGPA==", - "dev": true, - "dependencies": { - "postcss": "^7.0.14" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/ieee754": { - "version": "1.1.12", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.12.tgz", - "integrity": "sha512-GguP+DRY+pJ3soyIiGPTvdiVXjZ+DbXOxGpXn3eMvNW4x4irjqXm4wHKscC+TfxSJ0yw/S1F24tqdMNsMZTiLA==", - "dev": true - }, - "node_modules/indexes-of": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/indexes-of/-/indexes-of-1.0.1.tgz", - "integrity": "sha1-8w9xbI4r00bHtn0985FVZqfAVgc=", - "dev": true - }, - "node_modules/indexof": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz", - "integrity": "sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10=", - "dev": true - }, - "node_modules/inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", - "dev": true, - "dependencies": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "node_modules/inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", - "dev": true - }, - "node_modules/interpret": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.1.0.tgz", - "integrity": "sha1-ftGxQQxqDg94z5XTuEQMY/eLhhQ=", - "dev": true - }, - "node_modules/invariant": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", - "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", - "dependencies": { - "loose-envify": "^1.0.0" - } - }, - "node_modules/invert-kv": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz", - "integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ipaddr.js": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.8.0.tgz", - "integrity": "sha1-6qM9bd16zo9/b+DJygRA5wZzix4=", - "dev": true, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/is-accessor-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", - "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", - "deprecated": "Please upgrade to v0.1.7", - "dev": true, - "dependencies": { - "kind-of": "^3.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-accessor-descriptor/node_modules/kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", - "dev": true - }, - "node_modules/is-binary-path": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", - "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", - "dev": true, - "dependencies": { - "binary-extensions": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-buffer": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", - "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", - "dev": true - }, - "node_modules/is-builtin-module": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-1.0.0.tgz", - "integrity": "sha1-VAVy0096wxGfj3bDDLwbHgN6/74=", - "dev": true, - "dependencies": { - "builtin-modules": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-callable": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.4.tgz", - "integrity": "sha512-r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA==", - "dev": true, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/is-data-descriptor": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", - "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", - "deprecated": "Please upgrade to v0.1.5", - "dev": true, - "dependencies": { - "kind-of": "^3.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-data-descriptor/node_modules/kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-date-object": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.1.tgz", - "integrity": "sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY=", - "dev": true, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/is-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", - "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", - "dev": true, - "dependencies": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-descriptor/node_modules/kind-of": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-extendable": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", - "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-finite": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz", - "integrity": "sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=", - "dev": true, - "dependencies": { - "number-is-nan": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "dev": true, - "dependencies": { - "number-is-nan": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "dev": true, - "dependencies": { - "kind-of": "^3.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-number/node_modules/kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-plain-object": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", - "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", - "dev": true, - "dependencies": { - "isobject": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-promise": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz", - "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=" - }, - "node_modules/is-regex": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.4.tgz", - "integrity": "sha1-VRdIm1RwkbCTDglWVM7SXul+lJE=", - "dev": true, - "dependencies": { - "has": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/is-stream": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-subset": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-subset/-/is-subset-0.1.1.tgz", - "integrity": "sha1-ilkRfZMt4d4A8kX83TnOQ/HpOaY=", - "dev": true - }, - "node_modules/is-symbol": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.1.tgz", - "integrity": "sha1-PMWfAAJRlLarLjjbrmaJJWtmBXI=", - "dev": true, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/is-windows": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", - "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=" - }, - "node_modules/isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", - "dev": true - }, - "node_modules/isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/isomorphic-fetch": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/isomorphic-fetch/-/isomorphic-fetch-2.2.1.tgz", - "integrity": "sha1-YRrhrPFPXoH3KVB0coGf6XM1WKk=", - "dependencies": { - "node-fetch": "^1.0.1", - "whatwg-fetch": ">=0.10.0" - } - }, - "node_modules/js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" - }, - "node_modules/jsesc": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz", - "integrity": "sha1-RsP+yMGJKxKwgz25vHYiF226s0s=", - "dev": true, - "bin": { - "jsesc": "bin/jsesc" - } - }, - "node_modules/json-loader": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/json-loader/-/json-loader-0.5.7.tgz", - "integrity": "sha512-QLPs8Dj7lnf3e3QYS1zkCo+4ZwqOiF9d/nZnYozTISxXWCfNs9yuky5rJw4/W34s7POaNlbZmQGaB5NiXCbP4w==", - "dev": true - }, - "node_modules/json-schema-traverse": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz", - "integrity": "sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A=", - "dev": true - }, - "node_modules/json5": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", - "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=", - "dev": true, - "bin": { - "json5": "lib/cli.js" - } - }, - "node_modules/keycode": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/keycode/-/keycode-2.2.0.tgz", - "integrity": "sha1-PQr1bce4uOXLqNCpfxByBO7CKwQ=" - }, - "node_modules/kind-of": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", - "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/lazy-cache": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-1.0.4.tgz", - "integrity": "sha1-odePw6UEdMuAhF07O24dpJpEbo4=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/lcid": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz", - "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=", - "dev": true, - "dependencies": { - "invert-kv": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/loader-runner": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-2.3.0.tgz", - "integrity": "sha1-9IKuqC1UPgeSFwDVpG7yb9rGuKI=", - "dev": true, - "engines": { - "node": ">=4.3.0 <5.0.0 || >=5.10" - } - }, - "node_modules/loader-utils": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.1.0.tgz", - "integrity": "sha1-yYrvSIvM7aL/teLeZG1qdUQp9c0=", - "dev": true, - "dependencies": { - "big.js": "^3.1.3", - "emojis-list": "^2.0.0", - "json5": "^0.5.0" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", - "dev": true, - "dependencies": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/lodash": { - "version": "4.17.15", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz", - "integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==" - }, - "node_modules/lodash-es": { - "version": "4.17.15", - "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.15.tgz", - "integrity": "sha512-rlrc3yU3+JNOpZ9zj5pQtxnx2THmvRykwL4Xlxoa8I9lHBlVbbyPhgyPMioxVZ4NqyxaVVtaJnzsyOidQIhyyQ==" - }, - "node_modules/lodash.assignin": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/lodash.assignin/-/lodash.assignin-4.2.0.tgz", - "integrity": "sha1-uo31+4QesKPoBEIysOJjqNxqKKI=", - "dev": true - }, - "node_modules/lodash.bind": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/lodash.bind/-/lodash.bind-4.2.1.tgz", - "integrity": "sha1-euMBfpOWIqwxt9fX3LGzTbFpDTU=", - "dev": true - }, - "node_modules/lodash.debounce": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", - "integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=", - "dev": true - }, - "node_modules/lodash.defaults": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz", - "integrity": "sha1-0JF4cW/+pN3p5ft7N/bwgCJ0WAw=", - "dev": true - }, - "node_modules/lodash.filter": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/lodash.filter/-/lodash.filter-4.6.0.tgz", - "integrity": "sha1-ZosdSYFgOuHMWm+nYBQ+SAtMSs4=", - "dev": true - }, - "node_modules/lodash.flatten": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz", - "integrity": "sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8=", - "dev": true - }, - "node_modules/lodash.foreach": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.foreach/-/lodash.foreach-4.5.0.tgz", - "integrity": "sha1-Gmo16s5AEoDH8G3d7DUWWrJ+PlM=", - "dev": true - }, - "node_modules/lodash.map": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/lodash.map/-/lodash.map-4.6.0.tgz", - "integrity": "sha1-dx7Hg540c9nEzeKLGTlMNWL09tM=", - "dev": true - }, - "node_modules/lodash.merge": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", - "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", - "dev": true - }, - "node_modules/lodash.pick": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.pick/-/lodash.pick-4.4.0.tgz", - "integrity": "sha1-UvBWEP/53tQiYRRB7R/BI6AwAbM=", - "dev": true - }, - "node_modules/lodash.reduce": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/lodash.reduce/-/lodash.reduce-4.6.0.tgz", - "integrity": "sha1-8atrg5KZrUj3hKu/R2WW8DuRTTs=", - "dev": true - }, - "node_modules/lodash.reject": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/lodash.reject/-/lodash.reject-4.6.0.tgz", - "integrity": "sha1-gNZJLcFHCGS79YNTO2UfQqn1JBU=", - "dev": true - }, - "node_modules/lodash.some": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/lodash.some/-/lodash.some-4.6.0.tgz", - "integrity": "sha1-G7nzFO9ri63tE7VJFpsqlF62jk0=", - "dev": true - }, - "node_modules/log-symbols": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-2.2.0.tgz", - "integrity": "sha512-VeIAFslyIerEJLXHziedo2basKbMKtTw3vfn5IzG0XTjhAVEJyNHnL2p7vc+wBDSdQuUpNw3M2u6xb9QsAY5Eg==", - "dev": true, - "dependencies": { - "chalk": "^2.0.1" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/log-symbols/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/log-symbols/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/log-symbols/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/log-symbols/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/loglevelnext": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/loglevelnext/-/loglevelnext-1.0.5.tgz", - "integrity": "sha512-V/73qkPuJmx4BcBF19xPBr+0ZRVBhc4POxvZTZdMeXpJ4NItXSJ/MSwuFT0kQJlCbXvdlZoQQ/418bS1y9Jh6A==", - "dev": true, - "dependencies": { - "es6-symbol": "^3.1.1", - "object.assign": "^4.1.0" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/longest": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz", - "integrity": "sha1-MKCy2jj3N3DoKUoNIuZiXtd9AJc=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/loose-envify": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", - "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", - "dependencies": { - "js-tokens": "^3.0.0 || ^4.0.0" - }, - "bin": { - "loose-envify": "cli.js" - } - }, - "node_modules/loud-rejection": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", - "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=", - "dev": true, - "dependencies": { - "currently-unhandled": "^0.4.1", - "signal-exit": "^3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/lru-cache": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.3.tgz", - "integrity": "sha512-fFEhvcgzuIoJVUF8fYr5KR0YqxD238zgObTps31YdADwPPAp82a4M8TrckkWyx7ekNlf9aBcVn81cFwwXngrJA==", - "dev": true, - "dependencies": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" - } - }, - "node_modules/make-dir": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", - "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", - "dev": true, - "dependencies": { - "pify": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/make-dir/node_modules/pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/map-cache": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", - "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/map-visit": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", - "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", - "dev": true, - "dependencies": { - "object-visit": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/md5.js": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.4.tgz", - "integrity": "sha1-6b296UogpawYsENA/Fdk1bCdkB0=", - "dev": true, - "dependencies": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1" - } - }, - "node_modules/media-typer": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", - "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/mem": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/mem/-/mem-1.1.0.tgz", - "integrity": "sha1-Xt1StIXKHZAP5kiVUFOZoN+kX3Y=", - "dev": true, - "dependencies": { - "mimic-fn": "^1.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/memory-fs": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.4.1.tgz", - "integrity": "sha1-OpoguEYlI+RHz7x+i7gO1me/xVI=", - "dev": true, - "dependencies": { - "errno": "^0.1.3", - "readable-stream": "^2.0.1" - } - }, - "node_modules/merge": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/merge/-/merge-1.2.1.tgz", - "integrity": "sha512-VjFo4P5Whtj4vsLzsYBu5ayHhoHJ0UqNm7ibvShmbmoz7tGi0vXaoJbGdB+GmDMLUdg8DpQXEIeVDAe8MaABvQ==" - }, - "node_modules/merge-descriptors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", - "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=", - "dev": true - }, - "node_modules/methods": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", - "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/micromatch": { - "version": "3.1.10", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", - "dev": true, - "dependencies": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/miller-rabin": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", - "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", - "dev": true, - "dependencies": { - "bn.js": "^4.0.0", - "brorand": "^1.0.1" - }, - "bin": { - "miller-rabin": "bin/miller-rabin" - } - }, - "node_modules/mime": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-2.4.0.tgz", - "integrity": "sha512-ikBcWwyqXQSHKtciCcctu9YfPbFYZ4+gbHEmE0Q8jzcTYQg5dHCr3g2wwAZjPoJfQVXZq6KXAjpXOTf5/cjT7w==", - "dev": true, - "bin": { - "mime": "cli.js" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/mime-db": { - "version": "1.33.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.33.0.tgz", - "integrity": "sha512-BHJ/EKruNIqJf/QahvxwQZXKygOQ256myeN/Ew+THcAa5q+PjyTTMMeNQC4DZw5AwfvelsUrA6B67NKMqXDbzQ==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/mime-types": { - "version": "2.1.18", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.18.tgz", - "integrity": "sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==", - "dev": true, - "dependencies": { - "mime-db": "~1.33.0" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/mimic-fn": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", - "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/min-document": { - "version": "2.19.0", - "resolved": "https://registry.npmjs.org/min-document/-/min-document-2.19.0.tgz", - "integrity": "sha1-e9KC4/WELtKVu3SM3Z8f+iyCRoU=", - "dev": true, - "dependencies": { - "dom-walk": "^0.1.0" - } - }, - "node_modules/minimalistic-assert": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", - "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", - "dev": true - }, - "node_modules/minimalistic-crypto-utils": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", - "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=", - "dev": true - }, - "node_modules/minimatch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/minimist": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", - "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", - "dev": true - }, - "node_modules/mixin-deep": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz", - "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==", - "dev": true, - "dependencies": { - "for-in": "^1.0.2", - "is-extendable": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/mixin-deep/node_modules/is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "dev": true, - "dependencies": { - "is-plain-object": "^2.0.4" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/mkdirp": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", - "deprecated": "Legacy versions of mkdirp are no longer supported. Please update to mkdirp 1.x. (Note that the API surface has changed to use Promises in 1.x.)", - "dev": true, - "dependencies": { - "minimist": "0.0.8" - }, - "bin": { - "mkdirp": "bin/cmd.js" - } - }, - "node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - }, - "node_modules/nan": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.10.0.tgz", - "integrity": "sha512-bAdJv7fBLhWC+/Bls0Oza+mvTaNQtP+1RyhhhvD95pgUJz6XM5IzgmxOkItJ9tkoCiplvAnXI1tNmmUD/eScyA==", - "dev": true, - "optional": true - }, - "node_modules/nanomatch": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", - "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", - "dev": true, - "dependencies": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "fragment-cache": "^0.2.1", - "is-windows": "^1.0.2", - "kind-of": "^6.0.2", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/negotiator": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.1.tgz", - "integrity": "sha1-KzJxhOiZIQEXeyhWP7XnECrNDKk=", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/neo-async": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.5.1.tgz", - "integrity": "sha512-3KL3fvuRkZ7s4IFOMfztb7zJp3QaVWnBeGoJlgB38XnCRPj/0tLzzLG5IB8NYOHbJ8g8UGrgZv44GLDk6CxTxA==", - "dev": true - }, - "node_modules/next-tick": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz", - "integrity": "sha1-yobR/ogoFpsBICCOPchCS524NCw=", - "dev": true - }, - "node_modules/node-fetch": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-1.7.3.tgz", - "integrity": "sha512-NhZ4CsKx7cYm2vSrBAr2PvFOe6sWDf0UYLRqA6svUYg7+/TSfVAu49jYC4BvQ4Sms9SZgdqGBgroqfDhJdTyKQ==", - "dependencies": { - "encoding": "^0.1.11", - "is-stream": "^1.0.1" - } - }, - "node_modules/node-libs-browser": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.1.0.tgz", - "integrity": "sha512-5AzFzdoIMb89hBGMZglEegffzgRg+ZFoUmisQ8HI4j1KDdpx13J0taNp2y9xPbur6W61gepGDDotGBVQ7mfUCg==", - "dev": true, - "dependencies": { - "assert": "^1.1.1", - "browserify-zlib": "^0.2.0", - "buffer": "^4.3.0", - "console-browserify": "^1.1.0", - "constants-browserify": "^1.0.0", - "crypto-browserify": "^3.11.0", - "domain-browser": "^1.1.1", - "events": "^1.0.0", - "https-browserify": "^1.0.0", - "os-browserify": "^0.3.0", - "path-browserify": "0.0.0", - "process": "^0.11.10", - "punycode": "^1.2.4", - "querystring-es3": "^0.2.0", - "readable-stream": "^2.3.3", - "stream-browserify": "^2.0.1", - "stream-http": "^2.7.2", - "string_decoder": "^1.0.0", - "timers-browserify": "^2.0.4", - "tty-browserify": "0.0.0", - "url": "^0.11.0", - "util": "^0.10.3", - "vm-browserify": "0.0.4" - } - }, - "node_modules/node-libs-browser/node_modules/process": { - "version": "0.11.10", - "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", - "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=", - "dev": true, - "engines": { - "node": ">= 0.6.0" - } - }, - "node_modules/normalize-package-data": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.4.0.tgz", - "integrity": "sha512-9jjUFbTPfEy3R/ad/2oNbKtW9Hgovl5O1FvFWKkKblNXoN/Oou6+9+KKohPK13Yc3/TyunyWhJp6gvRNR/PPAw==", - "dev": true, - "dependencies": { - "hosted-git-info": "^2.1.4", - "is-builtin-module": "^1.0.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" - } - }, - "node_modules/normalize-path": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", - "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", - "dev": true, - "dependencies": { - "remove-trailing-separator": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npm-run-path": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", - "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", - "dev": true, - "dependencies": { - "path-key": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/nth-check": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.1.tgz", - "integrity": "sha1-mSms32KPwsQQmN6rgqxYDPFJquQ=", - "dev": true, - "dependencies": { - "boolbase": "~1.0.0" - } - }, - "node_modules/number-is-nan": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object-copy": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", - "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", - "dev": true, - "dependencies": { - "copy-descriptor": "^0.1.0", - "define-property": "^0.2.5", - "kind-of": "^3.0.3" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object-copy/node_modules/define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, - "dependencies": { - "is-descriptor": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object-copy/node_modules/kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object-is": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.0.1.tgz", - "integrity": "sha1-CqYOyZiaCz7Xlc9NBvYs8a1lObY=", - "dev": true, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/object-keys": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.0.12.tgz", - "integrity": "sha512-FTMyFUm2wBcGHnH2eXmz7tC6IwlqQZ6mVZ+6dm6vZ4IQIHjs6FdNsQBuKGPuUUUY6NfJw2PshC08Tn6LzLDOag==", - "dev": true, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/object-visit": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", - "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", - "dev": true, - "dependencies": { - "isobject": "^3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object.assign": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz", - "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==", - "dev": true, - "dependencies": { - "define-properties": "^1.1.2", - "function-bind": "^1.1.1", - "has-symbols": "^1.0.0", - "object-keys": "^1.0.11" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/object.entries": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.0.4.tgz", - "integrity": "sha1-G/mk3SKI9bM/Opk9JXZh8F0WGl8=", - "dev": true, - "dependencies": { - "define-properties": "^1.1.2", - "es-abstract": "^1.6.1", - "function-bind": "^1.1.0", - "has": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/object.pick": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", - "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", - "dev": true, - "dependencies": { - "isobject": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object.values": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.0.4.tgz", - "integrity": "sha1-5STaCbT2b/Bd9FdUbscqyZ8TBpo=", - "dev": true, - "dependencies": { - "define-properties": "^1.1.2", - "es-abstract": "^1.6.1", - "function-bind": "^1.1.0", - "has": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/on-finished": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", - "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", - "dev": true, - "dependencies": { - "ee-first": "1.1.1" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "dev": true, - "dependencies": { - "wrappy": "1" - } - }, - "node_modules/os-browserify": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", - "integrity": "sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=", - "dev": true - }, - "node_modules/os-homedir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", - "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/os-tmpdir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/p-finally": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", - "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/p-limit": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", - "dev": true, - "dependencies": { - "p-try": "^1.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", - "dev": true, - "dependencies": { - "p-limit": "^1.1.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/p-try": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", - "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/pako": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.6.tgz", - "integrity": "sha512-lQe48YPsMJAig+yngZ87Lus+NF+3mtu7DVOBu6b/gHO1YpKwIj5AWjZ/TOS7i46HD/UixzWb1zeWDZfGZ3iYcg==", - "dev": true - }, - "node_modules/parse-asn1": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.1.tgz", - "integrity": "sha512-KPx7flKXg775zZpnp9SxJlz00gTd4BmJ2yJufSc44gMCRrRQ7NSzAcSJQfifuOLgW6bEi+ftrALtsgALeB2Adw==", - "dev": true, - "dependencies": { - "asn1.js": "^4.0.0", - "browserify-aes": "^1.0.0", - "create-hash": "^1.1.0", - "evp_bytestokey": "^1.0.0", - "pbkdf2": "^3.0.3" - } - }, - "node_modules/parse-json": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", - "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", - "dev": true, - "dependencies": { - "error-ex": "^1.2.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/parseurl": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.2.tgz", - "integrity": "sha1-/CidTtiZMRlGDBViUyYs3I3mW/M=", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/pascalcase": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", - "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/path-browserify": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.0.tgz", - "integrity": "sha1-oLhwcpquIUAFt9UDLsLLuw+0RRo=", - "dev": true - }, - "node_modules/path-dirname": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", - "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=", - "dev": true - }, - "node_modules/path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/path-key": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/path-to-regexp": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.7.0.tgz", - "integrity": "sha1-Wf3g9DW62suhA6hOnTvGTpa5k30=", - "dependencies": { - "isarray": "0.0.1" - } - }, - "node_modules/pbkdf2": { - "version": "3.0.16", - "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.0.16.tgz", - "integrity": "sha512-y4CXP3thSxqf7c0qmOF+9UeOTrifiVTIM+u7NWlq+PRsHbr7r7dpCmvzrZxa96JJUNi0Y5w9VqG5ZNeCVMoDcA==", - "dev": true, - "dependencies": { - "create-hash": "^1.1.2", - "create-hmac": "^1.1.4", - "ripemd160": "^2.0.1", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" - }, - "engines": { - "node": ">=0.12" - } - }, - "node_modules/pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/pkg-dir": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", - "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", - "dev": true, - "dependencies": { - "find-up": "^2.1.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/posix-character-classes": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", - "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/postcss": { - "version": "7.0.17", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.17.tgz", - "integrity": "sha512-546ZowA+KZ3OasvQZHsbuEpysvwTZNGJv9EfyCQdsIDltPSWHAeTQ5fQy/Npi2ZDtLI3zs7Ps/p6wThErhm9fQ==", - "dev": true, - "dependencies": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/postcss-modules-extract-imports": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-2.0.0.tgz", - "integrity": "sha512-LaYLDNS4SG8Q5WAWqIJgdHPJrDDr/Lv775rMBFUbgjTz6j34lUznACHcdRWroPvXANP2Vj7yNK57vp9eFqzLWQ==", - "dev": true, - "dependencies": { - "postcss": "^7.0.5" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/postcss-modules-local-by-default": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-2.0.6.tgz", - "integrity": "sha512-oLUV5YNkeIBa0yQl7EYnxMgy4N6noxmiwZStaEJUSe2xPMcdNc8WmBQuQCx18H5psYbVxz8zoHk0RAAYZXP9gA==", - "dev": true, - "dependencies": { - "postcss": "^7.0.6", - "postcss-selector-parser": "^6.0.0", - "postcss-value-parser": "^3.3.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/postcss-modules-scope": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-2.1.0.tgz", - "integrity": "sha512-91Rjps0JnmtUB0cujlc8KIKCsJXWjzuxGeT/+Q2i2HXKZ7nBUeF9YQTZZTNvHVoNYj1AthsjnGLtqDUE0Op79A==", - "dev": true, - "dependencies": { - "postcss": "^7.0.6", - "postcss-selector-parser": "^6.0.0" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/postcss-modules-values": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-2.0.0.tgz", - "integrity": "sha512-Ki7JZa7ff1N3EIMlPnGTZfUMe69FFwiQPnVSXC9mnn3jozCRBYIxiZd44yJOV2AmabOo4qFf8s0dC/+lweG7+w==", - "dev": true, - "dependencies": { - "icss-replace-symbols": "^1.1.0", - "postcss": "^7.0.6" - } - }, - "node_modules/postcss-selector-parser": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.2.tgz", - "integrity": "sha512-36P2QR59jDTOAiIkqEprfJDsoNrvwFei3eCqKd1Y0tUsBimsq39BLp7RD+JWny3WgB1zGhJX8XVePwm9k4wdBg==", - "dev": true, - "dependencies": { - "cssesc": "^3.0.0", - "indexes-of": "^1.0.1", - "uniq": "^1.0.1" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/postcss-value-parser": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "dev": true - }, - "node_modules/postcss/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/postcss/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/postcss/node_modules/chalk/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/postcss/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/postcss/node_modules/supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dev": true, - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/private": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz", - "integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/process": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/process/-/process-0.5.2.tgz", - "integrity": "sha1-FjjYqONML0QKkduVq5rrZ3/Bhc8=", - "dev": true, - "engines": { - "node": ">= 0.6.0" - } - }, - "node_modules/process-nextick-args": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz", - "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==", - "dev": true - }, - "node_modules/promise": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", - "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", - "dependencies": { - "asap": "~2.0.3" - } - }, - "node_modules/prop-types": { - "version": "15.5.10", - "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.5.10.tgz", - "integrity": "sha1-J5ffwxJhguOpXj37suiT3ddFYVQ=", - "dependencies": { - "fbjs": "^0.8.9", - "loose-envify": "^1.3.1" - } - }, - "node_modules/prop-types-extra": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/prop-types-extra/-/prop-types-extra-1.1.0.tgz", - "integrity": "sha512-QFyuDxvMipmIVKD2TwxLVPzMnO4e5oOf1vr3tJIomL8E7d0lr6phTHd5nkPhFIzTD1idBLLEPeylL9g+rrTzRg==", - "dependencies": { - "react-is": "^16.3.2", - "warning": "^3.0.0" - }, - "peerDependencies": { - "react": ">=0.14.0" - } - }, - "node_modules/proxy-addr": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.4.tgz", - "integrity": "sha512-5erio2h9jp5CHGwcybmxmVqHmnCBZeewlfJ0pex+UW7Qny7OOZXTtH56TGNyBizkgiOwhJtMKrVzDTeKcySZwA==", - "dev": true, - "dependencies": { - "forwarded": "~0.1.2", - "ipaddr.js": "1.8.0" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/prr": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", - "integrity": "sha1-0/wRS6BplaRexok/SEzrHXj19HY=", - "dev": true - }, - "node_modules/pseudomap": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", - "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", - "dev": true - }, - "node_modules/public-encrypt": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.2.tgz", - "integrity": "sha512-4kJ5Esocg8X3h8YgJsKAuoesBgB7mqH3eowiDzMUPKiRDDE7E/BqqZD1hnTByIaAFiwAw246YEltSq7tdrOH0Q==", - "dev": true, - "dependencies": { - "bn.js": "^4.1.0", - "browserify-rsa": "^4.0.0", - "create-hash": "^1.1.0", - "parse-asn1": "^5.0.0", - "randombytes": "^2.0.1" - } - }, - "node_modules/punycode": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", - "dev": true - }, - "node_modules/qs": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", - "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", - "dev": true, - "engines": { - "node": ">=0.6" - } - }, - "node_modules/querystring": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", - "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=", - "deprecated": "The querystring API is considered Legacy. new code should use the URLSearchParams API instead.", - "dev": true, - "engines": { - "node": ">=0.4.x" - } - }, - "node_modules/querystring-es3": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", - "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=", - "dev": true, - "engines": { - "node": ">=0.4.x" - } - }, - "node_modules/randombytes": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.0.6.tgz", - "integrity": "sha512-CIQ5OFxf4Jou6uOKe9t1AOgqpeU5fd70A8NPdHSGeYXqXsPe6peOwI0cUl88RWZ6sP1vPMV3avd/R6cZ5/sP1A==", - "dev": true, - "dependencies": { - "safe-buffer": "^5.1.0" - } - }, - "node_modules/randomfill": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", - "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", - "dev": true, - "dependencies": { - "randombytes": "^2.0.5", - "safe-buffer": "^5.1.0" - } - }, - "node_modules/range-parser": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz", - "integrity": "sha1-9JvmtIeJTdxA3MlKMi9hEJLgDV4=", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/raw-body": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.3.3.tgz", - "integrity": "sha512-9esiElv1BrZoI3rCDuOuKCBRbuApGGaDPQfjSflGxdy4oyzqghxu6klEkkVIvBje+FF0BX9coEv8KqW6X/7njw==", - "dev": true, - "dependencies": { - "bytes": "3.0.0", - "http-errors": "1.6.3", - "iconv-lite": "0.4.23", - "unpipe": "1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/react": { - "version": "16.8.6", - "resolved": "https://registry.npmjs.org/react/-/react-16.8.6.tgz", - "integrity": "sha512-pC0uMkhLaHm11ZSJULfOBqV4tIZkx87ZLvbbQYunNixAAvjnC+snJCg0XQXn9VIsttVsbZP/H/ewzgsd5fxKXw==", - "dependencies": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1", - "prop-types": "^15.6.2", - "scheduler": "^0.13.6" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/react-bootstrap": { - "version": "0.31.1", - "resolved": "https://registry.npmjs.org/react-bootstrap/-/react-bootstrap-0.31.1.tgz", - "integrity": "sha512-hV1684IGmYok4jMT9agTFXBMJrGVYzixiMq6ad9yDgHR4Pj3uH7EBVg+Teo2Qz0VGtOFrPCbKUjdJ0kpCPMPBQ==", - "dependencies": { - "babel-runtime": "^6.11.6", - "classnames": "^2.2.5", - "dom-helpers": "^3.2.0", - "invariant": "^2.2.1", - "keycode": "^2.1.2", - "prop-types": "^15.5.10", - "prop-types-extra": "^1.0.1", - "react-overlays": "^0.7.0", - "react-prop-types": "^0.4.0", - "uncontrollable": "^4.1.0", - "warning": "^3.0.0" - }, - "peerDependencies": { - "react": "^0.14.9 || >=15.3.0", - "react-dom": "^0.14.9 || >=15.3.0" - } - }, - "node_modules/react-deep-force-update": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/react-deep-force-update/-/react-deep-force-update-1.1.1.tgz", - "integrity": "sha1-vNMUeAJ7ZLMznxCJIatSC0MT3Cw=", - "dev": true - }, - "node_modules/react-dom": { - "version": "16.8.6", - "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-16.8.6.tgz", - "integrity": "sha512-1nL7PIq9LTL3fthPqwkvr2zY7phIPjYrT0jp4HjyEQrEROnw4dG41VVwi/wfoCneoleqrNX7iAD+pXebJZwrwA==", - "dependencies": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1", - "prop-types": "^15.6.2", - "scheduler": "^0.13.6" - }, - "peerDependencies": { - "react": "^16.0.0" - } - }, - "node_modules/react-dom/node_modules/prop-types": { - "version": "15.7.2", - "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.7.2.tgz", - "integrity": "sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ==", - "dependencies": { - "loose-envify": "^1.4.0", - "object-assign": "^4.1.1", - "react-is": "^16.8.1" - } - }, - "node_modules/react-dom/node_modules/react-is": { - "version": "16.8.6", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.8.6.tgz", - "integrity": "sha512-aUk3bHfZ2bRSVFFbbeVS4i+lNPZr3/WM5jT2J5omUVV1zzcs1nAaf3l51ctA5FFvCRbhrH0bdAsRRQddFJZPtA==" - }, - "node_modules/react-is": { - "version": "16.4.1", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.4.1.tgz", - "integrity": "sha512-xpb0PpALlFWNw/q13A+1aHeyJyLYCg0/cCHPUA43zYluZuIPHaHL3k8OBsTgQtxqW0FhyDEMvi8fZ/+7+r4OSQ==" - }, - "node_modules/react-overlays": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/react-overlays/-/react-overlays-0.7.4.tgz", - "integrity": "sha512-7vsooMx3siLAuEfTs8FYeP/lAORWWFXTO8PON3KgX0Htq1Oa+po6ioSjGyO0/GO5CVSMNhpWt6V2opeexHgBuQ==", - "dependencies": { - "classnames": "^2.2.5", - "dom-helpers": "^3.2.1", - "prop-types": "^15.5.10", - "prop-types-extra": "^1.0.1", - "warning": "^3.0.0" - }, - "peerDependencies": { - "react": "^0.14.9 || >=15.3.0", - "react-dom": "^0.14.9 || >=15.3.0" - } - }, - "node_modules/react-prop-types": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/react-prop-types/-/react-prop-types-0.4.0.tgz", - "integrity": "sha1-+ZsL+0AGkpya8gUefBQUpcdbk9A=", - "dependencies": { - "warning": "^3.0.0" - }, - "peerDependencies": { - "react": ">=0.14.0" - } - }, - "node_modules/react-proxy": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/react-proxy/-/react-proxy-1.1.8.tgz", - "integrity": "sha1-nb/Z2SdSjDqp9ETkVYw3gwq4wmo=", - "dev": true, - "dependencies": { - "lodash": "^4.6.1", - "react-deep-force-update": "^1.0.0" - } - }, - "node_modules/react-redux": { - "version": "5.0.5", - "resolved": "https://registry.npmjs.org/react-redux/-/react-redux-5.0.5.tgz", - "integrity": "sha1-+OjHsjlCJXblLWt9sGQ5RpvphGo=", - "dependencies": { - "create-react-class": "^15.5.3", - "hoist-non-react-statics": "^1.0.3", - "invariant": "^2.0.0", - "lodash": "^4.2.0", - "lodash-es": "^4.2.0", - "loose-envify": "^1.1.0", - "prop-types": "^15.5.10" - }, - "peerDependencies": { - "react": "^0.14.0 || ^15.0.0-0 || ^16.0.0-0", - "redux": "^2.0.0 || ^3.0.0" - } - }, - "node_modules/react-router": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/react-router/-/react-router-4.1.2.tgz", - "integrity": "sha512-VyM87OP+GkijVkkOXJw39A9fKtFelLoZYYDxtELhpZefjYatxI2SUxZcImo/9Tv52rR9UnNJBPSBpVRQMdvi8A==", - "dependencies": { - "history": "^4.6.0", - "hoist-non-react-statics": "^1.2.0", - "invariant": "^2.2.2", - "loose-envify": "^1.3.1", - "path-to-regexp": "^1.5.3", - "prop-types": "^15.5.4", - "warning": "^3.0.0" - }, - "peerDependencies": { - "react": "^15" - } - }, - "node_modules/react-router-dom": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-4.1.2.tgz", - "integrity": "sha512-CU6pFlpfvIj/xi36rZAbUiN0x39241q+d5bAfJJLtlEqlM62F3zgyv5aERH9zesmKqyDBBp2kd85rkq9Mo/iNQ==", - "dependencies": { - "history": "^4.5.1", - "loose-envify": "^1.3.1", - "prop-types": "^15.5.4", - "react-router": "^4.1.1" - }, - "peerDependencies": { - "react": "^15" - } - }, - "node_modules/react-router-redux": { - "version": "5.0.0-alpha.6", - "resolved": "https://registry.npmjs.org/react-router-redux/-/react-router-redux-5.0.0-alpha.6.tgz", - "integrity": "sha1-dBhmPC7NPFG+hW/PKPPR3uzBpXY=", - "dependencies": { - "history": "^4.5.1", - "prop-types": "^15.5.4", - "react-router": "^4.1.1" - }, - "peerDependencies": { - "react": "^15" - } - }, - "node_modules/react-test-renderer": { - "version": "15.6.1", - "resolved": "https://registry.npmjs.org/react-test-renderer/-/react-test-renderer-15.6.1.tgz", - "integrity": "sha1-Am9KW7VVJmH9LMS7zQ1LyKNev34=", - "dev": true, - "dependencies": { - "fbjs": "^0.8.9", - "object-assign": "^4.1.0" - }, - "peerDependencies": { - "react": "^15.6.1" - } - }, - "node_modules/react-transform-catch-errors": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/react-transform-catch-errors/-/react-transform-catch-errors-1.0.2.tgz", - "integrity": "sha1-G01KdulycYlvwW/jCGx5PsiKnus=", - "dev": true - }, - "node_modules/react-transform-hmr": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/react-transform-hmr/-/react-transform-hmr-1.0.4.tgz", - "integrity": "sha1-4aQL0Krvxy6N/Xp82gmvhQZjl7s=", - "dev": true, - "dependencies": { - "global": "^4.3.0", - "react-proxy": "^1.1.7" - } - }, - "node_modules/react/node_modules/prop-types": { - "version": "15.7.2", - "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.7.2.tgz", - "integrity": "sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ==", - "dependencies": { - "loose-envify": "^1.4.0", - "object-assign": "^4.1.1", - "react-is": "^16.8.1" - } - }, - "node_modules/react/node_modules/react-is": { - "version": "16.8.6", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.8.6.tgz", - "integrity": "sha512-aUk3bHfZ2bRSVFFbbeVS4i+lNPZr3/WM5jT2J5omUVV1zzcs1nAaf3l51ctA5FFvCRbhrH0bdAsRRQddFJZPtA==" - }, - "node_modules/readable-stream": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", - "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", - "dev": true, - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "node_modules/readable-stream/node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true - }, - "node_modules/readdirp": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.1.0.tgz", - "integrity": "sha1-TtCtBg3zBzMAxIRANz9y0cxkLXg=", - "dev": true, - "dependencies": { - "graceful-fs": "^4.1.2", - "minimatch": "^3.0.2", - "readable-stream": "^2.0.2", - "set-immediate-shim": "^1.0.1" - }, - "engines": { - "node": ">=0.6" - } - }, - "node_modules/redbox-react": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/redbox-react/-/redbox-react-1.6.0.tgz", - "integrity": "sha512-mLjM5eYR41yOp5YKHpd3syFeGq6B4Wj5vZr64nbLvTZW5ZLff4LYk7VE4ITpVxkZpCY6OZuqh0HiP3A3uEaCpg==", - "dev": true, - "dependencies": { - "error-stack-parser": "^1.3.6", - "object-assign": "^4.0.1", - "prop-types": "^15.5.4", - "sourcemapped-stacktrace": "^1.1.6" - }, - "peerDependencies": { - "react": "^0.14.0 || ^15.0.0 || ^16.0.0-beta || ^16.0.0", - "react-dom": "^0.14.0 || ^15.0.0 || ^16.0.0-beta || ^16.0.0" - } - }, - "node_modules/reduce-reducers": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/reduce-reducers/-/reduce-reducers-0.1.5.tgz", - "integrity": "sha512-uoVmQnZQ+BtKKDKpBdbBri5SLNyIK9ULZGOA504++VbHcwouWE+fJDIo8AuESPF9/EYSkI0v05LDEQK6stCbTA==" - }, - "node_modules/redux": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/redux/-/redux-3.7.2.tgz", - "integrity": "sha512-pNqnf9q1hI5HHZRBkj3bAngGZW/JMCmexDlOxw4XagXY2o1327nHH54LoTjiPJ0gizoqPDRqWyX/00g0hD6w+A==", - "dependencies": { - "lodash": "^4.2.1", - "lodash-es": "^4.2.1", - "loose-envify": "^1.1.0", - "symbol-observable": "^1.0.3" - } - }, - "node_modules/redux-actions": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/redux-actions/-/redux-actions-2.2.1.tgz", - "integrity": "sha1-1kGGslZJoTwFR4VH1811N7iSQQ0=", - "dependencies": { - "invariant": "^2.2.1", - "lodash": "^4.13.1", - "lodash-es": "^4.17.4", - "reduce-reducers": "^0.1.0" - } - }, - "node_modules/redux-devtools-extension": { - "version": "2.13.2", - "resolved": "https://registry.npmjs.org/redux-devtools-extension/-/redux-devtools-extension-2.13.2.tgz", - "integrity": "sha1-4Pmo6N/KfBe+kscSSVijuU6ykR0=", - "deprecated": "Package moved to @redux-devtools/extension.", - "dev": true, - "peerDependencies": { - "redux": "^3.1.0" - } - }, - "node_modules/redux-form": { - "version": "6.8.0", - "resolved": "https://registry.npmjs.org/redux-form/-/redux-form-6.8.0.tgz", - "integrity": "sha512-rISN+EERGB8nAS/LDnOSQaTf0f+QreXEq+7pRVvBFzmH5vIsYRwVpBtYA8UsibGzO+0BL1bl5L5bxdrNwxI+sA==", - "dependencies": { - "deep-equal": "^1.0.1", - "es6-error": "^4.0.0", - "hoist-non-react-statics": "^1.2.0", - "invariant": "^2.2.2", - "is-promise": "^2.1.0", - "lodash": "^4.17.3", - "lodash-es": "^4.17.3", - "prop-types": "^15.5.9" - }, - "peerDependencies": { - "react": "^15.0.0", - "react-redux": "^4.3.0 || ^5.0.0", - "redux": "^3.0.0" - } - }, - "node_modules/redux-mock-store": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/redux-mock-store/-/redux-mock-store-1.2.3.tgz", - "integrity": "sha1-GzrSmdqRy0G6MNaOO28CRHX7nhs=", - "dev": true - }, - "node_modules/redux-thunk": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/redux-thunk/-/redux-thunk-2.2.0.tgz", - "integrity": "sha1-5hWhbha0ehmlFXZhM9Hj6Zt4UuU=" - }, - "node_modules/regenerate": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.0.tgz", - "integrity": "sha512-1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg==", - "dev": true - }, - "node_modules/regenerator-runtime": { - "version": "0.10.5", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.5.tgz", - "integrity": "sha1-M2w+/BIgrc7dosn6tntaeVWjNlg=" - }, - "node_modules/regenerator-transform": { - "version": "0.10.1", - "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.10.1.tgz", - "integrity": "sha512-PJepbvDbuK1xgIgnau7Y90cwaAmO/LCLMI2mPvaXq2heGMR3aWW5/BQvYrhJ8jgmQjXewXvBjzfqKcVOmhjZ6Q==", - "dev": true, - "dependencies": { - "babel-runtime": "^6.18.0", - "babel-types": "^6.19.0", - "private": "^0.1.6" - } - }, - "node_modules/regex-not": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", - "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", - "dev": true, - "dependencies": { - "extend-shallow": "^3.0.2", - "safe-regex": "^1.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/regexpu-core": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-2.0.0.tgz", - "integrity": "sha1-SdA4g3uNz4v6W5pCE5k45uoq4kA=", - "dev": true, - "dependencies": { - "regenerate": "^1.2.1", - "regjsgen": "^0.2.0", - "regjsparser": "^0.1.4" - } - }, - "node_modules/regjsgen": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.2.0.tgz", - "integrity": "sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc=", - "dev": true - }, - "node_modules/regjsparser": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.1.5.tgz", - "integrity": "sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw=", - "dev": true, - "dependencies": { - "jsesc": "~0.5.0" - }, - "bin": { - "regjsparser": "bin/parser" - } - }, - "node_modules/regjsparser/node_modules/jsesc": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", - "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", - "dev": true, - "bin": { - "jsesc": "bin/jsesc" - } - }, - "node_modules/remove-trailing-separator": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", - "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=", - "dev": true - }, - "node_modules/repeat-element": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.2.tgz", - "integrity": "sha1-7wiaF40Ug7quTZPrmLT55OEdmQo=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/repeat-string": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", - "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", - "dev": true, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/repeating": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", - "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", - "dev": true, - "dependencies": { - "is-finite": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/require-main-filename": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz", - "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=", - "dev": true - }, - "node_modules/resolve-pathname": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/resolve-pathname/-/resolve-pathname-2.2.0.tgz", - "integrity": "sha512-bAFz9ld18RzJfddgrO2e/0S2O81710++chRMUxHjXOYKF6jTAMrUNZrEZ1PvV0zlhfjidm08iRPdTLPno1FuRg==" - }, - "node_modules/resolve-url": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", - "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=", - "deprecated": "https://github.com/lydell/resolve-url#deprecated", - "dev": true - }, - "node_modules/ret": { - "version": "0.1.15", - "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", - "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==", - "dev": true, - "engines": { - "node": ">=0.12" - } - }, - "node_modules/right-align": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/right-align/-/right-align-0.1.3.tgz", - "integrity": "sha1-YTObci/mo1FWiSENJOFMlhSGE+8=", - "dev": true, - "dependencies": { - "align-text": "^0.1.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/rimraf": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.1.tgz", - "integrity": "sha1-wjOOxkPfeht/5cVPqG9XQopV8z0=", - "deprecated": "Rimraf versions prior to v4 are no longer supported", - "dev": true, - "dependencies": { - "glob": "^7.0.5" - }, - "bin": { - "rimraf": "bin.js" - } - }, - "node_modules/ripemd160": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", - "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", - "dev": true, - "dependencies": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1" - } - }, - "node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - }, - "node_modules/safe-regex": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", - "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", - "dev": true, - "dependencies": { - "ret": "~0.1.10" - } - }, - "node_modules/safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" - }, - "node_modules/scheduler": { - "version": "0.13.6", - "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.13.6.tgz", - "integrity": "sha512-IWnObHt413ucAYKsD9J1QShUKkbKLQQHdxRyw73sw4FN26iWr3DY/H34xGPe4nmL1DwXyWmSWmMrA9TfQbE/XQ==", - "dependencies": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1" - } - }, - "node_modules/schema-utils": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-0.3.0.tgz", - "integrity": "sha1-9YdyIs4+kx7a4DnxfrNxbnE3+M8=", - "dev": true, - "dependencies": { - "ajv": "^5.0.0" - }, - "engines": { - "node": ">= 4.3 < 5.0.0 || >= 5.10" - } - }, - "node_modules/semver": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.5.0.tgz", - "integrity": "sha512-4SJ3dm0WAwWy/NVeioZh5AntkdJoWKxHxcmyP622fOkgHa4z3R0TdBJICINyaSDE6uNwVc8gZr+ZinwZAH4xIA==", - "dev": true, - "bin": { - "semver": "bin/semver" - } - }, - "node_modules/send": { - "version": "0.16.2", - "resolved": "https://registry.npmjs.org/send/-/send-0.16.2.tgz", - "integrity": "sha512-E64YFPUssFHEFBvpbbjr44NCLtI1AohxQ8ZSiJjQLskAdKuriYEP6VyGEsRDH8ScozGpkaX1BGvhanqCwkcEZw==", - "dev": true, - "dependencies": { - "debug": "2.6.9", - "depd": "~1.1.2", - "destroy": "~1.0.4", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "fresh": "0.5.2", - "http-errors": "~1.6.2", - "mime": "1.4.1", - "ms": "2.0.0", - "on-finished": "~2.3.0", - "range-parser": "~1.2.0", - "statuses": "~1.4.0" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/send/node_modules/mime": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.4.1.tgz", - "integrity": "sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ==", - "dev": true, - "bin": { - "mime": "cli.js" - } - }, - "node_modules/serve-static": { - "version": "1.13.2", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.13.2.tgz", - "integrity": "sha512-p/tdJrO4U387R9oMjb1oj7qSMaMfmOyd4j9hOFoxZe2baQszgHcSWjuya/CiT5kgZZKRudHNOA0pYXOl8rQ5nw==", - "dev": true, - "dependencies": { - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "parseurl": "~1.3.2", - "send": "0.16.2" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", - "dev": true - }, - "node_modules/set-immediate-shim": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz", - "integrity": "sha1-SysbJ+uAip+NzEgaWOXlb1mfP2E=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/set-value": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.0.tgz", - "integrity": "sha512-hw0yxk9GT/Hr5yJEYnHNKYXkIA8mVJgd9ditYZCe16ZczcaELYYcfvaXesNACk2O8O0nTiPQcQhGUQj8JLzeeg==", - "deprecated": "Critical bug fixed in v3.0.1, please upgrade to the latest version.", - "dev": true, - "dependencies": { - "extend-shallow": "^2.0.1", - "is-extendable": "^0.1.1", - "is-plain-object": "^2.0.3", - "split-string": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/set-value/node_modules/extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "dependencies": { - "is-extendable": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/setimmediate": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", - "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=" - }, - "node_modules/setprototypeof": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", - "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", - "dev": true - }, - "node_modules/sha.js": { - "version": "2.4.11", - "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", - "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", - "dev": true, - "dependencies": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - }, - "bin": { - "sha.js": "bin.js" - } - }, - "node_modules/shebang-command": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", - "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", - "dev": true, - "dependencies": { - "shebang-regex": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/shebang-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", - "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/signal-exit": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", - "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", - "dev": true - }, - "node_modules/slash": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", - "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/snapdragon": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", - "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", - "dev": true, - "dependencies": { - "base": "^0.11.1", - "debug": "^2.2.0", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "map-cache": "^0.2.2", - "source-map": "^0.5.6", - "source-map-resolve": "^0.5.0", - "use": "^3.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/snapdragon-node": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", - "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", - "dev": true, - "dependencies": { - "define-property": "^1.0.0", - "isobject": "^3.0.0", - "snapdragon-util": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/snapdragon-node/node_modules/define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "dev": true, - "dependencies": { - "is-descriptor": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/snapdragon-node/node_modules/is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "deprecated": "Please upgrade to v1.0.1", - "dev": true, - "dependencies": { - "kind-of": "^6.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/snapdragon-node/node_modules/is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "deprecated": "Please upgrade to v1.0.1", - "dev": true, - "dependencies": { - "kind-of": "^6.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/snapdragon-node/node_modules/is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "dependencies": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/snapdragon-util": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", - "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", - "dev": true, - "dependencies": { - "kind-of": "^3.2.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/snapdragon-util/node_modules/kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/snapdragon/node_modules/define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, - "dependencies": { - "is-descriptor": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/snapdragon/node_modules/extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "dependencies": { - "is-extendable": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/source-list-map": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.0.tgz", - "integrity": "sha512-I2UmuJSRr/T8jisiROLU3A3ltr+swpniSmNPI4Ml3ZCX6tVnDsuZzK7F2hl5jTqbZBWCEKlj5HRQiPExXLgE8A==", - "dev": true - }, - "node_modules/source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/source-map-resolve": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.2.tgz", - "integrity": "sha512-MjqsvNwyz1s0k81Goz/9vRBe9SZdB09Bdw+/zYyO+3CuPk6fouTaxscHkgtE8jKvf01kVfl8riHzERQ/kefaSA==", - "deprecated": "See https://github.com/lydell/source-map-resolve#deprecated", - "dev": true, - "dependencies": { - "atob": "^2.1.1", - "decode-uri-component": "^0.2.0", - "resolve-url": "^0.2.1", - "source-map-url": "^0.4.0", - "urix": "^0.1.0" - } - }, - "node_modules/source-map-support": { - "version": "0.4.18", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz", - "integrity": "sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==", - "dev": true, - "dependencies": { - "source-map": "^0.5.6" - } - }, - "node_modules/source-map-url": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz", - "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=", - "deprecated": "See https://github.com/lydell/source-map-url#deprecated", - "dev": true - }, - "node_modules/sourcemapped-stacktrace": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/sourcemapped-stacktrace/-/sourcemapped-stacktrace-1.1.8.tgz", - "integrity": "sha512-OkVoI7GQOLl/laR1qsSo1c87tS8kF2VXhQq2SrQCDdXufBAcm8FgXogWso96ciMYoDtTw1Dn70CVdwYzoYs6Pg==", - "dev": true, - "dependencies": { - "source-map": "0.5.6" - } - }, - "node_modules/sourcemapped-stacktrace/node_modules/source-map": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.6.tgz", - "integrity": "sha1-dc449SvwczxafwwRjYEzSiu19BI=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/spdx-correct": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.0.0.tgz", - "integrity": "sha512-N19o9z5cEyc8yQQPukRCZ9EUmb4HUpnrmaL/fxS2pBo2jbfcFRVuFZ/oFC+vZz0MNNk0h80iMn5/S6qGZOL5+g==", - "dev": true, - "dependencies": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "node_modules/spdx-exceptions": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.1.0.tgz", - "integrity": "sha512-4K1NsmrlCU1JJgUrtgEeTVyfx8VaYea9J9LvARxhbHtVtohPs/gFGG5yy49beySjlIMhhXZ4QqujIZEfS4l6Cg==", - "dev": true - }, - "node_modules/spdx-expression-parse": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz", - "integrity": "sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==", - "dev": true, - "dependencies": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "node_modules/spdx-license-ids": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.0.tgz", - "integrity": "sha512-2+EPwgbnmOIl8HjGBXXMd9NAu02vLjOO1nWw4kmeRDFyHn+M/ETfHxQUK0oXg8ctgVnl9t3rosNVsZ1jG61nDA==", - "dev": true - }, - "node_modules/split-string": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", - "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", - "dev": true, - "dependencies": { - "extend-shallow": "^3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/stackframe": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/stackframe/-/stackframe-0.3.1.tgz", - "integrity": "sha1-M6qE8Rd6VUjIk1Uzy/6zQgl19aQ=", - "dev": true - }, - "node_modules/static-extend": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", - "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", - "dev": true, - "dependencies": { - "define-property": "^0.2.5", - "object-copy": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/static-extend/node_modules/define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, - "dependencies": { - "is-descriptor": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/statuses": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.4.0.tgz", - "integrity": "sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/stream-browserify": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.1.tgz", - "integrity": "sha1-ZiZu5fm9uZQKTkUUyvtDu3Hlyds=", - "dev": true, - "dependencies": { - "inherits": "~2.0.1", - "readable-stream": "^2.0.2" - } - }, - "node_modules/stream-http": { - "version": "2.8.3", - "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-2.8.3.tgz", - "integrity": "sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw==", - "dev": true, - "dependencies": { - "builtin-status-codes": "^3.0.0", - "inherits": "^2.0.1", - "readable-stream": "^2.3.6", - "to-arraybuffer": "^1.0.0", - "xtend": "^4.0.0" - } - }, - "node_modules/string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "dependencies": { - "safe-buffer": "~5.1.0" - } - }, - "node_modules/string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "dev": true, - "dependencies": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "dev": true, - "dependencies": { - "ansi-regex": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/strip-eof": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", - "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/style-loader": { - "version": "0.18.2", - "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-0.18.2.tgz", - "integrity": "sha512-WPpJPZGUxWYHWIUMNNOYqql7zh85zGmr84FdTVWq52WTIkqlW9xSxD3QYWi/T31cqn9UNSsietVEgGn2aaSCzw==", - "dev": true, - "dependencies": { - "loader-utils": "^1.0.2", - "schema-utils": "^0.3.0" - }, - "engines": { - "node": ">= 0.12.0" - } - }, - "node_modules/supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/symbol-observable": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.2.0.tgz", - "integrity": "sha512-e900nM8RRtGhlV36KGEU9k65K3mPb1WV70OdjfxlG2EAuM1noi/E/BaW/uMhL7bPEssK8QV57vN3esixjUvcXQ==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/tapable": { - "version": "0.2.8", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-0.2.8.tgz", - "integrity": "sha1-mTcqXJmb8t8WCvwNdL7U9HlIzSI=", - "dev": true, - "engines": { - "node": ">=0.6" - } - }, - "node_modules/timers-browserify": { - "version": "2.0.10", - "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.10.tgz", - "integrity": "sha512-YvC1SV1XdOUaL6gx5CoGroT3Gu49pK9+TZ38ErPldOWW4j49GI1HKs9DV+KGq/w6y+LZ72W1c8cKz2vzY+qpzg==", - "dev": true, - "dependencies": { - "setimmediate": "^1.0.4" - }, - "engines": { - "node": ">=0.6.0" - } - }, - "node_modules/to-arraybuffer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz", - "integrity": "sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=", - "dev": true - }, - "node_modules/to-fast-properties": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", - "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/to-object-path": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", - "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", - "dev": true, - "dependencies": { - "kind-of": "^3.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/to-object-path/node_modules/kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/to-regex": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", - "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", - "dev": true, - "dependencies": { - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "regex-not": "^1.0.2", - "safe-regex": "^1.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/to-regex-range": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", - "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", - "dev": true, - "dependencies": { - "is-number": "^3.0.0", - "repeat-string": "^1.6.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/trim-right": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz", - "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ts-loader": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/ts-loader/-/ts-loader-2.3.2.tgz", - "integrity": "sha512-KcQvWwla5nviCMX1511iKVsLfrx97Hbah6l5awE1HNL6eiyAzb3gSO8b5yasB6fK/qGukLpu9czWcd/AGGFy/g==", - "dev": true, - "dependencies": { - "chalk": "^2.0.1", - "enhanced-resolve": "^3.0.0", - "loader-utils": "^1.0.2", - "semver": "^5.0.1" - }, - "engines": { - "node": ">=4.3.0 <5.0.0 || >=5.10" - } - }, - "node_modules/ts-loader/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/ts-loader/node_modules/chalk": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.1.tgz", - "integrity": "sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ==", - "dev": true, - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/ts-loader/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/ts-loader/node_modules/supports-color": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz", - "integrity": "sha512-zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w==", - "dev": true, - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/tty-browserify": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz", - "integrity": "sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY=", - "dev": true - }, - "node_modules/type-is": { - "version": "1.6.16", - "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.16.tgz", - "integrity": "sha512-HRkVv/5qY2G6I8iab9cI7v1bOIdhm94dVjQCPFElW9W+3GeDOSHmy2EBYe4VTApuzolPcmgFTN3ftVJRKR2J9Q==", - "dev": true, - "dependencies": { - "media-typer": "0.3.0", - "mime-types": "~2.1.18" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/typescript": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-2.4.2.tgz", - "integrity": "sha1-+DlfhdRZJ2BnyYiqQYN6j4KHCEQ=", - "dev": true, - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, - "engines": { - "node": ">=4.2.0" - } - }, - "node_modules/ua-parser-js": { - "version": "0.7.18", - "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.18.tgz", - "integrity": "sha512-LtzwHlVHwFGTptfNSgezHp7WUlwiqb0gA9AALRbKaERfxwJoiX0A73QbTToxteIAuIaFshhgIZfqK8s7clqgnA==", - "engines": { - "node": "*" - } - }, - "node_modules/uglify-js": { - "version": "2.8.29", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.29.tgz", - "integrity": "sha1-KcVzMUgFe7Th913zW3qcty5qWd0=", - "dev": true, - "dependencies": { - "source-map": "~0.5.1", - "yargs": "~3.10.0" - }, - "bin": { - "uglifyjs": "bin/uglifyjs" - }, - "engines": { - "node": ">=0.8.0" - }, - "optionalDependencies": { - "uglify-to-browserify": "~1.0.0" - } - }, - "node_modules/uglify-js/node_modules/yargs": { - "version": "3.10.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.10.0.tgz", - "integrity": "sha1-9+572FfdfB0tOMDnTvvWgdFDH9E=", - "dev": true, - "dependencies": { - "camelcase": "^1.0.2", - "cliui": "^2.1.0", - "decamelize": "^1.0.0", - "window-size": "0.1.0" - } - }, - "node_modules/uglify-to-browserify": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz", - "integrity": "sha1-bgkk1r2mta/jSeOabWMoUKD4grc=", - "dev": true, - "optional": true - }, - "node_modules/uglifyjs-webpack-plugin": { - "version": "0.4.6", - "resolved": "https://registry.npmjs.org/uglifyjs-webpack-plugin/-/uglifyjs-webpack-plugin-0.4.6.tgz", - "integrity": "sha1-uVH0q7a9YX5m9j64kUmOORdj4wk=", - "dev": true, - "hasInstallScript": true, - "dependencies": { - "source-map": "^0.5.6", - "uglify-js": "^2.8.29", - "webpack-sources": "^1.0.1" - }, - "engines": { - "node": ">=4.3.0 <5.0.0 || >=5.10" - }, - "peerDependencies": { - "webpack": "^1.9 || ^2 || ^2.1.0-beta || ^2.2.0-rc || ^3.0.0" - } - }, - "node_modules/uncontrollable": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/uncontrollable/-/uncontrollable-4.1.0.tgz", - "integrity": "sha1-4DWCkSUuGGUiLZCTmxny9J+Bwak=", - "dependencies": { - "invariant": "^2.1.0" - }, - "peerDependencies": { - "react": ">=0.11.0" - } - }, - "node_modules/union-value": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.0.tgz", - "integrity": "sha1-XHHDTLW61dzr4+oM0IIHulqhrqQ=", - "dev": true, - "dependencies": { - "arr-union": "^3.1.0", - "get-value": "^2.0.6", - "is-extendable": "^0.1.1", - "set-value": "^0.4.3" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/union-value/node_modules/extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "dependencies": { - "is-extendable": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/union-value/node_modules/set-value": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/set-value/-/set-value-0.4.3.tgz", - "integrity": "sha1-fbCPnT0i3H945Trzw79GZuzfzPE=", - "deprecated": "Critical bug fixed in v3.0.1, please upgrade to the latest version.", - "dev": true, - "dependencies": { - "extend-shallow": "^2.0.1", - "is-extendable": "^0.1.1", - "is-plain-object": "^2.0.1", - "to-object-path": "^0.3.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/uniq": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz", - "integrity": "sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8=", - "dev": true - }, - "node_modules/unpipe": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/unset-value": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", - "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", - "dev": true, - "dependencies": { - "has-value": "^0.3.1", - "isobject": "^3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/unset-value/node_modules/has-value": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", - "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", - "dev": true, - "dependencies": { - "get-value": "^2.0.3", - "has-values": "^0.1.4", - "isobject": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/unset-value/node_modules/has-value/node_modules/isobject": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", - "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", - "dev": true, - "dependencies": { - "isarray": "1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/unset-value/node_modules/has-values": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", - "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/unset-value/node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true - }, - "node_modules/upath": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/upath/-/upath-1.1.0.tgz", - "integrity": "sha512-bzpH/oBhoS/QI/YtbkqCg6VEiPYjSZtrHQM6/QnJS6OL9pKUFLqb3aFh4Scvwm45+7iAgiMkLhSbaZxUqmrprw==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/uri-js": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", - "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", - "dev": true, - "dependencies": { - "punycode": "^2.1.0" - } - }, - "node_modules/uri-js/node_modules/punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/urix": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", - "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=", - "deprecated": "Please see https://github.com/lydell/urix#deprecated", - "dev": true - }, - "node_modules/url": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", - "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=", - "dev": true, - "dependencies": { - "punycode": "1.3.2", - "querystring": "0.2.0" - } - }, - "node_modules/url-join": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/url-join/-/url-join-2.0.5.tgz", - "integrity": "sha1-WvIvGMBSoACkjXuCxenC4v7tpyg=", - "dev": true - }, - "node_modules/url/node_modules/punycode": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", - "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=", - "dev": true - }, - "node_modules/use": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", - "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/util": { - "version": "0.10.4", - "resolved": "https://registry.npmjs.org/util/-/util-0.10.4.tgz", - "integrity": "sha512-0Pm9hTQ3se5ll1XihRic3FDIku70C+iHUdT/W926rSgHV5QgXsYbKZN8MSC3tJtSkhuROzvsQjAaFENRXr+19A==", - "dev": true, - "dependencies": { - "inherits": "2.0.3" - } - }, - "node_modules/util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", - "dev": true - }, - "node_modules/utils-merge": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", - "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=", - "dev": true, - "engines": { - "node": ">= 0.4.0" - } - }, - "node_modules/uuid": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz", - "integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==", - "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", - "dev": true, - "bin": { - "uuid": "bin/uuid" - } - }, - "node_modules/validate-npm-package-license": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.3.tgz", - "integrity": "sha512-63ZOUnL4SIXj4L0NixR3L1lcjO38crAbgrTpl28t8jjrfuiOBL5Iygm+60qPs/KsZGzPNg6Smnc/oY16QTjF0g==", - "dev": true, - "dependencies": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, - "node_modules/value-equal": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/value-equal/-/value-equal-0.2.1.tgz", - "integrity": "sha1-wiCjBDYfzmmU277ao8fhobiVhx0=" - }, - "node_modules/vary": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", - "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/vm-browserify": { - "version": "0.0.4", - "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-0.0.4.tgz", - "integrity": "sha1-XX6kW7755Kb/ZflUOOCofDV9WnM=", - "dev": true, - "dependencies": { - "indexof": "0.0.1" - } - }, - "node_modules/warning": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/warning/-/warning-3.0.0.tgz", - "integrity": "sha1-MuU3fLVy3kqwR1O9+IIcAe1gW3w=", - "dependencies": { - "loose-envify": "^1.0.0" - } - }, - "node_modules/watchpack": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.6.0.tgz", - "integrity": "sha512-i6dHe3EyLjMmDlU1/bGQpEw25XSjkJULPuAVKCbNRefQVq48yXKUpwg538F7AZTf9kyr57zj++pQFltUa5H7yA==", - "dev": true, - "dependencies": { - "chokidar": "^2.0.2", - "graceful-fs": "^4.1.2", - "neo-async": "^2.5.0" - } - }, - "node_modules/webpack": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-3.4.1.tgz", - "integrity": "sha1-TD9PP7MYFVpNsMtqNv8FxWl0GPQ=", - "dev": true, - "dependencies": { - "acorn": "^5.0.0", - "acorn-dynamic-import": "^2.0.0", - "ajv": "^5.1.5", - "ajv-keywords": "^2.0.0", - "async": "^2.1.2", - "enhanced-resolve": "^3.4.0", - "escope": "^3.6.0", - "interpret": "^1.0.0", - "json-loader": "^0.5.4", - "json5": "^0.5.1", - "loader-runner": "^2.3.0", - "loader-utils": "^1.1.0", - "memory-fs": "~0.4.1", - "mkdirp": "~0.5.0", - "node-libs-browser": "^2.0.0", - "source-map": "^0.5.3", - "supports-color": "^4.2.1", - "tapable": "^0.2.7", - "uglifyjs-webpack-plugin": "^0.4.6", - "watchpack": "^1.4.0", - "webpack-sources": "^1.0.1", - "yargs": "^8.0.2" - }, - "bin": { - "webpack": "bin/webpack.js" - }, - "engines": { - "node": ">=4.3.0 <5.0.0 || >=5.10" - } - }, - "node_modules/webpack-dev-middleware": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-2.0.6.tgz", - "integrity": "sha512-tj5LLD9r4tDuRIDa5Mu9lnY2qBBehAITv6A9irqXhw/HQquZgTx3BCd57zYbU2gMDnncA49ufK2qVQSbaKJwOw==", - "dev": true, - "dependencies": { - "loud-rejection": "^1.6.0", - "memory-fs": "~0.4.1", - "mime": "^2.1.0", - "path-is-absolute": "^1.0.0", - "range-parser": "^1.0.3", - "url-join": "^2.0.2", - "webpack-log": "^1.0.1" - }, - "engines": { - "node": ">=6" - }, - "peerDependencies": { - "webpack": "^2.2.0 || ^3.0.0 || ^4.0.0-alpha || ^4.0.0-beta || ^4.0.0" - } - }, - "node_modules/webpack-hot-middleware": { - "version": "2.18.2", - "resolved": "https://registry.npmjs.org/webpack-hot-middleware/-/webpack-hot-middleware-2.18.2.tgz", - "integrity": "sha512-dB7uOnUWsojZIAC6Nwi5v3tuaQNd2i7p4vF5LsJRyoTOgr2fRYQdMKQxRZIZZaz0cTPBX8rvcWU1A6/n7JTITg==", - "dev": true, - "dependencies": { - "ansi-html": "0.0.7", - "html-entities": "^1.2.0", - "querystring": "^0.2.0", - "strip-ansi": "^3.0.0" - } - }, - "node_modules/webpack-log": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/webpack-log/-/webpack-log-1.2.0.tgz", - "integrity": "sha512-U9AnICnu50HXtiqiDxuli5gLB5PGBo7VvcHx36jRZHwK4vzOYLbImqT4lwWwoMHdQWwEKw736fCHEekokTEKHA==", - "dev": true, - "dependencies": { - "chalk": "^2.1.0", - "log-symbols": "^2.1.0", - "loglevelnext": "^1.0.1", - "uuid": "^3.1.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/webpack-log/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/webpack-log/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/webpack-log/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/webpack-log/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/webpack-sources": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.1.0.tgz", - "integrity": "sha512-aqYp18kPphgoO5c/+NaUvEeACtZjMESmDChuD3NBciVpah3XpMEU9VAAtIaB1BsfJWWTSdv8Vv1m3T0aRk2dUw==", - "dev": true, - "dependencies": { - "source-list-map": "^2.0.0", - "source-map": "~0.6.1" - } - }, - "node_modules/webpack-sources/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/webpack/node_modules/acorn": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.1.tgz", - "integrity": "sha512-d+nbxBUGKg7Arpsvbnlq61mc12ek3EY8EQldM3GPAhWJ1UVxC6TDGbIvUMNU6obBX3i1+ptCIzV4vq0gFPEGVQ==", - "dev": true, - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/webpack/node_modules/ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/webpack/node_modules/camelcase": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", - "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/webpack/node_modules/cliui": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz", - "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=", - "dev": true, - "dependencies": { - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wrap-ansi": "^2.0.0" - } - }, - "node_modules/webpack/node_modules/cliui/node_modules/string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "dev": true, - "dependencies": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/webpack/node_modules/has-flag": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz", - "integrity": "sha1-6CB68cx7MNRGzHC3NLXovhj4jVE=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/webpack/node_modules/load-json-file": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", - "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=", - "dev": true, - "dependencies": { - "graceful-fs": "^4.1.2", - "parse-json": "^2.2.0", - "pify": "^2.0.0", - "strip-bom": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/webpack/node_modules/os-locale": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-2.1.0.tgz", - "integrity": "sha512-3sslG3zJbEYcaC4YVAvDorjGxc7tv6KVATnLPZONiljsUncvihe9BQoVCEs0RZ1kmf4Hk9OBqlZfJZWI4GanKA==", - "dev": true, - "dependencies": { - "execa": "^0.7.0", - "lcid": "^1.0.0", - "mem": "^1.1.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/webpack/node_modules/path-type": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz", - "integrity": "sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=", - "dev": true, - "dependencies": { - "pify": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/webpack/node_modules/read-pkg": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz", - "integrity": "sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg=", - "dev": true, - "dependencies": { - "load-json-file": "^2.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/webpack/node_modules/read-pkg-up": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-2.0.0.tgz", - "integrity": "sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4=", - "dev": true, - "dependencies": { - "find-up": "^2.0.0", - "read-pkg": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/webpack/node_modules/string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dev": true, - "dependencies": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/webpack/node_modules/string-width/node_modules/is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/webpack/node_modules/string-width/node_modules/strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "dependencies": { - "ansi-regex": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/webpack/node_modules/strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/webpack/node_modules/supports-color": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-4.5.0.tgz", - "integrity": "sha1-vnoN5ITexcXN34s9WRJQRJEvY1s=", - "dev": true, - "dependencies": { - "has-flag": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/webpack/node_modules/which-module": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", - "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", - "dev": true - }, - "node_modules/webpack/node_modules/yargs": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-8.0.2.tgz", - "integrity": "sha1-YpmpBVsc78lp/355wdkY3Osiw2A=", - "dev": true, - "dependencies": { - "camelcase": "^4.1.0", - "cliui": "^3.2.0", - "decamelize": "^1.1.1", - "get-caller-file": "^1.0.1", - "os-locale": "^2.0.0", - "read-pkg-up": "^2.0.0", - "require-directory": "^2.1.1", - "require-main-filename": "^1.0.1", - "set-blocking": "^2.0.0", - "string-width": "^2.0.0", - "which-module": "^2.0.0", - "y18n": "^3.2.1", - "yargs-parser": "^7.0.0" - } - }, - "node_modules/webpack/node_modules/yargs-parser": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-7.0.0.tgz", - "integrity": "sha1-jQrELxbqVd69MyyvTEA4s+P139k=", - "dev": true, - "dependencies": { - "camelcase": "^4.1.0" - } - }, - "node_modules/whatwg-fetch": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-2.0.4.tgz", - "integrity": "sha512-dcQ1GWpOD/eEQ97k66aiEVpNnapVj90/+R+SXTPYGHpYBBypfKJEQjLrvMZ7YXbKm21gXd4NcuxUTjiv1YtLng==" - }, - "node_modules/which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "dev": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "which": "bin/which" - } - }, - "node_modules/window-size": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.1.0.tgz", - "integrity": "sha1-VDjNLqk7IC76Ohn+iIeu58lPnJ0=", - "dev": true, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/wrap-ansi": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", - "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", - "dev": true, - "dependencies": { - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", - "dev": true - }, - "node_modules/xtend": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", - "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=", - "dev": true, - "engines": { - "node": ">=0.4" - } - }, - "node_modules/y18n": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz", - "integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=", - "dev": true - }, - "node_modules/yallist": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", - "dev": true - } - } -} diff --git a/package.json b/package.json deleted file mode 100644 index df5e1f83..00000000 --- a/package.json +++ /dev/null @@ -1,100 +0,0 @@ -{ - "name": "SND", - "version": "1.0.0", - "description": "Structured Narrative Datasets", - "scripts": { - "build": "better-npm-run build:prod", - "build-prod": "npm run build", - "build-style": "npm run build:style", - "clean": "better-npm-run clean", - "setup": "npm install", - "start": "better-npm-run build:style && better-npm-run build:watch" - }, - "betterScripts": { - "build:prod": { - "command": "webpack --config webpack/prod.config.js", - "env": { - "NODE_ENV": "production" - } - }, - "build:style": { - "command": "webpack --config webpack/dev-style.config.js", - "env": { - "NODE_ENV": "development" - } - }, - "build:watch": { - "command": "node webpack/dev-server.js", - "env": { - "NODE_ENV": "development" - } - }, - "clean": { - "command": "rimraf resources/web/snd/gen && rimraf resources/web/snd/app" - } - }, - "repository": { - "type": "svn", - "url": "https://github.com/LabKey" - }, - "author": "joshd@labkey.com", - "license": "ISC", - "bugs": {}, - "homepage": "https://github.com/LabKey", - "dependencies": { - "@types/react": "15.6.0", - "@types/react-bootstrap": "0.0.52", - "@types/react-dom": "15.5.1", - "@types/react-redux": "4.4.47", - "@types/react-router": "4.0.14", - "@types/react-router-dom": "4.0.7", - "@types/react-router-redux": "5.0.4", - "@types/redux-actions": "1.2.7", - "@types/redux-form": "6.6.2", - "babel-polyfill": "6.26.0", - "history": "4.6.3", - "merge": "1.2.1", - "prop-types": "15.5.10", - "react": "16.8.6", - "react-bootstrap": "0.31.1", - "react-dom": "16.8.6", - "react-redux": "5.0.5", - "react-router": "4.1.2", - "react-router-dom": "4.1.2", - "react-router-redux": "5.0.0-alpha.6", - "redux": "3.7.2", - "redux-actions": "2.2.1", - "redux-form": "6.8.0", - "redux-thunk": "2.2.0" - }, - "devDependencies": { - "@types/enzyme": "2.8.4", - "@types/react-test-renderer": "15.5.2", - "@types/redux-mock-store": "0.0.9", - "babel-core": "6.25.0", - "babel-loader": "7.1.1", - "babel-plugin-react-transform": "2.0.2", - "babel-plugin-transform-es2015-modules-commonjs": "6.24.1", - "babel-preset-env": "1.7.0", - "babel-preset-react": "6.24.1", - "babel-preset-react-hmre": "1.1.1", - "better-npm-run": "0.0.15", - "cors": "2.8.4", - "css-loader": "2.1.1", - "enzyme": "2.9.1", - "express": "4.16.4", - "express-http-proxy": "1.0.6", - "extract-text-webpack-plugin": "3.0.0", - "react-test-renderer": "15.6.1", - "react-transform-hmr": "1.0.4", - "redux-devtools-extension": "2.13.2", - "redux-mock-store": "1.2.3", - "rimraf": "2.6.1", - "style-loader": "0.18.2", - "ts-loader": "2.3.2", - "typescript": "2.4.2", - "webpack": "3.4.1", - "webpack-dev-middleware": "2.0.6", - "webpack-hot-middleware": "2.18.2" - } -} diff --git a/pull_request_template.md b/pull_request_template.md deleted file mode 100644 index 2a1c8ac4..00000000 --- a/pull_request_template.md +++ /dev/null @@ -1,8 +0,0 @@ -#### Rationale - - -#### Related Pull Requests -* - -#### Changes -* diff --git a/resources/domain-templates/test.template.xml b/resources/domain-templates/test.template.xml deleted file mode 100644 index a293ce2e..00000000 --- a/resources/domain-templates/test.template.xml +++ /dev/null @@ -1,69 +0,0 @@ - - - - - - - - \ No newline at end of file diff --git a/resources/queries/auditLog/NarrativeAuditEvent.query.xml b/resources/queries/auditLog/NarrativeAuditEvent.query.xml deleted file mode 100644 index cd2ab91b..00000000 --- a/resources/queries/auditLog/NarrativeAuditEvent.query.xml +++ /dev/null @@ -1,18 +0,0 @@ - - - - - - - - core - QCState - RowId - Label - - - -
-
-
-
\ No newline at end of file diff --git a/resources/queries/snd/DeletedLookupSets.sql b/resources/queries/snd/DeletedLookupSets.sql deleted file mode 100644 index b6de93f9..00000000 --- a/resources/queries/snd/DeletedLookupSets.sql +++ /dev/null @@ -1,9 +0,0 @@ -select - substring(qae.oldrecordmap, charindex('objectid=',qae.oldrecordmap, 0) + len('objectid='), 36) as objectid, - qae.date as modified - -from auditLog.QueryUpdateAuditEvent as qae - -WHERE qae.comment = 'A row was deleted.' - and qae.QueryName = 'LookupSets' - and qae.SchemaName = 'snd' \ No newline at end of file diff --git a/resources/queries/snd/DeletedLookups.sql b/resources/queries/snd/DeletedLookups.sql deleted file mode 100644 index b5cb96f8..00000000 --- a/resources/queries/snd/DeletedLookups.sql +++ /dev/null @@ -1,9 +0,0 @@ -select - substring(qae.oldrecordmap, charindex('objectid=',qae.oldrecordmap, 0) + len('objectid='), 36) as objectid, - qae.date as modified - -from auditLog.QueryUpdateAuditEvent as qae - -WHERE qae.comment = 'A row was deleted.' - and qae.QueryName = 'Lookups' - and qae.SchemaName = 'snd' \ No newline at end of file diff --git a/resources/queries/snd/Events.query.xml b/resources/queries/snd/Events.query.xml deleted file mode 100644 index 069ed1db..00000000 --- a/resources/queries/snd/Events.query.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - - - EventId -
-
-
-
\ No newline at end of file diff --git a/resources/queries/snd/EventsCache.query.xml b/resources/queries/snd/EventsCache.query.xml deleted file mode 100644 index 3195efcd..00000000 --- a/resources/queries/snd/EventsCache.query.xml +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - - Event ID - - - HTML Narrative - - -
-
-
-
diff --git a/resources/queries/snd/LookupSets.js b/resources/queries/snd/LookupSets.js deleted file mode 100644 index 62d102f8..00000000 --- a/resources/queries/snd/LookupSets.js +++ /dev/null @@ -1,39 +0,0 @@ -var console = require("console"); -var LABKEY = require("labkey"); - -function init(event){ - - if (event === 'truncate') { - throw "Not allowed to truncate snd.LookupSets. Truncating this table can orphan lookup values in snd data."; - } -} - -function beforeInsert(row, errors) { - row.objectId = row.objectId || LABKEY.Utils.generateUUID().toUpperCase(); -} - -function beforeDelete(row, errors) { - - if (row.LookupSetId !== undefined) { - LABKEY.Query.selectRows({ - schemaName: 'snd', - queryName: 'Lookups', - columns: 'LookupSetId', - scope: this, - filterArray: [ - LABKEY.Filter.create('LookupSetId', row.LookupSetId, LABKEY.Filter.Types.EQUAL), - - ], - success: function (data) { - if (data.rows && data.rows.length) { - errors._form = 'LookupSet is in use and cannot be deleted' - return; - } - }, - failure: function (error) { - console.log('Select rows error'); - console.log(error); - } - }); - } -} \ No newline at end of file diff --git a/resources/queries/snd/LookupSets.query.xml b/resources/queries/snd/LookupSets.query.xml deleted file mode 100644 index 65b07f1a..00000000 --- a/resources/queries/snd/LookupSets.query.xml +++ /dev/null @@ -1,17 +0,0 @@ - - - - - SetName - - - true - - - true - - -
-
-
-
\ No newline at end of file diff --git a/resources/queries/snd/LookupSets/.qview.xml b/resources/queries/snd/LookupSets/.qview.xml deleted file mode 100644 index 02898e37..00000000 --- a/resources/queries/snd/LookupSets/.qview.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - \ No newline at end of file diff --git a/resources/queries/snd/Lookups.js b/resources/queries/snd/Lookups.js deleted file mode 100644 index 177cebbb..00000000 --- a/resources/queries/snd/Lookups.js +++ /dev/null @@ -1,99 +0,0 @@ -var console = require("console"); -var LABKEY = require("labkey"); - -function init(event){ - - if (event === 'truncate') { - throw "Not allowed to truncate snd.Lookups. Truncating this table can orphan lookup values in snd data."; - } -} - -function onUpsert(row, errors) { - // reuse LookupSetId if the SetName already exists. This primarily happens during ETLs - if (row.LookupSetId === undefined || row.LookupSetId == 'undefined') { - LABKEY.Query.selectRows({ - schemaName: 'snd', - queryName: 'LookupSets', - columns: 'LookupSetId', - scope: this, - filterArray: [ - LABKEY.Filter.create('SetName', row.SetName, LABKEY.Filter.Types.EQUAL), - - ], - success: function (data) { - if (data.rows && data.rows.length) { - row.LookupSetId = data.rows[0].LookupSetId; - - // console.log('caching ' + cacheKey + ': ' + row.GroupId); - } - }, - failure: function (error) { - console.log('Select rows error'); - console.log(error); - } - }); - } -} - -function beforeInsert(row, errors) { - row.objectId = row.objectId || LABKEY.Utils.generateUUID().toUpperCase(); - onUpsert(row, errors); -} - -function beforeUpdate(row, errors) { - onUpsert(row, errors); -} - -function beforeDelete(row, errors) { - if (row.LookupSetId !== undefined) { - - let lookupQuery - - LABKEY.Query.selectRows({ - schemaName: 'snd', - queryName: 'LookupSets', - columns: 'SetName', - scope: this, - filterArray: [ - LABKEY.Filter.create('LookupSetId', row.LookupSetId, LABKEY.Filter.Types.EQUAL) - ], - success: function (data) { - if (data.rows && data.rows.length) { - lookupQuery = data.rows[0].SetName - } - else { - errors._form = 'LookupSet not found - shouldn\'t happen' - return - } - - }, - failure: function (error) { - console.log('Select rows error'); - console.log(error); - } - }); - - - LABKEY.Query.selectRows({ - schemaName: 'snd', - queryName: 'Lookups', - columns: 'IsInUse', - scope: this, - filterArray: [ - LABKEY.Filter.create('LookupId', row["LookupId"], LABKEY.Filter.Types.EQUAL), - LABKEY.Filter.create('IsInUse', 'true', LABKEY.Filter.Types.EQUAL) - - ], - success: function (data) { - if (data.rows && data.rows.length) { - errors._form = 'Lookup item cannot be deleted - Lookup is in use.' - } - }, - failure: function (error) { - console.log('Select rows error'); - console.log(error); - } - }); - } -} - diff --git a/resources/queries/snd/Lookups.query.xml b/resources/queries/snd/Lookups.query.xml deleted file mode 100644 index c4b5d0b1..00000000 --- a/resources/queries/snd/Lookups.query.xml +++ /dev/null @@ -1,20 +0,0 @@ - - - - - Value - - - true - - - true - - - true - - -
-
-
-
\ No newline at end of file diff --git a/resources/queries/snd/Lookups/.qview.xml b/resources/queries/snd/Lookups/.qview.xml deleted file mode 100644 index 6dec6876..00000000 --- a/resources/queries/snd/Lookups/.qview.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/resources/queries/snd/PkgCategories.query.xml b/resources/queries/snd/PkgCategories.query.xml deleted file mode 100644 index 24b0ff7e..00000000 --- a/resources/queries/snd/PkgCategories.query.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - - - Package Categories -
-
-
-
\ No newline at end of file diff --git a/resources/queries/snd/PkgCategories/.qview.xml b/resources/queries/snd/PkgCategories/.qview.xml deleted file mode 100644 index 6804f7d6..00000000 --- a/resources/queries/snd/PkgCategories/.qview.xml +++ /dev/null @@ -1,15 +0,0 @@ - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/resources/queries/snd/Pkgs.query.xml b/resources/queries/snd/Pkgs.query.xml deleted file mode 100644 index 44baa19e..00000000 --- a/resources/queries/snd/Pkgs.query.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - - - Packages -
-
-
-
\ No newline at end of file diff --git a/resources/queries/snd/Pkgs/.qview.xml b/resources/queries/snd/Pkgs/.qview.xml deleted file mode 100644 index 42ef0d5a..00000000 --- a/resources/queries/snd/Pkgs/.qview.xml +++ /dev/null @@ -1,18 +0,0 @@ - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/resources/queries/snd/Projects/.qview.xml b/resources/queries/snd/Projects/.qview.xml deleted file mode 100644 index 79d7298a..00000000 --- a/resources/queries/snd/Projects/.qview.xml +++ /dev/null @@ -1,15 +0,0 @@ - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/resources/queries/snd/TopLevelSuperPkgs.sql b/resources/queries/snd/TopLevelSuperPkgs.sql deleted file mode 100644 index 352846ce..00000000 --- a/resources/queries/snd/TopLevelSuperPkgs.sql +++ /dev/null @@ -1,23 +0,0 @@ -/* - * Copyright (c) 2017 LabKey Corporation - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -SELECT SuperPkgId, -PkgId, -PkgId.Description AS Description, -PkgId.Narrative AS Narrative, -PkgId.Repeatable AS Repeatable, -IsPrimitive -FROM SuperPkgs -WHERE ParentSuperPkgId IS NULL \ No newline at end of file diff --git a/resources/queries/snd/TopLevelSuperPkgs/.qview.xml b/resources/queries/snd/TopLevelSuperPkgs/.qview.xml deleted file mode 100644 index 0cbda055..00000000 --- a/resources/queries/snd/TopLevelSuperPkgs/.qview.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - \ No newline at end of file diff --git a/resources/schemas/dbscripts/sqlserver/snd-0.000-22.000.sql b/resources/schemas/dbscripts/sqlserver/snd-0.000-22.000.sql deleted file mode 100644 index 419600ef..00000000 --- a/resources/schemas/dbscripts/sqlserver/snd-0.000-22.000.sql +++ /dev/null @@ -1,1001 +0,0 @@ -/* - * Copyright (c) 2017 LabKey Corporation - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/* snd-17.20-17.30.sql */ - -EXEC core.fn_dropifexists 'CodedEvents','codedprocs','TABLE'; -GO - -EXEC core.fn_dropifexists 'EventNotes','codedprocs','TABLE'; -GO - -EXEC core.fn_dropifexists 'EventsCache','codedprocs','TABLE'; -GO - -EXEC core.fn_dropifexists 'PkgCategoryJunction','codedprocs','TABLE'; -GO - -EXEC core.fn_dropifexists 'ProjectItems','codedprocs','TABLE'; -GO - -EXEC core.fn_dropifexists 'SuperPkgs','codedprocs','TABLE'; -GO - -EXEC core.fn_dropifexists 'PkgCategories','codedprocs','TABLE'; -GO - -EXEC core.fn_dropifexists 'Pkgs','codedprocs','TABLE'; -GO - -EXEC core.fn_dropifexists 'Events','codedprocs','TABLE'; -GO - -EXEC core.fn_dropifexists 'Projects','codedprocs','TABLE'; -GO - -EXEC core.fn_dropifexists NULL,'codedprocs','SCHEMA'; -GO - -CREATE SCHEMA snd; -GO - -/*==============================================================*/ -/* Table: Pkgs */ -/*==============================================================*/ -CREATE TABLE snd.Pkgs ( - PkgId INTEGER NOT NULL, - Description NVARCHAR(4000) NOT NULL, - Active BIT, - Repeatable BIT, - QcState INTEGER, - ObjectId UNIQUEIDENTIFIER NOT NULL DEFAULT newid(), - Container ENTITYID NOT NULL, - CreatedBy USERID, - Created DATETIME, - ModifiedBy USERID, - Modified DATETIME, - Lsid LSIDType, - - CONSTRAINT PK_SND_PKGS PRIMARY KEY (PkgId), - CONSTRAINT FK_SND_PKGS_CONTAINER FOREIGN KEY (Container) REFERENCES core.Containers (EntityId), - CONSTRAINT FK_SND_PKGS_QCSTATE FOREIGN Key (QcState) REFERENCES core.DataStates (RowId) - -) -GO - -CREATE INDEX IDX_SND_PKGS_CONTAINER ON snd.Pkgs(Container); -CREATE INDEX IDX_SND_PKGS_QCSTATE ON snd.Pkgs(QcState); -GO - -/*==============================================================*/ -/* Table: SuperPkgs */ -/*==============================================================*/ -CREATE TABLE snd.SuperPkgs ( - SuperPkgId INTEGER NOT NULL, - ParentSuperPkgId INTEGER, - PkgId INTEGER NOT NULL, - SuperPkgPath VARCHAR(900) NOT NULL, - Container ENTITYID NOT NULL, - CreatedBy USERID, - Created DATETIME, - ModifiedBy USERID, - Modified DATETIME, - Lsid LSIDType, - - CONSTRAINT PK_SND_SUPERPKGS PRIMARY KEY (SuperPkgId), - CONSTRAINT FK_SND_SUPERPKGS_CONTAINER FOREIGN KEY (Container) REFERENCES core.Containers (EntityId), - CONSTRAINT FK_SND_SUPERPKGS_PKGID FOREIGN KEY (PkgId) REFERENCES snd.Pkgs (PkgId) - -) -GO - -CREATE INDEX IDX_SND_SUPERPKGS_CONTAINER ON snd.SuperPkgs(Container); -CREATE INDEX IDX_SND_SUPERPKGS_PKGID ON snd.SuperPkgs(PkgId); -GO - -/*==============================================================*/ -/* Table: PkgCategories */ -/*==============================================================*/ -CREATE TABLE snd.PkgCategories ( - CategoryId INTEGER NOT NULL, - Description NVARCHAR(4000) NOT NULL, - Comment NVARCHAR(4000), - Active BIT NOT NULL, - SortOrder INTEGER, - Container ENTITYID NOT NULL, - CreatedBy USERID, - Created DATETIME, - ModifiedBy USERID, - Modified DATETIME, - Lsid LSIDType, - - CONSTRAINT PK_SND_PKGCATEGORIES PRIMARY KEY (CategoryId), - CONSTRAINT FK_SND_PKGCATEGORIES_CONTAINER FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) - -) -GO - -CREATE INDEX IDX_SND_PKGCATEGORIES_CONTAINER ON snd.PkgCategories(Container); -GO - -/*==============================================================*/ -/* Table: PkgCategoryJunction */ -/*==============================================================*/ -CREATE TABLE snd.PkgCategoryJunction ( - PkgId INTEGER NOT NULL, - CategoryId INTEGER NOT NULL, - Container ENTITYID NOT NULL, - CreatedBy USERID, - Created DATETIME, - ModifiedBy USERID, - Modified DATETIME, - Lsid LSIDType, - - CONSTRAINT PK_SND_PKGCATEGORYJUNCTION PRIMARY KEY (PkgId, CategoryId), - CONSTRAINT FK_SND_PKGCATEGORYJUNCTION_CONTAINER FOREIGN KEY (Container) REFERENCES core.Containers (EntityId), - CONSTRAINT FK_SND_PKGCATEGORYJUNCTION_PKGID FOREIGN KEY (PkgId) REFERENCES snd.Pkgs (PkgId), - CONSTRAINT FK_SND_PKGCATEGORYJUNCTION_CATEGORYID FOREIGN KEY (CategoryId) REFERENCES snd.PkgCategories (CategoryId) - -) -GO - -CREATE INDEX IDX_SND_PKGCATEGORYJUNCTION_CONTAINER ON snd.PkgCategoryJunction(Container); -CREATE INDEX IDX_SND_PKGCATEGORYJUNCTION_PKGID ON snd.PkgCategoryJunction(PkgId); -CREATE INDEX IDX_SND_PKGCATEGORYJUNCTION_CATEGORYID ON snd.PkgCategoryJunction(CategoryId); -GO - -/*==============================================================*/ -/* Table: Projects */ -/*==============================================================*/ -CREATE TABLE snd.Projects ( - ProjectId INTEGER NOT NULL, - RevisionNum INTEGER NOT NULL, - ReferenceId INTEGER NOT NULL, - StartDate date NOT NULL, - EndDate date, - Description NVARCHAR(4000) NOT NULL, - ObjectId UNIQUEIDENTIFIER NOT NULL DEFAULT newid(), - Container ENTITYID NOT NULL, - CreatedBy USERID, - Created DATETIME, - ModifiedBy USERID, - Modified DATETIME, - Lsid LSIDType, - - CONSTRAINT PK_SND_PROJECTS PRIMARY KEY (ProjectId, RevisionNum), - CONSTRAINT FK_SND_PROJECTS_CONTAINER FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) - -) -GO - -CREATE INDEX IDX_SND_PROJECTS_CONTAINER ON snd.Projects(Container); -CREATE UNIQUE INDEX IDX_SND_PROJECTS_OBJECTID ON snd.Projects(ObjectId); -GO - -/*==============================================================*/ -/* Table: ProjectItems */ -/*==============================================================*/ -CREATE TABLE snd.ProjectItems ( - ProjectItemId INTEGER IDENTITY, - ParentObjectId UNIQUEIDENTIFIER, - SuperPkgId INTEGER NOT NULL, - Active BIT NOT NULL DEFAULT 1, - Container ENTITYID NOT NULL, - CreatedBy USERID, - Created DATETIME, - ModifiedBy USERID, - Modified DATETIME, - Lsid LSIDType, - - CONSTRAINT PK_SND_PROJECTITEMS PRIMARY KEY (ProjectItemId), - CONSTRAINT FK_SND_PROJECTITEMS_CONTAINER FOREIGN KEY (Container) REFERENCES core.Containers (EntityId), - CONSTRAINT FK_SND_PROJECTITEMS_SUPERPKGID FOREIGN KEY (SuperPkgId) REFERENCES snd.SuperPkgs (SuperPkgId), - CONSTRAINT FK_SND_PROJECTITEMS_PARENTOBJECTID FOREIGN KEY (ParentObjectId) REFERENCES snd.Projects (ObjectId) - -) -GO - -CREATE INDEX IDX_SND_PROJECTITEMS_CONTAINER ON snd.ProjectItems(Container); -CREATE INDEX IDX_SND_PROJECTITEMS_SUPERPKGID ON snd.ProjectItems(SuperPkgId); -CREATE INDEX IDX_SND_PROJECTITEMS_PARENTOBJECTID ON snd.ProjectItems(ParentObjectId); -GO - -/*==============================================================*/ -/* Table: Events */ -/*==============================================================*/ -CREATE TABLE snd.Events ( - EventId INTEGER NOT NULL, - Id NVARCHAR(32) NOT NULL, - ParentObjectId UNIQUEIDENTIFIER, - Date DATETIME NOT NULL, - QcState int, - ObjectId UNIQUEIDENTIFIER NOT NULL DEFAULT newid(), - Container ENTITYID NOT NULL, - CreatedBy USERID, - Created DATETIME, - ModifiedBy USERID, - Modified DATETIME, - Lsid LSIDType, - - CONSTRAINT PK_SND_EVENTS PRIMARY KEY (EventId), - CONSTRAINT FK_SND_EVENTS_CONTAINER FOREIGN KEY (Container) REFERENCES core.Containers (EntityId), - CONSTRAINT FK_SND_EVENTS_QCSTATE FOREIGN Key (QcState) REFERENCES core.DataStates (RowId), - CONSTRAINT FK_SND_EVENTS_PARENTOBJECTID FOREIGN KEY (ParentObjectId) REFERENCES snd.Projects (ObjectId) - -) -GO - -CREATE INDEX IDX_SND_EVENTS_CONTAINER ON snd.Events(Container); -CREATE INDEX IDX_SND_EVENTS_QCSTATE ON snd.Events(QcState); -CREATE INDEX IDX_SND_EVENTS_PARENTOBJECTID ON snd.Events(ParentObjectId); -GO - -/*==============================================================*/ -/* Table: CodedEvents */ -/*==============================================================*/ -CREATE TABLE snd.CodedEvents ( - CodedEventId INTEGER IDENTITY, - EventId INTEGER NOT NULL, - SuperPkgId INTEGER NOT NULL, - ObjectId UNIQUEIDENTIFIER NULL DEFAULT newid(), - Container ENTITYID NOT NULL, - CreatedBy USERID, - Created DATETIME, - ModifiedBy USERID, - Modified DATETIME, - Lsid LSIDType, - - CONSTRAINT PK_SND_CODEDEVENTS PRIMARY KEY (CodedEventId), - CONSTRAINT FK_SND_CODEDEVENTS_CONTAINER FOREIGN KEY (Container) REFERENCES core.Containers (EntityId), - CONSTRAINT FK_SND_CODEDEVENTS_EVENTID FOREIGN KEY (EventId) REFERENCES snd.Events (EventId), - CONSTRAINT FK_SND_CODEDEVENTS_SUPERPKGID FOREIGN KEY (SuperPkgId) REFERENCES snd.SuperPkgs(SuperPkgId) - -) -GO - -CREATE INDEX IDX_SND_CODEDEVENTS_CONTAINER ON snd.CodedEvents(Container); -CREATE INDEX IDX_SND_CODEDEVENTS_EVENTID ON snd.CodedEvents(EventId); -CREATE INDEX IDX_SND_CODEDEVENTS_SUPERPKGID ON snd.CodedEvents(SuperPkgId); -GO - -/*==============================================================*/ -/* Table: EventNotes */ -/*==============================================================*/ -CREATE TABLE snd.EventNotes ( - EventNoteId INTEGER IDENTITY, - EventId INTEGER, - Note NVARCHAR(MAX) NOT NULL, - Container ENTITYID NOT NULL, - CreatedBy USERID, - Created DATETIME, - ModifiedBy USERID, - Modified DATETIME, - Lsid LSIDType, - - CONSTRAINT PK_SND_EVENTNOTES PRIMARY KEY (EventNoteId), - CONSTRAINT FK_SND_EVENTNOTES_CONTAINER FOREIGN KEY (Container) REFERENCES core.Containers (EntityId), - CONSTRAINT FK_SND_EVENTNOTES_EVENTNOTEID FOREIGN KEY (EventNoteId) REFERENCES snd.Events (EventId) - -) -GO - -CREATE INDEX IDX_SND_EVENTNOTES_CONTAINER ON snd.EventNotes(Container); -CREATE INDEX IDX_SND_EVENTNOTES_EVENTNOTEID ON snd.EventNotes(EventNoteId); -GO - -CREATE INDEX IDX_SND_PKGS_LSID ON snd.Pkgs(Lsid); -CREATE INDEX IDX_SND_SUPERPKGS_LSID ON snd.SuperPkgs(Lsid); -CREATE INDEX IDX_SND_PKGCATEGORIES_LSID ON snd.PkgCategories(Lsid); -CREATE INDEX IDX_SND_PKGCATEGORYJUNCTION_LSID ON snd.PkgCategoryJunction(Lsid); -CREATE INDEX IDX_SND_PROJECTS_LSID ON snd.Projects(Lsid); -CREATE INDEX IDX_SND_PROJECTITEMS_LSID ON snd.ProjectItems(Lsid); -CREATE INDEX IDX_SND_EVENTS_LSID ON snd.Events(Lsid); -CREATE INDEX IDX_SND_CODEDEVENTS_LSID ON snd.CodedEvents(Lsid); -CREATE INDEX IDX_SND_EVENTNOTES_LSID ON snd.EventNotes(Lsid); - -ALTER TABLE snd.Pkgs ADD Narrative NVARCHAR(MAX) NULL; - -/*==============================================================*/ -/* Table: LookupSets */ -/*==============================================================*/ -CREATE TABLE snd.LookupSets ( - LookupSetId INTEGER NOT NULL, - SetName NVARCHAR(128) NOT NULL, - Label NVARCHAR(128), - Description NVARCHAR(900), - Container ENTITYID NOT NULL, - CreatedBy USERID, - Created DATETIME, - ModifiedBy USERID, - Modified DATETIME, - Lsid LSIDType, - - CONSTRAINT PK_SND_LOOKUPSETS PRIMARY KEY (LookupSetId), - CONSTRAINT FK_SND_LOOKUPSETS_CONTAINER FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) -) -GO - -CREATE INDEX IDX_SND_LOOKUPSETS_CONTAINER ON snd.LookupSets(Container); -GO - -/*==============================================================*/ -/* Table: Lookups */ -/*==============================================================*/ -CREATE TABLE snd.Lookups ( - LookupSetId INTEGER NOT NULL, - Value VARCHAR(896) NOT NULL, - Displayable BIT NOT NULL, - SortOrder INTEGER, - Container ENTITYID NOT NULL, - CreatedBy USERID, - Created DATETIME, - ModifiedBy USERID, - Modified DATETIME, - Lsid LSIDType, - - CONSTRAINT PK_SND_LOOKUPS PRIMARY KEY (LookupSetId, Value), - CONSTRAINT FK_SND_LOOKUPS_CONTAINER FOREIGN KEY (Container) REFERENCES core.Containers (EntityId), - CONSTRAINT FK_SND_LOOKUPS_LOOKUPSETID FOREIGN KEY (LookupSetId) REFERENCES snd.LookupSets (LookupSetId) -) - -CREATE INDEX IDX_SND_LOOKUPS_CONTAINER ON snd.Lookups(Container); -CREATE INDEX IDX_SND_LOOKUPS_LOOKUPSETID ON snd.Lookups(LookupSetId); -GO - -ALTER TABLE snd.SuperPkgs ADD SortOrder INTEGER; - -DROP TABLE snd.Lookups -GO - -DROP TABLE snd.LookupSets -GO - -/*==============================================================*/ -/* Table: LookupSets */ -/*==============================================================*/ -CREATE TABLE snd.LookupSets ( - LookupSetId INTEGER IDENTITY(1,1) NOT NULL, - SetName NVARCHAR(128) NOT NULL, - Label NVARCHAR(128), - Description NVARCHAR(900), - Container ENTITYID NOT NULL, - CreatedBy USERID, - Created DATETIME, - ModifiedBy USERID, - Modified DATETIME, - Lsid LSIDType, - - CONSTRAINT PK_SND_LOOKUPSETS PRIMARY KEY (LookupSetId), - CONSTRAINT FK_SND_LOOKUPSETS_CONTAINER FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) -) -GO - -CREATE INDEX IDX_SND_LOOKUPSETS_CONTAINER ON snd.LookupSets(Container); -GO - -/*==============================================================*/ -/* Table: Lookups */ -/*==============================================================*/ -CREATE TABLE snd.Lookups ( - LookupSetId INTEGER NOT NULL, - Value NVARCHAR(446) NOT NULL, - Displayable BIT NOT NULL, - SortOrder INTEGER, - Container ENTITYID NOT NULL, - CreatedBy USERID, - Created DATETIME, - ModifiedBy USERID, - Modified DATETIME, - Lsid LSIDType, - - CONSTRAINT PK_SND_LOOKUPS PRIMARY KEY (LookupSetId, Value), - CONSTRAINT FK_SND_LOOKUPS_CONTAINER FOREIGN KEY (Container) REFERENCES core.Containers (EntityId), - CONSTRAINT FK_SND_LOOKUPS_LOOKUPSETID FOREIGN KEY (LookupSetId) REFERENCES snd.LookupSets (LookupSetId) -) - -CREATE INDEX IDX_SND_LOOKUPS_CONTAINER ON snd.Lookups(Container); -CREATE INDEX IDX_SND_LOOKUPS_LOOKUPSETID ON snd.Lookups(LookupSetId); -GO - -CREATE FUNCTION snd.fGetSuperPkg ( @TopLevelPkgId INT ) -RETURNS TABLE -AS - --- ========================================================================================== --- Author: Terry Hawkins --- Creation date: 9/22/2017 --- Description: Table valued function to return hierarchical view of a superPkg --- ========================================================================================== -RETURN - ( - WITH CTE1 ( TopLevelPkgId, SuperPkgId, ParentSuperPkgId, PkgId, TreePath, SuperPkgPath, SortOrder, DESCRIPTION, Narrative, Active, Repeatable, Level ) - AS ( - - -- anchor member definition - SELECT @TopLevelPkgId AS TopLevelPkgId , - sp.SuperPkgId AS SuperPkgId , - sp.ParentSuperPkgId AS ParentSuperPkgId , - sp.PkgId AS PkgId , - RIGHT(SPACE(3) - + CONVERT(VARCHAR(MAX), ROW_NUMBER() OVER ( ORDER BY sp.SortOrder )), - 3) AS TreePath , - sp.SuperPkgPath AS SuperPkgPath , - sp.SortOrder AS SortOrder , - p.Description AS Description , - p.Narrative AS Narrative , - p.Active AS Active , - p.Repeatable AS Repeatable , - 1 AS Level - FROM snd.SuperPkgs sp - INNER JOIN snd.Pkgs p ON sp.PkgId = p.PkgId - WHERE sp.PkgId = @TopLevelPkgId - AND sp.ParentSuperPkgId IS NULL - UNION ALL - SELECT @TopLevelPkgId AS TopLevelPkgId , - sp.SuperPkgId AS SuperPkgId , - c.SuperPkgId AS ParentSuperPkgId , - sp.PkgId AS PkgId , - c.TreePath + '/' + RIGHT(SPACE(3) - + CONVERT(VARCHAR(MAX), RIGHT(ROW_NUMBER() OVER ( ORDER BY sp.SortOrder ), - 10)), 3) AS TreePath , - sp.SuperPkgPath AS SuperPkgPath , - sp.SortOrder AS SortOrder , - p.Description AS Description , - p.Narrative AS Narrative , - p.Active AS Active , - p.Repeatable AS Repeatable , - c.Level + 1 AS Level - FROM snd.SuperPkgs AS sp - INNER JOIN CTE1 AS c ON - -- add subpackages - sp.ParentSuperPkgId = c.SuperPkgId - -- add children of subpackages - OR sp.ParentSuperPkgId IN (SELECT sp2.SuperPkgId FROM snd.SuperPkgs AS sp2 WHERE c.PkgId = sp2.PkgId AND sp2.ParentSuperPkgId IS NULL ) - - INNER JOIN snd.Pkgs AS p ON sp.PkgId = p.PkgId - ) - SELECT @TopLevelPkgId AS TopLevelPkgId , - c.SuperPkgId AS SuperPkgId , - c.ParentSuperPkgId AS ParentSuperPkgId , - c.PkgId AS PkgId , - c.TreePath AS TreePath , - c.SuperPkgPath AS SuperPkgPath , - c.SortOrder AS SortOrder , - c.DESCRIPTION AS Description , - c.Narrative AS Narrative , - c.Active AS Active , - c.Repeatable AS Repeatable , - c.Level AS Level - FROM CTE1 c - -); -GO - -ALTER TABLE snd.PkgCategories ADD Objectid uniqueidentifier NOT NULL DEFAULT newid(); - -ALTER TABLE snd.PkgCategoryJunction ADD Objectid uniqueidentifier NOT NULL DEFAULT newid(); - -ALTER TABLE snd.ProjectItems ADD Objectid uniqueidentifier NOT NULL DEFAULT newid(); - -ALTER TABLE snd.Lookups ADD LookupId INT IDENTITY(1,1) -ALTER TABLE snd.Lookups DROP CONSTRAINT PK_SND_LOOKUPS -GO - -ALTER TABLE snd.Lookups ADD CONSTRAINT PK_SND_LOOKUPS PRIMARY KEY (LookupId) - -CREATE UNIQUE INDEX IDX_SND_LOOKUPS_LOOKUPSETID_VALUE ON snd.Lookups(LookupSetId, Value) - -/* snd-17.30-18.10.sql */ - -EXEC core.fn_dropifexists 'Projects', 'snd', 'CONSTRAINT', 'IDX_SND_PROJECTS_CONTAINER'; -EXEC core.fn_dropifexists 'Projects', 'snd', 'CONSTRAINT', 'IDX_SND_PROJECTS_OBJECTID'; -EXEC core.fn_dropifexists 'ProjectItems', 'snd', 'CONSTRAINT', 'FK_SND_PROJECTITEMS_PARENTOBJECTID'; -EXEC core.fn_dropifexists 'Events', 'snd', 'CONSTRAINT', 'FK_SND_EVENTS_PARENTOBJECTID'; -GO - -EXEC core.fn_dropifexists 'Projects', 'snd', 'TABLE', NULL -GO - -CREATE TABLE snd.Projects ( - ProjectId INTEGER NOT NULL, - RevisionNum INTEGER NOT NULL, - ReferenceId INTEGER NOT NULL, - StartDate date NOT NULL, - EndDate date, - Description NVARCHAR(4000) NOT NULL, - Active BIT NOT NULL, - ObjectId UNIQUEIDENTIFIER NOT NULL DEFAULT newid(), - Container ENTITYID NOT NULL, - CreatedBy USERID, - Created DATETIME, - ModifiedBy USERID, - Modified DATETIME, - Lsid LSIDType, - - CONSTRAINT PK_SND_PROJECTS PRIMARY KEY NONCLUSTERED (ObjectId), - CONSTRAINT FK_SND_PROJECTS_CONTAINER FOREIGN KEY (Container) REFERENCES core.Containers (EntityId) - -) -GO - -CREATE INDEX IDX_SND_PROJECTS_CONTAINER ON snd.Projects(Container); -CREATE UNIQUE CLUSTERED INDEX IDX_SND_PROJECTS_PROJECTID_REVNUM ON snd.Projects(ProjectId, RevisionNum); -GO - -EXEC core.fn_dropifexists 'ProjectItems', 'snd', 'CONSTRAINT', 'FK_SND_PROJECTITEMS_PARENTOBJECTID'; -EXEC core.fn_dropifexists 'Events', 'snd', 'CONSTRAINT', 'FK_SND_EVENTS_PARENTOBJECTID'; -GO - -DELETE FROM snd.ProjectItems; -DELETE FROM snd.CodedEvents; -DELETE FROM snd.Events; -GO - -ALTER TABLE snd.ProjectItems -ADD CONSTRAINT FK_SND_PROJECTITEMS_PARENTOBJECTID FOREIGN KEY (ParentObjectId) REFERENCES snd.Projects (ObjectId); - -ALTER TABLE snd.Events -ADD CONSTRAINT FK_SND_EVENTS_PARENTOBJECTID FOREIGN KEY (ParentObjectId) REFERENCES snd.Projects (ObjectId); -GO - -EXEC core.fn_dropifexists 'fGetProjectItems','snd', 'FUNCTION'; -GO - -CREATE FUNCTION [snd].[fGetProjectItems] - ( - @projectId INT , - @revisionNum INT - ) -RETURNS TABLE -AS - --- ========================================================================================== --- Author: Terry Hawkins --- Creation date: 12/14/2017 --- Description: Returns the list of ProjectItems for a Project/Revision along with --- sub packages for each ProjectItem --- ========================================================================================== -RETURN - ( -WITH CTE1 ( ProjectId, RevisionNum, ProjectItemId, ParentObjectId, ParentSuperPkgId, SuperPkgId, PkgId, Active, TreePath, Level, Description ) - AS ( SELECT @projectId AS ProjectId , - @revisionNum AS RevisionNum , - pi.ProjectItemId , - pi.ParentObjectId AS ParentObjectId , - sp.ParentSuperPkgId AS ParentSuperPkgId , - sp.SuperPkgId AS SuperPkgId , - sp.PkgId AS PkgId , - p.Active , - RIGHT(SPACE(3) - + CONVERT(VARCHAR(MAX), ROW_NUMBER() OVER ( ORDER BY pi.ProjectItemId, sp.SuperPkgId )), - 3) AS TreePath , - 1 AS Level , - pkg.Description - FROM snd.ProjectItems AS pi - INNER JOIN snd.Projects AS p ON pi.ParentObjectId = p.ObjectId - INNER JOIN snd.SuperPkgs AS sp ON pi.SuperPkgId = sp.SuperPkgId - INNER JOIN snd.Pkgs pkg ON sp.PkgId = pkg.PkgId - WHERE p.ProjectId = @projectId - AND p.RevisionNum = @revisionNum - UNION ALL - SELECT c.ProjectId AS ProjectId , - c.RevisionNum AS RevisionNum , - c.ProjectItemId , - c.ParentObjectId AS ParentObjectId , - sp.ParentSuperPkgId AS ParentSuperPkgId , - sp.SuperPkgId AS SuperPkgId , - sp.PkgId AS PkgId , - c.Active , - c.TreePath + '/' + RIGHT(SPACE(3) - + CONVERT(VARCHAR(MAX), RIGHT(ROW_NUMBER() OVER ( ORDER BY sp.SortOrder ), - 10)), 3) AS TreePath , - c.Level + 1 AS Level , - pkg.Description - FROM snd.SuperPkgs AS sp - INNER JOIN snd.Pkgs AS pkg ON sp.PkgId = pkg.PkgId - INNER JOIN CTE1 AS c ON sp.ParentSuperPkgId = c.SuperPkgId - -- get the sub-pkg hierarchy from the top-level super pkg definition - OR sp.ParentSuperPkgId IN ( - SELECT sp2.SuperPkgId - FROM snd.SuperPkgs AS sp2 - WHERE c.PkgId = sp2.PkgId - AND sp2.ParentSuperPkgId IS NULL) - ) - SELECT @projectId AS ProjectId , - @revisionNum AS RevisionNum , - c.ProjectItemId , - c.SuperPkgId AS SuperPkgId , - c.PkgId AS PkgId , - c.TreePath AS TreePath , - c.Level AS Level , - c.Active AS Active , - c.Description - FROM CTE1 c - -); -GO - -EXEC core.fn_dropifexists 'fGetProjectItems','snd', 'FUNCTION'; -GO - -CREATE FUNCTION [snd].[fGetProjectItems] - ( - @projectId INT , - @revisionNum INT - ) -RETURNS TABLE -AS - --- ========================================================================================== --- Author: Terry Hawkins --- Creation date: 12/14/2017 --- Description: Returns the list of ProjectItems for a Project/Revision along with --- sub packages for each ProjectItem --- ========================================================================================== -RETURN - ( -WITH CTE1 ( ProjectId, RevisionNum, ProjectItemId, ParentObjectId, ParentSuperPkgId, SuperPkgId, PkgId, ProjectActive, Active, TreePath, Level, Description ) - AS ( SELECT @projectId AS ProjectId , - @revisionNum AS RevisionNum , - pi.ProjectItemId , - pi.ParentObjectId AS ParentObjectId , - sp.ParentSuperPkgId AS ParentSuperPkgId , - sp.SuperPkgId AS SuperPkgId , - sp.PkgId AS PkgId , - p.Active as ProjectActive, - pi.Active, - RIGHT(SPACE(3) - + CONVERT(VARCHAR(MAX), ROW_NUMBER() OVER ( ORDER BY pi.ProjectItemId, sp.SuperPkgId )), - 3) AS TreePath , - 1 AS Level , - pkg.Description - FROM snd.ProjectItems AS pi - INNER JOIN snd.Projects AS p ON pi.ParentObjectId = p.ObjectId - INNER JOIN snd.SuperPkgs AS sp ON pi.SuperPkgId = sp.SuperPkgId - INNER JOIN snd.Pkgs pkg ON sp.PkgId = pkg.PkgId - WHERE p.ProjectId = @projectId - AND p.RevisionNum = @revisionNum - UNION ALL - SELECT c.ProjectId AS ProjectId , - c.RevisionNum AS RevisionNum , - c.ProjectItemId , - c.ParentObjectId AS ParentObjectId , - sp.ParentSuperPkgId AS ParentSuperPkgId , - sp.SuperPkgId AS SuperPkgId , - sp.PkgId AS PkgId , - c.ProjectActive , - c.Active , - c.TreePath + '/' + RIGHT(SPACE(3) - + CONVERT(VARCHAR(MAX), RIGHT(ROW_NUMBER() OVER ( ORDER BY sp.SortOrder ), - 10)), 3) AS TreePath , - c.Level + 1 AS Level , - pkg.Description - FROM snd.SuperPkgs AS sp - INNER JOIN snd.Pkgs AS pkg ON sp.PkgId = pkg.PkgId - INNER JOIN CTE1 AS c ON sp.ParentSuperPkgId = c.SuperPkgId - -- get the sub-pkg hierarchy from the top-level super pkg definition - OR sp.ParentSuperPkgId IN ( - SELECT sp2.SuperPkgId - FROM snd.SuperPkgs AS sp2 - WHERE c.PkgId = sp2.PkgId - AND sp2.ParentSuperPkgId IS NULL) - ) - SELECT @projectId AS ProjectId , - @revisionNum AS RevisionNum , - c.ProjectItemId , - c.SuperPkgId AS SuperPkgId , - c.PkgId AS PkgId , - c.TreePath AS TreePath , - c.Level AS Level , - c.ProjectActive , - c.Active , - c.Description - FROM CTE1 c - -); -GO - -/* Recreate EventData table */ -EXEC core.fn_dropifexists 'CodedEvents','snd','TABLE'; -GO - -/*==============================================================*/ -/* Table: EventData */ -/*==============================================================*/ -CREATE TABLE snd.EventData ( - EventDataId INTEGER NOT NULL, - EventId INTEGER NOT NULL, - SuperPkgId INTEGER NOT NULL, - ObjectURI LsidType NOT NULL, - Container ENTITYID NOT NULL, - CreatedBy USERID, - Created DATETIME, - ModifiedBy USERID, - Modified DATETIME, - Lsid LSIDType, - - CONSTRAINT PK_SND_EVENTDATA PRIMARY KEY (EventDataId), - CONSTRAINT FK_SND_EVENTDATA_CONTAINER FOREIGN KEY (Container) REFERENCES core.Containers (EntityId), - CONSTRAINT FK_SND_EVENTDATA_EVENTID FOREIGN KEY (EventId) REFERENCES snd.Events (EventId), - CONSTRAINT FK_SND_EVENTDATA_SUPERPKGID FOREIGN KEY (SuperPkgId) REFERENCES snd.SuperPkgs(SuperPkgId) -) -GO - -/* Recreate EventNoteId not as identity column for etls */ -ALTER TABLE snd.EventNotes DROP PK_SND_EVENTNOTES; -ALTER TABLE snd.EventNotes DROP CONSTRAINT FK_SND_EVENTNOTES_EVENTNOTEID; -DROP INDEX IDX_SND_EVENTNOTES_EVENTNOTEID ON snd.EventNotes; -GO - -ALTER TABLE snd.EventNotes DROP COLUMN EventNoteId; -GO - -ALTER TABLE snd.EventNotes ADD EventNoteId INTEGER NOT NULL; -GO - -ALTER TABLE snd.EventNotes ADD CONSTRAINT PK_SND_EVENTNOTES PRIMARY KEY (EventNoteId); -ALTER TABLE snd.EventNotes ADD CONSTRAINT FK_SND_EVENTNOTES_EVENTNOTEID FOREIGN KEY (EventNoteId) REFERENCES snd.Events (EventId) -CREATE INDEX IDX_SND_EVENTNOTES_EVENTNOTEID ON snd.EventNotes(EventNoteId); -GO - -EXEC sp_rename 'snd.Events.Id', 'ParticipantId', 'COLUMN'; - -EXEC core.fn_dropifexists 'EventNotes', 'snd', 'CONSTRAINT', 'FK_SND_EVENTNOTES_EVENTNOTEID'; -GO - -ALTER TABLE snd.EventNotes ADD CONSTRAINT FK_SND_EVENTNOTES_EVENTID FOREIGN KEY (EventId) REFERENCES snd.Events (EventId) -GO - -ALTER TABLE snd.Lookups ADD [ObjectId] UNIQUEIDENTIFIER NOT NULL DEFAULT NEWID(); -CREATE UNIQUE INDEX idx_snd_lookups_objectid ON snd.lookups (ObjectId); - -ALTER TABLE snd.LookupSets ADD [ObjectId] UNIQUEIDENTIFIER NOT NULL DEFAULT NEWID(); -CREATE UNIQUE INDEX idx_snd_lookupSets_objectid ON snd.lookupSets (ObjectId); -GO - -ALTER TABLE snd.EventData ADD ParentEventDataId INT; -ALTER TABLE snd.EventData DROP COLUMN Modified; -ALTER TABLE snd.EventData DROP COLUMN ModifiedBy; -ALTER TABLE snd.EventData DROP COLUMN Created; -ALTER TABLE snd.EventData DROP COLUMN CreatedBy; -GO - -/* snd-18.10-18.20.sql */ - -sp_rename 'snd.Events.ParticipantId', 'SubjectId', 'COLUMN'; - -/*==============================================================*/ -/* Table: EventsCache */ -/*==============================================================*/ -CREATE TABLE snd.EventsCache ( - EventId INTEGER NOT NULL, - HtmlNarrative NVARCHAR(MAX), - - CONSTRAINT PK_SND_EVENTS_CACHE PRIMARY KEY (EventId) -) -GO - -ALTER TABLE snd.EventsCache - ADD CONSTRAINT FK_EventsCache_EventId FOREIGN KEY (EventId) REFERENCES snd.Events (EventId); -GO - -ALTER TABLE snd.EventData ADD ObjectId UNIQUEIDENTIFIER NOT NULL DEFAULT newid(); -GO - -ALTER TABLE snd.EventsCache ADD Container entityid; -ALTER TABLE snd.EventsCache ADD CONSTRAINT FK_SND_EVENTSCACHE_CONTAINER FOREIGN KEY (Container) REFERENCES core.Containers (EntityId); -CREATE INDEX IDX_SND_EVENTSCACHE_CONTAINER ON snd.EventsCache(Container); -GO - -ALTER TABLE snd.EventNotes -DROP CONSTRAINT PK_SND_EVENTNOTES; -DROP INDEX IDX_SND_EVENTNOTES_EVENTNOTEID ON snd.EventNotes; -GO - -ALTER TABLE snd.EventNotes -DROP COLUMN EventNoteId; -GO - -ALTER TABLE snd.EventNotes ADD EventNoteId INT IDENTITY(1, 1) NOT NULL; -GO - -ALTER TABLE snd.EventNotes ADD CONSTRAINT PK_SND_EVENTNOTES PRIMARY KEY (EventNoteId); -CREATE INDEX IDX_SND_EVENTNOTES_EVENTNOTEID ON snd.EventNotes(EventNoteId); - -EXEC core.fn_dropifexists 'EventData', 'snd', 'COLUMN', 'ObjectId'; - -ALTER TABLE snd.SuperPkgs -ADD Required BIT NOT NULL DEFAULT 0; -EXEC core.fn_dropifexists 'fGetSuperPkg', 'snd', 'FUNCTION', INT; -GO - -CREATE FUNCTION snd.fGetSuperPkg ( @TopLevelPkgId INT ) -RETURNS TABLE -AS - --- ========================================================================================== --- Author: Terry Hawkins --- Creation date: 9/22/2017 --- Description: Table valued function to return hierarchical view of a superPkg --- ========================================================================================== --- Revising 4/3/2018 to add Required column -RETURN - ( - WITH CTE1 ( TopLevelPkgId, SuperPkgId, ParentSuperPkgId, PkgId, TreePath, SuperPkgPath, SortOrder, Required, DESCRIPTION, Narrative, Active, Repeatable, Level ) - AS ( - - -- anchor member definition - SELECT @TopLevelPkgId AS TopLevelPkgId , - sp.SuperPkgId AS SuperPkgId , - sp.ParentSuperPkgId AS ParentSuperPkgId , - sp.PkgId AS PkgId , - RIGHT(SPACE(3) - + CONVERT(VARCHAR(MAX), ROW_NUMBER() OVER ( ORDER BY sp.SortOrder )), - 3) AS TreePath , - sp.SuperPkgPath AS SuperPkgPath , - sp.SortOrder AS SortOrder , - sp.Required AS Required , - p.Description AS Description , - p.Narrative AS Narrative , - p.Active AS Active , - p.Repeatable AS Repeatable , - 1 AS Level - FROM snd.SuperPkgs sp - INNER JOIN snd.Pkgs p ON sp.PkgId = p.PkgId - WHERE sp.PkgId = @TopLevelPkgId - AND sp.ParentSuperPkgId IS NULL - UNION ALL - SELECT @TopLevelPkgId AS TopLevelPkgId , - sp.SuperPkgId AS SuperPkgId , - c.SuperPkgId AS ParentSuperPkgId , - sp.PkgId AS PkgId , - c.TreePath + '/' + RIGHT(SPACE(3) - + CONVERT(VARCHAR(MAX), RIGHT(ROW_NUMBER() OVER ( ORDER BY sp.SortOrder ), - 10)), 3) AS TreePath , - sp.SuperPkgPath AS SuperPkgPath , - sp.SortOrder AS SortOrder , - sp.Required AS Required , - p.Description AS Description , - p.Narrative AS Narrative , - p.Active AS Active , - p.Repeatable AS Repeatable , - c.Level + 1 AS Level - FROM snd.SuperPkgs AS sp - INNER JOIN CTE1 AS c ON - -- add subpackages - sp.ParentSuperPkgId = c.SuperPkgId - -- add children of subpackages - OR sp.ParentSuperPkgId IN (SELECT sp2.SuperPkgId FROM snd.SuperPkgs AS sp2 WHERE c.PkgId = sp2.PkgId AND sp2.ParentSuperPkgId IS NULL ) - - INNER JOIN snd.Pkgs AS p ON sp.PkgId = p.PkgId - ) - SELECT @TopLevelPkgId AS TopLevelPkgId , - c.SuperPkgId AS SuperPkgId , - c.ParentSuperPkgId AS ParentSuperPkgId , - c.PkgId AS PkgId , - c.TreePath AS TreePath , - c.SuperPkgPath AS SuperPkgPath , - c.SortOrder AS SortOrder , - c.Required AS Required , - c.DESCRIPTION AS Description , - c.Narrative AS Narrative , - c.Active AS Active , - c.Repeatable AS Repeatable , - c.Level AS Level - FROM CTE1 c - -); -GO - -CREATE INDEX IDX_SND_EVENTDATA_SUPERPKGID ON snd.EventData(SuperPkgId); -CREATE INDEX IDX_SND_EVENTDATA_EVENTID ON snd.EventData(EventId); - -/* - Changes to improve snd.Events CRUD performance and add default QcState -*/ - --- delete the trigger if it exists -IF (OBJECT_ID(N'snd.ti_after_Events') IS NOT NULL) - BEGIN - DROP TRIGGER snd.ti_after_Events; - END; -GO --- if QcState is null, set it to 'Completed' -CREATE TRIGGER snd.ti_after_Events ON snd.Events FOR INSERT AS -BEGIN - SET NOCOUNT ON; - UPDATE snd.Events - SET QcState = (SELECT TOP(1) q.rowId FROM core.Qcstate AS q WHERE q.Label = 'Completed' ORDER BY q.rowId) - FROM inserted AS i - INNER JOIN snd.Events AS e ON i.EventId = e.EventId - WHERE i.QcState IS NULL -END -go - --- move Events table cluster index to AnimalId, Date --- --- need to drop foreign key constraints that reference the cluster index -EXEC core.fn_dropifexists 'EventNotes', 'snd', 'CONSTRAINT', 'FK_SND_EVENTNOTES_EVENTID' -EXEC core.fn_dropifexists 'EventData', 'snd', 'CONSTRAINT', 'FK_SND_EVENTDATA_EVENTID' -EXEC core.fn_dropifexists 'EventsCache', 'snd', 'CONSTRAINT', 'FK_EventsCache_EventId' --- drop the snd.Events PK constraint (clustered index) -EXEC core.fn_dropifexists 'Events', 'snd', 'CONSTRAINT', 'PK_SND_EVENTS' - --- Add new snd.Events table PK constraint (non-clustered) -ALTER TABLE snd.Events ADD CONSTRAINT PK_SND_EVENTS PRIMARY KEY NONCLUSTERED - ( - EventId ASC - )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, IGNORE_DUP_KEY = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) -GO - --- Create new clustered index on snd.Events -EXEC core.fn_dropifexists 'Events', 'snd', 'INDEX', 'IDX_SND_EVENTS_SUBJECTID_DATE' -CREATE CLUSTERED INDEX IDX_SND_EVENTS_SUBJECTID_DATE ON snd.Events - ( - SubjectId ASC, - Date DESC - )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) -GO - - --- restore constraints --- --- EventNotes -ALTER TABLE snd.EventNotes WITH CHECK ADD CONSTRAINT FK_SND_EVENTNOTES_EVENTID FOREIGN KEY(EventId) - REFERENCES snd.Events (EventId) -GO - -ALTER TABLE snd.EventNotes CHECK CONSTRAINT FK_SND_EVENTNOTES_EVENTID -GO - --- EventData -ALTER TABLE snd.EventData WITH CHECK ADD CONSTRAINT FK_SND_EVENTDATA_EVENTID FOREIGN KEY(EventId) - REFERENCES snd.Events (EventId) -GO - -ALTER TABLE snd.EventData CHECK CONSTRAINT FK_SND_EVENTDATA_EVENTID -GO - --- EventsCache -ALTER TABLE snd.EventsCache WITH CHECK ADD CONSTRAINT FK_EVENTSCACHE_EVENTID FOREIGN KEY(EventId) - REFERENCES snd.Events (EventId) -GO - -ALTER TABLE snd.EventsCache CHECK CONSTRAINT FK_EventsCache_EventId -GO - -/* 21.xxx SQL scripts */ - -UPDATE exp.PropertyValidator SET TypeURI = 'urn:lsid:labkey.com:PropertyValidator:textlength' -WHERE TypeURI = 'urn:lsid:labkey.com:PropertyValidator:length' - AND PropertyId IN ( - SELECT PropertyId - FROM exp.PropertyDescriptor - WHERE PropertyURI LIKE '%:package-snd%Package%' - ) - -GO - -ALTER TRIGGER snd.ti_after_Events ON snd.Events FOR INSERT AS -BEGIN - SET NOCOUNT ON; -UPDATE snd.Events -SET QcState = (SELECT TOP(1) q.rowId FROM core.DataStates AS q WHERE q.Label = 'Completed' ORDER BY q.rowId) - FROM inserted AS i - INNER JOIN snd.Events AS e ON i.EventId = e.EventId -WHERE i.QcState IS NULL -END -GO \ No newline at end of file diff --git a/resources/schemas/dbscripts/sqlserver/snd-23.000-23.001.sql b/resources/schemas/dbscripts/sqlserver/snd-23.000-23.001.sql deleted file mode 100644 index b19de0ac..00000000 --- a/resources/schemas/dbscripts/sqlserver/snd-23.000-23.001.sql +++ /dev/null @@ -1,15 +0,0 @@ - -ALTER TRIGGER snd.ti_after_Events ON snd.Events FOR INSERT AS -BEGIN - SET NOCOUNT ON; - DECLARE - @Container ENTITYID - - SELECT @Container = INSERTED.[Container] FROM INSERTED -UPDATE snd.Events -SET QcState = (SELECT TOP(1) q.rowId FROM core.DataStates AS q WHERE q.Label = 'Completed' AND q.Container = @Container ORDER BY q.rowId) - FROM INSERTED AS i - INNER JOIN snd.Events AS e ON i.EventId = e.EventId -WHERE i.QcState IS NULL -END -GO \ No newline at end of file diff --git a/resources/schemas/dbscripts/sqlserver/snd-23.001-23.003.sql b/resources/schemas/dbscripts/sqlserver/snd-23.001-23.003.sql deleted file mode 100644 index 09295734..00000000 --- a/resources/schemas/dbscripts/sqlserver/snd-23.001-23.003.sql +++ /dev/null @@ -1,2 +0,0 @@ -CREATE UNIQUE INDEX IDX_LookupSets_SetName -ON snd.LookupSets (SetName) \ No newline at end of file diff --git a/resources/schemas/dbscripts/sqlserver/snd-23.003-23.004.sql b/resources/schemas/dbscripts/sqlserver/snd-23.003-23.004.sql deleted file mode 100644 index 06654e22..00000000 --- a/resources/schemas/dbscripts/sqlserver/snd-23.003-23.004.sql +++ /dev/null @@ -1 +0,0 @@ -ALTER TABLE snd.EventData ADD SortOrder INTEGER NULL; \ No newline at end of file diff --git a/resources/schemas/dbscripts/sqlserver/snd-23.004-23.005.sql b/resources/schemas/dbscripts/sqlserver/snd-23.004-23.005.sql deleted file mode 100644 index b12a8426..00000000 --- a/resources/schemas/dbscripts/sqlserver/snd-23.004-23.005.sql +++ /dev/null @@ -1,80 +0,0 @@ -EXEC core.fn_dropifexists 'fGetAllSuperPkgs', 'snd', 'function'; -go - -CREATE FUNCTION snd.fGetAllSuperPkgs -() -RETURNS @expandedSuperPackages TABLE -( - TopLevelPkgId INTEGER NOT NULL, - SuperPkgId INTEGER NOT NULL, - ParentSuperPkgId INTEGER NULL, - PkgId INTEGER NOT NULL, - TreePath VARCHAR(MAX) NOT NULL, - SuperPkgPath INTEGER NOT NULL, - SortOrder INTEGER NULL, - Required INTEGER NULL, - DESCRIPTION VARCHAR(MAX) NOT NULL, - Narrative VARCHAR(MAX) NOT NULL, - Active INTEGER NOT NULL, - Repeatable INTEGER NOT NULL, - Level INTEGER NOT NULL -) -AS -BEGIN - DECLARE @loopCursor CURSOR; - DECLARE @topLevelPkgId INTEGER; - - SET @loopCursor = CURSOR LOCAL FOR -SELECT PkgId AS topLevelPackageId -FROM snd.SuperPkgs AS tl -WHERE ParentSuperPkgId IS NULL - FOR READ ONLY; - -OPEN @loopCursor; -FETCH @loopCursor - INTO @topLevelPkgId; - -WHILE (@@FETCH_STATUS = 0) -BEGIN -INSERT INTO @expandedSuperPackages -( - TopLevelPkgId, - SuperPkgId, - ParentSuperPkgId, - PkgId, - TreePath, - SuperPkgPath, - SortOrder, - Required, - DESCRIPTION, - Narrative, - Active, - Repeatable, - Level -) - (SELECT TopLevelPkgId, - SuperPkgId, - ParentSuperPkgId, - PkgId, - TreePath, - SuperPkgPath, - SortOrder, - Required, - Description, - Narrative, - Active, - Repeatable, - Level - FROM snd.fGetSuperPkg(@topLevelPkgId) ); - -FETCH NEXT FROM @loopCursor - INTO @topLevelPkgId; - -END; -- WHILE LOOP - -CLOSE @loopCursor; -DEALLOCATE @loopCursor; - - RETURN; -END; -GO diff --git a/resources/schemas/snd.xml b/resources/schemas/snd.xml deleted file mode 100644 index ea90e8ff..00000000 --- a/resources/schemas/snd.xml +++ /dev/null @@ -1,367 +0,0 @@ - - - - - DETAILED - /snd/app.view?#/packages/new - - - - - - - - - - - - - - - - - - lsidtype - true - true - false - - ObjectUri - Object - exp - - - -
- - DETAILED - /snd/app.view?#/packages/new - - - - - - - - - - - - - - - - - lsidtype - true - true - false - - ObjectUri - Object - exp - - - -
- - DETAILED - /snd/app.view?#/categories - - - - - - - - - - - - - - - - - lsidtype - true - true - false - - ObjectUri - Object - exp - - - -
- - /snd/app.view?#/categories - - - - - - - - - - - - - - lsidtype - true - true - false - - ObjectUri - Object - exp - - - -
- - DETAILED - /snd/app.view?#/projects/new - - - - - - - - - - - - - - - - - - - - lsidtype - true - true - false - - ObjectUri - Object - exp - - - -
- - DETAILED - /snd/app.view?#/projects/new - - - - - - - - - - - - - - - - lsidtype - true - true - false - - ObjectUri - Object - exp - - - -
- - - - - - - - - - - - - - - lsidtype - true - true - false - - ObjectUri - Object - exp - - - -
- - - - - - - - - - NOLOOKUP - - - - - NOLOOKUP - - - - - - true - - - true - - - lsidtype - true - true - false - - ObjectUri - Object - exp - - - -
- - - - - - - - - - - - - - - - lsidtype - true - true - false - - ObjectUri - Object - exp - - - -
- - DETAILED - - - - - - - true - true - - - - - - - - lsidtype - true - true - false - - ObjectUri - Object - exp - - - -
- - DETAILED - - - - - - - - true - true - - - - - - - - lsidtype - true - true - false - - ObjectUri - Object - exp - - - -
- - - - - - - - - - -
-
\ No newline at end of file diff --git a/resources/views/app.html b/resources/views/app.html deleted file mode 100644 index 865e670f..00000000 --- a/resources/views/app.html +++ /dev/null @@ -1 +0,0 @@ -
\ No newline at end of file diff --git a/resources/views/app.view.xml b/resources/views/app.view.xml deleted file mode 100644 index dfe5ab99..00000000 --- a/resources/views/app.view.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/resources/views/appDev.html b/resources/views/appDev.html deleted file mode 100644 index dca3e6d8..00000000 --- a/resources/views/appDev.html +++ /dev/null @@ -1,2 +0,0 @@ -
- \ No newline at end of file diff --git a/resources/views/appDev.view.xml b/resources/views/appDev.view.xml deleted file mode 100644 index 0737af93..00000000 --- a/resources/views/appDev.view.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/resources/views/importPackages.html b/resources/views/importPackages.html deleted file mode 100644 index 16b71226..00000000 --- a/resources/views/importPackages.html +++ /dev/null @@ -1,39 +0,0 @@ -
-
- - diff --git a/resources/views/importPackages.view.xml b/resources/views/importPackages.view.xml deleted file mode 100644 index c9f1f6c1..00000000 --- a/resources/views/importPackages.view.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - \ No newline at end of file diff --git a/resources/views/test.html b/resources/views/test.html deleted file mode 100644 index ad077b77..00000000 --- a/resources/views/test.html +++ /dev/null @@ -1,74 +0,0 @@ - -
- - - - -
-
- Initializing data... -
-
-
- - \ No newline at end of file diff --git a/resources/views/test.view.xml b/resources/views/test.view.xml deleted file mode 100644 index 61dec3bc..00000000 --- a/resources/views/test.view.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - - - \ No newline at end of file diff --git a/schemas/snd.xsd b/schemas/snd.xsd deleted file mode 100644 index 8c8032fd..00000000 --- a/schemas/snd.xsd +++ /dev/null @@ -1,79 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/src/client/app.tsx b/src/client/app.tsx deleted file mode 100644 index a454c95d..00000000 --- a/src/client/app.tsx +++ /dev/null @@ -1,67 +0,0 @@ -/* - * Copyright (c) 2017 LabKey Corporation - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -// React -import * as React from 'react'; -import * as ReactDom from 'react-dom'; - -// Redux -import { applyMiddleware, compose, createStore } from 'redux'; -import { Provider } from 'react-redux'; -import { composeWithDevTools } from 'redux-devtools-extension'; - -// Routing -import { createBrowserHistory, createHashHistory } from 'history'; -import { Route } from 'react-router-dom'; -import { ConnectedRouter, routerMiddleware } from 'react-router-redux'; - -// Middleware -import thunk from 'redux-thunk'; - -// Components -import { App } from './containers/App/App'; - -// Reducers -import { reducers } from './reducers/index'; - -// switch history to createBrowser history after servlet work -const history = createHashHistory(); -const middleware = applyMiddleware(thunk, routerMiddleware(history)); - -const storeCreator = compose( - middleware -)(createStore); -const store = storeCreator( - reducers - // uncomment following line to view redux dev tools in chrome - // ,composeWithDevTools() -); - -jQuery(() => { - ReactDom.render( - -
- { /* ConnectedRouter will use the store from Provider automatically */ } - -
- -
-
-
-
, - document.getElementById('app') - ); -}); \ No newline at end of file diff --git a/src/client/components/Categories/CategoriesSelectResults.tsx b/src/client/components/Categories/CategoriesSelectResults.tsx deleted file mode 100644 index c7843cea..00000000 --- a/src/client/components/Categories/CategoriesSelectResults.tsx +++ /dev/null @@ -1,150 +0,0 @@ -/* - * Copyright (c) 2017-2018 LabKey Corporation - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -import * as React from 'react'; -import { ListGroupItem } from 'react-bootstrap' - -import { LabKeyQueryRowPropertyProps } from '../../query/model' - -// Results -interface CategoriesSelectResultsProps { - data?: {[key: string]: LabKeyQueryRowPropertyProps} - dataIds?: Array - disabled?: boolean - handleSelect?: (id: number) => any - focused?: boolean - selected?: Array -} - -export class CategoriesSelectResults extends React.Component { - - renderSelected() { - const { data, selected } = this.props; - if (selected && selected.length) { - return ( -
- {selected.map((id, i) => { - return ( - this.props.handleSelect(id)}> -
- {[data[id]['CategoryId'].value, data[id]['Description'].value].join(' ')} - -   - -
-
- ) - })} -
-
- ) - } - - return null; - } - - renderSelectedCondensed() { - const { data, disabled, selected } = this.props; - - let text; - if (selected && selected.length) { - text = selected.map((id) => { - return [data[id]['CategoryId'].value, data[id]['Description'].value].join('-'); - }).join(', '); - - } - else { - text = 'No categories assigned' - } - // todo: disabled version will show white block where '...' would be, need to figure out dynamic background color - return ( -
-
-
- {text} -
- -
-
- ) - - } - - renderOptions() { - const { data, dataIds } = this.props; - - if (data && dataIds.length) { - return ( -
- {dataIds.map((id, i) => { - return ( - this.props.handleSelect(id)}> -
- {[data[id]['CategoryId'].value, data[id]['Description'].value].join(' ')} -
- -
- ) - })} -
- - ) - } - - return ( - -
- No results found -
-
- ) - } - - render() { - const { focused } = this.props; - - if (focused) { - return ( -
-
- {this.renderSelected()} - {this.renderOptions()} -
-
- ) - } - - return ( -
- {this.renderSelectedCondensed()} -
- ) - } -} \ No newline at end of file diff --git a/src/client/components/Crumb/Crumb.tsx b/src/client/components/Crumb/Crumb.tsx deleted file mode 100644 index c219b1df..00000000 --- a/src/client/components/Crumb/Crumb.tsx +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Copyright (c) 2017-2018 LabKey Corporation - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -import * as React from 'react'; -import { Link } from 'react-router-dom'; - -export class Crumb extends React.Component { - - render() { - const {crumbNav, crumbName, clearAllErrors} = this.props; - - return ( -
- clearAllErrors()}> - -

{crumbName}

- -
- ); - } -} \ No newline at end of file diff --git a/src/client/components/Form/Attributes.tsx b/src/client/components/Form/Attributes.tsx deleted file mode 100644 index 5604a28e..00000000 --- a/src/client/components/Form/Attributes.tsx +++ /dev/null @@ -1,244 +0,0 @@ -/* - * Copyright (c) 2017-2018 LabKey Corporation - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -import * as React from 'react'; -import { PropertyDescriptor } from '../../containers/Wizards/model' - -import { CheckboxInput } from './Checkbox' -import { DataTypeSelect } from './DataTypeSelect' -import { LookupKeyInput } from './LookupKeyInput' -import { NumericInput } from './NumericInput' -import { TextInput } from './TextInput' -import { OrderSelect } from "./OrderSelect"; - -interface AttributeColumnProps { - disabled?: boolean - inputComponent?: (props) => JSX.Element - label?: string - name: string - required?: boolean - width?: string -} - -const ATTRIBUTE_COLUMNS: Array = [ - { - disabled: true, - inputComponent: TextInput, - label: 'Key', - name: 'name', - required: true, - width: '7vw' - }, - { - inputComponent: LookupKeyInput, - label: 'Lookup Key', - name: 'lookupKey', - required: false, - width: '13vw' - }, - { - inputComponent: DataTypeSelect, - label: 'Data Type', - name: 'rangeURI', - required: true, - width: '8vw' - }, - { - inputComponent: TextInput, - label: 'Label', - name: 'label', - required: false, - width: '13vw' - }, - { - inputComponent: NumericInput, - label: 'Min', - name: 'min', - required: false, - width: '8vw' - }, - { - inputComponent: NumericInput, - label: 'Max', - name: 'max', - required: false, - width: '8vw' - }, - { - inputComponent: TextInput, - label: 'Format', - name: 'format', - required: false, - width: '8vw' - }, - { - inputComponent: TextInput, - label: 'Default', - name: 'defaultValue', - required: false, - width: '13vw' - }, - { - inputComponent: OrderSelect, - label: 'Order', - name: 'sortOrder', - required: false, - width: '12vw' - }, - { - inputComponent: CheckboxInput, - label: 'Req.', - name: 'required', - required: false, - width: '5vw' - }, - { - inputComponent: TextInput, - label: 'Redacted Text', - name: 'redactedText', - required: false, - width: '13vw' - } -]; - -const AttributesGridHeader = () => { - return ( - - - {ATTRIBUTE_COLUMNS.map((col: AttributeColumnProps, i: number) => { - return ( - - {col.label}{col.required ? ' *' : ''} - - ) - })} - - - ) -}; - -class AttributesGridBody extends React.Component { - constructor(props) { - super(props); - - this.handleChange = this.handleChange.bind(this); - } - - handleChange(event: React.ChangeEvent) { - const { handleFieldChange } = this.props; - handleFieldChange(event); - } - - render() { - const { attributes, attributeLookups, readOnly } = this.props; - let disabled = readOnly; - if (attributes && attributes.length) { - return ( - - {attributes.map((attribute, i) => { - return ( - - {ATTRIBUTE_COLUMNS.map((col: AttributeColumnProps, j: number) => { - - // Only enable format for double - if (col.name === 'format' && attribute.rangeURI != 'double') { - disabled = true; - } - else { - disabled = readOnly; - } - - // Change default field based on lookup key - let lookups = attributeLookups; - if (col.name === 'defaultValue') { - if (attribute.lookupValues !== null) { - col.inputComponent = LookupKeyInput; - lookups = attribute.lookupValues; - // attribute.defaultValue = attribute.defaultLookups[0].value; - } - else { - col.inputComponent = TextInput - } - } - - // Disable data type if lookup key selected - if (col.name === 'rangeURI' && attribute.lookupKey && attribute.lookupKey !== '') { - disabled = true; - attribute[col.name] = "string"; - } - - const props = { - attribute, - attributeId: i, - attributeLookups: lookups, - disabled: col.disabled || disabled, - first: i === 0, - last: i === attributes.length - 1, - name: `attributes_${attribute.sortOrder}_${col.name}`, - onChange: this.handleChange, - value: attribute[col.name], - required: col.required - }; - return ( - - {React.createElement(col.inputComponent, props)} - - ) - })} - - ) - })} - - ) - } - - return ( - - - No tokens added - - - ); - } -} - -interface AttributesGridProps { - attributes: Array - attributeLookups?: Array<{label: string, value: string}> - handleFieldChange?: (evt) => void - narrative: string - readOnly?: boolean -} - -export class Attributes extends React.Component { - render() { - const { attributes, attributeLookups, handleFieldChange, narrative, readOnly } = this.props; - - return ( -
- - - -
-
- ) - } -} - diff --git a/src/client/components/Form/Checkbox.tsx b/src/client/components/Form/Checkbox.tsx deleted file mode 100644 index fa217f13..00000000 --- a/src/client/components/Form/Checkbox.tsx +++ /dev/null @@ -1,65 +0,0 @@ -/* - * Copyright (c) 2017-2018 LabKey Corporation - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -import * as React from 'react'; -import { WrappedFieldProps } from 'redux-form'; - -interface FieldCheckboxInputProps { - disabled?: boolean - required?: boolean -} - -export const FieldCheckboxInput = (field: WrappedFieldProps & FieldCheckboxInputProps) => { - const checked = field.input.value; - return ( - - - {field.meta.touched && field.meta.error ? -
- {field.meta.error} -
- : null} -
- ); -}; - -interface CheckboxInputProps { - disabled?: boolean - name?: string - onChange?: React.EventHandler> - required?: boolean - value?: boolean -} - -export const CheckboxInput = (props: CheckboxInputProps) => { - return ( - - - - ); -}; \ No newline at end of file diff --git a/src/client/components/Form/DataTypeSelect.tsx b/src/client/components/Form/DataTypeSelect.tsx deleted file mode 100644 index 5542c22b..00000000 --- a/src/client/components/Form/DataTypeSelect.tsx +++ /dev/null @@ -1,102 +0,0 @@ -/* - * Copyright (c) 2017 LabKey Corporation - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -import * as React from 'react'; -import { WrappedFieldProps } from 'redux-form'; - -interface FieldDataTypeSelectProps { - disabled?: boolean - required?: boolean -} - -export const FieldDataTypeSelect = (field: WrappedFieldProps<{}> & FieldDataTypeSelectProps) => { - return ( -
- - {field.meta.touched && field.meta.error ? -
- {field.meta.error} -
- : null} -
- ); -}; - -const DataTypeOptions: Array<{label: string, value: string}> = [ - { - value: 'string', - label: 'String' - }, - { - value: 'int', - label: 'Integer' - }, - { - value: 'double', - label: 'Decimal' - }, - { - value: 'boolean', - label: 'Boolean' - }, - { - value: 'date', - label: 'Date' - }, - { - value: 'dateTime', - label: 'Date Time' - }, - { - value: 'ParticipantId', - label: 'Id' - } - -]; - -interface DataTypeSelectProps { - disabled?: boolean - name?: string - onChange?: React.EventHandler> - required?: boolean - value?: string -} - -export const DataTypeSelect = (props: DataTypeSelectProps) => { - return ( -
- -
- ); -}; \ No newline at end of file diff --git a/src/client/components/Form/DatePicker.tsx b/src/client/components/Form/DatePicker.tsx deleted file mode 100644 index 7175dfdc..00000000 --- a/src/client/components/Form/DatePicker.tsx +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Copyright (c) 2018 LabKey Corporation - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -import * as React from 'react'; - -interface DatePickerProps { - disabled?: boolean - name?: string - onChange?: any - required?: boolean - value?: string -} - -export const DatePicker = (props: DatePickerProps) => { - const { value } = props; - let dateString = "", year, month, day; - - if (value != null && value != '') { - let dateParts, date = value.split(' ')[0]; - if (date.indexOf('-') !== -1) { - dateParts = date.split('-'); - } else { - dateParts = date.split('/'); - } - year = dateParts[0]; - month = dateParts[1]; - day = dateParts[2]; - dateString = year + '-' - + (month.toString().length === 1 ? '0' + month : month) + '-' - + (day.toString().length === 1 ? '0' + day : day); - } - - const disabledStyle = { - backgroundColor: '#EEEEEE' - }; - - return ( -
- -
- ); -}; \ No newline at end of file diff --git a/src/client/components/Form/EmailInput.tsx b/src/client/components/Form/EmailInput.tsx deleted file mode 100644 index 8f2d302c..00000000 --- a/src/client/components/Form/EmailInput.tsx +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Copyright (c) 2017 LabKey Corporation - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -import * as React from 'react'; -import { WrappedFieldProps } from 'redux-form'; - -export const EmailInput = (field: WrappedFieldProps) => { - return ( -
- - {field.meta.touched && field.meta.error ? -
- {field.meta.error} -
- : null} -
- ); -}; \ No newline at end of file diff --git a/src/client/components/Form/ExtraFieldSelect.tsx b/src/client/components/Form/ExtraFieldSelect.tsx deleted file mode 100644 index b8832704..00000000 --- a/src/client/components/Form/ExtraFieldSelect.tsx +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Copyright (c) 2017-2018 LabKey Corporation - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -import * as React from 'react'; -import {AttributeLookupProps} from "../../containers/Wizards/model"; - -interface ExtraFieldSelectProps { - disabled?: boolean - handleFieldChange?: any - index?: any - name?: string - options?: Array - val?: any -} - -export const ExtraFieldSelectInput = (props: ExtraFieldSelectProps) => { - - return ( -
- -
- ); -}; \ No newline at end of file diff --git a/src/client/components/Form/ExtraFields.tsx b/src/client/components/Form/ExtraFields.tsx deleted file mode 100644 index 929bb542..00000000 --- a/src/client/components/Form/ExtraFields.tsx +++ /dev/null @@ -1,129 +0,0 @@ -/* - * Copyright (c) 2017-2018 LabKey Corporation - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -import * as React from 'react'; -import {ControlLabel} from 'react-bootstrap' - -import {TextInput} from '../../components/Form/TextInput' -import {ExtraFieldSelectInput} from "./ExtraFieldSelect"; -import {VIEW_TYPES} from "../../containers/App/constants"; - -interface ExtraFieldsProps -{ - disabled?: any - extraFields?: any - handleFieldChange?: any - name?: string - revisedFields?: boolean - perRow: number - index?: number - displayCols: number - key: string - view?: VIEW_TYPES -} - -export class ExtraFields extends React.Component -{ - private staticVals: Array - constructor(props) { - super(props); - - if (this.props.revisedFields) { - this.staticVals = this.props.extraFields.map((extra) => { - return extra.value; - }); - } - } - - render() - { - const {extraFields, disabled, handleFieldChange, revisedFields, displayCols, index, perRow, key} = this.props; - let count = index - 1; - let colClass = "col-xs-" + displayCols; - let start = index ? index : 0; - - if (extraFields && extraFields.length) - { - let fields = extraFields.slice(start, start + perRow); // One row - if (fields.length > 0) - { - let divClass = "row clearfix"; - if (index != 0) - divClass += " margin-top"; - - return ( -
-
- {fields.map((extra) => { - let {name, label} = extra; - if (!label) - label = name; - - return ( -
- {label} -
- ); - } - )} -
-
- {fields.map((extra, i) => { - let {lookupValues, value, name} = extra; - count++; - return ( - -
- {lookupValues ? ( -
- {React.createElement(ExtraFieldSelectInput, - { - disabled: disabled || revisedFields, - options: lookupValues, - handleFieldChange: revisedFields ? null : handleFieldChange, - val: revisedFields ? this.staticVals[i + index] : value, - name: name + (revisedFields ? 'Old' : ''), - index: count - } - )} -
- ) : ( -
- {React.createElement(TextInput, - { - disabled: disabled || revisedFields, - value: revisedFields ? this.staticVals[i + index] : value, - onChange: revisedFields ? null : handleFieldChange, - name: ('extraFields_' + count + '_' + name + (revisedFields ? 'Old' : '')) - } - )} -
- )} -
- ); - } - )} -
-
- ); - } - return
- } - - return
- } -} diff --git a/src/client/components/Form/IdInput.tsx b/src/client/components/Form/IdInput.tsx deleted file mode 100644 index 0ffaa135..00000000 --- a/src/client/components/Form/IdInput.tsx +++ /dev/null @@ -1,51 +0,0 @@ -/* - * Copyright (c) 2018 LabKey Corporation - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -import * as React from 'react'; -import { WrappedFieldProps } from 'redux-form'; - -import {VIEW_TYPES} from "../../containers/App/constants"; - -interface IdInputProps { - view?: VIEW_TYPES -} - -interface IdInputProps { - name?: string - onChange?: any - value?: number - view?: VIEW_TYPES -} - -export const IdInput = (props: IdInputProps ) => { - const { onChange, value, view } = props; - // Check if the view is Clone or New and if so hide the pkgId value as this will be set by the server - - const idValue = view !== VIEW_TYPES.PACKAGE_CLONE && view !== VIEW_TYPES.PACKAGE_NEW && view !== VIEW_TYPES.PROJECT_NEW as any ? value : ''; - - return ( -
- -
- ); -}; \ No newline at end of file diff --git a/src/client/components/Form/LookupKeyInput.tsx b/src/client/components/Form/LookupKeyInput.tsx deleted file mode 100644 index 605879e4..00000000 --- a/src/client/components/Form/LookupKeyInput.tsx +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Copyright (c) 2017 LabKey Corporation - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -import * as React from 'react'; - -// add error check type behavior looking for schema.query format -interface LookupKeyInputProps { - attribute?: any - attributeId?: any - attributeLookups?: any - disabled?: boolean - name?: string - onChange?: React.EventHandler> - required?: boolean - value?: string -} - -export const LookupKeyInput = (props: LookupKeyInputProps) => { - let value = ''; - - if (props.value) { - value = props.value; - } - - return ( -
- -
- ); -}; \ No newline at end of file diff --git a/src/client/components/Form/NumericInput.tsx b/src/client/components/Form/NumericInput.tsx deleted file mode 100644 index af3afb62..00000000 --- a/src/client/components/Form/NumericInput.tsx +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Copyright (c) 2017-2018 LabKey Corporation - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -import * as React from 'react'; - -interface NumericInputProps { - disabled?: boolean - name?: string - onChange?: React.EventHandler> - required?: boolean - value?: number -} - -export const NumericInput = (props: NumericInputProps) => { - return ( -
- -
- ); -}; \ No newline at end of file diff --git a/src/client/components/Form/OrderSelect.tsx b/src/client/components/Form/OrderSelect.tsx deleted file mode 100644 index 20a01c1f..00000000 --- a/src/client/components/Form/OrderSelect.tsx +++ /dev/null @@ -1,67 +0,0 @@ -/* - * Copyright (c) 2017 LabKey Corporation - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -import * as React from 'react'; -import { WrappedFieldProps } from 'redux-form'; - -const OrderOptions: Array<{label: string, value: string}> = [ - { - value: 'up', - label: 'Move Up' - }, - { - value: 'down', - label: 'Move Down' - } -]; - -interface OrderSelectProps { - disabled?: boolean - first?: boolean - last?: boolean - name?: string - onChange?: React.EventHandler> - required?: boolean - value?: string -} - -export const OrderSelect = (props: OrderSelectProps) => { - // order is 0 indexed, add 1 for display purposes - return ( -
-
- {props.value + 1} -
-
- -
-
- ); -}; \ No newline at end of file diff --git a/src/client/components/Form/PasswordInput.tsx b/src/client/components/Form/PasswordInput.tsx deleted file mode 100644 index 0ddbe7b9..00000000 --- a/src/client/components/Form/PasswordInput.tsx +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Copyright (c) 2017 LabKey Corporation - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -import * as React from 'react'; -import { WrappedFieldProps } from 'redux-form'; - -export const PasswordInput = (field: WrappedFieldProps) => { - return ( -
- - {field.meta.touched && field.meta.error ? -
- {field.meta.error} -
- : null} -
- ); -}; \ No newline at end of file diff --git a/src/client/components/Form/TextArea.tsx b/src/client/components/Form/TextArea.tsx deleted file mode 100644 index 5c4bc3d0..00000000 --- a/src/client/components/Form/TextArea.tsx +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Copyright (c) 2017-2018 LabKey Corporation - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -import * as React from 'react'; - -interface TextAreaProps { - cols?: number - disabled?: boolean - name?: string - onChange?: React.EventHandler> - required?: boolean - rows?: number - value?: string -} - -export const TextArea = (props: TextAreaProps) => { - return ( -
-