@aemforms/af-core 0.22.79 → 0.22.81
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/esm/afb-events.js +6 -1
- package/esm/afb-runtime.js +52 -7
- package/esm/types/src/Form.d.ts +2 -0
- package/esm/types/src/controller/Events.d.ts +3 -0
- package/esm/types/src/rules/FunctionRuntime.d.ts +5 -1
- package/lib/Field.js +3 -0
- package/lib/Fieldset.js +1 -1
- package/lib/Form.d.ts +2 -0
- package/lib/Form.js +31 -1
- package/lib/controller/Events.d.ts +3 -0
- package/lib/controller/Events.js +7 -1
- package/lib/rules/FunctionRuntime.d.ts +5 -1
- package/lib/rules/FunctionRuntime.js +17 -3
- package/lib/utils/FormCreationUtils.js +1 -1
- package/package.json +2 -2
package/esm/afb-events.js
CHANGED
|
@@ -110,6 +110,11 @@ class Submit extends ActionImpl {
|
|
|
110
110
|
super(payload, 'submit', { dispatch });
|
|
111
111
|
}
|
|
112
112
|
}
|
|
113
|
+
class Save extends ActionImpl {
|
|
114
|
+
constructor(payload, dispatch = false) {
|
|
115
|
+
super(payload, 'save', { dispatch });
|
|
116
|
+
}
|
|
117
|
+
}
|
|
113
118
|
class SubmitSuccess extends ActionImpl {
|
|
114
119
|
constructor(payload, dispatch = false) {
|
|
115
120
|
super(payload, 'submitSuccess', { dispatch });
|
|
@@ -167,4 +172,4 @@ class RemoveInstance extends ActionImpl {
|
|
|
167
172
|
}
|
|
168
173
|
}
|
|
169
174
|
|
|
170
|
-
export { AddInstance, AddItem, Blur, Change, Click, CustomEvent, ExecuteRule, FieldChanged, Focus, FormLoad, Initialize, Invalid, RemoveInstance, RemoveItem, Reset, Submit, SubmitError, SubmitFailure, SubmitSuccess, Valid, ValidationComplete, propertyChange };
|
|
175
|
+
export { AddInstance, AddItem, Blur, Change, Click, CustomEvent, ExecuteRule, FieldChanged, Focus, FormLoad, Initialize, Invalid, RemoveInstance, RemoveItem, Reset, Save, Submit, SubmitError, SubmitFailure, SubmitSuccess, Valid, ValidationComplete, propertyChange };
|
package/esm/afb-runtime.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { propertyChange, ExecuteRule, Initialize, RemoveItem, SubmitSuccess, CustomEvent, SubmitError, SubmitFailure, Submit, RemoveInstance, AddInstance, Reset, AddItem, Click, Change, FormLoad, FieldChanged, ValidationComplete, Valid, Invalid } from './afb-events.js';
|
|
1
|
+
import { propertyChange, ExecuteRule, Initialize, RemoveItem, SubmitSuccess, CustomEvent, SubmitError, SubmitFailure, Submit, Save, RemoveInstance, AddInstance, Reset, AddItem, Click, Change, FormLoad, FieldChanged, ValidationComplete, Valid, Invalid } from './afb-events.js';
|
|
2
2
|
import Formula from '@adobe/json-formula';
|
|
3
3
|
import { parseDefaultDate, datetimeToNumber, format, parseDateSkeleton, formatDate, numberToDatetime } from '@aemforms/af-formatters';
|
|
4
4
|
|
|
@@ -2577,15 +2577,15 @@ const multipartFormData = (data, attachments) => {
|
|
|
2577
2577
|
}
|
|
2578
2578
|
return formData;
|
|
2579
2579
|
};
|
|
2580
|
-
const submit = async (context, success, error, submitAs = 'multipart/form-data', input_data = null) => {
|
|
2581
|
-
const endpoint = context.form.action;
|
|
2580
|
+
const submit = async (context, success, error, submitAs = 'multipart/form-data', input_data = null, action = '', metadata = null) => {
|
|
2581
|
+
const endpoint = action || context.form.action;
|
|
2582
2582
|
let data = input_data;
|
|
2583
2583
|
if (typeof data != 'object' || data == null) {
|
|
2584
2584
|
data = context.form.exportData();
|
|
2585
2585
|
}
|
|
2586
2586
|
const attachments = getAttachments(context.form, true);
|
|
2587
2587
|
let submitContentType = submitAs;
|
|
2588
|
-
const submitDataAndMetaData = { 'data': data,
|
|
2588
|
+
const submitDataAndMetaData = { 'data': data, ...metadata };
|
|
2589
2589
|
let formData = submitDataAndMetaData;
|
|
2590
2590
|
if (Object.keys(attachments).length > 0 || submitAs === 'multipart/form-data') {
|
|
2591
2591
|
formData = multipartFormData(submitDataAndMetaData, attachments);
|
|
@@ -2601,6 +2601,8 @@ const createAction = (name, payload = {}) => {
|
|
|
2601
2601
|
return new Change(payload);
|
|
2602
2602
|
case 'submit':
|
|
2603
2603
|
return new Submit(payload);
|
|
2604
|
+
case 'save':
|
|
2605
|
+
return new Save(payload);
|
|
2604
2606
|
case 'click':
|
|
2605
2607
|
return new Click(payload);
|
|
2606
2608
|
case 'addItem':
|
|
@@ -2806,6 +2808,18 @@ class FunctionRuntimeImpl {
|
|
|
2806
2808
|
},
|
|
2807
2809
|
_signature: []
|
|
2808
2810
|
},
|
|
2811
|
+
saveForm: {
|
|
2812
|
+
_func: (args, data, interpreter) => {
|
|
2813
|
+
const action = toString(args[0]);
|
|
2814
|
+
const validate_form = args[2] || false;
|
|
2815
|
+
interpreter.globals.form.dispatch(new Save({
|
|
2816
|
+
action,
|
|
2817
|
+
validate_form
|
|
2818
|
+
}));
|
|
2819
|
+
return {};
|
|
2820
|
+
},
|
|
2821
|
+
_signature: []
|
|
2822
|
+
},
|
|
2809
2823
|
request: {
|
|
2810
2824
|
_func: (args, data, interpreter) => {
|
|
2811
2825
|
const uri = toString(args[0]);
|
|
@@ -3210,7 +3224,35 @@ class Form extends Container {
|
|
|
3210
3224
|
const payload = action?.payload || {};
|
|
3211
3225
|
const successEventName = payload?.success ? payload?.success : 'submitSuccess';
|
|
3212
3226
|
const failureEventName = payload?.error ? payload?.error : 'submitError';
|
|
3213
|
-
|
|
3227
|
+
const formAction = payload.action || this.action;
|
|
3228
|
+
const metadata = payload.metadata || {
|
|
3229
|
+
'submitMetadata': this.exportSubmitMetaData()
|
|
3230
|
+
};
|
|
3231
|
+
const contentType = payload?.save_as || payload?.submit_as;
|
|
3232
|
+
submit(context, successEventName, failureEventName, contentType, payload?.data, formAction, metadata);
|
|
3233
|
+
}
|
|
3234
|
+
}
|
|
3235
|
+
save(action, context) {
|
|
3236
|
+
const payload = action?.payload || {};
|
|
3237
|
+
payload.save_as = 'multipart/form-data';
|
|
3238
|
+
payload.metadata = {
|
|
3239
|
+
'draftMetadata': {
|
|
3240
|
+
'lang': this.lang,
|
|
3241
|
+
'draftId': this.properties?.draftId || ''
|
|
3242
|
+
}
|
|
3243
|
+
};
|
|
3244
|
+
payload.success = 'custom:saveSuccess';
|
|
3245
|
+
payload.error = 'custom:saveError';
|
|
3246
|
+
this.submit(action, context);
|
|
3247
|
+
this.subscribe((action) => {
|
|
3248
|
+
this._saveSuccess(action);
|
|
3249
|
+
}, 'saveSuccess');
|
|
3250
|
+
}
|
|
3251
|
+
_saveSuccess(action) {
|
|
3252
|
+
const draftId = action?.payload?.body?.draftId || '';
|
|
3253
|
+
const properties = this.properties;
|
|
3254
|
+
if (draftId && properties) {
|
|
3255
|
+
properties.draftId = draftId;
|
|
3214
3256
|
}
|
|
3215
3257
|
}
|
|
3216
3258
|
reset() {
|
|
@@ -3347,7 +3389,7 @@ class Fieldset extends Container {
|
|
|
3347
3389
|
return undefined;
|
|
3348
3390
|
}
|
|
3349
3391
|
get items() {
|
|
3350
|
-
return super.items;
|
|
3392
|
+
return super.items ? super.items : [];
|
|
3351
3393
|
}
|
|
3352
3394
|
get value() {
|
|
3353
3395
|
return null;
|
|
@@ -3744,6 +3786,9 @@ class Field extends Scriptable {
|
|
|
3744
3786
|
}
|
|
3745
3787
|
reset() {
|
|
3746
3788
|
const changes = this.updateDataNodeAndTypedValue(this.default);
|
|
3789
|
+
if (!changes) {
|
|
3790
|
+
return;
|
|
3791
|
+
}
|
|
3747
3792
|
const validationStateChanges = {
|
|
3748
3793
|
'valid': undefined,
|
|
3749
3794
|
'errorMessage': '',
|
|
@@ -4418,7 +4463,7 @@ class FormFieldFactoryImpl {
|
|
|
4418
4463
|
};
|
|
4419
4464
|
retVal = new InstanceManager(newJson, options);
|
|
4420
4465
|
}
|
|
4421
|
-
else if ('items' in child) {
|
|
4466
|
+
else if ('items' in child || child.fieldType === 'panel') {
|
|
4422
4467
|
retVal = new Fieldset(child, options);
|
|
4423
4468
|
}
|
|
4424
4469
|
else {
|
package/esm/types/src/Form.d.ts
CHANGED
|
@@ -120,6 +120,8 @@ declare class Form extends Container<FormJson> implements FormModel {
|
|
|
120
120
|
isValid(): boolean;
|
|
121
121
|
dispatch(action: Action): void;
|
|
122
122
|
submit(action: Action, context: any): void;
|
|
123
|
+
save(action: Action, context: any): void;
|
|
124
|
+
_saveSuccess(action: Action): void;
|
|
123
125
|
reset(): void;
|
|
124
126
|
getElement(id: string): FieldModel | FieldsetModel | this;
|
|
125
127
|
get qualifiedName(): string;
|
|
@@ -62,6 +62,9 @@ export declare class Focus extends ActionImpl {
|
|
|
62
62
|
export declare class Submit extends ActionImpl {
|
|
63
63
|
constructor(payload?: any, dispatch?: boolean);
|
|
64
64
|
}
|
|
65
|
+
export declare class Save extends ActionImpl {
|
|
66
|
+
constructor(payload?: any, dispatch?: boolean);
|
|
67
|
+
}
|
|
65
68
|
export declare class SubmitSuccess extends ActionImpl {
|
|
66
69
|
constructor(payload?: any, dispatch?: boolean);
|
|
67
70
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
type HTTP_VERB = 'GET' | 'POST';
|
|
2
2
|
export declare const request: (context: any, uri: string, httpVerb: HTTP_VERB, payload: any, success: string, error: string, headers: any) => Promise<void>;
|
|
3
|
-
export declare const submit: (context: any, success: string, error: string, submitAs?: 'application/json' | 'multipart/form-data' | 'application/x-www-form-urlencoded', input_data?: any) => Promise<void>;
|
|
3
|
+
export declare const submit: (context: any, success: string, error: string, submitAs?: 'application/json' | 'multipart/form-data' | 'application/x-www-form-urlencoded', input_data?: any, action?: string, metadata?: any) => Promise<void>;
|
|
4
4
|
export type CustomFunction = Function;
|
|
5
5
|
export type FunctionDefinition = {
|
|
6
6
|
_func: CustomFunction;
|
|
@@ -40,6 +40,10 @@ declare class FunctionRuntimeImpl {
|
|
|
40
40
|
_func: (args: Array<unknown>, data: unknown, interpreter: any) => {};
|
|
41
41
|
_signature: never[];
|
|
42
42
|
};
|
|
43
|
+
saveForm: {
|
|
44
|
+
_func: (args: Array<unknown>, data: unknown, interpreter: any) => {};
|
|
45
|
+
_signature: never[];
|
|
46
|
+
};
|
|
43
47
|
request: {
|
|
44
48
|
_func: (args: Array<unknown>, data: unknown, interpreter: any) => {};
|
|
45
49
|
_signature: never[];
|
package/lib/Field.js
CHANGED
|
@@ -387,6 +387,9 @@ class Field extends Scriptable_1.default {
|
|
|
387
387
|
}
|
|
388
388
|
reset() {
|
|
389
389
|
const changes = this.updateDataNodeAndTypedValue(this.default);
|
|
390
|
+
if (!changes) {
|
|
391
|
+
return;
|
|
392
|
+
}
|
|
390
393
|
const validationStateChanges = {
|
|
391
394
|
'valid': undefined,
|
|
392
395
|
'errorMessage': '',
|
package/lib/Fieldset.js
CHANGED
package/lib/Form.d.ts
CHANGED
|
@@ -120,6 +120,8 @@ declare class Form extends Container<FormJson> implements FormModel {
|
|
|
120
120
|
isValid(): boolean;
|
|
121
121
|
dispatch(action: Action): void;
|
|
122
122
|
submit(action: Action, context: any): void;
|
|
123
|
+
save(action: Action, context: any): void;
|
|
124
|
+
_saveSuccess(action: Action): void;
|
|
123
125
|
reset(): void;
|
|
124
126
|
getElement(id: string): FieldModel | FieldsetModel | this;
|
|
125
127
|
get qualifiedName(): string;
|
package/lib/Form.js
CHANGED
|
@@ -254,7 +254,37 @@ class Form extends Container_1.default {
|
|
|
254
254
|
const payload = (action === null || action === void 0 ? void 0 : action.payload) || {};
|
|
255
255
|
const successEventName = (payload === null || payload === void 0 ? void 0 : payload.success) ? payload === null || payload === void 0 ? void 0 : payload.success : 'submitSuccess';
|
|
256
256
|
const failureEventName = (payload === null || payload === void 0 ? void 0 : payload.error) ? payload === null || payload === void 0 ? void 0 : payload.error : 'submitError';
|
|
257
|
-
|
|
257
|
+
const formAction = payload.action || this.action;
|
|
258
|
+
const metadata = payload.metadata || {
|
|
259
|
+
'submitMetadata': this.exportSubmitMetaData()
|
|
260
|
+
};
|
|
261
|
+
const contentType = (payload === null || payload === void 0 ? void 0 : payload.save_as) || (payload === null || payload === void 0 ? void 0 : payload.submit_as);
|
|
262
|
+
(0, FunctionRuntime_1.submit)(context, successEventName, failureEventName, contentType, payload === null || payload === void 0 ? void 0 : payload.data, formAction, metadata);
|
|
263
|
+
}
|
|
264
|
+
}
|
|
265
|
+
save(action, context) {
|
|
266
|
+
var _a;
|
|
267
|
+
const payload = (action === null || action === void 0 ? void 0 : action.payload) || {};
|
|
268
|
+
payload.save_as = 'multipart/form-data';
|
|
269
|
+
payload.metadata = {
|
|
270
|
+
'draftMetadata': {
|
|
271
|
+
'lang': this.lang,
|
|
272
|
+
'draftId': ((_a = this.properties) === null || _a === void 0 ? void 0 : _a.draftId) || ''
|
|
273
|
+
}
|
|
274
|
+
};
|
|
275
|
+
payload.success = 'custom:saveSuccess';
|
|
276
|
+
payload.error = 'custom:saveError';
|
|
277
|
+
this.submit(action, context);
|
|
278
|
+
this.subscribe((action) => {
|
|
279
|
+
this._saveSuccess(action);
|
|
280
|
+
}, 'saveSuccess');
|
|
281
|
+
}
|
|
282
|
+
_saveSuccess(action) {
|
|
283
|
+
var _a, _b;
|
|
284
|
+
const draftId = ((_b = (_a = action === null || action === void 0 ? void 0 : action.payload) === null || _a === void 0 ? void 0 : _a.body) === null || _b === void 0 ? void 0 : _b.draftId) || '';
|
|
285
|
+
const properties = this.properties;
|
|
286
|
+
if (draftId && properties) {
|
|
287
|
+
properties.draftId = draftId;
|
|
258
288
|
}
|
|
259
289
|
}
|
|
260
290
|
reset() {
|
|
@@ -62,6 +62,9 @@ export declare class Focus extends ActionImpl {
|
|
|
62
62
|
export declare class Submit extends ActionImpl {
|
|
63
63
|
constructor(payload?: any, dispatch?: boolean);
|
|
64
64
|
}
|
|
65
|
+
export declare class Save extends ActionImpl {
|
|
66
|
+
constructor(payload?: any, dispatch?: boolean);
|
|
67
|
+
}
|
|
65
68
|
export declare class SubmitSuccess extends ActionImpl {
|
|
66
69
|
constructor(payload?: any, dispatch?: boolean);
|
|
67
70
|
}
|
package/lib/controller/Events.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.RemoveInstance = exports.AddInstance = exports.RemoveItem = exports.AddItem = exports.CustomEvent = exports.FieldChanged = exports.Reset = exports.SubmitError = exports.SubmitFailure = exports.SubmitSuccess = exports.Submit = exports.Focus = exports.ValidationComplete = exports.Blur = exports.Click = exports.FormLoad = exports.Initialize = exports.propertyChange = exports.ExecuteRule = exports.Valid = exports.Invalid = exports.Change = void 0;
|
|
3
|
+
exports.RemoveInstance = exports.AddInstance = exports.RemoveItem = exports.AddItem = exports.CustomEvent = exports.FieldChanged = exports.Reset = exports.SubmitError = exports.SubmitFailure = exports.SubmitSuccess = exports.Save = exports.Submit = exports.Focus = exports.ValidationComplete = exports.Blur = exports.Click = exports.FormLoad = exports.Initialize = exports.propertyChange = exports.ExecuteRule = exports.Valid = exports.Invalid = exports.Change = void 0;
|
|
4
4
|
class ActionImpl {
|
|
5
5
|
constructor(payload, type, _metadata) {
|
|
6
6
|
this._metadata = _metadata;
|
|
@@ -120,6 +120,12 @@ class Submit extends ActionImpl {
|
|
|
120
120
|
}
|
|
121
121
|
}
|
|
122
122
|
exports.Submit = Submit;
|
|
123
|
+
class Save extends ActionImpl {
|
|
124
|
+
constructor(payload, dispatch = false) {
|
|
125
|
+
super(payload, 'save', { dispatch });
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
exports.Save = Save;
|
|
123
129
|
class SubmitSuccess extends ActionImpl {
|
|
124
130
|
constructor(payload, dispatch = false) {
|
|
125
131
|
super(payload, 'submitSuccess', { dispatch });
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
declare type HTTP_VERB = 'GET' | 'POST';
|
|
2
2
|
export declare const request: (context: any, uri: string, httpVerb: HTTP_VERB, payload: any, success: string, error: string, headers: any) => Promise<void>;
|
|
3
|
-
export declare const submit: (context: any, success: string, error: string, submitAs?: 'application/json' | 'multipart/form-data' | 'application/x-www-form-urlencoded', input_data?: any) => Promise<void>;
|
|
3
|
+
export declare const submit: (context: any, success: string, error: string, submitAs?: 'application/json' | 'multipart/form-data' | 'application/x-www-form-urlencoded', input_data?: any, action?: string, metadata?: any) => Promise<void>;
|
|
4
4
|
export declare type CustomFunction = Function;
|
|
5
5
|
export declare type FunctionDefinition = {
|
|
6
6
|
_func: CustomFunction;
|
|
@@ -40,6 +40,10 @@ declare class FunctionRuntimeImpl {
|
|
|
40
40
|
_func: (args: Array<unknown>, data: unknown, interpreter: any) => {};
|
|
41
41
|
_signature: never[];
|
|
42
42
|
};
|
|
43
|
+
saveForm: {
|
|
44
|
+
_func: (args: Array<unknown>, data: unknown, interpreter: any) => {};
|
|
45
|
+
_signature: never[];
|
|
46
|
+
};
|
|
43
47
|
request: {
|
|
44
48
|
_func: (args: Array<unknown>, data: unknown, interpreter: any) => {};
|
|
45
49
|
_signature: never[];
|
|
@@ -123,15 +123,15 @@ const multipartFormData = (data, attachments) => {
|
|
|
123
123
|
}
|
|
124
124
|
return formData;
|
|
125
125
|
};
|
|
126
|
-
const submit = (context, success, error, submitAs = 'multipart/form-data', input_data = null) => __awaiter(void 0, void 0, void 0, function* () {
|
|
127
|
-
const endpoint = context.form.action;
|
|
126
|
+
const submit = (context, success, error, submitAs = 'multipart/form-data', input_data = null, action = '', metadata = null) => __awaiter(void 0, void 0, void 0, function* () {
|
|
127
|
+
const endpoint = action || context.form.action;
|
|
128
128
|
let data = input_data;
|
|
129
129
|
if (typeof data != 'object' || data == null) {
|
|
130
130
|
data = context.form.exportData();
|
|
131
131
|
}
|
|
132
132
|
const attachments = (0, FormUtils_1.getAttachments)(context.form, true);
|
|
133
133
|
let submitContentType = submitAs;
|
|
134
|
-
const submitDataAndMetaData = { 'data': data,
|
|
134
|
+
const submitDataAndMetaData = Object.assign({ 'data': data }, metadata);
|
|
135
135
|
let formData = submitDataAndMetaData;
|
|
136
136
|
if (Object.keys(attachments).length > 0 || submitAs === 'multipart/form-data') {
|
|
137
137
|
formData = multipartFormData(submitDataAndMetaData, attachments);
|
|
@@ -148,6 +148,8 @@ const createAction = (name, payload = {}) => {
|
|
|
148
148
|
return new Events_1.Change(payload);
|
|
149
149
|
case 'submit':
|
|
150
150
|
return new Events_1.Submit(payload);
|
|
151
|
+
case 'save':
|
|
152
|
+
return new Events_1.Save(payload);
|
|
151
153
|
case 'click':
|
|
152
154
|
return new Events_1.Click(payload);
|
|
153
155
|
case 'addItem':
|
|
@@ -353,6 +355,18 @@ class FunctionRuntimeImpl {
|
|
|
353
355
|
},
|
|
354
356
|
_signature: []
|
|
355
357
|
},
|
|
358
|
+
saveForm: {
|
|
359
|
+
_func: (args, data, interpreter) => {
|
|
360
|
+
const action = toString(args[0]);
|
|
361
|
+
const validate_form = args[2] || false;
|
|
362
|
+
interpreter.globals.form.dispatch(new Events_1.Save({
|
|
363
|
+
action,
|
|
364
|
+
validate_form
|
|
365
|
+
}));
|
|
366
|
+
return {};
|
|
367
|
+
},
|
|
368
|
+
_signature: []
|
|
369
|
+
},
|
|
356
370
|
request: {
|
|
357
371
|
_func: (args, data, interpreter) => {
|
|
358
372
|
const uri = toString(args[0]);
|
|
@@ -43,7 +43,7 @@ class FormFieldFactoryImpl {
|
|
|
43
43
|
});
|
|
44
44
|
retVal = new InstanceManager_1.InstanceManager(newJson, options);
|
|
45
45
|
}
|
|
46
|
-
else if ('items' in child) {
|
|
46
|
+
else if ('items' in child || child.fieldType === 'panel') {
|
|
47
47
|
retVal = new Fieldset_1.Fieldset(child, options);
|
|
48
48
|
}
|
|
49
49
|
else {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aemforms/af-core",
|
|
3
|
-
"version": "0.22.
|
|
3
|
+
"version": "0.22.81",
|
|
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.
|
|
40
|
+
"@aemforms/af-formatters": "^0.22.81"
|
|
41
41
|
},
|
|
42
42
|
"devDependencies": {
|
|
43
43
|
"@babel/preset-env": "^7.20.2",
|