@rjsf/utils 5.24.10 → 6.0.0-beta.1
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 +605 -330
- package/dist/index.js.map +4 -4
- package/dist/utils.esm.js +575 -300
- package/dist/utils.esm.js.map +4 -4
- package/dist/utils.umd.js +519 -268
- package/lib/ErrorSchemaBuilder.d.ts +7 -3
- package/lib/ErrorSchemaBuilder.js +1 -0
- package/lib/ErrorSchemaBuilder.js.map +1 -1
- package/lib/allowAdditionalItems.js.map +1 -1
- package/lib/asNumber.js.map +1 -1
- package/lib/canExpand.js +1 -1
- package/lib/canExpand.js.map +1 -1
- package/lib/constants.d.ts +11 -3
- package/lib/constants.js +11 -3
- package/lib/constants.js.map +1 -1
- package/lib/createErrorHandler.js.map +1 -1
- package/lib/createSchemaUtils.js +31 -27
- package/lib/createSchemaUtils.js.map +1 -1
- package/lib/dataURItoBlob.js.map +1 -1
- package/lib/dateRangeOptions.js.map +1 -1
- package/lib/deepEquals.js.map +1 -1
- package/lib/enumOptionsDeselectValue.js.map +1 -1
- package/lib/enumOptionsIndexForValue.js.map +1 -1
- package/lib/enumOptionsIsSelected.js.map +1 -1
- package/lib/enumOptionsSelectValue.js.map +1 -1
- package/lib/enumOptionsValueForIndex.js.map +1 -1
- package/lib/enums.d.ts +2 -0
- package/lib/enums.js +2 -0
- package/lib/enums.js.map +1 -1
- package/lib/findSchemaDefinition.js.map +1 -1
- package/lib/getChangedFields.js.map +1 -1
- package/lib/getDateElementProps.js.map +1 -1
- package/lib/getDiscriminatorFieldFromSchema.js +2 -1
- package/lib/getDiscriminatorFieldFromSchema.js.map +1 -1
- package/lib/getInputProps.js.map +1 -1
- package/lib/getOptionMatchingSimpleDiscriminator.js.map +1 -1
- package/lib/getSchemaType.d.ts +1 -0
- package/lib/getSchemaType.js +2 -1
- package/lib/getSchemaType.js.map +1 -1
- package/lib/getSubmitButtonOptions.js.map +1 -1
- package/lib/getTemplate.js +9 -0
- package/lib/getTemplate.js.map +1 -1
- package/lib/getTestIds.d.ts +17 -0
- package/lib/getTestIds.js +34 -0
- package/lib/getTestIds.js.map +1 -0
- package/lib/getUiOptions.js.map +1 -1
- package/lib/getWidget.js.map +1 -1
- package/lib/guessType.d.ts +1 -1
- package/lib/guessType.js.map +1 -1
- package/lib/hasWidget.js.map +1 -1
- package/lib/hashForSchema.d.ts +22 -0
- package/lib/hashForSchema.js +24 -6
- package/lib/hashForSchema.js.map +1 -1
- package/lib/idGenerators.d.ts +7 -0
- package/lib/idGenerators.js +9 -0
- package/lib/idGenerators.js.map +1 -1
- package/lib/index.d.ts +5 -3
- package/lib/index.js +5 -3
- package/lib/index.js.map +1 -1
- package/lib/isObject.d.ts +1 -1
- package/lib/isObject.js.map +1 -1
- package/lib/lookupFromFormContext.d.ts +11 -0
- package/lib/lookupFromFormContext.js +20 -0
- package/lib/lookupFromFormContext.js.map +1 -0
- package/lib/mergeDefaultsWithFormData.js.map +1 -1
- package/lib/mergeObjects.js.map +1 -1
- package/lib/mergeSchemas.js.map +1 -1
- package/lib/optionsList.d.ts +8 -6
- package/lib/optionsList.js +29 -18
- package/lib/optionsList.js.map +1 -1
- package/lib/orderProperties.js.map +1 -1
- package/lib/pad.js.map +1 -1
- package/lib/parseDateString.js +1 -1
- package/lib/parseDateString.js.map +1 -1
- package/lib/parser/ParserValidator.js.map +1 -1
- package/lib/parser/schemaParser.js.map +1 -1
- package/lib/rangeSpec.js.map +1 -1
- package/lib/replaceStringParameters.js.map +1 -1
- package/lib/schema/findFieldInSchema.d.ts +19 -0
- package/lib/schema/findFieldInSchema.js +61 -0
- package/lib/schema/findFieldInSchema.js.map +1 -0
- package/lib/schema/findSelectedOptionInXxxOf.d.ts +16 -0
- package/lib/schema/findSelectedOptionInXxxOf.js +34 -0
- package/lib/schema/findSelectedOptionInXxxOf.js.map +1 -0
- package/lib/schema/getClosestMatchingOption.js.map +1 -1
- package/lib/schema/getDefaultFormState.js +2 -3
- package/lib/schema/getDefaultFormState.js.map +1 -1
- package/lib/schema/getDisplayLabel.js.map +1 -1
- package/lib/schema/getFirstMatchingOption.js +70 -2
- package/lib/schema/getFirstMatchingOption.js.map +1 -1
- package/lib/schema/getFromSchema.d.ts +14 -0
- package/lib/schema/getFromSchema.js +39 -0
- package/lib/schema/getFromSchema.js.map +1 -0
- package/lib/schema/index.d.ts +4 -3
- package/lib/schema/index.js +4 -3
- package/lib/schema/index.js.map +1 -1
- package/lib/schema/isFilesArray.js.map +1 -1
- package/lib/schema/isMultiSelect.js.map +1 -1
- package/lib/schema/isSelect.js.map +1 -1
- package/lib/schema/retrieveSchema.d.ts +7 -0
- package/lib/schema/retrieveSchema.js +65 -21
- package/lib/schema/retrieveSchema.js.map +1 -1
- package/lib/schema/sanitizeDataForNewSchema.js.map +1 -1
- package/lib/schema/toIdSchema.js +20 -19
- package/lib/schema/toIdSchema.js.map +1 -1
- package/lib/schema/toPathSchema.js +1 -1
- package/lib/schema/toPathSchema.js.map +1 -1
- package/lib/schemaRequiresTrueValue.js.map +1 -1
- package/lib/toConstant.js.map +1 -1
- package/lib/toErrorList.js.map +1 -1
- package/lib/toErrorSchema.js.map +1 -1
- package/lib/tsconfig.tsbuildinfo +1 -1
- package/lib/types.d.ts +127 -128
- package/lib/unwrapErrorHandler.js.map +1 -1
- package/lib/utcToLocal.js.map +1 -1
- package/lib/validationDataMerge.js.map +1 -1
- package/lib/withIdRefPrefix.js.map +1 -1
- package/package.json +35 -25
- package/src/ErrorSchemaBuilder.ts +10 -4
- package/src/canExpand.ts +2 -2
- package/src/constants.ts +12 -3
- package/src/createSchemaUtils.ts +79 -43
- package/src/dataURItoBlob.ts +1 -1
- package/src/dateRangeOptions.ts +1 -1
- package/src/enumOptionsDeselectValue.ts +1 -1
- package/src/enumOptionsIndexForValue.ts +1 -1
- package/src/enumOptionsIsSelected.ts +1 -1
- package/src/enumOptionsSelectValue.ts +1 -1
- package/src/enumOptionsValueForIndex.ts +1 -1
- package/src/enums.ts +2 -0
- package/src/findSchemaDefinition.ts +2 -2
- package/src/getDateElementProps.ts +2 -2
- package/src/getDiscriminatorFieldFromSchema.ts +2 -1
- package/src/getInputProps.ts +2 -2
- package/src/getOptionMatchingSimpleDiscriminator.ts +2 -2
- package/src/getSchemaType.ts +3 -2
- package/src/getSubmitButtonOptions.ts +1 -1
- package/src/getTemplate.ts +12 -1
- package/src/getTestIds.ts +40 -0
- package/src/getUiOptions.ts +2 -2
- package/src/getWidget.tsx +2 -2
- package/src/hasWidget.ts +1 -1
- package/src/hashForSchema.ts +26 -6
- package/src/idGenerators.ts +10 -0
- package/src/index.ts +19 -2
- package/src/isCustomWidget.ts +1 -1
- package/src/isObject.ts +1 -1
- package/src/labelValue.ts +2 -2
- package/src/lookupFromFormContext.ts +26 -0
- package/src/mergeDefaultsWithFormData.ts +3 -3
- package/src/mergeObjects.ts +24 -21
- package/src/optionsList.ts +31 -22
- package/src/parser/ParserValidator.ts +2 -2
- package/src/parser/schemaParser.ts +2 -2
- package/src/schema/findFieldInSchema.ts +138 -0
- package/src/schema/findSelectedOptionInXxxOf.ts +53 -0
- package/src/schema/getClosestMatchingOption.ts +8 -8
- package/src/schema/getDefaultFormState.ts +26 -25
- package/src/schema/getDisplayLabel.ts +2 -2
- package/src/schema/getFirstMatchingOption.ts +79 -4
- package/src/schema/getFromSchema.ts +100 -0
- package/src/schema/index.ts +6 -4
- package/src/schema/isFilesArray.ts +2 -2
- package/src/schema/isMultiSelect.ts +2 -2
- package/src/schema/isSelect.ts +1 -1
- package/src/schema/retrieveSchema.ts +135 -69
- package/src/schema/sanitizeDataForNewSchema.ts +10 -10
- package/src/schema/toIdSchema.ts +45 -44
- package/src/schema/toPathSchema.ts +10 -10
- package/src/toErrorList.ts +2 -2
- package/src/types.ts +233 -173
- package/src/validationDataMerge.ts +1 -1
- package/src/withIdRefPrefix.ts +1 -1
- package/LICENSE.md +0 -201
- package/lib/schema/getMatchingOption.d.ts +0 -14
- package/lib/schema/getMatchingOption.js +0 -85
- package/lib/schema/getMatchingOption.js.map +0 -1
- package/lib/schema/mergeValidationData.d.ts +0 -14
- package/lib/schema/mergeValidationData.js +0 -28
- package/lib/schema/mergeValidationData.js.map +0 -1
- package/src/schema/getMatchingOption.ts +0 -103
- package/src/schema/mergeValidationData.ts +0 -38
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"findFieldInSchema.js","sourceRoot":"","sources":["../../src/schema/findFieldInSchema.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { Experimental_CustomMergeAllOf, FormContextType, RJSFSchema, StrictRJSFSchema, ValidatorType } from '../types.js';
|
|
2
|
+
/** Finds the option inside the `schema['any/oneOf']` list which has the `properties[selectorField].default` or
|
|
3
|
+
* `properties[selectorField].const` that matches the `formData[selectorField]` value. For the purposes of this
|
|
4
|
+
* function, `selectorField` is either `schema.discriminator.propertyName` or `fallbackField`. The `LayoutGridField`
|
|
5
|
+
* works directly with schemas in a recursive manner, making this faster than `getFirstMatchingOption()`.
|
|
6
|
+
*
|
|
7
|
+
* @param validator - An implementation of the `ValidatorType` interface that will be forwarded to all the APIs
|
|
8
|
+
* @param rootSchema - The root schema that will be forwarded to all the APIs
|
|
9
|
+
* @param schema - The schema element in which to search for the selected anyOf/oneOf option
|
|
10
|
+
* @param fallbackField - The field to use as a backup selector field if the schema does not have a required field
|
|
11
|
+
* @param xxx - Either `anyOf` or `oneOf`, defines which value is being sought
|
|
12
|
+
* @param [formData={}] - The form data that is used to determine which anyOf/oneOf option to descend
|
|
13
|
+
* @param [experimental_customMergeAllOf] - Optional function that allows for custom merging of `allOf` schemas
|
|
14
|
+
* @returns - The anyOf/oneOf option that matches the selector field in the schema or undefined if nothing is selected
|
|
15
|
+
*/
|
|
16
|
+
export default function findSelectedOptionInXxxOf<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(validator: ValidatorType<T, S, F>, rootSchema: S, schema: S, fallbackField: string, xxx: 'anyOf' | 'oneOf', formData?: T, experimental_customMergeAllOf?: Experimental_CustomMergeAllOf<S>): S | undefined;
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import get from 'lodash-es/get.js';
|
|
2
|
+
import isEqual from 'lodash-es/isEqual.js';
|
|
3
|
+
import { CONST_KEY, DEFAULT_KEY, PROPERTIES_KEY } from '../constants.js';
|
|
4
|
+
import retrieveSchema from './retrieveSchema.js';
|
|
5
|
+
import getDiscriminatorFieldFromSchema from '../getDiscriminatorFieldFromSchema.js';
|
|
6
|
+
/** Finds the option inside the `schema['any/oneOf']` list which has the `properties[selectorField].default` or
|
|
7
|
+
* `properties[selectorField].const` that matches the `formData[selectorField]` value. For the purposes of this
|
|
8
|
+
* function, `selectorField` is either `schema.discriminator.propertyName` or `fallbackField`. The `LayoutGridField`
|
|
9
|
+
* works directly with schemas in a recursive manner, making this faster than `getFirstMatchingOption()`.
|
|
10
|
+
*
|
|
11
|
+
* @param validator - An implementation of the `ValidatorType` interface that will be forwarded to all the APIs
|
|
12
|
+
* @param rootSchema - The root schema that will be forwarded to all the APIs
|
|
13
|
+
* @param schema - The schema element in which to search for the selected anyOf/oneOf option
|
|
14
|
+
* @param fallbackField - The field to use as a backup selector field if the schema does not have a required field
|
|
15
|
+
* @param xxx - Either `anyOf` or `oneOf`, defines which value is being sought
|
|
16
|
+
* @param [formData={}] - The form data that is used to determine which anyOf/oneOf option to descend
|
|
17
|
+
* @param [experimental_customMergeAllOf] - Optional function that allows for custom merging of `allOf` schemas
|
|
18
|
+
* @returns - The anyOf/oneOf option that matches the selector field in the schema or undefined if nothing is selected
|
|
19
|
+
*/
|
|
20
|
+
export default function findSelectedOptionInXxxOf(validator, rootSchema, schema, fallbackField, xxx, formData = {}, experimental_customMergeAllOf) {
|
|
21
|
+
if (Array.isArray(schema[xxx])) {
|
|
22
|
+
const discriminator = getDiscriminatorFieldFromSchema(schema);
|
|
23
|
+
const selectorField = discriminator || fallbackField;
|
|
24
|
+
const xxxOfs = schema[xxx].map((xxxOf) => retrieveSchema(validator, xxxOf, rootSchema, formData, experimental_customMergeAllOf));
|
|
25
|
+
const data = get(formData, selectorField);
|
|
26
|
+
if (data !== undefined) {
|
|
27
|
+
return xxxOfs.find((xxx) => {
|
|
28
|
+
return isEqual(get(xxx, [PROPERTIES_KEY, selectorField, DEFAULT_KEY], get(xxx, [PROPERTIES_KEY, selectorField, CONST_KEY])), data);
|
|
29
|
+
});
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
return undefined;
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=findSelectedOptionInXxxOf.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"findSelectedOptionInXxxOf.js","sourceRoot":"","sources":["../../src/schema/findSelectedOptionInXxxOf.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,YAAY,CAAC;AAC7B,OAAO,OAAO,MAAM,gBAAgB,CAAC;AAErC,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAEtE,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAC9C,OAAO,+BAA+B,MAAM,oCAAoC,CAAC;AAEjF;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,OAAO,UAAU,yBAAyB,CAK/C,SAAiC,EACjC,UAAa,EACb,MAAS,EACT,aAAqB,EACrB,GAAsB,EACtB,WAAc,EAAO,EACrB,6BAAgE;IAEhE,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;QAC/B,MAAM,aAAa,GAAG,+BAA+B,CAAI,MAAM,CAAC,CAAC;QACjE,MAAM,aAAa,GAAG,aAAa,IAAI,aAAa,CAAC;QACrD,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAE,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CACxC,cAAc,CAAU,SAAS,EAAE,KAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,6BAA6B,CAAC,CACpG,CAAC;QACF,MAAM,IAAI,GAAG,GAAG,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;QAC1C,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACvB,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE;gBACzB,OAAO,OAAO,CACZ,GAAG,CAAC,GAAG,EAAE,CAAC,cAAc,EAAE,aAAa,EAAE,WAAW,CAAC,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,cAAc,EAAE,aAAa,EAAE,SAAS,CAAC,CAAC,CAAC,EAC5G,IAAI,CACL,CAAC;YACJ,CAAC,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC"}
|
|
@@ -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;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,UAAU,mBAAmB,CACjC,SAAiC,EACjC,UAAa,EACb,MAAU,EACV,QAAc,EACd,6BAAgE;IAEhE,IAAI,UAAU,GAAG,CAAC,CAAC;IACnB,IAAI,MAAM,EAAE;
|
|
1
|
+
{"version":3,"file":"getClosestMatchingOption.js","sourceRoot":"","sources":["../../src/schema/getClosestMatchingOption.ts"],"names":[],"mappings":"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"}
|
|
@@ -285,7 +285,7 @@ export function getObjectDefaults(validator, rawSchema, { rawFormData, rootSchem
|
|
|
285
285
|
const parentConst = retrievedSchema[CONST_KEY];
|
|
286
286
|
const objectDefaults = Object.keys(retrievedSchema.properties || {}).reduce((acc, key) => {
|
|
287
287
|
var _a;
|
|
288
|
-
const propertySchema = get(retrievedSchema, [PROPERTIES_KEY, key]);
|
|
288
|
+
const propertySchema = get(retrievedSchema, [PROPERTIES_KEY, key], {});
|
|
289
289
|
// Check if the parent schema has a const property defined AND we are supporting const as defaults, then we
|
|
290
290
|
// should always return the computedDefault since it's coming from the const.
|
|
291
291
|
const hasParentConst = isObject(parentConst) && parentConst[key] !== undefined;
|
|
@@ -496,8 +496,7 @@ export default function getDefaultFormState(validator, theSchema, formData, root
|
|
|
496
496
|
const { mergeDefaultsIntoFormData } = experimental_defaultFormStateBehavior || {};
|
|
497
497
|
const defaultSupercedesUndefined = mergeDefaultsIntoFormData === 'useDefaultIfFormDataUndefined';
|
|
498
498
|
const result = mergeDefaultsWithFormData(defaults, formData, true, // set to true to add any additional default array entries.
|
|
499
|
-
defaultSupercedesUndefined, true
|
|
500
|
-
);
|
|
499
|
+
defaultSupercedesUndefined, true);
|
|
501
500
|
return result;
|
|
502
501
|
}
|
|
503
502
|
return defaults;
|
|
@@ -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 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getDisplayLabel.js","sourceRoot":"","sources":["../../src/schema/getDisplayLabel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC3D,OAAO,aAAa,MAAM,kBAAkB,CAAC;AAC7C,OAAO,YAAY,MAAM,iBAAiB,CAAC;AAC3C,OAAO,cAAc,MAAM,mBAAmB,CAAC;AAU/C,OAAO,YAAY,MAAM,gBAAgB,CAAC;AAC1C,OAAO,aAAa,MAAM,iBAAiB,CAAC;AAE5C;;;;;;;;;;GAUG;AACH,MAAM,CAAC,OAAO,UAAU,eAAe,CAKrC,SAAiC,EACjC,MAAS,EACT,WAA8B,EAAE,EAChC,UAAc,EACd,aAAqC,EACrC,6BAAgE;IAEhE,MAAM,SAAS,GAAG,YAAY,CAAU,QAAQ,EAAE,aAAa,CAAC,CAAC;IACjE,MAAM,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,SAAS,CAAC;IACnC,IAAI,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC;IAC3B,MAAM,UAAU,GAAG,aAAa,CAAI,MAAM,CAAC,CAAC;IAE5C,IAAI,UAAU,KAAK,OAAO,EAAE;
|
|
1
|
+
{"version":3,"file":"getDisplayLabel.js","sourceRoot":"","sources":["../../src/schema/getDisplayLabel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC3D,OAAO,aAAa,MAAM,kBAAkB,CAAC;AAC7C,OAAO,YAAY,MAAM,iBAAiB,CAAC;AAC3C,OAAO,cAAc,MAAM,mBAAmB,CAAC;AAU/C,OAAO,YAAY,MAAM,gBAAgB,CAAC;AAC1C,OAAO,aAAa,MAAM,iBAAiB,CAAC;AAE5C;;;;;;;;;;GAUG;AACH,MAAM,CAAC,OAAO,UAAU,eAAe,CAKrC,SAAiC,EACjC,MAAS,EACT,WAA8B,EAAE,EAChC,UAAc,EACd,aAAqC,EACrC,6BAAgE;IAEhE,MAAM,SAAS,GAAG,YAAY,CAAU,QAAQ,EAAE,aAAa,CAAC,CAAC;IACjE,MAAM,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,SAAS,CAAC;IACnC,IAAI,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC;IAC3B,MAAM,UAAU,GAAG,aAAa,CAAI,MAAM,CAAC,CAAC;IAE5C,IAAI,UAAU,KAAK,OAAO,EAAE,CAAC;QAC3B,YAAY;YACV,aAAa,CAAU,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,6BAA6B,CAAC;gBACpF,YAAY,CAAU,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,6BAA6B,CAAC;gBAC7F,cAAc,CAAC,QAAQ,CAAC,CAAC;IAC7B,CAAC;IAED,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;QAC5B,YAAY,GAAG,KAAK,CAAC;IACvB,CAAC;IACD,IAAI,UAAU,KAAK,SAAS,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;QACzD,YAAY,GAAG,KAAK,CAAC;IACvB,CAAC;IACD,IAAI,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;QAC3B,YAAY,GAAG,KAAK,CAAC;IACvB,CAAC;IACD,OAAO,YAAY,CAAC;AACtB,CAAC"}
|
|
@@ -1,4 +1,8 @@
|
|
|
1
|
-
import
|
|
1
|
+
import get from 'lodash-es/get.js';
|
|
2
|
+
import has from 'lodash-es/has.js';
|
|
3
|
+
import isNumber from 'lodash-es/isNumber.js';
|
|
4
|
+
import { PROPERTIES_KEY } from '../constants.js';
|
|
5
|
+
import getOptionMatchingSimpleDiscriminator from '../getOptionMatchingSimpleDiscriminator.js';
|
|
2
6
|
/** Given the `formData` and list of `options`, attempts to find the index of the first option that matches the data.
|
|
3
7
|
* Always returns the first option if there is nothing that matches.
|
|
4
8
|
*
|
|
@@ -11,6 +15,70 @@ import getMatchingOption from './getMatchingOption.js';
|
|
|
11
15
|
* @returns - The index of the first matched option or 0 if none is available
|
|
12
16
|
*/
|
|
13
17
|
export default function getFirstMatchingOption(validator, formData, options, rootSchema, discriminatorField) {
|
|
14
|
-
|
|
18
|
+
// For performance, skip validating subschemas if formData is undefined. We just
|
|
19
|
+
// want to get the first option in that case.
|
|
20
|
+
if (formData === undefined) {
|
|
21
|
+
return 0;
|
|
22
|
+
}
|
|
23
|
+
const simpleDiscriminatorMatch = getOptionMatchingSimpleDiscriminator(formData, options, discriminatorField);
|
|
24
|
+
if (isNumber(simpleDiscriminatorMatch)) {
|
|
25
|
+
return simpleDiscriminatorMatch;
|
|
26
|
+
}
|
|
27
|
+
for (let i = 0; i < options.length; i++) {
|
|
28
|
+
const option = options[i];
|
|
29
|
+
// If we have a discriminator field, then we will use this to make the determination
|
|
30
|
+
if (discriminatorField && has(option, [PROPERTIES_KEY, discriminatorField])) {
|
|
31
|
+
const value = get(formData, discriminatorField);
|
|
32
|
+
const discriminator = get(option, [PROPERTIES_KEY, discriminatorField], {});
|
|
33
|
+
if (validator.isValid(discriminator, value, rootSchema)) {
|
|
34
|
+
return i;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
else if (option[PROPERTIES_KEY]) {
|
|
38
|
+
// If the schema describes an object then we need to add slightly more
|
|
39
|
+
// strict matching to the schema, because unless the schema uses the
|
|
40
|
+
// "requires" keyword, an object will match the schema as long as it
|
|
41
|
+
// doesn't have matching keys with a conflicting type. To do this we use an
|
|
42
|
+
// "anyOf" with an array of requires. This augmentation expresses that the
|
|
43
|
+
// schema should match if any of the keys in the schema are present on the
|
|
44
|
+
// object and pass validation.
|
|
45
|
+
//
|
|
46
|
+
// Create an "anyOf" schema that requires at least one of the keys in the
|
|
47
|
+
// "properties" object
|
|
48
|
+
const requiresAnyOf = {
|
|
49
|
+
anyOf: Object.keys(option[PROPERTIES_KEY]).map((key) => ({
|
|
50
|
+
required: [key],
|
|
51
|
+
})),
|
|
52
|
+
};
|
|
53
|
+
let augmentedSchema;
|
|
54
|
+
// If the "anyOf" keyword already exists, wrap the augmentation in an "allOf"
|
|
55
|
+
if (option.anyOf) {
|
|
56
|
+
// Create a shallow clone of the option
|
|
57
|
+
const { ...shallowClone } = option;
|
|
58
|
+
if (!shallowClone.allOf) {
|
|
59
|
+
shallowClone.allOf = [];
|
|
60
|
+
}
|
|
61
|
+
else {
|
|
62
|
+
// If "allOf" already exists, shallow clone the array
|
|
63
|
+
shallowClone.allOf = shallowClone.allOf.slice();
|
|
64
|
+
}
|
|
65
|
+
shallowClone.allOf.push(requiresAnyOf);
|
|
66
|
+
augmentedSchema = shallowClone;
|
|
67
|
+
}
|
|
68
|
+
else {
|
|
69
|
+
augmentedSchema = Object.assign({}, option, requiresAnyOf);
|
|
70
|
+
}
|
|
71
|
+
// Remove the "required" field as it's likely that not all fields have
|
|
72
|
+
// been filled in yet, which will mean that the schema is not valid
|
|
73
|
+
delete augmentedSchema.required;
|
|
74
|
+
if (validator.isValid(augmentedSchema, formData, rootSchema)) {
|
|
75
|
+
return i;
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
else if (validator.isValid(option, formData, rootSchema)) {
|
|
79
|
+
return i;
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
return 0;
|
|
15
83
|
}
|
|
16
84
|
//# sourceMappingURL=getFirstMatchingOption.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getFirstMatchingOption.js","sourceRoot":"","sources":["../../src/schema/getFirstMatchingOption.ts"],"names":[],"mappings":"AAAA,OAAO,iBAAiB,MAAM,
|
|
1
|
+
{"version":3,"file":"getFirstMatchingOption.js","sourceRoot":"","sources":["../../src/schema/getFirstMatchingOption.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { Experimental_CustomMergeAllOf, FormContextType, RJSFSchema, StrictRJSFSchema, ValidatorType } from '../types.js';
|
|
2
|
+
/** Helper that acts like lodash's `get` but additionally retrieves `$ref`s as needed to get the path for schemas
|
|
3
|
+
* containing potentially nested `$ref`s.
|
|
4
|
+
*
|
|
5
|
+
* @param validator - An implementation of the `ValidatorType` interface that will be forwarded to all the APIs
|
|
6
|
+
* @param rootSchema - The root schema that will be forwarded to all the APIs
|
|
7
|
+
* @param schema - The current node within the JSON schema recursion
|
|
8
|
+
* @param path - The keys in the path to the desired field
|
|
9
|
+
* @param defaultValue - The value to return if a value is not found for the `pathList` path
|
|
10
|
+
* @param [experimental_customMergeAllOf] - Optional function that allows for custom merging of `allOf` schemas
|
|
11
|
+
* @returns - The inner schema from the `schema` for the given `path` or the `defaultValue` if not found
|
|
12
|
+
*/
|
|
13
|
+
export default function getFromSchema<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(validator: ValidatorType<T, S, F>, rootSchema: S, schema: S, path: string | string[], defaultValue: T, experimental_customMergeAllOf?: Experimental_CustomMergeAllOf<S>): T;
|
|
14
|
+
export default function getFromSchema<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(validator: ValidatorType<T, S, F>, rootSchema: S, schema: S, path: string | string[], defaultValue: S, experimental_customMergeAllOf?: Experimental_CustomMergeAllOf<S>): S;
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import get from 'lodash-es/get.js';
|
|
2
|
+
import has from 'lodash-es/has.js';
|
|
3
|
+
import isEmpty from 'lodash-es/isEmpty.js';
|
|
4
|
+
import retrieveSchema from './retrieveSchema.js';
|
|
5
|
+
import { REF_KEY } from '../constants.js';
|
|
6
|
+
/** Internal helper function that acts like lodash's `get` but additionally retrieves `$ref`s as needed to get the path
|
|
7
|
+
* for schemas containing potentially nested `$ref`s.
|
|
8
|
+
*
|
|
9
|
+
* @param validator - An implementation of the `ValidatorType` interface that will be forwarded to all the APIs
|
|
10
|
+
* @param rootSchema - The root schema that will be forwarded to all the APIs
|
|
11
|
+
* @param schema - The current node within the JSON schema recursion
|
|
12
|
+
* @param path - The remaining keys in the path to the desired property
|
|
13
|
+
* @param [experimental_customMergeAllOf] - Optional function that allows for custom merging of `allOf` schemas
|
|
14
|
+
* @returns - The internal schema from the `schema` for the given `path` or undefined if not found
|
|
15
|
+
*/
|
|
16
|
+
function getFromSchemaInternal(validator, rootSchema, schema, path, experimental_customMergeAllOf) {
|
|
17
|
+
let fieldSchema = schema;
|
|
18
|
+
if (has(schema, REF_KEY)) {
|
|
19
|
+
fieldSchema = retrieveSchema(validator, schema, rootSchema, undefined, experimental_customMergeAllOf);
|
|
20
|
+
}
|
|
21
|
+
if (isEmpty(path)) {
|
|
22
|
+
return fieldSchema;
|
|
23
|
+
}
|
|
24
|
+
const pathList = Array.isArray(path) ? path : path.split('.');
|
|
25
|
+
const [part, ...nestedPath] = pathList;
|
|
26
|
+
if (part && has(fieldSchema, part)) {
|
|
27
|
+
fieldSchema = get(fieldSchema, part);
|
|
28
|
+
return getFromSchemaInternal(validator, rootSchema, fieldSchema, nestedPath, experimental_customMergeAllOf);
|
|
29
|
+
}
|
|
30
|
+
return undefined;
|
|
31
|
+
}
|
|
32
|
+
export default function getFromSchema(validator, rootSchema, schema, path, defaultValue, experimental_customMergeAllOf) {
|
|
33
|
+
const result = getFromSchemaInternal(validator, rootSchema, schema, path, experimental_customMergeAllOf);
|
|
34
|
+
if (result === undefined) {
|
|
35
|
+
return defaultValue;
|
|
36
|
+
}
|
|
37
|
+
return result;
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=getFromSchema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getFromSchema.js","sourceRoot":"","sources":["../../src/schema/getFromSchema.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,YAAY,CAAC;AAC7B,OAAO,GAAG,MAAM,YAAY,CAAC;AAC7B,OAAO,OAAO,MAAM,gBAAgB,CAAC;AAErC,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAE9C,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC;;;;;;;;;GASG;AACH,SAAS,qBAAqB,CAC5B,SAAiC,EACjC,UAAa,EACb,MAAS,EACT,IAAuB,EACvB,6BAAgE;IAEhE,IAAI,WAAW,GAAG,MAAM,CAAC;IACzB,IAAI,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;QACzB,WAAW,GAAG,cAAc,CAAU,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,6BAA6B,CAAC,CAAC;IACjH,CAAC;IACD,IAAI,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QAClB,OAAO,WAAW,CAAC;IACrB,CAAC;IACD,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC9D,MAAM,CAAC,IAAI,EAAE,GAAG,UAAU,CAAC,GAAG,QAAQ,CAAC;IACvC,IAAI,IAAI,IAAI,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,EAAE,CAAC;QACnC,WAAW,GAAG,GAAG,CAAC,WAAW,EAAE,IAAI,CAAM,CAAC;QAC1C,OAAO,qBAAqB,CAC1B,SAAS,EACT,UAAU,EACV,WAAW,EACX,UAAU,EACV,6BAA6B,CAC9B,CAAC;IACJ,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAqCD,MAAM,CAAC,OAAO,UAAU,aAAa,CAKnC,SAAiC,EACjC,UAAa,EACb,MAAS,EACT,IAAuB,EACvB,YAAmB,EACnB,6BAAgE;IAEhE,MAAM,MAAM,GAAG,qBAAqB,CAAC,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,6BAA6B,CAAC,CAAC;IACzG,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,OAAO,YAAY,CAAC;IACtB,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
package/lib/schema/index.d.ts
CHANGED
|
@@ -1,14 +1,15 @@
|
|
|
1
|
+
import findFieldInSchema from './findFieldInSchema.js';
|
|
2
|
+
import findSelectedOptionInXxxOf from './findSelectedOptionInXxxOf.js';
|
|
1
3
|
import getDefaultFormState from './getDefaultFormState.js';
|
|
2
4
|
import getDisplayLabel from './getDisplayLabel.js';
|
|
3
5
|
import getClosestMatchingOption from './getClosestMatchingOption.js';
|
|
4
6
|
import getFirstMatchingOption from './getFirstMatchingOption.js';
|
|
5
|
-
import
|
|
7
|
+
import getFromSchema from './getFromSchema.js';
|
|
6
8
|
import isFilesArray from './isFilesArray.js';
|
|
7
9
|
import isMultiSelect from './isMultiSelect.js';
|
|
8
10
|
import isSelect from './isSelect.js';
|
|
9
|
-
import mergeValidationData from './mergeValidationData.js';
|
|
10
11
|
import retrieveSchema from './retrieveSchema.js';
|
|
11
12
|
import sanitizeDataForNewSchema from './sanitizeDataForNewSchema.js';
|
|
12
13
|
import toIdSchema from './toIdSchema.js';
|
|
13
14
|
import toPathSchema from './toPathSchema.js';
|
|
14
|
-
export { getDefaultFormState, getDisplayLabel, getClosestMatchingOption, getFirstMatchingOption,
|
|
15
|
+
export { findFieldInSchema, findSelectedOptionInXxxOf, getDefaultFormState, getDisplayLabel, getClosestMatchingOption, getFirstMatchingOption, getFromSchema, isFilesArray, isMultiSelect, isSelect, retrieveSchema, sanitizeDataForNewSchema, toIdSchema, toPathSchema, };
|
package/lib/schema/index.js
CHANGED
|
@@ -1,15 +1,16 @@
|
|
|
1
|
+
import findFieldInSchema from './findFieldInSchema.js';
|
|
2
|
+
import findSelectedOptionInXxxOf from './findSelectedOptionInXxxOf.js';
|
|
1
3
|
import getDefaultFormState from './getDefaultFormState.js';
|
|
2
4
|
import getDisplayLabel from './getDisplayLabel.js';
|
|
3
5
|
import getClosestMatchingOption from './getClosestMatchingOption.js';
|
|
4
6
|
import getFirstMatchingOption from './getFirstMatchingOption.js';
|
|
5
|
-
import
|
|
7
|
+
import getFromSchema from './getFromSchema.js';
|
|
6
8
|
import isFilesArray from './isFilesArray.js';
|
|
7
9
|
import isMultiSelect from './isMultiSelect.js';
|
|
8
10
|
import isSelect from './isSelect.js';
|
|
9
|
-
import mergeValidationData from './mergeValidationData.js';
|
|
10
11
|
import retrieveSchema from './retrieveSchema.js';
|
|
11
12
|
import sanitizeDataForNewSchema from './sanitizeDataForNewSchema.js';
|
|
12
13
|
import toIdSchema from './toIdSchema.js';
|
|
13
14
|
import toPathSchema from './toPathSchema.js';
|
|
14
|
-
export { getDefaultFormState, getDisplayLabel, getClosestMatchingOption, getFirstMatchingOption,
|
|
15
|
+
export { findFieldInSchema, findSelectedOptionInXxxOf, getDefaultFormState, getDisplayLabel, getClosestMatchingOption, getFirstMatchingOption, getFromSchema, isFilesArray, isMultiSelect, isSelect, retrieveSchema, sanitizeDataForNewSchema, toIdSchema, toPathSchema, };
|
|
15
16
|
//# sourceMappingURL=index.js.map
|
package/lib/schema/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/schema/index.ts"],"names":[],"mappings":"AAAA,OAAO,mBAAmB,MAAM,uBAAuB,CAAC;AACxD,OAAO,eAAe,MAAM,mBAAmB,CAAC;AAChD,OAAO,wBAAwB,MAAM,4BAA4B,CAAC;AAClE,OAAO,sBAAsB,MAAM,0BAA0B,CAAC;AAC9D,OAAO,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/schema/index.ts"],"names":[],"mappings":"AAAA,OAAO,iBAAiB,MAAM,qBAAqB,CAAC;AACpD,OAAO,yBAAyB,MAAM,6BAA6B,CAAC;AACpE,OAAO,mBAAmB,MAAM,uBAAuB,CAAC;AACxD,OAAO,eAAe,MAAM,mBAAmB,CAAC;AAChD,OAAO,wBAAwB,MAAM,4BAA4B,CAAC;AAClE,OAAO,sBAAsB,MAAM,0BAA0B,CAAC;AAC9D,OAAO,aAAa,MAAM,iBAAiB,CAAC;AAC5C,OAAO,YAAY,MAAM,gBAAgB,CAAC;AAC1C,OAAO,aAAa,MAAM,iBAAiB,CAAC;AAC5C,OAAO,QAAQ,MAAM,YAAY,CAAC;AAClC,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAC9C,OAAO,wBAAwB,MAAM,4BAA4B,CAAC;AAClE,OAAO,UAAU,MAAM,cAAc,CAAC;AACtC,OAAO,YAAY,MAAM,gBAAgB,CAAC;AAE1C,OAAO,EACL,iBAAiB,EACjB,yBAAyB,EACzB,mBAAmB,EACnB,eAAe,EACf,wBAAwB,EACxB,sBAAsB,EACtB,aAAa,EACb,YAAY,EACZ,aAAa,EACb,QAAQ,EACR,cAAc,EACd,wBAAwB,EACxB,UAAU,EACV,YAAY,GACb,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"isFilesArray.js","sourceRoot":"","sources":["../../src/schema/isFilesArray.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAS7C,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAE9C;;;;;;;;GAQG;AACH,MAAM,CAAC,OAAO,UAAU,YAAY,CAClC,SAAiC,EACjC,MAAS,EACT,WAA8B,EAAE,EAChC,UAAc,EACd,6BAAgE;IAEhE,IAAI,QAAQ,CAAC,aAAa,CAAC,KAAK,OAAO,EAAE;
|
|
1
|
+
{"version":3,"file":"isFilesArray.js","sourceRoot":"","sources":["../../src/schema/isFilesArray.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAS7C,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAE9C;;;;;;;;GAQG;AACH,MAAM,CAAC,OAAO,UAAU,YAAY,CAClC,SAAiC,EACjC,MAAS,EACT,WAA8B,EAAE,EAChC,UAAc,EACd,6BAAgE;IAEhE,IAAI,QAAQ,CAAC,aAAa,CAAC,KAAK,OAAO,EAAE,CAAC;QACxC,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;QACjB,MAAM,WAAW,GAAG,cAAc,CAChC,SAAS,EACT,MAAM,CAAC,KAAU,EACjB,UAAU,EACV,SAAS,EACT,6BAA6B,CAC9B,CAAC;QACF,OAAO,WAAW,CAAC,IAAI,KAAK,QAAQ,IAAI,WAAW,CAAC,MAAM,KAAK,UAAU,CAAC;IAC5E,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"isMultiSelect.js","sourceRoot":"","sources":["../../src/schema/isMultiSelect.ts"],"names":[],"mappings":"AAEA,OAAO,QAAQ,MAAM,YAAY,CAAC;AAElC;;;;;;;GAOG;AACH,MAAM,CAAC,OAAO,UAAU,aAAa,CAKnC,SAAiC,EACjC,MAAS,EACT,UAAc,EACd,6BAAgE;IAEhE,IAAI,CAAC,MAAM,CAAC,WAAW,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,OAAO,MAAM,CAAC,KAAK,KAAK,SAAS,EAAE;
|
|
1
|
+
{"version":3,"file":"isMultiSelect.js","sourceRoot":"","sources":["../../src/schema/isMultiSelect.ts"],"names":[],"mappings":"AAEA,OAAO,QAAQ,MAAM,YAAY,CAAC;AAElC;;;;;;;GAOG;AACH,MAAM,CAAC,OAAO,UAAU,aAAa,CAKnC,SAAiC,EACjC,MAAS,EACT,UAAc,EACd,6BAAgE;IAEhE,IAAI,CAAC,MAAM,CAAC,WAAW,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,OAAO,MAAM,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;QAC9E,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,QAAQ,CAAU,SAAS,EAAE,MAAM,CAAC,KAAU,EAAE,UAAU,EAAE,6BAA6B,CAAC,CAAC;AACpG,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"isSelect.js","sourceRoot":"","sources":["../../src/schema/isSelect.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,eAAe,CAAC;AAEvC,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAE9C;;;;;;;GAOG;AACH,MAAM,CAAC,OAAO,UAAU,QAAQ,CAC9B,SAAiC,EACjC,SAAY,EACZ,aAAgB,EAAO,EACvB,6BAAgE;IAEhE,MAAM,MAAM,GAAG,cAAc,CAAU,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,6BAA6B,CAAC,CAAC;IACnH,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,KAAK,CAAC;IAChD,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE;
|
|
1
|
+
{"version":3,"file":"isSelect.js","sourceRoot":"","sources":["../../src/schema/isSelect.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,eAAe,CAAC;AAEvC,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAE9C;;;;;;;GAOG;AACH,MAAM,CAAC,OAAO,UAAU,QAAQ,CAC9B,SAAiC,EACjC,SAAY,EACZ,aAAgB,EAAO,EACvB,6BAAgE;IAEhE,MAAM,MAAM,GAAG,cAAc,CAAU,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,6BAA6B,CAAC,CAAC;IACnH,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,KAAK,CAAC;IAChD,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;QAC/B,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;QAC9B,OAAO,UAAU,CAAC,KAAK,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,OAAO,UAAU,KAAK,SAAS,IAAI,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC;IACrG,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
|
|
@@ -41,6 +41,13 @@ export declare function resolveCondition<T = any, S extends StrictRJSFSchema = R
|
|
|
41
41
|
* @returns - The list of all permutations of schemas for a set of `xxxOf`s
|
|
42
42
|
*/
|
|
43
43
|
export declare function getAllPermutationsOfXxxOf<S extends StrictRJSFSchema = RJSFSchema>(listOfLists: S[][]): S[][];
|
|
44
|
+
/** Returns the subset of 'patternProperties' specifications that match the given 'key'
|
|
45
|
+
*
|
|
46
|
+
* @param schema - The schema whose 'patternProperties' are to be filtered
|
|
47
|
+
* @param key - The key to match against the 'patternProperties' specifications
|
|
48
|
+
* @returns - The subset of 'patternProperties' specifications that match the given 'key'
|
|
49
|
+
*/
|
|
50
|
+
export declare function getMatchingPatternProperties<S extends StrictRJSFSchema = RJSFSchema>(schema: S, key: string): Required<S['patternProperties']>;
|
|
44
51
|
/** Resolves references and dependencies within a schema and its 'allOf' children. Passes the `expandAllBranches` flag
|
|
45
52
|
* down to the `retrieveSchemaInternal()`, `resolveReference()` and `resolveDependencies()` helper calls. If
|
|
46
53
|
* `expandAllBranches` is true, then all possible dependencies and/or allOf branches are returned.
|
|
@@ -6,7 +6,7 @@ import merge from 'lodash-es/merge.js';
|
|
|
6
6
|
import flattenDeep from 'lodash-es/flattenDeep.js';
|
|
7
7
|
import uniq from 'lodash-es/uniq.js';
|
|
8
8
|
import mergeAllOf from 'json-schema-merge-allof';
|
|
9
|
-
import { ADDITIONAL_PROPERTIES_KEY, ADDITIONAL_PROPERTY_FLAG, ALL_OF_KEY, ANY_OF_KEY, DEPENDENCIES_KEY, IF_KEY, ITEMS_KEY, ONE_OF_KEY, PROPERTIES_KEY, REF_KEY, } from '../constants.js';
|
|
9
|
+
import { ADDITIONAL_PROPERTIES_KEY, ADDITIONAL_PROPERTY_FLAG, ALL_OF_KEY, ANY_OF_KEY, DEPENDENCIES_KEY, IF_KEY, ITEMS_KEY, ONE_OF_KEY, PATTERN_PROPERTIES_KEY, PROPERTIES_KEY, REF_KEY, } from '../constants.js';
|
|
10
10
|
import findSchemaDefinition, { splitKeyElementFromObject } from '../findSchemaDefinition.js';
|
|
11
11
|
import getDiscriminatorFieldFromSchema from '../getDiscriminatorFieldFromSchema.js';
|
|
12
12
|
import guessType from '../guessType.js';
|
|
@@ -14,6 +14,7 @@ import isObject from '../isObject.js';
|
|
|
14
14
|
import mergeSchemas from '../mergeSchemas.js';
|
|
15
15
|
import getFirstMatchingOption from './getFirstMatchingOption.js';
|
|
16
16
|
import deepEquals from '../deepEquals.js';
|
|
17
|
+
import isEmpty from 'lodash-es/isEmpty.js';
|
|
17
18
|
/** Retrieves an expanded schema that has had all of its conditions, additional properties, references and dependencies
|
|
18
19
|
* resolved and merged into the `schema` given a `validator`, `rootSchema` and `rawFormData` that is used to do the
|
|
19
20
|
* potentially recursive resolution.
|
|
@@ -89,10 +90,24 @@ export function getAllPermutationsOfXxxOf(listOfLists) {
|
|
|
89
90
|
// Otherwise just push in the single value into the current set of permutations
|
|
90
91
|
permutations.forEach((permutation) => permutation.push(list[0]));
|
|
91
92
|
return permutations;
|
|
92
|
-
}, [[]]
|
|
93
|
-
);
|
|
93
|
+
}, [[]]);
|
|
94
94
|
return allPermutations;
|
|
95
95
|
}
|
|
96
|
+
/** Returns the subset of 'patternProperties' specifications that match the given 'key'
|
|
97
|
+
*
|
|
98
|
+
* @param schema - The schema whose 'patternProperties' are to be filtered
|
|
99
|
+
* @param key - The key to match against the 'patternProperties' specifications
|
|
100
|
+
* @returns - The subset of 'patternProperties' specifications that match the given 'key'
|
|
101
|
+
*/
|
|
102
|
+
export function getMatchingPatternProperties(schema, key) {
|
|
103
|
+
return Object.keys(schema.patternProperties)
|
|
104
|
+
.filter((pattern) => RegExp(pattern).test(key))
|
|
105
|
+
.reduce((obj, pattern) => {
|
|
106
|
+
// Pass the pattern using the `[]` index notation so that any `.` in the pattern are not used as a dotted path
|
|
107
|
+
set(obj, [pattern], schema.patternProperties[pattern]);
|
|
108
|
+
return obj;
|
|
109
|
+
}, {});
|
|
110
|
+
}
|
|
96
111
|
/** Resolves references and dependencies within a schema and its 'allOf' children. Passes the `expandAllBranches` flag
|
|
97
112
|
* down to the `retrieveSchemaInternal()`, `resolveReference()` and `resolveDependencies()` helper calls. If
|
|
98
113
|
* `expandAllBranches` is true, then all possible dependencies and/or allOf branches are returned.
|
|
@@ -219,31 +234,47 @@ export function stubExistingAdditionalProperties(validator, theSchema, rootSchem
|
|
|
219
234
|
// No need to stub, our schema already has the property
|
|
220
235
|
return;
|
|
221
236
|
}
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
if (
|
|
225
|
-
|
|
237
|
+
if (PATTERN_PROPERTIES_KEY in schema) {
|
|
238
|
+
const matchingProperties = getMatchingPatternProperties(schema, key);
|
|
239
|
+
if (!isEmpty(matchingProperties)) {
|
|
240
|
+
schema.properties[key] = retrieveSchema(validator, { allOf: Object.values(matchingProperties) }, rootSchema, formData, experimental_customMergeAllOf);
|
|
241
|
+
set(schema.properties, [key, ADDITIONAL_PROPERTY_FLAG], true);
|
|
242
|
+
return;
|
|
226
243
|
}
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
}
|
|
230
|
-
|
|
231
|
-
additionalProperties
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
244
|
+
}
|
|
245
|
+
if (ADDITIONAL_PROPERTIES_KEY in schema && schema.additionalProperties !== false) {
|
|
246
|
+
let additionalProperties = {};
|
|
247
|
+
if (typeof schema.additionalProperties !== 'boolean') {
|
|
248
|
+
if (REF_KEY in schema.additionalProperties) {
|
|
249
|
+
additionalProperties = retrieveSchema(validator, { $ref: get(schema.additionalProperties, [REF_KEY]) }, rootSchema, formData, experimental_customMergeAllOf);
|
|
250
|
+
}
|
|
251
|
+
else if ('type' in schema.additionalProperties) {
|
|
252
|
+
additionalProperties = { ...schema.additionalProperties };
|
|
253
|
+
}
|
|
254
|
+
else if (ANY_OF_KEY in schema.additionalProperties || ONE_OF_KEY in schema.additionalProperties) {
|
|
255
|
+
additionalProperties = {
|
|
256
|
+
type: 'object',
|
|
257
|
+
...schema.additionalProperties,
|
|
258
|
+
};
|
|
259
|
+
}
|
|
260
|
+
else {
|
|
261
|
+
additionalProperties = { type: guessType(get(formData, [key])) };
|
|
262
|
+
}
|
|
235
263
|
}
|
|
236
264
|
else {
|
|
237
265
|
additionalProperties = { type: guessType(get(formData, [key])) };
|
|
238
266
|
}
|
|
267
|
+
// The type of our new key should match the additionalProperties value;
|
|
268
|
+
schema.properties[key] = additionalProperties;
|
|
269
|
+
// Set our additional property flag so we know it was dynamically added
|
|
270
|
+
set(schema.properties, [key, ADDITIONAL_PROPERTY_FLAG], true);
|
|
239
271
|
}
|
|
240
272
|
else {
|
|
241
|
-
|
|
273
|
+
// Invalid property
|
|
274
|
+
schema.properties[key] = { type: 'null' };
|
|
275
|
+
// Set our additional property flag so we know it was dynamically added
|
|
276
|
+
set(schema.properties, [key, ADDITIONAL_PROPERTY_FLAG], true);
|
|
242
277
|
}
|
|
243
|
-
// The type of our new key should match the additionalProperties value;
|
|
244
|
-
schema.properties[key] = additionalProperties;
|
|
245
|
-
// Set our additional property flag so we know it was dynamically added
|
|
246
|
-
set(schema.properties, [key, ADDITIONAL_PROPERTY_FLAG], true);
|
|
247
278
|
});
|
|
248
279
|
return schema;
|
|
249
280
|
}
|
|
@@ -309,7 +340,20 @@ export function retrieveSchemaInternal(validator, schema, rootSchema, rawFormDat
|
|
|
309
340
|
return resolvedSchemaWithoutAllOf;
|
|
310
341
|
}
|
|
311
342
|
}
|
|
312
|
-
|
|
343
|
+
if (PROPERTIES_KEY in resolvedSchema && PATTERN_PROPERTIES_KEY in resolvedSchema) {
|
|
344
|
+
resolvedSchema = Object.keys(resolvedSchema.properties).reduce((schema, key) => {
|
|
345
|
+
const matchingProperties = getMatchingPatternProperties(schema, key);
|
|
346
|
+
if (!isEmpty(matchingProperties)) {
|
|
347
|
+
schema.properties[key] = retrieveSchema(validator, { allOf: [schema.properties[key], ...Object.values(matchingProperties)] }, rootSchema, rawFormData, experimental_customMergeAllOf);
|
|
348
|
+
}
|
|
349
|
+
return schema;
|
|
350
|
+
}, {
|
|
351
|
+
...resolvedSchema,
|
|
352
|
+
properties: { ...resolvedSchema.properties },
|
|
353
|
+
});
|
|
354
|
+
}
|
|
355
|
+
const hasAdditionalProperties = PATTERN_PROPERTIES_KEY in resolvedSchema ||
|
|
356
|
+
(ADDITIONAL_PROPERTIES_KEY in resolvedSchema && resolvedSchema.additionalProperties !== false);
|
|
313
357
|
if (hasAdditionalProperties) {
|
|
314
358
|
return stubExistingAdditionalProperties(validator, resolvedSchema, rootSchema, rawFormData, experimental_customMergeAllOf);
|
|
315
359
|
}
|