@researchdatabox/redbox-core 0.0.1-beta.9909 → 5.0.0-RC1
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 +12 -0
- package/dist/CoreController.d.ts.map +1 -1
- package/dist/CoreController.js +91 -52
- package/dist/CoreService.d.ts +8 -1
- package/dist/CoreService.d.ts.map +1 -1
- package/dist/CoreService.js +8 -1
- package/dist/RecordsService.d.ts +2 -0
- package/dist/RecordsService.d.ts.map +1 -1
- package/dist/SearchService.d.ts +1 -1
- package/dist/SearchService.d.ts.map +1 -1
- package/dist/StorageService.d.ts +3 -1
- package/dist/StorageService.d.ts.map +1 -1
- package/dist/api-routes/groups/branding.d.ts +1 -0
- package/dist/api-routes/groups/branding.d.ts.map +1 -1
- package/dist/api-routes/groups/branding.js +19 -2
- package/dist/api-routes/groups/export.js +2 -2
- package/dist/api-routes/groups/figshare-crosswalks.d.ts +11 -0
- package/dist/api-routes/groups/figshare-crosswalks.d.ts.map +1 -0
- package/dist/api-routes/groups/figshare-crosswalks.js +171 -0
- package/dist/api-routes/groups/figshare-vocabulary.d.ts +12 -0
- package/dist/api-routes/groups/figshare-vocabulary.d.ts.map +1 -0
- package/dist/api-routes/groups/figshare-vocabulary.js +248 -0
- package/dist/api-routes/groups/search.js +4 -4
- package/dist/api-routes/groups/users.js +3 -3
- package/dist/api-routes/helpers.d.ts +4 -4
- package/dist/api-routes/helpers.d.ts.map +1 -1
- package/dist/api-routes/helpers.js +3 -4
- package/dist/api-routes/index.d.ts +2 -0
- package/dist/api-routes/index.d.ts.map +1 -1
- package/dist/api-routes/index.js +3 -1
- package/dist/api-routes/openapi.js +1 -1
- package/dist/api-routes/request-extraction.d.ts +2 -2
- package/dist/api-routes/request-extraction.d.ts.map +1 -1
- package/dist/api-routes/request-extraction.js +1 -1
- package/dist/api-routes/route-registry.d.ts.map +1 -1
- package/dist/api-routes/route-registry.js +5 -1
- package/dist/api-routes/schemas/common.d.ts +19 -19
- package/dist/api-routes/schemas/common.d.ts.map +1 -1
- package/dist/api-routes/schemas/common.js +3 -2
- package/dist/api-routes/schemas/responses.d.ts +352 -7032
- package/dist/api-routes/schemas/responses.d.ts.map +1 -1
- package/dist/api-routes/schemas/responses.js +2 -2
- package/dist/api-routes/types.d.ts +2 -2
- package/dist/api-routes/types.d.ts.map +1 -1
- package/dist/api-routes/validation.js +1 -1
- package/dist/bootstrap.d.ts.map +1 -1
- package/dist/bootstrap.js +5 -1
- package/dist/config/agendaQueue.config.d.ts +11 -5
- package/dist/config/agendaQueue.config.d.ts.map +1 -1
- package/dist/config/agendaQueue.config.js +27 -19
- package/dist/config/auth.config.d.ts.map +1 -1
- package/dist/config/auth.config.js +4 -1
- package/dist/config/brandingConfigurationDefaults.config.d.ts +1 -1
- package/dist/config/brandingConfigurationDefaults.config.d.ts.map +1 -1
- package/dist/config/brandingConfigurationDefaults.config.js +22 -227
- package/dist/config/dashboardtype.config.d.ts +7 -0
- package/dist/config/dashboardtype.config.d.ts.map +1 -1
- package/dist/config/dashboardtype.config.js +9 -89
- package/dist/config/dashboardview.config.d.ts +7 -0
- package/dist/config/dashboardview.config.d.ts.map +1 -1
- package/dist/config/dashboardview.config.js +9 -134
- package/dist/config/emailnotification.config.d.ts.map +1 -1
- package/dist/config/emailnotification.config.js +2 -1
- package/dist/config/http.config.d.ts +2 -0
- package/dist/config/http.config.d.ts.map +1 -1
- package/dist/config/http.config.js +47 -1
- package/dist/config/jsonld.config.d.ts.map +1 -1
- package/dist/config/jsonld.config.js +2 -21
- package/dist/config/record.config.d.ts.map +1 -1
- package/dist/config/record.config.js +2 -9
- package/dist/config/recordtype.config.d.ts +8 -0
- package/dist/config/recordtype.config.d.ts.map +1 -1
- package/dist/config/recordtype.config.js +10 -660
- 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 +307 -202
- package/dist/config/reusableViewFormDefinitions.config.d.ts.map +1 -1
- package/dist/config/reusableViewFormDefinitions.config.js +15 -4
- package/dist/config/routes.config.d.ts.map +1 -1
- package/dist/config/routes.config.js +13 -3
- package/dist/config/solr.config.d.ts +1 -0
- package/dist/config/solr.config.d.ts.map +1 -1
- package/dist/config/solr.config.js +3 -2
- package/dist/config/static_assets.config.d.ts +2 -0
- package/dist/config/static_assets.config.d.ts.map +1 -1
- package/dist/config/static_assets.config.js +4 -2
- package/dist/config/storage.config.d.ts.map +1 -1
- package/dist/config/storage.config.js +7 -1
- package/dist/config/views.config.d.ts.map +1 -1
- package/dist/config/views.config.js +2 -6
- package/dist/config/vocab.config.d.ts +4 -0
- package/dist/config/vocab.config.d.ts.map +1 -1
- package/dist/config/vocab.config.js +1 -1
- package/dist/config/workflow.config.d.ts +7 -0
- package/dist/config/workflow.config.d.ts.map +1 -1
- package/dist/config/workflow.config.js +9 -194
- package/dist/config/workspacetype.config.d.ts +7 -0
- package/dist/config/workspacetype.config.d.ts.map +1 -1
- package/dist/config/workspacetype.config.js +9 -10
- package/dist/configmodels/ConfigModels.d.ts +1 -1
- package/dist/configmodels/ConfigModels.d.ts.map +1 -1
- package/dist/configmodels/ConfigModels.js +9 -1
- package/dist/configmodels/DoiPublishing.d.ts +1 -1
- package/dist/configmodels/DoiPublishing.d.ts.map +1 -1
- package/dist/configmodels/FigsharePublishing.d.ts +746 -217
- package/dist/configmodels/FigsharePublishing.d.ts.map +1 -1
- package/dist/configmodels/FigsharePublishing.js +181 -190
- 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/constants/export.d.ts +2 -0
- package/dist/constants/export.d.ts.map +1 -0
- package/dist/constants/export.js +8 -0
- package/dist/controllers/AdminController.d.ts.map +1 -1
- package/dist/controllers/AdminController.js +1 -1
- package/dist/controllers/AsynchController.d.ts +4 -1
- package/dist/controllers/AsynchController.d.ts.map +1 -1
- package/dist/controllers/AsynchController.js +118 -9
- package/dist/controllers/BrandingAppController.d.ts +2 -0
- package/dist/controllers/BrandingAppController.d.ts.map +1 -1
- package/dist/controllers/BrandingAppController.js +40 -2
- package/dist/controllers/BrandingController.d.ts +8 -0
- package/dist/controllers/BrandingController.d.ts.map +1 -1
- package/dist/controllers/BrandingController.js +45 -1
- package/dist/controllers/ExportController.d.ts.map +1 -1
- package/dist/controllers/ExportController.js +6 -10
- package/dist/controllers/RecordAuditController.d.ts +2 -0
- package/dist/controllers/RecordAuditController.d.ts.map +1 -1
- package/dist/controllers/RecordAuditController.js +55 -1
- package/dist/controllers/RecordController.d.ts +5 -1
- package/dist/controllers/RecordController.d.ts.map +1 -1
- package/dist/controllers/RecordController.js +51 -21
- package/dist/controllers/UserController.d.ts.map +1 -1
- package/dist/controllers/UserController.js +3 -2
- package/dist/controllers/VocabularyController.js +4 -4
- package/dist/controllers/index.d.ts.map +1 -1
- package/dist/controllers/index.js +7 -1
- package/dist/controllers/webservice/BrandingController.d.ts +1 -0
- package/dist/controllers/webservice/BrandingController.d.ts.map +1 -1
- package/dist/controllers/webservice/BrandingController.js +69 -10
- package/dist/controllers/webservice/ExportController.d.ts.map +1 -1
- package/dist/controllers/webservice/ExportController.js +6 -10
- package/dist/controllers/webservice/FigshareCrosswalkController.d.ts +20 -0
- package/dist/controllers/webservice/FigshareCrosswalkController.d.ts.map +1 -0
- package/dist/controllers/webservice/FigshareCrosswalkController.js +184 -0
- package/dist/controllers/webservice/FigshareVocabularyController.d.ts +21 -0
- package/dist/controllers/webservice/FigshareVocabularyController.d.ts.map +1 -0
- package/dist/controllers/webservice/FigshareVocabularyController.js +223 -0
- package/dist/controllers/webservice/IntegrationAuditController.d.ts.map +1 -1
- package/dist/controllers/webservice/IntegrationAuditController.js +1 -1
- package/dist/controllers/webservice/RecordController.d.ts +6 -1
- package/dist/controllers/webservice/RecordController.d.ts.map +1 -1
- package/dist/controllers/webservice/RecordController.js +64 -13
- package/dist/controllers/webservice/UserManagementController.d.ts +5 -3
- package/dist/controllers/webservice/UserManagementController.d.ts.map +1 -1
- package/dist/controllers/webservice/UserManagementController.js +140 -9
- package/dist/controllers/webservice/figshare-vocabulary-errors.d.ts +14 -0
- package/dist/controllers/webservice/figshare-vocabulary-errors.d.ts.map +1 -0
- package/dist/controllers/webservice/figshare-vocabulary-errors.js +39 -0
- package/dist/form-config/index.d.ts +7 -0
- package/dist/form-config/index.d.ts.map +1 -1
- package/dist/form-config/index.js +8 -5
- package/dist/hooks/defineRedboxHook.d.ts +11 -2
- package/dist/hooks/defineRedboxHook.d.ts.map +1 -1
- package/dist/hooks/defineRedboxHook.js +36 -7
- package/dist/hooks/hookDiscovery.d.ts +20 -0
- package/dist/hooks/hookDiscovery.d.ts.map +1 -0
- package/dist/hooks/hookDiscovery.js +186 -0
- package/dist/hooks/hookResources.d.ts +23 -0
- package/dist/hooks/hookResources.d.ts.map +1 -0
- package/dist/hooks/hookResources.js +136 -0
- package/dist/hooks/index.d.ts +4 -0
- package/dist/hooks/index.d.ts.map +1 -1
- package/dist/hooks/index.js +14 -2
- package/dist/index.d.ts +6 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +15 -2
- package/dist/loader/index.d.ts +2 -0
- package/dist/loader/index.d.ts.map +1 -1
- package/dist/loader/index.js +82 -64
- package/dist/model/storage/BrandingModel.d.ts +2 -0
- package/dist/model/storage/BrandingModel.d.ts.map +1 -1
- package/dist/model/storage/BrandingModel.js +3 -1
- package/dist/model/storage/IntegrationAuditModel.d.ts +2 -0
- package/dist/model/storage/IntegrationAuditModel.d.ts.map +1 -1
- package/dist/model/storage/IntegrationAuditModel.js +3 -1
- package/dist/policies/i18nLanguages.d.ts.map +1 -1
- package/dist/policies/i18nLanguages.js +1 -1
- 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/responses/badRequest.d.ts.map +1 -1
- package/dist/responses/badRequest.js +3 -2
- package/dist/responses/created.d.ts.map +1 -1
- package/dist/responses/created.js +3 -2
- package/dist/responses/forbidden.d.ts.map +1 -1
- package/dist/responses/forbidden.js +3 -2
- package/dist/responses/ok.d.ts.map +1 -1
- package/dist/responses/ok.js +3 -2
- package/dist/responses/serverError.d.ts.map +1 -1
- package/dist/responses/serverError.js +3 -2
- package/dist/responses/siteTitle.d.ts.map +1 -1
- package/dist/responses/siteTitle.js +1 -1
- package/dist/services/AgendaQueueService.d.ts +1 -0
- package/dist/services/AgendaQueueService.d.ts.map +1 -1
- package/dist/services/AgendaQueueService.js +24 -9
- package/dist/services/BrandingLogoService.d.ts +25 -1
- package/dist/services/BrandingLogoService.d.ts.map +1 -1
- package/dist/services/BrandingLogoService.js +56 -5
- package/dist/services/BrandingThemeTokens.d.ts.map +1 -1
- package/dist/services/BrandingThemeTokens.js +2 -1
- package/dist/services/DoiService.js +5 -5
- package/dist/services/EmailService.d.ts +12 -4
- package/dist/services/EmailService.d.ts.map +1 -1
- package/dist/services/EmailService.js +28 -19
- package/dist/services/FigshareService.d.ts +12 -7
- package/dist/services/FigshareService.d.ts.map +1 -1
- package/dist/services/FigshareService.js +258 -104
- package/dist/services/FigshareVocabularyService.d.ts +442 -0
- package/dist/services/FigshareVocabularyService.d.ts.map +1 -0
- package/dist/services/FigshareVocabularyService.js +1802 -0
- package/dist/services/FormVocabularyService.d.ts.map +1 -1
- package/dist/services/FormVocabularyService.js +28 -7
- package/dist/services/HarvestRunService.d.ts.map +1 -1
- package/dist/services/HarvestRunService.js +1 -1
- package/dist/services/I18nEntriesService.d.ts.map +1 -1
- package/dist/services/I18nEntriesService.js +26 -4
- package/dist/services/IntegrationAuditService.d.ts +58 -0
- package/dist/services/IntegrationAuditService.d.ts.map +1 -1
- package/dist/services/IntegrationAuditService.js +292 -15
- 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.map +1 -1
- package/dist/services/NamedQueryService.js +3 -16
- package/dist/services/OniService.d.ts.map +1 -1
- package/dist/services/OniService.js +3 -5
- package/dist/services/RDMPService.d.ts +2 -0
- package/dist/services/RDMPService.d.ts.map +1 -1
- package/dist/services/RDMPService.js +49 -33
- package/dist/services/RecordsService.d.ts +9 -2
- package/dist/services/RecordsService.d.ts.map +1 -1
- package/dist/services/RecordsService.js +66 -46
- package/dist/services/ReportsService.d.ts +0 -5
- package/dist/services/ReportsService.d.ts.map +1 -1
- package/dist/services/ReportsService.js +22 -31
- package/dist/services/SolrSearchService.d.ts +10 -2
- package/dist/services/SolrSearchService.d.ts.map +1 -1
- package/dist/services/SolrSearchService.js +110 -52
- package/dist/services/StandardDatastreamService.d.ts +7 -0
- package/dist/services/StandardDatastreamService.d.ts.map +1 -1
- package/dist/services/StandardDatastreamService.js +127 -27
- package/dist/services/TemplateService.d.ts +1 -15
- package/dist/services/TemplateService.d.ts.map +1 -1
- package/dist/services/TemplateService.js +7 -47
- package/dist/services/UsersService.d.ts.map +1 -1
- package/dist/services/UsersService.js +19 -16
- package/dist/services/ViewUtilsService.d.ts +5 -1
- package/dist/services/ViewUtilsService.d.ts.map +1 -1
- package/dist/services/ViewUtilsService.js +38 -46
- package/dist/services/VocabularyService.d.ts +11 -2
- package/dist/services/VocabularyService.d.ts.map +1 -1
- package/dist/services/VocabularyService.js +46 -20
- package/dist/services/doi-v2/audit.d.ts.map +1 -1
- package/dist/services/doi-v2/audit.js +1 -1
- package/dist/services/doi-v2/bindings.d.ts.map +1 -1
- package/dist/services/doi-v2/bindings.js +2 -11
- package/dist/services/doi-v2/payload.d.ts.map +1 -1
- package/dist/services/doi-v2/payload.js +32 -18
- package/dist/services/figshare-v2/assets.d.ts +2 -1
- package/dist/services/figshare-v2/assets.d.ts.map +1 -1
- package/dist/services/figshare-v2/assets.js +144 -89
- 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 +28 -3
- package/dist/services/figshare-v2/bindings.d.ts.map +1 -1
- package/dist/services/figshare-v2/bindings.js +76 -17
- package/dist/services/figshare-v2/categories.d.ts +142 -0
- package/dist/services/figshare-v2/categories.d.ts.map +1 -0
- package/dist/services/figshare-v2/categories.js +408 -0
- package/dist/services/figshare-v2/config.d.ts +10 -0
- package/dist/services/figshare-v2/config.d.ts.map +1 -1
- package/dist/services/figshare-v2/config.js +64 -2
- package/dist/services/figshare-v2/context.d.ts +18 -1
- package/dist/services/figshare-v2/context.d.ts.map +1 -1
- package/dist/services/figshare-v2/context.js +35 -2
- package/dist/services/figshare-v2/embargo.d.ts.map +1 -1
- package/dist/services/figshare-v2/embargo.js +6 -4
- package/dist/services/figshare-v2/http.d.ts +20 -1
- package/dist/services/figshare-v2/http.d.ts.map +1 -1
- package/dist/services/figshare-v2/http.js +85 -9
- package/dist/services/figshare-v2/metadata.d.ts.map +1 -1
- package/dist/services/figshare-v2/metadata.js +150 -35
- package/dist/services/figshare-v2/observability.d.ts +1 -2
- package/dist/services/figshare-v2/observability.d.ts.map +1 -1
- package/dist/services/figshare-v2/observability.js +7 -45
- package/dist/services/figshare-v2/runtime.d.ts +5 -2
- package/dist/services/figshare-v2/runtime.d.ts.map +1 -1
- package/dist/services/figshare-v2/runtime.js +59 -37
- package/dist/services/figshare-v2/types.d.ts +18 -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/vocabulary-errors.d.ts +39 -0
- package/dist/services/figshare-v2/vocabulary-errors.d.ts.map +1 -0
- package/dist/services/figshare-v2/vocabulary-errors.js +68 -0
- package/dist/services/index.d.ts +6 -0
- package/dist/services/index.d.ts.map +1 -1
- package/dist/services/index.js +13 -2
- package/dist/storage/TusStorageManagerDataStore.d.ts.map +1 -1
- package/dist/storage/TusStorageManagerDataStore.js +14 -1
- 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/ContextVariableUtils.d.ts +3 -1
- package/dist/utilities/ContextVariableUtils.d.ts.map +1 -1
- package/dist/utilities/ContextVariableUtils.js +25 -7
- package/dist/utilities/PromiseUtils.d.ts +9 -0
- package/dist/utilities/PromiseUtils.d.ts.map +1 -0
- package/dist/utilities/PromiseUtils.js +27 -0
- package/dist/utilities/RedactionUtils.d.ts +3 -0
- package/dist/utilities/RedactionUtils.d.ts.map +1 -0
- package/dist/utilities/RedactionUtils.js +55 -0
- package/dist/visitor/client.visitor.d.ts +7 -0
- package/dist/visitor/client.visitor.d.ts.map +1 -1
- package/dist/visitor/client.visitor.js +135 -30
- package/dist/visitor/construct.visitor.d.ts +6 -0
- package/dist/visitor/construct.visitor.d.ts.map +1 -1
- package/dist/visitor/construct.visitor.js +153 -108
- package/dist/visitor/data-value.visitor.d.ts +3 -0
- package/dist/visitor/data-value.visitor.d.ts.map +1 -1
- package/dist/visitor/data-value.visitor.js +6 -1
- package/dist/visitor/json-type-def.visitor.d.ts +4 -0
- package/dist/visitor/json-type-def.visitor.d.ts.map +1 -1
- package/dist/visitor/json-type-def.visitor.js +25 -4
- package/dist/visitor/migrate-config-v4-v5.visitor.d.ts +9 -3
- package/dist/visitor/migrate-config-v4-v5.visitor.d.ts.map +1 -1
- package/dist/visitor/migrate-config-v4-v5.visitor.js +211 -148
- package/dist/visitor/template.visitor.d.ts +3 -0
- package/dist/visitor/template.visitor.d.ts.map +1 -1
- package/dist/visitor/template.visitor.js +6 -1
- package/dist/visitor/validator.visitor.d.ts +3 -1
- package/dist/visitor/validator.visitor.d.ts.map +1 -1
- package/dist/visitor/validator.visitor.js +8 -2
- package/dist/visitor/visitor-helpers.js +2 -2
- package/dist/waterline-models/BrandingConfig.d.ts +2 -0
- package/dist/waterline-models/BrandingConfig.d.ts.map +1 -1
- package/dist/waterline-models/BrandingConfig.js +6 -1
- package/dist/waterline-models/FigshareVocabularyCategory.d.ts +38 -0
- package/dist/waterline-models/FigshareVocabularyCategory.d.ts.map +1 -0
- package/dist/waterline-models/FigshareVocabularyCategory.js +157 -0
- package/dist/waterline-models/FigshareVocabularyCrosswalk.d.ts +37 -0
- package/dist/waterline-models/FigshareVocabularyCrosswalk.d.ts.map +1 -0
- package/dist/waterline-models/FigshareVocabularyCrosswalk.js +153 -0
- package/dist/waterline-models/FigshareVocabularyCrosswalkMapping.d.ts +37 -0
- package/dist/waterline-models/FigshareVocabularyCrosswalkMapping.d.ts.map +1 -0
- package/dist/waterline-models/FigshareVocabularyCrosswalkMapping.js +138 -0
- package/dist/waterline-models/FigshareVocabularySource.d.ts +45 -0
- package/dist/waterline-models/FigshareVocabularySource.d.ts.map +1 -0
- package/dist/waterline-models/FigshareVocabularySource.js +149 -0
- package/dist/waterline-models/FigshareVocabularySyncRun.d.ts +70 -0
- package/dist/waterline-models/FigshareVocabularySyncRun.d.ts.map +1 -0
- package/dist/waterline-models/FigshareVocabularySyncRun.js +237 -0
- package/dist/waterline-models/Vocabulary.d.ts +3 -1
- package/dist/waterline-models/Vocabulary.d.ts.map +1 -1
- package/dist/waterline-models/Vocabulary.js +9 -3
- package/dist/waterline-models/index.d.ts +10 -0
- package/dist/waterline-models/index.d.ts.map +1 -1
- package/dist/waterline-models/index.js +16 -1
- package/package.json +28 -31
- package/dist/form-config/dataRecord-1.0-draft.d.ts +0 -4
- package/dist/form-config/dataRecord-1.0-draft.d.ts.map +0 -1
- package/dist/form-config/dataRecord-1.0-draft.js +0 -1042
- package/dist/form-config/default-1.0-draft.d.ts +0 -4
- package/dist/form-config/default-1.0-draft.d.ts.map +0 -1
- package/dist/form-config/default-1.0-draft.js +0 -1156
|
@@ -7,12 +7,15 @@ const sails_ng_common_2 = require("@researchdatabox/sails-ng-common");
|
|
|
7
7
|
const sails_ng_common_3 = require("@researchdatabox/sails-ng-common");
|
|
8
8
|
const sails_ng_common_4 = require("@researchdatabox/sails-ng-common");
|
|
9
9
|
const sails_ng_common_5 = require("@researchdatabox/sails-ng-common");
|
|
10
|
-
const json_type_def_visitor_1 = require("./json-type-def.visitor");
|
|
11
10
|
const sails_ng_common_6 = require("@researchdatabox/sails-ng-common");
|
|
12
11
|
const sails_ng_common_7 = require("@researchdatabox/sails-ng-common");
|
|
13
12
|
const sails_ng_common_8 = require("@researchdatabox/sails-ng-common");
|
|
13
|
+
const json_type_def_visitor_1 = require("./json-type-def.visitor");
|
|
14
14
|
const sails_ng_common_9 = require("@researchdatabox/sails-ng-common");
|
|
15
15
|
const sails_ng_common_10 = require("@researchdatabox/sails-ng-common");
|
|
16
|
+
const sails_ng_common_11 = require("@researchdatabox/sails-ng-common");
|
|
17
|
+
const sails_ng_common_12 = require("@researchdatabox/sails-ng-common");
|
|
18
|
+
const sails_ng_common_13 = require("@researchdatabox/sails-ng-common");
|
|
16
19
|
/**
|
|
17
20
|
* Visit each form config class type and build the form config for the client-side.
|
|
18
21
|
*
|
|
@@ -30,7 +33,7 @@ const sails_ng_common_10 = require("@researchdatabox/sails-ng-common");
|
|
|
30
33
|
* - use the various 'viewCssClasses' and 'editCssClasses' to set the css classes depending on the form mode, then remove these properties
|
|
31
34
|
* - use the various 'wrapperCssClasses' and 'hostCssClasses' to set the css classes in the relevant config, then remove these properties??
|
|
32
35
|
*/
|
|
33
|
-
class ClientFormConfigVisitor extends
|
|
36
|
+
class ClientFormConfigVisitor extends sails_ng_common_6.FormConfigVisitor {
|
|
34
37
|
logName = 'ClientFormConfigVisitor';
|
|
35
38
|
clientFormConfig;
|
|
36
39
|
formMode;
|
|
@@ -42,14 +45,14 @@ class ClientFormConfigVisitor extends sails_ng_common_3.FormConfigVisitor {
|
|
|
42
45
|
formOverride;
|
|
43
46
|
constructor(logger) {
|
|
44
47
|
super(logger);
|
|
45
|
-
this.clientFormConfig = new
|
|
48
|
+
this.clientFormConfig = new sails_ng_common_5.FormConfig();
|
|
46
49
|
this.formMode = 'view';
|
|
47
50
|
this.formModeProvided = false;
|
|
48
51
|
this.userRoles = [];
|
|
49
52
|
this.reusableFormDefs = {};
|
|
50
53
|
this.constraintPath = [];
|
|
51
|
-
this.formPathHelper = new
|
|
52
|
-
this.formOverride = new
|
|
54
|
+
this.formPathHelper = new sails_ng_common_7.FormPathHelper(logger, this);
|
|
55
|
+
this.formOverride = new sails_ng_common_10.FormOverride(logger);
|
|
53
56
|
}
|
|
54
57
|
/**
|
|
55
58
|
* Start the visitor.
|
|
@@ -86,7 +89,11 @@ class ClientFormConfigVisitor extends sails_ng_common_3.FormConfigVisitor {
|
|
|
86
89
|
applyPostPruningTransforms(items) {
|
|
87
90
|
return items
|
|
88
91
|
.filter(item => !this.isExplicitlyDisallowedByFormMode(item))
|
|
89
|
-
.map(item =>
|
|
92
|
+
.map(item => {
|
|
93
|
+
const result = this.applyPostPruningTransformToComponent(item);
|
|
94
|
+
this.removeServerOnlyProperties(result);
|
|
95
|
+
return result;
|
|
96
|
+
});
|
|
90
97
|
}
|
|
91
98
|
isExplicitlyDisallowedByFormMode(item) {
|
|
92
99
|
const allowModes = item?.constraints?.allowModes;
|
|
@@ -94,16 +101,17 @@ class ClientFormConfigVisitor extends sails_ng_common_3.FormConfigVisitor {
|
|
|
94
101
|
}
|
|
95
102
|
applyPostPruningTransformToComponent(item) {
|
|
96
103
|
const className = item?.component?.class;
|
|
97
|
-
const
|
|
98
|
-
const
|
|
99
|
-
const
|
|
104
|
+
const shouldSkipActionRowGroupTransform = className === sails_ng_common_11.GroupFieldComponentName && item?.layout?.class === sails_ng_common_1.ActionRowLayoutName;
|
|
105
|
+
const hasExplicitViewTransform = item?.overrides?.formModeClasses?.view !== undefined;
|
|
106
|
+
const hasDefaultViewTransform = this.formOverride.hasDefaultViewTransform(className);
|
|
107
|
+
const shouldTransformInlineVocabOption = this.isInlineVocabOptionComponent(item);
|
|
108
|
+
const shouldTransform = !shouldSkipActionRowGroupTransform &&
|
|
109
|
+
(hasDefaultViewTransform || hasExplicitViewTransform || shouldTransformInlineVocabOption);
|
|
100
110
|
const shouldSkipViewTransform = this.hasExplicitAllowedMode(item, 'view');
|
|
101
|
-
if (
|
|
102
|
-
if (shouldSkipViewTransform) {
|
|
103
|
-
this.
|
|
104
|
-
|
|
105
|
-
delete item['constraints'];
|
|
106
|
-
}
|
|
111
|
+
if (shouldTransform) {
|
|
112
|
+
if (shouldSkipViewTransform && !hasExplicitViewTransform) {
|
|
113
|
+
this.removeServerOnlyProperties(item);
|
|
114
|
+
this.applyPostPruningTransformsToNestedChildrenWithoutElementTemplate(item);
|
|
107
115
|
return item;
|
|
108
116
|
}
|
|
109
117
|
const transformed = this.formOverride.applyOverrideTransform(item, this.formMode, {
|
|
@@ -112,14 +120,21 @@ class ClientFormConfigVisitor extends sails_ng_common_3.FormConfigVisitor {
|
|
|
112
120
|
});
|
|
113
121
|
this.processFormComponentDefinition(transformed);
|
|
114
122
|
this.applyPostPruningTransformsToNestedChildren(transformed);
|
|
115
|
-
|
|
116
|
-
delete transformed['constraints'];
|
|
117
|
-
}
|
|
123
|
+
this.removeServerOnlyProperties(transformed);
|
|
118
124
|
return transformed;
|
|
119
125
|
}
|
|
120
126
|
this.applyPostPruningTransformsToNestedChildren(item);
|
|
127
|
+
this.removeServerOnlyProperties(item);
|
|
121
128
|
return item;
|
|
122
129
|
}
|
|
130
|
+
isInlineVocabOptionComponent(item) {
|
|
131
|
+
const className = item?.component?.class;
|
|
132
|
+
const componentConfig = item?.component?.config;
|
|
133
|
+
return (componentConfig?.inlineVocab === true &&
|
|
134
|
+
(className === sails_ng_common_3.DropdownInputComponentName ||
|
|
135
|
+
className === sails_ng_common_2.CheckboxInputComponentName ||
|
|
136
|
+
className === sails_ng_common_4.RadioInputComponentName));
|
|
137
|
+
}
|
|
123
138
|
hasExplicitAllowedMode(item, mode) {
|
|
124
139
|
const overrides = item?.overrides;
|
|
125
140
|
if (overrides?.__forceViewTransform === true) {
|
|
@@ -142,6 +157,45 @@ class ClientFormConfigVisitor extends sails_ng_common_3.FormConfigVisitor {
|
|
|
142
157
|
if (Array.isArray(config.panels)) {
|
|
143
158
|
config.panels = this.applyPostPruningTransforms(config.panels);
|
|
144
159
|
}
|
|
160
|
+
if (config.elementTemplate) {
|
|
161
|
+
config.elementTemplate = this.applyPostPruningTransformToComponent(config.elementTemplate);
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
applyPostPruningTransformsToNestedChildrenWithoutElementTemplate(item) {
|
|
165
|
+
const config = item?.component?.config;
|
|
166
|
+
if (!config) {
|
|
167
|
+
return;
|
|
168
|
+
}
|
|
169
|
+
if (Array.isArray(config.componentDefinitions)) {
|
|
170
|
+
config.componentDefinitions = this.applyPostPruningTransforms(config.componentDefinitions);
|
|
171
|
+
}
|
|
172
|
+
if (Array.isArray(config.tabs)) {
|
|
173
|
+
config.tabs = this.applyPostPruningTransforms(config.tabs);
|
|
174
|
+
}
|
|
175
|
+
if (Array.isArray(config.panels)) {
|
|
176
|
+
config.panels = this.applyPostPruningTransforms(config.panels);
|
|
177
|
+
}
|
|
178
|
+
if (config.elementTemplate) {
|
|
179
|
+
const et = config.elementTemplate;
|
|
180
|
+
const etViewOverride = et?.overrides?.formModeClasses?.view;
|
|
181
|
+
const etClassName = et?.component?.class;
|
|
182
|
+
const etIsIdentity = etViewOverride?.component === etClassName;
|
|
183
|
+
const etHasExplicitTransform = !etIsIdentity && ((typeof etViewOverride?.template === 'string' && etViewOverride.template.trim().length > 0) ||
|
|
184
|
+
etViewOverride?.component !== undefined);
|
|
185
|
+
const etShouldTransform = etHasExplicitTransform;
|
|
186
|
+
if (etShouldTransform) {
|
|
187
|
+
const transformed = this.formOverride.applyOverrideTransform(et, this.formMode, {
|
|
188
|
+
phase: 'client',
|
|
189
|
+
reusableFormDefs: this.reusableFormDefs,
|
|
190
|
+
});
|
|
191
|
+
config.elementTemplate = transformed;
|
|
192
|
+
this.removeServerOnlyProperties(transformed);
|
|
193
|
+
}
|
|
194
|
+
else {
|
|
195
|
+
this.removeServerOnlyProperties(et);
|
|
196
|
+
this.applyPostPruningTransformsToNestedChildren(et);
|
|
197
|
+
}
|
|
198
|
+
}
|
|
145
199
|
}
|
|
146
200
|
async visitFormConfig(item) {
|
|
147
201
|
// Behaviours follow the same client-delivery pattern as expressions:
|
|
@@ -265,6 +319,14 @@ class ClientFormConfigVisitor extends sails_ng_common_3.FormConfigVisitor {
|
|
|
265
319
|
await this.acceptCheckConstraintsCurrentPath(item);
|
|
266
320
|
this.processFormComponentDefinition(item);
|
|
267
321
|
}
|
|
322
|
+
/* Integration Status */
|
|
323
|
+
async visitIntegrationStatusFieldComponentDefinition(item) {
|
|
324
|
+
this.processFieldComponentDefinition(item);
|
|
325
|
+
}
|
|
326
|
+
async visitIntegrationStatusFormComponentDefinition(item) {
|
|
327
|
+
await this.acceptCheckConstraintsCurrentPath(item);
|
|
328
|
+
this.processFormComponentDefinition(item);
|
|
329
|
+
}
|
|
268
330
|
/* Group */
|
|
269
331
|
async visitGroupFieldComponentDefinition(item) {
|
|
270
332
|
this.processFieldComponentDefinition(item);
|
|
@@ -613,11 +675,14 @@ class ClientFormConfigVisitor extends sails_ng_common_3.FormConfigVisitor {
|
|
|
613
675
|
processFormComponentDefinition(item) {
|
|
614
676
|
const isPostPruningCandidate = this.formMode === 'view' &&
|
|
615
677
|
this.formModeProvided &&
|
|
616
|
-
(item?.component?.class ===
|
|
617
|
-
item?.component?.class ===
|
|
618
|
-
item?.component?.class ===
|
|
619
|
-
|
|
620
|
-
|
|
678
|
+
(item?.component?.class === sails_ng_common_12.RepeatableComponentName ||
|
|
679
|
+
item?.component?.class === sails_ng_common_11.GroupFieldComponentName ||
|
|
680
|
+
item?.component?.class === sails_ng_common_13.QuestionTreeComponentName ||
|
|
681
|
+
item?.overrides?.formModeClasses?.view !== undefined ||
|
|
682
|
+
this.formOverride.hasDefaultViewTransform(item?.component?.class) ||
|
|
683
|
+
this.isInlineVocabOptionComponent(item));
|
|
684
|
+
// Constraints define the criteria for including a component.
|
|
685
|
+
// Remove the constraints if the client does not need them.
|
|
621
686
|
if ('constraints' in item && !isPostPruningCandidate) {
|
|
622
687
|
delete item['constraints'];
|
|
623
688
|
}
|
|
@@ -739,16 +804,17 @@ class ClientFormConfigVisitor extends sails_ng_common_3.FormConfigVisitor {
|
|
|
739
804
|
this.updateLayoutVisibilityForZeroRows(item);
|
|
740
805
|
const elementTemplate = item.component?.config?.elementTemplate;
|
|
741
806
|
const elementTemplateCompConfig = elementTemplate?.component?.config;
|
|
742
|
-
if (!(0,
|
|
807
|
+
if (!(0, sails_ng_common_8.isTypeWithComponentDefinitions)(elementTemplateCompConfig)) {
|
|
743
808
|
// The elementTemplate does not have nested components. Nothing to update.
|
|
744
809
|
return;
|
|
745
810
|
}
|
|
746
811
|
// Build the data model schema from the components.
|
|
747
812
|
// NOTE: This depends on the repeatable model being set already.
|
|
748
813
|
const schemaVisitor = new json_type_def_visitor_1.JsonTypeDefSchemaFormConfigVisitor(this.logger);
|
|
749
|
-
const elementTemplateFormConfig = new
|
|
814
|
+
const elementTemplateFormConfig = new sails_ng_common_5.FormConfig();
|
|
750
815
|
elementTemplateFormConfig.componentDefinitions = (0, lodash_1.cloneDeep)(elementTemplateCompConfig.componentDefinitions);
|
|
751
816
|
const elementTemplateSchema = await schemaVisitor.start({ form: elementTemplateFormConfig });
|
|
817
|
+
this.applyRepeatableComponentSchemaOverrides(elementTemplateSchema, elementTemplateCompConfig.componentDefinitions);
|
|
752
818
|
// Remove any data model items that are not present in the schema.
|
|
753
819
|
const itemValue = item.model?.config?.value;
|
|
754
820
|
if (Array.isArray(itemValue) && item.model?.config) {
|
|
@@ -759,6 +825,37 @@ class ClientFormConfigVisitor extends sails_ng_common_3.FormConfigVisitor {
|
|
|
759
825
|
elementTemplate.model.config.newEntryValue = this.buildDataMatchingSchema(elementTemplateSchema, [], newEntryValue, []) ?? {};
|
|
760
826
|
}
|
|
761
827
|
}
|
|
828
|
+
applyRepeatableComponentSchemaOverrides(schema, componentDefinitions) {
|
|
829
|
+
const schemaProperties = schema?.properties;
|
|
830
|
+
if (!schemaProperties) {
|
|
831
|
+
return;
|
|
832
|
+
}
|
|
833
|
+
componentDefinitions.forEach(componentDefinition => {
|
|
834
|
+
const componentName = componentDefinition.name;
|
|
835
|
+
if (!componentName) {
|
|
836
|
+
return;
|
|
837
|
+
}
|
|
838
|
+
const componentSchema = schemaProperties[componentName];
|
|
839
|
+
if (!componentSchema) {
|
|
840
|
+
return;
|
|
841
|
+
}
|
|
842
|
+
const componentConfig = componentDefinition.component?.config;
|
|
843
|
+
if (componentDefinition.component?.class === sails_ng_common_2.CheckboxInputComponentName &&
|
|
844
|
+
componentConfig?.multipleValues === true) {
|
|
845
|
+
schemaProperties[componentName] = { elements: { type: 'string' } };
|
|
846
|
+
return;
|
|
847
|
+
}
|
|
848
|
+
if ((0, sails_ng_common_8.isTypeWithComponentDefinitions)(componentConfig)) {
|
|
849
|
+
this.applyRepeatableComponentSchemaOverrides(componentSchema, componentConfig.componentDefinitions);
|
|
850
|
+
}
|
|
851
|
+
const elementTemplate = componentConfig?.elementTemplate;
|
|
852
|
+
const elementTemplateConfig = elementTemplate?.component?.config;
|
|
853
|
+
const elementSchema = componentSchema.elements;
|
|
854
|
+
if (elementSchema && (0, sails_ng_common_8.isTypeWithComponentDefinitions)(elementTemplateConfig)) {
|
|
855
|
+
this.applyRepeatableComponentSchemaOverrides(elementSchema, elementTemplateConfig.componentDefinitions);
|
|
856
|
+
}
|
|
857
|
+
});
|
|
858
|
+
}
|
|
762
859
|
updateLayoutVisibilityForZeroRows(item) {
|
|
763
860
|
const hideWhenZeroRows = item.component?.config?.hideWhenZeroRows;
|
|
764
861
|
const valueLength = item.model?.config?.value?.length ?? 0;
|
|
@@ -834,7 +931,7 @@ class ClientFormConfigVisitor extends sails_ng_common_3.FormConfigVisitor {
|
|
|
834
931
|
* @protected
|
|
835
932
|
*/
|
|
836
933
|
buildDataMatchingSchemaProperties(currentSchema, schemaPath, currentValue, valuePath) {
|
|
837
|
-
let currentValueType = (0,
|
|
934
|
+
let currentValueType = (0, sails_ng_common_9.guessType)(currentValue);
|
|
838
935
|
const result = {};
|
|
839
936
|
if (currentValueType === 'object' && typeof currentValue === 'object') {
|
|
840
937
|
Object.assign(result, structuredClone(currentValue));
|
|
@@ -886,7 +983,7 @@ class ClientFormConfigVisitor extends sails_ng_common_3.FormConfigVisitor {
|
|
|
886
983
|
* @protected
|
|
887
984
|
*/
|
|
888
985
|
buildDataMatchingSchemaElements(currentSchema, schemaPath, currentValue, valuePath) {
|
|
889
|
-
const currentValueType = (0,
|
|
986
|
+
const currentValueType = (0, sails_ng_common_9.guessType)(currentValue);
|
|
890
987
|
if (!Array.isArray(currentValue) || currentValueType !== 'array') {
|
|
891
988
|
throw this.matchDataSchemaError('array', currentSchema, schemaPath, currentValue, valuePath);
|
|
892
989
|
}
|
|
@@ -903,7 +1000,7 @@ class ClientFormConfigVisitor extends sails_ng_common_3.FormConfigVisitor {
|
|
|
903
1000
|
*/
|
|
904
1001
|
buildDataMatchingSchemaType(currentSchema, schemaPath, currentValue, valuePath) {
|
|
905
1002
|
const currentSchemaType = String(currentSchema);
|
|
906
|
-
const currentValueType = (0,
|
|
1003
|
+
const currentValueType = (0, sails_ng_common_9.guessType)(currentValue);
|
|
907
1004
|
// Allow a timestamp as a string.
|
|
908
1005
|
const isTimestampString = currentSchemaType === 'string' && currentValueType === 'timestamp';
|
|
909
1006
|
// Allow null values.
|
|
@@ -927,12 +1024,20 @@ class ClientFormConfigVisitor extends sails_ng_common_3.FormConfigVisitor {
|
|
|
927
1024
|
* @protected
|
|
928
1025
|
*/
|
|
929
1026
|
matchDataSchemaError(expectedType, currentSchema, schemaPath, currentValue, valuePath) {
|
|
930
|
-
const currentValueType = (0,
|
|
1027
|
+
const currentValueType = (0, sails_ng_common_9.guessType)(currentValue);
|
|
931
1028
|
// TODO: do the json type def type names match the guessType names?
|
|
932
1029
|
return new Error(`Value and schema do not match. ` +
|
|
933
1030
|
`Value '${JSON.stringify(currentValue)}' at '${JSON.stringify(valuePath)}' is type '${currentValueType}'. ` +
|
|
934
1031
|
`Schema ${JSON.stringify(currentSchema)} at '${JSON.stringify(schemaPath)}' expected type '${expectedType}'.`);
|
|
935
1032
|
}
|
|
1033
|
+
removeServerOnlyProperties(item) {
|
|
1034
|
+
if ('constraints' in item) {
|
|
1035
|
+
delete item['constraints'];
|
|
1036
|
+
}
|
|
1037
|
+
if ('overrides' in item) {
|
|
1038
|
+
delete item['overrides'];
|
|
1039
|
+
}
|
|
1040
|
+
}
|
|
936
1041
|
}
|
|
937
1042
|
exports.ClientFormConfigVisitor = ClientFormConfigVisitor;
|
|
938
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpZW50LnZpc2l0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdmlzaXRvci9jbGllbnQudmlzaXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxtQ0FBaUQ7QUEwRWpELHNFQUFxRTtBQXVGckUsc0VBQTREO0FBQzVELHNFQUFtRTtBQUVuRSxzRUFBZ0U7QUFDaEUsc0VBQWdGO0FBQ2hGLG1FQUEyRTtBQUMzRSxzRUFBMkQ7QUFDM0Qsc0VBQThEO0FBQzlELHNFQUF5RTtBQUN6RSxzRUFBeUU7QUFDekUsdUVBQTJFO0FBRTNFOzs7Ozs7Ozs7Ozs7Ozs7O0dBZ0JHO0FBQ0gsTUFBYSx1QkFBd0IsU0FBUSxtQ0FBaUI7SUFDekMsT0FBTyxHQUFHLHlCQUF5QixDQUFDO0lBRS9DLGdCQUFnQixDQUFvQjtJQUNwQyxRQUFRLENBQWtCO0lBQzFCLGdCQUFnQixDQUFVO0lBQzFCLFNBQVMsQ0FBVztJQUNwQixnQkFBZ0IsQ0FBMEI7SUFFMUMsY0FBYyxDQUF5QjtJQUV2QyxjQUFjLENBQWlCO0lBQy9CLFlBQVksQ0FBZTtJQUVuQyxZQUFZLE1BQWU7UUFDekIsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBRWQsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksNEJBQVUsRUFBRSxDQUFDO1FBQ3pDLElBQUksQ0FBQyxRQUFRLEdBQUcsTUFBTSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxLQUFLLENBQUM7UUFDOUIsSUFBSSxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUM7UUFDcEIsSUFBSSxDQUFDLGdCQUFnQixHQUFHLEVBQUUsQ0FBQztRQUUzQixJQUFJLENBQUMsY0FBYyxHQUFHLEVBQUUsQ0FBQztRQUV6QixJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksZ0NBQWMsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDdkQsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLDhCQUFZLENBQUMs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
|
|
1043
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpZW50LnZpc2l0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdmlzaXRvci9jbGllbnQudmlzaXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxtQ0FBaUQ7QUE4RWpELHNFQUFxRTtBQUNyRSxzRUFLMEM7QUFXMUMsc0VBSzBDO0FBd0MxQyxzRUFLMEM7QUF1QjFDLHNFQUE0RDtBQUM1RCxzRUFBbUU7QUFFbkUsc0VBQWdFO0FBQ2hFLHNFQUFnRjtBQUNoRixtRUFBMkU7QUFDM0Usc0VBQTJEO0FBQzNELHVFQUE4RDtBQUM5RCx1RUFBeUU7QUFDekUsdUVBQXlFO0FBQ3pFLHVFQUEyRTtBQUUzRTs7Ozs7Ozs7Ozs7Ozs7OztHQWdCRztBQUNILE1BQWEsdUJBQXdCLFNBQVEsbUNBQWlCO0lBQ3pDLE9BQU8sR0FBRyx5QkFBeUIsQ0FBQztJQUUvQyxnQkFBZ0IsQ0FBb0I7SUFDcEMsUUFBUSxDQUFrQjtJQUMxQixnQkFBZ0IsQ0FBVTtJQUMxQixTQUFTLENBQVc7SUFDcEIsZ0JBQWdCLENBQTBCO0lBRTFDLGNBQWMsQ0FBeUI7SUFFdkMsY0FBYyxDQUFpQjtJQUMvQixZQUFZLENBQWU7SUFFbkMsWUFBWSxNQUFlO1FBQ3pCLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUVkLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLDRCQUFVLEVBQUUsQ0FBQztRQUN6QyxJQUFJLENBQUMsUUFBUSxHQUFHLE1BQU0sQ0FBQztRQUN2QixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsS0FBSyxDQUFDO1FBQzlCLElBQUksQ0FBQyxTQUFTLEdBQUcsRUFBRSxDQUFDO1FBQ3BCLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxFQUFFLENBQUM7UUFFM0IsSUFBSSxDQUFDLGNBQWMsR0FBRyxFQUFFLENBQUM7UUFFekIsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLGdDQUFjLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDO1FB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
|
|
@@ -35,6 +35,7 @@ import { TabNavButtonFieldComponentDefinitionOutline, TabNavButtonFormComponentD
|
|
|
35
35
|
import { ValidationSummaryFieldComponentDefinitionOutline, ValidationSummaryFormComponentDefinitionOutline } from '@researchdatabox/sails-ng-common';
|
|
36
36
|
import { SuggestedValidationSummaryFieldComponentDefinitionOutline, SuggestedValidationSummaryFormComponentDefinitionOutline } from '@researchdatabox/sails-ng-common';
|
|
37
37
|
import { SaveStatusFieldComponentDefinitionOutline, SaveStatusFormComponentDefinitionOutline } from '@researchdatabox/sails-ng-common';
|
|
38
|
+
import { IntegrationStatusFieldComponentDefinitionOutline, IntegrationStatusFormComponentDefinitionOutline } from '@researchdatabox/sails-ng-common';
|
|
38
39
|
import { AllFormComponentDefinitionOutlines, ReusableFormDefinitions } from '@researchdatabox/sails-ng-common';
|
|
39
40
|
import { ILogger } from '@researchdatabox/sails-ng-common';
|
|
40
41
|
import { FormModesConfig } from '@researchdatabox/sails-ng-common';
|
|
@@ -54,6 +55,7 @@ export declare class ConstructFormConfigVisitor extends FormConfigVisitor {
|
|
|
54
55
|
protected logName: string;
|
|
55
56
|
private formMode;
|
|
56
57
|
private recordValues;
|
|
58
|
+
private removeOverrides;
|
|
57
59
|
private extractedDefaultValues;
|
|
58
60
|
private mostRecentRepeatableElementTemplatePath;
|
|
59
61
|
private data;
|
|
@@ -71,12 +73,14 @@ export declare class ConstructFormConfigVisitor extends FormConfigVisitor {
|
|
|
71
73
|
* @param options.reusableFormDefs The reusable form definitions. Default empty.
|
|
72
74
|
* @param options.formMode The currently active form mode. Defaults to 'view'.
|
|
73
75
|
* @param options.record The record metadata values. Set to undefined or null to use the form default values.
|
|
76
|
+
* @param options.removeOverrides True to remove all overrides, false to retain the overrides that the client visitor might use.
|
|
74
77
|
*/
|
|
75
78
|
start(options: {
|
|
76
79
|
data: FormConfigFrame;
|
|
77
80
|
reusableFormDefs?: ReusableFormDefinitions;
|
|
78
81
|
formMode?: FormModesConfig;
|
|
79
82
|
record?: Record<string, unknown> | null;
|
|
83
|
+
removeOverrides?: boolean;
|
|
80
84
|
}): Promise<FormConfigOutline>;
|
|
81
85
|
visitFormConfig(item: FormConfigOutline): Promise<void>;
|
|
82
86
|
visitSimpleInputFieldComponentDefinition(item: SimpleInputFieldComponentDefinitionOutline): Promise<void>;
|
|
@@ -94,6 +98,8 @@ export declare class ConstructFormConfigVisitor extends FormConfigVisitor {
|
|
|
94
98
|
visitSuggestedValidationSummaryFormComponentDefinition(item: SuggestedValidationSummaryFormComponentDefinitionOutline): Promise<void>;
|
|
95
99
|
visitSaveStatusFieldComponentDefinition(item: SaveStatusFieldComponentDefinitionOutline): Promise<void>;
|
|
96
100
|
visitSaveStatusFormComponentDefinition(item: SaveStatusFormComponentDefinitionOutline): Promise<void>;
|
|
101
|
+
visitIntegrationStatusFieldComponentDefinition(item: IntegrationStatusFieldComponentDefinitionOutline): Promise<void>;
|
|
102
|
+
visitIntegrationStatusFormComponentDefinition(item: IntegrationStatusFormComponentDefinitionOutline): Promise<void>;
|
|
97
103
|
visitGroupFieldComponentDefinition(item: GroupFieldComponentDefinitionOutline): Promise<void>;
|
|
98
104
|
visitGroupFieldModelDefinition(item: GroupFieldModelDefinitionOutline): Promise<void>;
|
|
99
105
|
visitGroupFormComponentDefinition(item: GroupFormComponentDefinitionOutline): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"construct.visitor.d.ts","sourceRoot":"","sources":["../../src/visitor/construct.visitor.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AACrE,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AACtF,OAAO,EAEL,oCAAoC,EAGpC,gCAAgC,EAEhC,mCAAmC,EACpC,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAGL,6CAA6C,EAG7C,yCAAyC,EAEzC,qCAAqC,EACrC,wCAAwC,EAEzC,MAAM,kCAAkC,CAAC;AAO1C,OAAO,EAGL,0CAA0C,EAE1C,sCAAsC,EACtC,yCAAyC,EAE1C,MAAM,kCAAkC,CAAC;AAE1C,OAAO,EAEL,mCAAmC,EAEpC,MAAM,kCAAkC,CAAC;AAE1C,OAAO,EAEL,qCAAqC,EAEtC,MAAM,kCAAkC,CAAC;AAE1C,OAAO,EAEL,kCAAkC,EAEnC,MAAM,kCAAkC,CAAC;AAG1C,OAAO,
|
|
1
|
+
{"version":3,"file":"construct.visitor.d.ts","sourceRoot":"","sources":["../../src/visitor/construct.visitor.ts"],"names":[],"mappings":"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"}
|