@researchdatabox/redbox-core 5.0.4-beta.12498 → 5.0.4
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 +3 -7
- package/dist/CoreController.d.ts.map +1 -1
- package/dist/CoreController.js +3 -85
- package/dist/DatastreamService.d.ts +2 -4
- package/dist/DatastreamService.d.ts.map +1 -1
- package/dist/HarvestRunService.d.ts +3 -4
- package/dist/HarvestRunService.d.ts.map +1 -1
- package/dist/HarvestRunService.js +1 -1
- package/dist/QueueService.d.ts +1 -1
- package/dist/QueueService.d.ts.map +1 -1
- package/dist/RecordWriteOptions.d.ts +21 -0
- package/dist/RecordWriteOptions.d.ts.map +1 -0
- package/dist/RecordWriteOptions.js +17 -0
- package/dist/RecordsService.d.ts +14 -105
- package/dist/RecordsService.d.ts.map +1 -1
- package/dist/RecordsService.js +1 -44
- package/dist/SearchService.d.ts +1 -2
- package/dist/SearchService.d.ts.map +1 -1
- package/dist/StorageService.d.ts +20 -48
- package/dist/StorageService.d.ts.map +1 -1
- package/dist/StorageService.js +1 -19
- package/dist/StorageServiceResponse.d.ts +1 -22
- package/dist/StorageServiceResponse.d.ts.map +1 -1
- package/dist/StorageServiceResponse.js +4 -22
- package/dist/api-routes/groups/branding.d.ts +0 -8
- package/dist/api-routes/groups/branding.d.ts.map +1 -1
- package/dist/api-routes/groups/branding.js +11 -86
- package/dist/api-routes/groups/dashboard-config.d.ts +9 -12
- package/dist/api-routes/groups/dashboard-config.d.ts.map +1 -1
- package/dist/api-routes/groups/dashboard-config.js +73 -136
- package/dist/api-routes/groups/forms.d.ts.map +1 -1
- package/dist/api-routes/groups/forms.js +2 -10
- package/dist/api-routes/groups/records.d.ts +0 -1
- package/dist/api-routes/groups/records.d.ts.map +1 -1
- package/dist/api-routes/groups/records.js +26 -141
- package/dist/api-routes/index.d.ts +0 -3
- package/dist/api-routes/index.d.ts.map +1 -1
- package/dist/api-routes/index.js +1 -4
- package/dist/api-routes/openapi.d.ts.map +1 -1
- package/dist/api-routes/openapi.js +5 -7
- package/dist/api-routes/request-extraction.d.ts.map +1 -1
- package/dist/api-routes/request-extraction.js +8 -10
- package/dist/api-routes/route-factory.d.ts.map +1 -1
- package/dist/api-routes/route-factory.js +1 -2
- package/dist/api-routes/route-registry.d.ts.map +1 -1
- package/dist/api-routes/route-registry.js +1 -3
- package/dist/api-routes/schemas/common.d.ts +0 -36
- package/dist/api-routes/schemas/common.d.ts.map +1 -1
- package/dist/api-routes/schemas/common.js +5 -95
- package/dist/api-routes/schemas/responses.d.ts +1 -1424
- package/dist/api-routes/schemas/responses.d.ts.map +1 -1
- package/dist/api-routes/schemas/responses.js +60 -382
- package/dist/api-routes/types.d.ts +0 -1
- package/dist/api-routes/types.d.ts.map +1 -1
- package/dist/api-routes/validation.d.ts +1 -5
- package/dist/api-routes/validation.d.ts.map +1 -1
- package/dist/api-routes/validation.js +15 -14
- package/dist/bootstrap.d.ts +1 -3
- package/dist/bootstrap.d.ts.map +1 -1
- package/dist/bootstrap.js +41 -58
- package/dist/config/agendaQueue.config.d.ts +0 -3
- package/dist/config/agendaQueue.config.d.ts.map +1 -1
- package/dist/config/agendaQueue.config.js +11 -29
- package/dist/config/branding.config.d.ts +0 -13
- package/dist/config/branding.config.d.ts.map +1 -1
- package/dist/config/branding.config.js +2 -34
- package/dist/config/brandingConfigurationDefaults.config.d.ts +0 -4
- package/dist/config/brandingConfigurationDefaults.config.d.ts.map +1 -1
- package/dist/config/brandingConfigurationDefaults.config.js +3 -42
- package/dist/config/datapubs.config.d.ts +72 -0
- package/dist/config/datapubs.config.d.ts.map +1 -0
- package/dist/config/datapubs.config.js +74 -0
- package/dist/config/i18n.config.d.ts +4 -0
- package/dist/config/i18n.config.d.ts.map +1 -1
- package/dist/config/i18n.config.js +1 -1
- package/dist/config/index.d.ts +4 -12
- package/dist/config/index.d.ts.map +1 -1
- package/dist/config/index.js +4 -7
- package/dist/config/policies.config.d.ts.map +1 -1
- package/dist/config/policies.config.js +23 -37
- package/dist/config/raid.config.d.ts +4 -7
- package/dist/config/raid.config.d.ts.map +1 -1
- package/dist/config/raid.config.js +35 -21
- package/dist/config/record.config.d.ts +0 -3
- package/dist/config/record.config.d.ts.map +1 -1
- package/dist/config/record.config.js +35 -37
- package/dist/config/recordtype.config.d.ts +9 -32
- package/dist/config/recordtype.config.d.ts.map +1 -1
- package/dist/config/recordtype.config.js +7 -4
- package/dist/config/routes.config.d.ts.map +1 -1
- package/dist/config/routes.config.js +53 -135
- package/dist/config/workflow.config.d.ts +0 -6
- package/dist/config/workflow.config.d.ts.map +1 -1
- package/dist/config/workflow.config.js +1 -1
- package/dist/configmodels/AdminSidebarConfig.d.ts.map +1 -1
- package/dist/configmodels/AdminSidebarConfig.js +2 -4
- package/dist/configmodels/ConfigModels.d.ts +1 -1
- package/dist/configmodels/ConfigModels.d.ts.map +1 -1
- package/dist/configmodels/ConfigModels.js +9 -26
- package/dist/configmodels/FigsharePublishing.d.ts +103 -0
- package/dist/configmodels/FigsharePublishing.d.ts.map +1 -1
- package/dist/configmodels/FigsharePublishing.js +36 -2
- package/dist/controllers/AppConfigController.d.ts.map +1 -1
- package/dist/controllers/AppConfigController.js +1 -4
- package/dist/controllers/BrandingAppController.d.ts +7 -29
- package/dist/controllers/BrandingAppController.d.ts.map +1 -1
- package/dist/controllers/BrandingAppController.js +69 -265
- package/dist/controllers/BrandingController.d.ts +1 -24
- package/dist/controllers/BrandingController.d.ts.map +1 -1
- package/dist/controllers/BrandingController.js +43 -173
- package/dist/controllers/DashboardConfigController.d.ts +2 -6
- package/dist/controllers/DashboardConfigController.d.ts.map +1 -1
- package/dist/controllers/DashboardConfigController.js +4 -18
- package/dist/controllers/DynamicAssetController.d.ts +5 -7
- package/dist/controllers/DynamicAssetController.d.ts.map +1 -1
- package/dist/controllers/DynamicAssetController.js +12 -21
- package/dist/controllers/RecordAuditController.d.ts.map +1 -1
- package/dist/controllers/RecordAuditController.js +24 -6
- package/dist/controllers/RecordController.d.ts +4 -45
- package/dist/controllers/RecordController.d.ts.map +1 -1
- package/dist/controllers/RecordController.js +345 -778
- package/dist/controllers/index.d.ts.map +1 -1
- package/dist/controllers/index.js +1 -4
- package/dist/controllers/webservice/AdminController.d.ts.map +1 -1
- package/dist/controllers/webservice/AdminController.js +3 -4
- package/dist/controllers/webservice/BrandingController.d.ts +1 -26
- package/dist/controllers/webservice/BrandingController.d.ts.map +1 -1
- package/dist/controllers/webservice/BrandingController.js +116 -292
- package/dist/controllers/webservice/DashboardConfigController.d.ts +17 -25
- package/dist/controllers/webservice/DashboardConfigController.d.ts.map +1 -1
- package/dist/controllers/webservice/DashboardConfigController.js +205 -90
- package/dist/controllers/webservice/FormManagementController.d.ts.map +1 -1
- package/dist/controllers/webservice/FormManagementController.js +3 -37
- package/dist/controllers/webservice/RecordController.d.ts +1 -15
- package/dist/controllers/webservice/RecordController.d.ts.map +1 -1
- package/dist/controllers/webservice/RecordController.js +267 -647
- package/dist/controllers/webservice/RecordTypeController.d.ts +1 -6
- package/dist/controllers/webservice/RecordTypeController.d.ts.map +1 -1
- package/dist/controllers/webservice/RecordTypeController.js +3 -21
- package/dist/controllers/webservice/SearchController.d.ts.map +1 -1
- package/dist/controllers/webservice/SearchController.js +3 -7
- package/dist/hooks/defineRedboxHook.d.ts +0 -3
- package/dist/hooks/defineRedboxHook.d.ts.map +1 -1
- package/dist/hooks/defineRedboxHook.js +1 -4
- package/dist/index.d.ts +25 -50
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -90
- package/dist/loader/bootstrapShimRuntime.d.ts +1 -1
- package/dist/loader/bootstrapShimRuntime.d.ts.map +1 -1
- package/dist/loader/bootstrapShimRuntime.js +12 -20
- package/dist/loader/index.d.ts +0 -9
- package/dist/loader/index.d.ts.map +1 -1
- package/dist/loader/index.js +4 -93
- package/dist/model/BuildResponse.d.ts +11 -25
- package/dist/model/BuildResponse.d.ts.map +1 -1
- package/dist/model/BuildResponse.js +3 -4
- package/dist/model/DashboardTypeResponseModel.d.ts +0 -6
- package/dist/model/DashboardTypeResponseModel.d.ts.map +1 -1
- package/dist/model/DashboardTypeResponseModel.js +1 -7
- package/dist/model/DashboardViewResponseModel.d.ts +1 -5
- package/dist/model/DashboardViewResponseModel.d.ts.map +1 -1
- package/dist/model/DashboardViewResponseModel.js +3 -6
- package/dist/model/RBValidationError.d.ts +0 -17
- package/dist/model/RBValidationError.d.ts.map +1 -1
- package/dist/model/RBValidationError.js +1 -37
- package/dist/model/RecordTypeResponseModel.d.ts +4 -12
- package/dist/model/RecordTypeResponseModel.d.ts.map +1 -1
- package/dist/model/RecordTypeResponseModel.js +2 -11
- package/dist/model/index.d.ts +1 -5
- package/dist/model/index.d.ts.map +1 -1
- package/dist/model/index.js +2 -5
- package/dist/model/storage/BrandingModel.d.ts +0 -7
- package/dist/model/storage/BrandingModel.d.ts.map +1 -1
- package/dist/model/storage/BrandingModel.js +1 -7
- package/dist/model/storage/DeletedRecordModel.d.ts +0 -35
- package/dist/model/storage/DeletedRecordModel.d.ts.map +1 -1
- package/dist/model/storage/DeletedRecordModel.js +1 -62
- package/dist/model/storage/FigshareSyncModel.d.ts +126 -0
- package/dist/model/storage/FigshareSyncModel.d.ts.map +1 -0
- package/dist/model/storage/FigshareSyncModel.js +3 -0
- package/dist/model/storage/IntegrationAuditModel.d.ts +2 -16
- package/dist/model/storage/IntegrationAuditModel.d.ts.map +1 -1
- package/dist/model/storage/IntegrationAuditModel.js +1 -15
- package/dist/model/storage/RecordAuditModel.d.ts +4 -11
- package/dist/model/storage/RecordAuditModel.d.ts.map +1 -1
- package/dist/model/storage/RecordAuditModel.js +30 -8
- package/dist/model/storage/RecordModel.d.ts +3 -6
- package/dist/model/storage/RecordModel.d.ts.map +1 -1
- package/dist/model/storage/RecordTypeModel.d.ts +0 -6
- package/dist/model/storage/RecordTypeModel.d.ts.map +1 -1
- package/dist/model/storage/RecordTypeModel.js +1 -4
- package/dist/model/storage/index.d.ts +10 -12
- package/dist/model/storage/index.d.ts.map +1 -1
- package/dist/model/storage/index.js +2 -24
- package/dist/policies/checkAuth.d.ts +6 -2
- package/dist/policies/checkAuth.d.ts.map +1 -1
- package/dist/policies/checkAuth.js +9 -32
- package/dist/policies/contentSecurityPolicy.d.ts.map +1 -1
- package/dist/policies/contentSecurityPolicy.js +2 -85
- package/dist/policies/index.d.ts +2 -3
- package/dist/policies/index.d.ts.map +1 -1
- package/dist/policies/index.js +2 -4
- package/dist/policies/validateApiContractRequest.d.ts.map +1 -1
- package/dist/policies/validateApiContractRequest.js +11 -49
- package/dist/services/AgendaQueueService.d.ts +1 -1
- package/dist/services/AgendaQueueService.d.ts.map +1 -1
- package/dist/services/AgendaQueueService.js +7 -4
- package/dist/services/AppConfigService.d.ts +0 -6
- package/dist/services/AppConfigService.d.ts.map +1 -1
- package/dist/services/AppConfigService.js +1 -23
- package/dist/services/AttachmentMetadataService.d.ts +0 -58
- package/dist/services/AttachmentMetadataService.d.ts.map +1 -1
- package/dist/services/AttachmentMetadataService.js +8 -643
- package/dist/services/BrandingLogoService.d.ts +1 -6
- package/dist/services/BrandingLogoService.d.ts.map +1 -1
- package/dist/services/BrandingLogoService.js +9 -77
- package/dist/services/BrandingService.d.ts +9 -171
- package/dist/services/BrandingService.d.ts.map +1 -1
- package/dist/services/BrandingService.js +68 -572
- package/dist/services/BrandingThemeCssService.d.ts +1 -17
- package/dist/services/BrandingThemeCssService.d.ts.map +1 -1
- package/dist/services/BrandingThemeCssService.js +9 -71
- package/dist/services/DashboardConfigService.d.ts +54 -214
- package/dist/services/DashboardConfigService.d.ts.map +1 -1
- package/dist/services/DashboardConfigService.js +261 -829
- package/dist/services/DashboardTypesService.d.ts +4 -15
- package/dist/services/DashboardTypesService.d.ts.map +1 -1
- package/dist/services/DashboardTypesService.js +139 -72
- package/dist/services/DoiService.d.ts +1 -1
- package/dist/services/DoiService.d.ts.map +1 -1
- package/dist/services/DoiService.js +45 -71
- package/dist/services/FigshareService.d.ts +15 -10
- package/dist/services/FigshareService.d.ts.map +1 -1
- package/dist/services/FigshareService.js +82 -583
- package/dist/services/FormRecordConsistencyService.d.ts +23 -8
- package/dist/services/FormRecordConsistencyService.d.ts.map +1 -1
- package/dist/services/FormRecordConsistencyService.js +70 -54
- package/dist/services/FormsService.d.ts +2 -91
- package/dist/services/FormsService.d.ts.map +1 -1
- package/dist/services/FormsService.js +64 -324
- package/dist/services/HarvestRunService.d.ts +3 -6
- package/dist/services/HarvestRunService.d.ts.map +1 -1
- package/dist/services/HarvestRunService.js +97 -161
- package/dist/services/I18nEntriesService.d.ts +2 -1
- package/dist/services/I18nEntriesService.d.ts.map +1 -1
- package/dist/services/I18nEntriesService.js +45 -30
- package/dist/services/OniService.d.ts +62 -19
- package/dist/services/OniService.d.ts.map +1 -1
- package/dist/services/OniService.js +691 -223
- package/dist/services/RDMPService.d.ts +1 -1
- package/dist/services/RDMPService.d.ts.map +1 -1
- package/dist/services/RDMPService.js +5 -5
- package/dist/services/RaidService.d.ts +61 -19
- package/dist/services/RaidService.d.ts.map +1 -1
- package/dist/services/RaidService.js +530 -191
- package/dist/services/RecordTypesService.d.ts +0 -29
- package/dist/services/RecordTypesService.d.ts.map +1 -1
- package/dist/services/RecordTypesService.js +11 -106
- package/dist/services/RecordsService.d.ts +26 -313
- package/dist/services/RecordsService.d.ts.map +1 -1
- package/dist/services/RecordsService.js +763 -5089
- package/dist/services/SolrSearchService.d.ts +1 -1
- package/dist/services/SolrSearchService.d.ts.map +1 -1
- package/dist/services/SolrSearchService.js +12 -42
- package/dist/services/StandardDatastreamService.d.ts +5 -4
- package/dist/services/StandardDatastreamService.d.ts.map +1 -1
- package/dist/services/StandardDatastreamService.js +61 -106
- package/dist/services/TriggerService.d.ts.map +1 -1
- package/dist/services/TriggerService.js +30 -54
- package/dist/services/UsersService.d.ts +1 -2
- package/dist/services/UsersService.d.ts.map +1 -1
- package/dist/services/UsersService.js +283 -364
- package/dist/services/VocabularyService.d.ts +0 -2
- package/dist/services/VocabularyService.d.ts.map +1 -1
- package/dist/services/VocabularyService.js +2 -61
- package/dist/services/WorkflowStepsService.d.ts +0 -11
- package/dist/services/WorkflowStepsService.d.ts.map +1 -1
- package/dist/services/WorkflowStepsService.js +3 -32
- package/dist/services/WorkspaceService.d.ts +2 -2
- package/dist/services/WorkspaceService.d.ts.map +1 -1
- package/dist/services/WorkspaceService.js +5 -5
- package/dist/services/doi-v2/bindings.d.ts.map +1 -1
- package/dist/services/doi-v2/bindings.js +20 -3
- package/dist/services/doi-v2/config.d.ts +0 -1
- package/dist/services/doi-v2/config.d.ts.map +1 -1
- package/dist/services/doi-v2/config.js +5 -13
- package/dist/services/doi-v2/runtime.d.ts.map +1 -1
- package/dist/services/doi-v2/runtime.js +54 -14
- package/dist/services/figshare-v2/admin.d.ts +16 -0
- package/dist/services/figshare-v2/admin.d.ts.map +1 -0
- package/dist/services/figshare-v2/admin.js +283 -0
- package/dist/services/figshare-v2/assets.d.ts +20 -1
- package/dist/services/figshare-v2/assets.d.ts.map +1 -1
- package/dist/services/figshare-v2/assets.js +16 -1
- package/dist/services/figshare-v2/bindings.d.ts.map +1 -1
- package/dist/services/figshare-v2/bindings.js +20 -3
- package/dist/services/figshare-v2/config.d.ts +8 -2
- package/dist/services/figshare-v2/config.d.ts.map +1 -1
- package/dist/services/figshare-v2/config.js +31 -3
- package/dist/services/figshare-v2/execution.d.ts +25 -0
- package/dist/services/figshare-v2/execution.d.ts.map +1 -0
- package/dist/services/figshare-v2/execution.js +49 -0
- package/dist/services/figshare-v2/http.d.ts +6 -1
- package/dist/services/figshare-v2/http.d.ts.map +1 -1
- package/dist/services/figshare-v2/http.js +69 -12
- package/dist/services/figshare-v2/identity.d.ts +12 -0
- package/dist/services/figshare-v2/identity.d.ts.map +1 -0
- package/dist/services/figshare-v2/identity.js +78 -0
- package/dist/services/figshare-v2/managed-assets.d.ts +9 -0
- package/dist/services/figshare-v2/managed-assets.d.ts.map +1 -0
- package/dist/services/figshare-v2/managed-assets.js +229 -0
- package/dist/services/figshare-v2/plan.d.ts.map +1 -1
- package/dist/services/figshare-v2/plan.js +2 -9
- package/dist/services/figshare-v2/runtime.d.ts.map +1 -1
- package/dist/services/figshare-v2/runtime.js +58 -11
- package/dist/services/figshare-v2/source-intent.d.ts +9 -0
- package/dist/services/figshare-v2/source-intent.d.ts.map +1 -0
- package/dist/services/figshare-v2/source-intent.js +93 -0
- package/dist/services/figshare-v2/status.d.ts +4 -0
- package/dist/services/figshare-v2/status.d.ts.map +1 -0
- package/dist/services/figshare-v2/status.js +29 -0
- package/dist/services/figshare-v2/sync-store.d.ts +27 -0
- package/dist/services/figshare-v2/sync-store.d.ts.map +1 -0
- package/dist/services/figshare-v2/sync-store.js +139 -0
- package/dist/services/figshare-v2/types.d.ts +3 -0
- package/dist/services/figshare-v2/types.d.ts.map +1 -1
- package/dist/services/figshare-v2/types.js +1 -1
- package/dist/services/figshare-v2/worker.d.ts +16 -0
- package/dist/services/figshare-v2/worker.d.ts.map +1 -0
- package/dist/services/figshare-v2/worker.js +572 -0
- package/dist/services/index.d.ts +0 -9
- package/dist/services/index.d.ts.map +1 -1
- package/dist/services/index.js +3 -45
- package/dist/utilities/TranslationHtml.d.ts +3 -0
- package/dist/utilities/TranslationHtml.d.ts.map +1 -0
- package/dist/utilities/TranslationHtml.js +46 -0
- package/dist/visitor/client.visitor.d.ts +0 -6
- package/dist/visitor/client.visitor.d.ts.map +1 -1
- package/dist/visitor/client.visitor.js +14 -59
- package/dist/visitor/construct.visitor.d.ts +1 -27
- package/dist/visitor/construct.visitor.d.ts.map +1 -1
- package/dist/visitor/construct.visitor.js +177 -265
- package/dist/visitor/context-variables.visitor.d.ts +1 -3
- package/dist/visitor/context-variables.visitor.d.ts.map +1 -1
- package/dist/visitor/context-variables.visitor.js +1 -15
- package/dist/visitor/data-value.visitor.d.ts +0 -6
- package/dist/visitor/data-value.visitor.d.ts.map +1 -1
- package/dist/visitor/data-value.visitor.js +1 -10
- package/dist/visitor/json-type-def.visitor.d.ts +0 -6
- package/dist/visitor/json-type-def.visitor.d.ts.map +1 -1
- package/dist/visitor/json-type-def.visitor.js +1 -10
- package/dist/visitor/migrate-config-v4-v5.visitor.d.ts +0 -11
- package/dist/visitor/migrate-config-v4-v5.visitor.d.ts.map +1 -1
- package/dist/visitor/migrate-config-v4-v5.visitor.js +133 -228
- package/dist/visitor/template.visitor.d.ts +2 -17
- package/dist/visitor/template.visitor.d.ts.map +1 -1
- package/dist/visitor/template.visitor.js +22 -60
- package/dist/visitor/validator.visitor.d.ts +7 -49
- package/dist/visitor/validator.visitor.d.ts.map +1 -1
- package/dist/visitor/validator.visitor.js +178 -275
- package/dist/waterline-models/AttachmentMetadata.d.ts +0 -22
- package/dist/waterline-models/AttachmentMetadata.d.ts.map +1 -1
- package/dist/waterline-models/AttachmentMetadata.js +3 -147
- package/dist/waterline-models/BrandingConfig.d.ts +0 -7
- package/dist/waterline-models/BrandingConfig.d.ts.map +1 -1
- package/dist/waterline-models/BrandingConfig.js +1 -16
- package/dist/waterline-models/BrandingConfigHistory.d.ts +2 -11
- package/dist/waterline-models/BrandingConfigHistory.d.ts.map +1 -1
- package/dist/waterline-models/BrandingConfigHistory.js +1 -21
- package/dist/waterline-models/FigshareSync.d.ts +41 -0
- package/dist/waterline-models/FigshareSync.d.ts.map +1 -0
- package/dist/waterline-models/FigshareSync.js +168 -0
- package/dist/waterline-models/RecordType.d.ts +0 -9
- package/dist/waterline-models/RecordType.d.ts.map +1 -1
- package/dist/waterline-models/RecordType.js +1 -16
- package/dist/waterline-models/User.d.ts.map +1 -1
- package/dist/waterline-models/User.js +15 -10
- package/dist/waterline-models/index.d.ts +2 -2
- package/dist/waterline-models/index.d.ts.map +1 -1
- package/dist/waterline-models/index.js +4 -4
- package/package.json +46 -59
- package/dist/AttachmentStagingIdentity.d.ts +0 -3
- package/dist/AttachmentStagingIdentity.d.ts.map +0 -1
- package/dist/AttachmentStagingIdentity.js +0 -10
- package/dist/RecordConcurrencyObservability.d.ts +0 -51
- package/dist/RecordConcurrencyObservability.d.ts.map +0 -1
- package/dist/RecordConcurrencyObservability.js +0 -136
- package/dist/RecordEntityTag.d.ts +0 -31
- package/dist/RecordEntityTag.d.ts.map +0 -1
- package/dist/RecordEntityTag.js +0 -101
- package/dist/RecordFormFingerprint.d.ts +0 -7
- package/dist/RecordFormFingerprint.d.ts.map +0 -1
- package/dist/RecordFormFingerprint.js +0 -106
- package/dist/RecordHttpConcurrency.d.ts +0 -60
- package/dist/RecordHttpConcurrency.d.ts.map +0 -1
- package/dist/RecordHttpConcurrency.js +0 -181
- package/dist/RecordSaveResponse.d.ts +0 -219
- package/dist/RecordSaveResponse.d.ts.map +0 -1
- package/dist/RecordSaveResponse.js +0 -639
- package/dist/RecordStorageConcurrency.d.ts +0 -48
- package/dist/RecordStorageConcurrency.d.ts.map +0 -1
- package/dist/RecordStorageConcurrency.js +0 -103
- package/dist/RecordWriteClassification.d.ts +0 -12
- package/dist/RecordWriteClassification.d.ts.map +0 -1
- package/dist/RecordWriteClassification.js +0 -70
- package/dist/action-execution/audit.d.ts +0 -41
- package/dist/action-execution/audit.d.ts.map +0 -1
- package/dist/action-execution/audit.js +0 -122
- package/dist/action-execution/executor.d.ts +0 -24
- package/dist/action-execution/executor.d.ts.map +0 -1
- package/dist/action-execution/executor.js +0 -435
- package/dist/action-execution/failure.d.ts +0 -49
- package/dist/action-execution/failure.d.ts.map +0 -1
- package/dist/action-execution/failure.js +0 -129
- package/dist/action-execution/index.d.ts +0 -7
- package/dist/action-execution/index.d.ts.map +0 -1
- package/dist/action-execution/index.js +0 -23
- package/dist/action-execution/legacy-result.d.ts +0 -21
- package/dist/action-execution/legacy-result.d.ts.map +0 -1
- package/dist/action-execution/legacy-result.js +0 -70
- package/dist/action-execution/policy.d.ts +0 -12
- package/dist/action-execution/policy.d.ts.map +0 -1
- package/dist/action-execution/policy.js +0 -138
- package/dist/action-execution/types.d.ts +0 -121
- package/dist/action-execution/types.d.ts.map +0 -1
- package/dist/action-execution/types.js +0 -22
- package/dist/api-routes/groups/record-schemas.d.ts +0 -5
- package/dist/api-routes/groups/record-schemas.d.ts.map +0 -1
- package/dist/api-routes/groups/record-schemas.js +0 -181
- package/dist/api-routes/record-schema-openapi.d.ts +0 -26
- package/dist/api-routes/record-schema-openapi.d.ts.map +0 -1
- package/dist/api-routes/record-schema-openapi.js +0 -38
- package/dist/api-routes/record-schema-response.d.ts +0 -40
- package/dist/api-routes/record-schema-response.d.ts.map +0 -1
- package/dist/api-routes/record-schema-response.js +0 -89
- package/dist/config/recordSchema.config.d.ts +0 -68
- package/dist/config/recordSchema.config.d.ts.map +0 -1
- package/dist/config/recordSchema.config.js +0 -173
- package/dist/config/recordValidation.config.d.ts +0 -19
- package/dist/config/recordValidation.config.d.ts.map +0 -1
- package/dist/config/recordValidation.config.js +0 -10
- package/dist/configmodels/DashboardFieldCatalogue.d.ts +0 -67
- package/dist/configmodels/DashboardFieldCatalogue.d.ts.map +0 -1
- package/dist/configmodels/DashboardFieldCatalogue.js +0 -174
- package/dist/configmodels/DashboardSettings.d.ts +0 -191
- package/dist/configmodels/DashboardSettings.d.ts.map +0 -1
- package/dist/configmodels/DashboardSettings.js +0 -705
- package/dist/configmodels/OniPublishing.d.ts +0 -205
- package/dist/configmodels/OniPublishing.d.ts.map +0 -1
- package/dist/configmodels/OniPublishing.js +0 -335
- package/dist/configmodels/RaidPublishing.d.ts +0 -97
- package/dist/configmodels/RaidPublishing.d.ts.map +0 -1
- package/dist/configmodels/RaidPublishing.js +0 -35
- package/dist/configmodels/WebAnalytics.d.ts +0 -55
- package/dist/configmodels/WebAnalytics.d.ts.map +0 -1
- package/dist/configmodels/WebAnalytics.js +0 -61
- package/dist/controllers/BrandingControllerSupport.d.ts +0 -20
- package/dist/controllers/BrandingControllerSupport.d.ts.map +0 -1
- package/dist/controllers/BrandingControllerSupport.js +0 -80
- package/dist/controllers/webservice/RecordSchemaController.d.ts +0 -32
- package/dist/controllers/webservice/RecordSchemaController.d.ts.map +0 -1
- package/dist/controllers/webservice/RecordSchemaController.js +0 -356
- package/dist/model/BrandingTypeface.d.ts +0 -70
- package/dist/model/BrandingTypeface.d.ts.map +0 -1
- package/dist/model/BrandingTypeface.js +0 -116
- package/dist/model/record-contract.d.ts +0 -42
- package/dist/model/record-contract.d.ts.map +0 -1
- package/dist/model/record-contract.js +0 -3
- package/dist/model/storage/record-schema.d.ts +0 -115
- package/dist/model/storage/record-schema.d.ts.map +0 -1
- package/dist/model/storage/record-schema.js +0 -3
- package/dist/record-contract/ajv-error-mapper.d.ts +0 -34
- package/dist/record-contract/ajv-error-mapper.d.ts.map +0 -1
- package/dist/record-contract/ajv-error-mapper.js +0 -153
- package/dist/record-contract/canonical-json.d.ts +0 -20
- package/dist/record-contract/canonical-json.d.ts.map +0 -1
- package/dist/record-contract/canonical-json.js +0 -126
- package/dist/record-contract/codes.d.ts +0 -36
- package/dist/record-contract/codes.d.ts.map +0 -1
- package/dist/record-contract/codes.js +0 -38
- package/dist/record-contract/contributor-registry.d.ts +0 -76
- package/dist/record-contract/contributor-registry.d.ts.map +0 -1
- package/dist/record-contract/contributor-registry.js +0 -126
- package/dist/record-contract/core-contributors.d.ts +0 -44
- package/dist/record-contract/core-contributors.d.ts.map +0 -1
- package/dist/record-contract/core-contributors.js +0 -395
- package/dist/record-contract/deep-freeze.d.ts +0 -3
- package/dist/record-contract/deep-freeze.d.ts.map +0 -1
- package/dist/record-contract/deep-freeze.js +0 -23
- package/dist/record-contract/index.d.ts +0 -13
- package/dist/record-contract/index.d.ts.map +0 -1
- package/dist/record-contract/index.js +0 -29
- package/dist/record-contract/json-pointer.d.ts +0 -20
- package/dist/record-contract/json-pointer.d.ts.map +0 -1
- package/dist/record-contract/json-pointer.js +0 -70
- package/dist/record-contract/json-schema-renderer.d.ts +0 -51
- package/dist/record-contract/json-schema-renderer.d.ts.map +0 -1
- package/dist/record-contract/json-schema-renderer.js +0 -450
- package/dist/record-contract/record-contract-compiler.d.ts +0 -42
- package/dist/record-contract/record-contract-compiler.d.ts.map +0 -1
- package/dist/record-contract/record-contract-compiler.js +0 -775
- package/dist/record-contract/record-contract-context.d.ts +0 -91
- package/dist/record-contract/record-contract-context.d.ts.map +0 -1
- package/dist/record-contract/record-contract-context.js +0 -39
- package/dist/record-contract/record-json-schema-artifact.d.ts +0 -74
- package/dist/record-contract/record-json-schema-artifact.d.ts.map +0 -1
- package/dist/record-contract/record-json-schema-artifact.js +0 -309
- package/dist/record-contract/record-json-schema-etag.d.ts +0 -15
- package/dist/record-contract/record-json-schema-etag.d.ts.map +0 -1
- package/dist/record-contract/record-json-schema-etag.js +0 -41
- package/dist/record-contract/types.d.ts +0 -151
- package/dist/record-contract/types.d.ts.map +0 -1
- package/dist/record-contract/types.js +0 -6
- package/dist/services/BrandingTypefaceService.d.ts +0 -74
- package/dist/services/BrandingTypefaceService.d.ts.map +0 -1
- package/dist/services/BrandingTypefaceService.js +0 -359
- package/dist/services/BrandingWoff2Inspector.d.ts +0 -17
- package/dist/services/BrandingWoff2Inspector.d.ts.map +0 -1
- package/dist/services/BrandingWoff2Inspector.js +0 -402
- package/dist/services/DashboardLegacyConversion.d.ts +0 -82
- package/dist/services/DashboardLegacyConversion.d.ts.map +0 -1
- package/dist/services/DashboardLegacyConversion.js +0 -427
- package/dist/services/RecordSchemaService.d.ts +0 -440
- package/dist/services/RecordSchemaService.d.ts.map +0 -1
- package/dist/services/RecordSchemaService.js +0 -3061
- package/dist/services/RecordValidationService.d.ts +0 -340
- package/dist/services/RecordValidationService.d.ts.map +0 -1
- package/dist/services/RecordValidationService.js +0 -1898
- package/dist/services/form-record-access-user.d.ts +0 -3
- package/dist/services/form-record-access-user.d.ts.map +0 -1
- package/dist/services/form-record-access-user.js +0 -23
- package/dist/services/integration-v2/bindings.d.ts +0 -3
- package/dist/services/integration-v2/bindings.d.ts.map +0 -1
- package/dist/services/integration-v2/bindings.js +0 -91
- package/dist/services/integration-v2/runtime.d.ts +0 -3
- package/dist/services/integration-v2/runtime.d.ts.map +0 -1
- package/dist/services/integration-v2/runtime.js +0 -50
- package/dist/services/internal-record-schema-authorization.d.ts +0 -8
- package/dist/services/internal-record-schema-authorization.d.ts.map +0 -1
- package/dist/services/internal-record-schema-authorization.js +0 -16
- package/dist/services/oni-v2/audit.d.ts +0 -19
- package/dist/services/oni-v2/audit.d.ts.map +0 -1
- package/dist/services/oni-v2/audit.js +0 -50
- package/dist/services/oni-v2/bindings.d.ts +0 -7
- package/dist/services/oni-v2/bindings.d.ts.map +0 -1
- package/dist/services/oni-v2/bindings.js +0 -31
- package/dist/services/oni-v2/config.d.ts +0 -12
- package/dist/services/oni-v2/config.d.ts.map +0 -1
- package/dist/services/oni-v2/config.js +0 -134
- package/dist/services/oni-v2/context.d.ts +0 -3
- package/dist/services/oni-v2/context.d.ts.map +0 -1
- package/dist/services/oni-v2/context.js +0 -17
- package/dist/services/oni-v2/crate.d.ts +0 -17
- package/dist/services/oni-v2/crate.d.ts.map +0 -1
- package/dist/services/oni-v2/crate.js +0 -504
- package/dist/services/oni-v2/flydriveOcflStore.d.ts +0 -69
- package/dist/services/oni-v2/flydriveOcflStore.d.ts.map +0 -1
- package/dist/services/oni-v2/flydriveOcflStore.js +0 -325
- package/dist/services/oni-v2/ingestion.d.ts +0 -37
- package/dist/services/oni-v2/ingestion.d.ts.map +0 -1
- package/dist/services/oni-v2/ingestion.js +0 -91
- package/dist/services/oni-v2/mapping.d.ts +0 -17
- package/dist/services/oni-v2/mapping.d.ts.map +0 -1
- package/dist/services/oni-v2/mapping.js +0 -137
- package/dist/services/oni-v2/repository.d.ts +0 -9
- package/dist/services/oni-v2/repository.d.ts.map +0 -1
- package/dist/services/oni-v2/repository.js +0 -180
- package/dist/services/oni-v2/runtime.d.ts +0 -23
- package/dist/services/oni-v2/runtime.d.ts.map +0 -1
- package/dist/services/oni-v2/runtime.js +0 -121
- package/dist/services/oni-v2/templating.d.ts +0 -11
- package/dist/services/oni-v2/templating.d.ts.map +0 -1
- package/dist/services/oni-v2/templating.js +0 -27
- package/dist/services/oni-v2/types.d.ts +0 -100
- package/dist/services/oni-v2/types.d.ts.map +0 -1
- package/dist/services/oni-v2/types.js +0 -3
- package/dist/services/raid-v2/audit.d.ts +0 -10
- package/dist/services/raid-v2/audit.d.ts.map +0 -1
- package/dist/services/raid-v2/audit.js +0 -29
- package/dist/services/raid-v2/errors.d.ts +0 -85
- package/dist/services/raid-v2/errors.d.ts.map +0 -1
- package/dist/services/raid-v2/errors.js +0 -36
- package/dist/services/raid-v2/http.d.ts +0 -4
- package/dist/services/raid-v2/http.d.ts.map +0 -1
- package/dist/services/raid-v2/http.js +0 -84
- package/dist/services/raid-v2/logger.d.ts +0 -8
- package/dist/services/raid-v2/logger.d.ts.map +0 -1
- package/dist/services/raid-v2/logger.js +0 -30
- package/dist/services/raid-v2/mapping.d.ts +0 -9
- package/dist/services/raid-v2/mapping.d.ts.map +0 -1
- package/dist/services/raid-v2/mapping.js +0 -168
- package/dist/services/raid-v2/runtime.d.ts +0 -5
- package/dist/services/raid-v2/runtime.d.ts.map +0 -1
- package/dist/services/raid-v2/runtime.js +0 -135
- package/dist/services/raid-v2/tags.d.ts +0 -11
- package/dist/services/raid-v2/tags.d.ts.map +0 -1
- package/dist/services/raid-v2/tags.js +0 -12
- package/dist/services/raid-v2/types.d.ts +0 -66
- package/dist/services/raid-v2/types.d.ts.map +0 -1
- package/dist/services/raid-v2/types.js +0 -3
- package/dist/services/record-hooks/coordinator.d.ts +0 -64
- package/dist/services/record-hooks/coordinator.d.ts.map +0 -1
- package/dist/services/record-hooks/coordinator.js +0 -276
- package/dist/visitor/related-object-data-inline.visitor.d.ts +0 -31
- package/dist/visitor/related-object-data-inline.visitor.d.ts.map +0 -1
- package/dist/visitor/related-object-data-inline.visitor.js +0 -96
- package/dist/waterline-models/DashboardConfiguration.d.ts +0 -29
- package/dist/waterline-models/DashboardConfiguration.d.ts.map +0 -1
- package/dist/waterline-models/DashboardConfiguration.js +0 -52
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("./types"), exports);
|
|
18
|
-
__exportStar(require("./failure"), exports);
|
|
19
|
-
__exportStar(require("./policy"), exports);
|
|
20
|
-
__exportStar(require("./legacy-result"), exports);
|
|
21
|
-
__exportStar(require("./executor"), exports);
|
|
22
|
-
__exportStar(require("./audit"), exports);
|
|
23
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYWN0aW9uLWV4ZWN1dGlvbi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsMENBQXdCO0FBQ3hCLDRDQUEwQjtBQUMxQiwyQ0FBeUI7QUFDekIsa0RBQWdDO0FBQ2hDLDZDQUEyQjtBQUMzQiwwQ0FBd0IifQ==
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import { Effect } from 'effect';
|
|
2
|
-
/**
|
|
3
|
-
* A mutable cell reporting whether the value a hook returned can genuinely be
|
|
4
|
-
* cancelled. It is only known after the hook has been invoked, which is later
|
|
5
|
-
* than the point where the action is described.
|
|
6
|
-
*/
|
|
7
|
-
export interface CancellationCell {
|
|
8
|
-
value: boolean;
|
|
9
|
-
}
|
|
10
|
-
export interface LegacyEffectAdaptation {
|
|
11
|
-
effect: Effect.Effect<unknown, unknown, never>;
|
|
12
|
-
cooperativeCancellation: boolean;
|
|
13
|
-
}
|
|
14
|
-
/** Adapt whatever a legacy hook returned to an Effect. */
|
|
15
|
-
export declare function adaptLegacyHookResult(value: unknown): LegacyEffectAdaptation;
|
|
16
|
-
/**
|
|
17
|
-
* Wrap a legacy hook call so a synchronous throw is captured as a failure and
|
|
18
|
-
* the call itself is deferred until the attempt starts.
|
|
19
|
-
*/
|
|
20
|
-
export declare function legacyHookToEffect(invoke: () => unknown, cancellation?: CancellationCell): Effect.Effect<unknown, unknown, never>;
|
|
21
|
-
//# sourceMappingURL=legacy-result.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"legacy-result.d.ts","sourceRoot":"","sources":["../../src/action-execution/legacy-result.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAGhC;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;IAC/C,uBAAuB,EAAE,OAAO,CAAC;CAClC;AAmDD,0DAA0D;AAC1D,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,OAAO,GAAG,sBAAsB,CAW5E;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,MAAM,OAAO,EACrB,YAAY,GAAE,gBAAkC,GAC/C,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,CAMxC"}
|
|
@@ -1,70 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.adaptLegacyHookResult = adaptLegacyHookResult;
|
|
4
|
-
exports.legacyHookToEffect = legacyHookToEffect;
|
|
5
|
-
const effect_1 = require("effect");
|
|
6
|
-
const rxjs_1 = require("rxjs");
|
|
7
|
-
/** Legacy Observable hooks are first-value: later emissions are ignored. */
|
|
8
|
-
function observableEffect(observable) {
|
|
9
|
-
return effect_1.Effect.async((resume, signal) => {
|
|
10
|
-
let settled = false;
|
|
11
|
-
const settle = (effect) => {
|
|
12
|
-
if (settled) {
|
|
13
|
-
return;
|
|
14
|
-
}
|
|
15
|
-
settled = true;
|
|
16
|
-
resume(effect);
|
|
17
|
-
// A synchronous Observable settles while `subscribe` is still running,
|
|
18
|
-
// so unsubscribing waits until `subscription` has been assigned.
|
|
19
|
-
queueMicrotask(() => subscription.unsubscribe());
|
|
20
|
-
};
|
|
21
|
-
const subscription = observable.subscribe({
|
|
22
|
-
next: value => settle(effect_1.Effect.succeed(value)),
|
|
23
|
-
error: (error) => settle(effect_1.Effect.fail(error)),
|
|
24
|
-
complete: () => settle(effect_1.Effect.fail(new Error('Observable hook completed without a value'))),
|
|
25
|
-
});
|
|
26
|
-
signal.addEventListener('abort', () => {
|
|
27
|
-
settled = true;
|
|
28
|
-
subscription.unsubscribe();
|
|
29
|
-
}, { once: true });
|
|
30
|
-
});
|
|
31
|
-
}
|
|
32
|
-
/**
|
|
33
|
-
* There is deliberately no attempt to abort the Promise. Effect stops waiting
|
|
34
|
-
* once the fiber is interrupted, but an opaque Promise side effect continues,
|
|
35
|
-
* which is why Promise-backed hooks report non-cooperative cancellation.
|
|
36
|
-
*/
|
|
37
|
-
function promiseEffect(promise) {
|
|
38
|
-
return effect_1.Effect.tryPromise({ try: () => promise, catch: error => error });
|
|
39
|
-
}
|
|
40
|
-
function isThenable(value) {
|
|
41
|
-
if (value === null || (typeof value !== 'object' && typeof value !== 'function')) {
|
|
42
|
-
return false;
|
|
43
|
-
}
|
|
44
|
-
return typeof value.then === 'function';
|
|
45
|
-
}
|
|
46
|
-
/** Adapt whatever a legacy hook returned to an Effect. */
|
|
47
|
-
function adaptLegacyHookResult(value) {
|
|
48
|
-
if (effect_1.Effect.isEffect(value)) {
|
|
49
|
-
return { effect: value, cooperativeCancellation: true };
|
|
50
|
-
}
|
|
51
|
-
if ((0, rxjs_1.isObservable)(value)) {
|
|
52
|
-
return { effect: observableEffect(value), cooperativeCancellation: true };
|
|
53
|
-
}
|
|
54
|
-
if (isThenable(value)) {
|
|
55
|
-
return { effect: promiseEffect(value), cooperativeCancellation: false };
|
|
56
|
-
}
|
|
57
|
-
return { effect: effect_1.Effect.succeed(value), cooperativeCancellation: true };
|
|
58
|
-
}
|
|
59
|
-
/**
|
|
60
|
-
* Wrap a legacy hook call so a synchronous throw is captured as a failure and
|
|
61
|
-
* the call itself is deferred until the attempt starts.
|
|
62
|
-
*/
|
|
63
|
-
function legacyHookToEffect(invoke, cancellation = { value: true }) {
|
|
64
|
-
return effect_1.Effect.suspend(() => {
|
|
65
|
-
const adaptation = adaptLegacyHookResult(invoke());
|
|
66
|
-
cancellation.value = adaptation.cooperativeCancellation;
|
|
67
|
-
return adaptation.effect;
|
|
68
|
-
});
|
|
69
|
-
}
|
|
70
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGVnYWN5LXJlc3VsdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hY3Rpb24tZXhlY3V0aW9uL2xlZ2FjeS1yZXN1bHQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFtRUEsc0RBV0M7QUFNRCxnREFTQztBQTdGRCxtQ0FBZ0M7QUFDaEMsK0JBQWdEO0FBZ0JoRCw0RUFBNEU7QUFDNUUsU0FBUyxnQkFBZ0IsQ0FBQyxVQUErQjtJQUN2RCxPQUFPLGVBQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxNQUFNLEVBQUUsTUFBTSxFQUFFLEVBQUU7UUFDckMsSUFBSSxPQUFPLEdBQUcsS0FBSyxDQUFDO1FBRXBCLE1BQU0sTUFBTSxHQUFHLENBQUMsTUFBOEMsRUFBUSxFQUFFO1lBQ3RFLElBQUksT0FBTyxFQUFFLENBQUM7Z0JBQ1osT0FBTztZQUNULENBQUM7WUFDRCxPQUFPLEdBQUcsSUFBSSxDQUFDO1lBQ2YsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQ2YsdUVBQXVFO1lBQ3ZFLGlFQUFpRTtZQUNqRSxjQUFjLENBQUMsR0FBRyxFQUFFLENBQUMsWUFBWSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7UUFDbkQsQ0FBQyxDQUFDO1FBRUYsTUFBTSxZQUFZLEdBQUcsVUFBVSxDQUFDLFNBQVMsQ0FBQztZQUN4QyxJQUFJLEVBQUUsS0FBSyxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsZUFBTSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUM1QyxLQUFLLEVBQUUsQ0FBQyxLQUFjLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxlQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3JELFFBQVEsRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsZUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLEtBQUssQ0FBQywyQ0FBMkMsQ0FBQyxDQUFDLENBQUM7U0FDNUYsQ0FBQyxDQUFDO1FBRUgsTUFBTSxDQUFDLGdCQUFnQixDQUNyQixPQUFPLEVBQ1AsR0FBRyxFQUFFO1lBQ0gsT0FBTyxHQUFHLElBQUksQ0FBQztZQUNmLFlBQVksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUM3QixDQUFDLEVBQ0QsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQ2YsQ0FBQztJQUNKLENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQztBQUVEOzs7O0dBSUc7QUFDSCxTQUFTLGFBQWEsQ0FBQyxPQUE2QjtJQUNsRCxPQUFPLGVBQU0sQ0FBQyxVQUFVLENBQUMsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLENBQUMsT0FBTyxFQUFFLEtBQUssRUFBRSxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUM7QUFDMUUsQ0FBQztBQUVELFNBQVMsVUFBVSxDQUFDLEtBQWM7SUFDaEMsSUFBSSxLQUFLLEtBQUssSUFBSSxJQUFJLENBQUMsT0FBTyxLQUFLLEtBQUssUUFBUSxJQUFJLE9BQU8sS0FBSyxLQUFLLFVBQVUsQ0FBQyxFQUFFLENBQUM7UUFDakYsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBQ0QsT0FBTyxPQUFRLEtBQThCLENBQUMsSUFBSSxLQUFLLFVBQVUsQ0FBQztBQUNwRSxDQUFDO0FBRUQsMERBQTBEO0FBQzFELFNBQWdCLHFCQUFxQixDQUFDLEtBQWM7SUFDbEQsSUFBSSxlQUFNLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7UUFDM0IsT0FBTyxFQUFFLE1BQU0sRUFBRSxLQUErQyxFQUFFLHVCQUF1QixFQUFFLElBQUksRUFBRSxDQUFDO0lBQ3BHLENBQUM7SUFDRCxJQUFJLElBQUEsbUJBQVksRUFBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1FBQ3hCLE9BQU8sRUFBRSxNQUFNLEVBQUUsZ0JBQWdCLENBQUMsS0FBSyxDQUFDLEVBQUUsdUJBQXVCLEVBQUUsSUFBSSxFQUFFLENBQUM7SUFDNUUsQ0FBQztJQUNELElBQUksVUFBVSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7UUFDdEIsT0FBTyxFQUFFLE1BQU0sRUFBRSxhQUFhLENBQUMsS0FBSyxDQUFDLEVBQUUsdUJBQXVCLEVBQUUsS0FBSyxFQUFFLENBQUM7SUFDMUUsQ0FBQztJQUNELE9BQU8sRUFBRSxNQUFNLEVBQUUsZUFBTSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRSx1QkFBdUIsRUFBRSxJQUFJLEVBQUUsQ0FBQztBQUMxRSxDQUFDO0FBRUQ7OztHQUdHO0FBQ0gsU0FBZ0Isa0JBQWtCLENBQ2hDLE1BQXFCLEVBQ3JCLGVBQWlDLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRTtJQUVoRCxPQUFPLGVBQU0sQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFO1FBQ3pCLE1BQU0sVUFBVSxHQUFHLHFCQUFxQixDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUM7UUFDbkQsWUFBWSxDQUFDLEtBQUssR0FBRyxVQUFVLENBQUMsdUJBQXVCLENBQUM7UUFDeEQsT0FBTyxVQUFVLENBQUMsTUFBTSxDQUFDO0lBQzNCLENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyJ9
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import type { ActionExecutionMode, ActionExecutionPhase, ActionExecutionPolicy, RetryScheduleConfig } from './types';
|
|
2
|
-
export declare function validateActionId(id: unknown): string;
|
|
3
|
-
export declare function deriveActionId(mode: ActionExecutionMode | string, phase: ActionExecutionPhase | string, index: number, functionExpression: string): string;
|
|
4
|
-
export declare function resolveActionId(configuredId: unknown, mode: ActionExecutionMode | string, phase: ActionExecutionPhase | string, index: number, functionExpression: string): string;
|
|
5
|
-
export declare function validateActionExecutionPolicy(policy: unknown): ActionExecutionPolicy | undefined;
|
|
6
|
-
/**
|
|
7
|
-
* Delay before retry number `retryNumber` (1 is the delay after the first
|
|
8
|
-
* failed attempt). Jitter spreads the delay over 50%-150% of the base and is
|
|
9
|
-
* still capped at the configured maximum delay.
|
|
10
|
-
*/
|
|
11
|
-
export declare function retryDelayMs(schedule: RetryScheduleConfig | undefined, retryNumber: number, random?: () => number): number;
|
|
12
|
-
//# sourceMappingURL=policy.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"policy.d.ts","sourceRoot":"","sources":["../../src/action-execution/policy.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,mBAAmB,EACnB,oBAAoB,EACpB,qBAAqB,EAErB,mBAAmB,EACpB,MAAM,SAAS,CAAC;AA4DjB,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,OAAO,GAAG,MAAM,CAKpD;AAED,wBAAgB,cAAc,CAC5B,IAAI,EAAE,mBAAmB,GAAG,MAAM,EAClC,KAAK,EAAE,oBAAoB,GAAG,MAAM,EACpC,KAAK,EAAE,MAAM,EACb,kBAAkB,EAAE,MAAM,GACzB,MAAM,CAGR;AAED,wBAAgB,eAAe,CAC7B,YAAY,EAAE,OAAO,EACrB,IAAI,EAAE,mBAAmB,GAAG,MAAM,EAClC,KAAK,EAAE,oBAAoB,GAAG,MAAM,EACpC,KAAK,EAAE,MAAM,EACb,kBAAkB,EAAE,MAAM,GACzB,MAAM,CAKR;AAED,wBAAgB,6BAA6B,CAAC,MAAM,EAAE,OAAO,GAAG,qBAAqB,GAAG,SAAS,CAyChG;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAC1B,QAAQ,EAAE,mBAAmB,GAAG,SAAS,EACzC,WAAW,EAAE,MAAM,EACnB,MAAM,GAAE,MAAM,MAAoB,GACjC,MAAM,CAaR"}
|
|
@@ -1,138 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.validateActionId = validateActionId;
|
|
4
|
-
exports.deriveActionId = deriveActionId;
|
|
5
|
-
exports.resolveActionId = resolveActionId;
|
|
6
|
-
exports.validateActionExecutionPolicy = validateActionExecutionPolicy;
|
|
7
|
-
exports.retryDelayMs = retryDelayMs;
|
|
8
|
-
const node_crypto_1 = require("node:crypto");
|
|
9
|
-
const failure_1 = require("./failure");
|
|
10
|
-
const MAX_TIMEOUT_MS = 600_000;
|
|
11
|
-
const MAX_DELAY_MS = 60_000;
|
|
12
|
-
const MAX_ATTEMPTS = 5;
|
|
13
|
-
const ACTION_ID_PATTERN = /^[A-Za-z0-9][A-Za-z0-9._:-]{0,127}$/;
|
|
14
|
-
function isIntegerInRange(value, min, max) {
|
|
15
|
-
return typeof value === 'number' && Number.isInteger(value) && value >= min && value <= max;
|
|
16
|
-
}
|
|
17
|
-
function configurationError(message) {
|
|
18
|
-
throw new failure_1.ActionConfigurationError(message);
|
|
19
|
-
}
|
|
20
|
-
function validateJitter(value) {
|
|
21
|
-
if (value === undefined) {
|
|
22
|
-
return undefined;
|
|
23
|
-
}
|
|
24
|
-
if (typeof value !== 'boolean') {
|
|
25
|
-
configurationError('Retry jitter must be a boolean.');
|
|
26
|
-
}
|
|
27
|
-
return value;
|
|
28
|
-
}
|
|
29
|
-
function validateSchedule(schedule) {
|
|
30
|
-
if (!schedule || typeof schedule !== 'object') {
|
|
31
|
-
configurationError('Retry schedule must be an object.');
|
|
32
|
-
}
|
|
33
|
-
const value = schedule;
|
|
34
|
-
if (value.type !== 'fixed' && value.type !== 'exponential') {
|
|
35
|
-
configurationError('Retry schedule type must be fixed or exponential.');
|
|
36
|
-
}
|
|
37
|
-
if (!isIntegerInRange(value.delayMs, 0, MAX_DELAY_MS)) {
|
|
38
|
-
configurationError('Retry delayMs must be an integer from 0 through 60000.');
|
|
39
|
-
}
|
|
40
|
-
const jitter = validateJitter(value.jitter);
|
|
41
|
-
if (value.type === 'fixed') {
|
|
42
|
-
const result = { type: 'fixed', delayMs: value.delayMs };
|
|
43
|
-
if (jitter !== undefined) {
|
|
44
|
-
result.jitter = jitter;
|
|
45
|
-
}
|
|
46
|
-
return result;
|
|
47
|
-
}
|
|
48
|
-
if (!isIntegerInRange(value.maxDelayMs, 0, MAX_DELAY_MS) || value.maxDelayMs < value.delayMs) {
|
|
49
|
-
configurationError('Exponential maxDelayMs must be an integer no smaller than delayMs and no greater than 60000.');
|
|
50
|
-
}
|
|
51
|
-
const result = {
|
|
52
|
-
type: 'exponential',
|
|
53
|
-
delayMs: value.delayMs,
|
|
54
|
-
maxDelayMs: value.maxDelayMs,
|
|
55
|
-
};
|
|
56
|
-
if (jitter !== undefined) {
|
|
57
|
-
result.jitter = jitter;
|
|
58
|
-
}
|
|
59
|
-
return result;
|
|
60
|
-
}
|
|
61
|
-
function validateActionId(id) {
|
|
62
|
-
if (typeof id !== 'string' || !ACTION_ID_PATTERN.test(id.trim())) {
|
|
63
|
-
configurationError('Action id must be a non-empty string of at most 128 safe characters.');
|
|
64
|
-
}
|
|
65
|
-
return id.trim();
|
|
66
|
-
}
|
|
67
|
-
function deriveActionId(mode, phase, index, functionExpression) {
|
|
68
|
-
const digest = (0, node_crypto_1.createHash)('sha256').update(functionExpression).digest('hex').slice(0, 12);
|
|
69
|
-
return `${mode}.${phase}.${index}.${digest}`;
|
|
70
|
-
}
|
|
71
|
-
function resolveActionId(configuredId, mode, phase, index, functionExpression) {
|
|
72
|
-
if (configuredId === undefined) {
|
|
73
|
-
return deriveActionId(mode, phase, index, functionExpression);
|
|
74
|
-
}
|
|
75
|
-
return validateActionId(configuredId);
|
|
76
|
-
}
|
|
77
|
-
function validateActionExecutionPolicy(policy) {
|
|
78
|
-
if (policy === undefined || policy === null) {
|
|
79
|
-
return undefined;
|
|
80
|
-
}
|
|
81
|
-
if (typeof policy !== 'object' || Array.isArray(policy)) {
|
|
82
|
-
configurationError('Action execution policy must be an object.');
|
|
83
|
-
}
|
|
84
|
-
const value = policy;
|
|
85
|
-
const result = {};
|
|
86
|
-
if (value.timeoutMs !== undefined) {
|
|
87
|
-
if (!isIntegerInRange(value.timeoutMs, 1, MAX_TIMEOUT_MS)) {
|
|
88
|
-
configurationError('Action timeoutMs must be an integer from 1 through 600000.');
|
|
89
|
-
}
|
|
90
|
-
result.timeoutMs = value.timeoutMs;
|
|
91
|
-
}
|
|
92
|
-
if (value.retry !== undefined) {
|
|
93
|
-
if (!value.retry || typeof value.retry !== 'object' || Array.isArray(value.retry)) {
|
|
94
|
-
configurationError('Retry policy must be an object.');
|
|
95
|
-
}
|
|
96
|
-
const retry = value.retry;
|
|
97
|
-
if (retry.idempotent !== true) {
|
|
98
|
-
configurationError('Retry policy requires idempotent: true.');
|
|
99
|
-
}
|
|
100
|
-
if (!isIntegerInRange(retry.maxAttempts, 1, MAX_ATTEMPTS)) {
|
|
101
|
-
configurationError('Retry maxAttempts must be an integer from 1 through 5.');
|
|
102
|
-
}
|
|
103
|
-
let retryOn;
|
|
104
|
-
if (retry.retryOn !== undefined) {
|
|
105
|
-
if (!Array.isArray(retry.retryOn) || retry.retryOn.some(kind => !(0, failure_1.isActionFailureKind)(kind))) {
|
|
106
|
-
configurationError('Retry retryOn contains an unknown failure kind.');
|
|
107
|
-
}
|
|
108
|
-
retryOn = Array.from(new Set(retry.retryOn));
|
|
109
|
-
}
|
|
110
|
-
result.retry = {
|
|
111
|
-
maxAttempts: retry.maxAttempts,
|
|
112
|
-
retryOn: retryOn ?? ['transient'],
|
|
113
|
-
schedule: retry.schedule === undefined ? undefined : validateSchedule(retry.schedule),
|
|
114
|
-
idempotent: true,
|
|
115
|
-
};
|
|
116
|
-
}
|
|
117
|
-
return result;
|
|
118
|
-
}
|
|
119
|
-
/**
|
|
120
|
-
* Delay before retry number `retryNumber` (1 is the delay after the first
|
|
121
|
-
* failed attempt). Jitter spreads the delay over 50%-150% of the base and is
|
|
122
|
-
* still capped at the configured maximum delay.
|
|
123
|
-
*/
|
|
124
|
-
function retryDelayMs(schedule, retryNumber, random = Math.random) {
|
|
125
|
-
if (!schedule) {
|
|
126
|
-
return 0;
|
|
127
|
-
}
|
|
128
|
-
let base = schedule.delayMs;
|
|
129
|
-
if (schedule.type === 'exponential') {
|
|
130
|
-
base = Math.min(schedule.maxDelayMs, schedule.delayMs * 2 ** Math.max(0, retryNumber - 1));
|
|
131
|
-
}
|
|
132
|
-
if (!schedule.jitter || base === 0) {
|
|
133
|
-
return base;
|
|
134
|
-
}
|
|
135
|
-
const sample = Math.min(1, Math.max(0, random()));
|
|
136
|
-
return Math.min(MAX_DELAY_MS, Math.round(base * (0.5 + sample)));
|
|
137
|
-
}
|
|
138
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9saWN5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2FjdGlvbi1leGVjdXRpb24vcG9saWN5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBb0VBLDRDQUtDO0FBRUQsd0NBUUM7QUFFRCwwQ0FXQztBQUVELHNFQXlDQztBQU9ELG9DQWlCQztBQW5LRCw2Q0FBeUM7QUFDekMsdUNBQTBFO0FBUzFFLE1BQU0sY0FBYyxHQUFHLE9BQU8sQ0FBQztBQUMvQixNQUFNLFlBQVksR0FBRyxNQUFNLENBQUM7QUFDNUIsTUFBTSxZQUFZLEdBQUcsQ0FBQyxDQUFDO0FBQ3ZCLE1BQU0saUJBQWlCLEdBQUcscUNBQXFDLENBQUM7QUFFaEUsU0FBUyxnQkFBZ0IsQ0FBQyxLQUFjLEVBQUUsR0FBVyxFQUFFLEdBQVc7SUFDaEUsT0FBTyxPQUFPLEtBQUssS0FBSyxRQUFRLElBQUksTUFBTSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsSUFBSSxLQUFLLElBQUksR0FBRyxJQUFJLEtBQUssSUFBSSxHQUFHLENBQUM7QUFDOUYsQ0FBQztBQUVELFNBQVMsa0JBQWtCLENBQUMsT0FBZTtJQUN6QyxNQUFNLElBQUksa0NBQXdCLENBQUMsT0FBTyxDQUFDLENBQUM7QUFDOUMsQ0FBQztBQUVELFNBQVMsY0FBYyxDQUFDLEtBQWM7SUFDcEMsSUFBSSxLQUFLLEtBQUssU0FBUyxFQUFFLENBQUM7UUFDeEIsT0FBTyxTQUFTLENBQUM7SUFDbkIsQ0FBQztJQUNELElBQUksT0FBTyxLQUFLLEtBQUssU0FBUyxFQUFFLENBQUM7UUFDL0Isa0JBQWtCLENBQUMsaUNBQWlDLENBQUMsQ0FBQztJQUN4RCxDQUFDO0lBQ0QsT0FBTyxLQUFLLENBQUM7QUFDZixDQUFDO0FBRUQsU0FBUyxnQkFBZ0IsQ0FBQyxRQUFpQjtJQUN6QyxJQUFJLENBQUMsUUFBUSxJQUFJLE9BQU8sUUFBUSxLQUFLLFFBQVEsRUFBRSxDQUFDO1FBQzlDLGtCQUFrQixDQUFDLG1D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
|
|
@@ -1,121 +0,0 @@
|
|
|
1
|
-
import { Effect } from 'effect';
|
|
2
|
-
import type { RuntimeFiber } from 'effect/Fiber';
|
|
3
|
-
export declare const ACTION_FAILURE_KINDS: readonly ["configuration", "validation", "domain", "transient", "timeout", "interrupted", "unexpected"];
|
|
4
|
-
export type ActionFailureKind = (typeof ACTION_FAILURE_KINDS)[number];
|
|
5
|
-
export declare const ACTION_EXECUTION_STATUSES: readonly ["succeeded", "failed", "timed_out", "interrupted", "skipped", "dispatched"];
|
|
6
|
-
export type ActionExecutionStatus = (typeof ACTION_EXECUTION_STATUSES)[number];
|
|
7
|
-
export declare const ACTION_SKIPPED_REASONS: readonly ["prior_action_failed"];
|
|
8
|
-
export type ActionSkippedReason = (typeof ACTION_SKIPPED_REASONS)[number];
|
|
9
|
-
export type ActionExecutionMode = 'onCreate' | 'onUpdate' | 'onDelete' | 'onTransitionWorkflow';
|
|
10
|
-
export type ActionExecutionPhase = 'pre' | 'postSync' | 'post';
|
|
11
|
-
export interface ActionExecutionContext {
|
|
12
|
-
executionId: string;
|
|
13
|
-
phaseExecutionId: string;
|
|
14
|
-
mode: ActionExecutionMode;
|
|
15
|
-
phase: ActionExecutionPhase;
|
|
16
|
-
requestId?: string;
|
|
17
|
-
recordOid?: string;
|
|
18
|
-
}
|
|
19
|
-
export interface SafeActionFailure {
|
|
20
|
-
kind: ActionFailureKind;
|
|
21
|
-
code: string;
|
|
22
|
-
cancellationCooperative?: boolean;
|
|
23
|
-
}
|
|
24
|
-
export interface ActionExecutionResult {
|
|
25
|
-
actionId: string;
|
|
26
|
-
mode: ActionExecutionMode;
|
|
27
|
-
phase: ActionExecutionPhase;
|
|
28
|
-
index: number;
|
|
29
|
-
status: ActionExecutionStatus;
|
|
30
|
-
attempts: number;
|
|
31
|
-
startedAt: string;
|
|
32
|
-
completedAt: string;
|
|
33
|
-
durationMs: number;
|
|
34
|
-
failure?: SafeActionFailure;
|
|
35
|
-
skippedReason?: ActionSkippedReason;
|
|
36
|
-
}
|
|
37
|
-
export interface ActionExecutionReport {
|
|
38
|
-
context: ActionExecutionContext;
|
|
39
|
-
status: 'completed' | 'failed' | 'partial' | 'dispatched';
|
|
40
|
-
startedAt: string;
|
|
41
|
-
completedAt: string;
|
|
42
|
-
durationMs: number;
|
|
43
|
-
actions: ActionExecutionResult[];
|
|
44
|
-
}
|
|
45
|
-
export interface ActionExecutionPolicy {
|
|
46
|
-
timeoutMs?: number;
|
|
47
|
-
/**
|
|
48
|
-
* Retries only this hook action. `idempotent: true` does not make the
|
|
49
|
-
* enclosing record request replayable and never authorizes a CAS retry.
|
|
50
|
-
*/
|
|
51
|
-
retry?: {
|
|
52
|
-
maxAttempts: number;
|
|
53
|
-
retryOn?: ActionFailureKind[];
|
|
54
|
-
schedule?: RetryScheduleConfig;
|
|
55
|
-
idempotent: true;
|
|
56
|
-
};
|
|
57
|
-
}
|
|
58
|
-
export type RetryScheduleConfig = {
|
|
59
|
-
type: 'fixed';
|
|
60
|
-
delayMs: number;
|
|
61
|
-
jitter?: boolean;
|
|
62
|
-
} | {
|
|
63
|
-
type: 'exponential';
|
|
64
|
-
delayMs: number;
|
|
65
|
-
maxDelayMs: number;
|
|
66
|
-
jitter?: boolean;
|
|
67
|
-
};
|
|
68
|
-
export interface ActionExecutionDependencies {
|
|
69
|
-
now?: () => Date;
|
|
70
|
-
random?: () => number;
|
|
71
|
-
/** Injectable backoff sleep. Defaults to Effect's live Clock service. */
|
|
72
|
-
sleep?: (durationMs: number) => Effect.Effect<void>;
|
|
73
|
-
uuid?: () => string;
|
|
74
|
-
logger?: ActionExecutionLogger;
|
|
75
|
-
supervisor?: ActionExecutionSupervisor;
|
|
76
|
-
/** Receives the terminal result of each detached action. */
|
|
77
|
-
onDetachedActionComplete?: (context: ActionExecutionContext, result: ActionExecutionResult) => void;
|
|
78
|
-
}
|
|
79
|
-
export interface ActionExecutionLogger {
|
|
80
|
-
debug?: (message: string, fields?: Record<string, unknown>) => void;
|
|
81
|
-
info?: (message: string, fields?: Record<string, unknown>) => void;
|
|
82
|
-
warn?: (message: string, fields?: Record<string, unknown>) => void;
|
|
83
|
-
error?: (message: string, fields?: Record<string, unknown>) => void;
|
|
84
|
-
}
|
|
85
|
-
export interface ActionExecutionSupervisor {
|
|
86
|
-
register?: (fiber: RuntimeFiber<unknown, unknown>) => void;
|
|
87
|
-
interruptAll?: () => void;
|
|
88
|
-
}
|
|
89
|
-
export interface ActionExecutionAction<A = unknown> {
|
|
90
|
-
actionId: string;
|
|
91
|
-
mode: ActionExecutionMode;
|
|
92
|
-
phase: ActionExecutionPhase;
|
|
93
|
-
index: number;
|
|
94
|
-
policy?: ActionExecutionPolicy;
|
|
95
|
-
/** Legacy Promise work is not cancellable even when the wait is timed out. */
|
|
96
|
-
cooperativeCancellation?: () => boolean;
|
|
97
|
-
invoke: () => Effect.Effect<A, unknown, never>;
|
|
98
|
-
}
|
|
99
|
-
export interface ActionExecutionOutcome {
|
|
100
|
-
report: ActionExecutionReport;
|
|
101
|
-
/** Kept in memory only for the compatibility adapter. */
|
|
102
|
-
terminalCause?: unknown;
|
|
103
|
-
}
|
|
104
|
-
export interface ActionExecutionOperation {
|
|
105
|
-
executionId: string;
|
|
106
|
-
mode: ActionExecutionMode;
|
|
107
|
-
requestId?: string;
|
|
108
|
-
recordOid?: string;
|
|
109
|
-
reports: ActionExecutionReport[];
|
|
110
|
-
startedAt: string;
|
|
111
|
-
completedThrough?: 'pre' | 'persistence' | 'postSync' | 'post-dispatch';
|
|
112
|
-
/** In-memory lifecycle state for detached actions; never persisted directly. */
|
|
113
|
-
detachedPending?: number;
|
|
114
|
-
detachedResults?: ActionExecutionResult[];
|
|
115
|
-
onDetachedComplete?: () => void;
|
|
116
|
-
detachedCompletedAt?: string;
|
|
117
|
-
/** In-memory guard/state for the exactly-once audit handoff. */
|
|
118
|
-
detachedAuditFinalized?: boolean;
|
|
119
|
-
operationCompletedLogged?: boolean;
|
|
120
|
-
}
|
|
121
|
-
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/action-execution/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ACTION_SKIPPED_REASONS = exports.ACTION_EXECUTION_STATUSES = exports.ACTION_FAILURE_KINDS = void 0;
|
|
4
|
-
exports.ACTION_FAILURE_KINDS = [
|
|
5
|
-
'configuration',
|
|
6
|
-
'validation',
|
|
7
|
-
'domain',
|
|
8
|
-
'transient',
|
|
9
|
-
'timeout',
|
|
10
|
-
'interrupted',
|
|
11
|
-
'unexpected',
|
|
12
|
-
];
|
|
13
|
-
exports.ACTION_EXECUTION_STATUSES = [
|
|
14
|
-
'succeeded',
|
|
15
|
-
'failed',
|
|
16
|
-
'timed_out',
|
|
17
|
-
'interrupted',
|
|
18
|
-
'skipped',
|
|
19
|
-
'dispatched',
|
|
20
|
-
];
|
|
21
|
-
exports.ACTION_SKIPPED_REASONS = ['prior_action_failed'];
|
|
22
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYWN0aW9uLWV4ZWN1dGlvbi90eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFHYSxRQUFBLG9CQUFvQixHQUFHO0lBQ2xDLGVBQWU7SUFDZixZQUFZO0lBQ1osUUFBUTtJQUNSLFdBQVc7SUFDWCxTQUFTO0lBQ1QsYUFBYTtJQUNiLFlBQVk7Q0FDSixDQUFDO0FBSUUsUUFBQSx5QkFBeUIsR0FBRztJQUN2QyxXQUFXO0lBQ1gsUUFBUTtJQUNSLFdBQVc7SUFDWCxhQUFhO0lBQ2IsU0FBUztJQUNULFlBQVk7Q0FDSixDQUFDO0FBSUUsUUFBQSxzQkFBc0IsR0FBRyxDQUFDLHFCQUFxQixDQUFVLENBQUMifQ==
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
export declare const resolveCreateRecordSchemaRoute: import("../types").ApiRouteDefinition;
|
|
2
|
-
export declare const resolveUpdateRecordSchemaRoute: import("../types").ApiRouteDefinition;
|
|
3
|
-
export declare const getImmutableRecordSchemaRoute: import("../types").ApiRouteDefinition;
|
|
4
|
-
export declare const recordSchemaApiRoutes: import("../types").ApiRouteDefinition[];
|
|
5
|
-
//# sourceMappingURL=record-schemas.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"record-schemas.d.ts","sourceRoot":"","sources":["../../../src/api-routes/groups/record-schemas.ts"],"names":[],"mappings":"AA+KA,eAAO,MAAM,8BAA8B,uCAsB1C,CAAC;AAEF,eAAO,MAAM,8BAA8B,uCAsB1C,CAAC;AAEF,eAAO,MAAM,6BAA6B,uCAqBzC,CAAC;AAEF,eAAO,MAAM,qBAAqB,yCAIjC,CAAC"}
|
|
@@ -1,181 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.recordSchemaApiRoutes = exports.getImmutableRecordSchemaRoute = exports.resolveUpdateRecordSchemaRoute = exports.resolveCreateRecordSchemaRoute = void 0;
|
|
4
|
-
const zod_openapi_1 = require("../zod-openapi");
|
|
5
|
-
const route_factory_1 = require("../route-factory");
|
|
6
|
-
const record_schema_response_1 = require("../record-schema-response");
|
|
7
|
-
const common_1 = require("../schemas/common");
|
|
8
|
-
const RECORD_SCHEMA_DIGEST_PATTERN = /^[0-9a-f]{64}$/;
|
|
9
|
-
const RECORD_SCHEMA_ETAG_PATTERN = /^"sha256:[0-9a-f]{64}"$/;
|
|
10
|
-
const RECORD_SCHEMA_REQUEST_ETAG_PATTERN = /^[\t ]*"sha256:[0-9a-f]{64}"[\t ]*$/;
|
|
11
|
-
const RECORD_SCHEMA_CANONICAL_LINK_PATTERN = /^<\/(?:[^\s<>/]+\/)?[^\s<>/]+\/[^\s<>/]+\/api\/records\/schemas\/[0-9a-f]{64}>; rel="canonical"; type="application\/schema\+json"$/;
|
|
12
|
-
const RECORD_SCHEMA_CONDITIONAL_HEADER_MAX_LENGTH = 128;
|
|
13
|
-
const recordSchemaDigestField = zod_openapi_1.z
|
|
14
|
-
.string({ error: 'record-schema-digest-invalid' })
|
|
15
|
-
.regex(RECORD_SCHEMA_DIGEST_PATTERN, { error: 'record-schema-digest-invalid' })
|
|
16
|
-
.openapi({
|
|
17
|
-
description: 'Lowercase SHA-256 digest identifying an immutable record schema',
|
|
18
|
-
pattern: RECORD_SCHEMA_DIGEST_PATTERN.source,
|
|
19
|
-
example: 'a'.repeat(64),
|
|
20
|
-
});
|
|
21
|
-
const recordSchemaIfNoneMatchField = zod_openapi_1.z
|
|
22
|
-
.string({ error: 'record-schema-if-none-match-invalid' })
|
|
23
|
-
.max(RECORD_SCHEMA_CONDITIONAL_HEADER_MAX_LENGTH, { error: 'record-schema-if-none-match-invalid' })
|
|
24
|
-
.regex(RECORD_SCHEMA_REQUEST_ETAG_PATTERN, { error: 'record-schema-if-none-match-invalid' })
|
|
25
|
-
.openapi({
|
|
26
|
-
description: 'Strong record-schema ETag used for authorized cache revalidation',
|
|
27
|
-
pattern: RECORD_SCHEMA_ETAG_PATTERN.source,
|
|
28
|
-
example: `"sha256:${'a'.repeat(64)}"`,
|
|
29
|
-
});
|
|
30
|
-
const recordSchemaEtagResponseField = zod_openapi_1.z
|
|
31
|
-
.string()
|
|
32
|
-
.regex(RECORD_SCHEMA_ETAG_PATTERN)
|
|
33
|
-
.openapi({
|
|
34
|
-
description: 'Strong ETag for the returned record-schema representation',
|
|
35
|
-
pattern: RECORD_SCHEMA_ETAG_PATTERN.source,
|
|
36
|
-
example: `"sha256:${'a'.repeat(64)}"`,
|
|
37
|
-
});
|
|
38
|
-
const recordSchemaCacheControlResponseField = zod_openapi_1.z.literal(record_schema_response_1.RECORD_SCHEMA_RESPONSE_CACHE_CONTROL).openapi({
|
|
39
|
-
description: 'Private revalidation cache policy',
|
|
40
|
-
example: record_schema_response_1.RECORD_SCHEMA_RESPONSE_CACHE_CONTROL,
|
|
41
|
-
});
|
|
42
|
-
const recordSchemaVaryResponseField = zod_openapi_1.z.literal(record_schema_response_1.RECORD_SCHEMA_RESPONSE_VARY).openapi({
|
|
43
|
-
description: 'Authentication input that affects the caller-effective representation',
|
|
44
|
-
example: record_schema_response_1.RECORD_SCHEMA_RESPONSE_VARY,
|
|
45
|
-
});
|
|
46
|
-
const recordSchemaCanonicalLinkResponseField = zod_openapi_1.z
|
|
47
|
-
.string()
|
|
48
|
-
.regex(RECORD_SCHEMA_CANONICAL_LINK_PATTERN)
|
|
49
|
-
.openapi({
|
|
50
|
-
description: 'Canonical immutable record-schema link',
|
|
51
|
-
pattern: RECORD_SCHEMA_CANONICAL_LINK_PATTERN.source,
|
|
52
|
-
example: `</default/rdmp/api/records/schemas/${'a'.repeat(64)}>; rel="canonical"; type="${record_schema_response_1.RECORD_SCHEMA_RESPONSE_MEDIA_TYPE}"`,
|
|
53
|
-
});
|
|
54
|
-
const recordSchemaRequestHeaders = (0, common_1.objectField)({
|
|
55
|
-
[record_schema_response_1.RECORD_SCHEMA_REVALIDATION_REQUEST_HEADER]: recordSchemaIfNoneMatchField,
|
|
56
|
-
});
|
|
57
|
-
const recordSchemaScopeFields = {
|
|
58
|
-
branding: (0, common_1.stringField)('Branding identifier'),
|
|
59
|
-
portal: (0, common_1.stringField)('Portal identifier'),
|
|
60
|
-
};
|
|
61
|
-
const createRecordSchemaParams = (0, common_1.objectField)({
|
|
62
|
-
...recordSchemaScopeFields,
|
|
63
|
-
recordType: (0, common_1.stringField)('Record type name'),
|
|
64
|
-
}, ['branding', 'portal', 'recordType']);
|
|
65
|
-
const updateRecordSchemaParams = (0, common_1.objectField)({
|
|
66
|
-
...recordSchemaScopeFields,
|
|
67
|
-
oid: (0, common_1.stringField)('Record OID'),
|
|
68
|
-
}, ['branding', 'portal', 'oid']);
|
|
69
|
-
const immutableRecordSchemaParams = (0, common_1.objectField)({
|
|
70
|
-
...recordSchemaScopeFields,
|
|
71
|
-
digest: recordSchemaDigestField,
|
|
72
|
-
}, ['branding', 'portal', 'digest']);
|
|
73
|
-
const recordSchemaDocument = (0, common_1.objectField)({}, [], 'Caller-effective JSON Schema draft 2020-12 document', true);
|
|
74
|
-
const recordSchemaResponseHeaders = {
|
|
75
|
-
[record_schema_response_1.RECORD_SCHEMA_ETAG_RESPONSE_HEADER]: recordSchemaEtagResponseField,
|
|
76
|
-
'Cache-Control': recordSchemaCacheControlResponseField,
|
|
77
|
-
Vary: recordSchemaVaryResponseField,
|
|
78
|
-
};
|
|
79
|
-
const recordSchemaCanonicalResponseHeaders = {
|
|
80
|
-
...recordSchemaResponseHeaders,
|
|
81
|
-
Link: recordSchemaCanonicalLinkResponseField,
|
|
82
|
-
};
|
|
83
|
-
function schemaResponse(description, headers) {
|
|
84
|
-
return {
|
|
85
|
-
description,
|
|
86
|
-
content: {
|
|
87
|
-
[record_schema_response_1.RECORD_SCHEMA_RESPONSE_MEDIA_TYPE]: {
|
|
88
|
-
schema: recordSchemaDocument,
|
|
89
|
-
},
|
|
90
|
-
},
|
|
91
|
-
headers,
|
|
92
|
-
};
|
|
93
|
-
}
|
|
94
|
-
function notModifiedResponse(headers) {
|
|
95
|
-
return {
|
|
96
|
-
description: 'Authorized schema representation has not changed',
|
|
97
|
-
headers,
|
|
98
|
-
};
|
|
99
|
-
}
|
|
100
|
-
function problemResponse(status, description) {
|
|
101
|
-
const recordSchemaProblem = (0, common_1.objectField)({
|
|
102
|
-
type: (0, common_1.stringField)('URI identifying the Problem Details type'),
|
|
103
|
-
title: (0, common_1.stringField)('Short, stable problem title'),
|
|
104
|
-
status: zod_openapi_1.z.literal(status).openapi({ description: 'HTTP status code', example: status }),
|
|
105
|
-
detail: (0, common_1.stringField)('Safe explanation of the failure'),
|
|
106
|
-
instance: (0, common_1.stringField)('Request URI for this problem occurrence'),
|
|
107
|
-
code: (0, common_1.stringField)('Stable ReDBox record-schema problem code'),
|
|
108
|
-
}, ['type', 'title', 'status', 'detail', 'instance', 'code'], 'RFC 9457 Problem Details for a record-schema request');
|
|
109
|
-
return {
|
|
110
|
-
description,
|
|
111
|
-
content: {
|
|
112
|
-
[record_schema_response_1.RECORD_SCHEMA_PROBLEM_MEDIA_TYPE]: {
|
|
113
|
-
schema: recordSchemaProblem,
|
|
114
|
-
},
|
|
115
|
-
},
|
|
116
|
-
};
|
|
117
|
-
}
|
|
118
|
-
const recordSchemaProblemResponses = {
|
|
119
|
-
400: problemResponse(400, 'Malformed record-schema request'),
|
|
120
|
-
401: problemResponse(401, 'Authentication is required'),
|
|
121
|
-
403: problemResponse(403, 'Record-schema request is not authorized'),
|
|
122
|
-
404: problemResponse(404, 'Record schema or authorized resolution context was not found'),
|
|
123
|
-
409: problemResponse(409, 'Record schema could not be resolved from the authoritative context'),
|
|
124
|
-
413: problemResponse(413, 'Record schema exceeds configured complexity or output limits'),
|
|
125
|
-
422: problemResponse(422, 'Record form or contributor contract is invalid'),
|
|
126
|
-
503: problemResponse(503, 'Record-schema compiler or storage capability is unavailable'),
|
|
127
|
-
};
|
|
128
|
-
const recordSchemaSecurity = [{ bearerAuth: [] }];
|
|
129
|
-
exports.resolveCreateRecordSchemaRoute = (0, route_factory_1.apiRoute)('get', record_schema_response_1.RECORD_SCHEMA_CREATE_ROUTE_PATH, 'webservice/RecordSchemaController', 'create', {
|
|
130
|
-
params: createRecordSchemaParams,
|
|
131
|
-
query: common_1.recordOperationQuery,
|
|
132
|
-
headers: recordSchemaRequestHeaders,
|
|
133
|
-
}, {
|
|
134
|
-
tags: ['Record Schemas'],
|
|
135
|
-
summary: 'Resolve a create record schema',
|
|
136
|
-
operationId: 'resolveCreateRecordSchema',
|
|
137
|
-
includeDefaultResponses: false,
|
|
138
|
-
security: recordSchemaSecurity,
|
|
139
|
-
responses: {
|
|
140
|
-
200: schemaResponse('Caller-effective create metadata schema', recordSchemaCanonicalResponseHeaders),
|
|
141
|
-
304: notModifiedResponse(recordSchemaCanonicalResponseHeaders),
|
|
142
|
-
...recordSchemaProblemResponses,
|
|
143
|
-
},
|
|
144
|
-
});
|
|
145
|
-
exports.resolveUpdateRecordSchemaRoute = (0, route_factory_1.apiRoute)('get', record_schema_response_1.RECORD_SCHEMA_UPDATE_ROUTE_PATH, 'webservice/RecordSchemaController', 'update', {
|
|
146
|
-
params: updateRecordSchemaParams,
|
|
147
|
-
query: common_1.recordOperationQuery,
|
|
148
|
-
headers: recordSchemaRequestHeaders,
|
|
149
|
-
}, {
|
|
150
|
-
tags: ['Record Schemas'],
|
|
151
|
-
summary: 'Resolve an update record schema',
|
|
152
|
-
operationId: 'resolveUpdateRecordSchema',
|
|
153
|
-
includeDefaultResponses: false,
|
|
154
|
-
security: recordSchemaSecurity,
|
|
155
|
-
responses: {
|
|
156
|
-
200: schemaResponse('Caller-effective partial-update metadata schema', recordSchemaCanonicalResponseHeaders),
|
|
157
|
-
304: notModifiedResponse(recordSchemaCanonicalResponseHeaders),
|
|
158
|
-
...recordSchemaProblemResponses,
|
|
159
|
-
},
|
|
160
|
-
});
|
|
161
|
-
exports.getImmutableRecordSchemaRoute = (0, route_factory_1.apiRoute)('get', record_schema_response_1.RECORD_SCHEMA_IMMUTABLE_ROUTE_PATH, 'webservice/RecordSchemaController', 'immutable', {
|
|
162
|
-
params: immutableRecordSchemaParams,
|
|
163
|
-
headers: recordSchemaRequestHeaders,
|
|
164
|
-
}, {
|
|
165
|
-
tags: ['Record Schemas'],
|
|
166
|
-
summary: 'Get an immutable record schema',
|
|
167
|
-
operationId: 'getImmutableRecordSchema',
|
|
168
|
-
includeDefaultResponses: false,
|
|
169
|
-
security: recordSchemaSecurity,
|
|
170
|
-
responses: {
|
|
171
|
-
200: schemaResponse('Authorized immutable record schema', recordSchemaResponseHeaders),
|
|
172
|
-
304: notModifiedResponse(recordSchemaResponseHeaders),
|
|
173
|
-
...recordSchemaProblemResponses,
|
|
174
|
-
},
|
|
175
|
-
});
|
|
176
|
-
exports.recordSchemaApiRoutes = [
|
|
177
|
-
exports.resolveCreateRecordSchemaRoute,
|
|
178
|
-
exports.resolveUpdateRecordSchemaRoute,
|
|
179
|
-
exports.getImmutableRecordSchemaRoute,
|
|
180
|
-
];
|
|
181
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVjb3JkLXNjaGVtYXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXBpLXJvdXRlcy9ncm91cHMvcmVjb3JkLXNjaGVtYXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsZ0RBQW1DO0FBRW5DLG9EQUE0QztBQUM1QyxzRUFVbUM7QUFDbkMsOENBQW1GO0FBR25GLE1BQU0sNEJBQTRCLEdBQUcsZ0JBQWdCLENBQUM7QUFDdEQsTUFBTSwwQkFBMEIsR0FBRyx5QkFBeUIsQ0FBQztBQUM3RCxNQUFNLGtDQUFrQyxHQUFHLHFDQUFxQyxDQUFDO0FBQ2pGLE1BQU0sb0NBQW9DLEdBQ3hDLG9JQUFvSSxDQUFDO0FBQ3ZJLE1BQU0sMkNBQTJDLEdBQUcsR0FBRyxDQUFDO0FBRXhELE1BQU0sdUJBQXVCLEdBQUcsZUFBQztLQUM5QixNQUFNLENBQUMsRUFBRSxLQUFLLEVBQUUsOEJBQThCLEVBQUUsQ0FBQztLQUNqRCxLQUFLLENBQUMsNEJBQTRCLEVBQUUsRUFBRSxLQUFLLEVBQUUsOEJBQThCLEVBQUUsQ0FBQztLQUM5RSxPQUFPLENBQUM7SUFDUCxXQUFXLEVBQUUsaUVBQWlFO0lBQzlFLE9BQU8sRUFBRSw0QkFBNEIsQ0FBQyxNQUFNO0lBQzVDLE9BQU8sRUFBRSxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztDQUN4QixDQUFDLENBQUM7QUFFTCxNQUFNLDRCQUE0QixHQUFHLGVBQUM7S0FDbkMsTUFBTSxDQUFDLEVBQUUsS0FBSyxFQUFFLHFDQUFxQyxFQUFFLENBQUM7S0FDeEQsR0FBRyxDQUFDLDJDQUEyQyxFQUFFLEVBQUUsS0FBSyxFQUFFLHFDQUFxQyxFQUFFLENBQUM7S0FDbEcsS0FBSyxDQUFDLGtDQUFrQyxFQUFFLEVBQUUsS0FBSyxFQUFFLHFDQUFxQyxFQUFFLENBQUM7S0FDM0YsT0FBTyxDQUFDO0lBQ1AsV0FBVyxFQUFFLGtFQUFrRTtJQUMvRSxPQUFPLEVBQUUsMEJBQTBCLENBQUMs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
|