@aemforms/af-core 0.22.136 → 0.22.137

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.
@@ -2075,15 +2075,11 @@ class Container extends Scriptable {
2075
2075
  }) : [];
2076
2076
  }
2077
2077
  getItemsState(isRepeatableChild = false, forRestore = false) {
2078
- if (this._jsonModel.type === 'array' || isRepeatable$1(this._jsonModel) || isRepeatableChild) {
2079
- if (isRepeatableChild) {
2080
- return this._getFormAndSitesState(isRepeatableChild, forRestore);
2081
- }
2082
- else {
2083
- return this._children.map(x => {
2084
- return { ...x.getState(true, forRestore) };
2085
- });
2086
- }
2078
+ const isThisContainerRepeatable = this._jsonModel.type === 'array' || isRepeatable$1(this._jsonModel);
2079
+ if (isThisContainerRepeatable) {
2080
+ return this._children.map(x => {
2081
+ return { ...x.getState(true, forRestore) };
2082
+ });
2087
2083
  }
2088
2084
  else {
2089
2085
  return this._getFormAndSitesState(isRepeatableChild, forRestore);
@@ -2097,6 +2093,9 @@ class Container extends Scriptable {
2097
2093
  ':itemsOrder': undefined
2098
2094
  } : {}),
2099
2095
  items: this.getItemsState(isRepeatableChild, forRestore),
2096
+ ...((this._jsonModel.type === 'array' || isRepeatable$1(this._jsonModel)) && this._itemTemplate ? {
2097
+ _itemTemplate: { ...this._itemTemplate }
2098
+ } : {}),
2100
2099
  enabled: this.enabled,
2101
2100
  readOnly: this.readOnly
2102
2101
  };
@@ -2205,7 +2204,8 @@ class Container extends Scriptable {
2205
2204
  const items = this._jsonModel.items || [];
2206
2205
  this._childrenReference = this._jsonModel.type == 'array' ? [] : {};
2207
2206
  if (this._canHaveRepeatingChildren(mode)) {
2208
- this._itemTemplate = deepClone(items[0]);
2207
+ this._itemTemplate = this._jsonModel._itemTemplate || deepClone(items[0]);
2208
+ this._jsonModel._itemTemplate = undefined;
2209
2209
  if (mode === 'restore') {
2210
2210
  this._itemTemplate.repeatable = undefined;
2211
2211
  }
@@ -3445,6 +3445,15 @@ class FunctionRuntimeImpl {
3445
3445
  return instanceManager.length - 1;
3446
3446
  },
3447
3447
  _signature: []
3448
+ },
3449
+ today: {
3450
+ _func: () => {
3451
+ const MS_IN_DAY = 24 * 60 * 60 * 1000;
3452
+ const now = new Date(Date.now());
3453
+ const _today = new Date(now.getFullYear(), now.getMonth(), now.getDate());
3454
+ return _today / MS_IN_DAY;
3455
+ },
3456
+ _signature: []
3448
3457
  }
3449
3458
  };
3450
3459
  return { ...defaultFunctions, ...FunctionRuntimeImpl.getInstance().customFunctions };
@@ -1,4 +1,4 @@
1
- import { Action, BaseModel, ContainerJson, ContainerModel, FieldModel, FieldsetModel, FormCreationMode, FormModel, IFormFieldFactory, RulesJson } from './types/index';
1
+ import { Action, BaseModel, ContainerJson, ContainerModel, FieldJson, FieldModel, FieldsetModel, FormCreationMode, FormModel, IFormFieldFactory, RulesJson } from './types/index';
2
2
  import Scriptable from './Scriptable';
3
3
  import DataGroup from './data/DataGroup';
4
4
  declare abstract class Container<T extends ContainerJson & RulesJson> extends Scriptable<T> implements ContainerModel {
@@ -29,9 +29,120 @@ declare abstract class Container<T extends ContainerJson & RulesJson> extends Sc
29
29
  private _getFormAndSitesState;
30
30
  private getItemsState;
31
31
  getState(isRepeatableChild?: boolean, forRestore?: boolean): T & {
32
- items: any[];
33
32
  enabled: boolean | undefined;
34
33
  readOnly: any;
34
+ _itemTemplate?: {
35
+ description?: string | undefined;
36
+ rules?: import("./types/Json").Items<string> | undefined;
37
+ events?: import("./types/Json").Items<string | string[] | undefined> | undefined;
38
+ enumNames?: string[] | undefined;
39
+ enum?: any[] | undefined;
40
+ accept?: string[] | undefined;
41
+ enforceEnum?: boolean | undefined;
42
+ exclusiveMinimum?: string | number | undefined;
43
+ exclusiveMaximum?: string | number | undefined;
44
+ format?: string | undefined;
45
+ maxFileSize?: string | number | undefined;
46
+ maxLength?: number | undefined;
47
+ maximum?: string | number | undefined;
48
+ maxItems?: number | undefined;
49
+ minOccur?: number | undefined;
50
+ maxOccur?: number | undefined;
51
+ minLength?: number | undefined;
52
+ minimum?: string | number | undefined;
53
+ minItems?: number | undefined;
54
+ pattern?: string | undefined;
55
+ required?: boolean | undefined;
56
+ step?: number | undefined;
57
+ type?: string | undefined;
58
+ validationExpression?: string | undefined;
59
+ uniqueItems?: boolean | undefined;
60
+ dataRef?: string | null | undefined;
61
+ lang?: string | undefined;
62
+ ':type'?: string | undefined;
63
+ appliedCssClassNames?: string | undefined;
64
+ label?: import("./types/Json").Label | undefined;
65
+ enabled?: boolean | undefined;
66
+ visible?: boolean | undefined;
67
+ name?: string | undefined;
68
+ constraintMessages?: import("./types/Json").ConstraintsMessages | undefined;
69
+ fieldType?: string | undefined;
70
+ errorMessage?: string | undefined;
71
+ properties?: {
72
+ [key: string]: any;
73
+ } | undefined;
74
+ repeatable?: boolean | undefined;
75
+ screenReaderText?: string | undefined;
76
+ tooltip?: string | undefined;
77
+ altText?: string | undefined;
78
+ viewType?: string | undefined;
79
+ buttonType?: string | undefined;
80
+ placeholder?: string | undefined;
81
+ readOnly?: boolean | undefined;
82
+ valid?: boolean | undefined;
83
+ validity?: any;
84
+ validationMessage?: string | undefined;
85
+ default?: any;
86
+ value?: any;
87
+ displayFormat?: string | undefined;
88
+ editFormat?: string | undefined;
89
+ editValue?: string | undefined;
90
+ displayValue?: string | undefined;
91
+ displayValueExpression?: string | undefined;
92
+ emptyValue?: "" | "undefined" | "null" | undefined;
93
+ checked?: boolean | undefined;
94
+ } | {
95
+ description?: string | undefined;
96
+ rules?: import("./types/Json").Items<string> | undefined;
97
+ events?: import("./types/Json").Items<string | string[] | undefined> | undefined;
98
+ enumNames?: string[] | undefined;
99
+ enum?: any[] | undefined;
100
+ accept?: string[] | undefined;
101
+ enforceEnum?: boolean | undefined;
102
+ exclusiveMinimum?: string | number | undefined;
103
+ exclusiveMaximum?: string | number | undefined;
104
+ format?: string | undefined;
105
+ maxFileSize?: string | number | undefined;
106
+ maxLength?: number | undefined;
107
+ maximum?: string | number | undefined;
108
+ maxItems?: number | undefined;
109
+ minOccur?: number | undefined;
110
+ maxOccur?: number | undefined;
111
+ minLength?: number | undefined;
112
+ minimum?: string | number | undefined;
113
+ minItems?: number | undefined;
114
+ pattern?: string | undefined;
115
+ required?: boolean | undefined;
116
+ step?: number | undefined;
117
+ type?: "object" | "array" | undefined;
118
+ validationExpression?: string | undefined;
119
+ uniqueItems?: boolean | undefined;
120
+ dataRef?: string | null | undefined;
121
+ lang?: string | undefined;
122
+ ':type'?: string | undefined;
123
+ appliedCssClassNames?: string | undefined;
124
+ label?: import("./types/Json").Label | undefined;
125
+ enabled?: boolean | undefined;
126
+ visible?: boolean | undefined;
127
+ name?: string | undefined;
128
+ constraintMessages?: import("./types/Json").ConstraintsMessages | undefined;
129
+ fieldType?: string | undefined;
130
+ errorMessage?: string | undefined;
131
+ properties?: {
132
+ [key: string]: any;
133
+ } | undefined;
134
+ repeatable?: boolean | undefined;
135
+ screenReaderText?: string | undefined;
136
+ tooltip?: string | undefined;
137
+ altText?: string | undefined;
138
+ viewType?: string | undefined;
139
+ buttonType?: string | undefined;
140
+ items: (FieldJson | ContainerJson)[];
141
+ initialItems?: number | undefined;
142
+ activeChild?: string | undefined;
143
+ readOnly?: boolean | undefined;
144
+ } | undefined;
145
+ items: any[];
35
146
  ':items'?: undefined;
36
147
  ':itemsOrder'?: undefined;
37
148
  _dependents?: string[] | undefined;
@@ -4,7 +4,7 @@ import SubmitMetaData from './SubmitMetaData';
4
4
  import EventQueue from './controller/EventQueue';
5
5
  import { LogLevel, Logger } from './controller/Logger';
6
6
  import RuleEngine from './rules/RuleEngine';
7
- import { Action, BaseModel, FieldModel, FieldsetModel, FocusOption, FormCreationMode, FormJson, FormModel, IFormFieldFactory } from './types/index';
7
+ import { Action, BaseModel, FieldModel, FieldsetModel, FocusOption, FormCreationMode, FormJson, FormModel, IFormFieldFactory, Items } from './types/index';
8
8
  import { Version } from './utils/Version';
9
9
  export declare const currentVersion: Version;
10
10
  declare class Form extends Container<FormJson> implements FormModel {
@@ -97,9 +97,120 @@ declare class Form extends Container<FormJson> implements FormModel {
97
97
  adaptiveform?: string | undefined;
98
98
  lang?: string | undefined;
99
99
  } & {
100
- items: any[];
101
100
  enabled: boolean | undefined;
102
101
  readOnly: any;
102
+ _itemTemplate?: {
103
+ description?: string | undefined;
104
+ rules?: Items<string> | undefined;
105
+ events?: Items<string | string[] | undefined> | undefined;
106
+ enumNames?: string[] | undefined;
107
+ enum?: any[] | undefined;
108
+ accept?: string[] | undefined;
109
+ enforceEnum?: boolean | undefined;
110
+ exclusiveMinimum?: string | number | undefined;
111
+ exclusiveMaximum?: string | number | undefined;
112
+ format?: string | undefined;
113
+ maxFileSize?: string | number | undefined;
114
+ maxLength?: number | undefined;
115
+ maximum?: string | number | undefined;
116
+ maxItems?: number | undefined;
117
+ minOccur?: number | undefined;
118
+ maxOccur?: number | undefined;
119
+ minLength?: number | undefined;
120
+ minimum?: string | number | undefined;
121
+ minItems?: number | undefined;
122
+ pattern?: string | undefined;
123
+ required?: boolean | undefined;
124
+ step?: number | undefined;
125
+ type?: string | undefined;
126
+ validationExpression?: string | undefined;
127
+ uniqueItems?: boolean | undefined;
128
+ dataRef?: string | null | undefined;
129
+ lang?: string | undefined;
130
+ ':type'?: string | undefined;
131
+ appliedCssClassNames?: string | undefined;
132
+ label?: import("./types/Json").Label | undefined;
133
+ enabled?: boolean | undefined;
134
+ visible?: boolean | undefined;
135
+ name?: string | undefined;
136
+ constraintMessages?: import("./types/Json").ConstraintsMessages | undefined;
137
+ fieldType?: string | undefined;
138
+ errorMessage?: string | undefined;
139
+ properties?: {
140
+ [key: string]: any;
141
+ } | undefined;
142
+ repeatable?: boolean | undefined;
143
+ screenReaderText?: string | undefined;
144
+ tooltip?: string | undefined;
145
+ altText?: string | undefined;
146
+ viewType?: string | undefined;
147
+ buttonType?: string | undefined;
148
+ placeholder?: string | undefined;
149
+ readOnly?: boolean | undefined;
150
+ valid?: boolean | undefined;
151
+ validity?: any;
152
+ validationMessage?: string | undefined;
153
+ default?: any;
154
+ value?: any;
155
+ displayFormat?: string | undefined;
156
+ editFormat?: string | undefined;
157
+ editValue?: string | undefined;
158
+ displayValue?: string | undefined;
159
+ displayValueExpression?: string | undefined;
160
+ emptyValue?: "" | "undefined" | "null" | undefined;
161
+ checked?: boolean | undefined;
162
+ } | {
163
+ description?: string | undefined;
164
+ rules?: Items<string> | undefined;
165
+ events?: Items<string | string[] | undefined> | undefined;
166
+ enumNames?: string[] | undefined;
167
+ enum?: any[] | undefined;
168
+ accept?: string[] | undefined;
169
+ enforceEnum?: boolean | undefined;
170
+ exclusiveMinimum?: string | number | undefined;
171
+ exclusiveMaximum?: string | number | undefined;
172
+ format?: string | undefined;
173
+ maxFileSize?: string | number | undefined;
174
+ maxLength?: number | undefined;
175
+ maximum?: string | number | undefined;
176
+ maxItems?: number | undefined;
177
+ minOccur?: number | undefined;
178
+ maxOccur?: number | undefined;
179
+ minLength?: number | undefined;
180
+ minimum?: string | number | undefined;
181
+ minItems?: number | undefined;
182
+ pattern?: string | undefined;
183
+ required?: boolean | undefined;
184
+ step?: number | undefined;
185
+ type?: "object" | "array" | undefined;
186
+ validationExpression?: string | undefined;
187
+ uniqueItems?: boolean | undefined;
188
+ dataRef?: string | null | undefined;
189
+ lang?: string | undefined;
190
+ ':type'?: string | undefined;
191
+ appliedCssClassNames?: string | undefined;
192
+ label?: import("./types/Json").Label | undefined;
193
+ enabled?: boolean | undefined;
194
+ visible?: boolean | undefined;
195
+ name?: string | undefined;
196
+ constraintMessages?: import("./types/Json").ConstraintsMessages | undefined;
197
+ fieldType?: string | undefined;
198
+ errorMessage?: string | undefined;
199
+ properties?: {
200
+ [key: string]: any;
201
+ } | undefined;
202
+ repeatable?: boolean | undefined;
203
+ screenReaderText?: string | undefined;
204
+ tooltip?: string | undefined;
205
+ altText?: string | undefined;
206
+ viewType?: string | undefined;
207
+ buttonType?: string | undefined;
208
+ items: (import("./types/Json").FieldJson | import("./types/Json").ContainerJson)[];
209
+ initialItems?: number | undefined;
210
+ activeChild?: string | undefined;
211
+ readOnly?: boolean | undefined;
212
+ } | undefined;
213
+ items: any[];
103
214
  ':items'?: undefined;
104
215
  ':itemsOrder'?: undefined;
105
216
  _dependents?: string[] | undefined;
@@ -99,6 +99,10 @@ declare class FunctionRuntimeImpl {
99
99
  _func: (args: Array<unknown>, data: unknown, interpreter: any) => number;
100
100
  _signature: never[];
101
101
  };
102
+ today: {
103
+ _func: () => number;
104
+ _signature: never[];
105
+ };
102
106
  };
103
107
  }
104
108
  export declare const FunctionRuntime: FunctionRuntimeImpl;
@@ -1,4 +1,4 @@
1
- import { Action, BaseModel, ContainerJson, ContainerModel, FieldModel, FieldsetModel, FormCreationMode, FormModel, IFormFieldFactory, RulesJson } from './types/index';
1
+ import { Action, BaseModel, ContainerJson, ContainerModel, FieldJson, FieldModel, FieldsetModel, FormCreationMode, FormModel, IFormFieldFactory, RulesJson } from './types/index';
2
2
  import Scriptable from './Scriptable';
3
3
  import DataGroup from './data/DataGroup';
4
4
  declare abstract class Container<T extends ContainerJson & RulesJson> extends Scriptable<T> implements ContainerModel {
@@ -29,9 +29,120 @@ declare abstract class Container<T extends ContainerJson & RulesJson> extends Sc
29
29
  private _getFormAndSitesState;
30
30
  private getItemsState;
31
31
  getState(isRepeatableChild?: boolean, forRestore?: boolean): T & {
32
- items: any[];
33
32
  enabled: boolean | undefined;
34
33
  readOnly: any;
34
+ _itemTemplate?: {
35
+ description?: string | undefined;
36
+ rules?: import("./types/Json").Items<string> | undefined;
37
+ events?: import("./types/Json").Items<string | string[] | undefined> | undefined;
38
+ enumNames?: string[] | undefined;
39
+ enum?: any[] | undefined;
40
+ accept?: string[] | undefined;
41
+ enforceEnum?: boolean | undefined;
42
+ exclusiveMinimum?: string | number | undefined;
43
+ exclusiveMaximum?: string | number | undefined;
44
+ format?: string | undefined;
45
+ maxFileSize?: string | number | undefined;
46
+ maxLength?: number | undefined;
47
+ maximum?: string | number | undefined;
48
+ maxItems?: number | undefined;
49
+ minOccur?: number | undefined;
50
+ maxOccur?: number | undefined;
51
+ minLength?: number | undefined;
52
+ minimum?: string | number | undefined;
53
+ minItems?: number | undefined;
54
+ pattern?: string | undefined;
55
+ required?: boolean | undefined;
56
+ step?: number | undefined;
57
+ type?: string | undefined;
58
+ validationExpression?: string | undefined;
59
+ uniqueItems?: boolean | undefined;
60
+ dataRef?: string | null | undefined;
61
+ lang?: string | undefined;
62
+ ':type'?: string | undefined;
63
+ appliedCssClassNames?: string | undefined;
64
+ label?: import("./types/Json").Label | undefined;
65
+ enabled?: boolean | undefined;
66
+ visible?: boolean | undefined;
67
+ name?: string | undefined;
68
+ constraintMessages?: import("./types/Json").ConstraintsMessages | undefined;
69
+ fieldType?: string | undefined;
70
+ errorMessage?: string | undefined;
71
+ properties?: {
72
+ [key: string]: any;
73
+ } | undefined;
74
+ repeatable?: boolean | undefined;
75
+ screenReaderText?: string | undefined;
76
+ tooltip?: string | undefined;
77
+ altText?: string | undefined;
78
+ viewType?: string | undefined;
79
+ buttonType?: string | undefined;
80
+ placeholder?: string | undefined;
81
+ readOnly?: boolean | undefined;
82
+ valid?: boolean | undefined;
83
+ validity?: any;
84
+ validationMessage?: string | undefined;
85
+ default?: any;
86
+ value?: any;
87
+ displayFormat?: string | undefined;
88
+ editFormat?: string | undefined;
89
+ editValue?: string | undefined;
90
+ displayValue?: string | undefined;
91
+ displayValueExpression?: string | undefined;
92
+ emptyValue?: "" | "undefined" | "null" | undefined;
93
+ checked?: boolean | undefined;
94
+ } | {
95
+ description?: string | undefined;
96
+ rules?: import("./types/Json").Items<string> | undefined;
97
+ events?: import("./types/Json").Items<string | string[] | undefined> | undefined;
98
+ enumNames?: string[] | undefined;
99
+ enum?: any[] | undefined;
100
+ accept?: string[] | undefined;
101
+ enforceEnum?: boolean | undefined;
102
+ exclusiveMinimum?: string | number | undefined;
103
+ exclusiveMaximum?: string | number | undefined;
104
+ format?: string | undefined;
105
+ maxFileSize?: string | number | undefined;
106
+ maxLength?: number | undefined;
107
+ maximum?: string | number | undefined;
108
+ maxItems?: number | undefined;
109
+ minOccur?: number | undefined;
110
+ maxOccur?: number | undefined;
111
+ minLength?: number | undefined;
112
+ minimum?: string | number | undefined;
113
+ minItems?: number | undefined;
114
+ pattern?: string | undefined;
115
+ required?: boolean | undefined;
116
+ step?: number | undefined;
117
+ type?: "object" | "array" | undefined;
118
+ validationExpression?: string | undefined;
119
+ uniqueItems?: boolean | undefined;
120
+ dataRef?: string | null | undefined;
121
+ lang?: string | undefined;
122
+ ':type'?: string | undefined;
123
+ appliedCssClassNames?: string | undefined;
124
+ label?: import("./types/Json").Label | undefined;
125
+ enabled?: boolean | undefined;
126
+ visible?: boolean | undefined;
127
+ name?: string | undefined;
128
+ constraintMessages?: import("./types/Json").ConstraintsMessages | undefined;
129
+ fieldType?: string | undefined;
130
+ errorMessage?: string | undefined;
131
+ properties?: {
132
+ [key: string]: any;
133
+ } | undefined;
134
+ repeatable?: boolean | undefined;
135
+ screenReaderText?: string | undefined;
136
+ tooltip?: string | undefined;
137
+ altText?: string | undefined;
138
+ viewType?: string | undefined;
139
+ buttonType?: string | undefined;
140
+ items: (FieldJson | ContainerJson)[];
141
+ initialItems?: number | undefined;
142
+ activeChild?: string | undefined;
143
+ readOnly?: boolean | undefined;
144
+ } | undefined;
145
+ items: any[];
35
146
  ':items'?: undefined;
36
147
  ':itemsOrder'?: undefined;
37
148
  _dependents?: string[] | undefined;
package/lib/Container.js CHANGED
@@ -98,25 +98,23 @@ class Container extends Scriptable_1.default {
98
98
  }) : [];
99
99
  }
100
100
  getItemsState(isRepeatableChild = false, forRestore = false) {
101
- if (this._jsonModel.type === 'array' || (0, JsonUtils_1.isRepeatable)(this._jsonModel) || isRepeatableChild) {
102
- if (isRepeatableChild) {
103
- return this._getFormAndSitesState(isRepeatableChild, forRestore);
104
- }
105
- else {
106
- return this._children.map(x => {
107
- return Object.assign({}, x.getState(true, forRestore));
108
- });
109
- }
101
+ const isThisContainerRepeatable = this._jsonModel.type === 'array' || (0, JsonUtils_1.isRepeatable)(this._jsonModel);
102
+ if (isThisContainerRepeatable) {
103
+ return this._children.map(x => {
104
+ return Object.assign({}, x.getState(true, forRestore));
105
+ });
110
106
  }
111
107
  else {
112
108
  return this._getFormAndSitesState(isRepeatableChild, forRestore);
113
109
  }
114
110
  }
115
111
  getState(isRepeatableChild = false, forRestore = false) {
116
- return Object.assign(Object.assign(Object.assign({}, super.getState(forRestore)), (forRestore ? {
112
+ return Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, super.getState(forRestore)), (forRestore ? {
117
113
  ':items': undefined,
118
114
  ':itemsOrder': undefined
119
- } : {})), { items: this.getItemsState(isRepeatableChild, forRestore), enabled: this.enabled, readOnly: this.readOnly });
115
+ } : {})), { items: this.getItemsState(isRepeatableChild, forRestore) }), ((this._jsonModel.type === 'array' || (0, JsonUtils_1.isRepeatable)(this._jsonModel)) && this._itemTemplate ? {
116
+ _itemTemplate: Object.assign({}, this._itemTemplate)
117
+ } : {})), { enabled: this.enabled, readOnly: this.readOnly });
120
118
  }
