@defra/forms-engine-plugin 4.7.2-alpha → 4.7.3
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/.server/client/javascripts/geospatial-map.d.ts +6 -6
- package/.server/client/javascripts/geospatial-map.js +3 -3
- package/.server/client/javascripts/location-map.d.ts +1 -1
- package/.server/client/javascripts/location-map.js +1 -1
- package/.server/client/javascripts/map.d.ts +1 -1
- package/.server/client/javascripts/map.js +1 -1
- package/.server/client/javascripts/shared.d.ts +7 -7
- package/.server/server/index.d.ts +1 -1
- package/.server/server/plugins/crumb.d.ts +1 -1
- package/.server/server/plugins/engine/beta/form-context.d.ts +6 -6
- package/.server/server/plugins/engine/components/AutocompleteField.d.ts +4 -4
- package/.server/server/plugins/engine/components/CheckboxesField.d.ts +2 -2
- package/.server/server/plugins/engine/components/CheckboxesField.js +2 -2
- package/.server/server/plugins/engine/components/CheckboxesField.js.map +1 -1
- package/.server/server/plugins/engine/components/ComponentBase.d.ts +5 -5
- package/.server/server/plugins/engine/components/ComponentCollection.d.ts +8 -8
- package/.server/server/plugins/engine/components/DatePartsField.d.ts +11 -11
- package/.server/server/plugins/engine/components/DeclarationField.d.ts +3 -3
- package/.server/server/plugins/engine/components/Details.d.ts +1 -1
- package/.server/server/plugins/engine/components/EastingNorthingField.d.ts +22 -22
- package/.server/server/plugins/engine/components/EmailAddressField.d.ts +4 -4
- package/.server/server/plugins/engine/components/FileUploadField.d.ts +3 -3
- package/.server/server/plugins/engine/components/FormComponent.d.ts +10 -10
- package/.server/server/plugins/engine/components/GeospatialField.d.ts +6 -6
- package/.server/server/plugins/engine/components/HiddenField.d.ts +2 -2
- package/.server/server/plugins/engine/components/Html.d.ts +1 -1
- package/.server/server/plugins/engine/components/InsetText.d.ts +1 -1
- package/.server/server/plugins/engine/components/LatLongField.d.ts +22 -22
- package/.server/server/plugins/engine/components/List.d.ts +8 -8
- package/.server/server/plugins/engine/components/ListFormComponent.d.ts +10 -10
- package/.server/server/plugins/engine/components/LocationFieldBase.d.ts +6 -6
- package/.server/server/plugins/engine/components/LocationFieldHelpers.d.ts +14 -14
- package/.server/server/plugins/engine/components/Markdown.d.ts +1 -1
- package/.server/server/plugins/engine/components/MonthYearField.d.ts +11 -11
- package/.server/server/plugins/engine/components/MultilineTextField.d.ts +5 -5
- package/.server/server/plugins/engine/components/NationalGridFieldNumberField.d.ts +1 -1
- package/.server/server/plugins/engine/components/NumberField.d.ts +3 -3
- package/.server/server/plugins/engine/components/OsGridRefField.d.ts +1 -1
- package/.server/server/plugins/engine/components/PaymentField.d.ts +12 -12
- package/.server/server/plugins/engine/components/RadiosField.d.ts +1 -1
- package/.server/server/plugins/engine/components/SelectField.d.ts +4 -4
- package/.server/server/plugins/engine/components/SelectionControlField.d.ts +10 -10
- package/.server/server/plugins/engine/components/TelephoneNumberField.d.ts +4 -4
- package/.server/server/plugins/engine/components/TextField.d.ts +2 -2
- package/.server/server/plugins/engine/components/UkAddressField.d.ts +11 -11
- package/.server/server/plugins/engine/components/YesNoField.d.ts +2 -2
- package/.server/server/plugins/engine/components/helpers/__stubs__/geospatial.d.ts +1 -1
- package/.server/server/plugins/engine/components/helpers/components.d.ts +5 -5
- package/.server/server/plugins/engine/components/helpers/geospatial.d.ts +1 -1
- package/.server/server/plugins/engine/components/index.d.ts +27 -27
- package/.server/server/plugins/engine/components/types.d.ts +1 -1
- package/.server/server/plugins/engine/configureEnginePlugin.d.ts +4 -4
- package/.server/server/plugins/engine/date-helper.d.ts +1 -1
- package/.server/server/plugins/engine/helpers.d.ts +8 -8
- package/.server/server/plugins/engine/index.d.ts +5 -5
- package/.server/server/plugins/engine/models/FormModel.d.ts +6 -6
- package/.server/server/plugins/engine/models/SummaryViewModel.d.ts +6 -6
- package/.server/server/plugins/engine/models/index.d.ts +2 -2
- package/.server/server/plugins/engine/models/types.d.ts +4 -4
- package/.server/server/plugins/engine/options.d.ts +1 -1
- package/.server/server/plugins/engine/options.js +1 -1
- package/.server/server/plugins/engine/options.test.js +1 -1
- package/.server/server/plugins/engine/outputFormatters/adapter/v1.d.ts +4 -4
- package/.server/server/plugins/engine/outputFormatters/human/v1.d.ts +4 -4
- package/.server/server/plugins/engine/outputFormatters/index.d.ts +5 -5
- package/.server/server/plugins/engine/outputFormatters/machine/v1.d.ts +4 -4
- package/.server/server/plugins/engine/outputFormatters/machine/v2.d.ts +4 -4
- package/.server/server/plugins/engine/pageControllers/FileUploadPageController.d.ts +8 -8
- package/.server/server/plugins/engine/pageControllers/PageController.d.ts +6 -6
- package/.server/server/plugins/engine/pageControllers/QuestionPageController.d.ts +8 -8
- package/.server/server/plugins/engine/pageControllers/RepeatPageController.d.ts +5 -5
- package/.server/server/plugins/engine/pageControllers/StartPageController.d.ts +4 -4
- package/.server/server/plugins/engine/pageControllers/StatusPageController.d.ts +4 -4
- package/.server/server/plugins/engine/pageControllers/SummaryPageController.d.ts +5 -5
- package/.server/server/plugins/engine/pageControllers/TerminalPageController.d.ts +3 -3
- package/.server/server/plugins/engine/pageControllers/__stubs__/request.d.ts +2 -2
- package/.server/server/plugins/engine/pageControllers/errors.d.ts +1 -1
- package/.server/server/plugins/engine/pageControllers/helpers/pages.d.ts +2 -2
- package/.server/server/plugins/engine/pageControllers/helpers/state.d.ts +5 -5
- package/.server/server/plugins/engine/pageControllers/helpers/state.js +1 -1
- package/.server/server/plugins/engine/pageControllers/helpers/state.js.map +1 -1
- package/.server/server/plugins/engine/pageControllers/helpers/submission.d.ts +1 -1
- package/.server/server/plugins/engine/pageControllers/index.d.ts +7 -7
- package/.server/server/plugins/engine/plugin.d.ts +1 -1
- package/.server/server/plugins/engine/routes/file-upload.d.ts +1 -1
- package/.server/server/plugins/engine/routes/index.d.ts +3 -3
- package/.server/server/plugins/engine/routes/payment-helper.d.ts +3 -3
- package/.server/server/plugins/engine/routes/payment-helper.js +2 -2
- package/.server/server/plugins/engine/routes/payment.js +5 -5
- package/.server/server/plugins/engine/routes/payment.test.js +1 -1
- package/.server/server/plugins/engine/routes/questions.d.ts +2 -2
- package/.server/server/plugins/engine/routes/repeaters/item-delete.d.ts +2 -2
- package/.server/server/plugins/engine/routes/repeaters/summary.d.ts +2 -2
- package/.server/server/plugins/engine/services/index.d.ts +3 -3
- package/.server/server/plugins/engine/services/notifyService.d.ts +4 -4
- package/.server/server/plugins/engine/services/uploadService.d.ts +2 -2
- package/.server/server/plugins/engine/services/uploadService.js +1 -1
- package/.server/server/plugins/engine/types/index.d.ts +10 -10
- package/.server/server/plugins/engine/types/schema.d.ts +1 -1
- package/.server/server/plugins/engine/types.d.ts +25 -16
- package/.server/server/plugins/engine/types.js.map +1 -1
- package/.server/server/plugins/engine/validationHelpers.d.ts +2 -2
- package/.server/server/plugins/engine/vision.d.ts +1 -1
- package/.server/server/plugins/map/index.d.ts +1 -1
- package/.server/server/plugins/map/index.js +1 -1
- package/.server/server/plugins/map/routes/get-os-token.d.ts +11 -1
- package/.server/server/plugins/map/routes/get-os-token.js +12 -2
- package/.server/server/plugins/map/routes/get-os-token.js.map +1 -1
- package/.server/server/plugins/map/routes/index.d.ts +4 -4
- package/.server/server/plugins/map/routes/index.js +3 -2
- package/.server/server/plugins/map/routes/index.js.map +1 -1
- package/.server/server/plugins/map/service.d.ts +1 -1
- package/.server/server/plugins/map/service.js +5 -2
- package/.server/server/plugins/map/service.js.map +1 -1
- package/.server/server/plugins/map/test/__stubs__/find.d.ts +1 -1
- package/.server/server/plugins/map/test/__stubs__/find.js +1 -1
- package/.server/server/plugins/nunjucks/context.d.ts +2 -2
- package/.server/server/plugins/nunjucks/context.js +2 -2
- package/.server/server/plugins/nunjucks/context.test.js +1 -1
- package/.server/server/plugins/nunjucks/enviroment.test.js +1 -1
- package/.server/server/plugins/nunjucks/environment.d.ts +3 -3
- package/.server/server/plugins/nunjucks/environment.js +3 -3
- package/.server/server/plugins/nunjucks/filters/answer.d.ts +1 -1
- package/.server/server/plugins/nunjucks/filters/answer.js +2 -2
- package/.server/server/plugins/nunjucks/filters/answer.test.js +1 -1
- package/.server/server/plugins/nunjucks/filters/evaluate.d.ts +1 -1
- package/.server/server/plugins/nunjucks/filters/evaluate.js +1 -1
- package/.server/server/plugins/nunjucks/filters/field.d.ts +1 -1
- package/.server/server/plugins/nunjucks/filters/field.js +1 -1
- package/.server/server/plugins/nunjucks/filters/field.test.js +1 -1
- package/.server/server/plugins/nunjucks/filters/href.d.ts +1 -1
- package/.server/server/plugins/nunjucks/filters/href.js +1 -1
- package/.server/server/plugins/nunjucks/filters/href.test.js +1 -1
- package/.server/server/plugins/nunjucks/filters/index.d.ts +8 -8
- package/.server/server/plugins/nunjucks/filters/page.d.ts +1 -1
- package/.server/server/plugins/nunjucks/filters/page.js +1 -1
- package/.server/server/plugins/nunjucks/filters/page.test.js +1 -1
- package/.server/server/plugins/nunjucks/index.d.ts +3 -3
- package/.server/server/plugins/nunjucks/render.d.ts +2 -2
- package/.server/server/plugins/nunjucks/render.js +1 -1
- package/.server/server/plugins/nunjucks/types.d.ts +1 -1
- package/.server/server/plugins/nunjucks/types.js +1 -1
- package/.server/server/plugins/payment/helper.d.ts +2 -2
- package/.server/server/plugins/payment/helper.js +1 -1
- package/.server/server/plugins/payment/service.d.ts +3 -3
- package/.server/server/plugins/payment/service.js +1 -1
- package/.server/server/plugins/postcode-lookup/index.d.ts +1 -1
- package/.server/server/plugins/postcode-lookup/index.js +1 -1
- package/.server/server/plugins/postcode-lookup/models/index.d.ts +6 -6
- package/.server/server/plugins/postcode-lookup/models/index.js +1 -1
- package/.server/server/plugins/postcode-lookup/routes/index.d.ts +6 -6
- package/.server/server/plugins/postcode-lookup/routes/index.js +15 -15
- package/.server/server/plugins/postcode-lookup/routes/index.js.map +1 -1
- package/.server/server/plugins/postcode-lookup/service.d.ts +1 -1
- package/.server/server/plugins/postcode-lookup/service.js +5 -2
- package/.server/server/plugins/postcode-lookup/service.js.map +1 -1
- package/.server/server/plugins/postcode-lookup/types.js +1 -1
- package/.server/server/routes/index.d.ts +2 -2
- package/.server/server/routes/types.d.ts +1 -1
- package/.server/server/schemas/index.d.ts +2 -2
- package/.server/server/services/cacheService.d.ts +8 -8
- package/.server/server/services/cacheService.js +2 -5
- package/.server/server/services/cacheService.js.map +1 -1
- package/.server/server/services/httpService.test.js +1 -1
- package/.server/server/services/index.d.ts +1 -1
- package/.server/server/types.d.ts +7 -7
- package/.server/server/utils/file-form-service.d.ts +2 -2
- package/.server/server/utils/file-form-service.js +1 -1
- package/package.json +8 -4
- package/src/client/javascripts/application.js +1 -1
- package/src/client/javascripts/geospatial-map.js +4 -4
- package/src/client/javascripts/location-map.js +2 -2
- package/src/client/javascripts/map.js +3 -3
- package/src/client/javascripts/shared.js +7 -7
- package/src/index.ts +3 -3
- package/src/server/common/helpers/logging/logger-options.ts +1 -1
- package/src/server/common/helpers/logging/logger.ts +1 -1
- package/src/server/common/helpers/logging/request-logger.ts +1 -1
- package/src/server/common/helpers/logging/request-tracing.js +1 -1
- package/src/server/common/helpers/redis-client.js +2 -2
- package/src/server/index.ts +13 -13
- package/src/server/plugins/crumb.ts +2 -2
- package/src/server/plugins/engine/beta/form-context.ts +9 -9
- package/src/server/plugins/engine/components/AutocompleteField.ts +3 -3
- package/src/server/plugins/engine/components/CheckboxesField.ts +7 -8
- package/src/server/plugins/engine/components/ComponentBase.ts +5 -5
- package/src/server/plugins/engine/components/ComponentCollection.ts +9 -9
- package/src/server/plugins/engine/components/DatePartsField.ts +8 -8
- package/src/server/plugins/engine/components/DeclarationField.ts +3 -3
- package/src/server/plugins/engine/components/Details.ts +1 -1
- package/src/server/plugins/engine/components/EastingNorthingField.ts +9 -9
- package/src/server/plugins/engine/components/EmailAddressField.ts +3 -3
- package/src/server/plugins/engine/components/FileUploadField.ts +6 -6
- package/src/server/plugins/engine/components/FormComponent.ts +4 -4
- package/src/server/plugins/engine/components/GeospatialField.ts +5 -5
- package/src/server/plugins/engine/components/HiddenField.ts +4 -4
- package/src/server/plugins/engine/components/Html.ts +1 -1
- package/src/server/plugins/engine/components/InsetText.ts +1 -1
- package/src/server/plugins/engine/components/LatLongField.ts +9 -9
- package/src/server/plugins/engine/components/List.ts +2 -2
- package/src/server/plugins/engine/components/ListFormComponent.ts +4 -4
- package/src/server/plugins/engine/components/LocationFieldBase.ts +5 -5
- package/src/server/plugins/engine/components/LocationFieldHelpers.ts +5 -5
- package/src/server/plugins/engine/components/Markdown.ts +1 -1
- package/src/server/plugins/engine/components/MonthYearField.ts +8 -8
- package/src/server/plugins/engine/components/MultilineTextField.ts +4 -4
- package/src/server/plugins/engine/components/NationalGridFieldNumberField.ts +2 -2
- package/src/server/plugins/engine/components/NumberField.ts +3 -3
- package/src/server/plugins/engine/components/OsGridRefField.ts +2 -2
- package/src/server/plugins/engine/components/PaymentField.ts +8 -8
- package/src/server/plugins/engine/components/RadiosField.ts +1 -1
- package/src/server/plugins/engine/components/SelectField.ts +2 -2
- package/src/server/plugins/engine/components/SelectionControlField.ts +4 -4
- package/src/server/plugins/engine/components/TelephoneNumberField.ts +4 -4
- package/src/server/plugins/engine/components/TextField.ts +3 -3
- package/src/server/plugins/engine/components/UkAddressField.ts +7 -7
- package/src/server/plugins/engine/components/YesNoField.ts +5 -5
- package/src/server/plugins/engine/components/helpers/__stubs__/geospatial.ts +1 -1
- package/src/server/plugins/engine/components/helpers/components.ts +8 -8
- package/src/server/plugins/engine/components/helpers/geospatial.ts +1 -1
- package/src/server/plugins/engine/components/index.ts +27 -27
- package/src/server/plugins/engine/components/types.ts +1 -1
- package/src/server/plugins/engine/configureEnginePlugin.ts +10 -10
- package/src/server/plugins/engine/date-helper.ts +1 -1
- package/src/server/plugins/engine/helpers.ts +8 -8
- package/src/server/plugins/engine/index.ts +8 -8
- package/src/server/plugins/engine/models/FormModel.ts +15 -15
- package/src/server/plugins/engine/models/SummaryViewModel.ts +10 -10
- package/src/server/plugins/engine/models/index.ts +2 -2
- package/src/server/plugins/engine/models/types.ts +4 -4
- package/src/server/plugins/engine/options.js +3 -3
- package/src/server/plugins/engine/outputFormatters/adapter/v1.ts +6 -6
- package/src/server/plugins/engine/outputFormatters/human/v1.ts +9 -9
- package/src/server/plugins/engine/outputFormatters/index.ts +8 -8
- package/src/server/plugins/engine/outputFormatters/machine/v1.ts +7 -7
- package/src/server/plugins/engine/outputFormatters/machine/v2.ts +6 -6
- package/src/server/plugins/engine/pageControllers/FileUploadPageController.ts +9 -9
- package/src/server/plugins/engine/pageControllers/PageController.ts +7 -7
- package/src/server/plugins/engine/pageControllers/QuestionPageController.ts +13 -13
- package/src/server/plugins/engine/pageControllers/RepeatPageController.ts +6 -6
- package/src/server/plugins/engine/pageControllers/StartPageController.ts +3 -3
- package/src/server/plugins/engine/pageControllers/StatusPageController.ts +5 -5
- package/src/server/plugins/engine/pageControllers/SummaryPageController.ts +12 -12
- package/src/server/plugins/engine/pageControllers/TerminalPageController.ts +3 -3
- package/src/server/plugins/engine/pageControllers/__stubs__/request.ts +3 -3
- package/src/server/plugins/engine/pageControllers/__stubs__/server.ts +2 -2
- package/src/server/plugins/engine/pageControllers/errors.ts +1 -1
- package/src/server/plugins/engine/pageControllers/helpers/pages.ts +2 -2
- package/src/server/plugins/engine/pageControllers/helpers/state.ts +9 -9
- package/src/server/plugins/engine/pageControllers/helpers/submission.ts +5 -5
- package/src/server/plugins/engine/pageControllers/index.ts +7 -7
- package/src/server/plugins/engine/pageControllers/validationOptions.ts +1 -1
- package/src/server/plugins/engine/plugin.ts +14 -14
- package/src/server/plugins/engine/routes/file-upload.ts +2 -2
- package/src/server/plugins/engine/routes/index.ts +10 -10
- package/src/server/plugins/engine/routes/payment-helper.js +4 -4
- package/src/server/plugins/engine/routes/payment.js +9 -9
- package/src/server/plugins/engine/routes/questions.ts +10 -10
- package/src/server/plugins/engine/routes/repeaters/item-delete.ts +6 -6
- package/src/server/plugins/engine/routes/repeaters/summary.ts +5 -5
- package/src/server/plugins/engine/services/formSubmissionService.js +2 -2
- package/src/server/plugins/engine/services/index.js +3 -3
- package/src/server/plugins/engine/services/localFormsService.js +2 -2
- package/src/server/plugins/engine/services/notifyService.ts +9 -9
- package/src/server/plugins/engine/services/uploadService.js +3 -3
- package/src/server/plugins/engine/types/index.ts +10 -10
- package/src/server/plugins/engine/types/schema.ts +2 -2
- package/src/server/plugins/engine/types.ts +22 -17
- package/src/server/plugins/engine/validationHelpers.ts +3 -3
- package/src/server/plugins/engine/vision.ts +3 -3
- package/src/server/plugins/map/index.js +2 -2
- package/src/server/plugins/map/routes/get-os-token.js +15 -3
- package/src/server/plugins/map/routes/index.js +7 -5
- package/src/server/plugins/map/service.js +7 -4
- package/src/server/plugins/map/test/__stubs__/find.js +1 -1
- package/src/server/plugins/nunjucks/context.js +5 -5
- package/src/server/plugins/nunjucks/environment.js +6 -6
- package/src/server/plugins/nunjucks/filters/answer.js +3 -3
- package/src/server/plugins/nunjucks/filters/evaluate.js +2 -2
- package/src/server/plugins/nunjucks/filters/field.js +1 -1
- package/src/server/plugins/nunjucks/filters/href.js +2 -2
- package/src/server/plugins/nunjucks/filters/index.js +8 -8
- package/src/server/plugins/nunjucks/filters/page.js +1 -1
- package/src/server/plugins/nunjucks/index.js +3 -3
- package/src/server/plugins/nunjucks/plugin.js +3 -3
- package/src/server/plugins/nunjucks/render.js +2 -2
- package/src/server/plugins/nunjucks/types.js +1 -1
- package/src/server/plugins/payment/helper.js +2 -2
- package/src/server/plugins/payment/service.js +4 -4
- package/src/server/plugins/postcode-lookup/index.js +2 -2
- package/src/server/plugins/postcode-lookup/models/index.js +3 -3
- package/src/server/plugins/postcode-lookup/routes/index.js +24 -14
- package/src/server/plugins/postcode-lookup/service.js +7 -4
- package/src/server/plugins/postcode-lookup/types.js +1 -1
- package/src/server/plugins/session.ts +1 -1
- package/src/server/routes/index.ts +2 -2
- package/src/server/routes/public.ts +1 -1
- package/src/server/routes/types.ts +1 -1
- package/src/server/schemas/index.ts +2 -2
- package/src/server/secure-context.js +1 -1
- package/src/server/services/cacheService.ts +13 -18
- package/src/server/services/httpService.ts +1 -1
- package/src/server/services/index.ts +1 -1
- package/src/server/types.ts +7 -7
- package/src/server/utils/notify.ts +2 -2
- package/src/server/utils/utils.js +1 -1
- package/src/typings/hapi/index.d.ts +4 -4
- package/src/typings/joi/index.d.ts +1 -1
- package/src/server/common/helpers/logging/logger-options.test.ts +0 -50
- package/src/server/index.test.ts +0 -644
- package/src/server/plugins/engine/beta/form-context.test.ts +0 -373
- package/src/server/plugins/engine/components/AutocompleteField.test.ts +0 -362
- package/src/server/plugins/engine/components/CheckboxesField.test.ts +0 -486
- package/src/server/plugins/engine/components/DatePartsField.test.ts +0 -927
- package/src/server/plugins/engine/components/DeclarationField.test.ts +0 -560
- package/src/server/plugins/engine/components/Details.test.ts +0 -49
- package/src/server/plugins/engine/components/EastingNorthingField.test.ts +0 -727
- package/src/server/plugins/engine/components/EmailAddressField.test.ts +0 -445
- package/src/server/plugins/engine/components/FileUploadField.test.ts +0 -1079
- package/src/server/plugins/engine/components/GeospatialField.test.ts +0 -380
- package/src/server/plugins/engine/components/HiddenField.test.ts +0 -188
- package/src/server/plugins/engine/components/Html.test.ts +0 -48
- package/src/server/plugins/engine/components/InsetText.test.ts +0 -48
- package/src/server/plugins/engine/components/LatLongField.test.ts +0 -898
- package/src/server/plugins/engine/components/List.test.ts +0 -79
- package/src/server/plugins/engine/components/LocationFieldBase.test.ts +0 -253
- package/src/server/plugins/engine/components/LocationFieldHelpers.test.ts +0 -743
- package/src/server/plugins/engine/components/Markdown.test.ts +0 -48
- package/src/server/plugins/engine/components/MonthYearField.test.ts +0 -617
- package/src/server/plugins/engine/components/MultilineTextField.test.ts +0 -647
- package/src/server/plugins/engine/components/NationalGridFieldNumberField.test.ts +0 -449
- package/src/server/plugins/engine/components/NumberField.test.ts +0 -723
- package/src/server/plugins/engine/components/OsGridRefField.test.ts +0 -460
- package/src/server/plugins/engine/components/PaymentField.test.ts +0 -745
- package/src/server/plugins/engine/components/RadiosField.test.ts +0 -297
- package/src/server/plugins/engine/components/SelectField.test.ts +0 -289
- package/src/server/plugins/engine/components/TelephoneNumberField.test.ts +0 -384
- package/src/server/plugins/engine/components/TextField.test.ts +0 -521
- package/src/server/plugins/engine/components/UkAddressField.test.ts +0 -806
- package/src/server/plugins/engine/components/YesNoField.test.ts +0 -256
- package/src/server/plugins/engine/components/helpers/components.test.ts +0 -399
- package/src/server/plugins/engine/components/helpers/geospatial.test.js +0 -55
- package/src/server/plugins/engine/components/helpers/helpers.test.ts +0 -219
- package/src/server/plugins/engine/date-helper.test.ts +0 -47
- package/src/server/plugins/engine/helpers.test.ts +0 -868
- package/src/server/plugins/engine/models/FormModel.test.ts +0 -725
- package/src/server/plugins/engine/models/SummaryViewModel.test.ts +0 -472
- package/src/server/plugins/engine/options.test.js +0 -63
- package/src/server/plugins/engine/outputFormatters/adapter/v1.location.test.ts +0 -356
- package/src/server/plugins/engine/outputFormatters/adapter/v1.test.ts +0 -871
- package/src/server/plugins/engine/outputFormatters/human/v1.payment.test.ts +0 -147
- package/src/server/plugins/engine/outputFormatters/human/v1.test.ts +0 -145
- package/src/server/plugins/engine/outputFormatters/index.test.ts +0 -17
- package/src/server/plugins/engine/outputFormatters/machine/v1.test.ts +0 -268
- package/src/server/plugins/engine/outputFormatters/machine/v2.location.test.ts +0 -341
- package/src/server/plugins/engine/outputFormatters/machine/v2.payment.test.ts +0 -115
- package/src/server/plugins/engine/outputFormatters/machine/v2.test.ts +0 -311
- package/src/server/plugins/engine/pageControllers/FileUploadPageController.test.ts +0 -1372
- package/src/server/plugins/engine/pageControllers/PageController.test.ts +0 -246
- package/src/server/plugins/engine/pageControllers/QuestionPageController.test.ts +0 -1686
- package/src/server/plugins/engine/pageControllers/RepeatPageController.test.ts +0 -279
- package/src/server/plugins/engine/pageControllers/StartPageController.test.ts +0 -32
- package/src/server/plugins/engine/pageControllers/StatusPageController.test.ts +0 -32
- package/src/server/plugins/engine/pageControllers/SummaryPageController.test.ts +0 -89
- package/src/server/plugins/engine/pageControllers/TerminalController.test.ts +0 -37
- package/src/server/plugins/engine/pageControllers/errors.test.ts +0 -78
- package/src/server/plugins/engine/pageControllers/helpers/helpers.test.ts +0 -182
- package/src/server/plugins/engine/pageControllers/helpers/state.test.ts +0 -359
- package/src/server/plugins/engine/pageControllers/helpers/submission.test.ts +0 -373
- package/src/server/plugins/engine/referenceNumbers.test.ts +0 -74
- package/src/server/plugins/engine/routes/index.test.ts +0 -332
- package/src/server/plugins/engine/routes/payment-helper.test.js +0 -136
- package/src/server/plugins/engine/routes/payment.test.js +0 -180
- package/src/server/plugins/engine/routes/questions.test.ts +0 -502
- package/src/server/plugins/engine/routes/repeaters/item-delete.test.ts +0 -83
- package/src/server/plugins/engine/routes/repeaters/summary.test.ts +0 -75
- package/src/server/plugins/engine/services/formsService.test.js +0 -26
- package/src/server/plugins/engine/services/notifyService.test.ts +0 -310
- package/src/server/plugins/engine/types/schema.test.ts +0 -234
- package/src/server/plugins/engine/views/components/service-banner/template.test.js +0 -43
- package/src/server/plugins/engine/views/components/tag-env/template.test.js +0 -28
- package/src/server/plugins/engine/views/partials/preview-banner.test.js +0 -122
- package/src/server/plugins/map/routes/get-os-token.test.js +0 -55
- package/src/server/plugins/map/service.test.js +0 -144
- package/src/server/plugins/nunjucks/context.test.js +0 -109
- package/src/server/plugins/nunjucks/enviroment.test.js +0 -207
- package/src/server/plugins/nunjucks/filters/answer.test.js +0 -92
- package/src/server/plugins/nunjucks/filters/field.test.js +0 -75
- package/src/server/plugins/nunjucks/filters/href.test.js +0 -80
- package/src/server/plugins/nunjucks/filters/merge.test.js +0 -15
- package/src/server/plugins/nunjucks/filters/page.test.js +0 -65
- package/src/server/plugins/payment/helper.test.js +0 -29
- package/src/server/plugins/payment/service.test.js +0 -218
- package/src/server/plugins/postcode-lookup/service.test.js +0 -177
- package/src/server/postcode-lookup.test.ts +0 -64
- package/src/server/routes/dummy-api.test.ts +0 -97
- package/src/server/services/cacheService.test.ts +0 -308
- package/src/server/services/httpService.test.js +0 -491
- package/src/server/utils/file-form-service.test.js +0 -127
- package/src/server/utils/notify.test.ts +0 -37
- package/src/server/utils/secure-context/get-trust-store-certs.test.js +0 -19
- package/src/server/utils/utils.test.js +0 -69
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { type Events, type FormDefinition, type Page, type Section } from '@defra/forms-model';
|
|
2
2
|
import { type Lifecycle, type RouteOptions, type Server } from '@hapi/hapi';
|
|
3
|
-
import { type ComponentCollection } from '
|
|
4
|
-
import { type FormComponent } from '
|
|
5
|
-
import { type FormModel } from '
|
|
6
|
-
import { type ExecutableCondition } from '
|
|
7
|
-
import { type FormContext, type PageViewModelBase } from '
|
|
8
|
-
import { type FormRequest, type FormRequestPayload, type FormRequestPayloadRefs, type FormRequestRefs, type FormResponseToolkit } from '
|
|
3
|
+
import { type ComponentCollection } from '../../../../server/plugins/engine/components/ComponentCollection.js';
|
|
4
|
+
import { type FormComponent } from '../../../../server/plugins/engine/components/FormComponent.js';
|
|
5
|
+
import { type FormModel } from '../../../../server/plugins/engine/models/index.js';
|
|
6
|
+
import { type ExecutableCondition } from '../../../../server/plugins/engine/models/types.js';
|
|
7
|
+
import { type FormContext, type PageViewModelBase } from '../../../../server/plugins/engine/types.js';
|
|
8
|
+
import { type FormRequest, type FormRequestPayload, type FormRequestPayloadRefs, type FormRequestRefs, type FormResponseToolkit } from '../../../../server/routes/types.js';
|
|
9
9
|
export declare class PageController {
|
|
10
10
|
/**
|
|
11
11
|
* The base class for all page controllers. Page controllers are responsible for generating the get and post route handlers when a user navigates to `/{id}/{path*}`.
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { type Link, type Page } from '@defra/forms-model';
|
|
2
2
|
import { type RouteOptions } from '@hapi/hapi';
|
|
3
3
|
import { type ValidationErrorItem } from 'joi';
|
|
4
|
-
import { ComponentCollection } from '
|
|
5
|
-
import { type BackLink } from '
|
|
6
|
-
import { type FormModel } from '
|
|
7
|
-
import { PageController } from '
|
|
8
|
-
import { type AnyFormRequest, type FormContext, type FormContextRequest, type FormPageViewModel, type FormPayload, type FormPayloadParams, type FormState, type FormStateValue, type FormSubmissionState } from '
|
|
9
|
-
import { type FormRequest, type FormRequestPayload, type FormRequestPayloadRefs, type FormRequestRefs, type FormResponseToolkit } from '
|
|
4
|
+
import { ComponentCollection } from '../../../../server/plugins/engine/components/ComponentCollection.js';
|
|
5
|
+
import { type BackLink } from '../../../../server/plugins/engine/components/types.js';
|
|
6
|
+
import { type FormModel } from '../../../../server/plugins/engine/models/index.js';
|
|
7
|
+
import { PageController } from '../../../../server/plugins/engine/pageControllers/PageController.js';
|
|
8
|
+
import { type AnyFormRequest, type FormContext, type FormContextRequest, type FormPageViewModel, type FormPayload, type FormPayloadParams, type FormState, type FormStateValue, type FormSubmissionState } from '../../../../server/plugins/engine/types.js';
|
|
9
|
+
import { type FormRequest, type FormRequestPayload, type FormRequestPayloadRefs, type FormRequestRefs, type FormResponseToolkit } from '../../../../server/routes/types.js';
|
|
10
10
|
export declare class QuestionPageController extends PageController {
|
|
11
11
|
collection: ComponentCollection;
|
|
12
12
|
errorSummaryTitle: string;
|
|
@@ -35,11 +35,11 @@ export declare class QuestionPageController extends PageController {
|
|
|
35
35
|
*/
|
|
36
36
|
getFormParams(request?: FormContextRequest): FormPayloadParams;
|
|
37
37
|
getStateFromValidForm(request: FormContextRequest, state: FormSubmissionState, payload: FormPayload): FormState;
|
|
38
|
-
getErrors(details?: ValidationErrorItem[]): import("
|
|
38
|
+
getErrors(details?: ValidationErrorItem[]): import("../../../../server/plugins/engine/types.js").FormSubmissionError[] | undefined;
|
|
39
39
|
getState(request: AnyFormRequest): Promise<FormSubmissionState>;
|
|
40
40
|
setState(request: AnyFormRequest, state: FormSubmissionState): Promise<FormSubmissionState>;
|
|
41
41
|
mergeState(request: AnyFormRequest, state: FormSubmissionState, update: object): Promise<FormSubmissionState>;
|
|
42
|
-
filterConditionalComponents(viewModel: FormPageViewModel, model: FormModel, evaluationState: Partial<Record<string, FormStateValue>>): import("
|
|
42
|
+
filterConditionalComponents(viewModel: FormPageViewModel, model: FormModel, evaluationState: Partial<Record<string, FormStateValue>>): import("../../../../server/plugins/engine/components/types.js").ComponentViewModel[];
|
|
43
43
|
makeGetRouteHandler(): (request: FormRequest, context: FormContext, h: FormResponseToolkit) => Promise<import("@hapi/hapi").ResponseObject>;
|
|
44
44
|
hasMissingNotificationEmail(request: FormRequest, context: FormContext): Promise<boolean>;
|
|
45
45
|
/**
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { type PageRepeat, type Repeat } from '@defra/forms-model';
|
|
2
|
-
import { type FormModel } from '
|
|
3
|
-
import { QuestionPageController } from '
|
|
4
|
-
import { type FormContext, type FormContextRequest, type FormPageViewModel, type FormPayload, type FormSubmissionState, type RepeatItemState, type RepeatListState, type RepeaterSummaryPageViewModel } from '
|
|
5
|
-
import { FormAction, type FormRequest, type FormRequestPayload, type FormResponseToolkit } from '
|
|
2
|
+
import { type FormModel } from '../../../../server/plugins/engine/models/index.js';
|
|
3
|
+
import { QuestionPageController } from '../../../../server/plugins/engine/pageControllers/QuestionPageController.js';
|
|
4
|
+
import { type FormContext, type FormContextRequest, type FormPageViewModel, type FormPayload, type FormSubmissionState, type RepeatItemState, type RepeatListState, type RepeaterSummaryPageViewModel } from '../../../../server/plugins/engine/types.js';
|
|
5
|
+
import { FormAction, type FormRequest, type FormRequestPayload, type FormResponseToolkit } from '../../../../server/routes/types.js';
|
|
6
6
|
export declare class RepeatPageController extends QuestionPageController {
|
|
7
7
|
pageDef: PageRepeat;
|
|
8
8
|
listSummaryViewName: string;
|
|
@@ -11,7 +11,7 @@ export declare class RepeatPageController extends QuestionPageController {
|
|
|
11
11
|
allowSaveAndExit: boolean;
|
|
12
12
|
constructor(model: FormModel, pageDef: PageRepeat);
|
|
13
13
|
get keys(): string[];
|
|
14
|
-
getFormParams(request?: FormContextRequest): import("
|
|
14
|
+
getFormParams(request?: FormContextRequest): import("../../../../server/plugins/engine/types.js").FormPayloadParams;
|
|
15
15
|
getFormDataFromState(request: FormContextRequest | undefined, state: FormSubmissionState): {
|
|
16
16
|
action?: FormAction;
|
|
17
17
|
confirm?: true;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { QuestionPageController } from '
|
|
2
|
-
import { type FormContext } from '
|
|
3
|
-
import { type FormRequest } from '
|
|
1
|
+
import { QuestionPageController } from '../../../../server/plugins/engine/pageControllers/QuestionPageController.js';
|
|
2
|
+
import { type FormContext } from '../../../../server/plugins/engine/types.js';
|
|
3
|
+
import { type FormRequest } from '../../../../server/routes/types.js';
|
|
4
4
|
export declare class StartPageController extends QuestionPageController {
|
|
5
5
|
/**
|
|
6
6
|
* The controller which is used when Page["controller"] is defined as "./pages/start.js"
|
|
@@ -12,7 +12,7 @@ export declare class StartPageController extends QuestionPageController {
|
|
|
12
12
|
isStartPage: boolean;
|
|
13
13
|
components: import("../components/types.js").ComponentViewModel[];
|
|
14
14
|
context: FormContext;
|
|
15
|
-
errors?: import("
|
|
15
|
+
errors?: import("../../../../server/plugins/engine/types.js").FormSubmissionError[];
|
|
16
16
|
hasMissingNotificationEmail?: boolean;
|
|
17
17
|
allowSaveAndExit: boolean;
|
|
18
18
|
showSubmitButton?: boolean;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { type PageStatus } from '@defra/forms-model';
|
|
2
|
-
import { type FormModel } from '
|
|
3
|
-
import { QuestionPageController } from '
|
|
4
|
-
import { type FormContext } from '
|
|
5
|
-
import { type FormRequest, type FormResponseToolkit } from '
|
|
2
|
+
import { type FormModel } from '../../../../server/plugins/engine/models/index.js';
|
|
3
|
+
import { QuestionPageController } from '../../../../server/plugins/engine/pageControllers/QuestionPageController.js';
|
|
4
|
+
import { type FormContext } from '../../../../server/plugins/engine/types.js';
|
|
5
|
+
import { type FormRequest, type FormResponseToolkit } from '../../../../server/routes/types.js';
|
|
6
6
|
export declare class StatusPageController extends QuestionPageController {
|
|
7
7
|
pageDef: PageStatus;
|
|
8
8
|
allowSaveAndExit: boolean;
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { type FormMetadata, type Page } from '@defra/forms-model';
|
|
2
2
|
import { type RouteOptions } from '@hapi/hapi';
|
|
3
|
-
import { SummaryViewModel, type FormModel } from '
|
|
4
|
-
import { type Detail, type DetailItem } from '
|
|
5
|
-
import { QuestionPageController } from '
|
|
6
|
-
import { type FormContext, type FormContextRequest } from '
|
|
7
|
-
import { type FormRequest, type FormRequestPayload, type FormRequestPayloadRefs, type FormResponseToolkit } from '
|
|
3
|
+
import { SummaryViewModel, type FormModel } from '../../../../server/plugins/engine/models/index.js';
|
|
4
|
+
import { type Detail, type DetailItem } from '../../../../server/plugins/engine/models/types.js';
|
|
5
|
+
import { QuestionPageController } from '../../../../server/plugins/engine/pageControllers/QuestionPageController.js';
|
|
6
|
+
import { type FormContext, type FormContextRequest } from '../../../../server/plugins/engine/types.js';
|
|
7
|
+
import { type FormRequest, type FormRequestPayload, type FormRequestPayloadRefs, type FormResponseToolkit } from '../../../../server/routes/types.js';
|
|
8
8
|
export declare class SummaryPageController extends QuestionPageController {
|
|
9
9
|
pageDef: Page;
|
|
10
10
|
allowSaveAndExit: boolean;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { type PageTerminal } from '@defra/forms-model';
|
|
2
2
|
import { type ResponseObject } from '@hapi/hapi';
|
|
3
|
-
import { QuestionPageController } from '
|
|
4
|
-
import { type FormContext } from '
|
|
5
|
-
import { type FormRequestPayload, type FormResponseToolkit } from '
|
|
3
|
+
import { QuestionPageController } from '../../../../server/plugins/engine/pageControllers/QuestionPageController.js';
|
|
4
|
+
import { type FormContext } from '../../../../server/plugins/engine/types.js';
|
|
5
|
+
import { type FormRequestPayload, type FormResponseToolkit } from '../../../../server/routes/types.js';
|
|
6
6
|
export declare class TerminalPageController extends QuestionPageController {
|
|
7
7
|
pageDef: PageTerminal;
|
|
8
8
|
allowSaveAndExit: boolean;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type FormContextRequest } from '
|
|
2
|
-
import { type FormRequest } from '
|
|
1
|
+
import { type FormContextRequest } from '../../../../../server/plugins/engine/types.js';
|
|
2
|
+
import { type FormRequest } from '../../../../../server/routes/types.js';
|
|
3
3
|
export declare function buildFormRequest(request: Omit<FormRequest, 'server' | 'yar'>): FormRequest;
|
|
4
4
|
export declare function buildFormContextRequest(request: Omit<FormContextRequest, 'server' | 'yar'>): FormContextRequest;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type FormComponent } from '
|
|
1
|
+
import { type FormComponent } from '../../../../server/plugins/engine/components/FormComponent.js';
|
|
2
2
|
export declare enum PaymentErrorTypes {
|
|
3
3
|
PaymentExpired = "PaymentExpired",
|
|
4
4
|
PaymentIncomplete = "PaymentIncomplete",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { type Page } from '@defra/forms-model';
|
|
2
|
-
import { type FormModel } from '
|
|
3
|
-
import * as PageControllers from '
|
|
2
|
+
import { type FormModel } from '../../../../../server/plugins/engine/models/index.js';
|
|
3
|
+
import * as PageControllers from '../../../../../server/plugins/engine/pageControllers/index.js';
|
|
4
4
|
export type PageControllerClass = InstanceType<PageControllerType>;
|
|
5
5
|
export type PageControllerType = (typeof PageControllers)[keyof typeof PageControllers];
|
|
6
6
|
/**
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import { type FormModel } from '
|
|
2
|
-
import { type PageControllerClass } from '
|
|
3
|
-
import { type AnyFormRequest, type FormContext } from '
|
|
4
|
-
import { type FormQuery } from '
|
|
1
|
+
import { type FormModel } from '../../../../../server/plugins/engine/models/FormModel.js';
|
|
2
|
+
import { type PageControllerClass } from '../../../../../server/plugins/engine/pageControllers/helpers/pages.js';
|
|
3
|
+
import { type AnyFormRequest, type FormContext } from '../../../../../server/plugins/engine/types.js';
|
|
4
|
+
import { type FormQuery } from '../../../../../server/routes/types.js';
|
|
5
5
|
export declare function stripParam(query: FormQuery, paramToRemove: string): FormQuery | undefined;
|
|
6
6
|
/**
|
|
7
7
|
* Any hidden parameters defined in the FormDefinition may be pre-filled by URL parameter values.
|
|
8
8
|
* Other parameters are ignored for security reasons.
|
|
9
9
|
* @param request
|
|
10
|
-
* @param
|
|
10
|
+
* @param page
|
|
11
11
|
*/
|
|
12
12
|
export declare function prefillStateFromQueryParameters(request: AnyFormRequest, page: PageControllerClass): Promise<boolean>;
|
|
13
13
|
/**
|
|
@@ -34,7 +34,7 @@ export function stripParam(query, paramToRemove) {
|
|
|
34
34
|
* Any hidden parameters defined in the FormDefinition may be pre-filled by URL parameter values.
|
|
35
35
|
* Other parameters are ignored for security reasons.
|
|
36
36
|
* @param request
|
|
37
|
-
* @param
|
|
37
|
+
* @param page
|
|
38
38
|
*/
|
|
39
39
|
export async function prefillStateFromQueryParameters(request, page) {
|
|
40
40
|
const {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"state.js","names":["ControllerType","getHiddenFields","getCacheService","CURRENT_PAGE_PATH_KEY","STATE_NOT_YET_VALIDATED","isValidUUID","GUID_LENGTH","paramLookupFunctions","formId","val","services","formTitle","meta","formsService","getFormMetadataById","title","key","value","stripParam","query","paramToRemove","params","Object","entries","keys","length","undefined","prefillStateFromQueryParameters","request","page","model","hiddenFieldNames","Set","def","map","field","name","size","has","lookupFunc","res","formData","getState","mergeState","checkSaveAndExitRepeater","context","potentiallyInvalidState","state","originalPath","repeaterPaths","pages","filter","controller","Repeat","p","basePath","path","segments","split","lastSegment","at","guidStartIndex","originalPathWithoutGuid","substring","includes","copyNotYetValidatedState","url","pathname","payload","cacheService","server","setState"],"sources":["../../../../../../src/server/plugins/engine/pageControllers/helpers/state.ts"],"sourcesContent":["import { ControllerType, getHiddenFields } from '@defra/forms-model'\n\nimport { getCacheService } from '~/src/server/plugins/engine/helpers.js'\nimport {\n CURRENT_PAGE_PATH_KEY,\n STATE_NOT_YET_VALIDATED\n} from '~/src/server/plugins/engine/index.js'\nimport { type FormModel } from '~/src/server/plugins/engine/models/FormModel.js'\nimport { type PageControllerClass } from '~/src/server/plugins/engine/pageControllers/helpers/pages.js'\nimport {\n type AnyFormRequest,\n type FormContext,\n type FormStateValue,\n type FormValue\n} from '~/src/server/plugins/engine/types.js'\nimport { type FormQuery } from '~/src/server/routes/types.js'\nimport { type Services } from '~/src/server/types.js'\nimport { isValidUUID } from '~/src/server/utils/utils.js'\n\nconst GUID_LENGTH = 36\n\n/**\n * A series of functions that can transform a pre-fill input parameter e.g lookup a form title based on form id\n */\nconst paramLookupFunctions = {\n formId: async (val: string, services: Services) => {\n let formTitle\n if (val) {\n const meta = await services.formsService.getFormMetadataById(val)\n formTitle = meta.title\n }\n return {\n key: 'formName',\n value: formTitle\n }\n }\n} as Partial<\n Record<\n string,\n (\n val: string,\n services: Services\n ) => Promise<{ key: string; value: string | undefined }>\n >\n>\n\nexport function stripParam(query: FormQuery, paramToRemove: string) {\n const params = {} as Record<string, FormStateValue | undefined>\n for (const [key, value = ''] of Object.entries(query)) {\n if (key !== paramToRemove) {\n params[key] = value\n }\n }\n return Object.keys(params).length ? (params as FormQuery) : undefined\n}\n\n/**\n * Any hidden parameters defined in the FormDefinition may be pre-filled by URL parameter values.\n * Other parameters are ignored for security reasons.\n * @param request\n * @param
|
|
1
|
+
{"version":3,"file":"state.js","names":["ControllerType","getHiddenFields","getCacheService","CURRENT_PAGE_PATH_KEY","STATE_NOT_YET_VALIDATED","isValidUUID","GUID_LENGTH","paramLookupFunctions","formId","val","services","formTitle","meta","formsService","getFormMetadataById","title","key","value","stripParam","query","paramToRemove","params","Object","entries","keys","length","undefined","prefillStateFromQueryParameters","request","page","model","hiddenFieldNames","Set","def","map","field","name","size","has","lookupFunc","res","formData","getState","mergeState","checkSaveAndExitRepeater","context","potentiallyInvalidState","state","originalPath","repeaterPaths","pages","filter","controller","Repeat","p","basePath","path","segments","split","lastSegment","at","guidStartIndex","originalPathWithoutGuid","substring","includes","copyNotYetValidatedState","url","pathname","payload","cacheService","server","setState"],"sources":["../../../../../../src/server/plugins/engine/pageControllers/helpers/state.ts"],"sourcesContent":["import { ControllerType, getHiddenFields } from '@defra/forms-model'\n\nimport { getCacheService } from '~/src/server/plugins/engine/helpers.js'\nimport {\n CURRENT_PAGE_PATH_KEY,\n STATE_NOT_YET_VALIDATED\n} from '~/src/server/plugins/engine/index.js'\nimport { type FormModel } from '~/src/server/plugins/engine/models/FormModel.js'\nimport { type PageControllerClass } from '~/src/server/plugins/engine/pageControllers/helpers/pages.js'\nimport {\n type AnyFormRequest,\n type FormContext,\n type FormStateValue,\n type FormValue\n} from '~/src/server/plugins/engine/types.js'\nimport { type FormQuery } from '~/src/server/routes/types.js'\nimport { type Services } from '~/src/server/types.js'\nimport { isValidUUID } from '~/src/server/utils/utils.js'\n\nconst GUID_LENGTH = 36\n\n/**\n * A series of functions that can transform a pre-fill input parameter e.g lookup a form title based on form id\n */\nconst paramLookupFunctions = {\n formId: async (val: string, services: Services) => {\n let formTitle\n if (val) {\n const meta = await services.formsService.getFormMetadataById(val)\n formTitle = meta.title\n }\n return {\n key: 'formName',\n value: formTitle\n }\n }\n} as Partial<\n Record<\n string,\n (\n val: string,\n services: Services\n ) => Promise<{ key: string; value: string | undefined }>\n >\n>\n\nexport function stripParam(query: FormQuery, paramToRemove: string) {\n const params = {} as Record<string, FormStateValue | undefined>\n for (const [key, value = ''] of Object.entries(query)) {\n if (key !== paramToRemove) {\n params[key] = value\n }\n }\n return Object.keys(params).length ? (params as FormQuery) : undefined\n}\n\n/**\n * Any hidden parameters defined in the FormDefinition may be pre-filled by URL parameter values.\n * Other parameters are ignored for security reasons.\n * @param request\n * @param page\n */\nexport async function prefillStateFromQueryParameters(\n request: AnyFormRequest,\n page: PageControllerClass\n): Promise<boolean> {\n const { model } = page\n\n const hiddenFieldNames = new Set(\n getHiddenFields(model.def).map((field) => field.name)\n )\n\n if (!hiddenFieldNames.size) {\n return false\n }\n\n // Remove 'returnUrl' param\n const query = stripParam(request.query, 'returnUrl')\n\n if (!query) {\n return false\n }\n\n const params = {} as Record<string, FormStateValue | undefined>\n\n for (const [key, value = ''] of Object.entries(query)) {\n if (hiddenFieldNames.has(key)) {\n const lookupFunc = paramLookupFunctions[key]\n if (lookupFunc) {\n const res = await lookupFunc(value, model.services)\n // Store original value and result\n params[key] = value\n params[res.key] = res.value\n } else {\n params[key] = value\n }\n }\n }\n\n const formData = await page.getState(request)\n await page.mergeState(request, formData, params)\n\n return true\n}\n\n/**\n * Checks whether the save-and-exit finished on a repeater with partial state\n * @param context - the form context\n */\nexport function checkSaveAndExitRepeater(\n context: FormContext,\n model: FormModel\n) {\n const potentiallyInvalidState = context.state[STATE_NOT_YET_VALIDATED] as\n | Record<string, FormValue>\n | undefined\n if (!potentiallyInvalidState) {\n return\n }\n\n const originalPath = potentiallyInvalidState[CURRENT_PAGE_PATH_KEY]\n\n const repeaterPaths = model.def.pages\n .filter((page) => page.controller === ControllerType.Repeat)\n .map((p) => `/${model.basePath}${p.path}/`)\n\n if (typeof originalPath !== 'string') {\n return undefined\n }\n\n const segments = originalPath.split('/')\n const lastSegment = segments.at(-1) ?? ''\n\n if (!isValidUUID(lastSegment)) {\n return undefined\n }\n\n const guidStartIndex = originalPath.length - GUID_LENGTH\n const originalPathWithoutGuid = originalPath.substring(0, guidStartIndex)\n\n if (!repeaterPaths.includes(originalPathWithoutGuid)) {\n return undefined\n }\n\n return originalPath\n}\n\n/**\n * Copies any potentially invalid state into the payload, and removes those values from state\n * NOTE - this method has a side-effect on 'context.state' and 'context.payload'\n * @param request - the form request\n * @param context - the form context\n */\nexport async function copyNotYetValidatedState(\n request: AnyFormRequest,\n context: FormContext\n) {\n const potentiallyInvalidState = context.state[STATE_NOT_YET_VALIDATED] as\n | Record<string, FormValue>\n | undefined\n if (!potentiallyInvalidState) {\n return\n }\n\n const originalPath = potentiallyInvalidState[CURRENT_PAGE_PATH_KEY]\n\n if (originalPath && originalPath === request.url.pathname) {\n context.payload = {\n ...context.payload,\n ...potentiallyInvalidState,\n [CURRENT_PAGE_PATH_KEY]: undefined\n }\n\n // Remove any temporary 'not yet validated' state now it's been copied to the payload\n if (context.state[STATE_NOT_YET_VALIDATED]) {\n context.state[STATE_NOT_YET_VALIDATED] = undefined\n }\n\n const cacheService = getCacheService(request.server)\n await cacheService.setState(request, context.state)\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { type SubmitPayload } from '@defra/forms-model';
|
|
2
|
-
import { type DetailItem, type DetailItemField } from '
|
|
2
|
+
import { type DetailItem, type DetailItemField } from '../../../../../server/plugins/engine/models/types.js';
|
|
3
3
|
export interface SubmitRecord {
|
|
4
4
|
name: string;
|
|
5
5
|
title: string;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
export { StartPageController } from '
|
|
1
|
+
export { StartPageController } from '../../../../server/plugins/engine/pageControllers/StartPageController.js';
|
|
2
2
|
export { QuestionPageController, // Export alongside alias
|
|
3
|
-
QuestionPageController as PageController } from '
|
|
4
|
-
export { TerminalPageController } from '
|
|
5
|
-
export { SummaryPageController } from '
|
|
6
|
-
export { StatusPageController } from '
|
|
7
|
-
export { FileUploadPageController } from '
|
|
8
|
-
export { RepeatPageController } from '
|
|
3
|
+
QuestionPageController as PageController } from '../../../../server/plugins/engine/pageControllers/QuestionPageController.js';
|
|
4
|
+
export { TerminalPageController } from '../../../../server/plugins/engine/pageControllers/TerminalPageController.js';
|
|
5
|
+
export { SummaryPageController } from '../../../../server/plugins/engine/pageControllers/SummaryPageController.js';
|
|
6
|
+
export { StatusPageController } from '../../../../server/plugins/engine/pageControllers/StatusPageController.js';
|
|
7
|
+
export { FileUploadPageController } from '../../../../server/plugins/engine/pageControllers/FileUploadPageController.js';
|
|
8
|
+
export { RepeatPageController } from '../../../../server/plugins/engine/pageControllers/RepeatPageController.js';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { type Server } from '@hapi/hapi';
|
|
2
|
-
import { type PluginOptions } from '
|
|
2
|
+
import { type PluginOptions } from '../../../server/plugins/engine/types.js';
|
|
3
3
|
export declare const plugin: {
|
|
4
4
|
name: string;
|
|
5
5
|
dependencies: string[];
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { type ResponseToolkit, type ServerRoute } from '@hapi/hapi';
|
|
2
|
-
import { type FormRequest, type FormRequestRefs } from '
|
|
2
|
+
import { type FormRequest, type FormRequestRefs } from '../../../../server/routes/types.js';
|
|
3
3
|
export declare function getHandler(request: FormRequest, h: Pick<ResponseToolkit, 'response'>): Promise<import("@hapi/hapi").ResponseObject>;
|
|
4
4
|
export declare function getRoutes(): ServerRoute<FormRequestRefs>[];
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { type ResponseObject, type ResponseToolkit, type Server } from '@hapi/hapi';
|
|
2
|
-
import { type PageControllerClass } from '
|
|
3
|
-
import { type AnyFormRequest, type FormContext, type OnRequestCallback, type PluginOptions } from '
|
|
4
|
-
import { type FormRequest, type FormResponseToolkit } from '
|
|
2
|
+
import { type PageControllerClass } from '../../../../server/plugins/engine/pageControllers/helpers/pages.js';
|
|
3
|
+
import { type AnyFormRequest, type FormContext, type OnRequestCallback, type PluginOptions } from '../../../../server/plugins/engine/types.js';
|
|
4
|
+
import { type FormRequest, type FormResponseToolkit } from '../../../../server/routes/types.js';
|
|
5
5
|
export declare function redirectOrMakeHandler(request: AnyFormRequest, h: FormResponseToolkit, onRequest: OnRequestCallback | undefined, makeHandler: (page: PageControllerClass, context: FormContext) => ResponseObject | Promise<ResponseObject>): Promise<symbol | ResponseObject>;
|
|
6
6
|
export declare function makeLoadFormPreHandler(server: Server, options: PluginOptions): (request: AnyFormRequest, h: ResponseToolkit) => Promise<symbol>;
|
|
7
7
|
export declare function dispatchHandler(request: FormRequest, h: FormResponseToolkit): ResponseObject;
|
|
@@ -33,6 +33,6 @@ export function buildPaymentInfo(action: string, outcome: string, reason: string
|
|
|
33
33
|
*/
|
|
34
34
|
export function convertPenceToPounds(amount: number): string;
|
|
35
35
|
import type { Request } from '@hapi/hapi';
|
|
36
|
-
import type { FormsService } from '
|
|
37
|
-
import type { PaymentSessionData } from '
|
|
38
|
-
import type { GetPaymentResponse } from '
|
|
36
|
+
import type { FormsService } from '../../../../server/types.js';
|
|
37
|
+
import type { PaymentSessionData } from '../../../../server/plugins/payment/types.js';
|
|
38
|
+
import type { GetPaymentResponse } from '../../../../server/plugins/payment/types.js';
|
|
@@ -63,7 +63,7 @@ export function convertPenceToPounds(amount) {
|
|
|
63
63
|
|
|
64
64
|
/**
|
|
65
65
|
* @import { Request } from '@hapi/hapi'
|
|
66
|
-
* @import { GetPaymentResponse, PaymentSessionData } from '
|
|
67
|
-
* @import { FormsService } from '
|
|
66
|
+
* @import { GetPaymentResponse, PaymentSessionData } from '../../../../server/plugins/payment/types.js'
|
|
67
|
+
* @import { FormsService } from '../../../../server/types.js'
|
|
68
68
|
*/
|
|
69
69
|
//# sourceMappingURL=payment-helper.js.map
|
|
@@ -159,10 +159,10 @@ function getReturnRoute() {
|
|
|
159
159
|
|
|
160
160
|
/**
|
|
161
161
|
* @import { Request, ResponseToolkit, ServerRoute } from '@hapi/hapi'
|
|
162
|
-
* @import { GetPaymentResponse, PaymentSessionData } from '
|
|
163
|
-
* @import { PaymentState } from '
|
|
164
|
-
* @import { ExternalStateAppendage, FormState } from '
|
|
165
|
-
* @import { PluginOptions } from '
|
|
166
|
-
* @import { FormsService } from '
|
|
162
|
+
* @import { GetPaymentResponse, PaymentSessionData } from '../../../../server/plugins/payment/types.js'
|
|
163
|
+
* @import { PaymentState } from '../../../../server/plugins/engine/components/PaymentField.types.js'
|
|
164
|
+
* @import { ExternalStateAppendage, FormState } from '../../../../server/plugins/engine/types.js'
|
|
165
|
+
* @import { PluginOptions } from '../../../../server/plugins/engine/types.js'
|
|
166
|
+
* @import { FormsService } from '../../../../server/types.js'
|
|
167
167
|
*/
|
|
168
168
|
//# sourceMappingURL=payment.js.map
|
|
@@ -182,6 +182,6 @@ describe('Payment routes', () => {
|
|
|
182
182
|
|
|
183
183
|
/**
|
|
184
184
|
* @import { Server } from '@hapi/hapi'
|
|
185
|
-
* @import { PaymentResponseState } from '
|
|
185
|
+
* @import { PaymentResponseState } from '../../../../server/plugins/payment/types.js'
|
|
186
186
|
*/
|
|
187
187
|
//# sourceMappingURL=payment.test.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { type ResponseObject, type RouteOptions, type ServerRoute } from '@hapi/hapi';
|
|
2
|
-
import { type OnRequestCallback, type PreparePageEventRequestOptions } from '
|
|
3
|
-
import { type FormRequest, type FormRequestPayload, type FormRequestPayloadRefs, type FormRequestRefs, type FormResponseToolkit } from '
|
|
2
|
+
import { type OnRequestCallback, type PreparePageEventRequestOptions } from '../../../../server/plugins/engine/types.js';
|
|
3
|
+
import { type FormRequest, type FormRequestPayload, type FormRequestPayloadRefs, type FormRequestRefs, type FormResponseToolkit } from '../../../../server/routes/types.js';
|
|
4
4
|
export declare function makeGetHandler(preparePageEventRequestOptions?: PreparePageEventRequestOptions, onRequest?: OnRequestCallback): (request: FormRequest, h: FormResponseToolkit) => ResponseObject | Promise<symbol | ResponseObject>;
|
|
5
5
|
export declare function makePostHandler(preparePageEventRequestOptions?: PreparePageEventRequestOptions, onRequest?: OnRequestCallback): (request: FormRequestPayload, h: FormResponseToolkit) => Promise<symbol | ResponseObject>;
|
|
6
6
|
export declare function getRoutes(getRouteOptions: RouteOptions<FormRequestRefs>, postRouteOptions: RouteOptions<FormRequestPayloadRefs>, preparePageEventRequestOptions?: PreparePageEventRequestOptions, onRequest?: OnRequestCallback): (ServerRoute<FormRequestRefs> | ServerRoute<FormRequestPayloadRefs>)[];
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { type RouteOptions, type ServerRoute } from '@hapi/hapi';
|
|
2
|
-
import { type OnRequestCallback } from '
|
|
3
|
-
import { type FormRequestPayloadRefs, type FormRequestRefs } from '
|
|
2
|
+
import { type OnRequestCallback } from '../../../../../server/plugins/engine/types.js';
|
|
3
|
+
import { type FormRequestPayloadRefs, type FormRequestRefs } from '../../../../../server/routes/types.js';
|
|
4
4
|
export declare function getRoutes(getRouteOptions: RouteOptions<FormRequestRefs>, postRouteOptions: RouteOptions<FormRequestPayloadRefs>, onRequest?: OnRequestCallback): (ServerRoute<FormRequestRefs> | ServerRoute<FormRequestPayloadRefs>)[];
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { type RouteOptions, type ServerRoute } from '@hapi/hapi';
|
|
2
|
-
import { type OnRequestCallback } from '
|
|
3
|
-
import { type FormRequestPayloadRefs, type FormRequestRefs } from '
|
|
2
|
+
import { type OnRequestCallback } from '../../../../../server/plugins/engine/types.js';
|
|
3
|
+
import { type FormRequestPayloadRefs, type FormRequestRefs } from '../../../../../server/routes/types.js';
|
|
4
4
|
export declare function getRoutes(getRouteOptions: RouteOptions<FormRequestRefs>, postRouteOptions: RouteOptions<FormRequestPayloadRefs>, onRequest?: OnRequestCallback): (ServerRoute<FormRequestRefs> | ServerRoute<FormRequestPayloadRefs>)[];
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export * as formsService from "
|
|
2
|
-
export * as formSubmissionService from "
|
|
3
|
-
export * as outputService from "
|
|
1
|
+
export * as formsService from "../../../../server/plugins/engine/services/formsService.js";
|
|
2
|
+
export * as formSubmissionService from "../../../../server/plugins/engine/services/formSubmissionService.js";
|
|
3
|
+
export * as outputService from "../../../../server/plugins/engine/services/notifyService.js";
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { type FormMetadata, type SubmitResponsePayload } from '@defra/forms-model';
|
|
2
|
-
import { type FormModel } from '
|
|
3
|
-
import { type DetailItem } from '
|
|
4
|
-
import { type FormContext } from '
|
|
5
|
-
import { type FormRequestPayload } from '
|
|
2
|
+
import { type FormModel } from '../../../../server/plugins/engine/models/index.js';
|
|
3
|
+
import { type DetailItem } from '../../../../server/plugins/engine/models/types.js';
|
|
4
|
+
import { type FormContext } from '../../../../server/plugins/engine/types.js';
|
|
5
|
+
import { type FormRequestPayload } from '../../../../server/routes/types.js';
|
|
6
6
|
/**
|
|
7
7
|
* Optional GOV.UK Notify service for consumers who want email notifications
|
|
8
8
|
* Can be disabled by not providing notifyTemplateId in config
|
|
@@ -10,5 +10,5 @@ export function initiateUpload(path: string, retrievalKey: string, mimeTypesCsv?
|
|
|
10
10
|
* @param {string} uploadId - the ID of the upload
|
|
11
11
|
*/
|
|
12
12
|
export function getUploadStatus(uploadId: string): Promise<UploadStatusResponse | undefined>;
|
|
13
|
-
import type { UploadInitiateResponse } from '
|
|
14
|
-
import type { UploadStatusResponse } from '
|
|
13
|
+
import type { UploadInitiateResponse } from '../../../../server/plugins/engine/types.js';
|
|
14
|
+
import type { UploadStatusResponse } from '../../../../server/plugins/engine/types.js';
|
|
@@ -48,6 +48,6 @@ export async function getUploadStatus(uploadId) {
|
|
|
48
48
|
}
|
|
49
49
|
|
|
50
50
|
/**
|
|
51
|
-
* @import { UploadInitiateResponse, UploadStatusResponse } from '
|
|
51
|
+
* @import { UploadInitiateResponse, UploadStatusResponse } from '../../../../server/plugins/engine/types.js'
|
|
52
52
|
*/
|
|
53
53
|
//# sourceMappingURL=uploadService.js.map
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
export type { AnyFormRequest, AnyRequest, CheckAnswers, ErrorMessageTemplate, ErrorMessageTemplateList, FeaturedFormPageViewModel, FileState, FilterFunction, FormAdapterSubmissionMessage, FormAdapterSubmissionMessageData, FormAdapterSubmissionMessageMeta, FormAdapterSubmissionMessageMetaSerialised, FormAdapterSubmissionMessagePayload, FormAdapterSubmissionService, FormContext, FormContextRequest, FormPageViewModel, FormPayload, FormPayloadParams, FormState, FormStateValue, FormSubmissionError, FormSubmissionState, FormValidationResult, FormValue, GlobalFunction, ItemDeletePageViewModel, OnRequestCallback, PageViewModel, PageViewModelBase, PluginOptions, PreparePageEventRequestOptions, RepeatItemState, RepeatListState, RepeaterSummaryPageViewModel, SummaryList, SummaryListAction, SummaryListRow, TempFileState, UploadInitiateResponse, UploadStatusFileResponse, UploadStatusResponse } from '
|
|
2
|
-
export { FileStatus, UploadStatus } from '
|
|
3
|
-
export type { Detail, DetailItem, DetailItemBase, DetailItemField, DetailItemRepeat, ExecutableCondition } from '
|
|
4
|
-
export type { BackLink, ComponentText, ComponentViewModel, Content, DateInputItem, DatePartsState, EastingNorthingState, Label, LatLongState, ListItem, ListItemLabel, MonthYearState, ViewModel } from '
|
|
5
|
-
export type { UkAddressState } from '
|
|
6
|
-
export type { FormParams, FormQuery, FormRequest, FormRequestPayload, FormRequestPayloadRefs, FormRequestRefs, FormResponseToolkit } from '
|
|
7
|
-
export { FormAction, FormStatus } from '
|
|
8
|
-
export type { FormSubmissionService, FormsService, OutputService, RouteConfig, Services } from '
|
|
9
|
-
export * from '
|
|
10
|
-
export { FormAdapterSubmissionSchemaVersion } from '
|
|
1
|
+
export type { AnyFormRequest, AnyRequest, CheckAnswers, ErrorMessageTemplate, ErrorMessageTemplateList, FeaturedFormPageViewModel, FileState, FilterFunction, FormAdapterSubmissionMessage, FormAdapterSubmissionMessageData, FormAdapterSubmissionMessageMeta, FormAdapterSubmissionMessageMetaSerialised, FormAdapterSubmissionMessagePayload, FormAdapterSubmissionService, FormContext, FormContextRequest, FormPageViewModel, FormPayload, FormPayloadParams, FormState, FormStateValue, FormSubmissionError, FormSubmissionState, FormValidationResult, FormValue, GlobalFunction, ItemDeletePageViewModel, OnRequestCallback, PageViewModel, PageViewModelBase, PluginOptions, PreparePageEventRequestOptions, RepeatItemState, RepeatListState, RepeaterSummaryPageViewModel, SummaryList, SummaryListAction, SummaryListRow, TempFileState, UploadInitiateResponse, UploadStatusFileResponse, UploadStatusResponse } from '../../../../server/plugins/engine/types.js';
|
|
2
|
+
export { FileStatus, UploadStatus } from '../../../../server/plugins/engine/types.js';
|
|
3
|
+
export type { Detail, DetailItem, DetailItemBase, DetailItemField, DetailItemRepeat, ExecutableCondition } from '../../../../server/plugins/engine/models/types.js';
|
|
4
|
+
export type { BackLink, ComponentText, ComponentViewModel, Content, DateInputItem, DatePartsState, EastingNorthingState, Label, LatLongState, ListItem, ListItemLabel, MonthYearState, ViewModel } from '../../../../server/plugins/engine/components/types.js';
|
|
5
|
+
export type { UkAddressState } from '../../../../server/plugins/engine/components/UkAddressField.js';
|
|
6
|
+
export type { FormParams, FormQuery, FormRequest, FormRequestPayload, FormRequestPayloadRefs, FormRequestRefs, FormResponseToolkit } from '../../../../server/routes/types.js';
|
|
7
|
+
export { FormAction, FormStatus } from '../../../../server/routes/types.js';
|
|
8
|
+
export type { FormSubmissionService, FormsService, OutputService, RouteConfig, Services } from '../../../../server/types.js';
|
|
9
|
+
export * from '../../../../server/plugins/engine/types/schema.js';
|
|
10
|
+
export { FormAdapterSubmissionSchemaVersion } from '../../../../server/plugins/engine/types/enums.js';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import Joi from 'joi';
|
|
2
|
-
import { type FormAdapterSubmissionMessageData, type FormAdapterSubmissionMessageMeta, type FormAdapterSubmissionMessagePayload, type FormAdapterSubmissionMessageResult } from '
|
|
2
|
+
import { type FormAdapterSubmissionMessageData, type FormAdapterSubmissionMessageMeta, type FormAdapterSubmissionMessagePayload, type FormAdapterSubmissionMessageResult } from '../../../../server/plugins/engine/types.js';
|
|
3
3
|
export declare const formAdapterSubmissionMessageMetaSchema: Joi.ObjectSchema<FormAdapterSubmissionMessageMeta>;
|
|
4
4
|
export declare const formAdapterSubmissionMessageDataSchema: Joi.ObjectSchema<FormAdapterSubmissionMessageData>;
|
|
5
5
|
export declare const formAdapterSubmissionMessageResultSchema: Joi.ObjectSchema<FormAdapterSubmissionMessageResult>;
|
|
@@ -1,23 +1,32 @@
|
|
|
1
1
|
import { type ComponentDef, type Event, type FormVersionMetadata, type Item, type List, type Page, type PaymentFieldComponent, type UkAddressFieldComponent } from '@defra/forms-model';
|
|
2
2
|
import { type PluginProperties, type Request, type ResponseObject } from '@hapi/hapi';
|
|
3
3
|
import { type JoiExpression, type ValidationErrorItem } from 'joi';
|
|
4
|
-
import { type UkAddressState } from '
|
|
5
|
-
import { type Component } from '
|
|
6
|
-
import { type FileUploadField, type PaymentField } from '
|
|
7
|
-
import { type BackLink, type ComponentText, type ComponentViewModel, type DatePartsState, type EastingNorthingState, type LatLongState, type MonthYearState } from '
|
|
8
|
-
import { type FormModel } from '
|
|
9
|
-
import { type DetailItemField } from '
|
|
10
|
-
import { type PageController } from '
|
|
11
|
-
import { type PageControllerClass } from '
|
|
12
|
-
import { type QuestionPageController } from '
|
|
13
|
-
import { type FileStatus, type FormAdapterSubmissionSchemaVersion, type UploadStatus } from '
|
|
14
|
-
import { type ViewContext } from '
|
|
15
|
-
import { type FormAction, type FormRequest, type FormRequestPayload, type FormResponseToolkit, type FormStatus } from '
|
|
16
|
-
import { type CacheService } from '
|
|
17
|
-
import { type RequestOptions } from '
|
|
18
|
-
import { type Services } from '
|
|
4
|
+
import { type UkAddressState } from '../../../server/plugins/engine/components/UkAddressField.js';
|
|
5
|
+
import { type Component } from '../../../server/plugins/engine/components/helpers/components.js';
|
|
6
|
+
import { type FileUploadField, type PaymentField } from '../../../server/plugins/engine/components/index.js';
|
|
7
|
+
import { type BackLink, type ComponentText, type ComponentViewModel, type DatePartsState, type EastingNorthingState, type LatLongState, type MonthYearState } from '../../../server/plugins/engine/components/types.js';
|
|
8
|
+
import { type FormModel } from '../../../server/plugins/engine/models/index.js';
|
|
9
|
+
import { type DetailItemField } from '../../../server/plugins/engine/models/types.js';
|
|
10
|
+
import { type PageController } from '../../../server/plugins/engine/pageControllers/PageController.js';
|
|
11
|
+
import { type PageControllerClass } from '../../../server/plugins/engine/pageControllers/helpers/pages.js';
|
|
12
|
+
import { type QuestionPageController } from '../../../server/plugins/engine/pageControllers/index.js';
|
|
13
|
+
import { type FileStatus, type FormAdapterSubmissionSchemaVersion, type UploadStatus } from '../../../server/plugins/engine/types/enums.js';
|
|
14
|
+
import { type ViewContext } from '../../../server/plugins/nunjucks/types.js';
|
|
15
|
+
import { type FormAction, type FormRequest, type FormRequestPayload, type FormResponseToolkit, type FormStatus } from '../../../server/routes/types.js';
|
|
16
|
+
import { type CacheService } from '../../../server/services/cacheService.js';
|
|
17
|
+
import { type RequestOptions } from '../../../server/services/httpService.js';
|
|
18
|
+
import { type Services } from '../../../server/types.js';
|
|
19
19
|
export type AnyFormRequest = FormRequest | FormRequestPayload;
|
|
20
20
|
export type AnyRequest = Request | AnyFormRequest;
|
|
21
|
+
export interface CacheRequest {
|
|
22
|
+
yar: {
|
|
23
|
+
id: string | undefined;
|
|
24
|
+
};
|
|
25
|
+
params: {
|
|
26
|
+
slug?: string;
|
|
27
|
+
state?: string;
|
|
28
|
+
};
|
|
29
|
+
}
|
|
21
30
|
/**
|
|
22
31
|
* Form submission state stores the following in Redis:
|
|
23
32
|
* Props containing user's submitted values as `{ [inputId]: value }` or as `{ [sectionName]: { [inputName]: value } }`
|
|
@@ -143,7 +152,7 @@ export interface UploadInitiateResponse {
|
|
|
143
152
|
uploadUrl: string;
|
|
144
153
|
statusUrl: string;
|
|
145
154
|
}
|
|
146
|
-
export { FileStatus, UploadStatus } from '
|
|
155
|
+
export { FileStatus, UploadStatus } from '../../../server/plugins/engine/types/enums.js';
|
|
147
156
|
export type UploadState = FileState[];
|
|
148
157
|
export type FileUpload = {
|
|
149
158
|
fileId: string;
|