@rjsf/utils 6.8.0 → 6.10.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.cjs +509 -419
- package/dist/index.cjs.map +4 -4
- package/dist/utils.esm.js +508 -418
- package/dist/utils.esm.js.map +4 -4
- package/dist/utils.umd.js +567 -327
- package/lib/ErrorSchemaBuilder.d.ts +8 -7
- package/lib/ErrorSchemaBuilder.d.ts.map +1 -0
- package/lib/ErrorSchemaBuilder.js +29 -27
- package/lib/ErrorSchemaBuilder.js.map +1 -1
- package/lib/SelectedOptionDescription.d.ts +2 -1
- package/lib/SelectedOptionDescription.d.ts.map +1 -0
- package/lib/SelectedOptionDescription.js +6 -7
- package/lib/SelectedOptionDescription.js.map +1 -1
- package/lib/allowAdditionalItems.d.ts +2 -1
- package/lib/allowAdditionalItems.d.ts.map +1 -0
- package/lib/allowAdditionalItems.js +1 -1
- package/lib/allowAdditionalItems.js.map +1 -1
- package/lib/asNumber.d.ts +1 -0
- package/lib/asNumber.d.ts.map +1 -0
- package/lib/asNumber.js +1 -1
- package/lib/asNumber.js.map +1 -1
- package/lib/canExpand.d.ts +2 -1
- package/lib/canExpand.d.ts.map +1 -0
- package/lib/canExpand.js +1 -1
- package/lib/canExpand.js.map +1 -1
- package/lib/constIsAjvDataReference.d.ts +2 -1
- package/lib/constIsAjvDataReference.d.ts.map +1 -0
- package/lib/constIsAjvDataReference.js +2 -3
- package/lib/constIsAjvDataReference.js.map +1 -1
- package/lib/constants.d.ts +1 -0
- package/lib/constants.d.ts.map +1 -0
- package/lib/createErrorHandler.d.ts +2 -1
- package/lib/createErrorHandler.d.ts.map +1 -0
- package/lib/createErrorHandler.js +3 -4
- package/lib/createErrorHandler.js.map +1 -1
- package/lib/createSchemaUtils.d.ts +2 -1
- package/lib/createSchemaUtils.d.ts.map +1 -0
- package/lib/createSchemaUtils.js +10 -7
- package/lib/createSchemaUtils.js.map +1 -1
- package/lib/dataURItoBlob.d.ts +1 -0
- package/lib/dataURItoBlob.d.ts.map +1 -0
- package/lib/dataURItoBlob.js +1 -2
- package/lib/dataURItoBlob.js.map +1 -1
- package/lib/dateRangeOptions.d.ts +2 -1
- package/lib/dateRangeOptions.d.ts.map +1 -0
- package/lib/dateRangeOptions.js +1 -1
- package/lib/dateRangeOptions.js.map +1 -1
- package/lib/deepEquals.d.ts +1 -0
- package/lib/deepEquals.d.ts.map +1 -0
- package/lib/englishStringTranslator.d.ts +2 -1
- package/lib/englishStringTranslator.d.ts.map +1 -0
- package/lib/englishStringTranslator.js +1 -1
- package/lib/englishStringTranslator.js.map +1 -1
- package/lib/enumOptionSelectedValue.d.ts +2 -1
- package/lib/enumOptionSelectedValue.d.ts.map +1 -0
- package/lib/enumOptionSelectedValue.js +1 -1
- package/lib/enumOptionSelectedValue.js.map +1 -1
- package/lib/enumOptionValueDecoder.d.ts +2 -1
- package/lib/enumOptionValueDecoder.d.ts.map +1 -0
- package/lib/enumOptionValueDecoder.js +1 -1
- package/lib/enumOptionValueDecoder.js.map +1 -1
- package/lib/enumOptionValueEncoder.d.ts +2 -1
- package/lib/enumOptionValueEncoder.d.ts.map +1 -0
- package/lib/enumOptionValueEncoder.js +1 -2
- package/lib/enumOptionValueEncoder.js.map +1 -1
- package/lib/enumOptionsDeselectValue.d.ts +2 -1
- package/lib/enumOptionsDeselectValue.d.ts.map +1 -0
- package/lib/enumOptionsDeselectValue.js +2 -2
- package/lib/enumOptionsDeselectValue.js.map +1 -1
- package/lib/enumOptionsIndexForValue.d.ts +2 -1
- package/lib/enumOptionsIndexForValue.d.ts.map +1 -0
- package/lib/enumOptionsIndexForValue.js +1 -1
- package/lib/enumOptionsIndexForValue.js.map +1 -1
- package/lib/enumOptionsIsSelected.d.ts +2 -1
- package/lib/enumOptionsIsSelected.d.ts.map +1 -0
- package/lib/enumOptionsIsSelected.js +1 -1
- package/lib/enumOptionsIsSelected.js.map +1 -1
- package/lib/enumOptionsSelectValue.d.ts +2 -1
- package/lib/enumOptionsSelectValue.d.ts.map +1 -0
- package/lib/enumOptionsSelectValue.js +2 -3
- package/lib/enumOptionsSelectValue.js.map +1 -1
- package/lib/enumOptionsValueForIndex.d.ts +2 -1
- package/lib/enumOptionsValueForIndex.d.ts.map +1 -0
- package/lib/enums.d.ts +1 -0
- package/lib/enums.d.ts.map +1 -0
- package/lib/findSchemaDefinition.d.ts +2 -1
- package/lib/findSchemaDefinition.d.ts.map +1 -0
- package/lib/findSchemaDefinition.js +7 -11
- package/lib/findSchemaDefinition.js.map +1 -1
- package/lib/getChangedFields.d.ts +11 -2
- package/lib/getChangedFields.d.ts.map +1 -0
- package/lib/getChangedFields.js +57 -18
- package/lib/getChangedFields.js.map +1 -1
- package/lib/getDateElementProps.d.ts +2 -1
- package/lib/getDateElementProps.d.ts.map +1 -0
- package/lib/getDecimalSeparator.d.ts +1 -0
- package/lib/getDecimalSeparator.d.ts.map +1 -0
- package/lib/getDecimalSeparator.js +1 -2
- package/lib/getDecimalSeparator.js.map +1 -1
- package/lib/getDiscriminatorFieldFromSchema.d.ts +2 -1
- package/lib/getDiscriminatorFieldFromSchema.d.ts.map +1 -0
- package/lib/getDiscriminatorFieldFromSchema.js +4 -5
- package/lib/getDiscriminatorFieldFromSchema.js.map +1 -1
- package/lib/getInputProps.d.ts +2 -1
- package/lib/getInputProps.d.ts.map +1 -0
- package/lib/getInputProps.js +4 -1
- package/lib/getInputProps.js.map +1 -1
- package/lib/getOptionMatchingSimpleDiscriminator.d.ts +2 -1
- package/lib/getOptionMatchingSimpleDiscriminator.d.ts.map +1 -0
- package/lib/getOptionMatchingSimpleDiscriminator.js +6 -6
- package/lib/getOptionMatchingSimpleDiscriminator.js.map +1 -1
- package/lib/getOptionValueFormat.d.ts +2 -1
- package/lib/getOptionValueFormat.d.ts.map +1 -0
- package/lib/getOptionValueFormat.js +1 -2
- package/lib/getOptionValueFormat.js.map +1 -1
- package/lib/getPropertySchema.d.ts +12 -0
- package/lib/getPropertySchema.d.ts.map +1 -0
- package/lib/getPropertySchema.js +14 -0
- package/lib/getPropertySchema.js.map +1 -0
- package/lib/getSchemaType.d.ts +2 -1
- package/lib/getSchemaType.d.ts.map +1 -0
- package/lib/getSchemaType.js +1 -1
- package/lib/getSchemaType.js.map +1 -1
- package/lib/getSubmitButtonOptions.d.ts +2 -1
- package/lib/getSubmitButtonOptions.d.ts.map +1 -0
- package/lib/getSubmitButtonOptions.js +3 -3
- package/lib/getSubmitButtonOptions.js.map +1 -1
- package/lib/getTemplate.d.ts +2 -1
- package/lib/getTemplate.d.ts.map +1 -0
- package/lib/getTestIds.d.ts +2 -1
- package/lib/getTestIds.d.ts.map +1 -0
- package/lib/getTestIds.js +6 -5
- package/lib/getTestIds.js.map +1 -1
- package/lib/getUiOptions.d.ts +2 -1
- package/lib/getUiOptions.d.ts.map +1 -0
- package/lib/getUiOptions.js +2 -2
- package/lib/getUiOptions.js.map +1 -1
- package/lib/getWidget.d.ts +2 -1
- package/lib/getWidget.d.ts.map +1 -0
- package/lib/getWidget.js +6 -7
- package/lib/getWidget.js.map +1 -1
- package/lib/guessType.d.ts +2 -1
- package/lib/guessType.d.ts.map +1 -0
- package/lib/hasWidget.d.ts +2 -1
- package/lib/hasWidget.d.ts.map +1 -0
- package/lib/hasWidget.js +1 -1
- package/lib/hasWidget.js.map +1 -1
- package/lib/hashForSchema.d.ts +2 -1
- package/lib/hashForSchema.d.ts.map +1 -0
- package/lib/idGenerators.d.ts +2 -1
- package/lib/idGenerators.d.ts.map +1 -0
- package/lib/idGenerators.js +2 -3
- package/lib/idGenerators.js.map +1 -1
- package/lib/index.d.ts +93 -87
- package/lib/index.d.ts.map +1 -0
- package/lib/index.js +85 -81
- package/lib/index.js.map +1 -1
- package/lib/isConstant.d.ts +2 -1
- package/lib/isConstant.d.ts.map +1 -0
- package/lib/isConstant.js +1 -1
- package/lib/isConstant.js.map +1 -1
- package/lib/isCustomWidget.d.ts +2 -1
- package/lib/isCustomWidget.d.ts.map +1 -0
- package/lib/isCustomWidget.js +1 -1
- package/lib/isCustomWidget.js.map +1 -1
- package/lib/isFixedItems.d.ts +2 -1
- package/lib/isFixedItems.d.ts.map +1 -0
- package/lib/isFixedItems.js +1 -1
- package/lib/isFixedItems.js.map +1 -1
- package/lib/isFormDataAvailable.d.ts +1 -0
- package/lib/isFormDataAvailable.d.ts.map +1 -0
- package/lib/isFormDataAvailable.js +7 -4
- package/lib/isFormDataAvailable.js.map +1 -1
- package/lib/isObject.d.ts +3 -1
- package/lib/isObject.d.ts.map +1 -0
- package/lib/isObject.js +8 -2
- package/lib/isObject.js.map +1 -1
- package/lib/isPlainObject.d.ts +9 -0
- package/lib/isPlainObject.d.ts.map +1 -0
- package/lib/isPlainObject.js +15 -0
- package/lib/isPlainObject.js.map +1 -0
- package/lib/isRootSchema.d.ts +2 -1
- package/lib/isRootSchema.d.ts.map +1 -0
- package/lib/isRootSchema.js +2 -2
- package/lib/isRootSchema.js.map +1 -1
- package/lib/jsonSchemaAugmentation.d.ts +1 -0
- package/lib/jsonSchemaAugmentation.d.ts.map +1 -0
- package/lib/labelValue.d.ts +1 -0
- package/lib/labelValue.d.ts.map +1 -0
- package/lib/localToUTC.d.ts +1 -0
- package/lib/localToUTC.d.ts.map +1 -0
- package/lib/logUnsupportedDefaultForEnum.d.ts +2 -1
- package/lib/logUnsupportedDefaultForEnum.d.ts.map +1 -0
- package/lib/logUnsupportedDefaultForEnum.js +1 -1
- package/lib/logUnsupportedDefaultForEnum.js.map +1 -1
- package/lib/lookupFromFormContext.d.ts +3 -2
- package/lib/lookupFromFormContext.d.ts.map +1 -0
- package/lib/lookupFromFormContext.js +4 -5
- package/lib/lookupFromFormContext.js.map +1 -1
- package/lib/mergeDefaultsWithFormData.d.ts +1 -0
- package/lib/mergeDefaultsWithFormData.d.ts.map +1 -0
- package/lib/mergeDefaultsWithFormData.js +20 -16
- package/lib/mergeDefaultsWithFormData.js.map +1 -1
- package/lib/mergeObjects.d.ts +2 -1
- package/lib/mergeObjects.d.ts.map +1 -0
- package/lib/mergeObjects.js +1 -1
- package/lib/mergeObjects.js.map +1 -1
- package/lib/mergeSchemas.d.ts +2 -1
- package/lib/mergeSchemas.d.ts.map +1 -0
- package/lib/mergeSchemas.js +4 -5
- package/lib/mergeSchemas.js.map +1 -1
- package/lib/nameGenerators.d.ts +2 -1
- package/lib/nameGenerators.d.ts.map +1 -0
- package/lib/noop.d.ts +5 -0
- package/lib/noop.d.ts.map +1 -0
- package/lib/noop.js +5 -0
- package/lib/noop.js.map +1 -0
- package/lib/optionsList.d.ts +2 -1
- package/lib/optionsList.d.ts.map +1 -0
- package/lib/optionsList.js +15 -15
- package/lib/optionsList.js.map +1 -1
- package/lib/orderProperties.d.ts +1 -0
- package/lib/orderProperties.d.ts.map +1 -0
- package/lib/pad.d.ts +1 -0
- package/lib/pad.d.ts.map +1 -0
- package/lib/parseDateString.d.ts +2 -1
- package/lib/parseDateString.d.ts.map +1 -0
- package/lib/parser/ParserValidator.d.ts +2 -1
- package/lib/parser/ParserValidator.d.ts.map +1 -0
- package/lib/parser/ParserValidator.js +8 -7
- package/lib/parser/ParserValidator.js.map +1 -1
- package/lib/parser/index.d.ts +3 -2
- package/lib/parser/index.d.ts.map +1 -0
- package/lib/parser/index.js +1 -1
- package/lib/parser/index.js.map +1 -1
- package/lib/parser/schemaParser.d.ts +3 -2
- package/lib/parser/schemaParser.d.ts.map +1 -0
- package/lib/parser/schemaParser.js +6 -7
- package/lib/parser/schemaParser.js.map +1 -1
- package/lib/pathUtils.d.ts +77 -0
- package/lib/pathUtils.d.ts.map +1 -0
- package/lib/pathUtils.js +192 -0
- package/lib/pathUtils.js.map +1 -0
- package/lib/rangeSpec.d.ts +2 -1
- package/lib/rangeSpec.d.ts.map +1 -0
- package/lib/removeOptionalEmptyObjects.d.ts +2 -1
- package/lib/removeOptionalEmptyObjects.d.ts.map +1 -0
- package/lib/removeOptionalEmptyObjects.js +2 -2
- package/lib/removeOptionalEmptyObjects.js.map +1 -1
- package/lib/replaceStringParameters.d.ts +1 -0
- package/lib/replaceStringParameters.d.ts.map +1 -0
- package/lib/resolveUiSchema.d.ts +2 -1
- package/lib/resolveUiSchema.d.ts.map +1 -0
- package/lib/resolveUiSchema.js +6 -8
- package/lib/resolveUiSchema.js.map +1 -1
- package/lib/schema/findFieldInSchema.d.ts +2 -1
- package/lib/schema/findFieldInSchema.d.ts.map +1 -0
- package/lib/schema/findFieldInSchema.js +10 -11
- package/lib/schema/findFieldInSchema.js.map +1 -1
- package/lib/schema/findSelectedOptionInXxxOf.d.ts +2 -1
- package/lib/schema/findSelectedOptionInXxxOf.d.ts.map +1 -0
- package/lib/schema/findSelectedOptionInXxxOf.js +7 -7
- package/lib/schema/findSelectedOptionInXxxOf.js.map +1 -1
- package/lib/schema/getClosestMatchingOption.d.ts +2 -1
- package/lib/schema/getClosestMatchingOption.d.ts.map +1 -0
- package/lib/schema/getClosestMatchingOption.js +18 -23
- package/lib/schema/getClosestMatchingOption.js.map +1 -1
- package/lib/schema/getDefaultFormState.d.ts +2 -1
- package/lib/schema/getDefaultFormState.d.ts.map +1 -0
- package/lib/schema/getDefaultFormState.js +78 -56
- package/lib/schema/getDefaultFormState.js.map +1 -1
- package/lib/schema/getDisplayLabel.d.ts +2 -1
- package/lib/schema/getDisplayLabel.d.ts.map +1 -0
- package/lib/schema/getDisplayLabel.js +7 -7
- package/lib/schema/getDisplayLabel.js.map +1 -1
- package/lib/schema/getFirstMatchingOption.d.ts +2 -1
- package/lib/schema/getFirstMatchingOption.d.ts.map +1 -0
- package/lib/schema/getFirstMatchingOption.js +9 -9
- package/lib/schema/getFirstMatchingOption.js.map +1 -1
- package/lib/schema/getFromSchema.d.ts +3 -2
- package/lib/schema/getFromSchema.d.ts.map +1 -0
- package/lib/schema/getFromSchema.js +10 -11
- package/lib/schema/getFromSchema.js.map +1 -1
- package/lib/schema/index.d.ts +15 -14
- package/lib/schema/index.d.ts.map +1 -0
- package/lib/schema/index.js +14 -14
- package/lib/schema/index.js.map +1 -1
- package/lib/schema/isFilesArray.d.ts +2 -1
- package/lib/schema/isFilesArray.d.ts.map +1 -0
- package/lib/schema/isFilesArray.js +2 -2
- package/lib/schema/isFilesArray.js.map +1 -1
- package/lib/schema/isMultiSelect.d.ts +2 -1
- package/lib/schema/isMultiSelect.d.ts.map +1 -0
- package/lib/schema/isMultiSelect.js +1 -1
- package/lib/schema/isMultiSelect.js.map +1 -1
- package/lib/schema/isSelect.d.ts +2 -1
- package/lib/schema/isSelect.d.ts.map +1 -0
- package/lib/schema/isSelect.js +2 -2
- package/lib/schema/isSelect.js.map +1 -1
- package/lib/schema/omitExtraData.d.ts +2 -1
- package/lib/schema/omitExtraData.d.ts.map +1 -0
- package/lib/schema/omitExtraData.js +100 -64
- package/lib/schema/omitExtraData.js.map +1 -1
- package/lib/schema/retrieveSchema.d.ts +2 -1
- package/lib/schema/retrieveSchema.d.ts.map +1 -0
- package/lib/schema/retrieveSchema.js +32 -40
- package/lib/schema/retrieveSchema.js.map +1 -1
- package/lib/schema/sanitizeDataForNewSchema.d.ts +4 -3
- package/lib/schema/sanitizeDataForNewSchema.d.ts.map +1 -0
- package/lib/schema/sanitizeDataForNewSchema.js +41 -39
- package/lib/schema/sanitizeDataForNewSchema.js.map +1 -1
- package/lib/schema/shallowAllOfMerge.d.ts +1 -0
- package/lib/schema/shallowAllOfMerge.d.ts.map +1 -0
- package/lib/schema/toPathSchema.d.ts +2 -1
- package/lib/schema/toPathSchema.d.ts.map +1 -0
- package/lib/schema/toPathSchema.js +14 -14
- package/lib/schema/toPathSchema.js.map +1 -1
- package/lib/schemaRequiresTrueValue.d.ts +2 -1
- package/lib/schemaRequiresTrueValue.d.ts.map +1 -0
- package/lib/schemaRequiresTrueValue.js +3 -4
- package/lib/schemaRequiresTrueValue.js.map +1 -1
- package/lib/shallowEquals.d.ts +1 -0
- package/lib/shallowEquals.d.ts.map +1 -0
- package/lib/shouldRender.d.ts +2 -1
- package/lib/shouldRender.d.ts.map +1 -0
- package/lib/shouldRender.js +2 -2
- package/lib/shouldRender.js.map +1 -1
- package/lib/shouldRenderOptionalField.d.ts +2 -1
- package/lib/shouldRenderOptionalField.d.ts.map +1 -0
- package/lib/shouldRenderOptionalField.js +11 -10
- package/lib/shouldRenderOptionalField.js.map +1 -1
- package/lib/toConstant.d.ts +2 -1
- package/lib/toConstant.d.ts.map +1 -0
- package/lib/toConstant.js +1 -1
- package/lib/toConstant.js.map +1 -1
- package/lib/toDateString.d.ts +2 -1
- package/lib/toDateString.d.ts.map +1 -0
- package/lib/toErrorList.d.ts +2 -1
- package/lib/toErrorList.d.ts.map +1 -0
- package/lib/toErrorList.js +20 -21
- package/lib/toErrorList.js.map +1 -1
- package/lib/toErrorSchema.d.ts +2 -1
- package/lib/toErrorSchema.d.ts.map +1 -0
- package/lib/toErrorSchema.js +4 -9
- package/lib/toErrorSchema.js.map +1 -1
- package/lib/toFieldPathId.d.ts +2 -1
- package/lib/toFieldPathId.d.ts.map +1 -0
- package/lib/toFieldPathId.js +2 -2
- package/lib/toFieldPathId.js.map +1 -1
- package/lib/types.d.ts +15 -5
- package/lib/types.d.ts.map +1 -0
- package/lib/types.js +1 -1
- package/lib/types.js.map +1 -1
- package/lib/unwrapErrorHandler.d.ts +2 -1
- package/lib/unwrapErrorHandler.d.ts.map +1 -0
- package/lib/unwrapErrorHandler.js +13 -4
- package/lib/unwrapErrorHandler.js.map +1 -1
- package/lib/useAltDateWidgetProps.d.ts +3 -2
- package/lib/useAltDateWidgetProps.d.ts.map +1 -0
- package/lib/useAltDateWidgetProps.js +5 -5
- package/lib/useAltDateWidgetProps.js.map +1 -1
- package/lib/useDeepCompareMemo.d.ts +1 -0
- package/lib/useDeepCompareMemo.d.ts.map +1 -0
- package/lib/useDeepCompareMemo.js +1 -1
- package/lib/useDeepCompareMemo.js.map +1 -1
- package/lib/useFileWidgetProps.d.ts +1 -0
- package/lib/useFileWidgetProps.d.ts.map +1 -0
- package/lib/useFileWidgetProps.js +3 -4
- package/lib/useFileWidgetProps.js.map +1 -1
- package/lib/utcToLocal.d.ts +1 -0
- package/lib/utcToLocal.d.ts.map +1 -0
- package/lib/utcToLocal.js +1 -1
- package/lib/utcToLocal.js.map +1 -1
- package/lib/validationDataMerge.d.ts +2 -1
- package/lib/validationDataMerge.d.ts.map +1 -0
- package/lib/validationDataMerge.js +3 -4
- package/lib/validationDataMerge.js.map +1 -1
- package/lib/withIdRefPrefix.d.ts +2 -1
- package/lib/withIdRefPrefix.d.ts.map +1 -0
- package/lib/withIdRefPrefix.js +2 -2
- package/lib/withIdRefPrefix.js.map +1 -1
- package/package.json +5 -6
- package/src/ErrorSchemaBuilder.ts +25 -24
- package/src/SelectedOptionDescription.tsx +5 -5
- package/src/allowAdditionalItems.ts +2 -2
- package/src/asNumber.ts +1 -1
- package/src/canExpand.ts +2 -2
- package/src/constIsAjvDataReference.ts +5 -4
- package/src/createErrorHandler.ts +5 -7
- package/src/createSchemaUtils.ts +8 -10
- package/src/dateRangeOptions.ts +2 -2
- package/src/englishStringTranslator.ts +2 -2
- package/src/enumOptionSelectedValue.ts +2 -2
- package/src/enumOptionValueDecoder.ts +2 -2
- package/src/enumOptionValueEncoder.ts +2 -4
- package/src/enumOptionsDeselectValue.ts +3 -3
- package/src/enumOptionsIndexForValue.ts +2 -2
- package/src/enumOptionsIsSelected.ts +2 -2
- package/src/enumOptionsSelectValue.ts +3 -5
- package/src/enumOptionsValueForIndex.ts +1 -1
- package/src/findSchemaDefinition.ts +8 -12
- package/src/getChangedFields.ts +57 -18
- package/src/getDateElementProps.ts +1 -1
- package/src/getDiscriminatorFieldFromSchema.ts +5 -7
- package/src/getInputProps.ts +6 -2
- package/src/getOptionMatchingSimpleDiscriminator.ts +7 -7
- package/src/getOptionValueFormat.ts +1 -1
- package/src/getPropertySchema.ts +18 -0
- package/src/getSchemaType.ts +2 -2
- package/src/getSubmitButtonOptions.ts +3 -3
- package/src/getTemplate.ts +1 -1
- package/src/getTestIds.ts +7 -6
- package/src/getUiOptions.ts +3 -3
- package/src/getWidget.tsx +6 -6
- package/src/hasWidget.ts +2 -2
- package/src/hashForSchema.ts +1 -1
- package/src/idGenerators.ts +3 -5
- package/src/index.ts +99 -85
- package/src/isConstant.ts +2 -2
- package/src/isCustomWidget.ts +2 -2
- package/src/isFixedItems.ts +2 -2
- package/src/isFormDataAvailable.ts +7 -5
- package/src/isObject.ts +15 -3
- package/src/isPlainObject.ts +14 -0
- package/src/isRootSchema.ts +3 -3
- package/src/logUnsupportedDefaultForEnum.ts +2 -2
- package/src/lookupFromFormContext.ts +7 -8
- package/src/mergeDefaultsWithFormData.ts +22 -18
- package/src/mergeObjects.ts +2 -2
- package/src/mergeSchemas.ts +5 -7
- package/src/nameGenerators.ts +1 -1
- package/src/noop.ts +4 -0
- package/src/optionsList.ts +9 -9
- package/src/orderProperties.ts +1 -1
- package/src/parseDateString.ts +1 -1
- package/src/parser/ParserValidator.ts +5 -7
- package/src/parser/index.ts +2 -2
- package/src/parser/schemaParser.ts +8 -10
- package/src/pathUtils.ts +203 -0
- package/src/rangeSpec.ts +1 -1
- package/src/removeOptionalEmptyObjects.ts +3 -3
- package/src/resolveUiSchema.ts +5 -7
- package/src/schema/findFieldInSchema.ts +11 -13
- package/src/schema/findSelectedOptionInXxxOf.ts +9 -10
- package/src/schema/getClosestMatchingOption.ts +73 -83
- package/src/schema/getDefaultFormState.ts +62 -34
- package/src/schema/getDisplayLabel.ts +7 -7
- package/src/schema/getFirstMatchingOption.ts +10 -11
- package/src/schema/getFromSchema.ts +12 -14
- package/src/schema/index.ts +14 -14
- package/src/schema/isFilesArray.ts +3 -3
- package/src/schema/isMultiSelect.ts +2 -2
- package/src/schema/isSelect.ts +3 -3
- package/src/schema/omitExtraData.ts +104 -68
- package/src/schema/retrieveSchema.ts +47 -60
- package/src/schema/sanitizeDataForNewSchema.ts +42 -41
- package/src/schema/toPathSchema.ts +14 -14
- package/src/schemaRequiresTrueValue.ts +1 -1
- package/src/shouldRender.ts +3 -3
- package/src/shouldRenderOptionalField.ts +14 -14
- package/src/toConstant.ts +2 -2
- package/src/toDateString.ts +1 -1
- package/src/toErrorList.ts +22 -25
- package/src/toErrorSchema.ts +5 -11
- package/src/toFieldPathId.ts +2 -2
- package/src/types.ts +14 -5
- package/src/unwrapErrorHandler.ts +15 -6
- package/src/useAltDateWidgetProps.tsx +7 -7
- package/src/useDeepCompareMemo.ts +1 -1
- package/src/useFileWidgetProps.ts +1 -1
- package/src/utcToLocal.ts +1 -1
- package/src/validationDataMerge.ts +4 -6
- package/src/withIdRefPrefix.ts +3 -4
- package/lib/tsconfig.tsbuildinfo +0 -1
- package/src/tsconfig.json +0 -9
|
@@ -1,16 +1,13 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
import
|
|
5
|
-
import
|
|
6
|
-
import
|
|
7
|
-
import
|
|
8
|
-
import
|
|
9
|
-
import
|
|
10
|
-
import
|
|
11
|
-
import isSelect from './isSelect.js';
|
|
12
|
-
import { relaxOptionsForScoring, resolveAllReferences } from './retrieveSchema.js';
|
|
13
|
-
import shallowAllOfMerge from './shallowAllOfMerge.js';
|
|
1
|
+
import { NAME_KEY, RJSF_ADDITIONAL_PROPERTIES_FLAG } from "../constants.js";
|
|
2
|
+
import findSchemaDefinition from "../findSchemaDefinition.js";
|
|
3
|
+
import getDiscriminatorFieldFromSchema from "../getDiscriminatorFieldFromSchema.js";
|
|
4
|
+
import getSchemaType from "../getSchemaType.js";
|
|
5
|
+
import isObject from "../isObject.js";
|
|
6
|
+
import { getByPath, hasByPath, setByPath, toPath } from "../pathUtils.js";
|
|
7
|
+
import getClosestMatchingOption from "./getClosestMatchingOption.js";
|
|
8
|
+
import isSelect from "./isSelect.js";
|
|
9
|
+
import { relaxOptionsForScoring, resolveAllReferences } from "./retrieveSchema.js";
|
|
10
|
+
import shallowAllOfMerge from "./shallowAllOfMerge.js";
|
|
14
11
|
/** Returns the `formData` with only the elements specified in the `fields` list
|
|
15
12
|
*
|
|
16
13
|
* @param formData - The data for the `Form`
|
|
@@ -22,7 +19,15 @@ export function getUsedFormData(formData, fields) {
|
|
|
22
19
|
if (fields.length === 0 && typeof formData !== 'object') {
|
|
23
20
|
return formData;
|
|
24
21
|
}
|
|
25
|
-
|
|
22
|
+
// Keep only the values at the given field paths; `fields` contains either dotted strings or the
|
|
23
|
+
// deep path lists produced by `getFieldNames()`
|
|
24
|
+
const data = {};
|
|
25
|
+
fields.forEach((field) => {
|
|
26
|
+
const path = Array.isArray(field) ? field : toPath(field);
|
|
27
|
+
if (hasByPath(formData, path)) {
|
|
28
|
+
setByPath(data, path, getByPath(formData, path));
|
|
29
|
+
}
|
|
30
|
+
});
|
|
26
31
|
if (Array.isArray(formData)) {
|
|
27
32
|
return Object.keys(data).map((key) => data[key]);
|
|
28
33
|
}
|
|
@@ -36,7 +41,13 @@ export function getUsedFormData(formData, fields) {
|
|
|
36
41
|
*/
|
|
37
42
|
// oxlint-disable-next-line typescript/no-deprecated
|
|
38
43
|
export function getFieldNames(pathSchema, formData) {
|
|
39
|
-
const formValueHasData = (value, isLeaf) =>
|
|
44
|
+
const formValueHasData = (value, isLeaf) => {
|
|
45
|
+
if (typeof value !== 'object' || value === null) {
|
|
46
|
+
return true;
|
|
47
|
+
}
|
|
48
|
+
const isEmptyValue = Array.isArray(value) ? value.length === 0 : Object.keys(value).length === 0;
|
|
49
|
+
return isEmptyValue || isLeaf;
|
|
50
|
+
};
|
|
40
51
|
const getAllPaths = (_obj, acc = [], paths = [[]]) => {
|
|
41
52
|
const objKeys = Object.keys(_obj);
|
|
42
53
|
objKeys.forEach((key) => {
|
|
@@ -53,7 +64,7 @@ export function getFieldNames(pathSchema, formData) {
|
|
|
53
64
|
}
|
|
54
65
|
else if (key === NAME_KEY && data !== '') {
|
|
55
66
|
paths.forEach((path) => {
|
|
56
|
-
const formValue =
|
|
67
|
+
const formValue = getByPath(formData, path);
|
|
57
68
|
const isLeaf = objKeys.length === 1;
|
|
58
69
|
// adds path to fieldNames if it points to a value or an empty object/array which is not a leaf
|
|
59
70
|
if (formValueHasData(formValue, isLeaf) ||
|
|
@@ -74,7 +85,7 @@ export function getFieldNames(pathSchema, formData) {
|
|
|
74
85
|
* @returns - True if the value is considered empty, false otherwise
|
|
75
86
|
*/
|
|
76
87
|
export function isValueEmpty(value) {
|
|
77
|
-
if (
|
|
88
|
+
if (value == null || value === '') {
|
|
78
89
|
return true;
|
|
79
90
|
}
|
|
80
91
|
if (Array.isArray(value)) {
|
|
@@ -129,7 +140,7 @@ export default function omitExtraData(validator, schema, rootSchema = {}, formDa
|
|
|
129
140
|
return isObject(schemaDef);
|
|
130
141
|
}
|
|
131
142
|
/** Copies schema-defined properties from `source` into `target`, applying `omit` recursively for
|
|
132
|
-
* each value. Handles `properties`, `patternProperties`,
|
|
143
|
+
* each value. Handles `properties`, `patternProperties`, and `additionalProperties`.
|
|
133
144
|
* Optional object-valued properties are pruned when every key in the filtered result is both
|
|
134
145
|
* optional (per the inner schema's `required`) and empty (per `isValueEmpty`). This preserves
|
|
135
146
|
* optional objects whose required children have empty values, while still dropping objects whose
|
|
@@ -143,9 +154,8 @@ export default function omitExtraData(validator, schema, rootSchema = {}, formDa
|
|
|
143
154
|
* @returns - `target` after all schema-defined properties have been processed
|
|
144
155
|
*/
|
|
145
156
|
function handleObject(childSchema, source, target) {
|
|
146
|
-
|
|
147
|
-
const
|
|
148
|
-
const requiredSet = new Set((_a = childSchema.required) !== null && _a !== void 0 ? _a : []);
|
|
157
|
+
const { properties, additionalProperties, patternProperties } = childSchema;
|
|
158
|
+
const requiredSet = new Set(childSchema.required ?? []);
|
|
149
159
|
/** Recursively omits extra data from `value` via `omit`, then conditionally writes the result to
|
|
150
160
|
* `target[key]`. Optional object-valued properties are dropped when every key in the filtered
|
|
151
161
|
* result is both optional (within the inner schema's `required` list) and has an empty value per
|
|
@@ -160,7 +170,6 @@ export default function omitExtraData(validator, schema, rootSchema = {}, formDa
|
|
|
160
170
|
* @param [required=false] - When true the property is never pruned regardless of its filtered value
|
|
161
171
|
*/
|
|
162
172
|
function setProperty(key, schemaDef, value, required = false) {
|
|
163
|
-
var _a;
|
|
164
173
|
const v = omit(schemaDef, value, target[key]);
|
|
165
174
|
if (!required && isObject(v)) {
|
|
166
175
|
// Resolve $ref so we can inspect the effective required list for the inner schema.
|
|
@@ -168,7 +177,7 @@ export default function omitExtraData(validator, schema, rootSchema = {}, formDa
|
|
|
168
177
|
if (sd.$ref !== undefined) {
|
|
169
178
|
sd = findSchemaDefinition(sd.$ref, rootSchema);
|
|
170
179
|
}
|
|
171
|
-
const innerRequired = new Set(
|
|
180
|
+
const innerRequired = new Set(sd.required ?? []);
|
|
172
181
|
// Drop this optional object when every key in v is both optional in the inner schema
|
|
173
182
|
// and has an empty value. Vacuously true for {} so empty objects are always dropped.
|
|
174
183
|
const shouldDrop = Object.entries(v).every(([k, val]) => !innerRequired.has(k) && isValueEmpty(val));
|
|
@@ -194,7 +203,7 @@ export default function omitExtraData(validator, schema, rootSchema = {}, formDa
|
|
|
194
203
|
new RegExp(pattern),
|
|
195
204
|
schemaDef,
|
|
196
205
|
]);
|
|
197
|
-
const knownProperties = new Set(Object.keys(properties
|
|
206
|
+
const knownProperties = new Set(Object.keys(properties ?? {}));
|
|
198
207
|
for (const [key, value] of Object.entries(source)) {
|
|
199
208
|
if (!knownProperties.has(key)) {
|
|
200
209
|
const matched = patterns.find(([re]) => re.test(key));
|
|
@@ -217,7 +226,7 @@ export default function omitExtraData(validator, schema, rootSchema = {}, formDa
|
|
|
217
226
|
}
|
|
218
227
|
}
|
|
219
228
|
else {
|
|
220
|
-
const knownProperties = new Set(Object.keys(properties
|
|
229
|
+
const knownProperties = new Set(Object.keys(properties ?? {}));
|
|
221
230
|
for (const [key, value] of Object.entries(source)) {
|
|
222
231
|
if (!knownProperties.has(key)) {
|
|
223
232
|
setProperty(key, addlSchema, value);
|
|
@@ -225,45 +234,51 @@ export default function omitExtraData(validator, schema, rootSchema = {}, formDa
|
|
|
225
234
|
}
|
|
226
235
|
}
|
|
227
236
|
}
|
|
228
|
-
// When propertyNames is present, the schema only constrains key names — all source keys are valid.
|
|
229
|
-
if (propertyNames !== undefined) {
|
|
230
|
-
for (const [key, value] of Object.entries(source)) {
|
|
231
|
-
// oxlint-disable-next-line no-param-reassign
|
|
232
|
-
target[key] = value;
|
|
233
|
-
}
|
|
234
|
-
}
|
|
235
237
|
return target;
|
|
236
238
|
}
|
|
237
239
|
/** Filters array elements from `source` into `target` according to `schema.items` and
|
|
238
|
-
* `schema.additionalItems`.
|
|
239
|
-
*
|
|
240
|
-
* For
|
|
240
|
+
* `schema.additionalItems`. Only called when `items` is defined (guarded in `omit`). Uses index
|
|
241
|
+
* assignment (not push) so a pre-populated `target` from a prior branch is overwritten rather than
|
|
242
|
+
* appended to, preventing item duplication. For tuple schemas (`items` is an array) elements up to
|
|
243
|
+
* `min(items.length, source.length)` are filtered by their per-index schema; elements beyond the
|
|
244
|
+
* tuple are covered by `additionalItems` when present, or the target is truncated when absent.
|
|
245
|
+
* For list schemas (`items` is a single schema) every source element is filtered and `target.length`
|
|
246
|
+
* is set to `source.length`.
|
|
241
247
|
*
|
|
242
248
|
* @param childSchema - The array schema describing `items` and optionally `additionalItems`
|
|
243
249
|
* @param source - The source array to read elements from
|
|
244
|
-
* @param target - The accumulator array to
|
|
245
|
-
* @returns - `target` after all applicable source elements have been
|
|
250
|
+
* @param target - The accumulator array to write filtered elements into
|
|
251
|
+
* @returns - `target` after all applicable source elements have been written
|
|
246
252
|
*/
|
|
247
253
|
function handleArray(childSchema, source, target) {
|
|
248
254
|
const { items, additionalItems } = childSchema;
|
|
249
|
-
if (items
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
255
|
+
if (Array.isArray(items)) {
|
|
256
|
+
const tupleLength = Math.min(items.length, source.length);
|
|
257
|
+
let i = 0;
|
|
258
|
+
for (; i < tupleLength; i += 1) {
|
|
259
|
+
// oxlint-disable-next-line no-param-reassign
|
|
260
|
+
target[i] = omit(items[i], source[i]);
|
|
254
261
|
}
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
262
|
+
// Without additionalItems, truncate at the tuple boundary to drop any pre-existing items.
|
|
263
|
+
if (!additionalItems) {
|
|
264
|
+
// oxlint-disable-next-line no-param-reassign
|
|
265
|
+
target.length = tupleLength;
|
|
266
|
+
return target;
|
|
267
|
+
}
|
|
268
|
+
for (; i < source.length; i += 1) {
|
|
269
|
+
// oxlint-disable-next-line no-param-reassign
|
|
270
|
+
target[i] = omit(additionalItems, source[i]);
|
|
259
271
|
}
|
|
260
272
|
}
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
target
|
|
273
|
+
else {
|
|
274
|
+
for (let i = 0; i < source.length; i += 1) {
|
|
275
|
+
// oxlint-disable-next-line no-param-reassign
|
|
276
|
+
target[i] = omit(items, source[i]);
|
|
265
277
|
}
|
|
266
278
|
}
|
|
279
|
+
// Truncate any pre-existing items beyond the source length.
|
|
280
|
+
// oxlint-disable-next-line no-param-reassign
|
|
281
|
+
target.length = source.length;
|
|
267
282
|
return target;
|
|
268
283
|
}
|
|
269
284
|
/** Applies the `if/then/else` conditional keywords from `schema` to `target`. When `schema.if` is
|
|
@@ -287,7 +302,7 @@ export default function omitExtraData(validator, schema, rootSchema = {}, formDa
|
|
|
287
302
|
? validator.isValid(condition, source, rootSchema)
|
|
288
303
|
: condition;
|
|
289
304
|
const branch = isThenBranch ? then : otherwise;
|
|
290
|
-
return branch === undefined ? target : omit(branch, source, target);
|
|
305
|
+
return branch === undefined ? target : omit(branch, source, target, false);
|
|
291
306
|
}
|
|
292
307
|
/** Applies the best-matching `oneOf` option to `source`, merging the result into `target`. When
|
|
293
308
|
* `oneOf` is not an array or the schema represents a select widget (enum-driven), `target` is
|
|
@@ -316,7 +331,7 @@ export default function omitExtraData(validator, schema, rootSchema = {}, formDa
|
|
|
316
331
|
const resolved = isObject(winning)
|
|
317
332
|
? resolveAllReferences(winning, rootSchema, [])
|
|
318
333
|
: scoringOptions[bestIndex];
|
|
319
|
-
return omit(resolved, source, target);
|
|
334
|
+
return omit(resolved, source, target, false);
|
|
320
335
|
}
|
|
321
336
|
/** Applies `anyOf` branches from `schema` to `source`, merging results into `target`. When `anyOf`
|
|
322
337
|
* is absent or not an array, `target` is returned unchanged. For undefined or empty sources (so that
|
|
@@ -339,7 +354,7 @@ export default function omitExtraData(validator, schema, rootSchema = {}, formDa
|
|
|
339
354
|
(isObject(source) && Object.keys(source).length === 0)) {
|
|
340
355
|
let result = target;
|
|
341
356
|
for (const branch of anyOf) {
|
|
342
|
-
result = omit(branch, source, result);
|
|
357
|
+
result = omit(branch, source, result, false);
|
|
343
358
|
}
|
|
344
359
|
return result;
|
|
345
360
|
}
|
|
@@ -364,7 +379,7 @@ export default function omitExtraData(validator, schema, rootSchema = {}, formDa
|
|
|
364
379
|
for (const [key, deps] of Object.entries(dependencies)) {
|
|
365
380
|
// Skip property dependencies (string arrays); only process schema dependencies.
|
|
366
381
|
if (key in source && !Array.isArray(deps)) {
|
|
367
|
-
result = omit(deps, source, result);
|
|
382
|
+
result = omit(deps, source, result, false);
|
|
368
383
|
}
|
|
369
384
|
}
|
|
370
385
|
return result;
|
|
@@ -372,24 +387,28 @@ export default function omitExtraData(validator, schema, rootSchema = {}, formDa
|
|
|
372
387
|
/** Core recursive filter. Resolves `$ref`s, merges `allOf`, then delegates to the type-specific
|
|
373
388
|
* handlers (`handleObject`, `handleArray`) and keyword handlers (`handleAnyOf`, `handleOneOf`,
|
|
374
389
|
* `handleConditions`, `handleDependencies`). Returns `undefined` when `source` is undefined or
|
|
375
|
-
* `schemaDef` is `false`;
|
|
390
|
+
* `schemaDef` is `false`; when `schemaDef` is `true` or empty returns `target ?? source` (when
|
|
391
|
+
* `useSourceAsFallback` is true) or `target` (when false) to avoid aliasing `source` as the
|
|
392
|
+
* accumulator across multiple compositional branches.
|
|
376
393
|
*
|
|
377
394
|
* @param schemaDef - The schema (or boolean shorthand) to filter `source` against
|
|
378
395
|
* @param source - The raw form data value to filter
|
|
379
396
|
* @param [target] - An optional accumulator carrying results from prior oneOf/anyOf processing
|
|
397
|
+
* @param [useSourceAsFallback=true] - When false a permissive schema (`true`/`{}`) returns `target`
|
|
398
|
+
* rather than `source`, preventing compositional branches from aliasing the accumulator to `source`
|
|
380
399
|
* @returns - The filtered value, or `undefined` when the schema rejects the value
|
|
381
400
|
*/
|
|
382
|
-
function omit(schemaDef, source, target) {
|
|
401
|
+
function omit(schemaDef, source, target, useSourceAsFallback = true) {
|
|
383
402
|
if (source === undefined || schemaDef === false) {
|
|
384
403
|
return undefined;
|
|
385
404
|
}
|
|
386
|
-
if (schemaDef === true ||
|
|
387
|
-
return source;
|
|
405
|
+
if (schemaDef === true || !schemaDef || Object.keys(schemaDef).length === 0) {
|
|
406
|
+
return target ?? (useSourceAsFallback ? source : undefined);
|
|
388
407
|
}
|
|
389
408
|
let localSchema = schemaDef;
|
|
390
409
|
const { $ref: ref, allOf } = localSchema;
|
|
391
410
|
if (ref !== undefined) {
|
|
392
|
-
return omit(findSchemaDefinition(ref, rootSchema), source, target);
|
|
411
|
+
return omit(findSchemaDefinition(ref, rootSchema), source, target, useSourceAsFallback);
|
|
393
412
|
}
|
|
394
413
|
if (allOf) {
|
|
395
414
|
localSchema = doMergeAllOf(localSchema, experimental_customMergeAllOf);
|
|
@@ -401,7 +420,7 @@ export default function omitExtraData(validator, schema, rootSchema = {}, formDa
|
|
|
401
420
|
if (remainingAllOf) {
|
|
402
421
|
for (let i = 0; i < remainingAllOf.length; i++) {
|
|
403
422
|
// oxlint-disable-next-line no-param-reassign
|
|
404
|
-
target = omit(remainingAllOf[i], source, target);
|
|
423
|
+
target = omit(remainingAllOf[i], source, target, false);
|
|
405
424
|
}
|
|
406
425
|
}
|
|
407
426
|
}
|
|
@@ -417,12 +436,29 @@ export default function omitExtraData(validator, schema, rootSchema = {}, formDa
|
|
|
417
436
|
if (!Array.isArray(source)) {
|
|
418
437
|
return undefined;
|
|
419
438
|
}
|
|
420
|
-
|
|
439
|
+
if (localSchema.items !== undefined) {
|
|
440
|
+
filtered = handleArray(localSchema, source, Array.isArray(filtered) ? filtered : []);
|
|
441
|
+
}
|
|
421
442
|
}
|
|
422
|
-
|
|
423
|
-
|
|
443
|
+
// Post-prune after conditions (oneOf/anyOf/if-then) but BEFORE dependencies: keys added by
|
|
444
|
+
// dependency sub-schemas are legitimate extensions of the allowed property set and must not be
|
|
445
|
+
// pruned. Keys added only by winning conditional branches are still removed here so the result
|
|
446
|
+
// honours additionalProperties:false.
|
|
447
|
+
const afterConditions = handleConditions(localSchema, source, filtered);
|
|
448
|
+
if (localSchema.additionalProperties === false && isObjectValue(afterConditions)) {
|
|
449
|
+
const knownKeys = new Set(Object.keys(localSchema.properties ?? {}));
|
|
450
|
+
const patterns = localSchema.patternProperties
|
|
451
|
+
? Object.keys(localSchema.patternProperties).map((p) => new RegExp(p))
|
|
452
|
+
: [];
|
|
453
|
+
for (const key of Object.keys(afterConditions)) {
|
|
454
|
+
if (!knownKeys.has(key) && !patterns.some((re) => re.test(key))) {
|
|
455
|
+
// oxlint-disable-next-line no-param-reassign
|
|
456
|
+
delete afterConditions[key];
|
|
457
|
+
}
|
|
458
|
+
}
|
|
424
459
|
}
|
|
425
|
-
|
|
460
|
+
const result = handleDependencies(localSchema, source, afterConditions);
|
|
461
|
+
return result ?? (useSourceAsFallback ? source : undefined);
|
|
426
462
|
}
|
|
427
463
|
return omit(schema, formData);
|
|
428
464
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"omitExtraData.js","sourceRoot":"","sources":["../../src/schema/omitExtraData.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"omitExtraData.js","sourceRoot":"","sources":["../../src/schema/omitExtraData.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { Experimental_CustomMergeAllOf, FormContextType, RJSFSchema, StrictRJSFSchema, ValidatorType } from '../types.
|
|
1
|
+
import type { Experimental_CustomMergeAllOf, FormContextType, RJSFSchema, StrictRJSFSchema, ValidatorType } from '../types.ts';
|
|
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.
|
|
@@ -220,3 +220,4 @@ export declare function withDependentSchema<T = any, S extends StrictRJSFSchema
|
|
|
220
220
|
* @returns - Either an array containing the best matching option or all options if `expandAllBranches` is true
|
|
221
221
|
*/
|
|
222
222
|
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[];
|
|
223
|
+
//# sourceMappingURL=retrieveSchema.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"retrieveSchema.d.ts","sourceRoot":"","sources":["../../src/schema/retrieveSchema.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,20 +1,13 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
import
|
|
5
|
-
import
|
|
6
|
-
import
|
|
7
|
-
import
|
|
8
|
-
import
|
|
9
|
-
import
|
|
10
|
-
import
|
|
11
|
-
import findSchemaDefinition, { splitKeyElementFromObject } from '../findSchemaDefinition.js';
|
|
12
|
-
import getDiscriminatorFieldFromSchema from '../getDiscriminatorFieldFromSchema.js';
|
|
13
|
-
import guessType from '../guessType.js';
|
|
14
|
-
import isObject from '../isObject.js';
|
|
15
|
-
import mergeSchemas from '../mergeSchemas.js';
|
|
16
|
-
import getFirstMatchingOption from './getFirstMatchingOption.js';
|
|
17
|
-
import shallowAllOfMerge from './shallowAllOfMerge.js';
|
|
1
|
+
import { ADDITIONAL_PROPERTIES_KEY, ADDITIONAL_PROPERTY_FLAG, ALL_OF_KEY, ANY_OF_KEY, DEPENDENCIES_KEY, ID_KEY, IF_KEY, ITEMS_KEY, ONE_OF_KEY, PATTERN_PROPERTIES_KEY, PROPERTIES_KEY, REF_KEY, RJSF_REF_CYCLE_KEY, RJSF_REF_KEY, } from "../constants.js";
|
|
2
|
+
import deepEquals from "../deepEquals.js";
|
|
3
|
+
import findSchemaDefinition, { splitKeyElementFromObject } from "../findSchemaDefinition.js";
|
|
4
|
+
import getDiscriminatorFieldFromSchema from "../getDiscriminatorFieldFromSchema.js";
|
|
5
|
+
import guessType from "../guessType.js";
|
|
6
|
+
import isObject from "../isObject.js";
|
|
7
|
+
import mergeSchemas from "../mergeSchemas.js";
|
|
8
|
+
import { getByPath } from "../pathUtils.js";
|
|
9
|
+
import getFirstMatchingOption from "./getFirstMatchingOption.js";
|
|
10
|
+
import shallowAllOfMerge from "./shallowAllOfMerge.js";
|
|
18
11
|
/** Retrieves an expanded schema that has had all of its conditions, additional properties, references and dependencies
|
|
19
12
|
* resolved and merged into the `schema` given a `validator`, `rootSchema` and `rawFormData` that is used to do the
|
|
20
13
|
* potentially recursive resolution.
|
|
@@ -100,7 +93,7 @@ export function getAllPermutationsOfXxxOf(listOfLists) {
|
|
|
100
93
|
const allPermutations = listOfLists.reduce((permutations, list) => {
|
|
101
94
|
// When there are more than one set of schemas for a row, duplicate the set of permutations and add in the values
|
|
102
95
|
if (list.length > 1) {
|
|
103
|
-
return list.flatMap((element) =>
|
|
96
|
+
return list.flatMap((element) => permutations.map((permutation) => [...permutation, element]));
|
|
104
97
|
}
|
|
105
98
|
// Otherwise just push in the single value into the current set of permutations
|
|
106
99
|
permutations.forEach((permutation) => permutation.push(list[0]));
|
|
@@ -115,13 +108,8 @@ export function getAllPermutationsOfXxxOf(listOfLists) {
|
|
|
115
108
|
* @returns - The subset of 'patternProperties' specifications that match the given 'key'
|
|
116
109
|
*/
|
|
117
110
|
export function getMatchingPatternProperties(schema, key) {
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
.reduce((obj, pattern) => {
|
|
121
|
-
// Pass the pattern using the `[]` index notation so that any `.` in the pattern are not used as a dotted path
|
|
122
|
-
set(obj, [pattern], schema.patternProperties[pattern]);
|
|
123
|
-
return obj;
|
|
124
|
-
}, {});
|
|
111
|
+
const patternProperties = schema.patternProperties ?? {};
|
|
112
|
+
return Object.fromEntries(Object.entries(patternProperties).filter(([pattern]) => RegExp(pattern).test(key)));
|
|
125
113
|
}
|
|
126
114
|
/** Resolves references and dependencies within a schema and its 'allOf' children. Passes the `expandAllBranches` flag
|
|
127
115
|
* down to the `retrieveSchemaInternal()`, `resolveReference()` and `resolveDependencies()` helper calls. If
|
|
@@ -219,16 +207,21 @@ export function resolveAllReferences(schema, rootSchema, recurseList, baseURI, r
|
|
|
219
207
|
}
|
|
220
208
|
if (PROPERTIES_KEY in resolvedSchema) {
|
|
221
209
|
const childrenLists = [];
|
|
222
|
-
const updatedProps =
|
|
210
|
+
const updatedProps = {};
|
|
211
|
+
for (const [key, value] of Object.entries(resolvedSchema[PROPERTIES_KEY] ?? {})) {
|
|
223
212
|
const childList = [...recurseList];
|
|
224
213
|
// Mark cycles only when NOT in resolveAnyOfOrOneOfRefs mode. When resolveAnyOfOrOneOfRefs=true
|
|
225
214
|
// (e.g. from ObjectField), options are resolved against a shared recurseList that accumulates
|
|
226
215
|
// refs across branches, causing false positives. In simple (non-anyOf) resolution, a $ref cycle
|
|
227
216
|
// in an object property always causes an infinite render loop and must be caught.
|
|
228
|
-
|
|
217
|
+
updatedProps[key] = resolveAllReferences(value, rootSchema, childList, currentBaseURI, resolveAnyOfOrOneOfRefs, !resolveAnyOfOrOneOfRefs);
|
|
229
218
|
childrenLists.push(childList);
|
|
230
|
-
}
|
|
231
|
-
|
|
219
|
+
}
|
|
220
|
+
for (const ref of new Set(childrenLists.flat())) {
|
|
221
|
+
if (!recurseList.includes(ref)) {
|
|
222
|
+
recurseList.push(ref);
|
|
223
|
+
}
|
|
224
|
+
}
|
|
232
225
|
resolvedSchema = { ...resolvedSchema, [PROPERTIES_KEY]: updatedProps };
|
|
233
226
|
}
|
|
234
227
|
if (ITEMS_KEY in resolvedSchema &&
|
|
@@ -284,8 +277,8 @@ export function stubExistingAdditionalProperties(validator, theSchema, rootSchem
|
|
|
284
277
|
}
|
|
285
278
|
if (PATTERN_PROPERTIES_KEY in schema) {
|
|
286
279
|
const matchingProperties = getMatchingPatternProperties(schema, key);
|
|
287
|
-
if (
|
|
288
|
-
schema.properties[key] = retrieveSchema(validator, { [ALL_OF_KEY]: Object.values(matchingProperties) }, rootSchema,
|
|
280
|
+
if (Object.keys(matchingProperties).length > 0) {
|
|
281
|
+
schema.properties[key] = retrieveSchema(validator, { [ALL_OF_KEY]: Object.values(matchingProperties) }, rootSchema, formData[key], experimental_customMergeAllOf);
|
|
289
282
|
schema.properties[key][ADDITIONAL_PROPERTY_FLAG] = true;
|
|
290
283
|
return;
|
|
291
284
|
}
|
|
@@ -294,7 +287,7 @@ export function stubExistingAdditionalProperties(validator, theSchema, rootSchem
|
|
|
294
287
|
let additionalProperties;
|
|
295
288
|
if (typeof schema.additionalProperties !== 'boolean') {
|
|
296
289
|
if (REF_KEY in schema.additionalProperties) {
|
|
297
|
-
additionalProperties = retrieveSchema(validator, { [REF_KEY]:
|
|
290
|
+
additionalProperties = retrieveSchema(validator, { [REF_KEY]: schema.additionalProperties[REF_KEY] }, rootSchema, formData[key], experimental_customMergeAllOf);
|
|
298
291
|
}
|
|
299
292
|
else if ('type' in schema.additionalProperties) {
|
|
300
293
|
additionalProperties = { ...schema.additionalProperties };
|
|
@@ -306,11 +299,11 @@ export function stubExistingAdditionalProperties(validator, theSchema, rootSchem
|
|
|
306
299
|
};
|
|
307
300
|
}
|
|
308
301
|
else {
|
|
309
|
-
additionalProperties = { type: guessType(
|
|
302
|
+
additionalProperties = { type: guessType(formData[key]) };
|
|
310
303
|
}
|
|
311
304
|
}
|
|
312
305
|
else {
|
|
313
|
-
additionalProperties = { type: guessType(
|
|
306
|
+
additionalProperties = { type: guessType(formData[key]) };
|
|
314
307
|
}
|
|
315
308
|
// The type of our new key should match the additionalProperties value;
|
|
316
309
|
schema.properties[key] = additionalProperties;
|
|
@@ -357,7 +350,6 @@ export function retrieveSchemaInternal(validator, schema, rootSchema, rawFormDat
|
|
|
357
350
|
}
|
|
358
351
|
const resolvedSchemas = resolveSchema(validator, schema, rootSchema, expandAllBranches, recurseList, rawFormData, experimental_customMergeAllOf, resolveAnyOfOrOneOfRefs);
|
|
359
352
|
return resolvedSchemas.flatMap((s) => {
|
|
360
|
-
var _a;
|
|
361
353
|
let resolvedSchema = s;
|
|
362
354
|
if (IF_KEY in resolvedSchema) {
|
|
363
355
|
return resolveCondition(validator, resolvedSchema, rootSchema, expandAllBranches, recurseList, rawFormData, experimental_customMergeAllOf);
|
|
@@ -374,7 +366,7 @@ export function retrieveSchemaInternal(validator, schema, rootSchema, rawFormDat
|
|
|
374
366
|
// Collect Symbol-keyed properties from allOf subschemas before merging; shallowAllOfMerge
|
|
375
367
|
// (external library) only operates on string keys and will drop them.
|
|
376
368
|
const allOfSymbols = {};
|
|
377
|
-
|
|
369
|
+
resolvedSchema.allOf?.forEach((allOfItem) => {
|
|
378
370
|
if (typeof allOfItem === 'object' && allOfItem.contains) {
|
|
379
371
|
withContainsSchemas.push(allOfItem);
|
|
380
372
|
}
|
|
@@ -411,8 +403,8 @@ export function retrieveSchemaInternal(validator, schema, rootSchema, rawFormDat
|
|
|
411
403
|
if (PROPERTIES_KEY in resolvedSchema && PATTERN_PROPERTIES_KEY in resolvedSchema) {
|
|
412
404
|
resolvedSchema = Object.keys(resolvedSchema.properties).reduce((acc, key) => {
|
|
413
405
|
const matchingProperties = getMatchingPatternProperties(acc, key);
|
|
414
|
-
if (
|
|
415
|
-
acc.properties[key] = retrieveSchema(validator, { allOf: [acc.properties[key], ...Object.values(matchingProperties)] }, rootSchema,
|
|
406
|
+
if (Object.keys(matchingProperties).length > 0) {
|
|
407
|
+
acc.properties[key] = retrieveSchema(validator, { allOf: [acc.properties[key], ...Object.values(matchingProperties)] }, rootSchema, getByPath(rawFormData, key), experimental_customMergeAllOf);
|
|
416
408
|
}
|
|
417
409
|
return acc;
|
|
418
410
|
}, {
|
|
@@ -531,7 +523,7 @@ export function processDependencies(validator, dependencies, resolvedSchema, roo
|
|
|
531
523
|
let schemas = [resolvedSchema];
|
|
532
524
|
// Process dependencies updating the local schema properties as appropriate.
|
|
533
525
|
for (const dependencyKey in dependencies) {
|
|
534
|
-
if ((expandAllBranches ||
|
|
526
|
+
if ((expandAllBranches || getByPath(formData, dependencyKey) !== undefined) &&
|
|
535
527
|
(!resolvedSchema.properties || dependencyKey in resolvedSchema.properties)) {
|
|
536
528
|
const [remainingDependencies, dependencyValue] = splitKeyElementFromObject(dependencyKey, dependencies);
|
|
537
529
|
if (Array.isArray(dependencyValue)) {
|
|
@@ -613,7 +605,7 @@ export function withDependentSchema(validator, schema, rootSchema, dependencyKey
|
|
|
613
605
|
*/
|
|
614
606
|
export function withExactlyOneSubschema(validator, schema, rootSchema, dependencyKey, oneOf, expandAllBranches, recurseList, formData, experimental_customMergeAllOf) {
|
|
615
607
|
const validSubschemas = oneOf.filter((subschema) => {
|
|
616
|
-
if (typeof subschema === 'boolean' || !
|
|
608
|
+
if (typeof subschema === 'boolean' || !subschema?.properties) {
|
|
617
609
|
return false;
|
|
618
610
|
}
|
|
619
611
|
const { [dependencyKey]: conditionPropertySchema } = subschema.properties;
|