@defra/forms-model 3.0.666 → 3.0.668

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.
@@ -35,6 +35,12 @@ export let GeospatialFieldOptionsCountryEnum = /*#__PURE__*/function (Geospatial
35
35
  GeospatialFieldOptionsCountryEnum["Wales"] = "wales";
36
36
  return GeospatialFieldOptionsCountryEnum;
37
37
  }({});
38
+ export let GeospatialFieldGeometryTypesEnum = /*#__PURE__*/function (GeospatialFieldGeometryTypesEnum) {
39
+ GeospatialFieldGeometryTypesEnum["Point"] = "point";
40
+ GeospatialFieldGeometryTypesEnum["Line"] = "line";
41
+ GeospatialFieldGeometryTypesEnum["Shape"] = "shape";
42
+ return GeospatialFieldGeometryTypesEnum;
43
+ }({});
38
44
  export const PreviewTypeEnum = {
39
45
  ...ComponentType,
40
46
  Question: 'Question',
@@ -1 +1 @@
1
- {"version":3,"file":"enums.js","names":["ComponentType","GeospatialFieldOptionsCountryEnum","PreviewTypeEnum","Question","ListSortable"],"sources":["../../../src/components/enums.ts"],"sourcesContent":["export enum ComponentType {\n TextField = 'TextField',\n MultilineTextField = 'MultilineTextField',\n YesNoField = 'YesNoField',\n DatePartsField = 'DatePartsField',\n MonthYearField = 'MonthYearField',\n SelectField = 'SelectField',\n AutocompleteField = 'AutocompleteField',\n RadiosField = 'RadiosField',\n CheckboxesField = 'CheckboxesField',\n NumberField = 'NumberField',\n UkAddressField = 'UkAddressField',\n TelephoneNumberField = 'TelephoneNumberField',\n EmailAddressField = 'EmailAddressField',\n Html = 'Html',\n InsetText = 'InsetText',\n Details = 'Details',\n List = 'List',\n Markdown = 'Markdown',\n FileUploadField = 'FileUploadField',\n DeclarationField = 'DeclarationField',\n EastingNorthingField = 'EastingNorthingField',\n OsGridRefField = 'OsGridRefField',\n NationalGridFieldNumberField = 'NationalGridFieldNumberField',\n LatLongField = 'LatLongField',\n HiddenField = 'HiddenField',\n PaymentField = 'PaymentField',\n GeospatialField = 'GeospatialField'\n}\n\nexport enum GeospatialFieldOptionsCountryEnum {\n England = 'england',\n NorthernIreland = 'northern-ireland',\n Scotland = 'scotland',\n Wales = 'wales'\n}\n\nexport const PreviewTypeEnum = {\n ...ComponentType,\n Question: 'Question',\n ListSortable: 'ListSortable'\n} as Record<string, string>\n"],"mappings":"AAAA,WAAYA,aAAa,0BAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAA,OAAbA,aAAa;AAAA;AA8BzB,WAAYC,iCAAiC,0BAAjCA,iCAAiC;EAAjCA,iCAAiC;EAAjCA,iCAAiC;EAAjCA,iCAAiC;EAAjCA,iCAAiC;EAAA,OAAjCA,iCAAiC;AAAA;AAO7C,OAAO,MAAMC,eAAe,GAAG;EAC7B,GAAGF,aAAa;EAChBG,QAAQ,EAAE,UAAU;EACpBC,YAAY,EAAE;AAChB,CAA2B","ignoreList":[]}
1
+ {"version":3,"file":"enums.js","names":["ComponentType","GeospatialFieldOptionsCountryEnum","GeospatialFieldGeometryTypesEnum","PreviewTypeEnum","Question","ListSortable"],"sources":["../../../src/components/enums.ts"],"sourcesContent":["export enum ComponentType {\n TextField = 'TextField',\n MultilineTextField = 'MultilineTextField',\n YesNoField = 'YesNoField',\n DatePartsField = 'DatePartsField',\n MonthYearField = 'MonthYearField',\n SelectField = 'SelectField',\n AutocompleteField = 'AutocompleteField',\n RadiosField = 'RadiosField',\n CheckboxesField = 'CheckboxesField',\n NumberField = 'NumberField',\n UkAddressField = 'UkAddressField',\n TelephoneNumberField = 'TelephoneNumberField',\n EmailAddressField = 'EmailAddressField',\n Html = 'Html',\n InsetText = 'InsetText',\n Details = 'Details',\n List = 'List',\n Markdown = 'Markdown',\n FileUploadField = 'FileUploadField',\n DeclarationField = 'DeclarationField',\n EastingNorthingField = 'EastingNorthingField',\n OsGridRefField = 'OsGridRefField',\n NationalGridFieldNumberField = 'NationalGridFieldNumberField',\n LatLongField = 'LatLongField',\n HiddenField = 'HiddenField',\n PaymentField = 'PaymentField',\n GeospatialField = 'GeospatialField'\n}\n\nexport enum GeospatialFieldOptionsCountryEnum {\n England = 'england',\n NorthernIreland = 'northern-ireland',\n Scotland = 'scotland',\n Wales = 'wales'\n}\n\nexport enum GeospatialFieldGeometryTypesEnum {\n Point = 'point',\n Line = 'line',\n Shape = 'shape'\n}\n\nexport const PreviewTypeEnum = {\n ...ComponentType,\n Question: 'Question',\n ListSortable: 'ListSortable'\n} as Record<string, string>\n"],"mappings":"AAAA,WAAYA,aAAa,0BAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAA,OAAbA,aAAa;AAAA;AA8BzB,WAAYC,iCAAiC,0BAAjCA,iCAAiC;EAAjCA,iCAAiC;EAAjCA,iCAAiC;EAAjCA,iCAAiC;EAAjCA,iCAAiC;EAAA,OAAjCA,iCAAiC;AAAA;AAO7C,WAAYC,gCAAgC,0BAAhCA,gCAAgC;EAAhCA,gCAAgC;EAAhCA,gCAAgC;EAAhCA,gCAAgC;EAAA,OAAhCA,gCAAgC;AAAA;AAM5C,OAAO,MAAMC,eAAe,GAAG;EAC7B,GAAGH,aAAa;EAChBI,QAAQ,EAAE,UAAU;EACpBC,YAAY,EAAE;AAChB,CAA2B","ignoreList":[]}
@@ -1,5 +1,5 @@
1
1
  export { ComponentTypes } from "./component-types.js";
2
- export { ComponentType, GeospatialFieldOptionsCountryEnum, PreviewTypeEnum } from "./enums.js";
2
+ export { ComponentType, GeospatialFieldGeometryTypesEnum, GeospatialFieldOptionsCountryEnum, PreviewTypeEnum } from "./enums.js";
3
3
  export { allDocumentTypes, allImageTypes, allTabularDataTypes } from "./file-types.js";
4
4
  export { getComponentDefaults, hasConditionSupport, hasContent, hasContentField, hasFormField, hasHint, hasInputField, hasListField, hasSelectionFields, hasTitle, isConditionalRevealType, isConditionalType, isContentType, isFormType, isListType } from "./helpers.js";
5
5
  export { getYesNoList, yesNoListId, yesNoListName, yesNoListNoItemId, yesNoListYesItemId } from "./yes-no-helper.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["ComponentTypes","ComponentType","GeospatialFieldOptionsCountryEnum","PreviewTypeEnum","allDocumentTypes","allImageTypes","allTabularDataTypes","getComponentDefaults","hasConditionSupport","hasContent","hasContentField","hasFormField","hasHint","hasInputField","hasListField","hasSelectionFields","hasTitle","isConditionalRevealType","isConditionalType","isContentType","isFormType","isListType","getYesNoList","yesNoListId","yesNoListName","yesNoListNoItemId","yesNoListYesItemId"],"sources":["../../../src/components/index.ts"],"sourcesContent":["export { ComponentTypes } from '~/src/components/component-types.js'\nexport {\n ComponentType,\n GeospatialFieldOptionsCountryEnum,\n PreviewTypeEnum\n} from '~/src/components/enums.js'\nexport {\n allDocumentTypes,\n allImageTypes,\n allTabularDataTypes\n} from '~/src/components/file-types.js'\nexport {\n getComponentDefaults,\n hasConditionSupport,\n hasContent,\n hasContentField,\n hasFormField,\n hasHint,\n hasInputField,\n hasListField,\n hasSelectionFields,\n hasTitle,\n isConditionalRevealType,\n isConditionalType,\n isContentType,\n isFormType,\n isListType\n} from '~/src/components/helpers.js'\nexport {\n getYesNoList,\n yesNoListId,\n yesNoListName,\n yesNoListNoItemId,\n yesNoListYesItemId\n} from '~/src/components/yes-no-helper.js'\n"],"mappings":"AAAA,SAASA,cAAc;AACvB,SACEC,aAAa,EACbC,iCAAiC,EACjCC,eAAe;AAEjB,SACEC,gBAAgB,EAChBC,aAAa,EACbC,mBAAmB;AAErB,SACEC,oBAAoB,EACpBC,mBAAmB,EACnBC,UAAU,EACVC,eAAe,EACfC,YAAY,EACZC,OAAO,EACPC,aAAa,EACbC,YAAY,EACZC,kBAAkB,EAClBC,QAAQ,EACRC,uBAAuB,EACvBC,iBAAiB,EACjBC,aAAa,EACbC,UAAU,EACVC,UAAU;AAEZ,SACEC,YAAY,EACZC,WAAW,EACXC,aAAa,EACbC,iBAAiB,EACjBC,kBAAkB","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["ComponentTypes","ComponentType","GeospatialFieldGeometryTypesEnum","GeospatialFieldOptionsCountryEnum","PreviewTypeEnum","allDocumentTypes","allImageTypes","allTabularDataTypes","getComponentDefaults","hasConditionSupport","hasContent","hasContentField","hasFormField","hasHint","hasInputField","hasListField","hasSelectionFields","hasTitle","isConditionalRevealType","isConditionalType","isContentType","isFormType","isListType","getYesNoList","yesNoListId","yesNoListName","yesNoListNoItemId","yesNoListYesItemId"],"sources":["../../../src/components/index.ts"],"sourcesContent":["export { ComponentTypes } from '~/src/components/component-types.js'\nexport {\n ComponentType,\n GeospatialFieldGeometryTypesEnum,\n GeospatialFieldOptionsCountryEnum,\n PreviewTypeEnum\n} from '~/src/components/enums.js'\nexport {\n allDocumentTypes,\n allImageTypes,\n allTabularDataTypes\n} from '~/src/components/file-types.js'\nexport {\n getComponentDefaults,\n hasConditionSupport,\n hasContent,\n hasContentField,\n hasFormField,\n hasHint,\n hasInputField,\n hasListField,\n hasSelectionFields,\n hasTitle,\n isConditionalRevealType,\n isConditionalType,\n isContentType,\n isFormType,\n isListType\n} from '~/src/components/helpers.js'\nexport {\n getYesNoList,\n yesNoListId,\n yesNoListName,\n yesNoListNoItemId,\n yesNoListYesItemId\n} from '~/src/components/yes-no-helper.js'\n"],"mappings":"AAAA,SAASA,cAAc;AACvB,SACEC,aAAa,EACbC,gCAAgC,EAChCC,iCAAiC,EACjCC,eAAe;AAEjB,SACEC,gBAAgB,EAChBC,aAAa,EACbC,mBAAmB;AAErB,SACEC,oBAAoB,EACpBC,mBAAmB,EACnBC,UAAU,EACVC,eAAe,EACfC,YAAY,EACZC,OAAO,EACPC,aAAa,EACbC,YAAY,EACZC,kBAAkB,EAClBC,QAAQ,EACRC,uBAAuB,EACvBC,iBAAiB,EACjBC,aAAa,EACbC,UAAU,EACVC,UAAU;AAEZ,SACEC,YAAY,EACZC,WAAW,EACXC,aAAa,EACbC,iBAAiB,EACjBC,kBAAkB","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","names":[],"sources":["../../../src/components/types.ts"],"sourcesContent":["import { type LanguageMessages } from 'joi'\n\nimport {\n type ComponentType,\n type PreviewTypeEnum\n} from '~/src/components/enums.js'\nimport {\n type ListTypeContent,\n type ListTypeOption\n} from '~/src/form/form-definition/types.js'\n\nexport type ConditionalComponentType = Exclude<\n ConditionalComponentsDef['type'],\n ContentComponentsDef\n>\n\n/**\n * Types for Components JSON structure which are expected by engine and turned into actual form input/content/lists\n */\n\ninterface FormFieldBase {\n id?: string\n type: FormComponentsDef['type']\n shortDescription?: string\n name: string\n title: string\n hint?: string\n options: {\n required?: boolean\n optionalText?: boolean\n classes?: string\n customValidationMessages?: LanguageMessages\n instructionText?: string\n }\n}\n\ninterface ListFieldBase extends FormFieldBase {\n type:\n | ComponentType.AutocompleteField\n | ComponentType.CheckboxesField\n | ComponentType.RadiosField\n | ComponentType.SelectField\n list: string\n options: FormFieldBase['options'] & {\n type?: ListTypeContent\n }\n}\n\ninterface ContentFieldBase {\n id?: string\n type:\n | ComponentType.Details\n | ComponentType.Html\n | ComponentType.Markdown\n | ComponentType.InsetText\n | ComponentType.List\n name: string\n title: string\n options?: {\n required?: undefined\n optionalText?: undefined\n }\n}\n\ninterface DateFieldBase extends FormFieldBase {\n type: ComponentType.DatePartsField | ComponentType.MonthYearField\n name: string\n title: string\n hint?: string\n options: FormFieldBase['options'] & {\n maxDaysInPast?: number\n maxDaysInFuture?: number\n }\n}\n\n// Text Fields\nexport interface TextFieldComponent extends FormFieldBase {\n type: ComponentType.TextField\n options: FormFieldBase['options'] & {\n autocomplete?: string\n condition?: string\n customValidationMessage?: string\n }\n schema: {\n max?: number\n min?: number\n length?: number\n regex?: string\n }\n}\n\nexport interface EmailAddressFieldComponent extends FormFieldBase {\n type: ComponentType.EmailAddressField\n options: FormFieldBase['options'] & {\n condition?: string\n customValidationMessage?: string\n }\n}\n\nexport interface NumberFieldComponent extends FormFieldBase {\n type: ComponentType.NumberField\n options: FormFieldBase['options'] & {\n prefix?: string\n suffix?: string\n autocomplete?: string\n condition?: string\n customValidationMessage?: string\n }\n schema: {\n max?: number\n min?: number\n precision?: number\n minPrecision?: number\n minLength?: number\n maxLength?: number\n }\n}\n\nexport interface TelephoneNumberFieldComponent extends FormFieldBase {\n type: ComponentType.TelephoneNumberField\n options: FormFieldBase['options'] & {\n condition?: string\n customValidationMessage?: string\n }\n}\n\nexport interface FileUploadFieldComponent extends FormFieldBase {\n type: ComponentType.FileUploadField\n name: string\n title: string\n hint?: string\n options: FormFieldBase['options'] & {\n accept?: string\n }\n schema: {\n max?: number\n min?: number\n length?: number\n }\n}\n\nexport interface YesNoFieldComponent extends FormFieldBase {\n type: ComponentType.YesNoField\n options: FormFieldBase['options'] & {\n condition?: string\n }\n}\n\nexport interface DeclarationFieldComponent extends FormFieldBase {\n type: ComponentType.DeclarationField\n content: string\n options: FormFieldBase['options'] & {\n condition?: string\n declarationConfirmationLabel?: string\n }\n}\n\nexport interface MultilineTextFieldComponent extends FormFieldBase {\n type: ComponentType.MultilineTextField\n options: FormFieldBase['options'] & {\n autocomplete?: string\n condition?: string\n customValidationMessage?: string\n rows?: number\n maxWords?: number\n }\n schema: {\n max?: number\n min?: number\n length?: number\n regex?: string\n }\n}\n\nexport interface UkAddressFieldComponent extends FormFieldBase {\n type: ComponentType.UkAddressField\n options: FormFieldBase['options'] & {\n hideTitle?: boolean\n usePostcodeLookup?: boolean\n }\n}\n\n// Precise Location Fields\nexport interface EastingNorthingFieldComponent extends FormFieldBase {\n type: ComponentType.EastingNorthingField\n options: FormFieldBase['options'] & {\n condition?: string\n customValidationMessage?: string\n }\n schema?: {\n easting?: {\n min?: number\n max?: number\n }\n northing?: {\n min?: number\n max?: number\n }\n }\n}\n\nexport interface OsGridRefFieldComponent extends FormFieldBase {\n type: ComponentType.OsGridRefField\n options: FormFieldBase['options'] & {\n condition?: string\n customValidationMessage?: string\n }\n}\n\nexport interface NationalGridFieldNumberFieldComponent extends FormFieldBase {\n type: ComponentType.NationalGridFieldNumberField\n options: FormFieldBase['options'] & {\n condition?: string\n customValidationMessage?: string\n }\n}\n\nexport interface LatLongFieldComponent extends FormFieldBase {\n type: ComponentType.LatLongField\n options: FormFieldBase['options'] & {\n condition?: string\n customValidationMessage?: string\n }\n schema?: {\n latitude?: {\n min?: number\n max?: number\n }\n longitude?: {\n min?: number\n max?: number\n }\n }\n}\n\nexport interface HiddenFieldComponent extends FormFieldBase {\n type: ComponentType.HiddenField\n options: FormFieldBase['options'] & {\n condition?: string\n }\n}\n\n// Date Fields\nexport interface DatePartsFieldComponent extends DateFieldBase {\n type: ComponentType.DatePartsField\n options: DateFieldBase['options'] & {\n condition?: string\n }\n}\n\nexport interface MonthYearFieldComponent extends DateFieldBase {\n type: ComponentType.MonthYearField\n options: DateFieldBase['options'] & {\n customValidationMessage?: string\n }\n}\n\nexport interface PaymentFieldComponent extends FormFieldBase {\n type: ComponentType.PaymentField\n options: FormFieldBase['options'] & {\n amount: number\n description: string\n conditionalAmounts?: {\n condition: string\n amount: number\n }[]\n emailField?: string\n }\n}\n\nexport type GeospatialFieldOptionsCountry =\n | 'england'\n | 'wales'\n | 'northern-ireland'\n | 'scotland'\n\nexport interface GeospatialFieldComponent extends FormFieldBase {\n type: ComponentType.GeospatialField\n options: FormFieldBase['options'] & {\n condition?: string\n countries?: GeospatialFieldOptionsCountry[]\n }\n}\n\n// Content Fields\nexport interface DetailsComponent extends ContentFieldBase {\n type: ComponentType.Details\n content: string\n options: ContentFieldBase['options'] & {\n condition?: string\n }\n}\n\nexport interface HtmlComponent extends ContentFieldBase {\n type: ComponentType.Html\n content: string\n options: ContentFieldBase['options'] & {\n condition?: string\n }\n}\n\nexport interface MarkdownComponent extends ContentFieldBase {\n type: ComponentType.Markdown\n content: string\n options: ContentFieldBase['options'] & {\n condition?: string\n }\n}\n\nexport interface InsetTextComponent extends ContentFieldBase {\n type: ComponentType.InsetText\n content: string\n}\n\nexport interface ListComponent extends ContentFieldBase {\n type: ComponentType.List\n hint?: string\n list: string\n options: ContentFieldBase['options'] & {\n type?: ListTypeOption\n classes?: string\n hideTitle?: boolean\n bold?: boolean\n }\n}\n\nexport interface AutocompleteFieldComponent extends ListFieldBase {\n type: ComponentType.AutocompleteField\n options: ListFieldBase['options'] & {\n condition?: string\n }\n}\n\nexport interface CheckboxesFieldComponent extends ListFieldBase {\n type: ComponentType.CheckboxesField\n options: ListFieldBase['options'] & {\n bold?: boolean\n condition?: string\n }\n schema?: {\n max?: number\n min?: number\n length?: number\n }\n}\n\nexport interface RadiosFieldComponent extends ListFieldBase {\n type: ComponentType.RadiosField\n options: ListFieldBase['options'] & {\n bold?: boolean\n condition?: string\n }\n}\n\nexport interface SelectFieldComponent extends ListFieldBase {\n type: ComponentType.SelectField\n options: ListFieldBase['options'] & {\n autocomplete?: string\n condition?: string\n }\n}\n\nexport type ComponentDef = FormComponentsDef | ContentComponentsDef\n\n// Components that render form fields\nexport type FormComponentsDef =\n | InputFieldsComponentsDef\n | SelectionComponentsDef\n\n// Components that render inputs\nexport type InputFieldsComponentsDef =\n | TextFieldComponent\n | EmailAddressFieldComponent\n | NumberFieldComponent\n | MultilineTextFieldComponent\n | TelephoneNumberFieldComponent\n | MonthYearFieldComponent\n | DatePartsFieldComponent\n | UkAddressFieldComponent\n | FileUploadFieldComponent\n | DeclarationFieldComponent\n | EastingNorthingFieldComponent\n | OsGridRefFieldComponent\n | NationalGridFieldNumberFieldComponent\n | LatLongFieldComponent\n | HiddenFieldComponent\n | PaymentFieldComponent\n | GeospatialFieldComponent\n\n// Components that render content\nexport type ContentComponentsDef =\n | DetailsComponent\n | HtmlComponent\n | MarkdownComponent\n | InsetTextComponent\n | ListComponent\n\n// Components that render lists\nexport type ListComponentsDef =\n | Exclude<SelectionComponentsDef, YesNoFieldComponent>\n | ListComponent\n\n// Components that have selection fields\nexport type SelectionComponentsDef =\n | AutocompleteFieldComponent\n | CheckboxesFieldComponent\n | RadiosFieldComponent\n | SelectFieldComponent\n | YesNoFieldComponent\n\n// Components that have condition support\nexport type ConditionalComponentsDef = Exclude<\n ComponentDef,\n | InsetTextComponent\n | ListComponent\n | MonthYearFieldComponent\n | UkAddressFieldComponent\n | FileUploadFieldComponent\n | PaymentFieldComponent\n>\n\nexport type PreviewType = keyof typeof PreviewTypeEnum\n"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"file":"types.js","names":[],"sources":["../../../src/components/types.ts"],"sourcesContent":["import { type LanguageMessages } from 'joi'\n\nimport {\n type ComponentType,\n type GeospatialFieldGeometryTypesEnum,\n type PreviewTypeEnum\n} from '~/src/components/enums.js'\nimport {\n type ListTypeContent,\n type ListTypeOption\n} from '~/src/form/form-definition/types.js'\n\nexport type ConditionalComponentType = Exclude<\n ConditionalComponentsDef['type'],\n ContentComponentsDef\n>\n\n/**\n * Types for Components JSON structure which are expected by engine and turned into actual form input/content/lists\n */\n\ninterface FormFieldBase {\n id?: string\n type: FormComponentsDef['type']\n shortDescription?: string\n name: string\n title: string\n hint?: string\n options: {\n required?: boolean\n optionalText?: boolean\n classes?: string\n customValidationMessages?: LanguageMessages\n instructionText?: string\n }\n}\n\ninterface ListFieldBase extends FormFieldBase {\n type:\n | ComponentType.AutocompleteField\n | ComponentType.CheckboxesField\n | ComponentType.RadiosField\n | ComponentType.SelectField\n list: string\n options: FormFieldBase['options'] & {\n type?: ListTypeContent\n }\n}\n\ninterface ContentFieldBase {\n id?: string\n type:\n | ComponentType.Details\n | ComponentType.Html\n | ComponentType.Markdown\n | ComponentType.InsetText\n | ComponentType.List\n name: string\n title: string\n options?: {\n required?: undefined\n optionalText?: undefined\n }\n}\n\ninterface DateFieldBase extends FormFieldBase {\n type: ComponentType.DatePartsField | ComponentType.MonthYearField\n name: string\n title: string\n hint?: string\n options: FormFieldBase['options'] & {\n maxDaysInPast?: number\n maxDaysInFuture?: number\n }\n}\n\n// Text Fields\nexport interface TextFieldComponent extends FormFieldBase {\n type: ComponentType.TextField\n options: FormFieldBase['options'] & {\n autocomplete?: string\n condition?: string\n customValidationMessage?: string\n }\n schema: {\n max?: number\n min?: number\n length?: number\n regex?: string\n }\n}\n\nexport interface EmailAddressFieldComponent extends FormFieldBase {\n type: ComponentType.EmailAddressField\n options: FormFieldBase['options'] & {\n condition?: string\n customValidationMessage?: string\n }\n}\n\nexport interface NumberFieldComponent extends FormFieldBase {\n type: ComponentType.NumberField\n options: FormFieldBase['options'] & {\n prefix?: string\n suffix?: string\n autocomplete?: string\n condition?: string\n customValidationMessage?: string\n }\n schema: {\n max?: number\n min?: number\n precision?: number\n minPrecision?: number\n minLength?: number\n maxLength?: number\n }\n}\n\nexport interface TelephoneNumberFieldComponent extends FormFieldBase {\n type: ComponentType.TelephoneNumberField\n options: FormFieldBase['options'] & {\n condition?: string\n customValidationMessage?: string\n }\n}\n\nexport interface FileUploadFieldComponent extends FormFieldBase {\n type: ComponentType.FileUploadField\n name: string\n title: string\n hint?: string\n options: FormFieldBase['options'] & {\n accept?: string\n }\n schema: {\n max?: number\n min?: number\n length?: number\n }\n}\n\nexport interface YesNoFieldComponent extends FormFieldBase {\n type: ComponentType.YesNoField\n options: FormFieldBase['options'] & {\n condition?: string\n }\n}\n\nexport interface DeclarationFieldComponent extends FormFieldBase {\n type: ComponentType.DeclarationField\n content: string\n options: FormFieldBase['options'] & {\n condition?: string\n declarationConfirmationLabel?: string\n }\n}\n\nexport interface MultilineTextFieldComponent extends FormFieldBase {\n type: ComponentType.MultilineTextField\n options: FormFieldBase['options'] & {\n autocomplete?: string\n condition?: string\n customValidationMessage?: string\n rows?: number\n maxWords?: number\n }\n schema: {\n max?: number\n min?: number\n length?: number\n regex?: string\n }\n}\n\nexport interface UkAddressFieldComponent extends FormFieldBase {\n type: ComponentType.UkAddressField\n options: FormFieldBase['options'] & {\n hideTitle?: boolean\n usePostcodeLookup?: boolean\n }\n}\n\n// Precise Location Fields\nexport interface EastingNorthingFieldComponent extends FormFieldBase {\n type: ComponentType.EastingNorthingField\n options: FormFieldBase['options'] & {\n condition?: string\n customValidationMessage?: string\n }\n schema?: {\n easting?: {\n min?: number\n max?: number\n }\n northing?: {\n min?: number\n max?: number\n }\n }\n}\n\nexport interface OsGridRefFieldComponent extends FormFieldBase {\n type: ComponentType.OsGridRefField\n options: FormFieldBase['options'] & {\n condition?: string\n customValidationMessage?: string\n }\n}\n\nexport interface NationalGridFieldNumberFieldComponent extends FormFieldBase {\n type: ComponentType.NationalGridFieldNumberField\n options: FormFieldBase['options'] & {\n condition?: string\n customValidationMessage?: string\n }\n}\n\nexport interface LatLongFieldComponent extends FormFieldBase {\n type: ComponentType.LatLongField\n options: FormFieldBase['options'] & {\n condition?: string\n customValidationMessage?: string\n }\n schema?: {\n latitude?: {\n min?: number\n max?: number\n }\n longitude?: {\n min?: number\n max?: number\n }\n }\n}\n\nexport interface HiddenFieldComponent extends FormFieldBase {\n type: ComponentType.HiddenField\n options: FormFieldBase['options'] & {\n condition?: string\n }\n}\n\n// Date Fields\nexport interface DatePartsFieldComponent extends DateFieldBase {\n type: ComponentType.DatePartsField\n options: DateFieldBase['options'] & {\n condition?: string\n }\n}\n\nexport interface MonthYearFieldComponent extends DateFieldBase {\n type: ComponentType.MonthYearField\n options: DateFieldBase['options'] & {\n customValidationMessage?: string\n }\n}\n\nexport interface PaymentFieldComponent extends FormFieldBase {\n type: ComponentType.PaymentField\n options: FormFieldBase['options'] & {\n amount: number\n description: string\n conditionalAmounts?: {\n condition: string\n amount: number\n }[]\n emailField?: string\n }\n}\n\nexport type GeospatialFieldOptionsCountry =\n | 'england'\n | 'wales'\n | 'northern-ireland'\n | 'scotland'\n\nexport interface GeospatialFieldComponent extends FormFieldBase {\n type: ComponentType.GeospatialField\n options: FormFieldBase['options'] & {\n condition?: string\n countries?: GeospatialFieldOptionsCountry[]\n geometryTypes?: GeospatialFieldGeometryTypesEnum[]\n }\n schema?: {\n max?: number\n min?: number\n length?: number\n }\n}\n\n// Content Fields\nexport interface DetailsComponent extends ContentFieldBase {\n type: ComponentType.Details\n content: string\n options: ContentFieldBase['options'] & {\n condition?: string\n }\n}\n\nexport interface HtmlComponent extends ContentFieldBase {\n type: ComponentType.Html\n content: string\n options: ContentFieldBase['options'] & {\n condition?: string\n }\n}\n\nexport interface MarkdownComponent extends ContentFieldBase {\n type: ComponentType.Markdown\n content: string\n options: ContentFieldBase['options'] & {\n condition?: string\n }\n}\n\nexport interface InsetTextComponent extends ContentFieldBase {\n type: ComponentType.InsetText\n content: string\n}\n\nexport interface ListComponent extends ContentFieldBase {\n type: ComponentType.List\n hint?: string\n list: string\n options: ContentFieldBase['options'] & {\n type?: ListTypeOption\n classes?: string\n hideTitle?: boolean\n bold?: boolean\n }\n}\n\nexport interface AutocompleteFieldComponent extends ListFieldBase {\n type: ComponentType.AutocompleteField\n options: ListFieldBase['options'] & {\n condition?: string\n }\n}\n\nexport interface CheckboxesFieldComponent extends ListFieldBase {\n type: ComponentType.CheckboxesField\n options: ListFieldBase['options'] & {\n bold?: boolean\n condition?: string\n }\n schema?: {\n max?: number\n min?: number\n length?: number\n }\n}\n\nexport interface RadiosFieldComponent extends ListFieldBase {\n type: ComponentType.RadiosField\n options: ListFieldBase['options'] & {\n bold?: boolean\n condition?: string\n }\n}\n\nexport interface SelectFieldComponent extends ListFieldBase {\n type: ComponentType.SelectField\n options: ListFieldBase['options'] & {\n autocomplete?: string\n condition?: string\n }\n}\n\nexport type ComponentDef = FormComponentsDef | ContentComponentsDef\n\n// Components that render form fields\nexport type FormComponentsDef =\n | InputFieldsComponentsDef\n | SelectionComponentsDef\n\n// Components that render inputs\nexport type InputFieldsComponentsDef =\n | TextFieldComponent\n | EmailAddressFieldComponent\n | NumberFieldComponent\n | MultilineTextFieldComponent\n | TelephoneNumberFieldComponent\n | MonthYearFieldComponent\n | DatePartsFieldComponent\n | UkAddressFieldComponent\n | FileUploadFieldComponent\n | DeclarationFieldComponent\n | EastingNorthingFieldComponent\n | OsGridRefFieldComponent\n | NationalGridFieldNumberFieldComponent\n | LatLongFieldComponent\n | HiddenFieldComponent\n | PaymentFieldComponent\n | GeospatialFieldComponent\n\n// Components that render content\nexport type ContentComponentsDef =\n | DetailsComponent\n | HtmlComponent\n | MarkdownComponent\n | InsetTextComponent\n | ListComponent\n\n// Components that render lists\nexport type ListComponentsDef =\n | Exclude<SelectionComponentsDef, YesNoFieldComponent>\n | ListComponent\n\n// Components that have selection fields\nexport type SelectionComponentsDef =\n | AutocompleteFieldComponent\n | CheckboxesFieldComponent\n | RadiosFieldComponent\n | SelectFieldComponent\n | YesNoFieldComponent\n\n// Components that have condition support\nexport type ConditionalComponentsDef = Exclude<\n ComponentDef,\n | InsetTextComponent\n | ListComponent\n | MonthYearFieldComponent\n | UkAddressFieldComponent\n | FileUploadFieldComponent\n | PaymentFieldComponent\n>\n\nexport type PreviewType = keyof typeof PreviewTypeEnum\n"],"mappings":"","ignoreList":[]}
@@ -1,6 +1,6 @@
1
1
  import Joi from 'joi';
2
2
  import { rtrimOnly } from "../../common/rtrim-only.js";
3
- import { ComponentType, GeospatialFieldOptionsCountryEnum } from "../../components/enums.js";
3
+ import { ComponentType, GeospatialFieldGeometryTypesEnum, GeospatialFieldOptionsCountryEnum } from "../../components/enums.js";
4
4
  import { MAX_NUMBER_OF_REPEAT_ITEMS, MIN_NUMBER_OF_REPEAT_ITEMS } from "../form-definition/constants.js";
5
5
  import { preventUnicodeInEmail } from "../utils/prevent-unicode.js";
6
6
  export const emailAddressNoUnicodeSchema = Joi.string().trim().email({
@@ -78,6 +78,10 @@ export const exactChecksSchema = Joi.number().empty('').integer().min(2).descrip
78
78
  export const minChecksSchema = Joi.number().empty('').integer().min(2).description('Minimum number of items required to be selected.');
79
79
  export const maxChecksSchema = Joi.number().empty('').integer().min(2).description('Maximum number of items allowed to be selected.');
80
80
  export const countriesSchema = Joi.array().items(Joi.string().valid(...Object.values(GeospatialFieldOptionsCountryEnum), 'any')).single().description('The country to be included in a geospatial field');
81
+ export const exactFeaturesSchema = Joi.number().empty('').integer().min(1).description('Specifies the exact number of features required to be defined.');
82
+ export const minFeaturesSchema = Joi.number().empty('').integer().min(1).description('Minimum number of features required to be defined.');
83
+ export const maxFeaturesSchema = Joi.number().empty('').integer().min(1).description('Maximum number of features allowed to be defined.');
84
+ export const geometryTypesSchema = Joi.array().items(Joi.string().valid(...Object.values(GeospatialFieldGeometryTypesEnum))).description('The geometry types allowed in a geospatial field');
81
85
  export const customValidator = Joi.extend(joi => {
82
86
  return {
83
87
  type: 'dsv',
@@ -231,7 +235,11 @@ export const questionDetailsFullSchema = {
231
235
  minChecksSchema,
232
236
  maxChecksSchema,
233
237
  exactChecksSchema,
234
- countriesSchema
238
+ countriesSchema,
239
+ minFeaturesSchema,
240
+ maxFeaturesSchema,
241
+ exactFeaturesSchema,
242
+ geometryTypesSchema
235
243
  };
236
244
  export const formEditorInputPageKeys = {
237
245
  pageType: pageTypeSchema,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["Joi","rtrimOnly","ComponentType","GeospatialFieldOptionsCountryEnum","MAX_NUMBER_OF_REPEAT_ITEMS","MIN_NUMBER_OF_REPEAT_ITEMS","preventUnicodeInEmail","emailAddressNoUnicodeSchema","string","trim","email","tlds","allow","custom","value","helpers","description","UNICODE_EMAIL_ERROR_MESSAGE","QuestionTypeSubGroup","pageTypeSchema","required","valid","questionTypeSchema","WrittenAnswerSubGroup","DateSubGroup","LocationSubGroup","UkAddressField","TelephoneNumberField","FileUploadField","EmailAddressField","DeclarationField","ListSubGroup","YesNoField","CheckboxesField","RadiosField","AutocompleteField","PaymentField","GeospatialField","questionTypeFullSchema","TextField","MultilineTextField","NumberField","DatePartsField","MonthYearField","SelectField","EastingNorthingField","OsGridRefField","NationalGridFieldNumberField","LatLongField","writtenAnswerSubSchema","dateSubSchema","listSubSchema","locationSubSchema","nameSchema","questionSchema","hintTextSchema","optional","instructionTextSchema","questionOptionalSchema","listForQuestionSchema","listItemCountSchema","number","listItemsDataSchema","exactFilesSchema","empty","integer","min","max","minFilesSchema","maxFilesSchema","fileTypesSchema","array","items","single","default","documentTypesSchema","imageTypesSchema","tabularDataTypesSchema","enhancedActionSchema","radioIdSchema","radioTextSchema","radioHintSchema","radioValueSchema","shortDescriptionSchema","pageHeadingAndGuidanceSchema","pageHeadingSchema","guidanceTextSchema","exitPageSchema","boolean","repeaterSchema","minItemsSchema","maxItemsSchema","questionSetNameSchema","needDeclarationSchema","declarationTextSchema","disableConfirmationEmailSchema","enableReferenceNumberSchema","disableUserFeedbackSchema","minSchema","maxSchema","minLengthSchema","maxLengthSchema","maxFutureSchema","maxPastSchema","precisionSchema","prefixSchema","regexSchema","rowsSchema","suffixSchema","classesSchema","jsEnabledSchema","usePostcodeLookupSchema","paymentDescriptionSchema","paymentAmountSchema","paymentApiKeySchema","exactChecksSchema","minChecksSchema","maxChecksSchema","countriesSchema","Object","values","customValidator","extend","joi","type","base","messages","coerce","from","method","rowSeparatorRule","schema","$_getRule","colSeparatorRule","keysRule","rowSeparator","args","rows","split","map","v","filter","Boolean","colSeparator","keys","coercedValue","row","reduce","acc","col","idx","_err","console","error","errors","rules","convert","alias","$_addRule","name","ref","assert","RegExp","message","Array","isArray","every","k","autoCompleteOptionsSchema","dsv","object","text","disallow","parent","unique","ignoreUndefined","questionDetailsFullSchema","formEditorInputPageKeys","pageType","questionType","formEditorInputPageSchema","formEditorInputheckAnswersSettingsKeys","declarationText","formEditorInputCheckAnswersSettingSchema","formEditorInputQuestionKeys","question","shortDescription","hintText","questionOptional","formEditorInputQuestionSchema","formEditorInputPageSettingsKeys","pageHeadingAndGuidance","pageHeading","guidanceText","formEditorInputPageSettingsSchema","govukFieldValueIsString","govukField","includes","govukFieldIsChecked","checkedValue","checked","allowedErrorTemplateFunctions"],"sources":["../../../../src/form/form-editor/index.ts"],"sourcesContent":["import Joi, { type ArraySchema, type GetRuleOptions } from 'joi'\n\nimport { rtrimOnly } from '~/src/common/rtrim-only.js'\nimport {\n ComponentType,\n GeospatialFieldOptionsCountryEnum\n} from '~/src/components/enums.js'\nimport {\n MAX_NUMBER_OF_REPEAT_ITEMS,\n MIN_NUMBER_OF_REPEAT_ITEMS\n} from '~/src/form/form-definition/constants.js'\nimport {\n type FormEditorInputCheckAnswersSettings,\n type FormEditorInputPage,\n type FormEditorInputPageSettings,\n type FormEditorInputQuestion,\n type GovukField,\n type GovukFieldQuestionOptional,\n type GovukFieldUsePostcodeLookup,\n type GovukStringField\n} from '~/src/form/form-editor/types.js'\nimport { preventUnicodeInEmail } from '~/src/form/utils/prevent-unicode.js'\n\nexport const emailAddressNoUnicodeSchema = Joi.string()\n .trim()\n .email({ tlds: { allow: false } })\n .custom((value, helpers) => preventUnicodeInEmail(value, helpers))\n .description('Email address preventing unicode characters')\n\nexport const UNICODE_EMAIL_ERROR_MESSAGE =\n 'The email address you entered includes invalid characters, for example, long dashes'\n\nexport enum QuestionTypeSubGroup {\n WrittenAnswerSubGroup = 'writtenAnswerSub',\n DateSubGroup = 'dateSub',\n ListSubGroup = 'listSub',\n LocationSubGroup = 'locationSub'\n}\n\nexport const pageTypeSchema = Joi.string()\n .required()\n .valid('question', 'guidance')\n .description('Type of page - either a question page or guidance page')\n\nexport const questionTypeSchema = Joi.string()\n .required()\n .valid(\n QuestionTypeSubGroup.WrittenAnswerSubGroup,\n QuestionTypeSubGroup.DateSubGroup,\n QuestionTypeSubGroup.LocationSubGroup,\n ComponentType.UkAddressField,\n ComponentType.TelephoneNumberField,\n ComponentType.FileUploadField,\n ComponentType.EmailAddressField,\n ComponentType.DeclarationField,\n QuestionTypeSubGroup.ListSubGroup,\n ComponentType.YesNoField,\n ComponentType.CheckboxesField,\n ComponentType.RadiosField,\n ComponentType.AutocompleteField,\n ComponentType.PaymentField,\n ComponentType.GeospatialField\n )\n .description('The high-level type of question, including grouped types')\n\nexport const questionTypeFullSchema = Joi.string()\n .required()\n .valid(\n ComponentType.TextField,\n ComponentType.MultilineTextField,\n ComponentType.NumberField,\n ComponentType.DatePartsField,\n ComponentType.MonthYearField,\n ComponentType.UkAddressField,\n ComponentType.TelephoneNumberField,\n ComponentType.FileUploadField,\n ComponentType.EmailAddressField,\n ComponentType.DeclarationField,\n ComponentType.YesNoField,\n ComponentType.CheckboxesField,\n ComponentType.RadiosField,\n ComponentType.AutocompleteField,\n ComponentType.SelectField,\n ComponentType.EastingNorthingField,\n ComponentType.OsGridRefField,\n ComponentType.NationalGridFieldNumberField,\n ComponentType.LatLongField,\n ComponentType.PaymentField,\n ComponentType.GeospatialField\n )\n .description('The specific component type to use for this question')\n\nexport const writtenAnswerSubSchema = Joi.string()\n .required()\n .valid(\n ComponentType.TextField,\n ComponentType.MultilineTextField,\n ComponentType.NumberField\n )\n .description('Subtype for written answer questions')\n\nexport const dateSubSchema = Joi.string()\n .required()\n .valid(ComponentType.DatePartsField, ComponentType.MonthYearField)\n .description('Subtype for date-related questions')\n\nexport const listSubSchema = Joi.string()\n .required()\n .valid(\n ComponentType.YesNoField,\n ComponentType.CheckboxesField,\n ComponentType.RadiosField,\n ComponentType.AutocompleteField,\n ComponentType.SelectField\n )\n .description('Subtype for list-related questions')\n\nexport const locationSubSchema = Joi.string()\n .required()\n .valid(\n ComponentType.UkAddressField,\n ComponentType.EastingNorthingField,\n ComponentType.OsGridRefField,\n ComponentType.NationalGridFieldNumberField,\n ComponentType.LatLongField,\n ComponentType.GeospatialField\n )\n .description('Subtype for location-related questions')\n\nexport const nameSchema = Joi.string()\n .trim()\n .required()\n .description('Unique identifier for the field')\n\nexport const questionSchema = Joi.string()\n .trim()\n .required()\n .description('The question text displayed to the user')\n\nexport const hintTextSchema = Joi.string()\n .trim()\n .optional()\n .allow('')\n .description('Optional guidance text displayed below the question')\n\nexport const instructionTextSchema = Joi.string()\n .trim()\n .optional()\n .allow('')\n .description(\n 'Optional instruction text with markdown support to help users answer the question'\n )\n\nexport const questionOptionalSchema = Joi.string()\n .trim()\n .optional()\n .valid('', 'true')\n .description(\n 'Indicates whether a question is optional. Empty string or \"true\" values are accepted.'\n )\n\nexport const listForQuestionSchema = Joi.string()\n .trim()\n .optional()\n .allow('')\n .description('Unique identifier for the list used by the field')\n\nexport const listItemCountSchema = Joi.number()\n .optional()\n .description('Number of list items in the list used by the field')\n\nexport const listItemsDataSchema = Joi.string()\n .allow('')\n .description('List items in JSON format, such as for radios or checkboxes.')\n\nexport const exactFilesSchema = Joi.number()\n .empty('')\n .integer()\n .min(1)\n .max(25)\n .description(\n 'Specifies the exact number of files required for upload. Must be between 1 and 25.'\n )\n\nexport const minFilesSchema = Joi.number()\n .empty('')\n .integer()\n .min(1)\n .max(25)\n .description(\n 'Minimum number of files required for upload. Must be between 1 and 25.'\n )\n\nexport const maxFilesSchema = Joi.number()\n .empty('')\n .integer()\n .min(1)\n .max(25)\n .description(\n 'Maximum number of files allowed for upload. Must be between 1 and 25.'\n )\n\nexport const fileTypesSchema = Joi.array()\n .items(Joi.string())\n .single()\n .empty(null)\n .default([])\n .description(\n 'Array of allowed file types. Can be provided as a single value or an array.'\n )\n\nexport const documentTypesSchema = Joi.array()\n .items(Joi.string())\n .single()\n .empty(null)\n .default([])\n .description(\n 'Array of allowed document types. Can be provided as a single value or an array.'\n )\n\nexport const imageTypesSchema = Joi.array()\n .items(Joi.string())\n .single()\n .empty(null)\n .default([])\n .description(\n 'Array of allowed image types. Can be provided as a single value or an array.'\n )\n\nexport const tabularDataTypesSchema = Joi.array()\n .items(Joi.string())\n .single()\n .empty(null)\n .default([])\n\nexport const enhancedActionSchema = Joi.string()\n .trim()\n .optional()\n .allow('')\n .description('Action field that can include enhanced functionality')\n\nexport const radioIdSchema = Joi.string()\n .trim()\n .optional()\n .allow('')\n .description('Unique identifier for radio options')\n\nexport const radioTextSchema = Joi.string()\n .trim()\n .required()\n .description('The visible text shown next to radio options')\n\nexport const radioHintSchema = Joi.string()\n .trim()\n .optional()\n .allow('')\n .description(\n 'Optional hint text displayed with radio buttons to provide additional guidance'\n )\n\nexport const radioValueSchema = Joi.string()\n .trim()\n .optional()\n .allow('')\n .description(\n 'Array of allowed tabular data types. Can be provided as a single value or an array.'\n )\n\nexport const shortDescriptionSchema = Joi.string()\n .custom(rtrimOnly)\n .required()\n .description('Brief description of the question for internal use')\n\nexport const pageHeadingAndGuidanceSchema = Joi.string()\n .trim()\n .optional()\n .description('Combined heading and guidance for the page')\n\nexport const pageHeadingSchema = Joi.string()\n .trim()\n .required()\n .description('Main heading displayed at the top of the page')\n\nexport const guidanceTextSchema = Joi.string()\n .trim()\n .description('Guidance text to assist users in completing the page')\n\nexport const exitPageSchema = Joi.boolean()\n .default(false)\n .optional()\n .description('Determines if page is set as an Exit Page')\n\nexport const repeaterSchema = Joi.string()\n .trim()\n .optional()\n .description(\n 'Combined min/max items and question set name for the repeater page'\n )\n\nexport const minItemsSchema = Joi.number()\n .empty('')\n .min(MIN_NUMBER_OF_REPEAT_ITEMS)\n .description('The minimum number of repeater items')\n\nexport const maxItemsSchema = Joi.number()\n .empty('')\n .max(MAX_NUMBER_OF_REPEAT_ITEMS)\n .description('The maximum number of repeater items')\n\nexport const questionSetNameSchema = Joi.string()\n .trim()\n .description('The repeater question set name')\n\nexport const needDeclarationSchema = Joi.string()\n .trim()\n .required()\n .description('Whether a declaration is needed')\n\nexport const declarationTextSchema = Joi.string()\n .trim()\n .required()\n .description('Text of the declaration that users must agree to')\n\nexport const disableConfirmationEmailSchema = Joi.boolean()\n .valid(true)\n .description('Whether confirmation emails should be disabled')\n\nexport const enableReferenceNumberSchema = Joi.boolean()\n .valid(true)\n .description('Whether reference number should be enabled')\n\nexport const disableUserFeedbackSchema = Joi.boolean()\n .valid(true)\n .description('Whether user feedback should be disabled')\n\nexport const minSchema = Joi.number()\n .empty('')\n .integer()\n .description('Minimum value for numeric inputs')\n\nexport const maxSchema = Joi.number()\n .empty('')\n .integer()\n .description('Maximum value for numeric inputs')\n\nexport const minLengthSchema = Joi.number()\n .empty('')\n .integer()\n .min(1)\n .description('Minimum character length for text inputs')\n\nexport const maxLengthSchema = Joi.number()\n .empty('')\n .integer()\n .min(1)\n .description('Maximum character length for text inputs')\n\nexport const maxFutureSchema = Joi.number()\n .empty('')\n .integer()\n .min(0)\n .description('Maximum days in the future allowed for date inputs')\n\nexport const maxPastSchema = Joi.number()\n .empty('')\n .integer()\n .min(0)\n .description('Maximum days in the past allowed for date inputs')\n\nexport const precisionSchema = Joi.number()\n .empty('')\n .integer()\n .min(0)\n .description('Decimal precision for numeric inputs')\n\nexport const prefixSchema = Joi.string()\n .trim()\n .optional()\n .allow('')\n .description('Text to display before the input (e.g., £)')\n\nexport const regexSchema = Joi.string()\n .optional()\n .allow('')\n .description('Regular expression pattern for validation')\n\nexport const rowsSchema = Joi.number()\n .empty('')\n .integer()\n .min(1)\n .description('Number of rows for multiline text fields')\n\nexport const suffixSchema = Joi.string()\n .trim()\n .optional()\n .allow('')\n .description('Text to display after the input (e.g., kg)')\n\nexport const classesSchema = Joi.string()\n .trim()\n .optional()\n .allow('')\n .description('Custom CSS classes to apply to the component')\n\nexport const jsEnabledSchema = Joi.string()\n .trim()\n .optional()\n .allow('false', 'true')\n .description('Flag to show if Javascript is enabled or not')\n\nexport const usePostcodeLookupSchema = Joi.string()\n .trim()\n .optional()\n .valid('', 'true')\n .description(\n 'Indicates whether a UK address component supports postcode lookup. Empty string or \"true\" values are accepted.'\n )\n\nexport const paymentDescriptionSchema = Joi.string()\n .trim()\n .max(230)\n .required()\n .description('Description of payment - appears in payment providers pages')\n\nexport const paymentAmountSchema = Joi.number()\n .empty('')\n .min(0)\n .max(100000)\n .description('Amount of payment in pounds')\n\nexport const paymentApiKeySchema = Joi.string()\n .trim()\n .description('API key for payment configuration')\n\nexport const exactChecksSchema = Joi.number()\n .empty('')\n .integer()\n .min(2)\n .description('Specifies the exact number of items required to be selected.')\n\nexport const minChecksSchema = Joi.number()\n .empty('')\n .integer()\n .min(2)\n .description('Minimum number of items required to be selected.')\n\nexport const maxChecksSchema = Joi.number()\n .empty('')\n .integer()\n .min(2)\n .description('Maximum number of items allowed to be selected.')\n\nexport const countriesSchema = Joi.array()\n .items(\n Joi.string().valid(\n ...Object.values(GeospatialFieldOptionsCountryEnum),\n 'any'\n )\n )\n .single()\n .description('The country to be included in a geospatial field')\n\ntype GenericRuleOptions<K extends string, T> = Omit<GetRuleOptions, 'args'> & {\n args: Record<K, T>\n}\n\ninterface DSLSchema<TSchema = Record<string, unknown>[]>\n extends ArraySchema<TSchema> {\n rowSeparator: (rowSep: string | RegExp) => DSLSchema<TSchema>\n row: (rowSep: string | RegExp) => DSLSchema<TSchema>\n colSeparator: (colSep: string | RegExp) => DSLSchema<TSchema>\n col: (colSep: string | RegExp) => DSLSchema<TSchema>\n keys: (keys: string[]) => DSLSchema<TSchema>\n}\n\ninterface CustomValidator extends Joi.Root {\n dsv<TSchema>(): DSLSchema<TSchema>\n}\n\nexport const customValidator = Joi.extend((joi: Joi.Root) => {\n return {\n type: 'dsv',\n base: joi.array(),\n messages: {\n 'dsv.invalid': 'Invalid parse string'\n },\n coerce: {\n from: 'string',\n method(value: string, helpers) {\n try {\n // Only called when prefs.convert is true\n // Rules\n const rowSeparatorRule = helpers.schema.$_getRule('rowSeparator') as\n | undefined\n | GenericRuleOptions<'rowSeparator', string | RegExp>\n const colSeparatorRule = helpers.schema.$_getRule('colSeparator') as\n | undefined\n | GenericRuleOptions<'colSeparator', string | RegExp>\n const keysRule = helpers.schema.$_getRule('keys') as\n | undefined\n | GenericRuleOptions<'keys', string[]>\n\n // Rows\n const rowSeparator = rowSeparatorRule?.args.rowSeparator ?? /\\r?\\n/\n const rows = value\n .split(rowSeparator)\n .map((v) => v.trim())\n .filter(Boolean)\n\n // Columns\n const colSeparator = colSeparatorRule?.args.colSeparator ?? ','\n const keys = keysRule?.args.keys ?? ['key', 'value']\n\n const coercedValue = rows.map((row) => {\n return row\n .split(colSeparator)\n .reduce<Record<string, string>>((acc, col, idx) => {\n return {\n ...acc,\n [keys[idx]]: col.trim()\n }\n }, {})\n })\n return { value: coercedValue }\n } catch (_err) {\n // eslint-disable-next-line no-console\n console.error(_err)\n return { value, errors: [helpers.error('dsv.invalid')] }\n }\n }\n },\n rules: {\n rowSeparator: {\n convert: true,\n alias: 'row',\n method(rowSeparator: string) {\n return this.$_addRule({\n name: 'rowSeparator',\n args: { rowSeparator }\n })\n },\n args: [\n {\n name: 'rowSeparator',\n ref: true,\n assert: (value) =>\n typeof value === 'string' || value instanceof RegExp,\n message: 'must be a string or regex'\n }\n ]\n },\n colSeparator: {\n convert: true,\n alias: 'col',\n method(colSeparator: string) {\n return this.$_addRule({\n name: 'colSeparator',\n args: { colSeparator }\n })\n },\n args: [\n {\n name: 'colSeparator',\n ref: true,\n assert: (value) =>\n typeof value === 'string' || value instanceof RegExp,\n message: 'must be a string or regex'\n }\n ]\n },\n keys: {\n convert: true,\n method(keys: string[]) {\n return this.$_addRule({ name: 'keys', args: { keys } })\n },\n args: [\n {\n name: 'keys',\n ref: true,\n assert: (value) =>\n Array.isArray(value) && value.every((k) => typeof k === 'string'),\n message: 'must be an array of strings'\n }\n ]\n }\n }\n }\n}) as CustomValidator\n\nexport const autoCompleteOptionsSchema = customValidator\n .dsv<{ text: string; value: string }[]>()\n .row(/\\r?\\n/)\n .col(':')\n .keys(['text', 'value'])\n .items(\n customValidator.object({\n text: customValidator.string().min(1).disallow('').required(),\n value: customValidator\n .string()\n .default((parent: { text: string; value?: string }) => parent.text)\n .min(1)\n .disallow('')\n })\n )\n .min(1)\n .unique('text')\n .unique('value', { ignoreUndefined: true })\n .required()\n\nexport const questionDetailsFullSchema = {\n autoCompleteOptionsSchema,\n classesSchema,\n declarationTextSchema,\n documentTypesSchema,\n enhancedActionSchema,\n exactFilesSchema,\n fileTypesSchema,\n hintTextSchema,\n imageTypesSchema,\n instructionTextSchema,\n jsEnabledSchema,\n listForQuestionSchema,\n listItemCountSchema,\n listItemsDataSchema,\n maxFilesSchema,\n maxFutureSchema,\n maxLengthSchema,\n maxPastSchema,\n maxSchema,\n minFilesSchema,\n minLengthSchema,\n minSchema,\n nameSchema,\n paymentAmountSchema,\n paymentApiKeySchema,\n paymentDescriptionSchema,\n precisionSchema,\n prefixSchema,\n questionOptionalSchema,\n questionSchema,\n questionTypeFullSchema,\n radioHintSchema,\n radioIdSchema,\n radioTextSchema,\n radioValueSchema,\n regexSchema,\n rowsSchema,\n shortDescriptionSchema,\n suffixSchema,\n tabularDataTypesSchema,\n usePostcodeLookupSchema,\n minChecksSchema,\n maxChecksSchema,\n exactChecksSchema,\n countriesSchema\n}\n\nexport const formEditorInputPageKeys = {\n pageType: pageTypeSchema,\n questionType: questionTypeSchema\n}\n\n/**\n * Joi schema for `FormEditorInputPage` interface\n * @see {@link FormEditorInputPage}\n */\nexport const formEditorInputPageSchema = Joi.object<FormEditorInputPage>()\n .keys(formEditorInputPageKeys)\n .required()\n .description('Input schema for creating a new page in the form editor')\n\nexport const formEditorInputheckAnswersSettingsKeys = {\n declarationText: shortDescriptionSchema\n}\n\n/**\n * Joi schema for `FormEditorInputCheckAnswersSettings` interface\n * @see {@link FormEditorInputCheckAnswersSettings}\n */\nexport const formEditorInputCheckAnswersSettingSchema =\n Joi.object<FormEditorInputCheckAnswersSettings>()\n .keys(formEditorInputheckAnswersSettingsKeys)\n .required()\n .description('Configuration for the check-answers page')\n\nexport const formEditorInputQuestionKeys = {\n question: questionSchema,\n shortDescription: shortDescriptionSchema,\n hintText: hintTextSchema,\n questionOptional: questionOptionalSchema\n}\n\n/**\n * Joi schema for `FormEditorInputQuestion` interface\n * @see {@link FormEditorInputQuestion}\n */\nexport const formEditorInputQuestionSchema =\n Joi.object<FormEditorInputQuestion>()\n .keys(formEditorInputQuestionKeys)\n .required()\n .description(\n 'Input schema for creating or updating a question in the form editor'\n )\n\nexport const formEditorInputPageSettingsKeys = {\n pageHeadingAndGuidance: pageHeadingAndGuidanceSchema,\n pageHeading: pageHeadingSchema,\n guidanceText: guidanceTextSchema\n}\n\n/**\n * Joi schema for `FormEditorInputPageSettings` interface\n * @see {@link FormEditorInputPageSettings}\n */\nexport const formEditorInputPageSettingsSchema =\n Joi.object<FormEditorInputPageSettings>()\n .keys(formEditorInputPageSettingsKeys)\n .required()\n .description('Settings for page content and display in the form editor')\n\nexport function govukFieldValueIsString(\n govukField: GovukField\n): govukField is GovukStringField {\n return [\n 'question',\n 'hintText',\n 'shortDescription',\n 'autoCompleteOptions',\n 'classes',\n 'prefix',\n 'suffix',\n 'paymentAmount',\n 'paymentDescription'\n ].includes(`${govukField.name}`)\n}\n\nexport function govukFieldIsChecked(\n govukField: GovukField\n): govukField is GovukFieldQuestionOptional | GovukFieldUsePostcodeLookup {\n if (\n govukField.name !== 'questionOptional' &&\n govukField.name !== 'usePostcodeLookup'\n ) {\n return false\n }\n const checkedValue = govukField.items?.[0].checked\n return typeof checkedValue === 'boolean'\n}\n\n// A list of allowed template funtions for use within error message templates\nexport const allowedErrorTemplateFunctions = ['lowerFirst', 'capitalise']\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["Joi","rtrimOnly","ComponentType","GeospatialFieldGeometryTypesEnum","GeospatialFieldOptionsCountryEnum","MAX_NUMBER_OF_REPEAT_ITEMS","MIN_NUMBER_OF_REPEAT_ITEMS","preventUnicodeInEmail","emailAddressNoUnicodeSchema","string","trim","email","tlds","allow","custom","value","helpers","description","UNICODE_EMAIL_ERROR_MESSAGE","QuestionTypeSubGroup","pageTypeSchema","required","valid","questionTypeSchema","WrittenAnswerSubGroup","DateSubGroup","LocationSubGroup","UkAddressField","TelephoneNumberField","FileUploadField","EmailAddressField","DeclarationField","ListSubGroup","YesNoField","CheckboxesField","RadiosField","AutocompleteField","PaymentField","GeospatialField","questionTypeFullSchema","TextField","MultilineTextField","NumberField","DatePartsField","MonthYearField","SelectField","EastingNorthingField","OsGridRefField","NationalGridFieldNumberField","LatLongField","writtenAnswerSubSchema","dateSubSchema","listSubSchema","locationSubSchema","nameSchema","questionSchema","hintTextSchema","optional","instructionTextSchema","questionOptionalSchema","listForQuestionSchema","listItemCountSchema","number","listItemsDataSchema","exactFilesSchema","empty","integer","min","max","minFilesSchema","maxFilesSchema","fileTypesSchema","array","items","single","default","documentTypesSchema","imageTypesSchema","tabularDataTypesSchema","enhancedActionSchema","radioIdSchema","radioTextSchema","radioHintSchema","radioValueSchema","shortDescriptionSchema","pageHeadingAndGuidanceSchema","pageHeadingSchema","guidanceTextSchema","exitPageSchema","boolean","repeaterSchema","minItemsSchema","maxItemsSchema","questionSetNameSchema","needDeclarationSchema","declarationTextSchema","disableConfirmationEmailSchema","enableReferenceNumberSchema","disableUserFeedbackSchema","minSchema","maxSchema","minLengthSchema","maxLengthSchema","maxFutureSchema","maxPastSchema","precisionSchema","prefixSchema","regexSchema","rowsSchema","suffixSchema","classesSchema","jsEnabledSchema","usePostcodeLookupSchema","paymentDescriptionSchema","paymentAmountSchema","paymentApiKeySchema","exactChecksSchema","minChecksSchema","maxChecksSchema","countriesSchema","Object","values","exactFeaturesSchema","minFeaturesSchema","maxFeaturesSchema","geometryTypesSchema","customValidator","extend","joi","type","base","messages","coerce","from","method","rowSeparatorRule","schema","$_getRule","colSeparatorRule","keysRule","rowSeparator","args","rows","split","map","v","filter","Boolean","colSeparator","keys","coercedValue","row","reduce","acc","col","idx","_err","console","error","errors","rules","convert","alias","$_addRule","name","ref","assert","RegExp","message","Array","isArray","every","k","autoCompleteOptionsSchema","dsv","object","text","disallow","parent","unique","ignoreUndefined","questionDetailsFullSchema","formEditorInputPageKeys","pageType","questionType","formEditorInputPageSchema","formEditorInputheckAnswersSettingsKeys","declarationText","formEditorInputCheckAnswersSettingSchema","formEditorInputQuestionKeys","question","shortDescription","hintText","questionOptional","formEditorInputQuestionSchema","formEditorInputPageSettingsKeys","pageHeadingAndGuidance","pageHeading","guidanceText","formEditorInputPageSettingsSchema","govukFieldValueIsString","govukField","includes","govukFieldIsChecked","checkedValue","checked","allowedErrorTemplateFunctions"],"sources":["../../../../src/form/form-editor/index.ts"],"sourcesContent":["import Joi, { type ArraySchema, type GetRuleOptions } from 'joi'\n\nimport { rtrimOnly } from '~/src/common/rtrim-only.js'\nimport {\n ComponentType,\n GeospatialFieldGeometryTypesEnum,\n GeospatialFieldOptionsCountryEnum\n} from '~/src/components/enums.js'\nimport {\n MAX_NUMBER_OF_REPEAT_ITEMS,\n MIN_NUMBER_OF_REPEAT_ITEMS\n} from '~/src/form/form-definition/constants.js'\nimport {\n type FormEditorInputCheckAnswersSettings,\n type FormEditorInputPage,\n type FormEditorInputPageSettings,\n type FormEditorInputQuestion,\n type GovukField,\n type GovukFieldQuestionOptional,\n type GovukFieldUsePostcodeLookup,\n type GovukStringField\n} from '~/src/form/form-editor/types.js'\nimport { preventUnicodeInEmail } from '~/src/form/utils/prevent-unicode.js'\n\nexport const emailAddressNoUnicodeSchema = Joi.string()\n .trim()\n .email({ tlds: { allow: false } })\n .custom((value, helpers) => preventUnicodeInEmail(value, helpers))\n .description('Email address preventing unicode characters')\n\nexport const UNICODE_EMAIL_ERROR_MESSAGE =\n 'The email address you entered includes invalid characters, for example, long dashes'\n\nexport enum QuestionTypeSubGroup {\n WrittenAnswerSubGroup = 'writtenAnswerSub',\n DateSubGroup = 'dateSub',\n ListSubGroup = 'listSub',\n LocationSubGroup = 'locationSub'\n}\n\nexport const pageTypeSchema = Joi.string()\n .required()\n .valid('question', 'guidance')\n .description('Type of page - either a question page or guidance page')\n\nexport const questionTypeSchema = Joi.string()\n .required()\n .valid(\n QuestionTypeSubGroup.WrittenAnswerSubGroup,\n QuestionTypeSubGroup.DateSubGroup,\n QuestionTypeSubGroup.LocationSubGroup,\n ComponentType.UkAddressField,\n ComponentType.TelephoneNumberField,\n ComponentType.FileUploadField,\n ComponentType.EmailAddressField,\n ComponentType.DeclarationField,\n QuestionTypeSubGroup.ListSubGroup,\n ComponentType.YesNoField,\n ComponentType.CheckboxesField,\n ComponentType.RadiosField,\n ComponentType.AutocompleteField,\n ComponentType.PaymentField,\n ComponentType.GeospatialField\n )\n .description('The high-level type of question, including grouped types')\n\nexport const questionTypeFullSchema = Joi.string()\n .required()\n .valid(\n ComponentType.TextField,\n ComponentType.MultilineTextField,\n ComponentType.NumberField,\n ComponentType.DatePartsField,\n ComponentType.MonthYearField,\n ComponentType.UkAddressField,\n ComponentType.TelephoneNumberField,\n ComponentType.FileUploadField,\n ComponentType.EmailAddressField,\n ComponentType.DeclarationField,\n ComponentType.YesNoField,\n ComponentType.CheckboxesField,\n ComponentType.RadiosField,\n ComponentType.AutocompleteField,\n ComponentType.SelectField,\n ComponentType.EastingNorthingField,\n ComponentType.OsGridRefField,\n ComponentType.NationalGridFieldNumberField,\n ComponentType.LatLongField,\n ComponentType.PaymentField,\n ComponentType.GeospatialField\n )\n .description('The specific component type to use for this question')\n\nexport const writtenAnswerSubSchema = Joi.string()\n .required()\n .valid(\n ComponentType.TextField,\n ComponentType.MultilineTextField,\n ComponentType.NumberField\n )\n .description('Subtype for written answer questions')\n\nexport const dateSubSchema = Joi.string()\n .required()\n .valid(ComponentType.DatePartsField, ComponentType.MonthYearField)\n .description('Subtype for date-related questions')\n\nexport const listSubSchema = Joi.string()\n .required()\n .valid(\n ComponentType.YesNoField,\n ComponentType.CheckboxesField,\n ComponentType.RadiosField,\n ComponentType.AutocompleteField,\n ComponentType.SelectField\n )\n .description('Subtype for list-related questions')\n\nexport const locationSubSchema = Joi.string()\n .required()\n .valid(\n ComponentType.UkAddressField,\n ComponentType.EastingNorthingField,\n ComponentType.OsGridRefField,\n ComponentType.NationalGridFieldNumberField,\n ComponentType.LatLongField,\n ComponentType.GeospatialField\n )\n .description('Subtype for location-related questions')\n\nexport const nameSchema = Joi.string()\n .trim()\n .required()\n .description('Unique identifier for the field')\n\nexport const questionSchema = Joi.string()\n .trim()\n .required()\n .description('The question text displayed to the user')\n\nexport const hintTextSchema = Joi.string()\n .trim()\n .optional()\n .allow('')\n .description('Optional guidance text displayed below the question')\n\nexport const instructionTextSchema = Joi.string()\n .trim()\n .optional()\n .allow('')\n .description(\n 'Optional instruction text with markdown support to help users answer the question'\n )\n\nexport const questionOptionalSchema = Joi.string()\n .trim()\n .optional()\n .valid('', 'true')\n .description(\n 'Indicates whether a question is optional. Empty string or \"true\" values are accepted.'\n )\n\nexport const listForQuestionSchema = Joi.string()\n .trim()\n .optional()\n .allow('')\n .description('Unique identifier for the list used by the field')\n\nexport const listItemCountSchema = Joi.number()\n .optional()\n .description('Number of list items in the list used by the field')\n\nexport const listItemsDataSchema = Joi.string()\n .allow('')\n .description('List items in JSON format, such as for radios or checkboxes.')\n\nexport const exactFilesSchema = Joi.number()\n .empty('')\n .integer()\n .min(1)\n .max(25)\n .description(\n 'Specifies the exact number of files required for upload. Must be between 1 and 25.'\n )\n\nexport const minFilesSchema = Joi.number()\n .empty('')\n .integer()\n .min(1)\n .max(25)\n .description(\n 'Minimum number of files required for upload. Must be between 1 and 25.'\n )\n\nexport const maxFilesSchema = Joi.number()\n .empty('')\n .integer()\n .min(1)\n .max(25)\n .description(\n 'Maximum number of files allowed for upload. Must be between 1 and 25.'\n )\n\nexport const fileTypesSchema = Joi.array()\n .items(Joi.string())\n .single()\n .empty(null)\n .default([])\n .description(\n 'Array of allowed file types. Can be provided as a single value or an array.'\n )\n\nexport const documentTypesSchema = Joi.array()\n .items(Joi.string())\n .single()\n .empty(null)\n .default([])\n .description(\n 'Array of allowed document types. Can be provided as a single value or an array.'\n )\n\nexport const imageTypesSchema = Joi.array()\n .items(Joi.string())\n .single()\n .empty(null)\n .default([])\n .description(\n 'Array of allowed image types. Can be provided as a single value or an array.'\n )\n\nexport const tabularDataTypesSchema = Joi.array()\n .items(Joi.string())\n .single()\n .empty(null)\n .default([])\n\nexport const enhancedActionSchema = Joi.string()\n .trim()\n .optional()\n .allow('')\n .description('Action field that can include enhanced functionality')\n\nexport const radioIdSchema = Joi.string()\n .trim()\n .optional()\n .allow('')\n .description('Unique identifier for radio options')\n\nexport const radioTextSchema = Joi.string()\n .trim()\n .required()\n .description('The visible text shown next to radio options')\n\nexport const radioHintSchema = Joi.string()\n .trim()\n .optional()\n .allow('')\n .description(\n 'Optional hint text displayed with radio buttons to provide additional guidance'\n )\n\nexport const radioValueSchema = Joi.string()\n .trim()\n .optional()\n .allow('')\n .description(\n 'Array of allowed tabular data types. Can be provided as a single value or an array.'\n )\n\nexport const shortDescriptionSchema = Joi.string()\n .custom(rtrimOnly)\n .required()\n .description('Brief description of the question for internal use')\n\nexport const pageHeadingAndGuidanceSchema = Joi.string()\n .trim()\n .optional()\n .description('Combined heading and guidance for the page')\n\nexport const pageHeadingSchema = Joi.string()\n .trim()\n .required()\n .description('Main heading displayed at the top of the page')\n\nexport const guidanceTextSchema = Joi.string()\n .trim()\n .description('Guidance text to assist users in completing the page')\n\nexport const exitPageSchema = Joi.boolean()\n .default(false)\n .optional()\n .description('Determines if page is set as an Exit Page')\n\nexport const repeaterSchema = Joi.string()\n .trim()\n .optional()\n .description(\n 'Combined min/max items and question set name for the repeater page'\n )\n\nexport const minItemsSchema = Joi.number()\n .empty('')\n .min(MIN_NUMBER_OF_REPEAT_ITEMS)\n .description('The minimum number of repeater items')\n\nexport const maxItemsSchema = Joi.number()\n .empty('')\n .max(MAX_NUMBER_OF_REPEAT_ITEMS)\n .description('The maximum number of repeater items')\n\nexport const questionSetNameSchema = Joi.string()\n .trim()\n .description('The repeater question set name')\n\nexport const needDeclarationSchema = Joi.string()\n .trim()\n .required()\n .description('Whether a declaration is needed')\n\nexport const declarationTextSchema = Joi.string()\n .trim()\n .required()\n .description('Text of the declaration that users must agree to')\n\nexport const disableConfirmationEmailSchema = Joi.boolean()\n .valid(true)\n .description('Whether confirmation emails should be disabled')\n\nexport const enableReferenceNumberSchema = Joi.boolean()\n .valid(true)\n .description('Whether reference number should be enabled')\n\nexport const disableUserFeedbackSchema = Joi.boolean()\n .valid(true)\n .description('Whether user feedback should be disabled')\n\nexport const minSchema = Joi.number()\n .empty('')\n .integer()\n .description('Minimum value for numeric inputs')\n\nexport const maxSchema = Joi.number()\n .empty('')\n .integer()\n .description('Maximum value for numeric inputs')\n\nexport const minLengthSchema = Joi.number()\n .empty('')\n .integer()\n .min(1)\n .description('Minimum character length for text inputs')\n\nexport const maxLengthSchema = Joi.number()\n .empty('')\n .integer()\n .min(1)\n .description('Maximum character length for text inputs')\n\nexport const maxFutureSchema = Joi.number()\n .empty('')\n .integer()\n .min(0)\n .description('Maximum days in the future allowed for date inputs')\n\nexport const maxPastSchema = Joi.number()\n .empty('')\n .integer()\n .min(0)\n .description('Maximum days in the past allowed for date inputs')\n\nexport const precisionSchema = Joi.number()\n .empty('')\n .integer()\n .min(0)\n .description('Decimal precision for numeric inputs')\n\nexport const prefixSchema = Joi.string()\n .trim()\n .optional()\n .allow('')\n .description('Text to display before the input (e.g., £)')\n\nexport const regexSchema = Joi.string()\n .optional()\n .allow('')\n .description('Regular expression pattern for validation')\n\nexport const rowsSchema = Joi.number()\n .empty('')\n .integer()\n .min(1)\n .description('Number of rows for multiline text fields')\n\nexport const suffixSchema = Joi.string()\n .trim()\n .optional()\n .allow('')\n .description('Text to display after the input (e.g., kg)')\n\nexport const classesSchema = Joi.string()\n .trim()\n .optional()\n .allow('')\n .description('Custom CSS classes to apply to the component')\n\nexport const jsEnabledSchema = Joi.string()\n .trim()\n .optional()\n .allow('false', 'true')\n .description('Flag to show if Javascript is enabled or not')\n\nexport const usePostcodeLookupSchema = Joi.string()\n .trim()\n .optional()\n .valid('', 'true')\n .description(\n 'Indicates whether a UK address component supports postcode lookup. Empty string or \"true\" values are accepted.'\n )\n\nexport const paymentDescriptionSchema = Joi.string()\n .trim()\n .max(230)\n .required()\n .description('Description of payment - appears in payment providers pages')\n\nexport const paymentAmountSchema = Joi.number()\n .empty('')\n .min(0)\n .max(100000)\n .description('Amount of payment in pounds')\n\nexport const paymentApiKeySchema = Joi.string()\n .trim()\n .description('API key for payment configuration')\n\nexport const exactChecksSchema = Joi.number()\n .empty('')\n .integer()\n .min(2)\n .description('Specifies the exact number of items required to be selected.')\n\nexport const minChecksSchema = Joi.number()\n .empty('')\n .integer()\n .min(2)\n .description('Minimum number of items required to be selected.')\n\nexport const maxChecksSchema = Joi.number()\n .empty('')\n .integer()\n .min(2)\n .description('Maximum number of items allowed to be selected.')\n\nexport const countriesSchema = Joi.array()\n .items(\n Joi.string().valid(\n ...Object.values(GeospatialFieldOptionsCountryEnum),\n 'any'\n )\n )\n .single()\n .description('The country to be included in a geospatial field')\n\nexport const exactFeaturesSchema = Joi.number()\n .empty('')\n .integer()\n .min(1)\n .description('Specifies the exact number of features required to be defined.')\n\nexport const minFeaturesSchema = Joi.number()\n .empty('')\n .integer()\n .min(1)\n .description('Minimum number of features required to be defined.')\n\nexport const maxFeaturesSchema = Joi.number()\n .empty('')\n .integer()\n .min(1)\n .description('Maximum number of features allowed to be defined.')\n\nexport const geometryTypesSchema = Joi.array()\n .items(Joi.string().valid(...Object.values(GeospatialFieldGeometryTypesEnum)))\n .description('The geometry types allowed in a geospatial field')\n\ntype GenericRuleOptions<K extends string, T> = Omit<GetRuleOptions, 'args'> & {\n args: Record<K, T>\n}\n\ninterface DSLSchema<TSchema = Record<string, unknown>[]>\n extends ArraySchema<TSchema> {\n rowSeparator: (rowSep: string | RegExp) => DSLSchema<TSchema>\n row: (rowSep: string | RegExp) => DSLSchema<TSchema>\n colSeparator: (colSep: string | RegExp) => DSLSchema<TSchema>\n col: (colSep: string | RegExp) => DSLSchema<TSchema>\n keys: (keys: string[]) => DSLSchema<TSchema>\n}\n\ninterface CustomValidator extends Joi.Root {\n dsv<TSchema>(): DSLSchema<TSchema>\n}\n\nexport const customValidator = Joi.extend((joi: Joi.Root) => {\n return {\n type: 'dsv',\n base: joi.array(),\n messages: {\n 'dsv.invalid': 'Invalid parse string'\n },\n coerce: {\n from: 'string',\n method(value: string, helpers) {\n try {\n // Only called when prefs.convert is true\n // Rules\n const rowSeparatorRule = helpers.schema.$_getRule('rowSeparator') as\n | undefined\n | GenericRuleOptions<'rowSeparator', string | RegExp>\n const colSeparatorRule = helpers.schema.$_getRule('colSeparator') as\n | undefined\n | GenericRuleOptions<'colSeparator', string | RegExp>\n const keysRule = helpers.schema.$_getRule('keys') as\n | undefined\n | GenericRuleOptions<'keys', string[]>\n\n // Rows\n const rowSeparator = rowSeparatorRule?.args.rowSeparator ?? /\\r?\\n/\n const rows = value\n .split(rowSeparator)\n .map((v) => v.trim())\n .filter(Boolean)\n\n // Columns\n const colSeparator = colSeparatorRule?.args.colSeparator ?? ','\n const keys = keysRule?.args.keys ?? ['key', 'value']\n\n const coercedValue = rows.map((row) => {\n return row\n .split(colSeparator)\n .reduce<Record<string, string>>((acc, col, idx) => {\n return {\n ...acc,\n [keys[idx]]: col.trim()\n }\n }, {})\n })\n return { value: coercedValue }\n } catch (_err) {\n // eslint-disable-next-line no-console\n console.error(_err)\n return { value, errors: [helpers.error('dsv.invalid')] }\n }\n }\n },\n rules: {\n rowSeparator: {\n convert: true,\n alias: 'row',\n method(rowSeparator: string) {\n return this.$_addRule({\n name: 'rowSeparator',\n args: { rowSeparator }\n })\n },\n args: [\n {\n name: 'rowSeparator',\n ref: true,\n assert: (value) =>\n typeof value === 'string' || value instanceof RegExp,\n message: 'must be a string or regex'\n }\n ]\n },\n colSeparator: {\n convert: true,\n alias: 'col',\n method(colSeparator: string) {\n return this.$_addRule({\n name: 'colSeparator',\n args: { colSeparator }\n })\n },\n args: [\n {\n name: 'colSeparator',\n ref: true,\n assert: (value) =>\n typeof value === 'string' || value instanceof RegExp,\n message: 'must be a string or regex'\n }\n ]\n },\n keys: {\n convert: true,\n method(keys: string[]) {\n return this.$_addRule({ name: 'keys', args: { keys } })\n },\n args: [\n {\n name: 'keys',\n ref: true,\n assert: (value) =>\n Array.isArray(value) && value.every((k) => typeof k === 'string'),\n message: 'must be an array of strings'\n }\n ]\n }\n }\n }\n}) as CustomValidator\n\nexport const autoCompleteOptionsSchema = customValidator\n .dsv<{ text: string; value: string }[]>()\n .row(/\\r?\\n/)\n .col(':')\n .keys(['text', 'value'])\n .items(\n customValidator.object({\n text: customValidator.string().min(1).disallow('').required(),\n value: customValidator\n .string()\n .default((parent: { text: string; value?: string }) => parent.text)\n .min(1)\n .disallow('')\n })\n )\n .min(1)\n .unique('text')\n .unique('value', { ignoreUndefined: true })\n .required()\n\nexport const questionDetailsFullSchema = {\n autoCompleteOptionsSchema,\n classesSchema,\n declarationTextSchema,\n documentTypesSchema,\n enhancedActionSchema,\n exactFilesSchema,\n fileTypesSchema,\n hintTextSchema,\n imageTypesSchema,\n instructionTextSchema,\n jsEnabledSchema,\n listForQuestionSchema,\n listItemCountSchema,\n listItemsDataSchema,\n maxFilesSchema,\n maxFutureSchema,\n maxLengthSchema,\n maxPastSchema,\n maxSchema,\n minFilesSchema,\n minLengthSchema,\n minSchema,\n nameSchema,\n paymentAmountSchema,\n paymentApiKeySchema,\n paymentDescriptionSchema,\n precisionSchema,\n prefixSchema,\n questionOptionalSchema,\n questionSchema,\n questionTypeFullSchema,\n radioHintSchema,\n radioIdSchema,\n radioTextSchema,\n radioValueSchema,\n regexSchema,\n rowsSchema,\n shortDescriptionSchema,\n suffixSchema,\n tabularDataTypesSchema,\n usePostcodeLookupSchema,\n minChecksSchema,\n maxChecksSchema,\n exactChecksSchema,\n countriesSchema,\n minFeaturesSchema,\n maxFeaturesSchema,\n exactFeaturesSchema,\n geometryTypesSchema\n}\n\nexport const formEditorInputPageKeys = {\n pageType: pageTypeSchema,\n questionType: questionTypeSchema\n}\n\n/**\n * Joi schema for `FormEditorInputPage` interface\n * @see {@link FormEditorInputPage}\n */\nexport const formEditorInputPageSchema = Joi.object<FormEditorInputPage>()\n .keys(formEditorInputPageKeys)\n .required()\n .description('Input schema for creating a new page in the form editor')\n\nexport const formEditorInputheckAnswersSettingsKeys = {\n declarationText: shortDescriptionSchema\n}\n\n/**\n * Joi schema for `FormEditorInputCheckAnswersSettings` interface\n * @see {@link FormEditorInputCheckAnswersSettings}\n */\nexport const formEditorInputCheckAnswersSettingSchema =\n Joi.object<FormEditorInputCheckAnswersSettings>()\n .keys(formEditorInputheckAnswersSettingsKeys)\n .required()\n .description('Configuration for the check-answers page')\n\nexport const formEditorInputQuestionKeys = {\n question: questionSchema,\n shortDescription: shortDescriptionSchema,\n hintText: hintTextSchema,\n questionOptional: questionOptionalSchema\n}\n\n/**\n * Joi schema for `FormEditorInputQuestion` interface\n * @see {@link FormEditorInputQuestion}\n */\nexport const formEditorInputQuestionSchema =\n Joi.object<FormEditorInputQuestion>()\n .keys(formEditorInputQuestionKeys)\n .required()\n .description(\n 'Input schema for creating or updating a question in the form editor'\n )\n\nexport const formEditorInputPageSettingsKeys = {\n pageHeadingAndGuidance: pageHeadingAndGuidanceSchema,\n pageHeading: pageHeadingSchema,\n guidanceText: guidanceTextSchema\n}\n\n/**\n * Joi schema for `FormEditorInputPageSettings` interface\n * @see {@link FormEditorInputPageSettings}\n */\nexport const formEditorInputPageSettingsSchema =\n Joi.object<FormEditorInputPageSettings>()\n .keys(formEditorInputPageSettingsKeys)\n .required()\n .description('Settings for page content and display in the form editor')\n\nexport function govukFieldValueIsString(\n govukField: GovukField\n): govukField is GovukStringField {\n return [\n 'question',\n 'hintText',\n 'shortDescription',\n 'autoCompleteOptions',\n 'classes',\n 'prefix',\n 'suffix',\n 'paymentAmount',\n 'paymentDescription'\n ].includes(`${govukField.name}`)\n}\n\nexport function govukFieldIsChecked(\n govukField: GovukField\n): govukField is GovukFieldQuestionOptional | GovukFieldUsePostcodeLookup {\n if (\n govukField.name !== 'questionOptional' &&\n govukField.name !== 'usePostcodeLookup'\n ) {\n return false\n }\n const checkedValue = govukField.items?.[0].checked\n return typeof checkedValue === 'boolean'\n}\n\n// A list of allowed template funtions for use within error message templates\nexport const allowedErrorTemplateFunctions = ['lowerFirst', 'capitalise']\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","names":[],"sources":["../../../../src/form/form-editor/types.ts"],"sourcesContent":["import { type ComponentType } from '~/src/components/enums.js'\nimport {\n type ComponentDef,\n type GeospatialFieldOptionsCountry\n} from '~/src/components/types.js'\nimport { type DateDirections, type DateUnits } from '~/src/conditions/enums.js'\nimport {\n type ConditionWrapperV2,\n type Item\n} from '~/src/form/form-definition/types.js'\n\n/**\n * Interface for `FormEditor` Joi schema\n */\nexport interface FormEditor {\n /**\n * The type of the page\n */\n pageType: string\n\n /**\n * The type of the question\n */\n questionType: string | undefined\n\n /**\n * The sub-type of written answer\n */\n writtenAnswerSub: string\n\n /**\n * The sub-type of date\n */\n dateSub: string\n\n /**\n * The sub-type of location\n */\n locationSub: string\n\n /**\n * The sub-type of lists\n */\n listSub: string\n\n /**\n * The name of the question (unique id)\n */\n name: string\n\n /**\n * The text of the question\n */\n question: string\n\n /**\n * The hint text of the question\n */\n hintText: string\n\n /**\n * Denotes if the question is optional\n */\n questionOptional: string\n\n /**\n * The short description of the question\n */\n shortDescription: string\n\n /**\n * The value of checkbox to reveal instruction text field\n */\n giveInstructions: string\n\n /**\n * The instruction text for location components (optional)\n */\n instructionText: string\n\n /**\n * The value of checkbox to reveal heading and guidance section\n */\n pageHeadingAndGuidance: string\n\n /**\n * The page heading\n */\n pageHeading: string\n\n /**\n * The page guidance text\n */\n guidanceText: string\n\n /**\n * The value of checkbox to reveal repeater section\n */\n repeater: string\n\n /**\n * The maximum number of repeater items\n */\n minItems: number\n\n /**\n * The minimum number of repeater items\n */\n maxItems: number\n\n /**\n * The repeater question set name\n */\n questionSetName: string\n\n /**\n * The value of radio to reveal declaration text field\n */\n needDeclaration: string\n\n /**\n * The check answers declaration text\n */\n declarationText: string\n\n /**\n * Whether confirmation e-mails should be disabled\n */\n disableConfirmationEmail: boolean\n\n /**\n * Whether reference numbers should be enabled\n */\n enableReferenceNumber: boolean\n\n /**\n * Whether user feedback should be disabled\n */\n disableUserFeedback: boolean\n\n /**\n * The min length a field can have\n */\n minLength: string\n\n /**\n * The max length a field can have\n */\n maxLength: string\n\n /**\n * The regex value of a field\n */\n regex: string\n\n /**\n * The number of rows of a textarea\n */\n rows: string\n\n /**\n * The classes to be applied to a field\n */\n classes: string\n\n /**\n * The prefix to be applied to a field\n */\n prefix: string\n\n /**\n * The suffix to be applied to a field\n */\n suffix: string\n\n /**\n * The decimal precision of a number field\n */\n precision: string\n\n /**\n * The lowest number allowed in a field\n */\n min: string\n\n /**\n * The highest number allowed in a field\n */\n max: string\n\n /**\n * The maximum days in the future to allow for a date\n */\n maxFuture: string\n\n /**\n * The maximum days in the past to allow for a date\n */\n maxPast: string\n\n /**\n * The exact number of files to upload\n */\n exactFiles: string\n\n /**\n * The minimum number of files to upload\n */\n minFiles: string\n\n /**\n * The maximum number of files to upload\n */\n maxFiles: string\n\n /**\n * The type of files for upload\n */\n fileTypes: string[]\n\n /**\n * The types of document files for upload\n */\n documentTypes: string[]\n\n /**\n * The types of image files for upload\n */\n imageTypes: string[]\n\n /**\n * The types of tabular data files for upload\n */\n tabularDataTypes: string[]\n\n /**\n * The action required from within a sub-section\n */\n enhancedAction: string\n\n /**\n * Placeholder for inserted section to handle adding/editing radios or checkboxes\n */\n radiosOrCheckboxes: string\n\n /**\n * The unique id of the radio item\n */\n radioId: string\n\n /**\n * The display text of the radio item\n */\n radioText?: string\n\n /**\n * The hint of the radio item\n */\n radioHint?: string\n\n /**\n * The value of the radio item\n */\n radioValue?: string\n\n /**\n * The list name to be applied to a field (if applicable)\n */\n list: string\n\n /**\n * List items in JSON format, such as for radios ro checkboxes\n */\n listItemsData: string\n\n /**\n * The exact number of items to select\n */\n exactChecks: string\n\n /**\n * The minimum number of items to select\n */\n minChecks: string\n\n /**\n * The maximum number of items to select\n */\n maxChecks: string\n\n /**\n * An array of options for autocomplete\n */\n autoCompleteOptions: Item[]\n\n /**\n * Set to 'true' is Javascript is enabled\n */\n jsEnabled: string\n\n /**\n * List item id for conditions\n */\n itemId: string\n\n /**\n * Relative date period for conditions\n */\n period: string\n\n /**\n * Relative date unit for conditions\n */\n unit: DateUnits\n\n /**\n * Relative date direction for conditions\n */\n direction: DateDirections\n\n /**\n * Denotes if page is an Exit Page\n */\n exitPage: boolean\n\n /**\n * Denotes if the UK address question supports postcode lookup\n */\n usePostcodeLookup: string\n\n /**\n * Amount of payment in pounds\n */\n paymentAmount: string\n\n /**\n * Virtual marker for the conditional payment amounts editor section.\n * Carries no own value; rendered via a custom template.\n */\n paymentConditionalAmounts: string\n\n /**\n * Description of the payment (will appear in the payment provider's pages)\n */\n paymentDescription: string\n\n /**\n * Test API key used for test payments\n */\n paymentTestApiKey: string\n\n /**\n * Live API key used for live payments\n */\n paymentLiveApiKey: string\n\n /**\n * Inline conditional-amount editor: amount input value\n */\n conditionalAmount: string\n\n /**\n * Inline conditional-amount editor: selected condition id\n */\n conditionalAmountCondition: string\n\n /**\n * Title that user supplies a section\n */\n sectionTitle: string\n\n /**\n * The country restriction for geospatial questions\n */\n countries?: (GeospatialFieldOptionsCountry | 'any')[]\n}\n\nexport type FormEditorInputPage = Pick<\n FormEditor,\n | 'pageType'\n | 'questionType'\n | 'writtenAnswerSub'\n | 'dateSub'\n | 'locationSub'\n | 'listSub'\n>\n\nexport type FormEditorInputCheckAnswersSettings = Pick<\n FormEditor,\n 'needDeclaration' | 'declarationText'\n>\n\nexport type FormEditorInputConfirmationEmailSettings = Pick<\n FormEditor,\n 'disableConfirmationEmail'\n>\n\nexport type FormEditorInputReferenceNumberSettings = Pick<\n FormEditor,\n 'enableReferenceNumber'\n>\n\nexport type FormEditorInputUserFeedbackSettings = Pick<\n FormEditor,\n 'disableUserFeedback'\n>\n\nexport type FormEditorInputQuestion = Pick<\n FormEditor,\n | 'questionType'\n | 'name'\n | 'question'\n | 'shortDescription'\n | 'hintText'\n | 'declarationText'\n | 'questionOptional'\n | 'minLength'\n | 'maxLength'\n | 'regex'\n | 'rows'\n | 'classes'\n | 'prefix'\n | 'suffix'\n | 'precision'\n | 'min'\n | 'max'\n | 'maxFuture'\n | 'maxPast'\n | 'exactFiles'\n | 'minFiles'\n | 'maxFiles'\n | 'fileTypes'\n | 'documentTypes'\n | 'imageTypes'\n | 'tabularDataTypes'\n | 'autoCompleteOptions'\n | 'enhancedAction'\n | 'radioId'\n | 'radioText'\n | 'radioHint'\n | 'radioValue'\n | 'list'\n | 'listItemsData'\n | 'exactChecks'\n | 'minChecks'\n | 'maxChecks'\n | 'jsEnabled'\n | 'usePostcodeLookup'\n | 'giveInstructions'\n | 'instructionText'\n | 'paymentAmount'\n | 'paymentDescription'\n | 'paymentTestApiKey'\n | 'paymentLiveApiKey'\n | 'conditionalAmount'\n | 'conditionalAmountCondition'\n | 'countries'\n>\n\nexport type FormEditorInputPageSettings = Pick<\n FormEditor,\n | 'pageHeadingAndGuidance'\n | 'pageHeading'\n | 'guidanceText'\n | 'repeater'\n | 'minItems'\n | 'maxItems'\n | 'questionSetName'\n | 'exitPage'\n>\n\nexport type FormEditorInputGuidancePage = Pick<\n FormEditor,\n 'pageHeading' | 'guidanceText' | 'exitPage'\n>\n\nexport type FormEditorInputQuestionDetails = Pick<\n FormEditorInputQuestion,\n | 'question'\n | 'hintText'\n | 'shortDescription'\n | 'questionOptional'\n | 'questionType'\n | 'fileTypes'\n | 'documentTypes'\n | 'imageTypes'\n | 'tabularDataTypes'\n | 'autoCompleteOptions'\n | 'enhancedAction'\n | 'radioId'\n | 'radioText'\n | 'radioHint'\n | 'radioValue'\n | 'listItemsData'\n | 'jsEnabled'\n | 'paymentAmount'\n | 'paymentDescription'\n | 'paymentTestApiKey'\n | 'paymentLiveApiKey'\n | 'conditionalAmount'\n | 'conditionalAmountCondition'\n>\n\ntype ListValue = string | boolean | number\n\nexport interface ListItem {\n id?: string\n text?: string\n hint?: {\n text: string\n }\n value?: ListValue\n}\n\nexport interface ListLabel {\n text: string\n classes: string\n}\n\nexport interface ListElement extends ListItem {\n readonly id: string\n text: string\n value: ListValue\n label?: ListLabel\n}\n\nexport interface ReadonlyHint {\n readonly text: string\n}\n\nexport interface ListItemReadonly extends ListElement {\n readonly text: string\n readonly hint?: ReadonlyHint\n readonly value: ListValue\n readonly label?: ListLabel\n}\n\nexport interface DateItem {\n name: string\n classes: string\n}\n\nexport interface ListConflict {\n conflictItem: {\n id: string\n text: string\n }\n originalItem?: {\n id: string\n text: string\n }\n conditionNames: string[]\n linkableItems: {\n id?: string\n text: string\n value: string | number | boolean\n }[]\n closestMatch?: string | number | boolean\n}\n\nexport interface QuestionSessionState {\n questionType?: ComponentType\n questionDetails?: Partial<ComponentDef>\n editRow?: {\n radioId?: string\n radioText?: string\n radioHint?: string\n radioValue?: ListValue\n expanded?: boolean\n }\n listItems?: ListItem[]\n isReordering?: boolean\n lastMovedId?: string\n lastMoveDirection?: string\n listConflicts?: ListConflict[]\n conditionalAmounts?: ConditionalAmountState[]\n conditionalAmountEditRow?: ConditionalAmountEditRow\n}\n\nexport interface ConditionalAmountState {\n id: string\n amount: number\n condition: string\n}\n\nexport interface ConditionalAmountEditRow {\n expanded: boolean\n id?: string\n amount?: number | string\n condition?: string\n}\n\nexport interface ConditionSessionState {\n id?: string\n stateId?: string\n conditionWrapper?: ConditionWrapperV2\n}\n\nexport interface ConditionDetails {\n pageCondition: string | undefined\n pageConditionDetails: ConditionWrapperV2 | undefined\n pageConditionPresentationString: string | null\n}\n\nexport interface GovukFieldItem {\n text?: string\n value?: string\n checked?: boolean\n hint?: { text?: string; html?: string; classes?: string }\n}\n\nexport interface GovukSummaryListRow {\n key?: {\n text?: string\n classes?: string\n }\n value?: {\n text?: string\n html?: string\n classes?: string\n }\n}\n\nexport interface GovukField {\n id?: string\n name?: string\n idPrefix?: string\n fieldset?: {\n legend?: { text?: string; isPageHeading?: boolean; classes?: string }\n }\n value?: string | boolean | number | string[] | Item[]\n classes?: string\n label?: {\n text?: string\n html?: string\n classes?: string\n isPageHeading?: boolean\n }\n hint?: { text?: string; html?: string; classes?: string }\n items?: GovukFieldItem[]\n rows?: number\n type?: string\n customTemplate?: string\n formGroup?: {\n classes?: string\n }\n prefix?: {\n text?: string\n }\n preContent?: {\n path?: string\n }\n postContent?: {\n path?: string\n }\n disabled?: boolean\n customMeta?: object\n}\n\nexport type GovukFieldQuestionOptional = Omit<GovukField, 'name' | 'items'> & {\n name: 'questionOptional'\n items: [\n {\n text?: string\n value?: string\n checked: boolean\n }\n ]\n}\n\nexport type GovukFieldUsePostcodeLookup = Omit<GovukField, 'name' | 'items'> & {\n name: 'usePostcodeLookup'\n items: [\n {\n text?: string\n value?: string\n checked: boolean\n }\n ]\n}\n\nexport type GovukStringField = Omit<GovukField, 'value'> & { value: string }\n\nexport interface FormEditorGovukField {\n question?: GovukField\n hintText?: GovukField\n instructionText?: GovukField\n questionOptional?: GovukField\n shortDescription?: GovukField\n fileTypes?: GovukField\n documentTypes?: GovukField\n imageTypes?: GovukField\n tabularDataTypes?: GovukField\n radiosOrCheckboxes?: GovukField\n autoCompleteOptions?: GovukField\n usePostcodeLookup?: GovukField\n declarationText?: GovukField\n paymentAmount?: GovukField\n paymentConditionalAmounts?: GovukField\n paymentDescription?: GovukField\n paymentTestApiKey?: GovukField\n paymentLiveApiKey?: GovukField\n errorMessage?: { text: string }\n}\n\nexport type FormEditorGovukFieldBase = Omit<\n FormEditorGovukField,\n 'errorMessage'\n>\n\nexport type FormEditorGovukFieldBaseKeys = keyof FormEditorGovukFieldBase\n\nexport interface FormEditorCheckbox {\n text?: string\n hint?: {\n text?: string\n }\n value?: string\n divider?: {\n text?: string\n hint?: string\n value?: string\n }\n}\n\nexport type AdvancedFieldMappingsType = Record<\n ComponentType,\n Record<string, string>\n>\n\nexport type HTMLElementOrNull = HTMLElement | null\n\nexport type HTMLInputElementOrNull = HTMLInputElement | null\n\nexport interface ErrorPreviewFieldMappingDef {\n min?: { fieldName: string; placeholder: string }\n max?: { fieldName: string; placeholder: string }\n}\n"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"file":"types.js","names":[],"sources":["../../../../src/form/form-editor/types.ts"],"sourcesContent":["import {\n type ComponentType,\n type GeospatialFieldGeometryTypesEnum\n} from '~/src/components/enums.js'\nimport {\n type ComponentDef,\n type GeospatialFieldOptionsCountry\n} from '~/src/components/types.js'\nimport { type DateDirections, type DateUnits } from '~/src/conditions/enums.js'\nimport {\n type ConditionWrapperV2,\n type Item\n} from '~/src/form/form-definition/types.js'\n\n/**\n * Interface for `FormEditor` Joi schema\n */\nexport interface FormEditor {\n /**\n * The type of the page\n */\n pageType: string\n\n /**\n * The type of the question\n */\n questionType: string | undefined\n\n /**\n * The sub-type of written answer\n */\n writtenAnswerSub: string\n\n /**\n * The sub-type of date\n */\n dateSub: string\n\n /**\n * The sub-type of location\n */\n locationSub: string\n\n /**\n * The sub-type of lists\n */\n listSub: string\n\n /**\n * The name of the question (unique id)\n */\n name: string\n\n /**\n * The text of the question\n */\n question: string\n\n /**\n * The hint text of the question\n */\n hintText: string\n\n /**\n * Denotes if the question is optional\n */\n questionOptional: string\n\n /**\n * The short description of the question\n */\n shortDescription: string\n\n /**\n * The value of checkbox to reveal instruction text field\n */\n giveInstructions: string\n\n /**\n * The instruction text for location components (optional)\n */\n instructionText: string\n\n /**\n * The value of checkbox to reveal heading and guidance section\n */\n pageHeadingAndGuidance: string\n\n /**\n * The page heading\n */\n pageHeading: string\n\n /**\n * The page guidance text\n */\n guidanceText: string\n\n /**\n * The value of checkbox to reveal repeater section\n */\n repeater: string\n\n /**\n * The maximum number of repeater items\n */\n minItems: number\n\n /**\n * The minimum number of repeater items\n */\n maxItems: number\n\n /**\n * The repeater question set name\n */\n questionSetName: string\n\n /**\n * The value of radio to reveal declaration text field\n */\n needDeclaration: string\n\n /**\n * The check answers declaration text\n */\n declarationText: string\n\n /**\n * Whether confirmation e-mails should be disabled\n */\n disableConfirmationEmail: boolean\n\n /**\n * Whether reference numbers should be enabled\n */\n enableReferenceNumber: boolean\n\n /**\n * Whether user feedback should be disabled\n */\n disableUserFeedback: boolean\n\n /**\n * The min length a field can have\n */\n minLength: string\n\n /**\n * The max length a field can have\n */\n maxLength: string\n\n /**\n * The regex value of a field\n */\n regex: string\n\n /**\n * The number of rows of a textarea\n */\n rows: string\n\n /**\n * The classes to be applied to a field\n */\n classes: string\n\n /**\n * The prefix to be applied to a field\n */\n prefix: string\n\n /**\n * The suffix to be applied to a field\n */\n suffix: string\n\n /**\n * The decimal precision of a number field\n */\n precision: string\n\n /**\n * The lowest number allowed in a field\n */\n min: string\n\n /**\n * The highest number allowed in a field\n */\n max: string\n\n /**\n * The maximum days in the future to allow for a date\n */\n maxFuture: string\n\n /**\n * The maximum days in the past to allow for a date\n */\n maxPast: string\n\n /**\n * The exact number of files to upload\n */\n exactFiles: string\n\n /**\n * The minimum number of files to upload\n */\n minFiles: string\n\n /**\n * The maximum number of files to upload\n */\n maxFiles: string\n\n /**\n * The type of files for upload\n */\n fileTypes: string[]\n\n /**\n * The types of document files for upload\n */\n documentTypes: string[]\n\n /**\n * The types of image files for upload\n */\n imageTypes: string[]\n\n /**\n * The types of tabular data files for upload\n */\n tabularDataTypes: string[]\n\n /**\n * The action required from within a sub-section\n */\n enhancedAction: string\n\n /**\n * Placeholder for inserted section to handle adding/editing radios or checkboxes\n */\n radiosOrCheckboxes: string\n\n /**\n * The unique id of the radio item\n */\n radioId: string\n\n /**\n * The display text of the radio item\n */\n radioText?: string\n\n /**\n * The hint of the radio item\n */\n radioHint?: string\n\n /**\n * The value of the radio item\n */\n radioValue?: string\n\n /**\n * The list name to be applied to a field (if applicable)\n */\n list: string\n\n /**\n * List items in JSON format, such as for radios ro checkboxes\n */\n listItemsData: string\n\n /**\n * The exact number of items to select\n */\n exactChecks: string\n\n /**\n * The minimum number of items to select\n */\n minChecks: string\n\n /**\n * The maximum number of items to select\n */\n maxChecks: string\n\n /**\n * An array of options for autocomplete\n */\n autoCompleteOptions: Item[]\n\n /**\n * Set to 'true' is Javascript is enabled\n */\n jsEnabled: string\n\n /**\n * List item id for conditions\n */\n itemId: string\n\n /**\n * Relative date period for conditions\n */\n period: string\n\n /**\n * Relative date unit for conditions\n */\n unit: DateUnits\n\n /**\n * Relative date direction for conditions\n */\n direction: DateDirections\n\n /**\n * Denotes if page is an Exit Page\n */\n exitPage: boolean\n\n /**\n * Denotes if the UK address question supports postcode lookup\n */\n usePostcodeLookup: string\n\n /**\n * Amount of payment in pounds\n */\n paymentAmount: string\n\n /**\n * Virtual marker for the conditional payment amounts editor section.\n * Carries no own value; rendered via a custom template.\n */\n paymentConditionalAmounts: string\n\n /**\n * Description of the payment (will appear in the payment provider's pages)\n */\n paymentDescription: string\n\n /**\n * Test API key used for test payments\n */\n paymentTestApiKey: string\n\n /**\n * Live API key used for live payments\n */\n paymentLiveApiKey: string\n\n /**\n * Inline conditional-amount editor: amount input value\n */\n conditionalAmount: string\n\n /**\n * Inline conditional-amount editor: selected condition id\n */\n conditionalAmountCondition: string\n\n /**\n * Title that user supplies a section\n */\n sectionTitle: string\n\n /**\n * The country restriction for geospatial questions\n */\n countries?: (GeospatialFieldOptionsCountry | 'any')[]\n\n /**\n * The exact number of features to define for geospatial questions\n */\n exactFeatures: string\n\n /**\n * The minimum number of features to define for geospatial questions\n */\n minFeatures: string\n\n /**\n * The maximum number of features to define for geospatial questions\n */\n maxFeatures: string\n\n /**\n * The geometry types restriction for geospatial questions\n */\n geometryTypes?: GeospatialFieldGeometryTypesEnum[]\n}\n\nexport type FormEditorInputPage = Pick<\n FormEditor,\n | 'pageType'\n | 'questionType'\n | 'writtenAnswerSub'\n | 'dateSub'\n | 'locationSub'\n | 'listSub'\n>\n\nexport type FormEditorInputCheckAnswersSettings = Pick<\n FormEditor,\n 'needDeclaration' | 'declarationText'\n>\n\nexport type FormEditorInputConfirmationEmailSettings = Pick<\n FormEditor,\n 'disableConfirmationEmail'\n>\n\nexport type FormEditorInputReferenceNumberSettings = Pick<\n FormEditor,\n 'enableReferenceNumber'\n>\n\nexport type FormEditorInputUserFeedbackSettings = Pick<\n FormEditor,\n 'disableUserFeedback'\n>\n\nexport type FormEditorInputQuestion = Pick<\n FormEditor,\n | 'questionType'\n | 'name'\n | 'question'\n | 'shortDescription'\n | 'hintText'\n | 'declarationText'\n | 'questionOptional'\n | 'minLength'\n | 'maxLength'\n | 'regex'\n | 'rows'\n | 'classes'\n | 'prefix'\n | 'suffix'\n | 'precision'\n | 'min'\n | 'max'\n | 'maxFuture'\n | 'maxPast'\n | 'exactFiles'\n | 'minFiles'\n | 'maxFiles'\n | 'fileTypes'\n | 'documentTypes'\n | 'imageTypes'\n | 'tabularDataTypes'\n | 'autoCompleteOptions'\n | 'enhancedAction'\n | 'radioId'\n | 'radioText'\n | 'radioHint'\n | 'radioValue'\n | 'list'\n | 'listItemsData'\n | 'exactChecks'\n | 'minChecks'\n | 'maxChecks'\n | 'jsEnabled'\n | 'usePostcodeLookup'\n | 'giveInstructions'\n | 'instructionText'\n | 'paymentAmount'\n | 'paymentDescription'\n | 'paymentTestApiKey'\n | 'paymentLiveApiKey'\n | 'conditionalAmount'\n | 'conditionalAmountCondition'\n | 'countries'\n | 'exactFeatures'\n | 'minFeatures'\n | 'maxFeatures'\n>\n\nexport type FormEditorInputPageSettings = Pick<\n FormEditor,\n | 'pageHeadingAndGuidance'\n | 'pageHeading'\n | 'guidanceText'\n | 'repeater'\n | 'minItems'\n | 'maxItems'\n | 'questionSetName'\n | 'exitPage'\n>\n\nexport type FormEditorInputGuidancePage = Pick<\n FormEditor,\n 'pageHeading' | 'guidanceText' | 'exitPage'\n>\n\nexport type FormEditorInputQuestionDetails = Pick<\n FormEditorInputQuestion,\n | 'question'\n | 'hintText'\n | 'shortDescription'\n | 'questionOptional'\n | 'questionType'\n | 'fileTypes'\n | 'documentTypes'\n | 'imageTypes'\n | 'tabularDataTypes'\n | 'autoCompleteOptions'\n | 'enhancedAction'\n | 'radioId'\n | 'radioText'\n | 'radioHint'\n | 'radioValue'\n | 'listItemsData'\n | 'jsEnabled'\n | 'paymentAmount'\n | 'paymentDescription'\n | 'paymentTestApiKey'\n | 'paymentLiveApiKey'\n | 'conditionalAmount'\n | 'conditionalAmountCondition'\n>\n\ntype ListValue = string | boolean | number\n\nexport interface ListItem {\n id?: string\n text?: string\n hint?: {\n text: string\n }\n value?: ListValue\n}\n\nexport interface ListLabel {\n text: string\n classes: string\n}\n\nexport interface ListElement extends ListItem {\n readonly id: string\n text: string\n value: ListValue\n label?: ListLabel\n}\n\nexport interface ReadonlyHint {\n readonly text: string\n}\n\nexport interface ListItemReadonly extends ListElement {\n readonly text: string\n readonly hint?: ReadonlyHint\n readonly value: ListValue\n readonly label?: ListLabel\n}\n\nexport interface DateItem {\n name: string\n classes: string\n}\n\nexport interface ListConflict {\n conflictItem: {\n id: string\n text: string\n }\n originalItem?: {\n id: string\n text: string\n }\n conditionNames: string[]\n linkableItems: {\n id?: string\n text: string\n value: string | number | boolean\n }[]\n closestMatch?: string | number | boolean\n}\n\nexport interface QuestionSessionState {\n questionType?: ComponentType\n questionDetails?: Partial<ComponentDef>\n editRow?: {\n radioId?: string\n radioText?: string\n radioHint?: string\n radioValue?: ListValue\n expanded?: boolean\n }\n listItems?: ListItem[]\n isReordering?: boolean\n lastMovedId?: string\n lastMoveDirection?: string\n listConflicts?: ListConflict[]\n conditionalAmounts?: ConditionalAmountState[]\n conditionalAmountEditRow?: ConditionalAmountEditRow\n}\n\nexport interface ConditionalAmountState {\n id: string\n amount: number\n condition: string\n}\n\nexport interface ConditionalAmountEditRow {\n expanded: boolean\n id?: string\n amount?: number | string\n condition?: string\n}\n\nexport interface ConditionSessionState {\n id?: string\n stateId?: string\n conditionWrapper?: ConditionWrapperV2\n}\n\nexport interface ConditionDetails {\n pageCondition: string | undefined\n pageConditionDetails: ConditionWrapperV2 | undefined\n pageConditionPresentationString: string | null\n}\n\nexport interface GovukFieldItem {\n text?: string\n value?: string\n checked?: boolean\n hint?: { text?: string; html?: string; classes?: string }\n}\n\nexport interface GovukSummaryListRow {\n key?: {\n text?: string\n classes?: string\n }\n value?: {\n text?: string\n html?: string\n classes?: string\n }\n}\n\nexport interface GovukField {\n id?: string\n name?: string\n idPrefix?: string\n fieldset?: {\n legend?: { text?: string; isPageHeading?: boolean; classes?: string }\n }\n value?: string | boolean | number | string[] | Item[]\n classes?: string\n label?: {\n text?: string\n html?: string\n classes?: string\n isPageHeading?: boolean\n }\n hint?: { text?: string; html?: string; classes?: string }\n items?: GovukFieldItem[]\n rows?: number\n type?: string\n customTemplate?: string\n formGroup?: {\n classes?: string\n }\n prefix?: {\n text?: string\n }\n preContent?: {\n path?: string\n }\n postContent?: {\n path?: string\n }\n disabled?: boolean\n customMeta?: object\n}\n\nexport type GovukFieldQuestionOptional = Omit<GovukField, 'name' | 'items'> & {\n name: 'questionOptional'\n items: [\n {\n text?: string\n value?: string\n checked: boolean\n }\n ]\n}\n\nexport type GovukFieldUsePostcodeLookup = Omit<GovukField, 'name' | 'items'> & {\n name: 'usePostcodeLookup'\n items: [\n {\n text?: string\n value?: string\n checked: boolean\n }\n ]\n}\n\nexport type GovukStringField = Omit<GovukField, 'value'> & { value: string }\n\nexport interface FormEditorGovukField {\n question?: GovukField\n hintText?: GovukField\n instructionText?: GovukField\n questionOptional?: GovukField\n shortDescription?: GovukField\n fileTypes?: GovukField\n documentTypes?: GovukField\n imageTypes?: GovukField\n tabularDataTypes?: GovukField\n radiosOrCheckboxes?: GovukField\n autoCompleteOptions?: GovukField\n usePostcodeLookup?: GovukField\n declarationText?: GovukField\n paymentAmount?: GovukField\n paymentConditionalAmounts?: GovukField\n paymentDescription?: GovukField\n paymentTestApiKey?: GovukField\n paymentLiveApiKey?: GovukField\n errorMessage?: { text: string }\n}\n\nexport type FormEditorGovukFieldBase = Omit<\n FormEditorGovukField,\n 'errorMessage'\n>\n\nexport type FormEditorGovukFieldBaseKeys = keyof FormEditorGovukFieldBase\n\nexport interface FormEditorCheckbox {\n text?: string\n hint?: {\n text?: string\n }\n value?: string\n divider?: {\n text?: string\n hint?: string\n value?: string\n }\n}\n\nexport type AdvancedFieldMappingsType = Record<\n ComponentType,\n Record<string, string>\n>\n\nexport type HTMLElementOrNull = HTMLElement | null\n\nexport type HTMLInputElementOrNull = HTMLInputElement | null\n\nexport interface ErrorPreviewFieldMappingDef {\n min?: { fieldName: string; placeholder: string }\n max?: { fieldName: string; placeholder: string }\n}\n"],"mappings":"","ignoreList":[]}
@@ -33,5 +33,10 @@ export declare enum GeospatialFieldOptionsCountryEnum {
33
33
  Scotland = "scotland",
34
34
  Wales = "wales"
35
35
  }
36
+ export declare enum GeospatialFieldGeometryTypesEnum {
37
+ Point = "point",
38
+ Line = "line",
39
+ Shape = "shape"
40
+ }
36
41
  export declare const PreviewTypeEnum: Record<string, string>;
37
42
  //# sourceMappingURL=enums.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"enums.d.ts","sourceRoot":"","sources":["../../../src/components/enums.ts"],"names":[],"mappings":"AAAA,oBAAY,aAAa;IACvB,SAAS,cAAc;IACvB,kBAAkB,uBAAuB;IACzC,UAAU,eAAe;IACzB,cAAc,mBAAmB;IACjC,cAAc,mBAAmB;IACjC,WAAW,gBAAgB;IAC3B,iBAAiB,sBAAsB;IACvC,WAAW,gBAAgB;IAC3B,eAAe,oBAAoB;IACnC,WAAW,gBAAgB;IAC3B,cAAc,mBAAmB;IACjC,oBAAoB,yBAAyB;IAC7C,iBAAiB,sBAAsB;IACvC,IAAI,SAAS;IACb,SAAS,cAAc;IACvB,OAAO,YAAY;IACnB,IAAI,SAAS;IACb,QAAQ,aAAa;IACrB,eAAe,oBAAoB;IACnC,gBAAgB,qBAAqB;IACrC,oBAAoB,yBAAyB;IAC7C,cAAc,mBAAmB;IACjC,4BAA4B,iCAAiC;IAC7D,YAAY,iBAAiB;IAC7B,WAAW,gBAAgB;IAC3B,YAAY,iBAAiB;IAC7B,eAAe,oBAAoB;CACpC;AAED,oBAAY,iCAAiC;IAC3C,OAAO,YAAY;IACnB,eAAe,qBAAqB;IACpC,QAAQ,aAAa;IACrB,KAAK,UAAU;CAChB;AAED,eAAO,MAAM,eAAe,EAIvB,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA"}
1
+ {"version":3,"file":"enums.d.ts","sourceRoot":"","sources":["../../../src/components/enums.ts"],"names":[],"mappings":"AAAA,oBAAY,aAAa;IACvB,SAAS,cAAc;IACvB,kBAAkB,uBAAuB;IACzC,UAAU,eAAe;IACzB,cAAc,mBAAmB;IACjC,cAAc,mBAAmB;IACjC,WAAW,gBAAgB;IAC3B,iBAAiB,sBAAsB;IACvC,WAAW,gBAAgB;IAC3B,eAAe,oBAAoB;IACnC,WAAW,gBAAgB;IAC3B,cAAc,mBAAmB;IACjC,oBAAoB,yBAAyB;IAC7C,iBAAiB,sBAAsB;IACvC,IAAI,SAAS;IACb,SAAS,cAAc;IACvB,OAAO,YAAY;IACnB,IAAI,SAAS;IACb,QAAQ,aAAa;IACrB,eAAe,oBAAoB;IACnC,gBAAgB,qBAAqB;IACrC,oBAAoB,yBAAyB;IAC7C,cAAc,mBAAmB;IACjC,4BAA4B,iCAAiC;IAC7D,YAAY,iBAAiB;IAC7B,WAAW,gBAAgB;IAC3B,YAAY,iBAAiB;IAC7B,eAAe,oBAAoB;CACpC;AAED,oBAAY,iCAAiC;IAC3C,OAAO,YAAY;IACnB,eAAe,qBAAqB;IACpC,QAAQ,aAAa;IACrB,KAAK,UAAU;CAChB;AAED,oBAAY,gCAAgC;IAC1C,KAAK,UAAU;IACf,IAAI,SAAS;IACb,KAAK,UAAU;CAChB;AAED,eAAO,MAAM,eAAe,EAIvB,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA"}
@@ -1,5 +1,5 @@
1
1
  export { ComponentTypes } from '../components/component-types.js';
2
- export { ComponentType, GeospatialFieldOptionsCountryEnum, PreviewTypeEnum } from '../components/enums.js';
2
+ export { ComponentType, GeospatialFieldGeometryTypesEnum, GeospatialFieldOptionsCountryEnum, PreviewTypeEnum } from '../components/enums.js';
3
3
  export { allDocumentTypes, allImageTypes, allTabularDataTypes } from '../components/file-types.js';
4
4
  export { getComponentDefaults, hasConditionSupport, hasContent, hasContentField, hasFormField, hasHint, hasInputField, hasListField, hasSelectionFields, hasTitle, isConditionalRevealType, isConditionalType, isContentType, isFormType, isListType } from '../components/helpers.js';
5
5
  export { getYesNoList, yesNoListId, yesNoListName, yesNoListNoItemId, yesNoListYesItemId } from '../components/yes-no-helper.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAA;AACpE,OAAO,EACL,aAAa,EACb,iCAAiC,EACjC,eAAe,EAChB,MAAM,2BAA2B,CAAA;AAClC,OAAO,EACL,gBAAgB,EAChB,aAAa,EACb,mBAAmB,EACpB,MAAM,gCAAgC,CAAA;AACvC,OAAO,EACL,oBAAoB,EACpB,mBAAmB,EACnB,UAAU,EACV,eAAe,EACf,YAAY,EACZ,OAAO,EACP,aAAa,EACb,YAAY,EACZ,kBAAkB,EAClB,QAAQ,EACR,uBAAuB,EACvB,iBAAiB,EACjB,aAAa,EACb,UAAU,EACV,UAAU,EACX,MAAM,6BAA6B,CAAA;AACpC,OAAO,EACL,YAAY,EACZ,WAAW,EACX,aAAa,EACb,iBAAiB,EACjB,kBAAkB,EACnB,MAAM,mCAAmC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAA;AACpE,OAAO,EACL,aAAa,EACb,gCAAgC,EAChC,iCAAiC,EACjC,eAAe,EAChB,MAAM,2BAA2B,CAAA;AAClC,OAAO,EACL,gBAAgB,EAChB,aAAa,EACb,mBAAmB,EACpB,MAAM,gCAAgC,CAAA;AACvC,OAAO,EACL,oBAAoB,EACpB,mBAAmB,EACnB,UAAU,EACV,eAAe,EACf,YAAY,EACZ,OAAO,EACP,aAAa,EACb,YAAY,EACZ,kBAAkB,EAClB,QAAQ,EACR,uBAAuB,EACvB,iBAAiB,EACjB,aAAa,EACb,UAAU,EACV,UAAU,EACX,MAAM,6BAA6B,CAAA;AACpC,OAAO,EACL,YAAY,EACZ,WAAW,EACX,aAAa,EACb,iBAAiB,EACjB,kBAAkB,EACnB,MAAM,mCAAmC,CAAA"}
@@ -1,5 +1,5 @@
1
1
  import { type LanguageMessages } from 'joi';
2
- import { type ComponentType, type PreviewTypeEnum } from '../components/enums.js';
2
+ import { type ComponentType, type GeospatialFieldGeometryTypesEnum, type PreviewTypeEnum } from '../components/enums.js';
3
3
  import { type ListTypeContent, type ListTypeOption } from '../form/form-definition/types.js';
4
4
  export type ConditionalComponentType = Exclude<ConditionalComponentsDef['type'], ContentComponentsDef>;
5
5
  /**
@@ -228,6 +228,12 @@ export interface GeospatialFieldComponent extends FormFieldBase {
228
228
  options: FormFieldBase['options'] & {
229
229
  condition?: string;
230
230
  countries?: GeospatialFieldOptionsCountry[];
231
+ geometryTypes?: GeospatialFieldGeometryTypesEnum[];
232
+ };
233
+ schema?: {
234
+ max?: number;
235
+ min?: number;
236
+ length?: number;
231
237
  };
232
238
  }
233
239
  export interface DetailsComponent extends ContentFieldBase {
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/components/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/components/types.ts"],"names":[],"mappings":"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"}
@@ -70,6 +70,10 @@ export declare const exactChecksSchema: Joi.NumberSchema<number>;
70
70
  export declare const minChecksSchema: Joi.NumberSchema<number>;
71
71
  export declare const maxChecksSchema: Joi.NumberSchema<number>;
72
72
  export declare const countriesSchema: Joi.ArraySchema<any[]>;
73
+ export declare const exactFeaturesSchema: Joi.NumberSchema<number>;
74
+ export declare const minFeaturesSchema: Joi.NumberSchema<number>;
75
+ export declare const maxFeaturesSchema: Joi.NumberSchema<number>;
76
+ export declare const geometryTypesSchema: Joi.ArraySchema<any[]>;
73
77
  interface DSLSchema<TSchema = Record<string, unknown>[]> extends ArraySchema<TSchema> {
74
78
  rowSeparator: (rowSep: string | RegExp) => DSLSchema<TSchema>;
75
79
  row: (rowSep: string | RegExp) => DSLSchema<TSchema>;
@@ -134,6 +138,10 @@ export declare const questionDetailsFullSchema: {
134
138
  maxChecksSchema: Joi.NumberSchema<number>;
135
139
  exactChecksSchema: Joi.NumberSchema<number>;
136
140
  countriesSchema: Joi.ArraySchema<any[]>;
141
+ minFeaturesSchema: Joi.NumberSchema<number>;
142
+ maxFeaturesSchema: Joi.NumberSchema<number>;
143
+ exactFeaturesSchema: Joi.NumberSchema<number>;
144
+ geometryTypesSchema: Joi.ArraySchema<any[]>;
137
145
  };
138
146
  export declare const formEditorInputPageKeys: {
139
147
  pageType: Joi.StringSchema<string>;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/form/form-editor/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/form/form-editor/index.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { type ComponentType } from '../../components/enums.js';
1
+ import { type ComponentType, type GeospatialFieldGeometryTypesEnum } from '../../components/enums.js';
2
2
  import { type ComponentDef, type GeospatialFieldOptionsCountry } from '../../components/types.js';
3
3
  import { type DateDirections, type DateUnits } from '../../conditions/enums.js';
4
4
  import { type ConditionWrapperV2, type Item } from '../../form/form-definition/types.js';
@@ -295,13 +295,29 @@ export interface FormEditor {
295
295
  * The country restriction for geospatial questions
296
296
  */
297
297
  countries?: (GeospatialFieldOptionsCountry | 'any')[];
298
+ /**
299
+ * The exact number of features to define for geospatial questions
300
+ */
301
+ exactFeatures: string;
302
+ /**
303
+ * The minimum number of features to define for geospatial questions
304
+ */
305
+ minFeatures: string;
306
+ /**
307
+ * The maximum number of features to define for geospatial questions
308
+ */
309
+ maxFeatures: string;
310
+ /**
311
+ * The geometry types restriction for geospatial questions
312
+ */
313
+ geometryTypes?: GeospatialFieldGeometryTypesEnum[];
298
314
  }
299
315
  export type FormEditorInputPage = Pick<FormEditor, 'pageType' | 'questionType' | 'writtenAnswerSub' | 'dateSub' | 'locationSub' | 'listSub'>;
300
316
  export type FormEditorInputCheckAnswersSettings = Pick<FormEditor, 'needDeclaration' | 'declarationText'>;
301
317
  export type FormEditorInputConfirmationEmailSettings = Pick<FormEditor, 'disableConfirmationEmail'>;
302
318
  export type FormEditorInputReferenceNumberSettings = Pick<FormEditor, 'enableReferenceNumber'>;
303
319
  export type FormEditorInputUserFeedbackSettings = Pick<FormEditor, 'disableUserFeedback'>;
304
- export type FormEditorInputQuestion = Pick<FormEditor, 'questionType' | 'name' | 'question' | 'shortDescription' | 'hintText' | 'declarationText' | 'questionOptional' | 'minLength' | 'maxLength' | 'regex' | 'rows' | 'classes' | 'prefix' | 'suffix' | 'precision' | 'min' | 'max' | 'maxFuture' | 'maxPast' | 'exactFiles' | 'minFiles' | 'maxFiles' | 'fileTypes' | 'documentTypes' | 'imageTypes' | 'tabularDataTypes' | 'autoCompleteOptions' | 'enhancedAction' | 'radioId' | 'radioText' | 'radioHint' | 'radioValue' | 'list' | 'listItemsData' | 'exactChecks' | 'minChecks' | 'maxChecks' | 'jsEnabled' | 'usePostcodeLookup' | 'giveInstructions' | 'instructionText' | 'paymentAmount' | 'paymentDescription' | 'paymentTestApiKey' | 'paymentLiveApiKey' | 'conditionalAmount' | 'conditionalAmountCondition' | 'countries'>;
320
+ export type FormEditorInputQuestion = Pick<FormEditor, 'questionType' | 'name' | 'question' | 'shortDescription' | 'hintText' | 'declarationText' | 'questionOptional' | 'minLength' | 'maxLength' | 'regex' | 'rows' | 'classes' | 'prefix' | 'suffix' | 'precision' | 'min' | 'max' | 'maxFuture' | 'maxPast' | 'exactFiles' | 'minFiles' | 'maxFiles' | 'fileTypes' | 'documentTypes' | 'imageTypes' | 'tabularDataTypes' | 'autoCompleteOptions' | 'enhancedAction' | 'radioId' | 'radioText' | 'radioHint' | 'radioValue' | 'list' | 'listItemsData' | 'exactChecks' | 'minChecks' | 'maxChecks' | 'jsEnabled' | 'usePostcodeLookup' | 'giveInstructions' | 'instructionText' | 'paymentAmount' | 'paymentDescription' | 'paymentTestApiKey' | 'paymentLiveApiKey' | 'conditionalAmount' | 'conditionalAmountCondition' | 'countries' | 'exactFeatures' | 'minFeatures' | 'maxFeatures'>;
305
321
  export type FormEditorInputPageSettings = Pick<FormEditor, 'pageHeadingAndGuidance' | 'pageHeading' | 'guidanceText' | 'repeater' | 'minItems' | 'maxItems' | 'questionSetName' | 'exitPage'>;
306
322
  export type FormEditorInputGuidancePage = Pick<FormEditor, 'pageHeading' | 'guidanceText' | 'exitPage'>;
307
323
  export type FormEditorInputQuestionDetails = Pick<FormEditorInputQuestion, 'question' | 'hintText' | 'shortDescription' | 'questionOptional' | 'questionType' | 'fileTypes' | 'documentTypes' | 'imageTypes' | 'tabularDataTypes' | 'autoCompleteOptions' | 'enhancedAction' | 'radioId' | 'radioText' | 'radioHint' | 'radioValue' | 'listItemsData' | 'jsEnabled' | 'paymentAmount' | 'paymentDescription' | 'paymentTestApiKey' | 'paymentLiveApiKey' | 'conditionalAmount' | 'conditionalAmountCondition'>;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/form/form-editor/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/form/form-editor/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@defra/forms-model",
3
- "version": "3.0.666",
3
+ "version": "3.0.668",
4
4
  "description": "A hapi plugin providing the model for Defra forms",
5
5
  "homepage": "https://github.com/DEFRA/forms-designer/tree/main/model#readme",
6
6
  "types": "dist/types/index.d.ts",
@@ -35,6 +35,12 @@ export enum GeospatialFieldOptionsCountryEnum {
35
35
  Wales = 'wales'
36
36
  }
37
37
 
38
+ export enum GeospatialFieldGeometryTypesEnum {
39
+ Point = 'point',
40
+ Line = 'line',
41
+ Shape = 'shape'
42
+ }
43
+
38
44
  export const PreviewTypeEnum = {
39
45
  ...ComponentType,
40
46
  Question: 'Question',
@@ -1,6 +1,7 @@
1
1
  export { ComponentTypes } from '~/src/components/component-types.js'
2
2
  export {
3
3
  ComponentType,
4
+ GeospatialFieldGeometryTypesEnum,
4
5
  GeospatialFieldOptionsCountryEnum,
5
6
  PreviewTypeEnum
6
7
  } from '~/src/components/enums.js'
@@ -2,6 +2,7 @@ import { type LanguageMessages } from 'joi'
2
2
 
3
3
  import {
4
4
  type ComponentType,
5
+ type GeospatialFieldGeometryTypesEnum,
5
6
  type PreviewTypeEnum
6
7
  } from '~/src/components/enums.js'
7
8
  import {
@@ -279,6 +280,12 @@ export interface GeospatialFieldComponent extends FormFieldBase {
279
280
  options: FormFieldBase['options'] & {
280
281
  condition?: string
281
282
  countries?: GeospatialFieldOptionsCountry[]
283
+ geometryTypes?: GeospatialFieldGeometryTypesEnum[]
284
+ }
285
+ schema?: {
286
+ max?: number
287
+ min?: number
288
+ length?: number
282
289
  }
283
290
  }
284
291
 
@@ -3,6 +3,7 @@ import Joi, { type ArraySchema, type GetRuleOptions } from 'joi'
3
3
  import { rtrimOnly } from '~/src/common/rtrim-only.js'
4
4
  import {
5
5
  ComponentType,
6
+ GeospatialFieldGeometryTypesEnum,
6
7
  GeospatialFieldOptionsCountryEnum
7
8
  } from '~/src/components/enums.js'
8
9
  import {
@@ -460,6 +461,28 @@ export const countriesSchema = Joi.array()
460
461
  .single()
461
462
  .description('The country to be included in a geospatial field')
462
463
 
464
+ export const exactFeaturesSchema = Joi.number()
465
+ .empty('')
466
+ .integer()
467
+ .min(1)
468
+ .description('Specifies the exact number of features required to be defined.')
469
+
470
+ export const minFeaturesSchema = Joi.number()
471
+ .empty('')
472
+ .integer()
473
+ .min(1)
474
+ .description('Minimum number of features required to be defined.')
475
+
476
+ export const maxFeaturesSchema = Joi.number()
477
+ .empty('')
478
+ .integer()
479
+ .min(1)
480
+ .description('Maximum number of features allowed to be defined.')
481
+
482
+ export const geometryTypesSchema = Joi.array()
483
+ .items(Joi.string().valid(...Object.values(GeospatialFieldGeometryTypesEnum)))
484
+ .description('The geometry types allowed in a geospatial field')
485
+
463
486
  type GenericRuleOptions<K extends string, T> = Omit<GetRuleOptions, 'args'> & {
464
487
  args: Record<K, T>
465
488
  }
@@ -652,7 +675,11 @@ export const questionDetailsFullSchema = {
652
675
  minChecksSchema,
653
676
  maxChecksSchema,
654
677
  exactChecksSchema,
655
- countriesSchema
678
+ countriesSchema,
679
+ minFeaturesSchema,
680
+ maxFeaturesSchema,
681
+ exactFeaturesSchema,
682
+ geometryTypesSchema
656
683
  }
657
684
 
658
685
  export const formEditorInputPageKeys = {
@@ -1,4 +1,7 @@
1
- import { type ComponentType } from '~/src/components/enums.js'
1
+ import {
2
+ type ComponentType,
3
+ type GeospatialFieldGeometryTypesEnum
4
+ } from '~/src/components/enums.js'
2
5
  import {
3
6
  type ComponentDef,
4
7
  type GeospatialFieldOptionsCountry
@@ -373,6 +376,26 @@ export interface FormEditor {
373
376
  * The country restriction for geospatial questions
374
377
  */
375
378
  countries?: (GeospatialFieldOptionsCountry | 'any')[]
379
+
380
+ /**
381
+ * The exact number of features to define for geospatial questions
382
+ */
383
+ exactFeatures: string
384
+
385
+ /**
386
+ * The minimum number of features to define for geospatial questions
387
+ */
388
+ minFeatures: string
389
+
390
+ /**
391
+ * The maximum number of features to define for geospatial questions
392
+ */
393
+ maxFeatures: string
394
+
395
+ /**
396
+ * The geometry types restriction for geospatial questions
397
+ */
398
+ geometryTypes?: GeospatialFieldGeometryTypesEnum[]
376
399
  }
377
400
 
378
401
  export type FormEditorInputPage = Pick<
@@ -455,6 +478,9 @@ export type FormEditorInputQuestion = Pick<
455
478
  | 'conditionalAmount'
456
479
  | 'conditionalAmountCondition'
457
480
  | 'countries'
481
+ | 'exactFeatures'
482
+ | 'minFeatures'
483
+ | 'maxFeatures'
458
484
  >
459
485
 
460
486
  export type FormEditorInputPageSettings = Pick<