121
119
  _createChild(child, options) {
122
120
  return this.fieldFactory.createField(child, options);
@@ -214,7 +212,8 @@ class Container extends Scriptable_1.default {
214
212
  const items = this._jsonModel.items || [];
215
213
  this._childrenReference = this._jsonModel.type == 'array' ? [] : {};
216
214
  if (this._canHaveRepeatingChildren(mode)) {
217
- this._itemTemplate = (0, JsonUtils_1.deepClone)(items[0]);
215
+ this._itemTemplate = this._jsonModel._itemTemplate || (0, JsonUtils_1.deepClone)(items[0]);
216
+ this._jsonModel._itemTemplate = undefined;
218
217
  if (mode === 'restore') {
219
218
  this._itemTemplate.repeatable = undefined;
220
219
  }
package/lib/Form.d.ts CHANGED
@@ -4,7 +4,7 @@ import SubmitMetaData from './SubmitMetaData';
4
4
  import EventQueue from './controller/EventQueue';
5
5
  import { LogLevel, Logger } from './controller/Logger';
6
6
  import RuleEngine from './rules/RuleEngine';
7
- import { Action, BaseModel, FieldModel, FieldsetModel, FocusOption, FormCreationMode, FormJson, FormModel, IFormFieldFactory } from './types/index';
7
+ import { Action, BaseModel, FieldModel, FieldsetModel, FocusOption, FormCreationMode, FormJson, FormModel, IFormFieldFactory, Items } from './types/index';
8
8
  import { Version } from './utils/Version';
9
9
  export declare const currentVersion: Version;
10
10
  declare class Form extends Container<FormJson> implements FormModel {
@@ -97,9 +97,120 @@ declare class Form extends Container<FormJson> implements FormModel {
97
97
  adaptiveform?: string | undefined;
98
98
  lang?: string | undefined;
99
99
  } & {
100
- items: any[];
101
100
  enabled: boolean | undefined;
102
101
  readOnly: any;
102
+ _itemTemplate?: {
103
+ description?: string | undefined;
104
+ rules?: Items<string> | undefined;
105
+ events?: Items<string | string[] | undefined> | undefined;
106
+ enumNames?: string[] | undefined;
107
+ enum?: any[] | undefined;
108
+ accept?: string[] | undefined;
109
+ enforceEnum?: boolean | undefined;
110
+ exclusiveMinimum?: string | number | undefined;
111
+ exclusiveMaximum?: string | number | undefined;
112
+ format?: string | undefined;
113
+ maxFileSize?: string | number | undefined;
114
+ maxLength?: number | undefined;
115
+ maximum?: string | number | undefined;
116
+ maxItems?: number | undefined;
117
+ minOccur?: number | undefined;
118
+ maxOccur?: number | undefined;
119
+ minLength?: number | undefined;
120
+ minimum?: string | number | undefined;
121
+ minItems?: number | undefined;
122
+ pattern?: string | undefined;
123
+ required?: boolean | undefined;
124
+ step?: number | undefined;
125
+ type?: string | undefined;
126
+ validationExpression?: string | undefined;
127
+ uniqueItems?: boolean | undefined;
128
+ dataRef?: string | null | undefined;
129
+ lang?: string | undefined;
130
+ ':type'?: string | undefined;
131
+ appliedCssClassNames?: string | undefined;
132
+ label?: import("./types/Json").Label | undefined;
133
+ enabled?: boolean | undefined;
134
+ visible?: boolean | undefined;
135
+ name?: string | undefined;
136
+ constraintMessages?: import("./types/Json").ConstraintsMessages | undefined;
137
+ fieldType?: string | undefined;
138
+ errorMessage?: string | undefined;
139
+ properties?: {
140
+ [key: string]: any;
141
+ } | undefined;
142
+ repeatable?: boolean | undefined;
143
+ screenReaderText?: string | undefined;
144
+ tooltip?: string | undefined;
145
+ altText?: string | undefined;
146
+ viewType?: string | undefined;
147
+ buttonType?: string | undefined;
148
+ placeholder?: string | undefined;
149
+ readOnly?: boolean | undefined;
150
+ valid?: boolean | undefined;
151
+ validity?: any;
152
+ validationMessage?: string | undefined;
153
+ default?: any;
154
+ value?: any;
155
+ displayFormat?: string | undefined;
156
+ editFormat?: string | undefined;
157
+ editValue?: string | undefined;
158
+ displayValue?: string | undefined;
159
+ displayValueExpression?: string | undefined;
160
+ emptyValue?: "" | "undefined" | "null" | undefined;
161
+ checked?: boolean | undefined;
162
+ } | {
163
+ description?: string | undefined;
164
+ rules?: Items<string> | undefined;
165
+ events?: Items<string | string[] | undefined> | undefined;
166
+ enumNames?: string[] | undefined;
167
+ enum?: any[] | undefined;
168
+ accept?: string[] | undefined;
169
+ enforceEnum?: boolean | undefined;
170
+ exclusiveMinimum?: string | number | undefined;
171
+ exclusiveMaximum?: string | number | undefined;
172
+ format?: string | undefined;
173
+ maxFileSize?: string | number | undefined;
174
+ maxLength?: number | undefined;
175
+ maximum?: string | number | undefined;
176
+ maxItems?: number | undefined;
177
+ minOccur?: number | undefined;
178
+ maxOccur?: number | undefined;
179
+ minLength?: number | undefined;
180
+ minimum?: string | number | undefined;
181
+ minItems?: number | undefined;
182
+ pattern?: string | undefined;
183
+ required?: boolean | undefined;
184
+ step?: number | undefined;
185
+ type?: "object" | "array" | undefined;
186
+ validationExpression?: string | undefined;
187
+ uniqueItems?: boolean | undefined;
188
+ dataRef?: string | null | undefined;
189
+ lang?: string | undefined;
190
+ ':type'?: string | undefined;
191
+ appliedCssClassNames?: string | undefined;
192
+ label?: import("./types/Json").Label | undefined;
193
+ enabled?: boolean | undefined;
194
+ visible?: boolean | undefined;
195
+ name?: string | undefined;
196
+ constraintMessages?: import("./types/Json").ConstraintsMessages | undefined;
197
+ fieldType?: string | undefined;
198
+ errorMessage?: string | undefined;
199
+ properties?: {
200
+ [key: string]: any;
201
+ } | undefined;
202
+ repeatable?: boolean | undefined;
203
+ screenReaderText?: string | undefined;
204
+ tooltip?: string | undefined;
205
+ altText?: string | undefined;
206
+ viewType?: string | undefined;
207
+ buttonType?: string | undefined;
208
+ items: (import("./types/Json").FieldJson | import("./types/Json").ContainerJson)[];
209
+ initialItems?: number | undefined;
210
+ activeChild?: string | undefined;
211
+ readOnly?: boolean | undefined;
212
+ } | undefined;
213
+ items: any[];
103
214
  ':items'?: undefined;
104
215
  ':itemsOrder'?: undefined;
105
216
  _dependents?: string[] | undefined;
@@ -99,6 +99,10 @@ declare class FunctionRuntimeImpl {
99
99
  _func: (args: Array<unknown>, data: unknown, interpreter: any) => number;
100
100
  _signature: never[];
101
101
  };
102
+ today: {
103
+ _func: () => number;
104
+ _signature: never[];
105
+ };
102
106
  };
103
107
  }
104
108
  export declare const FunctionRuntime: FunctionRuntimeImpl;
@@ -766,6 +766,15 @@ class FunctionRuntimeImpl {
766
766
  return instanceManager.length - 1;
767
767
  },
768
768
  _signature: []
769
+ },
770
+ today: {
771
+ _func: () => {
772
+ const MS_IN_DAY = 24 * 60 * 60 * 1000;
773
+ const now = new Date(Date.now());
774
+ const _today = new Date(now.getFullYear(), now.getMonth(), now.getDate());
775
+ return _today / MS_IN_DAY;
776
+ },
777
+ _signature: []
769
778
  }
770
779
  };
771
780
  return Object.assign(Object.assign({}, defaultFunctions), FunctionRuntimeImpl.getInstance().customFunctions);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aemforms/af-core",
3
- "version": "0.22.136",
3
+ "version": "0.22.137",
4
4
  "description": "Core Module for Forms Runtime",
5
5
  "author": "Adobe Systems",
6
6
  "license": "Adobe Proprietary",
@@ -37,7 +37,7 @@
37
37
  },
38
38
  "dependencies": {
39
39
  "@adobe/json-formula": "0.1.50",
40
- "@aemforms/af-formatters": "^0.22.136"
40
+ "@aemforms/af-formatters": "^0.22.137"
41
41
  },
42
42
  "devDependencies": {
43
43
  "@babel/preset-env": "^7.20.2",