@rjsf/utils 5.21.2 → 5.22.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/dist/index.js +184 -61
- package/dist/index.js.map +2 -2
- package/dist/utils.esm.js +184 -61
- package/dist/utils.esm.js.map +2 -2
- package/dist/utils.umd.js +179 -64
- package/lib/createSchemaUtils.d.ts +3 -2
- package/lib/createSchemaUtils.js +17 -11
- package/lib/createSchemaUtils.js.map +1 -1
- package/lib/mergeDefaultsWithFormData.d.ts +4 -2
- package/lib/mergeDefaultsWithFormData.js +9 -4
- package/lib/mergeDefaultsWithFormData.js.map +1 -1
- package/lib/schema/getClosestMatchingOption.js +6 -2
- package/lib/schema/getClosestMatchingOption.js.map +1 -1
- package/lib/schema/getDefaultFormState.d.ts +6 -3
- package/lib/schema/getDefaultFormState.js +43 -22
- package/lib/schema/getDefaultFormState.js.map +1 -1
- package/lib/schema/retrieveSchema.d.ts +19 -10
- package/lib/schema/retrieveSchema.js +38 -27
- package/lib/schema/retrieveSchema.js.map +1 -1
- package/lib/schema/toIdSchema.d.ts +3 -2
- package/lib/schema/toIdSchema.js +8 -6
- package/lib/schema/toIdSchema.js.map +1 -1
- package/lib/tsconfig.tsbuildinfo +1 -1
- package/lib/types.d.ts +19 -3
- package/package.json +2 -2
- package/src/createSchemaUtils.ts +43 -11
- package/src/mergeDefaultsWithFormData.ts +16 -4
- package/src/schema/getClosestMatchingOption.ts +6 -2
- package/src/schema/getDefaultFormState.ts +58 -19
- package/src/schema/retrieveSchema.ts +110 -28
- package/src/schema/toIdSchema.ts +32 -7
- package/src/types.ts +20 -2
package/lib/createSchemaUtils.js
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import deepEquals from './deepEquals';
|
|
2
2
|
import { getDefaultFormState, getDisplayLabel, getClosestMatchingOption, getFirstMatchingOption, getMatchingOption, isFilesArray, isMultiSelect, isSelect, mergeValidationData, retrieveSchema, sanitizeDataForNewSchema, toIdSchema, toPathSchema, } from './schema';
|
|
3
3
|
/** The `SchemaUtils` class provides a wrapper around the publicly exported APIs in the `utils/schema` directory such
|
|
4
|
-
* that one does not have to explicitly pass the `validator`, `rootSchema`,
|
|
5
|
-
* Since these generally do not change across a `Form`, this allows for
|
|
6
|
-
* `@rjsf/core` components and the various themes as well. This class
|
|
4
|
+
* that one does not have to explicitly pass the `validator`, `rootSchema`, `experimental_defaultFormStateBehavior` or
|
|
5
|
+
* `experimental_customMergeAllOf` to each method. Since these generally do not change across a `Form`, this allows for
|
|
6
|
+
* providing a simplified set of APIs to the `@rjsf/core` components and the various themes as well. This class
|
|
7
|
+
* implements the `SchemaUtilsType` interface.
|
|
7
8
|
*/
|
|
8
9
|
class SchemaUtils {
|
|
9
10
|
/** Constructs the `SchemaUtils` instance with the given `validator` and `rootSchema` stored as instance variables
|
|
@@ -11,11 +12,13 @@ class SchemaUtils {
|
|
|
11
12
|
* @param validator - An implementation of the `ValidatorType` interface that will be forwarded to all the APIs
|
|
12
13
|
* @param rootSchema - The root schema that will be forwarded to all the APIs
|
|
13
14
|
* @param experimental_defaultFormStateBehavior - Configuration flags to allow users to override default form state behavior
|
|
15
|
+
* @param [experimental_customMergeAllOf] - Optional function that allows for custom merging of `allOf` schemas
|
|
14
16
|
*/
|
|
15
|
-
constructor(validator, rootSchema, experimental_defaultFormStateBehavior) {
|
|
17
|
+
constructor(validator, rootSchema, experimental_defaultFormStateBehavior, experimental_customMergeAllOf) {
|
|
16
18
|
this.rootSchema = rootSchema;
|
|
17
19
|
this.validator = validator;
|
|
18
20
|
this.experimental_defaultFormStateBehavior = experimental_defaultFormStateBehavior;
|
|
21
|
+
this.experimental_customMergeAllOf = experimental_customMergeAllOf;
|
|
19
22
|
}
|
|
20
23
|
/** Returns the `ValidatorType` in the `SchemaUtilsType`
|
|
21
24
|
*
|
|
@@ -31,15 +34,17 @@ class SchemaUtils {
|
|
|
31
34
|
* @param validator - An implementation of the `ValidatorType` interface that will be compared against the current one
|
|
32
35
|
* @param rootSchema - The root schema that will be compared against the current one
|
|
33
36
|
* @param [experimental_defaultFormStateBehavior] Optional configuration object, if provided, allows users to override default form state behavior
|
|
37
|
+
* @param [experimental_customMergeAllOf] - Optional function that allows for custom merging of `allOf` schemas
|
|
34
38
|
* @returns - True if the `SchemaUtilsType` differs from the given `validator` or `rootSchema`
|
|
35
39
|
*/
|
|
36
|
-
doesSchemaUtilsDiffer(validator, rootSchema, experimental_defaultFormStateBehavior = {}) {
|
|
40
|
+
doesSchemaUtilsDiffer(validator, rootSchema, experimental_defaultFormStateBehavior = {}, experimental_customMergeAllOf) {
|
|
37
41
|
if (!validator || !rootSchema) {
|
|
38
42
|
return false;
|
|
39
43
|
}
|
|
40
44
|
return (this.validator !== validator ||
|
|
41
45
|
!deepEquals(this.rootSchema, rootSchema) ||
|
|
42
|
-
!deepEquals(this.experimental_defaultFormStateBehavior, experimental_defaultFormStateBehavior)
|
|
46
|
+
!deepEquals(this.experimental_defaultFormStateBehavior, experimental_defaultFormStateBehavior) ||
|
|
47
|
+
this.experimental_customMergeAllOf !== experimental_customMergeAllOf);
|
|
43
48
|
}
|
|
44
49
|
/** Returns the superset of `formData` that includes the given set updated to include any missing fields that have
|
|
45
50
|
* computed to have defaults provided in the `schema`.
|
|
@@ -52,7 +57,7 @@ class SchemaUtils {
|
|
|
52
57
|
* @returns - The resulting `formData` with all the defaults provided
|
|
53
58
|
*/
|
|
54
59
|
getDefaultFormState(schema, formData, includeUndefinedValues = false) {
|
|
55
|
-
return getDefaultFormState(this.validator, schema, formData, this.rootSchema, includeUndefinedValues, this.experimental_defaultFormStateBehavior);
|
|
60
|
+
return getDefaultFormState(this.validator, schema, formData, this.rootSchema, includeUndefinedValues, this.experimental_defaultFormStateBehavior, this.experimental_customMergeAllOf);
|
|
56
61
|
}
|
|
57
62
|
/** Determines whether the combination of `schema` and `uiSchema` properties indicates that the label for the `schema`
|
|
58
63
|
* should be displayed in a UI.
|
|
@@ -154,7 +159,7 @@ class SchemaUtils {
|
|
|
154
159
|
* @returns - The schema having its conditions, additional properties, references and dependencies resolved
|
|
155
160
|
*/
|
|
156
161
|
retrieveSchema(schema, rawFormData) {
|
|
157
|
-
return retrieveSchema(this.validator, schema, this.rootSchema, rawFormData);
|
|
162
|
+
return retrieveSchema(this.validator, schema, this.rootSchema, rawFormData, this.experimental_customMergeAllOf);
|
|
158
163
|
}
|
|
159
164
|
/** Sanitize the `data` associated with the `oldSchema` so it is considered appropriate for the `newSchema`. If the
|
|
160
165
|
* new schema does not contain any properties, then `undefined` is returned to clear all the form data. Due to the
|
|
@@ -180,7 +185,7 @@ class SchemaUtils {
|
|
|
180
185
|
* @returns - The `IdSchema` object for the `schema`
|
|
181
186
|
*/
|
|
182
187
|
toIdSchema(schema, id, formData, idPrefix = 'root', idSeparator = '_') {
|
|
183
|
-
return toIdSchema(this.validator, schema, id, this.rootSchema, formData, idPrefix, idSeparator);
|
|
188
|
+
return toIdSchema(this.validator, schema, id, this.rootSchema, formData, idPrefix, idSeparator, this.experimental_customMergeAllOf);
|
|
184
189
|
}
|
|
185
190
|
/** Generates an `PathSchema` object for the `schema`, recursively
|
|
186
191
|
*
|
|
@@ -199,9 +204,10 @@ class SchemaUtils {
|
|
|
199
204
|
* @param validator - an implementation of the `ValidatorType` interface that will be forwarded to all the APIs
|
|
200
205
|
* @param rootSchema - The root schema that will be forwarded to all the APIs
|
|
201
206
|
* @param [experimental_defaultFormStateBehavior] Optional configuration object, if provided, allows users to override default form state behavior
|
|
207
|
+
* @param [experimental_customMergeAllOf] - Optional function that allows for custom merging of `allOf` schemas
|
|
202
208
|
* @returns - An implementation of a `SchemaUtilsType` interface
|
|
203
209
|
*/
|
|
204
|
-
export default function createSchemaUtils(validator, rootSchema, experimental_defaultFormStateBehavior = {}) {
|
|
205
|
-
return new SchemaUtils(validator, rootSchema, experimental_defaultFormStateBehavior);
|
|
210
|
+
export default function createSchemaUtils(validator, rootSchema, experimental_defaultFormStateBehavior = {}, experimental_customMergeAllOf) {
|
|
211
|
+
return new SchemaUtils(validator, rootSchema, experimental_defaultFormStateBehavior, experimental_customMergeAllOf);
|
|
206
212
|
}
|
|
207
213
|
//# sourceMappingURL=createSchemaUtils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createSchemaUtils.js","sourceRoot":"","sources":["../src/createSchemaUtils.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"createSchemaUtils.js","sourceRoot":"","sources":["../src/createSchemaUtils.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,11 +7,13 @@
|
|
|
7
7
|
* are deeply merged; additional entries from the defaults are ignored unless `mergeExtraArrayDefaults` is true, in
|
|
8
8
|
* which case the extras are appended onto the end of the form data
|
|
9
9
|
* - when the array is not set in form data, the default is copied over
|
|
10
|
-
* - scalars are overwritten/set by form data
|
|
10
|
+
* - scalars are overwritten/set by form data unless undefined and there is a default AND `defaultSupercedesUndefined`
|
|
11
|
+
* is true
|
|
11
12
|
*
|
|
12
13
|
* @param [defaults] - The defaults to merge
|
|
13
14
|
* @param [formData] - The form data into which the defaults will be merged
|
|
14
15
|
* @param [mergeExtraArrayDefaults=false] - If true, any additional default array entries are appended onto the formData
|
|
16
|
+
* @param [defaultSupercedesUndefined=false] - If true, an explicit undefined value will be overwritten by the default value
|
|
15
17
|
* @returns - The resulting merged form data with defaults
|
|
16
18
|
*/
|
|
17
|
-
export default function mergeDefaultsWithFormData<T = any>(defaults?: T, formData?: T, mergeExtraArrayDefaults?: boolean): T | undefined;
|
|
19
|
+
export default function mergeDefaultsWithFormData<T = any>(defaults?: T, formData?: T, mergeExtraArrayDefaults?: boolean, defaultSupercedesUndefined?: boolean): T | undefined;
|
|
@@ -9,19 +9,21 @@ import isObject from './isObject';
|
|
|
9
9
|
* are deeply merged; additional entries from the defaults are ignored unless `mergeExtraArrayDefaults` is true, in
|
|
10
10
|
* which case the extras are appended onto the end of the form data
|
|
11
11
|
* - when the array is not set in form data, the default is copied over
|
|
12
|
-
* - scalars are overwritten/set by form data
|
|
12
|
+
* - scalars are overwritten/set by form data unless undefined and there is a default AND `defaultSupercedesUndefined`
|
|
13
|
+
* is true
|
|
13
14
|
*
|
|
14
15
|
* @param [defaults] - The defaults to merge
|
|
15
16
|
* @param [formData] - The form data into which the defaults will be merged
|
|
16
17
|
* @param [mergeExtraArrayDefaults=false] - If true, any additional default array entries are appended onto the formData
|
|
18
|
+
* @param [defaultSupercedesUndefined=false] - If true, an explicit undefined value will be overwritten by the default value
|
|
17
19
|
* @returns - The resulting merged form data with defaults
|
|
18
20
|
*/
|
|
19
|
-
export default function mergeDefaultsWithFormData(defaults, formData, mergeExtraArrayDefaults = false) {
|
|
21
|
+
export default function mergeDefaultsWithFormData(defaults, formData, mergeExtraArrayDefaults = false, defaultSupercedesUndefined = false) {
|
|
20
22
|
if (Array.isArray(formData)) {
|
|
21
23
|
const defaultsArray = Array.isArray(defaults) ? defaults : [];
|
|
22
24
|
const mapped = formData.map((value, idx) => {
|
|
23
25
|
if (defaultsArray[idx]) {
|
|
24
|
-
return mergeDefaultsWithFormData(defaultsArray[idx], value, mergeExtraArrayDefaults);
|
|
26
|
+
return mergeDefaultsWithFormData(defaultsArray[idx], value, mergeExtraArrayDefaults, defaultSupercedesUndefined);
|
|
25
27
|
}
|
|
26
28
|
return value;
|
|
27
29
|
});
|
|
@@ -34,10 +36,13 @@ export default function mergeDefaultsWithFormData(defaults, formData, mergeExtra
|
|
|
34
36
|
if (isObject(formData)) {
|
|
35
37
|
const acc = Object.assign({}, defaults); // Prevent mutation of source object.
|
|
36
38
|
return Object.keys(formData).reduce((acc, key) => {
|
|
37
|
-
acc[key] = mergeDefaultsWithFormData(defaults ? get(defaults, key) : {}, get(formData, key), mergeExtraArrayDefaults);
|
|
39
|
+
acc[key] = mergeDefaultsWithFormData(defaults ? get(defaults, key) : {}, get(formData, key), mergeExtraArrayDefaults, defaultSupercedesUndefined);
|
|
38
40
|
return acc;
|
|
39
41
|
}, acc);
|
|
40
42
|
}
|
|
43
|
+
if (defaultSupercedesUndefined && formData === undefined) {
|
|
44
|
+
return defaults;
|
|
45
|
+
}
|
|
41
46
|
return formData;
|
|
42
47
|
}
|
|
43
48
|
//# sourceMappingURL=mergeDefaultsWithFormData.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mergeDefaultsWithFormData.js","sourceRoot":"","sources":["../src/mergeDefaultsWithFormData.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,YAAY,CAAC;AAE7B,OAAO,QAAQ,MAAM,YAAY,CAAC;AAGlC
|
|
1
|
+
{"version":3,"file":"mergeDefaultsWithFormData.js","sourceRoot":"","sources":["../src/mergeDefaultsWithFormData.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,YAAY,CAAC;AAE7B,OAAO,QAAQ,MAAM,YAAY,CAAC;AAGlC;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,CAAC,OAAO,UAAU,yBAAyB,CAC/C,QAAY,EACZ,QAAY,EACZ,uBAAuB,GAAG,KAAK,EAC/B,0BAA0B,GAAG,KAAK;IAElC,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;QAC3B,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9D,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;YACzC,IAAI,aAAa,CAAC,GAAG,CAAC,EAAE;gBACtB,OAAO,yBAAyB,CAC9B,aAAa,CAAC,GAAG,CAAC,EAClB,KAAK,EACL,uBAAuB,EACvB,0BAA0B,CAC3B,CAAC;aACH;YACD,OAAO,KAAK,CAAC;QACf,CAAC,CAAC,CAAC;QACH,gEAAgE;QAChE,IAAI,uBAAuB,IAAI,MAAM,CAAC,MAAM,GAAG,aAAa,CAAC,MAAM,EAAE;YACnE,MAAM,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;SACpD;QACD,OAAO,MAAsB,CAAC;KAC/B;IACD,IAAI,QAAQ,CAAC,QAAQ,CAAC,EAAE;QACtB,MAAM,GAAG,GAA8B,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC,CAAC,qCAAqC;QACzG,OAAO,MAAM,CAAC,IAAI,CAAC,QAA6B,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;YACpE,GAAG,CAAC,GAAc,CAAC,GAAG,yBAAyB,CAC7C,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAClC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,EAClB,uBAAuB,EACvB,0BAA0B,CAC3B,CAAC;YACF,OAAO,GAAG,CAAC;QACb,CAAC,EAAE,GAAG,CAAC,CAAC;KACT;IACD,IAAI,0BAA0B,IAAI,QAAQ,KAAK,SAAS,EAAE;QACxD,OAAO,QAAQ,CAAC;KACjB;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC"}
|
|
@@ -43,7 +43,7 @@ export const JUNK_OPTION = {
|
|
|
43
43
|
* @param formData - The form data associated with the schema, used to calculate the score
|
|
44
44
|
* @returns - The score a schema against the formData
|
|
45
45
|
*/
|
|
46
|
-
export function calculateIndexScore(validator, rootSchema, schema, formData
|
|
46
|
+
export function calculateIndexScore(validator, rootSchema, schema, formData) {
|
|
47
47
|
let totalScore = 0;
|
|
48
48
|
if (schema) {
|
|
49
49
|
if (isObject(schema.properties)) {
|
|
@@ -63,7 +63,11 @@ export function calculateIndexScore(validator, rootSchema, schema, formData = {}
|
|
|
63
63
|
getClosestMatchingOption(validator, rootSchema, formValue, get(value, key), -1, discriminator));
|
|
64
64
|
}
|
|
65
65
|
if (value.type === 'object') {
|
|
66
|
-
|
|
66
|
+
if (isObject(formValue)) {
|
|
67
|
+
// If the structure is matching then give it a little boost in score
|
|
68
|
+
score += 1;
|
|
69
|
+
}
|
|
70
|
+
return score + calculateIndexScore(validator, rootSchema, value, formValue);
|
|
67
71
|
}
|
|
68
72
|
if (value.type === guessType(formValue)) {
|
|
69
73
|
// If the types match, then we bump the score by one
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getClosestMatchingOption.js","sourceRoot":"","sources":["../../src/schema/getClosestMatchingOption.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,YAAY,CAAC;AAC7B,OAAO,GAAG,MAAM,YAAY,CAAC;AAC7B,OAAO,QAAQ,MAAM,iBAAiB,CAAC;AACvC,OAAO,QAAQ,MAAM,iBAAiB,CAAC;AACvC,OAAO,QAAQ,MAAM,iBAAiB,CAAC;AACvC,OAAO,MAAM,MAAM,eAAe,CAAC;AACnC,OAAO,KAAK,MAAM,cAAc,CAAC;AAEjC,OAAO,sBAAsB,MAAM,0BAA0B,CAAC;AAC9D,OAAO,cAAc,EAAE,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACxE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC/E,OAAO,SAAS,MAAM,cAAc,CAAC;AAErC,OAAO,+BAA+B,MAAM,oCAAoC,CAAC;AACjF,OAAO,oCAAoC,MAAM,yCAAyC,CAAC;AAE3F;;GAEG;AACH,MAAM,CAAC,MAAM,WAAW,GAAqB;IAC3C,IAAI,EAAE,QAAQ;IACd,GAAG,EAAE,cAAc;IACnB,UAAU,EAAE;QACV,oBAAoB,EAAE;YACpB,IAAI,EAAE,QAAQ;SACf;KACF;CACF,CAAC;AAEF;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,UAAU,mBAAmB,CACjC,SAAiC,EACjC,UAAa,EACb,MAAU,EACV,
|
|
1
|
+
{"version":3,"file":"getClosestMatchingOption.js","sourceRoot":"","sources":["../../src/schema/getClosestMatchingOption.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,YAAY,CAAC;AAC7B,OAAO,GAAG,MAAM,YAAY,CAAC;AAC7B,OAAO,QAAQ,MAAM,iBAAiB,CAAC;AACvC,OAAO,QAAQ,MAAM,iBAAiB,CAAC;AACvC,OAAO,QAAQ,MAAM,iBAAiB,CAAC;AACvC,OAAO,MAAM,MAAM,eAAe,CAAC;AACnC,OAAO,KAAK,MAAM,cAAc,CAAC;AAEjC,OAAO,sBAAsB,MAAM,0BAA0B,CAAC;AAC9D,OAAO,cAAc,EAAE,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACxE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC/E,OAAO,SAAS,MAAM,cAAc,CAAC;AAErC,OAAO,+BAA+B,MAAM,oCAAoC,CAAC;AACjF,OAAO,oCAAoC,MAAM,yCAAyC,CAAC;AAE3F;;GAEG;AACH,MAAM,CAAC,MAAM,WAAW,GAAqB;IAC3C,IAAI,EAAE,QAAQ;IACd,GAAG,EAAE,cAAc;IACnB,UAAU,EAAE;QACV,oBAAoB,EAAE;YACpB,IAAI,EAAE,QAAQ;SACf;KACF;CACF,CAAC;AAEF;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,UAAU,mBAAmB,CACjC,SAAiC,EACjC,UAAa,EACb,MAAU,EACV,QAAc;IAEd,IAAI,UAAU,GAAG,CAAC,CAAC;IACnB,IAAI,MAAM,EAAE;QACV,IAAI,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE;YAC/B,UAAU,IAAI,MAAM,CAClB,MAAM,CAAC,UAAU,EACjB,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;gBACpB,MAAM,SAAS,GAAG,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;gBACrC,IAAI,OAAO,KAAK,KAAK,SAAS,EAAE;oBAC9B,OAAO,KAAK,CAAC;iBACd;gBACD,IAAI,GAAG,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE;oBACvB,MAAM,SAAS,GAAG,cAAc,CAAU,SAAS,EAAE,KAAU,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;oBACxF,OAAO,KAAK,GAAG,mBAAmB,CAAU,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,IAAI,EAAE,CAAC,CAAC;iBAChG;gBACD,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,UAAU,CAAC,IAAI,GAAG,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC,IAAI,SAAS,EAAE;oBACnE,MAAM,GAAG,GAAG,GAAG,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC;oBAC7D,MAAM,aAAa,GAAG,+BAA+B,CAAI,KAAU,CAAC,CAAC;oBACrE,OAAO,CACL,KAAK;wBACL,wBAAwB,CACtB,SAAS,EACT,UAAU,EACV,SAAS,EACT,GAAG,CAAC,KAAK,EAAE,GAAG,CAAQ,EACtB,CAAC,CAAC,EACF,aAAa,CACd,CACF,CAAC;iBACH;gBACD,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE;oBAC3B,IAAI,QAAQ,CAAC,SAAS,CAAC,EAAE;wBACvB,oEAAoE;wBACpE,KAAK,IAAI,CAAC,CAAC;qBACZ;oBACD,OAAO,KAAK,GAAG,mBAAmB,CAAU,SAAS,EAAE,UAAU,EAAE,KAAU,EAAE,SAAS,CAAC,CAAC;iBAC3F;gBACD,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,SAAS,CAAC,EAAE;oBACvC,oDAAoD;oBACpD,IAAI,QAAQ,GAAG,KAAK,GAAG,CAAC,CAAC;oBACzB,IAAI,KAAK,CAAC,OAAO,EAAE;wBACjB,sGAAsG;wBACtG,+BAA+B;wBAC/B,QAAQ,IAAI,SAAS,KAAK,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;qBAClD;yBAAM,IAAI,KAAK,CAAC,KAAK,EAAE;wBACtB,2FAA2F;wBAC3F,+BAA+B;wBAC/B,QAAQ,IAAI,SAAS,KAAK,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;qBAChD;oBACD,0CAA0C;oBAC1C,OAAO,QAAQ,CAAC;iBACjB;gBACD,OAAO,KAAK,CAAC;YACf,CAAC,EACD,CAAC,CACF,CAAC;SACH;aAAM,IAAI,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,CAAC,QAAQ,CAAC,EAAE;YACvE,UAAU,IAAI,CAAC,CAAC;SACjB;KACF;IACD,OAAO,UAAU,CAAC;AACpB,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,CAAC,OAAO,UAAU,wBAAwB,CAK9C,SAAiC,EACjC,UAAa,EACb,QAAuB,EACvB,OAAY,EACZ,cAAc,GAAG,CAAC,CAAC,EACnB,kBAA2B;IAE3B,wCAAwC;IACxC,MAAM,eAAe,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;QAC7C,OAAO,oBAAoB,CAAI,MAAM,EAAE,UAAU,EAAE,EAAE,CAAC,CAAC;IACzD,CAAC,CAAC,CAAC;IAEH,MAAM,wBAAwB,GAAG,oCAAoC,CAAC,QAAQ,EAAE,OAAO,EAAE,kBAAkB,CAAC,CAAC;IAC7G,IAAI,QAAQ,CAAC,wBAAwB,CAAC,EAAE;QACtC,OAAO,wBAAwB,CAAC;KACjC;IAED,iGAAiG;IACjG,MAAM,eAAe,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC,SAAmB,EAAE,MAAM,EAAE,KAAa,EAAE,EAAE;QAC5F,MAAM,WAAW,GAAQ,CAAC,WAAgB,EAAE,MAAM,CAAC,CAAC;QACpD,MAAM,KAAK,GAAG,sBAAsB,CAAU,SAAS,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE,kBAAkB,CAAC,CAAC;QAChH,0EAA0E;QAC1E,IAAI,KAAK,KAAK,CAAC,EAAE;YACf,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SACvB;QACD,OAAO,SAAS,CAAC;IACnB,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,+CAA+C;IAC/C,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE;QAChC,OAAO,eAAe,CAAC,CAAC,CAAC,CAAC;KAC3B;IACD,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE;QAC3B,6EAA6E;QAC7E,KAAK,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;KAC/D;IAED,MAAM,UAAU,GAAG,IAAI,GAAG,EAAU,CAAC;IACrC,8FAA8F;IAC9F,MAAM,EAAE,SAAS,EAAE,GAAa,eAAe,CAAC,MAAM,CACpD,CAAC,SAAmB,EAAE,KAAa,EAAE,EAAE;QACrC,MAAM,EAAE,SAAS,EAAE,GAAG,SAAS,CAAC;QAChC,MAAM,MAAM,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;QACtC,MAAM,KAAK,GAAG,mBAAmB,CAAC,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;QAC3E,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACtB,IAAI,KAAK,GAAG,SAAS,EAAE;YACrB,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;SAC/C;QACD,OAAO,SAAS,CAAC;IACnB,CAAC,EACD,EAAE,SAAS,EAAE,cAAc,EAAE,SAAS,EAAE,CAAC,EAAE,CAC5C,CAAC;IACF,oDAAoD;IACpD,IAAI,UAAU,CAAC,IAAI,KAAK,CAAC,IAAI,cAAc,IAAI,CAAC,EAAE;QAChD,OAAO,cAAc,CAAC;KACvB;IAED,OAAO,SAAS,CAAC;AACnB,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Experimental_DefaultFormStateBehavior, FormContextType, RJSFSchema, StrictRJSFSchema, ValidatorType } from '../types';
|
|
1
|
+
import { Experimental_CustomMergeAllOf, Experimental_DefaultFormStateBehavior, FormContextType, RJSFSchema, StrictRJSFSchema, ValidatorType } from '../types';
|
|
2
2
|
/** Enum that indicates how `schema.additionalItems` should be handled by the `getInnerSchemaForArrayItem()` function.
|
|
3
3
|
*/
|
|
4
4
|
export declare enum AdditionalItemsHandling {
|
|
@@ -38,6 +38,8 @@ interface ComputeDefaultsProps<T = any, S extends StrictRJSFSchema = RJSFSchema>
|
|
|
38
38
|
_recurseList?: string[];
|
|
39
39
|
/** Optional configuration object, if provided, allows users to override default form state behavior */
|
|
40
40
|
experimental_defaultFormStateBehavior?: Experimental_DefaultFormStateBehavior;
|
|
41
|
+
/** Optional function that allows for custom merging of `allOf` schemas */
|
|
42
|
+
experimental_customMergeAllOf?: Experimental_CustomMergeAllOf<S>;
|
|
41
43
|
/** Optional flag, if true, indicates this schema was required in the parent schema. */
|
|
42
44
|
required?: boolean;
|
|
43
45
|
}
|
|
@@ -58,7 +60,7 @@ export declare function computeDefaults<T = any, S extends StrictRJSFSchema = RJ
|
|
|
58
60
|
* @param defaults - Optional props for this function
|
|
59
61
|
* @returns - The default value based on the schema type if they are defined for object or array schemas.
|
|
60
62
|
*/
|
|
61
|
-
export declare function getObjectDefaults<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(validator: ValidatorType<T, S, F>, rawSchema: S, { rawFormData, rootSchema, includeUndefinedValues, _recurseList, experimental_defaultFormStateBehavior, required, }?: ComputeDefaultsProps<T, S>, defaults?: T | T[] | undefined): T;
|
|
63
|
+
export declare function getObjectDefaults<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(validator: ValidatorType<T, S, F>, rawSchema: S, { rawFormData, rootSchema, includeUndefinedValues, _recurseList, experimental_defaultFormStateBehavior, experimental_customMergeAllOf, required, }?: ComputeDefaultsProps<T, S>, defaults?: T | T[] | undefined): T;
|
|
62
64
|
/** Computes the default value for arrays.
|
|
63
65
|
*
|
|
64
66
|
* @param validator - an implementation of the `ValidatorType` interface that will be used when necessary
|
|
@@ -88,7 +90,8 @@ export declare function getDefaultBasedOnSchemaType<T = any, S extends StrictRJS
|
|
|
88
90
|
* If "excludeObjectChildren", cause undefined values for this object and pass `includeUndefinedValues` as
|
|
89
91
|
* false when computing defaults for any nested object properties.
|
|
90
92
|
* @param [experimental_defaultFormStateBehavior] Optional configuration object, if provided, allows users to override default form state behavior
|
|
93
|
+
* @param [experimental_customMergeAllOf] - Optional function that allows for custom merging of `allOf` schemas
|
|
91
94
|
* @returns - The resulting `formData` with all the defaults provided
|
|
92
95
|
*/
|
|
93
|
-
export default function getDefaultFormState<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(validator: ValidatorType<T, S, F>, theSchema: S, formData?: T, rootSchema?: S, includeUndefinedValues?: boolean | 'excludeObjectChildren', experimental_defaultFormStateBehavior?: Experimental_DefaultFormStateBehavior): T | T[] | undefined;
|
|
96
|
+
export default function getDefaultFormState<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(validator: ValidatorType<T, S, F>, theSchema: S, formData?: T, rootSchema?: S, includeUndefinedValues?: boolean | 'excludeObjectChildren', experimental_defaultFormStateBehavior?: Experimental_DefaultFormStateBehavior, experimental_customMergeAllOf?: Experimental_CustomMergeAllOf<S>): T | T[] | undefined;
|
|
94
97
|
export {};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import get from 'lodash/get';
|
|
2
2
|
import isEmpty from 'lodash/isEmpty';
|
|
3
|
-
import { ANY_OF_KEY, DEFAULT_KEY, DEPENDENCIES_KEY, PROPERTIES_KEY, ONE_OF_KEY, REF_KEY, ALL_OF_KEY, } from '../constants';
|
|
3
|
+
import { ANY_OF_KEY, CONST_KEY, DEFAULT_KEY, DEPENDENCIES_KEY, PROPERTIES_KEY, ONE_OF_KEY, REF_KEY, ALL_OF_KEY, } from '../constants';
|
|
4
4
|
import findSchemaDefinition from '../findSchemaDefinition';
|
|
5
5
|
import getClosestMatchingOption from './getClosestMatchingOption';
|
|
6
6
|
import getDiscriminatorFieldFromSchema from '../getDiscriminatorFieldFromSchema';
|
|
@@ -12,6 +12,7 @@ import mergeObjects from '../mergeObjects';
|
|
|
12
12
|
import mergeSchemas from '../mergeSchemas';
|
|
13
13
|
import isMultiSelect from './isMultiSelect';
|
|
14
14
|
import retrieveSchema, { resolveDependencies } from './retrieveSchema';
|
|
15
|
+
import isConstant from '../isConstant';
|
|
15
16
|
/** Enum that indicates how `schema.additionalItems` should be handled by the `getInnerSchemaForArrayItem()` function.
|
|
16
17
|
*/
|
|
17
18
|
export var AdditionalItemsHandling;
|
|
@@ -70,10 +71,13 @@ export function getInnerSchemaForArrayItem(schema, additionalItems = AdditionalI
|
|
|
70
71
|
* @param requiredFields - The list of fields that are required
|
|
71
72
|
* @param experimental_defaultFormStateBehavior - Optional configuration object, if provided, allows users to override
|
|
72
73
|
* default form state behavior
|
|
74
|
+
* @param isConst - Optional flag, if true, indicates that the schema has a const property defined, thus we should always return the computedDefault since it's coming from the const.
|
|
73
75
|
*/
|
|
74
|
-
function maybeAddDefaultToObject(obj, key, computedDefault, includeUndefinedValues, isParentRequired, requiredFields = [], experimental_defaultFormStateBehavior = {}) {
|
|
76
|
+
function maybeAddDefaultToObject(obj, key, computedDefault, includeUndefinedValues, isParentRequired, requiredFields = [], experimental_defaultFormStateBehavior = {}, isConst = false) {
|
|
75
77
|
const { emptyObjectFields = 'populateAllDefaults' } = experimental_defaultFormStateBehavior;
|
|
76
|
-
if (includeUndefinedValues) {
|
|
78
|
+
if (includeUndefinedValues || isConst) {
|
|
79
|
+
// If includeUndefinedValues
|
|
80
|
+
// Or if the schema has a const property defined, then we should always return the computedDefault since it's coming from the const.
|
|
77
81
|
obj[key] = computedDefault;
|
|
78
82
|
}
|
|
79
83
|
else if (emptyObjectFields !== 'skipDefaults') {
|
|
@@ -116,7 +120,7 @@ function maybeAddDefaultToObject(obj, key, computedDefault, includeUndefinedValu
|
|
|
116
120
|
* @returns - The resulting `formData` with all the defaults provided
|
|
117
121
|
*/
|
|
118
122
|
export function computeDefaults(validator, rawSchema, computeDefaultsProps = {}) {
|
|
119
|
-
const { parentDefaults, rawFormData, rootSchema = {}, includeUndefinedValues = false, _recurseList = [], experimental_defaultFormStateBehavior = undefined, required, } = computeDefaultsProps;
|
|
123
|
+
const { parentDefaults, rawFormData, rootSchema = {}, includeUndefinedValues = false, _recurseList = [], experimental_defaultFormStateBehavior = undefined, experimental_customMergeAllOf = undefined, required, } = computeDefaultsProps;
|
|
120
124
|
const formData = (isObject(rawFormData) ? rawFormData : {});
|
|
121
125
|
const schema = isObject(rawSchema) ? rawSchema : {};
|
|
122
126
|
// Compute the defaults recursively: give highest priority to deepest nodes.
|
|
@@ -124,7 +128,10 @@ export function computeDefaults(validator, rawSchema, computeDefaultsProps = {})
|
|
|
124
128
|
// If we get a new schema, then we need to recompute defaults again for the new schema found.
|
|
125
129
|
let schemaToCompute = null;
|
|
126
130
|
let updatedRecurseList = _recurseList;
|
|
127
|
-
if (
|
|
131
|
+
if (isConstant(schema)) {
|
|
132
|
+
defaults = schema.const;
|
|
133
|
+
}
|
|
134
|
+
else if (isObject(defaults) && isObject(schema.default)) {
|
|
128
135
|
// For object defaults, only override parent defaults that are defined in
|
|
129
136
|
// schema.default.
|
|
130
137
|
defaults = mergeObjects(defaults, schema.default);
|
|
@@ -146,7 +153,7 @@ export function computeDefaults(validator, rawSchema, computeDefaultsProps = {})
|
|
|
146
153
|
...formData,
|
|
147
154
|
...getDefaultBasedOnSchemaType(validator, schema, computeDefaultsProps, defaults),
|
|
148
155
|
};
|
|
149
|
-
const resolvedSchema = resolveDependencies(validator, schema, rootSchema, false, [], defaultFormData);
|
|
156
|
+
const resolvedSchema = resolveDependencies(validator, schema, rootSchema, false, [], defaultFormData, experimental_customMergeAllOf);
|
|
150
157
|
schemaToCompute = resolvedSchema[0]; // pick the first element from resolve dependencies
|
|
151
158
|
}
|
|
152
159
|
else if (isFixedItems(schema)) {
|
|
@@ -204,29 +211,35 @@ export function computeDefaults(validator, rawSchema, computeDefaultsProps = {})
|
|
|
204
211
|
* @param defaults - Optional props for this function
|
|
205
212
|
* @returns - The default value based on the schema type if they are defined for object or array schemas.
|
|
206
213
|
*/
|
|
207
|
-
export function getObjectDefaults(validator, rawSchema, { rawFormData, rootSchema = {}, includeUndefinedValues = false, _recurseList = [], experimental_defaultFormStateBehavior = undefined, required, } = {}, defaults) {
|
|
214
|
+
export function getObjectDefaults(validator, rawSchema, { rawFormData, rootSchema = {}, includeUndefinedValues = false, _recurseList = [], experimental_defaultFormStateBehavior = undefined, experimental_customMergeAllOf = undefined, required, } = {}, defaults) {
|
|
208
215
|
{
|
|
209
216
|
const formData = (isObject(rawFormData) ? rawFormData : {});
|
|
210
217
|
const schema = rawSchema;
|
|
211
218
|
// This is a custom addition that fixes this issue:
|
|
212
219
|
// https://github.com/rjsf-team/react-jsonschema-form/issues/3832
|
|
213
220
|
const retrievedSchema = (experimental_defaultFormStateBehavior === null || experimental_defaultFormStateBehavior === void 0 ? void 0 : experimental_defaultFormStateBehavior.allOf) === 'populateDefaults' && ALL_OF_KEY in schema
|
|
214
|
-
? retrieveSchema(validator, schema, rootSchema, formData)
|
|
221
|
+
? retrieveSchema(validator, schema, rootSchema, formData, experimental_customMergeAllOf)
|
|
215
222
|
: schema;
|
|
223
|
+
const parentConst = retrievedSchema[CONST_KEY];
|
|
216
224
|
const objectDefaults = Object.keys(retrievedSchema.properties || {}).reduce((acc, key) => {
|
|
217
225
|
var _a;
|
|
226
|
+
const propertySchema = get(retrievedSchema, [PROPERTIES_KEY, key]);
|
|
227
|
+
// Check if the parent schema has a const property defined, then we should always return the computedDefault since it's coming from the const.
|
|
228
|
+
const hasParentConst = isObject(parentConst) && parentConst[key] !== undefined;
|
|
229
|
+
const hasConst = (isObject(propertySchema) && CONST_KEY in propertySchema) || hasParentConst;
|
|
218
230
|
// Compute the defaults for this node, with the parent defaults we might
|
|
219
231
|
// have from a previous run: defaults[key].
|
|
220
|
-
const computedDefault = computeDefaults(validator,
|
|
232
|
+
const computedDefault = computeDefaults(validator, propertySchema, {
|
|
221
233
|
rootSchema,
|
|
222
234
|
_recurseList,
|
|
223
235
|
experimental_defaultFormStateBehavior,
|
|
236
|
+
experimental_customMergeAllOf,
|
|
224
237
|
includeUndefinedValues: includeUndefinedValues === true,
|
|
225
238
|
parentDefaults: get(defaults, [key]),
|
|
226
239
|
rawFormData: get(formData, [key]),
|
|
227
240
|
required: (_a = retrievedSchema.required) === null || _a === void 0 ? void 0 : _a.includes(key),
|
|
228
241
|
});
|
|
229
|
-
maybeAddDefaultToObject(acc, key, computedDefault, includeUndefinedValues, required, retrievedSchema.required, experimental_defaultFormStateBehavior);
|
|
242
|
+
maybeAddDefaultToObject(acc, key, computedDefault, includeUndefinedValues, required, retrievedSchema.required, experimental_defaultFormStateBehavior, hasConst);
|
|
230
243
|
return acc;
|
|
231
244
|
}, {});
|
|
232
245
|
if (retrievedSchema.additionalProperties) {
|
|
@@ -313,13 +326,17 @@ export function getArrayDefaults(validator, rawSchema, { rawFormData, rootSchema
|
|
|
313
326
|
});
|
|
314
327
|
}
|
|
315
328
|
}
|
|
316
|
-
if
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
329
|
+
// Check if the schema has a const property defined, then we should always return the computedDefault since it's coming from the const.
|
|
330
|
+
const hasConst = isObject(schema) && CONST_KEY in schema;
|
|
331
|
+
if (hasConst === false) {
|
|
332
|
+
if (neverPopulate) {
|
|
333
|
+
return defaults !== null && defaults !== void 0 ? defaults : emptyDefault;
|
|
334
|
+
}
|
|
335
|
+
if (ignoreMinItemsFlagSet && !required) {
|
|
336
|
+
// If no form data exists or defaults are set leave the field empty/non-existent, otherwise
|
|
337
|
+
// return form data/defaults
|
|
338
|
+
return defaults ? defaults : undefined;
|
|
339
|
+
}
|
|
323
340
|
}
|
|
324
341
|
const defaultsLength = Array.isArray(defaults) ? defaults.length : 0;
|
|
325
342
|
if (!schema.minItems ||
|
|
@@ -372,29 +389,33 @@ export function getDefaultBasedOnSchemaType(validator, rawSchema, computeDefault
|
|
|
372
389
|
* If "excludeObjectChildren", cause undefined values for this object and pass `includeUndefinedValues` as
|
|
373
390
|
* false when computing defaults for any nested object properties.
|
|
374
391
|
* @param [experimental_defaultFormStateBehavior] Optional configuration object, if provided, allows users to override default form state behavior
|
|
392
|
+
* @param [experimental_customMergeAllOf] - Optional function that allows for custom merging of `allOf` schemas
|
|
375
393
|
* @returns - The resulting `formData` with all the defaults provided
|
|
376
394
|
*/
|
|
377
|
-
export default function getDefaultFormState(validator, theSchema, formData, rootSchema, includeUndefinedValues = false, experimental_defaultFormStateBehavior) {
|
|
395
|
+
export default function getDefaultFormState(validator, theSchema, formData, rootSchema, includeUndefinedValues = false, experimental_defaultFormStateBehavior, experimental_customMergeAllOf) {
|
|
378
396
|
if (!isObject(theSchema)) {
|
|
379
397
|
throw new Error('Invalid schema: ' + theSchema);
|
|
380
398
|
}
|
|
381
|
-
const schema = retrieveSchema(validator, theSchema, rootSchema, formData);
|
|
399
|
+
const schema = retrieveSchema(validator, theSchema, rootSchema, formData, experimental_customMergeAllOf);
|
|
382
400
|
const defaults = computeDefaults(validator, schema, {
|
|
383
401
|
rootSchema,
|
|
384
402
|
includeUndefinedValues,
|
|
385
403
|
experimental_defaultFormStateBehavior,
|
|
404
|
+
experimental_customMergeAllOf,
|
|
386
405
|
rawFormData: formData,
|
|
387
406
|
});
|
|
388
407
|
if (formData === undefined || formData === null || (typeof formData === 'number' && isNaN(formData))) {
|
|
389
408
|
// No form data? Use schema defaults.
|
|
390
409
|
return defaults;
|
|
391
410
|
}
|
|
392
|
-
const {
|
|
411
|
+
const { mergeDefaultsIntoFormData, arrayMinItems = {} } = experimental_defaultFormStateBehavior || {};
|
|
412
|
+
const { mergeExtraDefaults } = arrayMinItems;
|
|
413
|
+
const defaultSupercedesUndefined = mergeDefaultsIntoFormData === 'useDefaultIfFormDataUndefined';
|
|
393
414
|
if (isObject(formData)) {
|
|
394
|
-
return mergeDefaultsWithFormData(defaults, formData, mergeExtraDefaults);
|
|
415
|
+
return mergeDefaultsWithFormData(defaults, formData, mergeExtraDefaults, defaultSupercedesUndefined);
|
|
395
416
|
}
|
|
396
417
|
if (Array.isArray(formData)) {
|
|
397
|
-
return mergeDefaultsWithFormData(defaults, formData, mergeExtraDefaults);
|
|
418
|
+
return mergeDefaultsWithFormData(defaults, formData, mergeExtraDefaults, defaultSupercedesUndefined);
|
|
398
419
|
}
|
|
399
420
|
return formData;
|
|
400
421
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getDefaultFormState.js","sourceRoot":"","sources":["../../src/schema/getDefaultFormState.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"getDefaultFormState.js","sourceRoot":"","sources":["../../src/schema/getDefaultFormState.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { FormContextType, RJSFSchema, StrictRJSFSchema, ValidatorType } from '../types';
|
|
1
|
+
import { Experimental_CustomMergeAllOf, FormContextType, RJSFSchema, StrictRJSFSchema, ValidatorType } from '../types';
|
|
2
2
|
/** Retrieves an expanded schema that has had all of its conditions, additional properties, references and dependencies
|
|
3
3
|
* resolved and merged into the `schema` given a `validator`, `rootSchema` and `rawFormData` that is used to do the
|
|
4
4
|
* potentially recursive resolution.
|
|
@@ -7,9 +7,10 @@ import { FormContextType, RJSFSchema, StrictRJSFSchema, ValidatorType } from '..
|
|
|
7
7
|
* @param schema - The schema for which retrieving a schema is desired
|
|
8
8
|
* @param [rootSchema={}] - The root schema that will be forwarded to all the APIs
|
|
9
9
|
* @param [rawFormData] - The current formData, if any, to assist retrieving a schema
|
|
10
|
+
* @param [experimental_customMergeAllOf] - Optional function that allows for custom merging of `allOf` schemas
|
|
10
11
|
* @returns - The schema having its conditions, additional properties, references and dependencies resolved
|
|
11
12
|
*/
|
|
12
|
-
export default function retrieveSchema<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(validator: ValidatorType<T, S, F>, schema: S, rootSchema?: S, rawFormData?: T): S;
|
|
13
|
+
export default function retrieveSchema<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(validator: ValidatorType<T, S, F>, schema: S, rootSchema?: S, rawFormData?: T, experimental_customMergeAllOf?: Experimental_CustomMergeAllOf<S>): S;
|
|
13
14
|
/** Resolves a conditional block (if/else/then) by removing the condition and merging the appropriate conditional branch
|
|
14
15
|
* with the rest of the schema. If `expandAllBranches` is true, then the `retrieveSchemaInteral()` results for both
|
|
15
16
|
* conditions will be returned.
|
|
@@ -21,9 +22,10 @@ export default function retrieveSchema<T = any, S extends StrictRJSFSchema = RJS
|
|
|
21
22
|
* dependencies as a list of schemas
|
|
22
23
|
* @param recurseList - The list of recursive references already processed
|
|
23
24
|
* @param [formData] - The current formData to assist retrieving a schema
|
|
25
|
+
* @param [experimental_customMergeAllOf] - Optional function that allows for custom merging of `allOf` schemas
|
|
24
26
|
* @returns - A list of schemas with the appropriate conditions resolved, possibly with all branches expanded
|
|
25
27
|
*/
|
|
26
|
-
export declare function resolveCondition<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(validator: ValidatorType<T, S, F>, schema: S, rootSchema: S, expandAllBranches: boolean, recurseList: string[], formData?: T): S[];
|
|
28
|
+
export declare function resolveCondition<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(validator: ValidatorType<T, S, F>, schema: S, rootSchema: S, expandAllBranches: boolean, recurseList: string[], formData?: T, experimental_customMergeAllOf?: Experimental_CustomMergeAllOf<S>): S[];
|
|
27
29
|
/** Given a list of lists of allOf, anyOf or oneOf values, create a list of lists of all permutations of the values. The
|
|
28
30
|
* `listOfLists` is expected to be all resolved values of the 1st...nth schemas within an `allOf`, `anyOf` or `oneOf`.
|
|
29
31
|
* From those lists, build a matrix for each `xxxOf` where there is more than one schema for a row in the list of lists.
|
|
@@ -50,9 +52,10 @@ export declare function getAllPermutationsOfXxxOf<S extends StrictRJSFSchema = R
|
|
|
50
52
|
* as a list of schemas
|
|
51
53
|
* @param recurseList - The list of recursive references already processed
|
|
52
54
|
* @param [formData] - The current formData, if any, to assist retrieving a schema
|
|
55
|
+
* @param [experimental_customMergeAllOf] - Optional function that allows for custom merging of `allOf` schemas
|
|
53
56
|
* @returns - The list of schemas having its references, dependencies and allOf schemas resolved
|
|
54
57
|
*/
|
|
55
|
-
export declare function resolveSchema<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(validator: ValidatorType<T, S, F>, schema: S, rootSchema: S, expandAllBranches: boolean, recurseList: string[], formData?: T): S[];
|
|
58
|
+
export declare function resolveSchema<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(validator: ValidatorType<T, S, F>, schema: S, rootSchema: S, expandAllBranches: boolean, recurseList: string[], formData?: T, experimental_customMergeAllOf?: Experimental_CustomMergeAllOf<S>): S[];
|
|
56
59
|
/** Resolves all references within a schema and then returns the `retrieveSchemaInternal()` if the resolved schema is
|
|
57
60
|
* actually different than the original. Passes the `expandAllBranches` flag down to the `retrieveSchemaInternal()`
|
|
58
61
|
* helper call.
|
|
@@ -64,9 +67,10 @@ export declare function resolveSchema<T = any, S extends StrictRJSFSchema = RJSF
|
|
|
64
67
|
* as a list of schemas
|
|
65
68
|
* @param recurseList - The list of recursive references already processed
|
|
66
69
|
* @param [formData] - The current formData, if any, to assist retrieving a schema
|
|
70
|
+
* @param [experimental_customMergeAllOf] - Optional function that allows for custom merging of `allOf` schemas
|
|
67
71
|
* @returns - The list schemas retrieved after having all references resolved
|
|
68
72
|
*/
|
|
69
|
-
export declare function resolveReference<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(validator: ValidatorType<T, S, F>, schema: S, rootSchema: S, expandAllBranches: boolean, recurseList: string[], formData?: T): S[];
|
|
73
|
+
export declare function resolveReference<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(validator: ValidatorType<T, S, F>, schema: S, rootSchema: S, expandAllBranches: boolean, recurseList: string[], formData?: T, experimental_customMergeAllOf?: Experimental_CustomMergeAllOf<S>): S[];
|
|
70
74
|
/** Resolves all references within the schema itself as well as any of its properties and array items.
|
|
71
75
|
*
|
|
72
76
|
* @param schema - The schema for which resolving all references is desired
|
|
@@ -96,10 +100,11 @@ export declare function stubExistingAdditionalProperties<T = any, S extends Stri
|
|
|
96
100
|
* @param [expandAllBranches=false] - Flag, if true, will return all possible branches of conditions, any/oneOf and
|
|
97
101
|
* dependencies as a list of schemas
|
|
98
102
|
* @param [recurseList=[]] - The optional, list of recursive references already processed
|
|
103
|
+
* @param [experimental_customMergeAllOf] - Optional function that allows for custom merging of `allOf` schemas
|
|
99
104
|
* @returns - The schema(s) resulting from having its conditions, additional properties, references and dependencies
|
|
100
105
|
* resolved. Multiple schemas may be returned if `expandAllBranches` is true.
|
|
101
106
|
*/
|
|
102
|
-
export declare function retrieveSchemaInternal<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(validator: ValidatorType<T, S, F>, schema: S, rootSchema: S, rawFormData?: T, expandAllBranches?: boolean, recurseList?: string[]): S[];
|
|
107
|
+
export declare function retrieveSchemaInternal<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(validator: ValidatorType<T, S, F>, schema: S, rootSchema: S, rawFormData?: T, expandAllBranches?: boolean, recurseList?: string[], experimental_customMergeAllOf?: Experimental_CustomMergeAllOf<S>): S[];
|
|
103
108
|
/** Resolves an `anyOf` or `oneOf` within a schema (if present) to the list of schemas returned from
|
|
104
109
|
* `retrieveSchemaInternal()` for the best matching option. If `expandAllBranches` is true, then a list of schemas for ALL
|
|
105
110
|
* options are retrieved and returned.
|
|
@@ -123,9 +128,10 @@ export declare function resolveAnyOrOneOfSchemas<T = any, S extends StrictRJSFSc
|
|
|
123
128
|
* as a list of schemas
|
|
124
129
|
* @param recurseList - The list of recursive references already processed
|
|
125
130
|
* @param [formData] - The current formData, if any, to assist retrieving a schema
|
|
131
|
+
* @param [experimental_customMergeAllOf] - Optional function that allows for custom merging of `allOf` schemas
|
|
126
132
|
* @returns - The list of schemas with their dependencies resolved
|
|
127
133
|
*/
|
|
128
|
-
export declare function resolveDependencies<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(validator: ValidatorType<T, S, F>, schema: S, rootSchema: S, expandAllBranches: boolean, recurseList: string[], formData?: T): S[];
|
|
134
|
+
export declare function resolveDependencies<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(validator: ValidatorType<T, S, F>, schema: S, rootSchema: S, expandAllBranches: boolean, recurseList: string[], formData?: T, experimental_customMergeAllOf?: Experimental_CustomMergeAllOf<S>): S[];
|
|
129
135
|
/** Processes all the `dependencies` recursively into the list of `resolvedSchema`s as needed. Passes the
|
|
130
136
|
* `expandAllBranches` flag down to the `withDependentSchema()` and the recursive `processDependencies()` helper calls.
|
|
131
137
|
*
|
|
@@ -137,9 +143,10 @@ export declare function resolveDependencies<T = any, S extends StrictRJSFSchema
|
|
|
137
143
|
* as a list of schemas
|
|
138
144
|
* @param recurseList - The list of recursive references already processed
|
|
139
145
|
* @param [formData] - The current formData, if any, to assist retrieving a schema
|
|
146
|
+
* @param [experimental_customMergeAllOf] - Optional function that allows for custom merging of `allOf` schemas
|
|
140
147
|
* @returns - The schema with the `dependencies` resolved into it
|
|
141
148
|
*/
|
|
142
|
-
export declare function processDependencies<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(validator: ValidatorType<T, S, F>, dependencies: S['dependencies'], resolvedSchema: S, rootSchema: S, expandAllBranches: boolean, recurseList: string[], formData?: T): S[];
|
|
149
|
+
export declare function processDependencies<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(validator: ValidatorType<T, S, F>, dependencies: S['dependencies'], resolvedSchema: S, rootSchema: S, expandAllBranches: boolean, recurseList: string[], formData?: T, experimental_customMergeAllOf?: Experimental_CustomMergeAllOf<S>): S[];
|
|
143
150
|
/** Updates a schema with additionally required properties added
|
|
144
151
|
*
|
|
145
152
|
* @param schema - The schema for which resolving a dependent properties is desired
|
|
@@ -159,9 +166,10 @@ export declare function withDependentProperties<S extends StrictRJSFSchema = RJS
|
|
|
159
166
|
* as a list of schemas
|
|
160
167
|
* @param recurseList - The list of recursive references already processed
|
|
161
168
|
* @param [formData]- The current formData to assist retrieving a schema
|
|
169
|
+
* @param [experimental_customMergeAllOf] - Optional function that allows for custom merging of `allOf` schemas
|
|
162
170
|
* @returns - The list of schemas with the dependent schema resolved into them
|
|
163
171
|
*/
|
|
164
|
-
export declare function withDependentSchema<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(validator: ValidatorType<T, S, F>, schema: S, rootSchema: S, dependencyKey: string, dependencyValue: S, expandAllBranches: boolean, recurseList: string[], formData?: T): S[];
|
|
172
|
+
export declare function withDependentSchema<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(validator: ValidatorType<T, S, F>, schema: S, rootSchema: S, dependencyKey: string, dependencyValue: S, expandAllBranches: boolean, recurseList: string[], formData?: T, experimental_customMergeAllOf?: Experimental_CustomMergeAllOf<S>): S[];
|
|
165
173
|
/** Returns a list of `schema`s with the best choice from the `oneOf` options merged into it. If `expandAllBranches` is
|
|
166
174
|
* true, then a list of schemas for ALL options are retrieved and returned. Passes the `expandAllBranches` flag down to
|
|
167
175
|
* the `retrieveSchemaInternal()` helper call.
|
|
@@ -175,6 +183,7 @@ export declare function withDependentSchema<T = any, S extends StrictRJSFSchema
|
|
|
175
183
|
* as a list of schemas
|
|
176
184
|
* @param recurseList - The list of recursive references already processed
|
|
177
185
|
* @param [formData] - The current formData to assist retrieving a schema
|
|
186
|
+
* @param [experimental_customMergeAllOf] - Optional function that allows for custom merging of `allOf` schemas
|
|
178
187
|
* @returns - Either an array containing the best matching option or all options if `expandAllBranches` is true
|
|
179
188
|
*/
|
|
180
|
-
export declare function withExactlyOneSubschema<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(validator: ValidatorType<T, S, F>, schema: S, rootSchema: S, dependencyKey: string, oneOf: S['oneOf'], expandAllBranches: boolean, recurseList: string[], formData?: T): S[];
|
|
189
|
+
export declare function withExactlyOneSubschema<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(validator: ValidatorType<T, S, F>, schema: S, rootSchema: S, dependencyKey: string, oneOf: S['oneOf'], expandAllBranches: boolean, recurseList: string[], formData?: T, experimental_customMergeAllOf?: Experimental_CustomMergeAllOf<S>): S[];
|