@defra/forms-model 3.0.375 → 3.0.377
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/module/components/helpers.js.map +1 -1
- package/dist/module/components/index.js +1 -1
- package/dist/module/components/index.js.map +1 -1
- package/dist/module/components/types.js.map +1 -1
- package/dist/module/conditions/condition-group.js +1 -1
- package/dist/module/conditions/condition-group.js.map +1 -1
- package/dist/module/conditions/condition-model.js +1 -1
- package/dist/module/conditions/condition-model.js.map +1 -1
- package/dist/module/conditions/index.js +1 -1
- package/dist/module/conditions/index.js.map +1 -1
- package/dist/module/form/form-definition/index.js +17 -0
- package/dist/module/form/form-definition/index.js.map +1 -1
- package/dist/module/form/form-definition/types.js.map +1 -1
- package/dist/module/form/form-metadata/index.js.map +1 -1
- package/dist/module/pages/controller-types.js +3 -0
- package/dist/module/pages/controller-types.js.map +1 -1
- package/dist/module/pages/enums.js +1 -0
- package/dist/module/pages/enums.js.map +1 -1
- package/dist/module/pages/helpers.js +8 -1
- package/dist/module/pages/helpers.js.map +1 -1
- package/dist/module/pages/index.js +1 -1
- package/dist/module/pages/index.js.map +1 -1
- package/dist/module/pages/page-types.js +18 -1
- package/dist/module/pages/page-types.js.map +1 -1
- package/dist/types/components/helpers.d.ts +1 -1
- package/dist/types/components/index.d.ts +1 -1
- package/dist/types/components/index.d.ts.map +1 -1
- package/dist/types/components/types.d.ts +1 -1
- package/dist/types/components/types.d.ts.map +1 -1
- package/dist/types/conditions/index.d.ts +1 -1
- package/dist/types/conditions/index.d.ts.map +1 -1
- package/dist/types/form/form-definition/index.d.ts.map +1 -1
- package/dist/types/form/form-definition/types.d.ts +20 -1
- package/dist/types/form/form-definition/types.d.ts.map +1 -1
- package/dist/types/form/form-metadata/index.d.ts +1 -1
- package/dist/types/form/form-metadata/index.d.ts.map +1 -1
- package/dist/types/pages/controller-types.d.ts.map +1 -1
- package/dist/types/pages/enums.d.ts +1 -0
- package/dist/types/pages/enums.d.ts.map +1 -1
- package/dist/types/pages/helpers.d.ts +5 -1
- package/dist/types/pages/helpers.d.ts.map +1 -1
- package/dist/types/pages/index.d.ts +1 -1
- package/dist/types/pages/index.d.ts.map +1 -1
- package/dist/types/pages/page-types.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/components/helpers.ts +1 -1
- package/src/components/index.ts +1 -1
- package/src/components/types.ts +2 -2
- package/src/conditions/condition-group.ts +1 -1
- package/src/conditions/condition-model.ts +3 -3
- package/src/conditions/index.ts +1 -1
- package/src/form/form-definition/index.ts +24 -1
- package/src/form/form-definition/types.ts +24 -0
- package/src/form/form-metadata/index.ts +3 -3
- package/src/pages/controller-types.ts +4 -0
- package/src/pages/enums.ts +1 -0
- package/src/pages/helpers.ts +10 -1
- package/src/pages/index.ts +2 -1
- package/src/pages/page-types.ts +13 -1
@@ -1,4 +1,4 @@
|
|
1
|
-
import {
|
1
|
+
import { ControllerPath, ControllerType } from "./enums.js";
|
2
2
|
|
3
3
|
/**
|
4
4
|
* Defaults for creating new pages
|
@@ -17,6 +17,23 @@ export const PageTypes = Object.freeze([{
|
|
17
17
|
section: undefined,
|
18
18
|
next: [],
|
19
19
|
components: []
|
20
|
+
}, {
|
21
|
+
title: 'Add another',
|
22
|
+
path: '/add-another-page',
|
23
|
+
controller: ControllerType.Repeat,
|
24
|
+
repeat: {
|
25
|
+
options: {
|
26
|
+
name: '',
|
27
|
+
title: ''
|
28
|
+
},
|
29
|
+
schema: {
|
30
|
+
min: 1,
|
31
|
+
max: 25
|
32
|
+
}
|
33
|
+
},
|
34
|
+
section: undefined,
|
35
|
+
next: [],
|
36
|
+
components: []
|
20
37
|
}, {
|
21
38
|
title: 'File upload page',
|
22
39
|
path: '/file-upload-page',
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"page-types.js","names":["
|
1
|
+
{"version":3,"file":"page-types.js","names":["ControllerPath","ControllerType","PageTypes","Object","freeze","title","path","Start","controller","section","undefined","next","components","Page","Repeat","repeat","options","name","schema","min","max","FileUpload","Summary","Status"],"sources":["../../../src/pages/page-types.ts"],"sourcesContent":["import { type Page } from '~/src/form/form-definition/types.js'\nimport { ControllerPath, ControllerType } from '~/src/pages/enums.js'\n\n/**\n * Defaults for creating new pages\n */\nexport const PageTypes: readonly Page[] = Object.freeze([\n {\n title: 'Start page',\n path: ControllerPath.Start,\n controller: ControllerType.Start,\n section: undefined,\n next: [],\n components: []\n },\n {\n title: 'Question page',\n path: '/question-page',\n controller: ControllerType.Page,\n section: undefined,\n next: [],\n components: []\n },\n {\n title: 'Add another',\n path: '/add-another-page',\n controller: ControllerType.Repeat,\n repeat: {\n options: { name: '', title: '' },\n schema: { min: 1, max: 25 }\n },\n section: undefined,\n next: [],\n components: []\n },\n {\n title: 'File upload page',\n path: '/file-upload-page',\n controller: ControllerType.FileUpload,\n section: undefined,\n next: [],\n components: []\n },\n {\n title: 'Summary page',\n path: ControllerPath.Summary,\n controller: ControllerType.Summary,\n section: undefined\n },\n {\n title: 'Status page',\n path: ControllerPath.Status,\n controller: ControllerType.Status,\n section: undefined\n }\n])\n"],"mappings":"AACA,SAASA,cAAc,EAAEC,cAAc;;AAEvC;AACA;AACA;AACA,OAAO,MAAMC,SAA0B,GAAGC,MAAM,CAACC,MAAM,CAAC,CACtD;EACEC,KAAK,EAAE,YAAY;EACnBC,IAAI,EAAEN,cAAc,CAACO,KAAK;EAC1BC,UAAU,EAAEP,cAAc,CAACM,KAAK;EAChCE,OAAO,EAAEC,SAAS;EAClBC,IAAI,EAAE,EAAE;EACRC,UAAU,EAAE;AACd,CAAC,EACD;EACEP,KAAK,EAAE,eAAe;EACtBC,IAAI,EAAE,gBAAgB;EACtBE,UAAU,EAAEP,cAAc,CAACY,IAAI;EAC/BJ,OAAO,EAAEC,SAAS;EAClBC,IAAI,EAAE,EAAE;EACRC,UAAU,EAAE;AACd,CAAC,EACD;EACEP,KAAK,EAAE,aAAa;EACpBC,IAAI,EAAE,mBAAmB;EACzBE,UAAU,EAAEP,cAAc,CAACa,MAAM;EACjCC,MAAM,EAAE;IACNC,OAAO,EAAE;MAAEC,IAAI,EAAE,EAAE;MAAEZ,KAAK,EAAE;IAAG,CAAC;IAChCa,MAAM,EAAE;MAAEC,GAAG,EAAE,CAAC;MAAEC,GAAG,EAAE;IAAG;EAC5B,CAAC;EACDX,OAAO,EAAEC,SAAS;EAClBC,IAAI,EAAE,EAAE;EACRC,UAAU,EAAE;AACd,CAAC,EACD;EACEP,KAAK,EAAE,kBAAkB;EACzBC,IAAI,EAAE,mBAAmB;EACzBE,UAAU,EAAEP,cAAc,CAACoB,UAAU;EACrCZ,OAAO,EAAEC,SAAS;EAClBC,IAAI,EAAE,EAAE;EACRC,UAAU,EAAE;AACd,CAAC,EACD;EACEP,KAAK,EAAE,cAAc;EACrBC,IAAI,EAAEN,cAAc,CAACsB,OAAO;EAC5Bd,UAAU,EAAEP,cAAc,CAACqB,OAAO;EAClCb,OAAO,EAAEC;AACX,CAAC,EACD;EACEL,KAAK,EAAE,aAAa;EACpBC,IAAI,EAAEN,cAAc,CAACuB,MAAM;EAC3Bf,UAAU,EAAEP,cAAc,CAACsB,MAAM;EACjCd,OAAO,EAAEC;AACX,CAAC,CACF,CAAC","ignoreList":[]}
|
@@ -1,5 +1,5 @@
|
|
1
1
|
import { ComponentType } from '../components/enums.js';
|
2
|
-
import { type ComponentDef, type
|
2
|
+
import { type ComponentDef, type ConditionalComponentType, type ConditionalComponentsDef, type ContentComponentsDef, type FormComponentsDef, type HtmlComponent, type InputFieldsComponentsDef, type InsetTextComponent, type ListComponent, type ListComponentsDef, type SelectionComponentsDef } from '../components/types.js';
|
3
3
|
/**
|
4
4
|
* Return component defaults by type
|
5
5
|
*/
|
@@ -1,4 +1,4 @@
|
|
1
1
|
export { ComponentTypes } from '../components/component-types.js';
|
2
|
-
export { getComponentDefaults, hasConditionSupport, hasContent, hasContentField, hasFormField, hasHint,
|
2
|
+
export { getComponentDefaults, hasConditionSupport, hasContent, hasContentField, hasFormField, hasHint, hasInputField, hasListField, hasSelectionFields, hasTitle, isConditionalType, isContentType, isFormType, isListType } from '../components/helpers.js';
|
3
3
|
export { ComponentType } from '../components/enums.js';
|
4
4
|
//# sourceMappingURL=index.d.ts.map
|
@@ -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,oBAAoB,EACpB,mBAAmB,EACnB,UAAU,EACV,eAAe,EACf,YAAY,EACZ,OAAO,EACP,YAAY,EACZ,
|
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,oBAAoB,EACpB,mBAAmB,EACnB,UAAU,EACV,eAAe,EACf,YAAY,EACZ,OAAO,EACP,aAAa,EACb,YAAY,EACZ,kBAAkB,EAClB,QAAQ,EACR,iBAAiB,EACjB,aAAa,EACb,UAAU,EACV,UAAU,EACX,MAAM,6BAA6B,CAAA;AAEpC,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA"}
|
@@ -1,5 +1,5 @@
|
|
1
1
|
import { type ComponentType } from '../components/enums.js';
|
2
|
-
import { type
|
2
|
+
import { type ListTypeContent, type ListTypeOption } from '../form/form-definition/types.js';
|
3
3
|
export type ConditionalComponentType = Exclude<ConditionalComponentsDef['type'], ContentComponentsDef>;
|
4
4
|
/**
|
5
5
|
* Types for Components JSON structure which are expected by engine and turned into actual form input/content/lists
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/components/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,2BAA2B,CAAA;AAC9D,OAAO,EACL,KAAK,
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/components/types.ts"],"names":[],"mappings":"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"}
|
@@ -1,4 +1,4 @@
|
|
1
|
-
export { getExpression, getOperatorNames,
|
1
|
+
export { absoluteDateOperatorNames, getExpression, getOperatorNames, relativeDateOperatorNames } from '../conditions/condition-operators.js';
|
2
2
|
export { ConditionValue, RelativeDateValue, conditionValueFrom } from '../conditions/condition-values.js';
|
3
3
|
export { ConditionField } from '../conditions/condition-field.js';
|
4
4
|
export { Condition } from '../conditions/condition.js';
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/conditions/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EACb,gBAAgB,EAChB,yBAAyB,
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/conditions/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,yBAAyB,EACzB,aAAa,EACb,gBAAgB,EAChB,yBAAyB,EAC1B,MAAM,yCAAyC,CAAA;AAEhD,OAAO,EACL,cAAc,EACd,iBAAiB,EACjB,kBAAkB,EACnB,MAAM,sCAAsC,CAAA;AAE7C,OAAO,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAA;AACpE,OAAO,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAA;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAA;AAChE,OAAO,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAA;AACpE,OAAO,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAA;AACrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,yCAAyC,CAAA;AAC3E,OAAO,EACL,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,EAClB,oBAAoB,EACpB,YAAY,EACZ,oBAAoB,EACrB,MAAM,6BAA6B,CAAA;AAEpC,OAAO,EACL,aAAa,EACb,WAAW,EACX,cAAc,EACd,SAAS,EACT,QAAQ,EACR,YAAY,EACb,MAAM,2BAA2B,CAAA"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/form/form-definition/index.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,KAAK,CAAA;AAGrB,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAU7D,OAAO,EAEL,KAAK,cAAc,
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/form/form-definition/index.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,KAAK,CAAA;AAGrB,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAU7D,OAAO,EAEL,KAAK,cAAc,EAUpB,MAAM,qCAAqC,CAAA;AAqE5C,eAAO,MAAM,eAAe,gCAwBZ,CAAA;AAmGhB;;;GAGG;AACH,eAAO,MAAM,oBAAoB,kCAyB7B,CAAA;AAIJ,eAAO,MAAM,MAAM,kCAAuB,CAAA"}
|
@@ -10,6 +10,18 @@ export interface PageBase {
|
|
10
10
|
title: string;
|
11
11
|
path: string;
|
12
12
|
}
|
13
|
+
export interface RepeatOptions {
|
14
|
+
name: string;
|
15
|
+
title: string;
|
16
|
+
}
|
17
|
+
export interface RepeatSchema {
|
18
|
+
min: number;
|
19
|
+
max: number;
|
20
|
+
}
|
21
|
+
export interface Repeat {
|
22
|
+
options: RepeatOptions;
|
23
|
+
schema: RepeatSchema;
|
24
|
+
}
|
13
25
|
export interface PageStart extends PageBase {
|
14
26
|
path: ControllerPath.Start | string;
|
15
27
|
controller: ControllerType.Start | ControllerType.Home;
|
@@ -23,6 +35,13 @@ export interface PageQuestion extends PageBase {
|
|
23
35
|
next: Link[];
|
24
36
|
components: ComponentDef[];
|
25
37
|
}
|
38
|
+
export interface PageRepeat extends PageBase {
|
39
|
+
controller?: ControllerType.Repeat;
|
40
|
+
repeat: Repeat;
|
41
|
+
section?: string | undefined;
|
42
|
+
next: Link[];
|
43
|
+
components: ComponentDef[];
|
44
|
+
}
|
26
45
|
export interface PageFileUpload extends PageBase {
|
27
46
|
controller?: ControllerType.FileUpload;
|
28
47
|
section?: string | undefined;
|
@@ -39,7 +58,7 @@ export interface PageStatus extends PageBase {
|
|
39
58
|
controller: ControllerType.Status;
|
40
59
|
section?: undefined;
|
41
60
|
}
|
42
|
-
export type Page = PageStart | PageQuestion | PageFileUpload | PageSummary | PageStatus;
|
61
|
+
export type Page = PageStart | PageQuestion | PageFileUpload | PageRepeat | PageSummary | PageStatus;
|
43
62
|
export type RequiredField<Type extends Partial<object>, KeyType extends keyof Type> = Omit<Type, KeyType> & Required<{
|
44
63
|
[Key in KeyType]: Type[Key];
|
45
64
|
}>;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/form/form-definition/types.ts"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/form/form-definition/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAC7D,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,2BAA2B,CAAA;AAEpE,OAAO,EAAE,KAAK,cAAc,EAAE,KAAK,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAE/E,MAAM,WAAW,IAAI;IACnB,IAAI,EAAE,MAAM,CAAA;IACZ,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;CACb;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,MAAM,CAAA;IACX,GAAG,EAAE,MAAM,CAAA;CACZ;AAED,MAAM,WAAW,MAAM;IACrB,OAAO,EAAE,aAAa,CAAA;IACtB,MAAM,EAAE,YAAY,CAAA;CACrB;AAED,MAAM,WAAW,SAAU,SAAQ,QAAQ;IACzC,IAAI,EAAE,cAAc,CAAC,KAAK,GAAG,MAAM,CAAA;IACnC,UAAU,EAAE,cAAc,CAAC,KAAK,GAAG,cAAc,CAAC,IAAI,CAAA;IACtD,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC5B,IAAI,EAAE,IAAI,EAAE,CAAA;IACZ,UAAU,EAAE,YAAY,EAAE,CAAA;CAC3B;AAED,MAAM,WAAW,YAAa,SAAQ,QAAQ;IAC5C,UAAU,CAAC,EAAE,cAAc,CAAC,IAAI,CAAA;IAChC,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC5B,IAAI,EAAE,IAAI,EAAE,CAAA;IACZ,UAAU,EAAE,YAAY,EAAE,CAAA;CAC3B;AAED,MAAM,WAAW,UAAW,SAAQ,QAAQ;IAC1C,UAAU,CAAC,EAAE,cAAc,CAAC,MAAM,CAAA;IAClC,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC5B,IAAI,EAAE,IAAI,EAAE,CAAA;IACZ,UAAU,EAAE,YAAY,EAAE,CAAA;CAC3B;AAED,MAAM,WAAW,cAAe,SAAQ,QAAQ;IAC9C,UAAU,CAAC,EAAE,cAAc,CAAC,UAAU,CAAA;IACtC,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC5B,IAAI,EAAE,IAAI,EAAE,CAAA;IACZ,UAAU,EAAE,YAAY,EAAE,CAAA;CAC3B;AAED,MAAM,WAAW,WAAY,SAAQ,QAAQ;IAC3C,IAAI,EAAE,cAAc,CAAC,OAAO,GAAG,MAAM,CAAA;IACrC,UAAU,EAAE,cAAc,CAAC,OAAO,CAAA;IAClC,OAAO,CAAC,EAAE,SAAS,CAAA;CACpB;AAED,MAAM,WAAW,UAAW,SAAQ,QAAQ;IAC1C,IAAI,EAAE,cAAc,CAAC,MAAM,GAAG,MAAM,CAAA;IACpC,UAAU,EAAE,cAAc,CAAC,MAAM,CAAA;IACjC,OAAO,CAAC,EAAE,SAAS,CAAA;CACpB;AAED,MAAM,MAAM,IAAI,GACZ,SAAS,GACT,YAAY,GACZ,cAAc,GACd,UAAU,GACV,WAAW,GACX,UAAU,CAAA;AAEd,MAAM,MAAM,aAAa,CACvB,IAAI,SAAS,OAAO,CAAC,MAAM,CAAC,EAC5B,OAAO,SAAS,MAAM,IAAI,IACxB,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,GACrB,QAAQ,CAAC;KACN,GAAG,IAAI,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC;CAC5B,CAAC,CAAA;AAEJ,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB;AAED,MAAM,WAAW,IAAI;IACnB,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAA;IAChC,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,WAAW,CAAC,EAAE;QAAE,UAAU,EAAE,YAAY,EAAE,CAAA;KAAE,CAAA;IAC5C,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAED,MAAM,WAAW,IAAI;IACnB,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,eAAe,CAAA;IACrB,KAAK,EAAE,IAAI,EAAE,CAAA;CACd;AAED,MAAM,MAAM,cAAc,GAAG,UAAU,GAAG,UAAU,CAAA;AACpD,MAAM,MAAM,eAAe,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAAA;AAE7D,MAAM,WAAW,QAAQ;IACvB,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB;AAED,MAAM,WAAW,WAAW;IAC1B,KAAK,CAAC,EAAE,OAAO,GAAG,MAAM,CAAA;IACxB,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,MAAM,CAAA;IACnB,KAAK,EAAE,mBAAmB,CAAA;CAC3B;AAED;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,IAAI,EAAE,CAAA;IACb,UAAU,EAAE,gBAAgB,EAAE,CAAA;IAC9B,KAAK,EAAE,IAAI,EAAE,CAAA;IACb,QAAQ,EAAE,OAAO,EAAE,CAAA;IACnB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,EAAE,QAAQ,CAAA;IACnB,WAAW,CAAC,EAAE,WAAW,CAAA;IACzB,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAClC,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB"}
|
@@ -1,5 +1,5 @@
|
|
1
1
|
import Joi from 'joi';
|
2
|
-
import { type FormMetadata, type
|
2
|
+
import { type FormMetadata, type FormMetadataAuthor, type FormMetadataContact, type FormMetadataContactEmail, type FormMetadataContactOnline, type FormMetadataInput, type FormMetadataState } from '../../form/form-metadata/types.js';
|
3
3
|
export declare const organisations: string[];
|
4
4
|
export declare const idSchema: Joi.StringSchema<string>;
|
5
5
|
export declare const titleSchema: Joi.StringSchema<string>;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/form/form-metadata/index.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,KAAK,CAAA;AAErB,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/form/form-metadata/index.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,KAAK,CAAA;AAErB,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EACxB,KAAK,wBAAwB,EAC7B,KAAK,yBAAyB,EAC9B,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,EACvB,MAAM,mCAAmC,CAAA;AAE1C,eAAO,MAAM,aAAa,UAUzB,CAAA;AAED,eAAO,MAAM,QAAQ,0BAA2C,CAAA;AAChE,eAAO,MAAM,WAAW,0BAA0C,CAAA;AAClE,eAAO,MAAM,UAAU,0BAEV,CAAA;AAEb,eAAO,MAAM,kBAAkB,0BAElB,CAAA;AAEb,eAAO,MAAM,cAAc,0BAA0C,CAAA;AACrE,eAAO,MAAM,eAAe,0BAGf,CAAA;AAEb,eAAO,MAAM,WAAW,0BAAsB,CAAA;AAE9C,eAAO,MAAM,kBAAkB,0BAAyC,CAAA;AACxE,eAAO,MAAM,uBAAuB,0BAAiC,CAAA;AACrE,eAAO,MAAM,WAAW,4CAGtB,CAAA;AAEF,eAAO,MAAM,eAAe,0BAKf,CAAA;AACb,eAAO,MAAM,gBAAgB,0BAAiC,CAAA;AAC9D,eAAO,MAAM,YAAY,6CAGvB,CAAA;AAEF,eAAO,MAAM,aAAa,uCAIxB,CAAA;AAEF,eAAO,MAAM,wBAAwB,0BAAsB,CAAA;AAE3D,eAAO,MAAM,sBAAsB,0BAI1B,CAAA;AAET,eAAO,MAAM,8BAA8B,0BAGR,CAAA;AAEnC,eAAO,MAAM,gBAAgB,sBAA8B,CAAA;AAC3D,eAAO,MAAM,cAAc,0BAAiC,CAAA;AAC5D,eAAO,MAAM,uBAAuB,0BAAiC,CAAA;AAErE,eAAO,MAAM,qBAAqB;;;;;;;;;CASjC,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,uBAAuB,qCAEvB,CAAA;AAEb;;;GAGG;AACH,eAAO,MAAM,wBAAwB,sCAKxB,CAAA;AAEb;;;GAGG;AACH,eAAO,MAAM,uBAAuB,qCAKlC,CAAA;AAEF;;;GAGG;AACH,eAAO,MAAM,kBAAkB,gCAS7B,CAAA"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"controller-types.d.ts","sourceRoot":"","sources":["../../../src/pages/controller-types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAErD,eAAO,MAAM,eAAe;;;
|
1
|
+
{"version":3,"file":"controller-types.d.ts","sourceRoot":"","sources":["../../../src/pages/controller-types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAErD,eAAO,MAAM,eAAe;;;GA6B3B,CAAA;AAED,eAAO,MAAM,eAAe,kBAA0C,CAAA"}
|
@@ -7,6 +7,7 @@ export declare enum ControllerType {
|
|
7
7
|
Start = "StartPageController",
|
8
8
|
Home = "HomePageController",
|
9
9
|
Page = "PageController",
|
10
|
+
Repeat = "RepeatPageController",
|
10
11
|
FileUpload = "FileUploadPageController",
|
11
12
|
Summary = "SummaryPageController",
|
12
13
|
Status = "StatusPageController"
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"enums.d.ts","sourceRoot":"","sources":["../../../src/pages/enums.ts"],"names":[],"mappings":"AAAA,oBAAY,cAAc;IACxB,KAAK,WAAW;IAChB,OAAO,aAAa;IACpB,MAAM,YAAY;CACnB;AAED,oBAAY,cAAc;IACxB,KAAK,wBAAwB;IAC7B,IAAI,uBAAuB;IAC3B,IAAI,mBAAmB;IACvB,UAAU,6BAA6B;IACvC,OAAO,0BAA0B;IACjC,MAAM,yBAAyB;CAChC"}
|
1
|
+
{"version":3,"file":"enums.d.ts","sourceRoot":"","sources":["../../../src/pages/enums.ts"],"names":[],"mappings":"AAAA,oBAAY,cAAc;IACxB,KAAK,WAAW;IAChB,OAAO,aAAa;IACpB,MAAM,YAAY;CACnB;AAED,oBAAY,cAAc;IACxB,KAAK,wBAAwB;IAC7B,IAAI,uBAAuB;IAC3B,IAAI,mBAAmB;IACvB,MAAM,yBAAyB;IAC/B,UAAU,6BAA6B;IACvC,OAAO,0BAA0B;IACjC,MAAM,yBAAyB;CAChC"}
|
@@ -1,5 +1,5 @@
|
|
1
1
|
import { type ComponentDef } from '../components/types.js';
|
2
|
-
import { type Link, type Page, type PageFileUpload, type PageQuestion, type PageStart, type RequiredField } from '../form/form-definition/types.js';
|
2
|
+
import { type Link, type Page, type PageFileUpload, type PageQuestion, type PageRepeat, type PageStart, type RequiredField } from '../form/form-definition/types.js';
|
3
3
|
import { ControllerType } from '../pages/enums.js';
|
4
4
|
/**
|
5
5
|
* Return component defaults by type
|
@@ -19,6 +19,10 @@ export declare function hasFormComponents(page?: Partial<Page>): page is PageQue
|
|
19
19
|
* Check page has sections
|
20
20
|
*/
|
21
21
|
export declare function hasSection(page?: Partial<Page>): page is RequiredField<PageStart, 'section'> | RequiredField<PageQuestion, 'section'> | RequiredField<PageFileUpload, 'section'>;
|
22
|
+
/**
|
23
|
+
* Check page has repeater
|
24
|
+
*/
|
25
|
+
export declare function hasRepeater(page?: Partial<Page>): page is PageRepeat;
|
22
26
|
/**
|
23
27
|
* Check for known page controller names
|
24
28
|
*/
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../src/pages/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAC7D,OAAO,EACL,KAAK,IAAI,EACT,KAAK,IAAI,EACT,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,KAAK,SAAS,EACd,KAAK,aAAa,EACnB,MAAM,qCAAqC,CAAA;AAK5C,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAGrD;;GAEG;AACH,wBAAgB,eAAe,CAAC,QAAQ,SAAS,IAAI,EACnD,IAAI,CAAC,EAAE,IAAI,CAAC,QAAQ,EAAE,YAAY,CAAC,GAaC,QAAQ,CAC7C;AAED;;GAEG;AACH,wBAAgB,aAAa,CAC3B,IAAI,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,GACnB,IAAI,IAAI,OAAO,CAAC,IAAI,EAAE;IAAE,UAAU,EAAE,YAAY,EAAE,CAAA;CAAE,CAAC,CAEvD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,IAAI,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,GACnB,IAAI,IAAI,YAAY,GAAG,cAAc,CAGvC;AAED;;GAEG;AACH,wBAAgB,UAAU,CACxB,IAAI,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,GACnB,IAAI,IACH,aAAa,CAAC,SAAS,EAAE,SAAS,CAAC,GACnC,aAAa,CAAC,YAAY,EAAE,SAAS,CAAC,GACtC,aAAa,CAAC,cAAc,EAAE,SAAS,CAAC,CAE3C;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,UAAU,CAAC,EAAE,cAAc,GAAG,MAAM,GACnC,UAAU,IAAI,cAAc,CAE9B;AAED;;GAEG;AACH,wBAAgB,OAAO,CACrB,IAAI,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,GACnB,IAAI,IAAI,OAAO,CAAC,IAAI,EAAE;IAAE,IAAI,EAAE,IAAI,EAAE,CAAA;CAAE,CAAC,
|
1
|
+
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../src/pages/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAC7D,OAAO,EACL,KAAK,IAAI,EACT,KAAK,IAAI,EACT,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,KAAK,UAAU,EACf,KAAK,SAAS,EACd,KAAK,aAAa,EACnB,MAAM,qCAAqC,CAAA;AAK5C,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAGrD;;GAEG;AACH,wBAAgB,eAAe,CAAC,QAAQ,SAAS,IAAI,EACnD,IAAI,CAAC,EAAE,IAAI,CAAC,QAAQ,EAAE,YAAY,CAAC,GAaC,QAAQ,CAC7C;AAED;;GAEG;AACH,wBAAgB,aAAa,CAC3B,IAAI,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,GACnB,IAAI,IAAI,OAAO,CAAC,IAAI,EAAE;IAAE,UAAU,EAAE,YAAY,EAAE,CAAA;CAAE,CAAC,CAEvD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,IAAI,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,GACnB,IAAI,IAAI,YAAY,GAAG,cAAc,CAGvC;AAED;;GAEG;AACH,wBAAgB,UAAU,CACxB,IAAI,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,GACnB,IAAI,IACH,aAAa,CAAC,SAAS,EAAE,SAAS,CAAC,GACnC,aAAa,CAAC,YAAY,EAAE,SAAS,CAAC,GACtC,aAAa,CAAC,cAAc,EAAE,SAAS,CAAC,CAE3C;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,IAAI,UAAU,CAEpE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,UAAU,CAAC,EAAE,cAAc,GAAG,MAAM,GACnC,UAAU,IAAI,cAAc,CAE9B;AAED;;GAEG;AACH,wBAAgB,OAAO,CACrB,IAAI,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,GACnB,IAAI,IAAI,OAAO,CAAC,IAAI,EAAE;IAAE,IAAI,EAAE,IAAI,EAAE,CAAA;CAAE,CAAC,CAczC;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,UAAU,CAAC,EAAE,cAAc,GAAG,MAAM,8BAO1E"}
|
@@ -1,5 +1,5 @@
|
|
1
1
|
export { ControllerNames, ControllerTypes } from '../pages/controller-types.js';
|
2
2
|
export { PageTypes } from '../pages/page-types.js';
|
3
|
-
export { controllerNameFromPath, getPageDefaults, hasComponents, hasFormComponents,
|
3
|
+
export { controllerNameFromPath, getPageDefaults, hasComponents, hasFormComponents, hasNext, hasRepeater, hasSection, isControllerName } from '../pages/helpers.js';
|
4
4
|
export { ControllerPath, ControllerType } from '../pages/enums.js';
|
5
5
|
//# sourceMappingURL=index.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/pages/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,eAAe,EAChB,MAAM,iCAAiC,CAAA;AAExC,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAA;AAErD,OAAO,EACL,sBAAsB,EACtB,eAAe,EACf,aAAa,EACb,iBAAiB,EACjB,UAAU,EACV,
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/pages/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,eAAe,EAChB,MAAM,iCAAiC,CAAA;AAExC,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAA;AAErD,OAAO,EACL,sBAAsB,EACtB,eAAe,EACf,aAAa,EACb,iBAAiB,EACjB,OAAO,EACP,WAAW,EACX,UAAU,EACV,gBAAgB,EACjB,MAAM,wBAAwB,CAAA;AAE/B,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"page-types.d.ts","sourceRoot":"","sources":["../../../src/pages/page-types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,qCAAqC,CAAA;AAG/D;;GAEG;AACH,eAAO,MAAM,SAAS,EAAE,SAAS,IAAI,
|
1
|
+
{"version":3,"file":"page-types.d.ts","sourceRoot":"","sources":["../../../src/pages/page-types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,qCAAqC,CAAA;AAG/D;;GAEG;AACH,eAAO,MAAM,SAAS,EAAE,SAAS,IAAI,EAiDnC,CAAA"}
|
package/package.json
CHANGED
@@ -2,8 +2,8 @@ import { ComponentTypes } from '~/src/components/component-types.js'
|
|
2
2
|
import { ComponentType } from '~/src/components/enums.js'
|
3
3
|
import {
|
4
4
|
type ComponentDef,
|
5
|
-
type ConditionalComponentsDef,
|
6
5
|
type ConditionalComponentType,
|
6
|
+
type ConditionalComponentsDef,
|
7
7
|
type ContentComponentsDef,
|
8
8
|
type FormComponentsDef,
|
9
9
|
type HtmlComponent,
|
package/src/components/index.ts
CHANGED
package/src/components/types.ts
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
import { type ComponentType } from '~/src/components/enums.js'
|
2
2
|
import {
|
3
|
-
type
|
4
|
-
type
|
3
|
+
type ListTypeContent,
|
4
|
+
type ListTypeOption
|
5
5
|
} from '~/src/form/form-definition/types.js'
|
6
6
|
|
7
7
|
export type ConditionalComponentType = Exclude<
|
@@ -2,7 +2,7 @@ import { conditionFrom } from '~/src/conditions/condition-model.js'
|
|
2
2
|
import { type ConditionRef } from '~/src/conditions/condition-ref.js'
|
3
3
|
import { type Condition } from '~/src/conditions/condition.js'
|
4
4
|
import { type Coordinator } from '~/src/conditions/enums.js'
|
5
|
-
import {
|
5
|
+
import { toExpression, toPresentationString } from '~/src/conditions/helpers.js'
|
6
6
|
import { type ConditionGroupData } from '~/src/conditions/types.js'
|
7
7
|
|
8
8
|
export class ConditionGroup {
|
@@ -4,10 +4,10 @@ import { ConditionRef } from '~/src/conditions/condition-ref.js'
|
|
4
4
|
import { Condition } from '~/src/conditions/condition.js'
|
5
5
|
import { Coordinator } from '~/src/conditions/enums.js'
|
6
6
|
import {
|
7
|
-
toPresentationString,
|
8
|
-
toExpression,
|
9
7
|
hasConditionGroup,
|
10
|
-
hasConditionName
|
8
|
+
hasConditionName,
|
9
|
+
toExpression,
|
10
|
+
toPresentationString
|
11
11
|
} from '~/src/conditions/helpers.js'
|
12
12
|
import {
|
13
13
|
type ConditionData,
|
package/src/conditions/index.ts
CHANGED
@@ -7,8 +7,8 @@ import {
|
|
7
7
|
type ConditionFieldData,
|
8
8
|
type ConditionGroupData,
|
9
9
|
type ConditionRefData,
|
10
|
-
type ConditionsModelData,
|
11
10
|
type ConditionValueData,
|
11
|
+
type ConditionsModelData,
|
12
12
|
type RelativeDateValueData
|
13
13
|
} from '~/src/conditions/types.js'
|
14
14
|
import {
|
@@ -19,6 +19,9 @@ import {
|
|
19
19
|
type List,
|
20
20
|
type Page,
|
21
21
|
type PhaseBanner,
|
22
|
+
type Repeat,
|
23
|
+
type RepeatOptions,
|
24
|
+
type RepeatSchema,
|
22
25
|
type Section
|
23
26
|
} from '~/src/form/form-definition/types.js'
|
24
27
|
|
@@ -121,6 +124,21 @@ const nextSchema = Joi.object<Link>().keys({
|
|
121
124
|
redirect: Joi.string().optional()
|
122
125
|
})
|
123
126
|
|
127
|
+
const repeatOptions = Joi.object<RepeatOptions>().keys({
|
128
|
+
name: Joi.string().required(),
|
129
|
+
title: Joi.string().required()
|
130
|
+
})
|
131
|
+
|
132
|
+
const repeatSchema = Joi.object<RepeatSchema>().keys({
|
133
|
+
min: Joi.number().empty('').required(),
|
134
|
+
max: Joi.number().empty('').required()
|
135
|
+
})
|
136
|
+
|
137
|
+
const pageRepeatSchema = Joi.object<Repeat>().keys({
|
138
|
+
options: repeatOptions.required(),
|
139
|
+
schema: repeatSchema.required()
|
140
|
+
})
|
141
|
+
|
124
142
|
/**
|
125
143
|
* `/status` is a special route for providing a user's application status.
|
126
144
|
* It should not be configured via the designer.
|
@@ -131,6 +149,11 @@ const pageSchema = Joi.object<Page>().keys({
|
|
131
149
|
section: Joi.string(),
|
132
150
|
controller: Joi.string().optional(),
|
133
151
|
components: Joi.array<ComponentDef>().items(componentSchema).unique('name'),
|
152
|
+
repeat: Joi.when('controller', {
|
153
|
+
is: Joi.string().valid('RepeatPageController').required(),
|
154
|
+
then: pageRepeatSchema.required(),
|
155
|
+
otherwise: Joi.any().strip()
|
156
|
+
}),
|
134
157
|
next: Joi.array<Link>().items(nextSchema)
|
135
158
|
})
|
136
159
|
|
@@ -14,6 +14,21 @@ export interface PageBase {
|
|
14
14
|
path: string
|
15
15
|
}
|
16
16
|
|
17
|
+
export interface RepeatOptions {
|
18
|
+
name: string
|
19
|
+
title: string
|
20
|
+
}
|
21
|
+
|
22
|
+
export interface RepeatSchema {
|
23
|
+
min: number
|
24
|
+
max: number
|
25
|
+
}
|
26
|
+
|
27
|
+
export interface Repeat {
|
28
|
+
options: RepeatOptions
|
29
|
+
schema: RepeatSchema
|
30
|
+
}
|
31
|
+
|
17
32
|
export interface PageStart extends PageBase {
|
18
33
|
path: ControllerPath.Start | string
|
19
34
|
controller: ControllerType.Start | ControllerType.Home
|
@@ -29,6 +44,14 @@ export interface PageQuestion extends PageBase {
|
|
29
44
|
components: ComponentDef[]
|
30
45
|
}
|
31
46
|
|
47
|
+
export interface PageRepeat extends PageBase {
|
48
|
+
controller?: ControllerType.Repeat
|
49
|
+
repeat: Repeat
|
50
|
+
section?: string | undefined
|
51
|
+
next: Link[]
|
52
|
+
components: ComponentDef[]
|
53
|
+
}
|
54
|
+
|
32
55
|
export interface PageFileUpload extends PageBase {
|
33
56
|
controller?: ControllerType.FileUpload
|
34
57
|
section?: string | undefined
|
@@ -52,6 +75,7 @@ export type Page =
|
|
52
75
|
| PageStart
|
53
76
|
| PageQuestion
|
54
77
|
| PageFileUpload
|
78
|
+
| PageRepeat
|
55
79
|
| PageSummary
|
56
80
|
| PageStatus
|
57
81
|
|
@@ -2,12 +2,12 @@ import Joi from 'joi'
|
|
2
2
|
|
3
3
|
import {
|
4
4
|
type FormMetadata,
|
5
|
-
type FormMetadataInput,
|
6
|
-
type FormMetadataState,
|
7
5
|
type FormMetadataAuthor,
|
8
6
|
type FormMetadataContact,
|
7
|
+
type FormMetadataContactEmail,
|
9
8
|
type FormMetadataContactOnline,
|
10
|
-
type
|
9
|
+
type FormMetadataInput,
|
10
|
+
type FormMetadataState
|
11
11
|
} from '~/src/form/form-metadata/types.js'
|
12
12
|
|
13
13
|
export const organisations = [
|
package/src/pages/enums.ts
CHANGED
@@ -8,6 +8,7 @@ export enum ControllerType {
|
|
8
8
|
Start = 'StartPageController',
|
9
9
|
Home = 'HomePageController',
|
10
10
|
Page = 'PageController',
|
11
|
+
Repeat = 'RepeatPageController',
|
11
12
|
FileUpload = 'FileUploadPageController',
|
12
13
|
Summary = 'SummaryPageController',
|
13
14
|
Status = 'StatusPageController'
|
package/src/pages/helpers.ts
CHANGED
@@ -4,6 +4,7 @@ import {
|
|
4
4
|
type Page,
|
5
5
|
type PageFileUpload,
|
6
6
|
type PageQuestion,
|
7
|
+
type PageRepeat,
|
7
8
|
type PageStart,
|
8
9
|
type RequiredField
|
9
10
|
} from '~/src/form/form-definition/types.js'
|
@@ -65,6 +66,13 @@ export function hasSection(
|
|
65
66
|
return hasNext(page) && typeof page.section === 'string'
|
66
67
|
}
|
67
68
|
|
69
|
+
/**
|
70
|
+
* Check page has repeater
|
71
|
+
*/
|
72
|
+
export function hasRepeater(page?: Partial<Page>): page is PageRepeat {
|
73
|
+
return controllerNameFromPath(page?.controller) === ControllerType.Repeat
|
74
|
+
}
|
75
|
+
|
68
76
|
/**
|
69
77
|
* Check for known page controller names
|
70
78
|
*/
|
@@ -90,7 +98,8 @@ export function hasNext(
|
|
90
98
|
!controller ||
|
91
99
|
controller === ControllerType.Start ||
|
92
100
|
controller === ControllerType.Page ||
|
93
|
-
controller === ControllerType.FileUpload
|
101
|
+
controller === ControllerType.FileUpload ||
|
102
|
+
controller === ControllerType.Repeat
|
94
103
|
)
|
95
104
|
}
|
96
105
|
|
package/src/pages/index.ts
CHANGED
package/src/pages/page-types.ts
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
import { type Page } from '~/src/form/form-definition/types.js'
|
2
|
-
import {
|
2
|
+
import { ControllerPath, ControllerType } from '~/src/pages/enums.js'
|
3
3
|
|
4
4
|
/**
|
5
5
|
* Defaults for creating new pages
|
@@ -21,6 +21,18 @@ export const PageTypes: readonly Page[] = Object.freeze([
|
|
21
21
|
next: [],
|
22
22
|
components: []
|
23
23
|
},
|
24
|
+
{
|
25
|
+
title: 'Add another',
|
26
|
+
path: '/add-another-page',
|
27
|
+
controller: ControllerType.Repeat,
|
28
|
+
repeat: {
|
29
|
+
options: { name: '', title: '' },
|
30
|
+
schema: { min: 1, max: 25 }
|
31
|
+
},
|
32
|
+
section: undefined,
|
33
|
+
next: [],
|
34
|
+
components: []
|
35
|
+
},
|
24
36
|
{
|
25
37
|
title: 'File upload page',
|
26
38
|
path: '/file-upload-page',
|