form-payload 1.5.0 → 1.6.0
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/package.json +1 -1
- package/readme.md +1 -0
- package/src/libs/constants/value-as-array-custom-control-types.constant.d.ts +1 -1
- package/src/libs/constants/value-as-array-custom-control-types.constant.d.ts.map +1 -1
- package/src/libs/constants/value-as-array-custom-control-types.constant.js +4 -1
- package/src/packages/get-form-control-payload/get-form-control-payload.d.ts +2 -9
- package/src/packages/get-form-control-payload/get-form-control-payload.d.ts.map +1 -1
- package/src/packages/get-form-control-payload/get-form-control-payload.js +6 -51
- package/src/packages/get-form-control-payload/helpers/get-fieldset-value/get-fieldset-value.helper.d.ts +14 -0
- package/src/packages/get-form-control-payload/helpers/get-fieldset-value/get-fieldset-value.helper.d.ts.map +1 -0
- package/src/packages/get-form-control-payload/helpers/get-fieldset-value/get-fieldset-value.helper.js +27 -0
- package/src/packages/get-form-control-payload/helpers/get-form-controls-payload/get-form-controls-payload.d.ts +14 -0
- package/src/packages/get-form-control-payload/helpers/get-form-controls-payload/get-form-controls-payload.d.ts.map +1 -0
- package/src/packages/get-form-control-payload/helpers/get-form-controls-payload/get-form-controls-payload.js +64 -0
- package/src/packages/get-form-control-payload/helpers/helpers.d.ts +2 -0
- package/src/packages/get-form-control-payload/helpers/helpers.js +2 -0
- package/src/packages/get-form-payload/get-form-payload.d.ts.map +1 -1
- package/src/packages/get-form-payload/get-form-payload.js +5 -2
package/package.json
CHANGED
package/readme.md
CHANGED
|
@@ -95,5 +95,6 @@ PS. _The library works perfectly with any framework. Just use a valid [HTMLFormE
|
|
|
95
95
|
| [HTMLSelectElement](https://developer.mozilla.org/en-US/docs/Web/API/HTMLSelectElement) | `multiple` | ✅ | `Array<string>` |
|
|
96
96
|
| [HTMLOutputElement](https://developer.mozilla.org/en-US/docs/Web/API/HTMLOutputElement) | – | ✅ | `string` |
|
|
97
97
|
| [HTMLFieldsetElement](https://developer.mozilla.org/en-US/docs/Web/API/HTMLFieldsetElement) | – | ✅ | `Object<name: string, value: unknown>` (recursive values of nested elements) |
|
|
98
|
+
| [HTMLFieldsetElement](https://developer.mozilla.org/en-US/docs/Web/API/HTMLFieldsetElement) | `[]` in `name` (Ex. `name="shops[]"`) | ✅ | `Array<Object<name: string, value: unknown>>` (recursive values of nested elements) |
|
|
98
99
|
| [HTMLButtonElement](https://developer.mozilla.org/en-US/docs/Web/API/HTMLButtonElement) | – | ❌ | – |
|
|
99
100
|
| [HTMLObjectElement](https://developer.mozilla.org/en-US/docs/Web/API/HTMLObjectElement) | – | ❌ | – |
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export const VALUE_AS_ARRAY_CUSTOM_CONTROL_TYPES: "checkbox"[];
|
|
1
|
+
export const VALUE_AS_ARRAY_CUSTOM_CONTROL_TYPES: ("checkbox" | "fieldset")[];
|
|
2
2
|
//# sourceMappingURL=value-as-array-custom-control-types.constant.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"value-as-array-custom-control-types.constant.d.ts","sourceRoot":"","sources":["../../../../src/libs/constants/value-as-array-custom-control-types.constant.js"],"names":[],"mappings":"AAEA
|
|
1
|
+
{"version":3,"file":"value-as-array-custom-control-types.constant.d.ts","sourceRoot":"","sources":["../../../../src/libs/constants/value-as-array-custom-control-types.constant.js"],"names":[],"mappings":"AAEA,8EAGE"}
|
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
import { ControlType } from '../enums/enums.js';
|
|
2
2
|
|
|
3
|
-
const VALUE_AS_ARRAY_CUSTOM_CONTROL_TYPES = [
|
|
3
|
+
const VALUE_AS_ARRAY_CUSTOM_CONTROL_TYPES = [
|
|
4
|
+
ControlType.CHECKBOX,
|
|
5
|
+
ControlType.FIELDSET,
|
|
6
|
+
];
|
|
4
7
|
|
|
5
8
|
export { VALUE_AS_ARRAY_CUSTOM_CONTROL_TYPES };
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
export
|
|
1
|
+
export { getFormControlsPayload } from "./helpers/helpers.js";
|
|
2
2
|
export type HTMLFormOperationalControlElement = import('../../libs/types/types.js').HTMLFormOperationalControlElement;
|
|
3
|
+
/** @typedef {import('../../libs/types/types.js').HTMLFormOperationalControlElement} HTMLFormOperationalControlElement */
|
|
3
4
|
/**
|
|
4
5
|
* @template {unknown} T
|
|
5
6
|
* @param {HTMLFormOperationalControlElement} controlNode
|
|
@@ -7,12 +8,4 @@ export type HTMLFormOperationalControlElement = import('../../libs/types/types.j
|
|
|
7
8
|
* @throws {FormPayloadError}
|
|
8
9
|
*/
|
|
9
10
|
export function getFormControlPayload<T extends unknown>(controlNode: HTMLFormOperationalControlElement): T;
|
|
10
|
-
/** @typedef {import('../../libs/types/types.js').HTMLFormControlElement} HTMLFormControlElement */
|
|
11
|
-
/** @typedef {import('../../libs/types/types.js').HTMLFormOperationalControlElement} HTMLFormOperationalControlElement */
|
|
12
|
-
/**
|
|
13
|
-
* @template {Record<string, unknown>} T
|
|
14
|
-
* @param {...HTMLFormControlElement} controlElements
|
|
15
|
-
* @returns {T}
|
|
16
|
-
*/
|
|
17
|
-
export function getFormControlsPayload<T extends Record<string, unknown>>(...controlElements: HTMLFormControlElement[]): T;
|
|
18
11
|
//# sourceMappingURL=get-form-control-payload.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-form-control-payload.d.ts","sourceRoot":"","sources":["../../../../src/packages/get-form-control-payload/get-form-control-payload.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"get-form-control-payload.d.ts","sourceRoot":"","sources":["../../../../src/packages/get-form-control-payload/get-form-control-payload.js"],"names":[],"mappings":";gDAcc,OAAO,2BAA2B,EAAE,iCAAiC;AAAnF,yHAAyH;AAEzH;;;;;GAKG;AACH,sEAJW,iCAAiC,KAgG3C"}
|
|
@@ -1,12 +1,9 @@
|
|
|
1
1
|
import { ControlType } from '../../libs/enums/enums.js';
|
|
2
2
|
import { FormPayloadError } from '../../libs/exceptions/exceptions.js';
|
|
3
3
|
import {
|
|
4
|
-
checkHasValueAsArray,
|
|
5
|
-
checkIsReferToAnotherNode,
|
|
6
|
-
getAllowedElements,
|
|
7
4
|
getCheckboxValue,
|
|
8
|
-
getCleanedValueAsArrayControlName,
|
|
9
5
|
getDatetimeLocalValue,
|
|
6
|
+
getFieldsetValue,
|
|
10
7
|
getFormControlValue,
|
|
11
8
|
getInputDateValue,
|
|
12
9
|
getInputEmailValue,
|
|
@@ -15,48 +12,8 @@ import {
|
|
|
15
12
|
getMultiSelectValues,
|
|
16
13
|
} from './helpers/helpers.js';
|
|
17
14
|
|
|
18
|
-
/** @typedef {import('../../libs/types/types.js').HTMLFormControlElement} HTMLFormControlElement */
|
|
19
15
|
/** @typedef {import('../../libs/types/types.js').HTMLFormOperationalControlElement} HTMLFormOperationalControlElement */
|
|
20
16
|
|
|
21
|
-
/**
|
|
22
|
-
* @template {Record<string, unknown>} T
|
|
23
|
-
* @param {...HTMLFormControlElement} controlElements
|
|
24
|
-
* @returns {T}
|
|
25
|
-
*/
|
|
26
|
-
const getFormControlsPayload = (...controlElements) => {
|
|
27
|
-
const allowedElements = getAllowedElements(controlElements);
|
|
28
|
-
|
|
29
|
-
const elementsValues = /** @type {T} */ ({});
|
|
30
|
-
|
|
31
|
-
for (const element of allowedElements) {
|
|
32
|
-
const isReferToAnotherNode = checkIsReferToAnotherNode(
|
|
33
|
-
element,
|
|
34
|
-
allowedElements,
|
|
35
|
-
);
|
|
36
|
-
|
|
37
|
-
if (isReferToAnotherNode) {
|
|
38
|
-
continue;
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
let key = /** @type {keyof T} */ (element.name);
|
|
42
|
-
let value = /** @type {T[keyof T]} */ (getFormControlPayload(element));
|
|
43
|
-
const hasValueAsArray = checkHasValueAsArray(element);
|
|
44
|
-
|
|
45
|
-
if (hasValueAsArray) {
|
|
46
|
-
key = getCleanedValueAsArrayControlName(element);
|
|
47
|
-
|
|
48
|
-
value = /** @type {T[keyof T]} */ ([
|
|
49
|
-
.../** @type {unknown[]} */ (elementsValues[key] ?? []),
|
|
50
|
-
.../** @type {unknown[]} */ (getFormControlPayload(element)),
|
|
51
|
-
]);
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
elementsValues[key] = value;
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
return elementsValues;
|
|
58
|
-
};
|
|
59
|
-
|
|
60
17
|
/**
|
|
61
18
|
* @template {unknown} T
|
|
62
19
|
* @param {HTMLFormOperationalControlElement} controlNode
|
|
@@ -143,13 +100,10 @@ const getFormControlPayload = (controlNode) => {
|
|
|
143
100
|
);
|
|
144
101
|
}
|
|
145
102
|
case ControlType.FIELDSET: {
|
|
146
|
-
const elements = [
|
|
147
|
-
.../** @type {HTMLFieldSetElement} */ (controlNode).elements,
|
|
148
|
-
];
|
|
149
|
-
|
|
150
103
|
return /** @type {T} */ (
|
|
151
|
-
|
|
152
|
-
|
|
104
|
+
getFieldsetValue(
|
|
105
|
+
getFormControlPayload,
|
|
106
|
+
/** @type {HTMLFieldSetElement} */ (controlNode),
|
|
153
107
|
)
|
|
154
108
|
);
|
|
155
109
|
}
|
|
@@ -160,4 +114,5 @@ const getFormControlPayload = (controlNode) => {
|
|
|
160
114
|
});
|
|
161
115
|
};
|
|
162
116
|
|
|
163
|
-
export {
|
|
117
|
+
export { getFormControlsPayload } from './helpers/helpers.js';
|
|
118
|
+
export { getFormControlPayload };
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export type HTMLFormOperationalControlElement = import('../../../../libs/types/types.js').HTMLFormOperationalControlElement;
|
|
2
|
+
export type HTMLFormControlElement = import('../../../../libs/types/types.js').HTMLFormControlElement;
|
|
3
|
+
/** @typedef {import('../../../../libs/types/types.js').HTMLFormOperationalControlElement} HTMLFormOperationalControlElement */
|
|
4
|
+
/** @typedef {import('../../../../libs/types/types.js').HTMLFormControlElement} HTMLFormControlElement */
|
|
5
|
+
/**
|
|
6
|
+
* @template {Record<string, unknown>} T
|
|
7
|
+
* @param {<T extends unknown>(
|
|
8
|
+
* element: HTMLFormOperationalControlElement,
|
|
9
|
+
* ) => T} getFormControlPayloadCallback
|
|
10
|
+
* @param {HTMLFieldSetElement} element
|
|
11
|
+
* @returns {T | [T]}
|
|
12
|
+
*/
|
|
13
|
+
export function getFieldsetValue<T extends Record<string, unknown>>(getFormControlPayloadCallback: <T_1 extends unknown>(element: HTMLFormOperationalControlElement) => T_1, element: HTMLFieldSetElement): T | [T];
|
|
14
|
+
//# sourceMappingURL=get-fieldset-value.helper.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-fieldset-value.helper.d.ts","sourceRoot":"","sources":["../../../../../../src/packages/get-form-control-payload/helpers/get-fieldset-value/get-fieldset-value.helper.js"],"names":[],"mappings":"gDAGc,OAAO,iCAAiC,EAAE,iCAAiC;qCAC3E,OAAO,iCAAiC,EAAE,sBAAsB;AAD9E,+HAA+H;AAC/H,yGAAyG;AAEzG;;;;;;;GAOG;AACH,kIALa,iCAAiC,mBAEnC,mBAAmB,WAa7B"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { VALUE_AS_ARRAY_IDENTIFIER } from '../../../../libs/constants/constants.js';
|
|
2
|
+
import { getFormControlsPayload } from '../get-form-controls-payload/get-form-controls-payload.js';
|
|
3
|
+
|
|
4
|
+
/** @typedef {import('../../../../libs/types/types.js').HTMLFormOperationalControlElement} HTMLFormOperationalControlElement */
|
|
5
|
+
/** @typedef {import('../../../../libs/types/types.js').HTMLFormControlElement} HTMLFormControlElement */
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* @template {Record<string, unknown>} T
|
|
9
|
+
* @param {<T extends unknown>(
|
|
10
|
+
* element: HTMLFormOperationalControlElement,
|
|
11
|
+
* ) => T} getFormControlPayloadCallback
|
|
12
|
+
* @param {HTMLFieldSetElement} element
|
|
13
|
+
* @returns {T | [T]}
|
|
14
|
+
*/
|
|
15
|
+
const getFieldsetValue = (getFormControlPayloadCallback, element) => {
|
|
16
|
+
const elements = [.../** @type {HTMLFieldSetElement} */ (element).elements];
|
|
17
|
+
const fieldsetValue = getFormControlsPayload(
|
|
18
|
+
getFormControlPayloadCallback,
|
|
19
|
+
.../** @type {HTMLFormControlElement[]} */ (elements),
|
|
20
|
+
);
|
|
21
|
+
|
|
22
|
+
const hasArrayValue = element.name.endsWith(VALUE_AS_ARRAY_IDENTIFIER);
|
|
23
|
+
|
|
24
|
+
return /** @type {T} */ (hasArrayValue ? [fieldsetValue] : fieldsetValue);
|
|
25
|
+
};
|
|
26
|
+
|
|
27
|
+
export { getFieldsetValue };
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export type HTMLFormOperationalControlElement = import('../../../../libs/types/types.js').HTMLFormOperationalControlElement;
|
|
2
|
+
export type HTMLFormControlElement = import('../../../../libs/types/types.js').HTMLFormControlElement;
|
|
3
|
+
/** @typedef {import('../../../../libs/types/types.js').HTMLFormOperationalControlElement} HTMLFormOperationalControlElement */
|
|
4
|
+
/** @typedef {import('../../../../libs/types/types.js').HTMLFormControlElement} HTMLFormControlElement */
|
|
5
|
+
/**
|
|
6
|
+
* @template {Record<string, unknown>} T
|
|
7
|
+
* @param {<T extends unknown>(
|
|
8
|
+
* element: HTMLFormOperationalControlElement,
|
|
9
|
+
* ) => T} getFormControlPayloadCallback
|
|
10
|
+
* @param {...HTMLFormControlElement} controlElements
|
|
11
|
+
* @returns {T}
|
|
12
|
+
*/
|
|
13
|
+
export function getFormControlsPayload<T extends Record<string, unknown>>(getFormControlPayloadCallback: <T_1 extends unknown>(element: HTMLFormOperationalControlElement) => T_1, ...controlElements: HTMLFormControlElement[]): T;
|
|
14
|
+
//# sourceMappingURL=get-form-controls-payload.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-form-controls-payload.d.ts","sourceRoot":"","sources":["../../../../../../src/packages/get-form-control-payload/helpers/get-form-controls-payload/get-form-controls-payload.js"],"names":[],"mappings":"gDAKc,OAAO,iCAAiC,EAAE,iCAAiC;qCAC3E,OAAO,iCAAiC,EAAE,sBAAsB;AAD9E,+HAA+H;AAC/H,yGAAyG;AAEzG;;;;;;;GAOG;AACH,wIALa,iCAAiC,8BAEhC,sBAAsB,OAgDnC"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { checkHasValueAsArray } from '../check-has-value-as-array/check-has-value-as-array.helper.js';
|
|
2
|
+
import { checkIsReferToAnotherNode } from '../check-is-refer-to-another-node/check-is-refer-to-another-node.helper.js';
|
|
3
|
+
import { getAllowedElements } from '../get-allowed-elements/get-allowed-elements.helper.js';
|
|
4
|
+
import { getCleanedValueAsArrayControlName } from '../get-cleaned-value-as-array-control-name/get-cleaned-value-as-array-control-name.helper.js';
|
|
5
|
+
|
|
6
|
+
/** @typedef {import('../../../../libs/types/types.js').HTMLFormOperationalControlElement} HTMLFormOperationalControlElement */
|
|
7
|
+
/** @typedef {import('../../../../libs/types/types.js').HTMLFormControlElement} HTMLFormControlElement */
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* @template {Record<string, unknown>} T
|
|
11
|
+
* @param {<T extends unknown>(
|
|
12
|
+
* element: HTMLFormOperationalControlElement,
|
|
13
|
+
* ) => T} getFormControlPayloadCallback
|
|
14
|
+
* @param {...HTMLFormControlElement} controlElements
|
|
15
|
+
* @returns {T}
|
|
16
|
+
*/
|
|
17
|
+
const getFormControlsPayload = (
|
|
18
|
+
getFormControlPayloadCallback,
|
|
19
|
+
...controlElements
|
|
20
|
+
) => {
|
|
21
|
+
const allowedElements = getAllowedElements(controlElements);
|
|
22
|
+
|
|
23
|
+
const elementsValues = /** @type {T} */ ({});
|
|
24
|
+
|
|
25
|
+
for (const element of allowedElements) {
|
|
26
|
+
const isReferToAnotherNode = checkIsReferToAnotherNode(
|
|
27
|
+
element,
|
|
28
|
+
allowedElements,
|
|
29
|
+
);
|
|
30
|
+
|
|
31
|
+
if (isReferToAnotherNode) {
|
|
32
|
+
continue;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
const hasValueAsArray = checkHasValueAsArray(element);
|
|
36
|
+
|
|
37
|
+
if (hasValueAsArray) {
|
|
38
|
+
const key = /** @type {keyof T} */ (
|
|
39
|
+
getCleanedValueAsArrayControlName(element)
|
|
40
|
+
);
|
|
41
|
+
const value = /** @type {T[keyof T]} */ ([
|
|
42
|
+
.../** @type {unknown[]} */ (elementsValues[key] ?? []),
|
|
43
|
+
.../** @type {unknown[]} */ (
|
|
44
|
+
getFormControlPayloadCallback(element)
|
|
45
|
+
),
|
|
46
|
+
]);
|
|
47
|
+
|
|
48
|
+
elementsValues[key] = value;
|
|
49
|
+
|
|
50
|
+
continue;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
const key = /** @type {keyof T} */ (element.name);
|
|
54
|
+
const value = /** @type {T[keyof T]} */ (
|
|
55
|
+
getFormControlPayloadCallback(element)
|
|
56
|
+
);
|
|
57
|
+
|
|
58
|
+
elementsValues[key] = value;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
return elementsValues;
|
|
62
|
+
};
|
|
63
|
+
|
|
64
|
+
export { getFormControlsPayload };
|
|
@@ -5,6 +5,8 @@ export { getCheckboxValue } from "./get-checkbox-value/get-checkbox-value.helper
|
|
|
5
5
|
export { getCleanedValueAsArrayControlName } from "./get-cleaned-value-as-array-control-name/get-cleaned-value-as-array-control-name.helper.js";
|
|
6
6
|
export { getFormControlValue } from "./get-control-value/get-control-value.helper.js";
|
|
7
7
|
export { getDatetimeLocalValue } from "./get-datatime-local-value/get-datatime-local-value.helper.js";
|
|
8
|
+
export { getFieldsetValue } from "./get-fieldset-value/get-fieldset-value.helper.js";
|
|
9
|
+
export { getFormControlsPayload } from "./get-form-controls-payload/get-form-controls-payload.js";
|
|
8
10
|
export { getInputDateValue } from "./get-input-date-value/get-input-date-value.helper.js";
|
|
9
11
|
export { getInputEmailValue } from "./get-input-email-value/get-input-email-value.helper.js";
|
|
10
12
|
export { getInputFileValue } from "./get-input-file-value/get-input-file-value.helper.js";
|
|
@@ -5,6 +5,8 @@ export { getCheckboxValue } from './get-checkbox-value/get-checkbox-value.helper
|
|
|
5
5
|
export { getCleanedValueAsArrayControlName } from './get-cleaned-value-as-array-control-name/get-cleaned-value-as-array-control-name.helper.js';
|
|
6
6
|
export { getFormControlValue } from './get-control-value/get-control-value.helper.js';
|
|
7
7
|
export { getDatetimeLocalValue } from './get-datatime-local-value/get-datatime-local-value.helper.js';
|
|
8
|
+
export { getFieldsetValue } from './get-fieldset-value/get-fieldset-value.helper.js';
|
|
9
|
+
export { getFormControlsPayload } from './get-form-controls-payload/get-form-controls-payload.js';
|
|
8
10
|
export { getInputDateValue } from './get-input-date-value/get-input-date-value.helper.js';
|
|
9
11
|
export { getInputEmailValue } from './get-input-email-value/get-input-email-value.helper.js';
|
|
10
12
|
export { getInputFileValue } from './get-input-file-value/get-input-file-value.helper.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-form-payload.d.ts","sourceRoot":"","sources":["../../../../src/packages/get-form-payload/get-form-payload.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"get-form-payload.d.ts","sourceRoot":"","sources":["../../../../src/packages/get-form-payload/get-form-payload.js"],"names":[],"mappings":"qCAKc,OAAO,2BAA2B,EAAE,sBAAsB;AAAxE,mGAAmG;AAEnG;;;;GAIG;AACH,4EAHW,eAAe,KASzB"}
|
|
@@ -1,4 +1,7 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import {
|
|
2
|
+
getFormControlPayload,
|
|
3
|
+
getFormControlsPayload,
|
|
4
|
+
} from '../get-form-control-payload/get-form-control-payload.js';
|
|
2
5
|
|
|
3
6
|
/** @typedef {import('../../libs/types/types.js').HTMLFormControlElement} HTMLFormControlElement */
|
|
4
7
|
|
|
@@ -12,7 +15,7 @@ const getFormPayload = (formNode) => {
|
|
|
12
15
|
...formNode.elements,
|
|
13
16
|
]);
|
|
14
17
|
|
|
15
|
-
return getFormControlsPayload(...elements);
|
|
18
|
+
return getFormControlsPayload(getFormControlPayload, ...elements);
|
|
16
19
|
};
|
|
17
20
|
|
|
18
21
|
export { getFormPayload };
|