@researchdatabox/redbox-core 0.0.0-bootstrap.0 → 0.0.1-beta.10213
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/CoreController.d.ts +4 -0
- package/dist/CoreController.d.ts.map +1 -1
- package/dist/CoreController.js +68 -23
- package/dist/CoreService.d.ts +1 -1
- package/dist/CoreService.d.ts.map +1 -1
- package/dist/CoreService.js +1 -1
- package/dist/DatastreamService.d.ts +5 -2
- package/dist/DatastreamService.d.ts.map +1 -1
- package/dist/HarvestRunService.d.ts +49 -0
- package/dist/HarvestRunService.d.ts.map +1 -0
- package/dist/HarvestRunService.js +13 -0
- package/dist/IntegrationAuditParams.d.ts +11 -0
- package/dist/IntegrationAuditParams.js +14 -0
- package/dist/QueueService.d.ts +1 -1
- package/dist/QueueService.d.ts.map +1 -1
- package/dist/RecordAuditParams.d.ts +2 -0
- package/dist/RecordAuditParams.d.ts.map +1 -1
- package/dist/RecordAuditParams.js +3 -1
- package/dist/RecordsService.d.ts +52 -2
- package/dist/RecordsService.d.ts.map +1 -1
- package/dist/StorageService.d.ts +6 -2
- package/dist/StorageService.d.ts.map +1 -1
- package/dist/api-routes/apib.d.ts +7 -0
- package/dist/api-routes/apib.d.ts.map +1 -0
- package/dist/api-routes/apib.js +43 -0
- package/dist/api-routes/define.d.ts +4 -0
- package/dist/api-routes/define.d.ts.map +1 -0
- package/dist/api-routes/define.js +29 -0
- package/dist/api-routes/groups/admin.d.ts +6 -0
- package/dist/api-routes/groups/admin.d.ts.map +1 -0
- package/dist/api-routes/groups/admin.js +53 -0
- package/dist/api-routes/groups/appconfig.d.ts +4 -0
- package/dist/api-routes/groups/appconfig.d.ts.map +1 -0
- package/dist/api-routes/groups/appconfig.js +33 -0
- package/dist/api-routes/groups/branding.d.ts +8 -0
- package/dist/api-routes/groups/branding.d.ts.map +1 -0
- package/dist/api-routes/groups/branding.js +61 -0
- package/dist/api-routes/groups/dashboard-config.d.ts +11 -0
- package/dist/api-routes/groups/dashboard-config.d.ts.map +1 -0
- package/dist/api-routes/groups/dashboard-config.js +90 -0
- package/dist/api-routes/groups/export.d.ts +3 -0
- package/dist/api-routes/groups/export.d.ts.map +1 -0
- package/dist/api-routes/groups/export.js +30 -0
- package/dist/api-routes/groups/forms.d.ts +4 -0
- package/dist/api-routes/groups/forms.d.ts.map +1 -0
- package/dist/api-routes/groups/forms.js +29 -0
- package/dist/api-routes/groups/harvest-runs.d.ts +5 -0
- package/dist/api-routes/groups/harvest-runs.d.ts.map +1 -0
- package/dist/api-routes/groups/harvest-runs.js +79 -0
- package/dist/api-routes/groups/integration-audit.d.ts +3 -0
- package/dist/api-routes/groups/integration-audit.d.ts.map +1 -0
- package/dist/api-routes/groups/integration-audit.js +35 -0
- package/dist/api-routes/groups/named-query.d.ts +8 -0
- package/dist/api-routes/groups/named-query.d.ts.map +1 -0
- package/dist/api-routes/groups/named-query.js +54 -0
- package/dist/api-routes/groups/notifications.d.ts +3 -0
- package/dist/api-routes/groups/notifications.d.ts.map +1 -0
- package/dist/api-routes/groups/notifications.js +20 -0
- package/dist/api-routes/groups/records.d.ts +28 -0
- package/dist/api-routes/groups/records.d.ts.map +1 -0
- package/dist/api-routes/groups/records.js +353 -0
- package/dist/api-routes/groups/recordtypes.d.ts +4 -0
- package/dist/api-routes/groups/recordtypes.d.ts.map +1 -0
- package/dist/api-routes/groups/recordtypes.js +27 -0
- package/dist/api-routes/groups/reports.d.ts +9 -0
- package/dist/api-routes/groups/reports.d.ts.map +1 -0
- package/dist/api-routes/groups/reports.js +63 -0
- package/dist/api-routes/groups/search-query.d.ts +4 -0
- package/dist/api-routes/groups/search-query.d.ts.map +1 -0
- package/dist/api-routes/groups/search-query.js +51 -0
- package/dist/api-routes/groups/search.d.ts +6 -0
- package/dist/api-routes/groups/search.d.ts.map +1 -0
- package/dist/api-routes/groups/search.js +31 -0
- package/dist/api-routes/groups/translation.d.ts +8 -0
- package/dist/api-routes/groups/translation.d.ts.map +1 -0
- package/dist/api-routes/groups/translation.js +82 -0
- package/dist/api-routes/groups/users.d.ts +17 -0
- package/dist/api-routes/groups/users.d.ts.map +1 -0
- package/dist/api-routes/groups/users.js +149 -0
- package/dist/api-routes/groups/vocabulary.d.ts +10 -0
- package/dist/api-routes/groups/vocabulary.d.ts.map +1 -0
- package/dist/api-routes/groups/vocabulary.js +97 -0
- package/dist/api-routes/helpers.d.ts +29 -0
- package/dist/api-routes/helpers.d.ts.map +1 -0
- package/dist/api-routes/helpers.js +485 -0
- package/dist/api-routes/index.d.ts +27 -0
- package/dist/api-routes/index.d.ts.map +1 -0
- package/dist/api-routes/index.js +43 -0
- package/dist/api-routes/openapi.d.ts +26 -0
- package/dist/api-routes/openapi.d.ts.map +1 -0
- package/dist/api-routes/openapi.js +292 -0
- package/dist/api-routes/request-extraction.d.ts +14 -0
- package/dist/api-routes/request-extraction.d.ts.map +1 -0
- package/dist/api-routes/request-extraction.js +100 -0
- package/dist/api-routes/route-factory.d.ts +3 -0
- package/dist/api-routes/route-factory.d.ts.map +1 -0
- package/dist/api-routes/route-factory.js +30 -0
- package/dist/api-routes/route-registry.d.ts +24 -0
- package/dist/api-routes/route-registry.d.ts.map +1 -0
- package/dist/api-routes/route-registry.js +117 -0
- package/dist/api-routes/route-resolution.d.ts +4 -0
- package/dist/api-routes/route-resolution.d.ts.map +1 -0
- package/dist/api-routes/route-resolution.js +71 -0
- package/dist/api-routes/schemas/common.d.ts +35 -0
- package/dist/api-routes/schemas/common.d.ts.map +1 -0
- package/dist/api-routes/schemas/common.js +146 -0
- package/dist/api-routes/schemas/responses.d.ts +972 -0
- package/dist/api-routes/schemas/responses.d.ts.map +1 -0
- package/dist/api-routes/schemas/responses.js +512 -0
- package/dist/api-routes/types.d.ts +70 -0
- package/dist/api-routes/types.d.ts.map +1 -0
- package/dist/api-routes/types.js +3 -0
- package/dist/api-routes/validation.d.ts +32 -0
- package/dist/api-routes/validation.d.ts.map +1 -0
- package/dist/api-routes/validation.js +142 -0
- package/dist/api-routes/zod-openapi.d.ts +3 -0
- package/dist/api-routes/zod-openapi.d.ts.map +1 -0
- package/dist/api-routes/zod-openapi.js +8 -0
- package/dist/bootstrap.d.ts.map +1 -1
- package/dist/bootstrap.js +12 -12
- package/dist/config/agendaQueue.config.d.ts +33 -6
- package/dist/config/agendaQueue.config.d.ts.map +1 -1
- package/dist/config/agendaQueue.config.js +40 -18
- package/dist/config/auth.config.d.ts.map +1 -1
- package/dist/config/auth.config.js +29 -2
- package/dist/config/branding.config.d.ts +2 -1
- package/dist/config/branding.config.d.ts.map +1 -1
- package/dist/config/branding.config.js +5 -95
- package/dist/config/brandingConfigurationDefaults.config.d.ts +3 -0
- package/dist/config/brandingConfigurationDefaults.config.d.ts.map +1 -1
- package/dist/config/brandingConfigurationDefaults.config.js +161 -5
- package/dist/config/custom.config.d.ts +6 -0
- package/dist/config/custom.config.d.ts.map +1 -1
- package/dist/config/custom.config.js +10 -1
- package/dist/config/dashboardtype.config.d.ts +5 -0
- package/dist/config/dashboardtype.config.d.ts.map +1 -1
- package/dist/config/dashboardtype.config.js +1 -1
- package/dist/config/dashboardview.config.d.ts +24 -0
- package/dist/config/dashboardview.config.d.ts.map +1 -0
- package/dist/config/dashboardview.config.js +137 -0
- package/dist/config/dompurify.config.d.ts +1 -0
- package/dist/config/dompurify.config.d.ts.map +1 -1
- package/dist/config/dompurify.config.js +5 -4
- package/dist/config/emailnotification.config.d.ts.map +1 -1
- package/dist/config/emailnotification.config.js +2 -1
- package/dist/config/figshareDev.config.d.ts +12 -0
- package/dist/config/figshareDev.config.js +9 -0
- package/dist/config/form.config.d.ts +4 -0
- package/dist/config/form.config.d.ts.map +1 -1
- package/dist/config/form.config.js +1 -1
- package/dist/config/harvestRuns.config.d.ts +9 -0
- package/dist/config/harvestRuns.config.d.ts.map +1 -0
- package/dist/config/harvestRuns.config.js +11 -0
- package/dist/config/http.config.d.ts +13 -1
- package/dist/config/http.config.d.ts.map +1 -1
- package/dist/config/http.config.js +201 -38
- package/dist/config/index.d.ts +14 -19
- package/dist/config/index.d.ts.map +1 -1
- package/dist/config/index.js +10 -15
- package/dist/config/namedQuery.config.d.ts +26 -4
- package/dist/config/namedQuery.config.d.ts.map +1 -1
- package/dist/config/namedQuery.config.js +7 -350
- package/dist/config/policies.config.d.ts +3 -0
- package/dist/config/policies.config.d.ts.map +1 -1
- package/dist/config/policies.config.js +35 -1
- package/dist/config/record.config.d.ts.map +1 -1
- package/dist/config/record.config.js +2 -1
- package/dist/config/recordtype.config.d.ts +28 -0
- package/dist/config/recordtype.config.d.ts.map +1 -1
- package/dist/config/recordtype.config.js +105 -13
- package/dist/config/redboxSession.config.d.ts +3 -0
- package/dist/config/redboxSession.config.d.ts.map +1 -1
- package/dist/config/redboxSession.config.js +1 -1
- package/dist/config/report.config.d.ts +2 -11
- package/dist/config/report.config.d.ts.map +1 -1
- package/dist/config/report.config.js +3 -49
- package/dist/config/reusableContributorFormDefinitions.config.d.ts +1 -1
- package/dist/config/reusableContributorFormDefinitions.config.d.ts.map +1 -1
- package/dist/config/reusableContributorFormDefinitions.config.js +371 -206
- package/dist/config/reusableViewFormDefinitions.config.js +3 -3
- package/dist/config/routes.config.d.ts +5 -2
- package/dist/config/routes.config.d.ts.map +1 -1
- package/dist/config/routes.config.js +55 -117
- package/dist/config/storage.config.d.ts +20 -2
- package/dist/config/storage.config.d.ts.map +1 -1
- package/dist/config/storage.config.js +2 -1
- package/dist/config/validators.config.d.ts +6 -4
- package/dist/config/validators.config.d.ts.map +1 -1
- package/dist/config/validators.config.js +5 -3
- package/dist/config/vocab.config.d.ts +30 -0
- package/dist/config/vocab.config.d.ts.map +1 -1
- package/dist/config/vocab.config.js +21 -1
- package/dist/config/webpack.config.d.ts.map +1 -1
- package/dist/config/webpack.config.js +18 -12
- package/dist/config/workflow.config.d.ts +0 -1
- package/dist/config/workflow.config.d.ts.map +1 -1
- package/dist/config/workflow.config.js +1 -137
- package/dist/configmodels/AdminSidebarConfig.d.ts.map +1 -1
- package/dist/configmodels/AdminSidebarConfig.js +4 -3
- package/dist/configmodels/AuthorizedDomainsEmails.d.ts +48 -0
- package/dist/configmodels/AuthorizedDomainsEmails.d.ts.map +1 -1
- package/dist/configmodels/AuthorizedDomainsEmails.js +50 -2
- package/dist/configmodels/ConfigModels.d.ts +7 -1
- package/dist/configmodels/ConfigModels.d.ts.map +1 -1
- package/dist/configmodels/ConfigModels.js +41 -1
- package/dist/configmodels/DashboardTableOverrideConfig.d.ts +1011 -0
- package/dist/configmodels/DashboardTableOverrideConfig.d.ts.map +1 -0
- package/dist/configmodels/DashboardTableOverrideConfig.js +138 -0
- package/dist/configmodels/DoiPublishing.d.ts +4711 -0
- package/dist/configmodels/DoiPublishing.js +639 -0
- package/dist/configmodels/FigsharePublishing.d.ts +1376 -0
- package/dist/configmodels/FigsharePublishing.js +630 -0
- package/dist/configmodels/IntegrationNotificationConfig.d.ts +133 -0
- package/dist/configmodels/IntegrationNotificationConfig.d.ts.map +1 -0
- package/dist/configmodels/IntegrationNotificationConfig.js +64 -0
- package/dist/configmodels/SystemMessage.d.ts +32 -0
- package/dist/configmodels/SystemMessage.d.ts.map +1 -1
- package/dist/configmodels/SystemMessage.js +34 -2
- package/dist/controllers/AdminController.d.ts +1 -1
- package/dist/controllers/AdminController.d.ts.map +1 -1
- package/dist/controllers/AdminController.js +6 -32
- package/dist/controllers/AppConfigController.js +3 -3
- package/dist/controllers/BrandingAppController.d.ts.map +1 -1
- package/dist/controllers/BrandingAppController.js +11 -10
- package/dist/controllers/BrandingController.d.ts +11 -5
- package/dist/controllers/BrandingController.d.ts.map +1 -1
- package/dist/controllers/BrandingController.js +116 -48
- package/dist/controllers/DashboardConfigController.d.ts +8 -0
- package/dist/controllers/DashboardConfigController.d.ts.map +1 -0
- package/dist/controllers/DashboardConfigController.js +17 -0
- package/dist/controllers/DynamicAssetController.d.ts +1 -21
- package/dist/controllers/DynamicAssetController.d.ts.map +1 -1
- package/dist/controllers/DynamicAssetController.js +19 -41
- package/dist/controllers/EmailController.d.ts.map +1 -1
- package/dist/controllers/EmailController.js +16 -12
- package/dist/controllers/ExportController.d.ts.map +1 -1
- package/dist/controllers/ExportController.js +3 -8
- package/dist/controllers/FormVocabularyController.d.ts +3 -0
- package/dist/controllers/FormVocabularyController.d.ts.map +1 -1
- package/dist/controllers/FormVocabularyController.js +154 -4
- package/dist/controllers/NamedQueryController.d.ts +8 -0
- package/dist/controllers/NamedQueryController.d.ts.map +1 -0
- package/dist/controllers/NamedQueryController.js +17 -0
- package/dist/controllers/RecordAuditController.d.ts +31 -14
- package/dist/controllers/RecordAuditController.d.ts.map +1 -1
- package/dist/controllers/RecordAuditController.js +509 -57
- package/dist/controllers/RecordController.d.ts +18 -16
- package/dist/controllers/RecordController.d.ts.map +1 -1
- package/dist/controllers/RecordController.js +314 -167
- package/dist/controllers/RenderViewController.d.ts.map +1 -1
- package/dist/controllers/RenderViewController.js +4 -2
- package/dist/controllers/ReportController.d.ts +7 -0
- package/dist/controllers/ReportController.d.ts.map +1 -1
- package/dist/controllers/ReportController.js +75 -2
- package/dist/controllers/ReportsController.d.ts +1 -0
- package/dist/controllers/ReportsController.d.ts.map +1 -1
- package/dist/controllers/ReportsController.js +12 -2
- package/dist/controllers/TranslationController.d.ts.map +1 -1
- package/dist/controllers/TranslationController.js +14 -12
- package/dist/controllers/WorkspaceTypesController.d.ts +3 -2
- package/dist/controllers/WorkspaceTypesController.d.ts.map +1 -1
- package/dist/controllers/WorkspaceTypesController.js +120 -31
- package/dist/controllers/index.d.ts.map +1 -1
- package/dist/controllers/index.js +19 -4
- package/dist/controllers/webservice/AdminController.d.ts.map +1 -1
- package/dist/controllers/webservice/AdminController.js +16 -17
- package/dist/controllers/webservice/AppConfigController.d.ts.map +1 -1
- package/dist/controllers/webservice/AppConfigController.js +17 -18
- package/dist/controllers/webservice/BrandingController.d.ts.map +1 -1
- package/dist/controllers/webservice/BrandingController.js +102 -48
- package/dist/controllers/webservice/DashboardConfigController.d.ts +26 -0
- package/dist/controllers/webservice/DashboardConfigController.d.ts.map +1 -0
- package/dist/controllers/webservice/DashboardConfigController.js +241 -0
- package/dist/controllers/webservice/ExportController.d.ts.map +1 -1
- package/dist/controllers/webservice/ExportController.js +13 -18
- package/dist/controllers/webservice/FormManagementController.d.ts.map +1 -1
- package/dist/controllers/webservice/FormManagementController.js +11 -13
- package/dist/controllers/webservice/HarvestRunController.d.ts +13 -0
- package/dist/controllers/webservice/HarvestRunController.d.ts.map +1 -0
- package/dist/controllers/webservice/HarvestRunController.js +148 -0
- package/dist/controllers/webservice/IntegrationAuditController.d.ts +10 -0
- package/dist/controllers/webservice/IntegrationAuditController.d.ts.map +1 -1
- package/dist/controllers/webservice/IntegrationAuditController.js +98 -0
- package/dist/controllers/webservice/NamedQueryController.d.ts +17 -0
- package/dist/controllers/webservice/NamedQueryController.d.ts.map +1 -0
- package/dist/controllers/webservice/NamedQueryController.js +127 -0
- package/dist/controllers/webservice/RecordController.d.ts +4 -0
- package/dist/controllers/webservice/RecordController.d.ts.map +1 -1
- package/dist/controllers/webservice/RecordController.js +441 -314
- package/dist/controllers/webservice/RecordTypeController.d.ts.map +1 -1
- package/dist/controllers/webservice/RecordTypeController.js +9 -10
- package/dist/controllers/webservice/ReportController.d.ts +7 -0
- package/dist/controllers/webservice/ReportController.d.ts.map +1 -1
- package/dist/controllers/webservice/ReportController.js +125 -19
- package/dist/controllers/webservice/SearchController.d.ts.map +1 -1
- package/dist/controllers/webservice/SearchController.js +28 -35
- package/dist/controllers/webservice/TranslationController.d.ts.map +1 -1
- package/dist/controllers/webservice/TranslationController.js +65 -43
- package/dist/controllers/webservice/UserManagementController.d.ts +1 -1
- package/dist/controllers/webservice/UserManagementController.d.ts.map +1 -1
- package/dist/controllers/webservice/UserManagementController.js +114 -101
- package/dist/controllers/webservice/VocabularyController.d.ts.map +1 -1
- package/dist/controllers/webservice/VocabularyController.js +76 -28
- package/dist/form-config/dataRecord-1.0-draft.js +3 -3
- package/dist/form-config/default-1.0-draft.d.ts.map +1 -1
- package/dist/form-config/default-1.0-draft.js +27 -3
- package/dist/form-config/index.d.ts.map +1 -1
- package/dist/form-config/index.js +1 -1
- package/dist/hooks/defineRedboxHook.d.ts +3 -0
- package/dist/hooks/defineRedboxHook.d.ts.map +1 -1
- package/dist/hooks/defineRedboxHook.js +4 -1
- package/dist/hooks/webpack.d.ts.map +1 -1
- package/dist/hooks/webpack.js +17 -7
- package/dist/index.d.ts +12 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +17 -2
- package/dist/loader/MigrationRunner.d.ts +19 -0
- package/dist/loader/MigrationRunner.d.ts.map +1 -0
- package/dist/loader/MigrationRunner.js +108 -0
- package/dist/loader/bootstrapShimRuntime.d.ts +2 -1
- package/dist/loader/bootstrapShimRuntime.d.ts.map +1 -1
- package/dist/loader/bootstrapShimRuntime.js +7 -2
- package/dist/loader/index.d.ts +17 -0
- package/dist/loader/index.d.ts.map +1 -1
- package/dist/loader/index.js +216 -13
- package/dist/middleware/redboxSession.d.ts +5 -0
- package/dist/middleware/redboxSession.d.ts.map +1 -1
- package/dist/middleware/redboxSession.js +19 -6
- package/dist/model/BuildResponse.d.ts +4 -0
- package/dist/model/BuildResponse.d.ts.map +1 -1
- package/dist/model/DashboardTypeResponseModel.d.ts +13 -1
- package/dist/model/DashboardTypeResponseModel.d.ts.map +1 -1
- package/dist/model/DashboardTypeResponseModel.js +12 -4
- package/dist/model/DashboardViewResponseModel.d.ts +20 -0
- package/dist/model/DashboardViewResponseModel.d.ts.map +1 -0
- package/dist/model/DashboardViewResponseModel.js +38 -0
- package/dist/model/RecordTypeResponseModel.d.ts +3 -1
- package/dist/model/RecordTypeResponseModel.d.ts.map +1 -1
- package/dist/model/RecordTypeResponseModel.js +4 -2
- package/dist/model/RequestDetails.d.ts +1 -1
- package/dist/model/RequestDetails.d.ts.map +1 -1
- package/dist/model/RequestDetails.js +1 -1
- package/dist/model/config/ReportConfig.d.ts +1 -1
- package/dist/model/config/ReportConfig.d.ts.map +1 -1
- package/dist/model/config/ReportConfig.js +2 -2
- package/dist/model/index.d.ts +1 -0
- package/dist/model/index.d.ts.map +1 -1
- package/dist/model/index.js +5 -2
- package/dist/model/storage/BrandingModel.d.ts +0 -16
- package/dist/model/storage/BrandingModel.d.ts.map +1 -1
- package/dist/model/storage/BrandingModel.js +2 -51
- package/dist/model/storage/DashboardTypeModel.d.ts +4 -0
- package/dist/model/storage/DashboardTypeModel.d.ts.map +1 -1
- package/dist/model/storage/HarvestRunModel.d.ts +140 -0
- package/dist/model/storage/HarvestRunModel.d.ts.map +1 -0
- package/dist/model/storage/HarvestRunModel.js +110 -0
- package/dist/model/storage/IntegrationAuditModel.d.ts +49 -0
- package/dist/model/storage/IntegrationAuditModel.d.ts.map +1 -1
- package/dist/model/storage/IntegrationAuditModel.js +106 -0
- package/dist/model/storage/RecordTypeModel.d.ts +16 -0
- package/dist/model/storage/RecordTypeModel.d.ts.map +1 -1
- package/dist/model/storage/RecordTypeModel.js +9 -1
- package/dist/model/storage/ReportModel.d.ts +1 -0
- package/dist/model/storage/ReportModel.d.ts.map +1 -1
- package/dist/model/storage/index.d.ts +2 -0
- package/dist/model/storage/index.d.ts.map +1 -1
- package/dist/model/storage/index.js +15 -2
- package/dist/policies/contentSecurityPolicy.d.ts.map +1 -1
- package/dist/policies/contentSecurityPolicy.js +23 -2
- package/dist/policies/i18nLanguages.d.ts.map +1 -1
- package/dist/policies/i18nLanguages.js +1 -1
- package/dist/policies/index.d.ts +3 -0
- package/dist/policies/index.d.ts.map +1 -1
- package/dist/policies/index.js +6 -2
- package/dist/policies/menuResolver.d.ts.map +1 -1
- package/dist/policies/menuResolver.js +1 -1
- package/dist/policies/setLang.d.ts.map +1 -1
- package/dist/policies/setLang.js +1 -1
- package/dist/policies/validateApiContractRequest.d.ts +3 -0
- package/dist/policies/validateApiContractRequest.d.ts.map +1 -0
- package/dist/policies/validateApiContractRequest.js +74 -0
- package/dist/responses/badRequest.d.ts.map +1 -1
- package/dist/responses/badRequest.js +7 -4
- package/dist/responses/created.d.ts.map +1 -1
- package/dist/responses/created.js +7 -4
- package/dist/responses/forbidden.d.ts.map +1 -1
- package/dist/responses/forbidden.js +7 -4
- package/dist/responses/ok.d.ts.map +1 -1
- package/dist/responses/ok.js +7 -4
- package/dist/responses/serverError.d.ts.map +1 -1
- package/dist/responses/serverError.js +7 -4
- package/dist/responses/siteTitle.d.ts +6 -0
- package/dist/responses/siteTitle.d.ts.map +1 -0
- package/dist/responses/siteTitle.js +28 -0
- package/dist/sails.d.ts +9 -0
- package/dist/sails.d.ts.map +1 -1
- package/dist/services/AgendaQueueService.d.ts +39 -17
- package/dist/services/AgendaQueueService.d.ts.map +1 -1
- package/dist/services/AgendaQueueService.js +328 -87
- package/dist/services/AppConfigService.d.ts +20 -2
- package/dist/services/AppConfigService.d.ts.map +1 -1
- package/dist/services/AppConfigService.js +129 -15
- package/dist/services/AttachmentMetadataService.d.ts +34 -0
- package/dist/services/AttachmentMetadataService.d.ts.map +1 -0
- package/dist/services/AttachmentMetadataService.js +133 -0
- package/dist/services/BrandingLogoService.d.ts +11 -8
- package/dist/services/BrandingLogoService.d.ts.map +1 -1
- package/dist/services/BrandingLogoService.js +71 -72
- package/dist/services/BrandingService.d.ts.map +1 -1
- package/dist/services/BrandingService.js +4 -32
- package/dist/services/BrandingThemeCssService.d.ts +21 -0
- package/dist/services/BrandingThemeCssService.d.ts.map +1 -0
- package/dist/services/BrandingThemeCssService.js +113 -0
- package/dist/services/BrandingThemeTokens.d.ts +16 -0
- package/dist/services/BrandingThemeTokens.d.ts.map +1 -0
- package/dist/services/BrandingThemeTokens.js +82 -0
- package/dist/services/CacheService.d.ts.map +1 -1
- package/dist/services/CacheService.js +37 -29
- package/dist/services/DashboardConfigService.d.ts +71 -0
- package/dist/services/DashboardConfigService.d.ts.map +1 -0
- package/dist/services/DashboardConfigService.js +315 -0
- package/dist/services/DashboardTypesService.d.ts +61 -63
- package/dist/services/DashboardTypesService.d.ts.map +1 -1
- package/dist/services/DashboardTypesService.js +361 -198
- package/dist/services/DoiService.d.ts +30 -25
- package/dist/services/DoiService.d.ts.map +1 -1
- package/dist/services/DoiService.js +448 -393
- package/dist/services/EmailService.d.ts +17 -3
- package/dist/services/EmailService.d.ts.map +1 -1
- package/dist/services/EmailService.js +44 -17
- package/dist/services/FigshareService.d.ts +40 -65
- package/dist/services/FigshareService.d.ts.map +1 -1
- package/dist/services/FigshareService.js +616 -2038
- package/dist/services/FormPayloadPrehydrateService.d.ts +35 -0
- package/dist/services/FormPayloadPrehydrateService.d.ts.map +1 -0
- package/dist/services/FormPayloadPrehydrateService.js +200 -0
- package/dist/services/FormRecordConsistencyService.d.ts +3 -3
- package/dist/services/FormRecordConsistencyService.d.ts.map +1 -1
- package/dist/services/FormRecordConsistencyService.js +21 -19
- package/dist/services/FormVocabularyService.d.ts +45 -0
- package/dist/services/FormVocabularyService.d.ts.map +1 -0
- package/dist/services/FormVocabularyService.js +326 -0
- package/dist/services/FormsService.d.ts.map +1 -1
- package/dist/services/FormsService.js +8 -6
- package/dist/services/HarvestRunService.d.ts +73 -0
- package/dist/services/HarvestRunService.d.ts.map +1 -0
- package/dist/services/HarvestRunService.js +1317 -0
- package/dist/services/I18nEntriesService.d.ts +9 -4
- package/dist/services/I18nEntriesService.d.ts.map +1 -1
- package/dist/services/I18nEntriesService.js +96 -18
- package/dist/services/IntegrationAuditService.d.ts +158 -0
- package/dist/services/IntegrationAuditService.d.ts.map +1 -1
- package/dist/services/IntegrationAuditService.js +838 -0
- package/dist/services/IntegrationNotificationService.d.ts +55 -0
- package/dist/services/IntegrationNotificationService.d.ts.map +1 -0
- package/dist/services/IntegrationNotificationService.js +271 -0
- package/dist/services/NamedQueryService.d.ts +51 -12
- package/dist/services/NamedQueryService.d.ts.map +1 -1
- package/dist/services/NamedQueryService.js +622 -125
- package/dist/services/OniService.d.ts.map +1 -1
- package/dist/services/OniService.js +4 -6
- package/dist/services/RDMPService.d.ts.map +1 -1
- package/dist/services/RDMPService.js +3 -2
- package/dist/services/RecordsService.d.ts +25 -3
- package/dist/services/RecordsService.d.ts.map +1 -1
- package/dist/services/RecordsService.js +119 -19
- package/dist/services/ReportsService.d.ts +57 -1
- package/dist/services/ReportsService.d.ts.map +1 -1
- package/dist/services/ReportsService.js +258 -34
- package/dist/services/SassCompilerService.d.ts +4 -10
- package/dist/services/SassCompilerService.d.ts.map +1 -1
- package/dist/services/SassCompilerService.js +9 -173
- package/dist/services/SolrSearchService.d.ts +1 -0
- package/dist/services/SolrSearchService.d.ts.map +1 -1
- package/dist/services/SolrSearchService.js +14 -3
- package/dist/services/StandardDatastreamService.d.ts +37 -5
- package/dist/services/StandardDatastreamService.d.ts.map +1 -1
- package/dist/services/StandardDatastreamService.js +535 -38
- package/dist/services/StorageManagerService.d.ts +13 -1
- package/dist/services/StorageManagerService.d.ts.map +1 -1
- package/dist/services/StorageManagerService.js +94 -11
- package/dist/services/TemplateService.d.ts +2 -18
- package/dist/services/TemplateService.d.ts.map +1 -1
- package/dist/services/TemplateService.js +9 -53
- package/dist/services/VocabularyService.d.ts +13 -0
- package/dist/services/VocabularyService.d.ts.map +1 -1
- package/dist/services/VocabularyService.js +204 -14
- package/dist/services/doi-v2/audit.d.ts +7 -0
- package/dist/services/doi-v2/audit.d.ts.map +1 -1
- package/dist/services/doi-v2/audit.js +30 -0
- package/dist/services/doi-v2/bindings.d.ts +8 -0
- package/dist/services/doi-v2/bindings.d.ts.map +1 -1
- package/dist/services/doi-v2/bindings.js +79 -0
- package/dist/services/doi-v2/config.d.ts +7 -0
- package/dist/services/doi-v2/config.js +51 -0
- package/dist/services/doi-v2/context.d.ts +18 -0
- package/dist/services/doi-v2/context.js +41 -0
- package/dist/services/doi-v2/http.d.ts +21 -0
- package/dist/services/doi-v2/http.js +88 -0
- package/dist/services/doi-v2/payload.d.ts +4 -0
- package/dist/services/doi-v2/payload.d.ts.map +1 -1
- package/dist/services/doi-v2/payload.js +305 -0
- package/dist/services/doi-v2/profiles.d.ts +5 -0
- package/dist/services/doi-v2/profiles.js +31 -0
- package/dist/services/doi-v2/runtime.d.ts +16 -0
- package/dist/services/doi-v2/runtime.js +173 -0
- package/dist/services/doi-v2/types.d.ts +49 -0
- package/dist/services/doi-v2/types.js +3 -0
- package/dist/services/figshare-v2/assets.d.ts +5 -0
- package/dist/services/figshare-v2/assets.js +297 -0
- package/dist/services/figshare-v2/audit.d.ts +7 -0
- package/dist/services/figshare-v2/audit.d.ts.map +1 -0
- package/dist/services/figshare-v2/audit.js +30 -0
- package/dist/services/figshare-v2/bindings.d.ts +6 -0
- package/dist/services/figshare-v2/bindings.d.ts.map +1 -1
- package/dist/services/figshare-v2/bindings.js +58 -0
- package/dist/services/figshare-v2/config.d.ts +13 -0
- package/dist/services/figshare-v2/config.d.ts.map +1 -1
- package/dist/services/figshare-v2/config.js +105 -0
- package/dist/services/figshare-v2/context.d.ts +4 -0
- package/dist/services/figshare-v2/context.d.ts.map +1 -1
- package/dist/services/figshare-v2/context.js +21 -0
- package/dist/services/figshare-v2/embargo.d.ts +5 -0
- package/dist/services/figshare-v2/embargo.js +36 -0
- package/dist/services/figshare-v2/http.d.ts +42 -0
- package/dist/services/figshare-v2/http.d.ts.map +1 -1
- package/dist/services/figshare-v2/http.js +324 -0
- package/dist/services/figshare-v2/metadata.d.ts +6 -0
- package/dist/services/figshare-v2/metadata.d.ts.map +1 -1
- package/dist/services/figshare-v2/metadata.js +280 -0
- package/dist/services/figshare-v2/observability.d.ts +7 -0
- package/dist/services/figshare-v2/observability.d.ts.map +1 -1
- package/dist/services/figshare-v2/observability.js +87 -0
- package/dist/services/figshare-v2/plan.d.ts +5 -0
- package/dist/services/figshare-v2/plan.js +51 -0
- package/dist/services/figshare-v2/publish.d.ts +5 -0
- package/dist/services/figshare-v2/publish.js +20 -0
- package/dist/services/figshare-v2/queue.d.ts +4 -0
- package/dist/services/figshare-v2/queue.js +11 -0
- package/dist/services/figshare-v2/runtime.d.ts +14 -0
- package/dist/services/figshare-v2/runtime.d.ts.map +1 -1
- package/dist/services/figshare-v2/runtime.js +88 -0
- package/dist/services/figshare-v2/types.d.ts +198 -0
- package/dist/services/figshare-v2/types.d.ts.map +1 -1
- package/dist/services/figshare-v2/types.js +59 -0
- package/dist/services/figshare-v2/workflow.d.ts +3 -0
- package/dist/services/figshare-v2/workflow.js +7 -0
- package/dist/services/figshare-v2/writeback.d.ts +5 -0
- package/dist/services/figshare-v2/writeback.js +45 -0
- package/dist/services/index.d.ts +24 -3
- package/dist/services/index.d.ts.map +1 -1
- package/dist/services/index.js +43 -7
- package/dist/shims/momentShim.d.ts.map +1 -1
- package/dist/shims/momentShim.js +1 -6
- package/dist/storage/GridFSDriver.d.ts +101 -0
- package/dist/storage/GridFSDriver.d.ts.map +1 -0
- package/dist/storage/GridFSDriver.js +291 -0
- package/dist/storage/TusStorageManagerDataStore.d.ts +49 -0
- package/dist/storage/TusStorageManagerDataStore.d.ts.map +1 -0
- package/dist/storage/TusStorageManagerDataStore.js +300 -0
- package/dist/transformers/ExportJSONTransformer.d.ts +1 -1
- package/dist/transformers/ExportJSONTransformer.d.ts.map +1 -1
- package/dist/transformers/ExportJSONTransformer.js +3 -3
- package/dist/utilities/RequestParamUtils.d.ts +3 -0
- package/dist/utilities/RequestParamUtils.d.ts.map +1 -0
- package/dist/utilities/RequestParamUtils.js +13 -0
- package/dist/visitor/attachment-fields.visitor.d.ts +17 -17
- package/dist/visitor/attachment-fields.visitor.d.ts.map +1 -1
- package/dist/visitor/attachment-fields.visitor.js +44 -34
- package/dist/visitor/client.visitor.d.ts +145 -97
- package/dist/visitor/client.visitor.d.ts.map +1 -1
- package/dist/visitor/client.visitor.js +366 -273
- package/dist/visitor/construct.visitor.d.ts +99 -93
- package/dist/visitor/construct.visitor.d.ts.map +1 -1
- package/dist/visitor/construct.visitor.js +304 -227
- package/dist/visitor/context-variables.visitor.d.ts +35 -35
- package/dist/visitor/context-variables.visitor.d.ts.map +1 -1
- package/dist/visitor/context-variables.visitor.js +85 -75
- package/dist/visitor/data-value.visitor.d.ts +99 -93
- package/dist/visitor/data-value.visitor.d.ts.map +1 -1
- package/dist/visitor/data-value.visitor.js +157 -148
- package/dist/visitor/json-type-def.visitor.d.ts +96 -90
- package/dist/visitor/json-type-def.visitor.d.ts.map +1 -1
- package/dist/visitor/json-type-def.visitor.js +158 -149
- package/dist/visitor/migrate-config-v4-v5.visitor.d.ts +101 -94
- package/dist/visitor/migrate-config-v4-v5.visitor.d.ts.map +1 -1
- package/dist/visitor/migrate-config-v4-v5.visitor.js +356 -295
- package/dist/visitor/template.visitor.d.ts +100 -92
- package/dist/visitor/template.visitor.d.ts.map +1 -1
- package/dist/visitor/template.visitor.js +245 -156
- package/dist/visitor/validator.visitor.d.ts +95 -91
- package/dist/visitor/validator.visitor.d.ts.map +1 -1
- package/dist/visitor/validator.visitor.js +184 -152
- package/dist/visitor/visitor-helpers.js +9 -9
- package/dist/visitor/vocab-inline.visitor.d.ts +34 -19
- package/dist/visitor/vocab-inline.visitor.d.ts.map +1 -1
- package/dist/visitor/vocab-inline.visitor.js +157 -48
- package/dist/waterline-models/AttachmentAccessAudit.d.ts +26 -0
- package/dist/waterline-models/AttachmentAccessAudit.d.ts.map +1 -0
- package/dist/waterline-models/AttachmentAccessAudit.js +63 -0
- package/dist/waterline-models/AttachmentMetadata.d.ts +40 -0
- package/dist/waterline-models/AttachmentMetadata.d.ts.map +1 -0
- package/dist/waterline-models/AttachmentMetadata.js +147 -0
- package/dist/waterline-models/BrandingConfig.d.ts +0 -2
- package/dist/waterline-models/BrandingConfig.d.ts.map +1 -1
- package/dist/waterline-models/BrandingConfig.js +5 -9
- package/dist/waterline-models/DashboardType.d.ts +7 -0
- package/dist/waterline-models/DashboardType.d.ts.map +1 -1
- package/dist/waterline-models/DashboardType.js +16 -1
- package/dist/waterline-models/HarvestRecordEvent.d.ts +43 -0
- package/dist/waterline-models/HarvestRecordEvent.d.ts.map +1 -0
- package/dist/waterline-models/HarvestRecordEvent.js +107 -0
- package/dist/waterline-models/HarvestRun.d.ts +51 -0
- package/dist/waterline-models/HarvestRun.d.ts.map +1 -0
- package/dist/waterline-models/HarvestRun.js +125 -0
- package/dist/waterline-models/HarvestRunChunk.d.ts +57 -0
- package/dist/waterline-models/HarvestRunChunk.d.ts.map +1 -0
- package/dist/waterline-models/HarvestRunChunk.js +140 -0
- package/dist/waterline-models/I18nTranslation.d.ts +2 -0
- package/dist/waterline-models/I18nTranslation.d.ts.map +1 -1
- package/dist/waterline-models/I18nTranslation.js +6 -1
- package/dist/waterline-models/Migration.d.ts +24 -0
- package/dist/waterline-models/Migration.d.ts.map +1 -0
- package/dist/waterline-models/Migration.js +52 -0
- package/dist/waterline-models/NamedQuery.d.ts +6 -0
- package/dist/waterline-models/NamedQuery.d.ts.map +1 -1
- package/dist/waterline-models/NamedQuery.js +16 -1
- package/dist/waterline-models/index.d.ts +12 -0
- package/dist/waterline-models/index.d.ts.map +1 -1
- package/dist/waterline-models/index.js +19 -1
- package/package.json +78 -52
- package/redbox-loader-templates/bootstrap-shim.js.hbs +14 -1
- package/dist/config/datacite.config.d.ts +0 -51
- package/dist/config/datacite.config.d.ts.map +0 -1
- package/dist/config/datacite.config.js +0 -44
- package/dist/config/figshareAPI.config.d.ts +0 -116
- package/dist/config/figshareAPI.config.d.ts.map +0 -1
- package/dist/config/figshareAPI.config.js +0 -857
- package/dist/config/figshareAPIEnv.config.d.ts +0 -11
- package/dist/config/figshareAPIEnv.config.d.ts.map +0 -1
- package/dist/config/figshareAPIEnv.config.js +0 -13
- package/dist/config/figshareRedboxFORMapping.config.d.ts +0 -15
- package/dist/config/figshareRedboxFORMapping.config.d.ts.map +0 -1
- package/dist/config/figshareRedboxFORMapping.config.js +0 -7458
- package/dist/config/relatedObjectsFormDefinition.config.d.ts.map +0 -1
- package/dist/controllers/VocabController.d.ts +0 -43
- package/dist/controllers/VocabController.d.ts.map +0 -1
- package/dist/controllers/VocabController.js +0 -190
- package/dist/form-config/dataPublication-1.0-draft.d.ts.map +0 -1
- package/dist/form-config/dataPublication-1.0-embargoed.d.ts.map +0 -1
- package/dist/form-config/dataPublication-1.0-published.d.ts.map +0 -1
- package/dist/form-config/dataPublication-1.0-queued.d.ts.map +0 -1
- package/dist/form-config/dataPublication-1.0-retired.d.ts.map +0 -1
- package/dist/services/VocabService.d.ts +0 -81
- package/dist/services/VocabService.d.ts.map +0 -1
- package/dist/services/VocabService.js +0 -424
|
@@ -5,192 +5,28 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
5
5
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
6
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
7
|
};
|
|
8
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
9
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
10
|
-
};
|
|
11
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
9
|
exports.Services = void 0;
|
|
13
10
|
const PopulateExportedMethods_decorator_1 = require("../decorator/PopulateExportedMethods.decorator");
|
|
14
11
|
const CoreService_1 = require("../CoreService");
|
|
15
|
-
const crypto_1 = __importDefault(require("crypto"));
|
|
16
|
-
const fs_1 = __importDefault(require("fs"));
|
|
17
|
-
const path_1 = __importDefault(require("path"));
|
|
18
|
-
const fs_extra_1 = __importDefault(require("fs-extra"));
|
|
19
|
-
// Use require to avoid type dependencies for webpack internals
|
|
20
|
-
const webpack = require('webpack');
|
|
21
|
-
const MiniCssExtractPlugin = require('mini-css-extract-plugin');
|
|
22
|
-
const CssMinimizerPlugin = require('css-minimizer-webpack-plugin');
|
|
23
12
|
/**
|
|
24
13
|
* SassCompilerService
|
|
25
|
-
*
|
|
26
|
-
* injecting tenant overrides after the variable import section.
|
|
27
|
-
*
|
|
28
|
-
* Usage: await SassCompilerService.compile({ 'site-branding-area-background': '#ffffff' })
|
|
29
|
-
* Returns: { css, hash }
|
|
14
|
+
* Deprecated compatibility wrapper for variable CSS generation.
|
|
30
15
|
*/
|
|
31
16
|
var Services;
|
|
32
17
|
(function (Services) {
|
|
33
18
|
let SassCompiler = class SassCompiler extends CoreService_1.Services.Core.Service {
|
|
34
|
-
|
|
35
|
-
return
|
|
19
|
+
getAllowedVariableKeys() {
|
|
20
|
+
return BrandingThemeCssService.getAllowedVariableKeys();
|
|
36
21
|
}
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
if (v.startsWith('#')) {
|
|
40
|
-
v = v.replace(/#/g, '');
|
|
41
|
-
if (v.length === 3) {
|
|
42
|
-
v = v.split('').map(c => c + c).join('');
|
|
43
|
-
}
|
|
44
|
-
if (v.length === 6 || v.length === 8)
|
|
45
|
-
return '#' + v.toLowerCase();
|
|
46
|
-
}
|
|
47
|
-
return value;
|
|
22
|
+
normalizeHex(value) {
|
|
23
|
+
return BrandingThemeCssService.normalizeHex(value);
|
|
48
24
|
}
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
const stylesDir = path_1.default.resolve(process.cwd(), 'assets/styles');
|
|
52
|
-
const stylePath = path_1.default.join(stylesDir, 'style.scss');
|
|
53
|
-
let content = fs_1.default.readFileSync(stylePath, 'utf8');
|
|
54
|
-
// Resolve ~ imports to node_modules paths for Sass
|
|
55
|
-
content = content.replace(/@import\s+"~([^"]+)"/g, (match, importPath) => {
|
|
56
|
-
return `@import "${importPath}"`;
|
|
57
|
-
});
|
|
58
|
-
const lines = content.split(/\r?\n/);
|
|
59
|
-
let insertIdx = -1;
|
|
60
|
-
for (let i = 0; i < lines.length; i++) {
|
|
61
|
-
if (/default-variables|custom-variables/.test(lines[i]))
|
|
62
|
-
insertIdx = i;
|
|
63
|
-
}
|
|
64
|
-
if (insertIdx === -1) {
|
|
65
|
-
for (let i = 0; i < lines.length; i++) {
|
|
66
|
-
if (!/^@import/.test(lines[i])) {
|
|
67
|
-
insertIdx = i - 1;
|
|
68
|
-
break;
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
if (insertIdx < 0)
|
|
72
|
-
insertIdx = 0;
|
|
73
|
-
}
|
|
74
|
-
lines.splice(insertIdx + 1, 0, ...overrideLines);
|
|
75
|
-
return lines.join('\n');
|
|
25
|
+
validateVariables(variables) {
|
|
26
|
+
return BrandingThemeCssService.validateVariables(variables);
|
|
76
27
|
}
|
|
77
|
-
/** Compile full theme returning css + sha256 hash using webpack loader chain */
|
|
78
28
|
async compile(variables) {
|
|
79
|
-
|
|
80
|
-
const invalid = Object.keys(variables || {}).filter(k => !whitelist.includes(k.replace(/^\$/, '')));
|
|
81
|
-
if (invalid.length)
|
|
82
|
-
throw new Error('Invalid variable(s): ' + invalid.join(', '));
|
|
83
|
-
const overrideLines = [];
|
|
84
|
-
for (const [key, rawVal] of Object.entries(variables || {})) {
|
|
85
|
-
const normKey = key.startsWith('$') ? key.substring(1) : key;
|
|
86
|
-
const value = this.normaliseHex(rawVal);
|
|
87
|
-
// Sanitize value to prevent SCSS injection
|
|
88
|
-
if (/[{}();@"'\\/\n\r!]/.test(value)) {
|
|
89
|
-
throw new Error(`Invalid characters in variable value: ${normKey}`);
|
|
90
|
-
}
|
|
91
|
-
const variableName = normKey.startsWith('$') ? normKey : `$${normKey}`;
|
|
92
|
-
overrideLines.push(`${variableName}: ${value}; // tenant override`);
|
|
93
|
-
}
|
|
94
|
-
const scss = this.buildRootScss(overrideLines);
|
|
95
|
-
// Build a temporary workspace for webpack to compile our injected SCSS using the project loader chain
|
|
96
|
-
const tmpBase = path_1.default.join(process.cwd(), '.tmp', 'branding-webpack', crypto_1.default.randomBytes(8).toString('hex'));
|
|
97
|
-
const tmpOut = path_1.default.join(tmpBase, 'dist');
|
|
98
|
-
fs_extra_1.default.mkdirpSync(tmpBase);
|
|
99
|
-
// Write a temporary root.scss and entry.js that imports it
|
|
100
|
-
const rootScssPath = path_1.default.join(tmpBase, 'root.scss');
|
|
101
|
-
const entryJsPath = path_1.default.join(tmpBase, 'entry.js');
|
|
102
|
-
fs_1.default.writeFileSync(rootScssPath, scss, 'utf8');
|
|
103
|
-
fs_1.default.writeFileSync(entryJsPath, `require('./root.scss');\n`, 'utf8');
|
|
104
|
-
// Minimal webpack config aligned with project's sass/css pipeline
|
|
105
|
-
const wpConfig = {
|
|
106
|
-
mode: 'production',
|
|
107
|
-
devtool: false,
|
|
108
|
-
entry: entryJsPath,
|
|
109
|
-
output: {
|
|
110
|
-
path: tmpOut,
|
|
111
|
-
filename: 'bundle.js',
|
|
112
|
-
publicPath: '/',
|
|
113
|
-
clean: true
|
|
114
|
-
},
|
|
115
|
-
module: {
|
|
116
|
-
rules: [
|
|
117
|
-
{
|
|
118
|
-
test: /\.(sa|sc|c)ss$/,
|
|
119
|
-
exclude: /\.\.\/angular/,
|
|
120
|
-
use: [
|
|
121
|
-
MiniCssExtractPlugin.loader,
|
|
122
|
-
'css-loader',
|
|
123
|
-
'resolve-url-loader',
|
|
124
|
-
{
|
|
125
|
-
loader: 'sass-loader',
|
|
126
|
-
options: {
|
|
127
|
-
sourceMap: true, // Required for resolve-url-loader
|
|
128
|
-
sassOptions: {
|
|
129
|
-
loadPaths: [
|
|
130
|
-
path_1.default.resolve(process.cwd(), 'assets/styles'),
|
|
131
|
-
path_1.default.resolve(process.cwd(), 'node_modules')
|
|
132
|
-
]
|
|
133
|
-
}
|
|
134
|
-
}
|
|
135
|
-
}
|
|
136
|
-
]
|
|
137
|
-
},
|
|
138
|
-
{
|
|
139
|
-
test: /\.(woff2?|ttf|otf|eot|svg)$/,
|
|
140
|
-
type: 'asset/resource',
|
|
141
|
-
exclude: /\.\.\/angular/
|
|
142
|
-
},
|
|
143
|
-
{
|
|
144
|
-
mimetype: 'image/svg+xml',
|
|
145
|
-
scheme: 'data',
|
|
146
|
-
type: 'asset/resource',
|
|
147
|
-
generator: { filename: 'icons/[hash].svg' }
|
|
148
|
-
}
|
|
149
|
-
]
|
|
150
|
-
},
|
|
151
|
-
plugins: [
|
|
152
|
-
new MiniCssExtractPlugin({ filename: 'style.css' })
|
|
153
|
-
],
|
|
154
|
-
optimization: {
|
|
155
|
-
minimize: true,
|
|
156
|
-
minimizer: [new CssMinimizerPlugin()]
|
|
157
|
-
},
|
|
158
|
-
resolve: {
|
|
159
|
-
extensions: ['.js', '.ts', '.scss', '.css'],
|
|
160
|
-
modules: [path_1.default.resolve(process.cwd(), 'node_modules'), 'node_modules']
|
|
161
|
-
},
|
|
162
|
-
resolveLoader: {
|
|
163
|
-
modules: [path_1.default.resolve(process.cwd(), 'node_modules'), 'node_modules']
|
|
164
|
-
},
|
|
165
|
-
stats: 'errors-warnings'
|
|
166
|
-
};
|
|
167
|
-
const compiler = webpack(wpConfig);
|
|
168
|
-
await new Promise((resolve, reject) => {
|
|
169
|
-
compiler.run((err, stats) => {
|
|
170
|
-
if (err)
|
|
171
|
-
return reject(err);
|
|
172
|
-
if (!stats)
|
|
173
|
-
return reject(new Error('Webpack did not return stats'));
|
|
174
|
-
const info = stats.toJson({ all: false, errors: true, warnings: true });
|
|
175
|
-
if (stats.hasErrors()) {
|
|
176
|
-
const errorMsg = info.errors
|
|
177
|
-
?.map((e) => (typeof e === 'string' ? e : e.message || JSON.stringify(e)))
|
|
178
|
-
.join('; ') || 'unknown error';
|
|
179
|
-
return reject(new Error('Webpack SCSS compile failed: ' + errorMsg));
|
|
180
|
-
}
|
|
181
|
-
resolve(stats);
|
|
182
|
-
});
|
|
183
|
-
});
|
|
184
|
-
// Read the emitted CSS
|
|
185
|
-
const cssPath = path_1.default.join(tmpOut, 'style.css');
|
|
186
|
-
const css = fs_1.default.readFileSync(cssPath, 'utf8');
|
|
187
|
-
// Clean up temp directory (best-effort)
|
|
188
|
-
try {
|
|
189
|
-
fs_extra_1.default.removeSync(tmpBase);
|
|
190
|
-
}
|
|
191
|
-
catch (_e) { /* best-effort cleanup */ }
|
|
192
|
-
const hash = crypto_1.default.createHash('sha256').update(css).digest('hex').substring(0, 32);
|
|
193
|
-
return { css, hash };
|
|
29
|
+
return BrandingThemeCssService.generate(variables);
|
|
194
30
|
}
|
|
195
31
|
};
|
|
196
32
|
SassCompiler = __decorate([
|
|
@@ -198,4 +34,4 @@ var Services;
|
|
|
198
34
|
], SassCompiler);
|
|
199
35
|
Services.SassCompiler = SassCompiler;
|
|
200
36
|
})(Services || (exports.Services = Services = {}));
|
|
201
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
37
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2Fzc0NvbXBpbGVyU2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zZXJ2aWNlcy9TYXNzQ29tcGlsZXJTZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUFBLHNHQUF5RjtBQUN6RixnREFBc0Q7QUFLdEQ7OztHQUdHO0FBQ0gsSUFBaUIsUUFBUSxDQW1CeEI7QUFuQkQsV0FBaUIsUUFBUTtJQUV2QixJQUFhLFlBQVksR0FBekIsTUFBYSxZQUFhLFNBQVEsc0JBQVEsQ0FBQyxJQUFJLENBQUMsT0FBTztRQUNyRCxzQkFBc0I7WUFDcEIsT0FBTyx1QkFBdUIsQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO1FBQzFELENBQUM7UUFFRCxZQUFZLENBQUMsS0FBYTtZQUN4QixPQUFPLHVCQUF1QixDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNyRCxDQUFDO1FBRUQsaUJBQWlCLENBQUMsU0FBaUM7WUFDakQsT0FBTyx1QkFBdUIsQ0FBQyxpQkFBaUIsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUM5RCxDQUFDO1FBRUQsS0FBSyxDQUFDLE9BQU8sQ0FBQyxTQUFpQztZQUM3QyxPQUFPLHVCQUF1QixDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUNyRCxDQUFDO0tBQ0YsQ0FBQTtJQWhCWSxZQUFZO1FBRHhCLDJEQUF1QjtPQUNYLFlBQVksQ0FnQnhCO0lBaEJZLHFCQUFZLGVBZ0J4QixDQUFBO0FBQ0gsQ0FBQyxFQW5CZ0IsUUFBUSx3QkFBUixRQUFRLFFBbUJ4QiJ9
|
|
@@ -35,6 +35,7 @@ export declare namespace Services {
|
|
|
35
35
|
private getBaseUrl;
|
|
36
36
|
index(id: string, data: RecordModel): void;
|
|
37
37
|
remove(id: string): void;
|
|
38
|
+
private enqueueOrRunNow;
|
|
38
39
|
searchAdvanced(coreId: string | undefined, type: string, query: string): Promise<Record<string, unknown>>;
|
|
39
40
|
searchFuzzy(coreId: string | undefined, type: string, workflowState: string, searchQuery: string, exactSearches: SearchField[], facetSearches: SearchField[], brand: BrandingModel, user: UserModel, roles: RoleModel[], returnFields: string[], start?: number, rows?: number): Promise<Record<string, unknown>>;
|
|
40
41
|
private clientSleep;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SolrSearchService.d.ts","sourceRoot":"","sources":["../../src/services/SolrSearchService.ts"],"names":[],"mappings":"AAmBA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,QAAQ,IAAI,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AA0EtD,yBAAiB,QAAQ,CAAC;IAMxB,KAAK,WAAW,GAAG;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAA;KAAE,CAAC;IACpE,KAAK,QAAQ,CAAC,CAAC,GAAG,OAAO,IAAI;QAAE,KAAK,EAAE;YAAE,IAAI,EAAE,CAAC,CAAA;SAAE,CAAA;KAAE,CAAC;IAOpD;;;OAGG;IACH,MAAM,OAAO,iBAAkB,SAAQ,QAAQ,CAAC,IAAI,CAAC,OAAQ,YAAW,aAAa;QACnF,UAAmB,gBAAgB,EAAE,MAAM,EAAE,CAS5C;QAED,SAAS,CAAC,YAAY,EAAG,YAAY,CAAC;QACtC,OAAO,CAAC,OAAO,CAER;;QAOS,IAAI;kBASK,qBAAqB;QAI9C,SAAS,CAAC,UAAU,CAAC,GAAG,GAAE,iBAAwB;kBAUlC,WAAW,CAAC,GAAG,GAAE,iBAAwB;gBAuD3C,cAAc;gBAKd,SAAS;gBAOT,WAAW;QAgCzB,OAAO,CAAC,UAAU;QAIX,KAAK,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,GAAG,IAAI;
|
|
1
|
+
{"version":3,"file":"SolrSearchService.d.ts","sourceRoot":"","sources":["../../src/services/SolrSearchService.ts"],"names":[],"mappings":"AAmBA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,QAAQ,IAAI,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AA0EtD,yBAAiB,QAAQ,CAAC;IAMxB,KAAK,WAAW,GAAG;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAA;KAAE,CAAC;IACpE,KAAK,QAAQ,CAAC,CAAC,GAAG,OAAO,IAAI;QAAE,KAAK,EAAE;YAAE,IAAI,EAAE,CAAC,CAAA;SAAE,CAAA;KAAE,CAAC;IAOpD;;;OAGG;IACH,MAAM,OAAO,iBAAkB,SAAQ,QAAQ,CAAC,IAAI,CAAC,OAAQ,YAAW,aAAa;QACnF,UAAmB,gBAAgB,EAAE,MAAM,EAAE,CAS5C;QAED,SAAS,CAAC,YAAY,EAAG,YAAY,CAAC;QACtC,OAAO,CAAC,OAAO,CAER;;QAOS,IAAI;kBASK,qBAAqB;QAI9C,SAAS,CAAC,UAAU,CAAC,GAAG,GAAE,iBAAwB;kBAUlC,WAAW,CAAC,GAAG,GAAE,iBAAwB;gBAuD3C,cAAc;gBAKd,SAAS;gBAOT,WAAW;QAgCzB,OAAO,CAAC,UAAU;QAIX,KAAK,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,GAAG,IAAI;QAW1C,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;QAY/B,OAAO,CAAC,eAAe;QAcV,cAAc,CAAC,MAAM,EAAE,MAAM,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAUzG,WAAW,CAAC,MAAM,EAAE,MAAM,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,aAAa,EAAE,WAAW,EAAE,EAAE,aAAa,EAAE,WAAW,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,YAAY,EAAE,MAAM,EAAE,EAAE,KAAK,GAAE,MAAU,EAAE,IAAI,GAAE,MAAW,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QA+DrU,OAAO,CAAC,WAAW;QASN,eAAe,CAAC,GAAG,EAAE,QAAQ,CAAC,WAAW,CAAC;QAuBhD,QAAQ,CAAC,IAAI,EAAE,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;QAwF5D,SAAS,CAAC,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS;QAI9D,SAAS,CAAC,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,cAAc,GAAE,OAAO,GAAG,SAAqB;QAoBnI,UAAU,CAAC,GAAG,EAAE,QAAQ,CAAC,WAAW,CAAC,EAAE,KAAK,EAAE,OAAO;KAenE;;CACF;AAED,OAAO,CAAC,MAAM,CAAC;IACb,IAAI,iBAAiB,EAAE,QAAQ,CAAC,iBAAiB,CAAC;CACnD"}
|
|
@@ -224,13 +224,24 @@ var Services;
|
|
|
224
224
|
sails.log.verbose(`${this.logHeader} adding indexing job: ${id} with data:`);
|
|
225
225
|
data.id = id;
|
|
226
226
|
sails.log.verbose(JSON.stringify(data));
|
|
227
|
-
this.
|
|
227
|
+
this.enqueueOrRunNow(sails.config.solr.createOrUpdateJobName, data, async (job) => this.solrAddOrUpdate(job));
|
|
228
228
|
}
|
|
229
229
|
remove(id) {
|
|
230
230
|
sails.log.verbose(`${this.logHeader} adding delete-index job: ${id} with data:`);
|
|
231
231
|
const data = { id: id };
|
|
232
232
|
sails.log.verbose(JSON.stringify(data));
|
|
233
|
-
this.
|
|
233
|
+
this.enqueueOrRunNow(sails.config.solr.deleteJobName, data, async (job) => this.solrDelete(job, undefined));
|
|
234
|
+
}
|
|
235
|
+
enqueueOrRunNow(jobName, data, fallback) {
|
|
236
|
+
if (this.queueService && typeof this.queueService.now === 'function') {
|
|
237
|
+
this.queueService.now(jobName, data);
|
|
238
|
+
return;
|
|
239
|
+
}
|
|
240
|
+
sails.log.warn(`${this.logHeader} queue service unavailable, running job inline: ${jobName}`);
|
|
241
|
+
fallback({ attrs: { data } }).catch((err) => {
|
|
242
|
+
sails.log.error(`${this.logHeader} inline job failed: ${jobName}`);
|
|
243
|
+
sails.log.error(err);
|
|
244
|
+
});
|
|
234
245
|
}
|
|
235
246
|
async searchAdvanced(coreId = 'default', type, query) {
|
|
236
247
|
const solrConfig = sails.config.solr;
|
|
@@ -460,4 +471,4 @@ var Services;
|
|
|
460
471
|
}
|
|
461
472
|
Services.SolrSearchService = SolrSearchService;
|
|
462
473
|
})(Services || (exports.Services = Services = {}));
|
|
463
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU29sclNlYXJjaFNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc2VydmljZXMvU29sclNlYXJjaFNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLDBGQUEwRjtBQUMxRixFQUFFO0FBQ0YsNkJBQTZCO0FBQzdCLDBCQUEwQjtBQUMxQixFQUFFO0FBQ0YsdUVBQXVFO0FBQ3ZFLHVFQUF1RTtBQUN2RSxvRUFBb0U7QUFDcEUsc0NBQXNDO0FBQ3RDLEVBQUU7QUFDRixrRUFBa0U7QUFDbEUsaUVBQWlFO0FBQ2pFLGdFQUFnRTtBQUNoRSwrQ0FBK0M7QUFDL0MsRUFBRTtBQUNGLDBFQUEwRTtBQUMxRSwwRUFBMEU7QUFDMUUsOERBQThEOzs7QUFTOUQsd0RBQXFEO0FBQ3JELGdEQUFzRDtBQU90RCxNQUFNLEtBQUssR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7QUFHL0IsSUFBSSxJQUFJLEdBQXNCLElBQUksQ0FBQztBQUNuQyxNQUFNLHVCQUF1QixHQUE0QixPQUFPLENBQUMscUJBQXFCLENBQUMsQ0FBQztBQUN4RixNQUFNLGlCQUFpQixHQUNyQixPQUFPLHVCQUF1QixLQUFLLFVBQVU7SUFDM0MsQ0FBQyxDQUFDLHVCQUF1QjtJQUN6QixDQUFDLENBQUMsQ0FBQyx1QkFBdUIsRUFBRSxNQUFNLElBQUksdUJBQXVCLEVBQUUsT0FBTyxJQUFJLENBQUMsQ0FBQyxLQUFhLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7QUFJMUcsTUFBTSxVQUFVO0lBQ2QsT0FBTyxDQUFjO0lBQ3JCLEtBQUssQ0FBNkQ7SUFDbEUsVUFBVSxHQUFZLElBQUksQ0FBQztJQUMzQixZQUFZLE9BQW9CO1FBQzlCLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO1FBQ3ZCLE1BQU0sT0FBTyxHQUFHLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FB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
|
|
474
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU29sclNlYXJjaFNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc2VydmljZXMvU29sclNlYXJjaFNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLDBGQUEwRjtBQUMxRixFQUFFO0FBQ0YsNkJBQTZCO0FBQzdCLDBCQUEwQjtBQUMxQixFQUFFO0FBQ0YsdUVBQXVFO0FBQ3ZFLHVFQUF1RTtBQUN2RSxvRUFBb0U7QUFDcEUsc0NBQXNDO0FBQ3RDLEVBQUU7QUFDRixrRUFBa0U7QUFDbEUsaUVBQWlFO0FBQ2pFLGdFQUFnRTtBQUNoRSwrQ0FBK0M7QUFDL0MsRUFBRTtBQUNGLDBFQUEwRTtBQUMxRSwwRUFBMEU7QUFDMUUsOERBQThEOzs7QUFTOUQsd0RBQXFEO0FBQ3JELGdEQUFzRDtBQU90RCxNQUFNLEtBQUssR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7QUFHL0IsSUFBSSxJQUFJLEdBQXNCLElBQUksQ0FBQztBQUNuQyxNQUFNLHVCQUF1QixHQUE0QixPQUFPLENBQUMscUJBQXFCLENBQUMsQ0FBQztBQUN4RixNQUFNLGlCQUFpQixHQUNyQixPQUFPLHVCQUF1QixLQUFLLFVBQVU7SUFDM0MsQ0FBQyxDQUFDLHVCQUF1QjtJQUN6QixDQUFDLENBQUMsQ0FBQyx1QkFBdUIsRUFBRSxNQUFNLElBQUksdUJBQXVCLEVBQUUsT0FBTyxJQUFJLENBQUMsQ0FBQyxLQUFhLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7QUFJMUcsTUFBTSxVQUFVO0lBQ2QsT0FBTyxDQUFjO0lBQ3JCLEtBQUssQ0FBNkQ7SUFDbEUsVUFBVSxHQUFZLElBQUksQ0FBQztJQUMzQixZQUFZLE9BQW9CO1FBQzlCLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO1FBQ3ZCLE1BQU0sT0FBTyxHQUFHLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FB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
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Services as services } from '../CoreService';
|
|
2
|
-
import { DatastreamService } from '../DatastreamService';
|
|
2
|
+
import { DatastreamRequestContext, DatastreamService } from '../DatastreamService';
|
|
3
3
|
import { DatastreamServiceResponse } from '../DatastreamServiceResponse';
|
|
4
4
|
import { Datastream } from '../Datastream';
|
|
5
5
|
import { Observable } from 'rxjs';
|
|
@@ -10,16 +10,43 @@ type IDisk = StorageManagerServices.IDisk;
|
|
|
10
10
|
*
|
|
11
11
|
* Implements the DatastreamService interface using Flydrive v2 disks
|
|
12
12
|
* managed by StorageManagerService. Files are read from the staging disk
|
|
13
|
-
* and written to the primary disk under the key
|
|
13
|
+
* and written to the primary disk under the configured key prefix.
|
|
14
14
|
*/
|
|
15
15
|
export declare namespace Services {
|
|
16
16
|
class StandardDatastream extends services.Core.Service implements DatastreamService {
|
|
17
|
+
private static promotionGuards;
|
|
17
18
|
protected _exportedMethods: string[];
|
|
18
19
|
protected logHeader: string;
|
|
19
20
|
/**
|
|
20
|
-
* Build the storage key for a file
|
|
21
|
+
* Build the storage key for a file under the configured prefix.
|
|
22
|
+
*/
|
|
23
|
+
private normalizedKeyPrefix;
|
|
24
|
+
/**
|
|
25
|
+
* Build the storage key for a file under the configured prefix.
|
|
21
26
|
*/
|
|
22
27
|
private storageKey;
|
|
28
|
+
private fileIdFromStorageKey;
|
|
29
|
+
private attachmentMetadataService;
|
|
30
|
+
private requestUsername;
|
|
31
|
+
private safeToISOString;
|
|
32
|
+
private metadataToListEntry;
|
|
33
|
+
private buildMetadataRow;
|
|
34
|
+
private safelyUpsertMetadata;
|
|
35
|
+
private safelyDeleteMetadata;
|
|
36
|
+
private safelyRecordAccess;
|
|
37
|
+
private backfillMetadataFromDisk;
|
|
38
|
+
private datastreamListEntry;
|
|
39
|
+
private isStorageNotFoundError;
|
|
40
|
+
private isStorageAlreadyExistsError;
|
|
41
|
+
private promoteFromStagingOnce;
|
|
42
|
+
private promoteFromStaging;
|
|
43
|
+
private promoteTusPartsFromStaging;
|
|
44
|
+
private listTusPartKeys;
|
|
45
|
+
private listedObjectKey;
|
|
46
|
+
private sumDiskObjectContentLength;
|
|
47
|
+
private tusPartsPrefix;
|
|
48
|
+
private tusInfoKey;
|
|
49
|
+
private streamDiskObjects;
|
|
23
50
|
/**
|
|
24
51
|
* Add multiple datastreams for a record.
|
|
25
52
|
* Each datastream is moved from the staging disk to the primary disk.
|
|
@@ -39,6 +66,11 @@ export declare namespace Services {
|
|
|
39
66
|
* Add a single datastream: read from staging disk, write to primary disk.
|
|
40
67
|
*/
|
|
41
68
|
addDatastream(oid: string, datastream: Datastream, stagingDisk?: IDisk): Promise<unknown>;
|
|
69
|
+
private putStagedObject;
|
|
70
|
+
private readDiskObjectToBuffer;
|
|
71
|
+
private readStreamToBuffer;
|
|
72
|
+
private isNonRetryableStreamingWriteError;
|
|
73
|
+
private afterDatastreamPromoted;
|
|
42
74
|
/**
|
|
43
75
|
* Remove a single datastream from the primary disk.
|
|
44
76
|
*/
|
|
@@ -51,7 +83,7 @@ export declare namespace Services {
|
|
|
51
83
|
* Get a datastream (file contents) from the primary disk.
|
|
52
84
|
* Returns an Attachment with a readstream.
|
|
53
85
|
*/
|
|
54
|
-
getDatastream(oid: string, fileId: string): Promise<{
|
|
86
|
+
getDatastream(oid: string, fileId: string, requestContext?: DatastreamRequestContext): Promise<{
|
|
55
87
|
readstream?: NodeJS.ReadableStream;
|
|
56
88
|
body?: Buffer | string;
|
|
57
89
|
} & Record<string, unknown>>;
|
|
@@ -59,7 +91,7 @@ export declare namespace Services {
|
|
|
59
91
|
* List datastreams for a record.
|
|
60
92
|
* If fileId is provided, lists that specific file; otherwise lists all files for the oid.
|
|
61
93
|
*/
|
|
62
|
-
listDatastreams(oid: string, fileId: string): Promise<Record<string, unknown>[]>;
|
|
94
|
+
listDatastreams(oid: string, fileId: string, requestContext?: DatastreamRequestContext): Promise<Record<string, unknown>[]>;
|
|
63
95
|
}
|
|
64
96
|
}
|
|
65
97
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StandardDatastreamService.d.ts","sourceRoot":"","sources":["../../src/services/StandardDatastreamService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"StandardDatastreamService.d.ts","sourceRoot":"","sources":["../../src/services/StandardDatastreamService.ts"],"names":[],"mappings":"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"}
|