@rjsf/utils 6.0.0-alpha.0 → 6.0.0-beta.10

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.
Files changed (279) hide show
  1. package/dist/index.js +1347 -642
  2. package/dist/index.js.map +4 -4
  3. package/dist/utils.esm.js +1324 -619
  4. package/dist/utils.esm.js.map +4 -4
  5. package/dist/utils.umd.js +1266 -590
  6. package/lib/ErrorSchemaBuilder.d.ts +8 -4
  7. package/lib/ErrorSchemaBuilder.js +10 -8
  8. package/lib/ErrorSchemaBuilder.js.map +1 -1
  9. package/lib/allowAdditionalItems.d.ts +1 -1
  10. package/lib/allowAdditionalItems.js +1 -1
  11. package/lib/allowAdditionalItems.js.map +1 -1
  12. package/lib/asNumber.js.map +1 -1
  13. package/lib/canExpand.d.ts +2 -2
  14. package/lib/canExpand.js +2 -2
  15. package/lib/canExpand.js.map +1 -1
  16. package/lib/constIsAjvDataReference.d.ts +9 -0
  17. package/lib/constIsAjvDataReference.js +15 -0
  18. package/lib/constIsAjvDataReference.js.map +1 -0
  19. package/lib/constants.d.ts +15 -3
  20. package/lib/constants.js +15 -3
  21. package/lib/constants.js.map +1 -1
  22. package/lib/createErrorHandler.d.ts +1 -1
  23. package/lib/createErrorHandler.js +2 -2
  24. package/lib/createErrorHandler.js.map +1 -1
  25. package/lib/createSchemaUtils.d.ts +3 -2
  26. package/lib/createSchemaUtils.js +56 -46
  27. package/lib/createSchemaUtils.js.map +1 -1
  28. package/lib/dataURItoBlob.js.map +1 -1
  29. package/lib/dateRangeOptions.d.ts +1 -1
  30. package/lib/dateRangeOptions.js +1 -1
  31. package/lib/dateRangeOptions.js.map +1 -1
  32. package/lib/deepEquals.js +1 -1
  33. package/lib/deepEquals.js.map +1 -1
  34. package/lib/englishStringTranslator.d.ts +1 -1
  35. package/lib/englishStringTranslator.js +1 -1
  36. package/lib/enumOptionsDeselectValue.d.ts +1 -1
  37. package/lib/enumOptionsDeselectValue.js +4 -4
  38. package/lib/enumOptionsDeselectValue.js.map +1 -1
  39. package/lib/enumOptionsIndexForValue.d.ts +1 -1
  40. package/lib/enumOptionsIndexForValue.js +1 -1
  41. package/lib/enumOptionsIndexForValue.js.map +1 -1
  42. package/lib/enumOptionsIsSelected.d.ts +1 -1
  43. package/lib/enumOptionsIsSelected.js +3 -3
  44. package/lib/enumOptionsIsSelected.js.map +1 -1
  45. package/lib/enumOptionsSelectValue.d.ts +1 -1
  46. package/lib/enumOptionsSelectValue.js +2 -2
  47. package/lib/enumOptionsSelectValue.js.map +1 -1
  48. package/lib/enumOptionsValueForIndex.d.ts +1 -1
  49. package/lib/enumOptionsValueForIndex.js.map +1 -1
  50. package/lib/enums.d.ts +2 -0
  51. package/lib/enums.js +2 -0
  52. package/lib/enums.js.map +1 -1
  53. package/lib/findSchemaDefinition.d.ts +5 -3
  54. package/lib/findSchemaDefinition.js +54 -11
  55. package/lib/findSchemaDefinition.js.map +1 -1
  56. package/lib/getChangedFields.d.ts +17 -0
  57. package/lib/getChangedFields.js +42 -0
  58. package/lib/getChangedFields.js.map +1 -0
  59. package/lib/getDateElementProps.d.ts +1 -1
  60. package/lib/getDateElementProps.js.map +1 -1
  61. package/lib/getDiscriminatorFieldFromSchema.d.ts +1 -1
  62. package/lib/getDiscriminatorFieldFromSchema.js +4 -3
  63. package/lib/getDiscriminatorFieldFromSchema.js.map +1 -1
  64. package/lib/getInputProps.d.ts +1 -1
  65. package/lib/getInputProps.js +4 -1
  66. package/lib/getInputProps.js.map +1 -1
  67. package/lib/getOptionMatchingSimpleDiscriminator.d.ts +1 -1
  68. package/lib/getOptionMatchingSimpleDiscriminator.js +2 -2
  69. package/lib/getOptionMatchingSimpleDiscriminator.js.map +1 -1
  70. package/lib/getSchemaType.d.ts +2 -1
  71. package/lib/getSchemaType.js +3 -2
  72. package/lib/getSchemaType.js.map +1 -1
  73. package/lib/getSubmitButtonOptions.d.ts +1 -1
  74. package/lib/getSubmitButtonOptions.js +2 -2
  75. package/lib/getSubmitButtonOptions.js.map +1 -1
  76. package/lib/getTemplate.d.ts +1 -1
  77. package/lib/getTemplate.js +9 -0
  78. package/lib/getTemplate.js.map +1 -1
  79. package/lib/getTestIds.d.ts +17 -0
  80. package/lib/getTestIds.js +34 -0
  81. package/lib/getTestIds.js.map +1 -0
  82. package/lib/getUiOptions.d.ts +1 -1
  83. package/lib/getUiOptions.js +2 -2
  84. package/lib/getUiOptions.js.map +1 -1
  85. package/lib/getWidget.d.ts +1 -1
  86. package/lib/getWidget.js +3 -3
  87. package/lib/getWidget.js.map +1 -1
  88. package/lib/guessType.d.ts +1 -1
  89. package/lib/guessType.js.map +1 -1
  90. package/lib/hasWidget.d.ts +1 -1
  91. package/lib/hasWidget.js +1 -1
  92. package/lib/hasWidget.js.map +1 -1
  93. package/lib/hashForSchema.d.ts +23 -1
  94. package/lib/hashForSchema.js +24 -6
  95. package/lib/hashForSchema.js.map +1 -1
  96. package/lib/idGenerators.d.ts +8 -1
  97. package/lib/idGenerators.js +11 -2
  98. package/lib/idGenerators.js.map +1 -1
  99. package/lib/index.d.ts +63 -60
  100. package/lib/index.js +63 -60
  101. package/lib/index.js.map +1 -1
  102. package/lib/isConstant.d.ts +1 -1
  103. package/lib/isConstant.js +1 -1
  104. package/lib/isCustomWidget.d.ts +1 -1
  105. package/lib/isCustomWidget.js +1 -1
  106. package/lib/isFixedItems.d.ts +1 -1
  107. package/lib/isFixedItems.js +1 -1
  108. package/lib/isObject.d.ts +2 -2
  109. package/lib/isObject.js +11 -4
  110. package/lib/isObject.js.map +1 -1
  111. package/lib/lookupFromFormContext.d.ts +11 -0
  112. package/lib/lookupFromFormContext.js +20 -0
  113. package/lib/lookupFromFormContext.js.map +1 -0
  114. package/lib/mergeDefaultsWithFormData.d.ts +8 -2
  115. package/lib/mergeDefaultsWithFormData.js +39 -10
  116. package/lib/mergeDefaultsWithFormData.js.map +1 -1
  117. package/lib/mergeObjects.d.ts +1 -1
  118. package/lib/mergeObjects.js +1 -1
  119. package/lib/mergeObjects.js.map +1 -1
  120. package/lib/mergeSchemas.d.ts +1 -1
  121. package/lib/mergeSchemas.js +4 -4
  122. package/lib/mergeSchemas.js.map +1 -1
  123. package/lib/optionsList.d.ts +9 -7
  124. package/lib/optionsList.js +30 -19
  125. package/lib/optionsList.js.map +1 -1
  126. package/lib/orderProperties.js.map +1 -1
  127. package/lib/pad.js.map +1 -1
  128. package/lib/parseDateString.d.ts +1 -1
  129. package/lib/parseDateString.js +1 -1
  130. package/lib/parseDateString.js.map +1 -1
  131. package/lib/parser/ParserValidator.d.ts +1 -1
  132. package/lib/parser/ParserValidator.js +6 -6
  133. package/lib/parser/ParserValidator.js.map +1 -1
  134. package/lib/parser/index.d.ts +2 -2
  135. package/lib/parser/index.js +1 -1
  136. package/lib/parser/schemaParser.d.ts +2 -2
  137. package/lib/parser/schemaParser.js +6 -6
  138. package/lib/parser/schemaParser.js.map +1 -1
  139. package/lib/rangeSpec.d.ts +2 -2
  140. package/lib/rangeSpec.js.map +1 -1
  141. package/lib/replaceStringParameters.js.map +1 -1
  142. package/lib/schema/findFieldInSchema.d.ts +19 -0
  143. package/lib/schema/findFieldInSchema.js +61 -0
  144. package/lib/schema/findFieldInSchema.js.map +1 -0
  145. package/lib/schema/findSelectedOptionInXxxOf.d.ts +16 -0
  146. package/lib/schema/findSelectedOptionInXxxOf.js +34 -0
  147. package/lib/schema/findSelectedOptionInXxxOf.js.map +1 -0
  148. package/lib/schema/getClosestMatchingOption.d.ts +5 -3
  149. package/lib/schema/getClosestMatchingOption.js +28 -20
  150. package/lib/schema/getClosestMatchingOption.js.map +1 -1
  151. package/lib/schema/getDefaultFormState.d.ts +60 -13
  152. package/lib/schema/getDefaultFormState.js +316 -167
  153. package/lib/schema/getDefaultFormState.js.map +1 -1
  154. package/lib/schema/getDisplayLabel.d.ts +3 -2
  155. package/lib/schema/getDisplayLabel.js +10 -9
  156. package/lib/schema/getDisplayLabel.js.map +1 -1
  157. package/lib/schema/getFirstMatchingOption.d.ts +1 -1
  158. package/lib/schema/getFirstMatchingOption.js +70 -2
  159. package/lib/schema/getFirstMatchingOption.js.map +1 -1
  160. package/lib/schema/getFromSchema.d.ts +14 -0
  161. package/lib/schema/getFromSchema.js +39 -0
  162. package/lib/schema/getFromSchema.js.map +1 -0
  163. package/lib/schema/index.d.ts +15 -14
  164. package/lib/schema/index.js +15 -14
  165. package/lib/schema/index.js.map +1 -1
  166. package/lib/schema/isFilesArray.d.ts +3 -2
  167. package/lib/schema/isFilesArray.js +5 -4
  168. package/lib/schema/isFilesArray.js.map +1 -1
  169. package/lib/schema/isMultiSelect.d.ts +3 -2
  170. package/lib/schema/isMultiSelect.js +4 -3
  171. package/lib/schema/isMultiSelect.js.map +1 -1
  172. package/lib/schema/isSelect.d.ts +3 -2
  173. package/lib/schema/isSelect.js +5 -4
  174. package/lib/schema/isSelect.js.map +1 -1
  175. package/lib/schema/retrieveSchema.d.ts +30 -12
  176. package/lib/schema/retrieveSchema.js +153 -70
  177. package/lib/schema/retrieveSchema.js.map +1 -1
  178. package/lib/schema/sanitizeDataForNewSchema.d.ts +3 -2
  179. package/lib/schema/sanitizeDataForNewSchema.js +12 -11
  180. package/lib/schema/sanitizeDataForNewSchema.js.map +1 -1
  181. package/lib/schema/toIdSchema.d.ts +3 -2
  182. package/lib/schema/toIdSchema.js +30 -27
  183. package/lib/schema/toIdSchema.js.map +1 -1
  184. package/lib/schema/toPathSchema.d.ts +3 -2
  185. package/lib/schema/toPathSchema.js +22 -20
  186. package/lib/schema/toPathSchema.js.map +1 -1
  187. package/lib/schemaRequiresTrueValue.d.ts +1 -1
  188. package/lib/schemaRequiresTrueValue.js.map +1 -1
  189. package/lib/shouldRender.js +1 -1
  190. package/lib/toConstant.d.ts +1 -1
  191. package/lib/toConstant.js +1 -1
  192. package/lib/toConstant.js.map +1 -1
  193. package/lib/toDateString.d.ts +1 -1
  194. package/lib/toErrorList.d.ts +1 -1
  195. package/lib/toErrorList.js +2 -2
  196. package/lib/toErrorList.js.map +1 -1
  197. package/lib/toErrorSchema.d.ts +1 -1
  198. package/lib/toErrorSchema.js +2 -2
  199. package/lib/toErrorSchema.js.map +1 -1
  200. package/lib/tsconfig.tsbuildinfo +1 -1
  201. package/lib/types.d.ts +172 -142
  202. package/lib/unwrapErrorHandler.d.ts +1 -1
  203. package/lib/unwrapErrorHandler.js +1 -1
  204. package/lib/unwrapErrorHandler.js.map +1 -1
  205. package/lib/utcToLocal.js +1 -1
  206. package/lib/utcToLocal.js.map +1 -1
  207. package/lib/validationDataMerge.d.ts +1 -1
  208. package/lib/validationDataMerge.js +3 -3
  209. package/lib/validationDataMerge.js.map +1 -1
  210. package/lib/withIdRefPrefix.d.ts +1 -1
  211. package/lib/withIdRefPrefix.js +2 -2
  212. package/lib/withIdRefPrefix.js.map +1 -1
  213. package/package.json +37 -26
  214. package/src/ErrorSchemaBuilder.ts +15 -8
  215. package/src/canExpand.ts +2 -2
  216. package/src/constIsAjvDataReference.ts +17 -0
  217. package/src/constants.ts +17 -3
  218. package/src/createSchemaUtils.ts +140 -50
  219. package/src/dataURItoBlob.ts +1 -1
  220. package/src/dateRangeOptions.ts +1 -1
  221. package/src/enumOptionsDeselectValue.ts +4 -5
  222. package/src/enumOptionsIndexForValue.ts +1 -1
  223. package/src/enumOptionsIsSelected.ts +4 -5
  224. package/src/enumOptionsSelectValue.ts +1 -1
  225. package/src/enumOptionsValueForIndex.ts +1 -1
  226. package/src/enums.ts +2 -0
  227. package/src/findSchemaDefinition.ts +55 -10
  228. package/src/getChangedFields.ts +40 -0
  229. package/src/getDateElementProps.ts +2 -2
  230. package/src/getDiscriminatorFieldFromSchema.ts +2 -1
  231. package/src/getInputProps.ts +6 -2
  232. package/src/getOptionMatchingSimpleDiscriminator.ts +2 -2
  233. package/src/getSchemaType.ts +3 -2
  234. package/src/getSubmitButtonOptions.ts +1 -1
  235. package/src/getTemplate.ts +12 -1
  236. package/src/getTestIds.ts +40 -0
  237. package/src/getUiOptions.ts +2 -2
  238. package/src/getWidget.tsx +2 -2
  239. package/src/hasWidget.ts +1 -1
  240. package/src/hashForSchema.ts +26 -6
  241. package/src/idGenerators.ts +10 -0
  242. package/src/index.ts +21 -2
  243. package/src/isCustomWidget.ts +1 -1
  244. package/src/isObject.ts +12 -5
  245. package/src/labelValue.ts +2 -2
  246. package/src/lookupFromFormContext.ts +26 -0
  247. package/src/mergeDefaultsWithFormData.ts +54 -9
  248. package/src/mergeObjects.ts +24 -21
  249. package/src/optionsList.ts +31 -22
  250. package/src/parser/ParserValidator.ts +5 -5
  251. package/src/parser/schemaParser.ts +6 -6
  252. package/src/schema/findFieldInSchema.ts +138 -0
  253. package/src/schema/findSelectedOptionInXxxOf.ts +53 -0
  254. package/src/schema/getClosestMatchingOption.ts +38 -11
  255. package/src/schema/getDefaultFormState.ts +461 -193
  256. package/src/schema/getDisplayLabel.ts +7 -4
  257. package/src/schema/getFirstMatchingOption.ts +79 -4
  258. package/src/schema/getFromSchema.ts +100 -0
  259. package/src/schema/index.ts +6 -4
  260. package/src/schema/isFilesArray.ts +18 -3
  261. package/src/schema/isMultiSelect.ts +10 -4
  262. package/src/schema/isSelect.ts +5 -3
  263. package/src/schema/retrieveSchema.ts +268 -78
  264. package/src/schema/sanitizeDataForNewSchema.ts +52 -11
  265. package/src/schema/toIdSchema.ts +69 -43
  266. package/src/schema/toPathSchema.ts +49 -16
  267. package/src/toErrorList.ts +2 -2
  268. package/src/types.ts +278 -184
  269. package/src/validationDataMerge.ts +1 -1
  270. package/src/withIdRefPrefix.ts +1 -1
  271. package/LICENSE.md +0 -201
  272. package/lib/schema/getMatchingOption.d.ts +0 -14
  273. package/lib/schema/getMatchingOption.js +0 -85
  274. package/lib/schema/getMatchingOption.js.map +0 -1
  275. package/lib/schema/mergeValidationData.d.ts +0 -14
  276. package/lib/schema/mergeValidationData.js +0 -28
  277. package/lib/schema/mergeValidationData.js.map +0 -1
  278. package/src/schema/getMatchingOption.ts +0 -103
  279. package/src/schema/mergeValidationData.ts +0 -38
@@ -1,4 +1,8 @@
1
- import { ErrorSchema } from './types';
1
+ import { ErrorSchema } from './types.js';
2
+ /** Represents the type of the path which can be a string of dotted path values or a list of string or numbers where
3
+ * numbers represent array indexes/
4
+ */
5
+ export type PathType = string | (string | number)[];
2
6
  /** The `ErrorSchemaBuilder<T>` is used to build an `ErrorSchema<T>` since the definition of the `ErrorSchema` type is
3
7
  * designed for reading information rather than writing it. Use this class to add, replace or clear errors in an error
4
8
  * schema by using either dotted path or an array of path names. Once you are done building the `ErrorSchema`, you can
@@ -39,7 +43,7 @@ export default class ErrorSchemaBuilder<T = any> {
39
43
  * @param [pathOfError] - The optional path into the `ErrorSchema` at which to add the error(s)
40
44
  * @returns - The `ErrorSchemaBuilder` object for chaining purposes
41
45
  */
42
- addErrors(errorOrList: string | string[], pathOfError?: string | string[]): this;
46
+ addErrors(errorOrList: string | string[], pathOfError?: PathType): this;
43
47
  /** Sets/replaces the `errorOrList` as the error(s) in the `ErrorSchema` at either the root level or the location
44
48
  * within the schema described by the `pathOfError`. For more information about how to specify the path see the
45
49
  * [eslint lodash plugin docs](https://github.com/wix/eslint-plugin-lodash/blob/master/docs/rules/path-style.md).
@@ -48,7 +52,7 @@ export default class ErrorSchemaBuilder<T = any> {
48
52
  * @param [pathOfError] - The optional path into the `ErrorSchema` at which to set the error(s)
49
53
  * @returns - The `ErrorSchemaBuilder` object for chaining purposes
50
54
  */
51
- setErrors(errorOrList: string | string[], pathOfError?: string | string[]): this;
55
+ setErrors(errorOrList: string | string[], pathOfError?: PathType): this;
52
56
  /** Clears the error(s) in the `ErrorSchema` at either the root level or the location within the schema described by
53
57
  * the `pathOfError`. For more information about how to specify the path see the
54
58
  * [eslint lodash plugin docs](https://github.com/wix/eslint-plugin-lodash/blob/master/docs/rules/path-style.md).
@@ -56,5 +60,5 @@ export default class ErrorSchemaBuilder<T = any> {
56
60
  * @param [pathOfError] - The optional path into the `ErrorSchema` at which to clear the error(s)
57
61
  * @returns - The `ErrorSchemaBuilder` object for chaining purposes
58
62
  */
59
- clearErrors(pathOfError?: string | string[]): this;
63
+ clearErrors(pathOfError?: PathType): this;
60
64
  }
@@ -1,7 +1,8 @@
1
- import cloneDeep from 'lodash/cloneDeep';
2
- import get from 'lodash/get';
3
- import set from 'lodash/set';
4
- import { ERRORS_KEY } from './constants';
1
+ import cloneDeep from 'lodash-es/cloneDeep.js';
2
+ import get from 'lodash-es/get.js';
3
+ import set from 'lodash-es/set.js';
4
+ import setWith from 'lodash-es/setWith.js';
5
+ import { ERRORS_KEY } from './constants.js';
5
6
  /** The `ErrorSchemaBuilder<T>` is used to build an `ErrorSchema<T>` since the definition of the `ErrorSchema` type is
6
7
  * designed for reading information rather than writing it. Use this class to add, replace or clear errors in an error
7
8
  * schema by using either dotted path or an array of path names. Once you are done building the `ErrorSchema`, you can
@@ -33,10 +34,11 @@ export default class ErrorSchemaBuilder {
33
34
  */
34
35
  getOrCreateErrorBlock(pathOfError) {
35
36
  const hasPath = (Array.isArray(pathOfError) && pathOfError.length > 0) || typeof pathOfError === 'string';
37
+ // @ts-expect-error TS2590 to avoid "Expression produces a union type that is too complex to represent" error
36
38
  let errorBlock = hasPath ? get(this.errorSchema, pathOfError) : this.errorSchema;
37
39
  if (!errorBlock && pathOfError) {
38
40
  errorBlock = {};
39
- set(this.errorSchema, pathOfError, errorBlock);
41
+ setWith(this.errorSchema, pathOfError, errorBlock, Object);
40
42
  }
41
43
  return errorBlock;
42
44
  }
@@ -65,10 +67,10 @@ export default class ErrorSchemaBuilder {
65
67
  errorBlock[ERRORS_KEY] = errorsList;
66
68
  }
67
69
  if (Array.isArray(errorOrList)) {
68
- errorsList.push(...errorOrList);
70
+ set(errorBlock, ERRORS_KEY, [...new Set([...errorsList, ...errorOrList])]);
69
71
  }
70
72
  else {
71
- errorsList.push(errorOrList);
73
+ set(errorBlock, ERRORS_KEY, [...new Set([...errorsList, errorOrList])]);
72
74
  }
73
75
  return this;
74
76
  }
@@ -83,7 +85,7 @@ export default class ErrorSchemaBuilder {
83
85
  setErrors(errorOrList, pathOfError) {
84
86
  const errorBlock = this.getOrCreateErrorBlock(pathOfError);
85
87
  // Effectively clone the array being given to prevent accidental outside manipulation of the given list
86
- const listToAdd = Array.isArray(errorOrList) ? [...errorOrList] : [errorOrList];
88
+ const listToAdd = Array.isArray(errorOrList) ? [...new Set([...errorOrList])] : [errorOrList];
87
89
  set(errorBlock, ERRORS_KEY, listToAdd);
88
90
  return this;
89
91
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ErrorSchemaBuilder.js","sourceRoot":"","sources":["../src/ErrorSchemaBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,kBAAkB,CAAC;AACzC,OAAO,GAAG,MAAM,YAAY,CAAC;AAC7B,OAAO,GAAG,MAAM,YAAY,CAAC;AAG7B,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC;;;;GAIG;AACH,MAAM,CAAC,OAAO,OAAO,kBAAkB;IAOrC;;;OAGG;IACH,YAAY,aAA8B;QAV1C;;;WAGG;QACK,gBAAW,GAAmB,EAAE,CAAC;QAOvC,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC;IACrC,CAAC;IAED;OACG;IACH,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED;;;;;OAKG;IACK,qBAAqB,CAAC,WAA+B;QAC3D,MAAM,OAAO,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,OAAO,WAAW,KAAK,QAAQ,CAAC;QAC1G,IAAI,UAAU,GAAgB,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC;QAC9F,IAAI,CAAC,UAAU,IAAI,WAAW,EAAE;YAC9B,UAAU,GAAG,EAAE,CAAC;YAChB,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,WAAW,EAAE,UAAU,CAAC,CAAC;SAChD;QACD,OAAO,UAAU,CAAC;IACpB,CAAC;IAED;;;;OAIG;IACH,cAAc,CAAC,aAA8B;QAC3C,IAAI,CAAC,WAAW,GAAG,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACjE,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;OAOG;IACH,SAAS,CAAC,WAA8B,EAAE,WAA+B;QACvE,MAAM,UAAU,GAAgB,IAAI,CAAC,qBAAqB,CAAC,WAAW,CAAC,CAAC;QACxE,IAAI,UAAU,GAAG,GAAG,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;QAC7C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;YAC9B,UAAU,GAAG,EAAE,CAAC;YAChB,UAAU,CAAC,UAAU,CAAC,GAAG,UAAU,CAAC;SACrC;QAED,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE;YAC9B,UAAU,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,CAAC;SACjC;aAAM;YACL,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;SAC9B;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;OAOG;IACH,SAAS,CAAC,WAA8B,EAAE,WAA+B;QACvE,MAAM,UAAU,GAAgB,IAAI,CAAC,qBAAqB,CAAC,WAAW,CAAC,CAAC;QACxE,uGAAuG;QACvG,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;QAChF,GAAG,CAAC,UAAU,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;QACvC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;OAMG;IACH,WAAW,CAAC,WAA+B;QACzC,MAAM,UAAU,GAAgB,IAAI,CAAC,qBAAqB,CAAC,WAAW,CAAC,CAAC;QACxE,GAAG,CAAC,UAAU,EAAE,UAAU,EAAE,EAAE,CAAC,CAAC;QAChC,OAAO,IAAI,CAAC;IACd,CAAC;CACF"}
1
+ {"version":3,"file":"ErrorSchemaBuilder.js","sourceRoot":"","sources":["../src/ErrorSchemaBuilder.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { RJSFSchema, StrictRJSFSchema } from './types';
1
+ import { RJSFSchema, StrictRJSFSchema } from './types.js';
2
2
  /** Checks the schema to see if it is allowing additional items, by verifying that `schema.additionalItems` is an
3
3
  * object. The user is warned in the console if `schema.additionalItems` has the value `true`.
4
4
  *
@@ -1,4 +1,4 @@
1
- import isObject from './isObject';
1
+ import isObject from './isObject.js';
2
2
  /** Checks the schema to see if it is allowing additional items, by verifying that `schema.additionalItems` is an
3
3
  * object. The user is warned in the console if `schema.additionalItems` has the value `true`.
4
4
  *
@@ -1 +1 @@
1
- {"version":3,"file":"allowAdditionalItems.js","sourceRoot":"","sources":["../src/allowAdditionalItems.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,YAAY,CAAC;AAGlC;;;;;GAKG;AACH,MAAM,CAAC,OAAO,UAAU,oBAAoB,CAA0C,MAAS;IAC7F,IAAI,MAAM,CAAC,eAAe,KAAK,IAAI,EAAE;QACnC,OAAO,CAAC,IAAI,CAAC,iDAAiD,CAAC,CAAC;KACjE;IACD,OAAO,QAAQ,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;AAC1C,CAAC"}
1
+ {"version":3,"file":"allowAdditionalItems.js","sourceRoot":"","sources":["../src/allowAdditionalItems.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,YAAY,CAAC;AAGlC;;;;;GAKG;AACH,MAAM,CAAC,OAAO,UAAU,oBAAoB,CAA0C,MAAS;IAC7F,IAAI,MAAM,CAAC,eAAe,KAAK,IAAI,EAAE,CAAC;QACpC,OAAO,CAAC,IAAI,CAAC,iDAAiD,CAAC,CAAC;IAClE,CAAC;IACD,OAAO,QAAQ,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;AAC1C,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"asNumber.js","sourceRoot":"","sources":["../src/asNumber.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAC,KAAoB;IACnD,IAAI,KAAK,KAAK,EAAE,EAAE;QAChB,OAAO,SAAS,CAAC;KAClB;IACD,IAAI,KAAK,KAAK,IAAI,EAAE;QAClB,OAAO,IAAI,CAAC;KACb;IACD,IAAI,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;QACrB,wEAAwE;QACxE,wCAAwC;QACxC,OAAO,KAAK,CAAC;KACd;IACD,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;QACtB,wEAAwE;QACxE,OAAO,KAAK,CAAC;KACd;IAED,IAAI,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;QACzB,8EAA8E;QAC9E,iFAAiF;QACjF,sDAAsD;QACtD,OAAO,KAAK,CAAC;KACd;IAED,MAAM,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IACxB,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAExD,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;AAC3B,CAAC"}
1
+ {"version":3,"file":"asNumber.js","sourceRoot":"","sources":["../src/asNumber.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAC,KAAoB;IACnD,IAAI,KAAK,KAAK,EAAE,EAAE,CAAC;QACjB,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QACnB,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACtB,wEAAwE;QACxE,wCAAwC;QACxC,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACvB,wEAAwE;QACxE,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,8EAA8E;QAC9E,iFAAiF;QACjF,sDAAsD;QACtD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IACxB,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAExD,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;AAC3B,CAAC"}
@@ -1,4 +1,4 @@
1
- import { FormContextType, RJSFSchema, StrictRJSFSchema, UiSchema } from './types';
1
+ import { FormContextType, RJSFSchema, StrictRJSFSchema, UiSchema } from './types.js';
2
2
  /** Checks whether the field described by `schema`, having the `uiSchema` and `formData` supports expanding. The UI for
3
3
  * the field can expand if it has additional properties, is not forced as non-expandable by the `uiSchema` and the
4
4
  * `formData` object doesn't already have `schema.maxProperties` elements.
@@ -8,4 +8,4 @@ import { FormContextType, RJSFSchema, StrictRJSFSchema, UiSchema } from './types
8
8
  * @param [formData] - The formData for the field
9
9
  * @returns - True if the schema element has additionalProperties, is expandable, and not at the maxProperties limit
10
10
  */
11
- export default function canExpand<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(schema: RJSFSchema, uiSchema?: UiSchema<T, S, F>, formData?: T): boolean;
11
+ export default function canExpand<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(schema: RJSFSchema, uiSchema?: UiSchema<T, S, F>, formData?: T): any;
package/lib/canExpand.js CHANGED
@@ -1,4 +1,4 @@
1
- import getUiOptions from './getUiOptions';
1
+ import getUiOptions from './getUiOptions.js';
2
2
  /** Checks whether the field described by `schema`, having the `uiSchema` and `formData` supports expanding. The UI for
3
3
  * the field can expand if it has additional properties, is not forced as non-expandable by the `uiSchema` and the
4
4
  * `formData` object doesn't already have `schema.maxProperties` elements.
@@ -9,7 +9,7 @@ import getUiOptions from './getUiOptions';
9
9
  * @returns - True if the schema element has additionalProperties, is expandable, and not at the maxProperties limit
10
10
  */
11
11
  export default function canExpand(schema, uiSchema = {}, formData) {
12
- if (!schema.additionalProperties) {
12
+ if (!(schema.additionalProperties || schema.patternProperties)) {
13
13
  return false;
14
14
  }
15
15
  const { expandable = true } = getUiOptions(uiSchema);
@@ -1 +1 @@
1
- {"version":3,"file":"canExpand.js","sourceRoot":"","sources":["../src/canExpand.ts"],"names":[],"mappings":"AACA,OAAO,YAAY,MAAM,gBAAgB,CAAC;AAE1C;;;;;;;;GAQG;AACH,MAAM,CAAC,OAAO,UAAU,SAAS,CAC/B,MAAkB,EAClB,WAA8B,EAAE,EAChC,QAAY;IAEZ,IAAI,CAAC,MAAM,CAAC,oBAAoB,EAAE;QAChC,OAAO,KAAK,CAAC;KACd;IACD,MAAM,EAAE,UAAU,GAAG,IAAI,EAAE,GAAG,YAAY,CAAU,QAAQ,CAAC,CAAC;IAC9D,IAAI,UAAU,KAAK,KAAK,EAAE;QACxB,OAAO,UAAU,CAAC;KACnB;IACD,uEAAuE;IACvE,6DAA6D;IAC7D,IAAI,MAAM,CAAC,aAAa,KAAK,SAAS,IAAI,QAAQ,EAAE;QAClD,OAAO,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,GAAG,MAAM,CAAC,aAAa,CAAC;KAC5D;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
1
+ {"version":3,"file":"canExpand.js","sourceRoot":"","sources":["../src/canExpand.ts"],"names":[],"mappings":"AACA,OAAO,YAAY,MAAM,gBAAgB,CAAC;AAE1C;;;;;;;;GAQG;AACH,MAAM,CAAC,OAAO,UAAU,SAAS,CAC/B,MAAkB,EAClB,WAA8B,EAAE,EAChC,QAAY;IAEZ,IAAI,CAAC,CAAC,MAAM,CAAC,oBAAoB,IAAI,MAAM,CAAC,iBAAiB,CAAC,EAAE,CAAC;QAC/D,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,EAAE,UAAU,GAAG,IAAI,EAAE,GAAG,YAAY,CAAU,QAAQ,CAAC,CAAC;IAC9D,IAAI,UAAU,KAAK,KAAK,EAAE,CAAC;QACzB,OAAO,UAAU,CAAC;IACpB,CAAC;IACD,uEAAuE;IACvE,6DAA6D;IAC7D,IAAI,MAAM,CAAC,aAAa,KAAK,SAAS,IAAI,QAAQ,EAAE,CAAC;QACnD,OAAO,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,GAAG,MAAM,CAAC,aAAa,CAAC;IAC7D,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { RJSFSchema, StrictRJSFSchema } from './types.js';
2
+ /**
3
+ * Checks if the schema const property value is an AJV $data reference
4
+ * and the current schema is not an object or array
5
+ *
6
+ * @param schema - The schema to check if the const is an AJV $data reference
7
+ * @returns - true if the schema const property value is an AJV $data reference otherwise false.
8
+ */
9
+ export default function constIsAjvDataReference<S extends StrictRJSFSchema = RJSFSchema>(schema: S): boolean;
@@ -0,0 +1,15 @@
1
+ import { CONST_KEY, getSchemaType, isObject } from './index.js';
2
+ import isString from 'lodash-es/isString.js';
3
+ /**
4
+ * Checks if the schema const property value is an AJV $data reference
5
+ * and the current schema is not an object or array
6
+ *
7
+ * @param schema - The schema to check if the const is an AJV $data reference
8
+ * @returns - true if the schema const property value is an AJV $data reference otherwise false.
9
+ */
10
+ export default function constIsAjvDataReference(schema) {
11
+ const schemaConst = schema[CONST_KEY];
12
+ const schemaType = getSchemaType(schema);
13
+ return isObject(schemaConst) && isString(schemaConst === null || schemaConst === void 0 ? void 0 : schemaConst.$data) && schemaType !== 'object' && schemaType !== 'array';
14
+ }
15
+ //# sourceMappingURL=constIsAjvDataReference.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constIsAjvDataReference.js","sourceRoot":"","sources":["../src/constIsAjvDataReference.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,IAAI,CAAC;AAGxD,OAAO,QAAQ,MAAM,iBAAiB,CAAC;AAEvC;;;;;;GAMG;AACH,MAAM,CAAC,OAAO,UAAU,uBAAuB,CAA0C,MAAS;IAChG,MAAM,WAAW,GAAG,MAAM,CAAC,SAAS,CAAwC,CAAC;IAC7E,MAAM,UAAU,GAAG,aAAa,CAAI,MAAM,CAAC,CAAC;IAC5C,OAAO,QAAQ,CAAC,WAAW,CAAC,IAAI,QAAQ,CAAC,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,KAAK,CAAC,IAAI,UAAU,KAAK,QAAQ,IAAI,UAAU,KAAK,OAAO,CAAC;AACpH,CAAC"}
@@ -19,17 +19,29 @@ export declare const ITEMS_KEY = "items";
19
19
  export declare const JUNK_OPTION_ID = "_$junk_option_schema_id$_";
20
20
  export declare const NAME_KEY = "$name";
21
21
  export declare const ONE_OF_KEY = "oneOf";
22
+ export declare const PATTERN_PROPERTIES_KEY = "patternProperties";
22
23
  export declare const PROPERTIES_KEY = "properties";
24
+ export declare const READONLY_KEY = "readonly";
23
25
  export declare const REQUIRED_KEY = "required";
24
26
  export declare const SUBMIT_BTN_OPTIONS_KEY = "submitButtonOptions";
25
27
  export declare const REF_KEY = "$ref";
26
- /**
27
- * @deprecated Replace with correctly spelled constant `RJSF_ADDITIONAL_PROPERTIES_FLAG`
28
+ export declare const SCHEMA_KEY = "$schema";
29
+ /** The path of the discriminator value returned by the schema endpoint.
30
+ * The discriminator is the value in a `oneOf` that determines which option is selected.
28
31
  */
29
- export declare const RJSF_ADDITONAL_PROPERTIES_FLAG = "__rjsf_additionalProperties";
32
+ export declare const DISCRIMINATOR_PATH: string[];
33
+ /** The name of the `formContext` attribute in the React JSON Schema Form Registry
34
+ */
35
+ export declare const FORM_CONTEXT_NAME = "formContext";
36
+ /** The name of the `layoutGridLookupMap` attribute in the form context
37
+ */
38
+ export declare const LOOKUP_MAP_NAME = "layoutGridLookupMap";
30
39
  export declare const RJSF_ADDITIONAL_PROPERTIES_FLAG = "__rjsf_additionalProperties";
31
40
  export declare const ROOT_SCHEMA_PREFIX = "__rjsf_rootSchema";
32
41
  export declare const UI_FIELD_KEY = "ui:field";
33
42
  export declare const UI_WIDGET_KEY = "ui:widget";
34
43
  export declare const UI_OPTIONS_KEY = "ui:options";
35
44
  export declare const UI_GLOBAL_OPTIONS_KEY = "ui:globalOptions";
45
+ /** The JSON Schema version strings
46
+ */
47
+ export declare const JSON_SCHEMA_DRAFT_2020_12 = "https://json-schema.org/draft/2020-12/schema";
package/lib/constants.js CHANGED
@@ -19,18 +19,30 @@ export const ITEMS_KEY = 'items';
19
19
  export const JUNK_OPTION_ID = '_$junk_option_schema_id$_';
20
20
  export const NAME_KEY = '$name';
21
21
  export const ONE_OF_KEY = 'oneOf';
22
+ export const PATTERN_PROPERTIES_KEY = 'patternProperties';
22
23
  export const PROPERTIES_KEY = 'properties';
24
+ export const READONLY_KEY = 'readonly';
23
25
  export const REQUIRED_KEY = 'required';
24
26
  export const SUBMIT_BTN_OPTIONS_KEY = 'submitButtonOptions';
25
27
  export const REF_KEY = '$ref';
26
- /**
27
- * @deprecated Replace with correctly spelled constant `RJSF_ADDITIONAL_PROPERTIES_FLAG`
28
+ export const SCHEMA_KEY = '$schema';
29
+ /** The path of the discriminator value returned by the schema endpoint.
30
+ * The discriminator is the value in a `oneOf` that determines which option is selected.
28
31
  */
29
- export const RJSF_ADDITONAL_PROPERTIES_FLAG = '__rjsf_additionalProperties';
32
+ export const DISCRIMINATOR_PATH = ['discriminator', 'propertyName'];
33
+ /** The name of the `formContext` attribute in the React JSON Schema Form Registry
34
+ */
35
+ export const FORM_CONTEXT_NAME = 'formContext';
36
+ /** The name of the `layoutGridLookupMap` attribute in the form context
37
+ */
38
+ export const LOOKUP_MAP_NAME = 'layoutGridLookupMap';
30
39
  export const RJSF_ADDITIONAL_PROPERTIES_FLAG = '__rjsf_additionalProperties';
31
40
  export const ROOT_SCHEMA_PREFIX = '__rjsf_rootSchema';
32
41
  export const UI_FIELD_KEY = 'ui:field';
33
42
  export const UI_WIDGET_KEY = 'ui:widget';
34
43
  export const UI_OPTIONS_KEY = 'ui:options';
35
44
  export const UI_GLOBAL_OPTIONS_KEY = 'ui:globalOptions';
45
+ /** The JSON Schema version strings
46
+ */
47
+ export const JSON_SCHEMA_DRAFT_2020_12 = 'https://json-schema.org/draft/2020-12/schema';
36
48
  //# sourceMappingURL=constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,uBAAuB,CAAC;AAChE,MAAM,CAAC,MAAM,yBAAyB,GAAG,sBAAsB,CAAC;AAChE,MAAM,CAAC,MAAM,UAAU,GAAG,OAAO,CAAC;AAClC,MAAM,CAAC,MAAM,UAAU,GAAG,OAAO,CAAC;AAClC,MAAM,CAAC,MAAM,SAAS,GAAG,OAAO,CAAC;AACjC,MAAM,CAAC,MAAM,WAAW,GAAG,SAAS,CAAC;AACrC,MAAM,CAAC,MAAM,eAAe,GAAG,aAAa,CAAC;AAC7C,MAAM,CAAC,MAAM,gBAAgB,GAAG,cAAc,CAAC;AAC/C,MAAM,CAAC,MAAM,QAAQ,GAAG,MAAM,CAAC;AAC/B,MAAM,CAAC,MAAM,UAAU,GAAG,UAAU,CAAC;AACrC,MAAM,CAAC,MAAM,MAAM,GAAG,KAAK,CAAC;AAC5B,MAAM,CAAC,MAAM,MAAM,GAAG,IAAI,CAAC;AAC3B,MAAM,CAAC,MAAM,SAAS,GAAG,OAAO,CAAC;AACjC,MAAM,CAAC,MAAM,cAAc,GAAG,2BAA2B,CAAC;AAC1D,MAAM,CAAC,MAAM,QAAQ,GAAG,OAAO,CAAC;AAChC,MAAM,CAAC,MAAM,UAAU,GAAG,OAAO,CAAC;AAClC,MAAM,CAAC,MAAM,cAAc,GAAG,YAAY,CAAC;AAC3C,MAAM,CAAC,MAAM,YAAY,GAAG,UAAU,CAAC;AACvC,MAAM,CAAC,MAAM,sBAAsB,GAAG,qBAAqB,CAAC;AAC5D,MAAM,CAAC,MAAM,OAAO,GAAG,MAAM,CAAC;AAC9B;;GAEG;AACH,MAAM,CAAC,MAAM,8BAA8B,GAAG,6BAA6B,CAAC;AAC5E,MAAM,CAAC,MAAM,+BAA+B,GAAG,6BAA6B,CAAC;AAC7E,MAAM,CAAC,MAAM,kBAAkB,GAAG,mBAAmB,CAAC;AACtD,MAAM,CAAC,MAAM,YAAY,GAAG,UAAU,CAAC;AACvC,MAAM,CAAC,MAAM,aAAa,GAAG,WAAW,CAAC;AACzC,MAAM,CAAC,MAAM,cAAc,GAAG,YAAY,CAAC;AAC3C,MAAM,CAAC,MAAM,qBAAqB,GAAG,kBAAkB,CAAC"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,uBAAuB,CAAC;AAChE,MAAM,CAAC,MAAM,yBAAyB,GAAG,sBAAsB,CAAC;AAChE,MAAM,CAAC,MAAM,UAAU,GAAG,OAAO,CAAC;AAClC,MAAM,CAAC,MAAM,UAAU,GAAG,OAAO,CAAC;AAClC,MAAM,CAAC,MAAM,SAAS,GAAG,OAAO,CAAC;AACjC,MAAM,CAAC,MAAM,WAAW,GAAG,SAAS,CAAC;AACrC,MAAM,CAAC,MAAM,eAAe,GAAG,aAAa,CAAC;AAC7C,MAAM,CAAC,MAAM,gBAAgB,GAAG,cAAc,CAAC;AAC/C,MAAM,CAAC,MAAM,QAAQ,GAAG,MAAM,CAAC;AAC/B,MAAM,CAAC,MAAM,UAAU,GAAG,UAAU,CAAC;AACrC,MAAM,CAAC,MAAM,MAAM,GAAG,KAAK,CAAC;AAC5B,MAAM,CAAC,MAAM,MAAM,GAAG,IAAI,CAAC;AAC3B,MAAM,CAAC,MAAM,SAAS,GAAG,OAAO,CAAC;AACjC,MAAM,CAAC,MAAM,cAAc,GAAG,2BAA2B,CAAC;AAC1D,MAAM,CAAC,MAAM,QAAQ,GAAG,OAAO,CAAC;AAChC,MAAM,CAAC,MAAM,UAAU,GAAG,OAAO,CAAC;AAClC,MAAM,CAAC,MAAM,sBAAsB,GAAG,mBAAmB,CAAC;AAC1D,MAAM,CAAC,MAAM,cAAc,GAAG,YAAY,CAAC;AAC3C,MAAM,CAAC,MAAM,YAAY,GAAG,UAAU,CAAC;AACvC,MAAM,CAAC,MAAM,YAAY,GAAG,UAAU,CAAC;AACvC,MAAM,CAAC,MAAM,sBAAsB,GAAG,qBAAqB,CAAC;AAC5D,MAAM,CAAC,MAAM,OAAO,GAAG,MAAM,CAAC;AAC9B,MAAM,CAAC,MAAM,UAAU,GAAG,SAAS,CAAC;AACpC;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,eAAe,EAAE,cAAc,CAAC,CAAC;AACpE;GACG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,aAAa,CAAC;AAE/C;GACG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,qBAAqB,CAAC;AACrD,MAAM,CAAC,MAAM,+BAA+B,GAAG,6BAA6B,CAAC;AAC7E,MAAM,CAAC,MAAM,kBAAkB,GAAG,mBAAmB,CAAC;AACtD,MAAM,CAAC,MAAM,YAAY,GAAG,UAAU,CAAC;AACvC,MAAM,CAAC,MAAM,aAAa,GAAG,WAAW,CAAC;AACzC,MAAM,CAAC,MAAM,cAAc,GAAG,YAAY,CAAC;AAC3C,MAAM,CAAC,MAAM,qBAAqB,GAAG,kBAAkB,CAAC;AAExD;GACG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,8CAA8C,CAAC"}
@@ -1,4 +1,4 @@
1
- import { FormValidation } from './types';
1
+ import { FormValidation } from './types.js';
2
2
  /** Given a `formData` object, recursively creates a `FormValidation` error handling structure around it
3
3
  *
4
4
  * @param formData - The form data around which the error handler is created
@@ -1,5 +1,5 @@
1
- import isPlainObject from 'lodash/isPlainObject';
2
- import { ERRORS_KEY } from './constants';
1
+ import isPlainObject from 'lodash-es/isPlainObject.js';
2
+ import { ERRORS_KEY } from './constants.js';
3
3
  /** Given a `formData` object, recursively creates a `FormValidation` error handling structure around it
4
4
  *
5
5
  * @param formData - The form data around which the error handler is created
@@ -1 +1 @@
1
- {"version":3,"file":"createErrorHandler.js","sourceRoot":"","sources":["../src/createErrorHandler.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,MAAM,sBAAsB,CAAC;AAEjD,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAGzC;;;;GAIG;AACH,MAAM,CAAC,OAAO,UAAU,kBAAkB,CAAU,QAAW;IAC7D,MAAM,OAAO,GAAoB;QAC/B,yEAAyE;QACzE,iEAAiE;QACjE,wCAAwC;QACxC,CAAC,UAAU,CAAC,EAAE,EAAE;QAChB,QAAQ,CAAC,OAAe;YACtB,IAAI,CAAC,UAAU,CAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAClC,CAAC;KACF,CAAC;IACF,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;QAC3B,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;YACzC,OAAO,EAAE,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,kBAAkB,CAAC,KAAK,CAAC,EAAE,CAAC;QACtD,CAAC,EAAE,OAAO,CAAC,CAAC;KACb;IACD,IAAI,aAAa,CAAC,QAAQ,CAAC,EAAE;QAC3B,MAAM,UAAU,GAAsB,QAA6B,CAAC;QACpE,OAAO,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;YACjD,OAAO,EAAE,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,kBAAkB,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;QAChE,CAAC,EAAE,OAA4B,CAAC,CAAC;KAClC;IACD,OAAO,OAA4B,CAAC;AACtC,CAAC"}
1
+ {"version":3,"file":"createErrorHandler.js","sourceRoot":"","sources":["../src/createErrorHandler.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,MAAM,sBAAsB,CAAC;AAEjD,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAGzC;;;;GAIG;AACH,MAAM,CAAC,OAAO,UAAU,kBAAkB,CAAU,QAAW;IAC7D,MAAM,OAAO,GAAoB;QAC/B,yEAAyE;QACzE,iEAAiE;QACjE,wCAAwC;QACxC,CAAC,UAAU,CAAC,EAAE,EAAE;QAChB,QAAQ,CAAC,OAAe;YACtB,IAAI,CAAC,UAAU,CAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAClC,CAAC;KACF,CAAC;IACF,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC5B,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;YACzC,OAAO,EAAE,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,kBAAkB,CAAC,KAAK,CAAC,EAAE,CAAC;QACtD,CAAC,EAAE,OAAO,CAAC,CAAC;IACd,CAAC;IACD,IAAI,aAAa,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC5B,MAAM,UAAU,GAAsB,QAA6B,CAAC;QACpE,OAAO,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;YACjD,OAAO,EAAE,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,kBAAkB,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;QAChE,CAAC,EAAE,OAA4B,CAAC,CAAC;IACnC,CAAC;IACD,OAAO,OAA4B,CAAC;AACtC,CAAC"}
@@ -1,10 +1,11 @@
1
- import { FormContextType, RJSFSchema, SchemaUtilsType, StrictRJSFSchema, ValidatorType } from './types';
1
+ import { Experimental_CustomMergeAllOf, FormContextType, RJSFSchema, SchemaUtilsType, StrictRJSFSchema, ValidatorType } from './types.js';
2
2
  /** Creates a `SchemaUtilsType` interface that is based around the given `validator` and `rootSchema` parameters. The
3
3
  * resulting interface implementation will forward the `validator` and `rootSchema` to all the wrapped APIs.
4
4
  *
5
5
  * @param validator - an implementation of the `ValidatorType` interface that will be forwarded to all the APIs
6
6
  * @param rootSchema - The root schema that will be forwarded to all the APIs
7
7
  * @param [experimental_defaultFormStateBehavior] Optional configuration object, if provided, allows users to override default form state behavior
8
+ * @param [experimental_customMergeAllOf] - Optional function that allows for custom merging of `allOf` schemas
8
9
  * @returns - An implementation of a `SchemaUtilsType` interface
9
10
  */
10
- export default function createSchemaUtils<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(validator: ValidatorType<T, S, F>, rootSchema: S, experimental_defaultFormStateBehavior?: {}): SchemaUtilsType<T, S, F>;
11
+ export default function createSchemaUtils<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(validator: ValidatorType<T, S, F>, rootSchema: S, experimental_defaultFormStateBehavior?: {}, experimental_customMergeAllOf?: Experimental_CustomMergeAllOf<S>): SchemaUtilsType<T, S, F>;
@@ -1,9 +1,10 @@
1
- import deepEquals from './deepEquals';
2
- import { getDefaultFormState, getDisplayLabel, getClosestMatchingOption, getFirstMatchingOption, getMatchingOption, isFilesArray, isMultiSelect, isSelect, mergeValidationData, retrieveSchema, sanitizeDataForNewSchema, toIdSchema, toPathSchema, } from './schema';
1
+ import deepEquals from './deepEquals.js';
2
+ import { findFieldInSchema, findSelectedOptionInXxxOf, getDefaultFormState, getDisplayLabel, getClosestMatchingOption, getFirstMatchingOption, getFromSchema, isFilesArray, isMultiSelect, isSelect, retrieveSchema, sanitizeDataForNewSchema, toIdSchema, toPathSchema, } from './schema/index.js';
3
3
  /** The `SchemaUtils` class provides a wrapper around the publicly exported APIs in the `utils/schema` directory such
4
- * that one does not have to explicitly pass the `validator`, `rootSchema`, or `experimental_defaultFormStateBehavior` to each method.
5
- * Since these generally do not change across a `Form`, this allows for providing a simplified set of APIs to the
6
- * `@rjsf/core` components and the various themes as well. This class implements the `SchemaUtilsType` interface.
4
+ * that one does not have to explicitly pass the `validator`, `rootSchema`, `experimental_defaultFormStateBehavior` or
5
+ * `experimental_customMergeAllOf` to each method. Since these generally do not change across a `Form`, this allows for
6
+ * providing a simplified set of APIs to the `@rjsf/core` components and the various themes as well. This class
7
+ * implements the `SchemaUtilsType` interface.
7
8
  */
8
9
  class SchemaUtils {
9
10
  /** Constructs the `SchemaUtils` instance with the given `validator` and `rootSchema` stored as instance variables
@@ -11,11 +12,13 @@ class SchemaUtils {
11
12
  * @param validator - An implementation of the `ValidatorType` interface that will be forwarded to all the APIs
12
13
  * @param rootSchema - The root schema that will be forwarded to all the APIs
13
14
  * @param experimental_defaultFormStateBehavior - Configuration flags to allow users to override default form state behavior
15
+ * @param [experimental_customMergeAllOf] - Optional function that allows for custom merging of `allOf` schemas
14
16
  */
15
- constructor(validator, rootSchema, experimental_defaultFormStateBehavior) {
17
+ constructor(validator, rootSchema, experimental_defaultFormStateBehavior, experimental_customMergeAllOf) {
16
18
  this.rootSchema = rootSchema;
17
19
  this.validator = validator;
18
20
  this.experimental_defaultFormStateBehavior = experimental_defaultFormStateBehavior;
21
+ this.experimental_customMergeAllOf = experimental_customMergeAllOf;
19
22
  }
20
23
  /** Returns the `ValidatorType` in the `SchemaUtilsType`
21
24
  *
@@ -31,15 +34,43 @@ class SchemaUtils {
31
34
  * @param validator - An implementation of the `ValidatorType` interface that will be compared against the current one
32
35
  * @param rootSchema - The root schema that will be compared against the current one
33
36
  * @param [experimental_defaultFormStateBehavior] Optional configuration object, if provided, allows users to override default form state behavior
37
+ * @param [experimental_customMergeAllOf] - Optional function that allows for custom merging of `allOf` schemas
34
38
  * @returns - True if the `SchemaUtilsType` differs from the given `validator` or `rootSchema`
35
39
  */
36
- doesSchemaUtilsDiffer(validator, rootSchema, experimental_defaultFormStateBehavior = {}) {
40
+ doesSchemaUtilsDiffer(validator, rootSchema, experimental_defaultFormStateBehavior = {}, experimental_customMergeAllOf) {
37
41
  if (!validator || !rootSchema) {
38
42
  return false;
39
43
  }
40
44
  return (this.validator !== validator ||
41
45
  !deepEquals(this.rootSchema, rootSchema) ||
42
- !deepEquals(this.experimental_defaultFormStateBehavior, experimental_defaultFormStateBehavior));
46
+ !deepEquals(this.experimental_defaultFormStateBehavior, experimental_defaultFormStateBehavior) ||
47
+ this.experimental_customMergeAllOf !== experimental_customMergeAllOf);
48
+ }
49
+ /** Finds the field specified by the `path` within the root or recursed `schema`. If there is no field for the specified
50
+ * `path`, then the default `{ field: undefined, isRequired: undefined }` is returned. It determines whether a leaf
51
+ * field is in the `required` list for its parent and if so, it is marked as required on return.
52
+ *
53
+ * @param schema - The current node within the JSON schema
54
+ * @param path - The remaining keys in the path to the desired field
55
+ * @param [formData] - The form data that is used to determine which oneOf option
56
+ * @returns - An object that contains the field and its required state. If no field can be found then
57
+ * `{ field: undefined, isRequired: undefined }` is returned.
58
+ */
59
+ findFieldInSchema(schema, path, formData) {
60
+ return findFieldInSchema(this.validator, this.rootSchema, schema, path, formData, this.experimental_customMergeAllOf);
61
+ }
62
+ /** Finds the oneOf option inside the `schema['any/oneOf']` list which has the `properties[selectorField].default` that
63
+ * matches the `formData[selectorField]` value. For the purposes of this function, `selectorField` is either
64
+ * `schema.discriminator.propertyName` or `fallbackField`.
65
+ *
66
+ * @param schema - The schema element in which to search for the selected oneOf option
67
+ * @param fallbackField - The field to use as a backup selector field if the schema does not have a required field
68
+ * @param xxx - Either `oneOf` or `anyOf`, defines which value is being sought
69
+ * @param [formData={}] - The form data that is used to determine which oneOf option
70
+ * @returns - The anyOf/oneOf option that matches the selector field in the schema or undefined if nothing is selected
71
+ */
72
+ findSelectedOptionInXxxOf(schema, fallbackField, xxx, formData) {
73
+ return findSelectedOptionInXxxOf(this.validator, this.rootSchema, schema, fallbackField, xxx, formData, this.experimental_customMergeAllOf);
43
74
  }
44
75
  /** Returns the superset of `formData` that includes the given set updated to include any missing fields that have
45
76
  * computed to have defaults provided in the `schema`.
@@ -52,7 +83,7 @@ class SchemaUtils {
52
83
  * @returns - The resulting `formData` with all the defaults provided
53
84
  */
54
85
  getDefaultFormState(schema, formData, includeUndefinedValues = false) {
55
- return getDefaultFormState(this.validator, schema, formData, this.rootSchema, includeUndefinedValues, this.experimental_defaultFormStateBehavior);
86
+ return getDefaultFormState(this.validator, schema, formData, this.rootSchema, includeUndefinedValues, this.experimental_defaultFormStateBehavior, this.experimental_customMergeAllOf);
56
87
  }
57
88
  /** Determines whether the combination of `schema` and `uiSchema` properties indicates that the label for the `schema`
58
89
  * should be displayed in a UI.
@@ -63,7 +94,7 @@ class SchemaUtils {
63
94
  * @returns - True if the label should be displayed or false if it should not
64
95
  */
65
96
  getDisplayLabel(schema, uiSchema, globalOptions) {
66
- return getDisplayLabel(this.validator, schema, uiSchema, this.rootSchema, globalOptions);
97
+ return getDisplayLabel(this.validator, schema, uiSchema, this.rootSchema, globalOptions, this.experimental_customMergeAllOf);
67
98
  }
68
99
  /** Determines which of the given `options` provided most closely matches the `formData`.
69
100
  * Returns the index of the option that is valid and is the closest match, or 0 if there is no match.
@@ -79,7 +110,7 @@ class SchemaUtils {
79
110
  * @returns - The index of the option that is the closest match to the `formData` or the `selectedOption` if no match
80
111
  */
81
112
  getClosestMatchingOption(formData, options, selectedOption, discriminatorField) {
82
- return getClosestMatchingOption(this.validator, this.rootSchema, formData, options, selectedOption, discriminatorField);
113
+ return getClosestMatchingOption(this.validator, this.rootSchema, formData, options, selectedOption, discriminatorField, this.experimental_customMergeAllOf);
83
114
  }
84
115
  /** Given the `formData` and list of `options`, attempts to find the index of the first option that matches the data.
85
116
  * Always returns the first option if there is nothing that matches.
@@ -93,18 +124,10 @@ class SchemaUtils {
93
124
  getFirstMatchingOption(formData, options, discriminatorField) {
94
125
  return getFirstMatchingOption(this.validator, formData, options, this.rootSchema, discriminatorField);
95
126
  }
96
- /** Given the `formData` and list of `options`, attempts to find the index of the option that best matches the data.
97
- * Deprecated, use `getFirstMatchingOption()` instead.
98
- *
99
- * @param formData - The current formData, if any, onto which to provide any missing defaults
100
- * @param options - The list of options to find a matching options from
101
- * @param [discriminatorField] - The optional name of the field within the options object whose value is used to
102
- * determine which option is selected
103
- * @returns - The index of the matched option or 0 if none is available
104
- * @deprecated
105
- */
106
- getMatchingOption(formData, options, discriminatorField) {
107
- return getMatchingOption(this.validator, formData, options, this.rootSchema, discriminatorField);
127
+ getFromSchema(schema, path, defaultValue) {
128
+ return getFromSchema(this.validator, this.rootSchema, schema, path,
129
+ // @ts-expect-error TS2769: No overload matches this call
130
+ defaultValue, this.experimental_customMergeAllOf);
108
131
  }
109
132
  /** Checks to see if the `schema` and `uiSchema` combination represents an array of files
110
133
  *
@@ -113,7 +136,7 @@ class SchemaUtils {
113
136
  * @returns - True if schema/uiSchema contains an array of files, otherwise false
114
137
  */
115
138
  isFilesArray(schema, uiSchema) {
116
- return isFilesArray(this.validator, schema, uiSchema, this.rootSchema);
139
+ return isFilesArray(this.validator, schema, uiSchema, this.rootSchema, this.experimental_customMergeAllOf);
117
140
  }
118
141
  /** Checks to see if the `schema` combination represents a multi-select
119
142
  *
@@ -121,7 +144,7 @@ class SchemaUtils {
121
144
  * @returns - True if schema contains a multi-select, otherwise false
122
145
  */
123
146
  isMultiSelect(schema) {
124
- return isMultiSelect(this.validator, schema, this.rootSchema);
147
+ return isMultiSelect(this.validator, schema, this.rootSchema, this.experimental_customMergeAllOf);
125
148
  }
126
149
  /** Checks to see if the `schema` combination represents a select
127
150
  *
@@ -129,21 +152,7 @@ class SchemaUtils {
129
152
  * @returns - True if schema contains a select, otherwise false
130
153
  */
131
154
  isSelect(schema) {
132
- return isSelect(this.validator, schema, this.rootSchema);
133
- }
134
- /** Merges the errors in `additionalErrorSchema` into the existing `validationData` by combining the hierarchies in
135
- * the two `ErrorSchema`s and then appending the error list from the `additionalErrorSchema` obtained by calling
136
- * `getValidator().toErrorList()` onto the `errors` in the `validationData`. If no `additionalErrorSchema` is passed,
137
- * then `validationData` is returned.
138
- *
139
- * @param validationData - The current `ValidationData` into which to merge the additional errors
140
- * @param [additionalErrorSchema] - The additional set of errors
141
- * @returns - The `validationData` with the additional errors from `additionalErrorSchema` merged into it, if provided.
142
- * @deprecated - Use the `validationDataMerge()` function exported from `@rjsf/utils` instead. This function will be
143
- * removed in the next major release.
144
- */
145
- mergeValidationData(validationData, additionalErrorSchema) {
146
- return mergeValidationData(this.validator, validationData, additionalErrorSchema);
155
+ return isSelect(this.validator, schema, this.rootSchema, this.experimental_customMergeAllOf);
147
156
  }
148
157
  /** Retrieves an expanded schema that has had all of its conditions, additional properties, references and
149
158
  * dependencies resolved and merged into the `schema` given a `rawFormData` that is used to do the potentially
@@ -154,7 +163,7 @@ class SchemaUtils {
154
163
  * @returns - The schema having its conditions, additional properties, references and dependencies resolved
155
164
  */
156
165
  retrieveSchema(schema, rawFormData) {
157
- return retrieveSchema(this.validator, schema, this.rootSchema, rawFormData);
166
+ return retrieveSchema(this.validator, schema, this.rootSchema, rawFormData, this.experimental_customMergeAllOf);
158
167
  }
159
168
  /** Sanitize the `data` associated with the `oldSchema` so it is considered appropriate for the `newSchema`. If the
160
169
  * new schema does not contain any properties, then `undefined` is returned to clear all the form data. Due to the
@@ -168,7 +177,7 @@ class SchemaUtils {
168
177
  * to `undefined`. Will return `undefined` if the new schema is not an object containing properties.
169
178
  */
170
179
  sanitizeDataForNewSchema(newSchema, oldSchema, data) {
171
- return sanitizeDataForNewSchema(this.validator, this.rootSchema, newSchema, oldSchema, data);
180
+ return sanitizeDataForNewSchema(this.validator, this.rootSchema, newSchema, oldSchema, data, this.experimental_customMergeAllOf);
172
181
  }
173
182
  /** Generates an `IdSchema` object for the `schema`, recursively
174
183
  *
@@ -180,7 +189,7 @@ class SchemaUtils {
180
189
  * @returns - The `IdSchema` object for the `schema`
181
190
  */
182
191
  toIdSchema(schema, id, formData, idPrefix = 'root', idSeparator = '_') {
183
- return toIdSchema(this.validator, schema, id, this.rootSchema, formData, idPrefix, idSeparator);
192
+ return toIdSchema(this.validator, schema, id, this.rootSchema, formData, idPrefix, idSeparator, this.experimental_customMergeAllOf);
184
193
  }
185
194
  /** Generates an `PathSchema` object for the `schema`, recursively
186
195
  *
@@ -190,7 +199,7 @@ class SchemaUtils {
190
199
  * @returns - The `PathSchema` object for the `schema`
191
200
  */
192
201
  toPathSchema(schema, name, formData) {
193
- return toPathSchema(this.validator, schema, name, this.rootSchema, formData);
202
+ return toPathSchema(this.validator, schema, name, this.rootSchema, formData, this.experimental_customMergeAllOf);
194
203
  }
195
204
  }
196
205
  /** Creates a `SchemaUtilsType` interface that is based around the given `validator` and `rootSchema` parameters. The
@@ -199,9 +208,10 @@ class SchemaUtils {
199
208
  * @param validator - an implementation of the `ValidatorType` interface that will be forwarded to all the APIs
200
209
  * @param rootSchema - The root schema that will be forwarded to all the APIs
201
210
  * @param [experimental_defaultFormStateBehavior] Optional configuration object, if provided, allows users to override default form state behavior
211
+ * @param [experimental_customMergeAllOf] - Optional function that allows for custom merging of `allOf` schemas
202
212
  * @returns - An implementation of a `SchemaUtilsType` interface
203
213
  */
204
- export default function createSchemaUtils(validator, rootSchema, experimental_defaultFormStateBehavior = {}) {
205
- return new SchemaUtils(validator, rootSchema, experimental_defaultFormStateBehavior);
214
+ export default function createSchemaUtils(validator, rootSchema, experimental_defaultFormStateBehavior = {}, experimental_customMergeAllOf) {
215
+ return new SchemaUtils(validator, rootSchema, experimental_defaultFormStateBehavior, experimental_customMergeAllOf);
206
216
  }
207
217
  //# sourceMappingURL=createSchemaUtils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"createSchemaUtils.js","sourceRoot":"","sources":["../src/createSchemaUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"createSchemaUtils.js","sourceRoot":"","sources":["../src/createSchemaUtils.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"dataURItoBlob.js","sourceRoot":"","sources":["../src/dataURItoBlob.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,WAAmB;;IACvD,sBAAsB;IACtB,IAAI,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE;QACvC,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;KAC3D;IACD,MAAM,OAAO,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACrC,qEAAqE;IACrE,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAC3C,4EAA4E;IAC5E,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;QACzB,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;KAC5D;IACD,oFAAoF;IACpF,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,QAAQ,CAAC;IACjC,MAAM,CAAC,IAAI,EAAE,GAAG,WAAW,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAChD,MAAM,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;IAExB,uCAAuC;IACvC,MAAM,IAAI,GAAG,SAAS;IACpB,6EAA6E;IAC7E,+CAA+C;IAC/C,CAAA,MAAA,WAAW,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,GAAG,KAAK,MAAM,CAAC,0CAAG,CAAC,CAAC,KAAI,SAAS,CAC/F,CAAC;IAEF,8DAA8D;IAC9D,IAAI;QACF,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;QAC5B,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACvC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACtC,KAAK,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;SACjC;QACD,yBAAyB;QACzB,MAAM,IAAI,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;QAEhE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;KACvB;IAAC,OAAO,KAAK,EAAE;QACd,MAAM,IAAI,KAAK,CAAC,mBAAmB,GAAI,KAAe,CAAC,OAAO,CAAC,CAAC;KACjE;AACH,CAAC"}
1
+ {"version":3,"file":"dataURItoBlob.js","sourceRoot":"","sources":["../src/dataURItoBlob.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,WAAmB;;IACvD,sBAAsB;IACtB,IAAI,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;QACxC,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;IAC5D,CAAC;IACD,MAAM,OAAO,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACrC,qEAAqE;IACrE,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAC3C,4EAA4E;IAC5E,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;IAC7D,CAAC;IACD,oFAAoF;IACpF,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,QAAQ,CAAC;IACjC,MAAM,CAAC,IAAI,EAAE,GAAG,WAAW,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAChD,MAAM,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;IAExB,uCAAuC;IACvC,MAAM,IAAI,GAAG,SAAS;IACpB,6EAA6E;IAC7E,+CAA+C;IAC/C,CAAA,MAAA,WAAW,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,GAAG,KAAK,MAAM,CAAC,0CAAG,CAAC,CAAC,KAAI,SAAS,CAC/F,CAAC;IAEF,8DAA8D;IAC9D,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;QAC5B,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACvC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACvC,KAAK,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QAClC,CAAC;QACD,yBAAyB;QACzB,MAAM,IAAI,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;QAEhE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IACxB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,mBAAmB,GAAI,KAAe,CAAC,OAAO,CAAC,CAAC;IAClE,CAAC;AACH,CAAC"}
@@ -1,4 +1,4 @@
1
- import { EnumOptionsType, RJSFSchema, StrictRJSFSchema } from './types';
1
+ import { EnumOptionsType, RJSFSchema, StrictRJSFSchema } from './types.js';
2
2
  /** Returns a list of options for a date range between `start` and `stop`. If the start date is greater than the end
3
3
  * date, then the date range is reversed. If `start` and `stop` are negative numbers (or zero), then they will be
4
4
  * treated as relative to the current year.
@@ -1,4 +1,4 @@
1
- import pad from './pad';
1
+ import pad from './pad.js';
2
2
  /** Returns a list of options for a date range between `start` and `stop`. If the start date is greater than the end
3
3
  * date, then the date range is reversed. If `start` and `stop` are negative numbers (or zero), then they will be
4
4
  * treated as relative to the current year.
@@ -1 +1 @@
1
- {"version":3,"file":"dateRangeOptions.js","sourceRoot":"","sources":["../src/dateRangeOptions.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,OAAO,CAAC;AAGxB;;;;;;;;GAQG;AACH,MAAM,CAAC,OAAO,UAAU,gBAAgB,CACtC,KAAa,EACb,IAAY;IAEZ,IAAI,KAAK,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,EAAE;QAC3B,KAAK,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,GAAG,KAAK,CAAC;QACzC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC;KACxC;SAAM,IAAI,KAAK,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,EAAE;QAChC,MAAM,IAAI,KAAK,CAAC,eAAe,KAAK,eAAe,IAAI,6CAA6C,CAAC,CAAC;KACvG;IACD,IAAI,KAAK,GAAG,IAAI,EAAE;QAChB,OAAO,gBAAgB,CAAI,IAAI,EAAE,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC;KACnD;IACD,MAAM,OAAO,GAAyB,EAAE,CAAC;IACzC,KAAK,IAAI,CAAC,GAAG,KAAK,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,EAAE;QAClC,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;KAC9C;IACD,OAAO,OAAO,CAAC;AACjB,CAAC"}
1
+ {"version":3,"file":"dateRangeOptions.js","sourceRoot":"","sources":["../src/dateRangeOptions.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,OAAO,CAAC;AAGxB;;;;;;;;GAQG;AACH,MAAM,CAAC,OAAO,UAAU,gBAAgB,CACtC,KAAa,EACb,IAAY;IAEZ,IAAI,KAAK,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,EAAE,CAAC;QAC5B,KAAK,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,GAAG,KAAK,CAAC;QACzC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC;IACzC,CAAC;SAAM,IAAI,KAAK,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,EAAE,CAAC;QACjC,MAAM,IAAI,KAAK,CAAC,eAAe,KAAK,eAAe,IAAI,6CAA6C,CAAC,CAAC;IACxG,CAAC;IACD,IAAI,KAAK,GAAG,IAAI,EAAE,CAAC;QACjB,OAAO,gBAAgB,CAAI,IAAI,EAAE,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC;IACpD,CAAC;IACD,MAAM,OAAO,GAAyB,EAAE,CAAC;IACzC,KAAK,IAAI,CAAC,GAAG,KAAK,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;QACnC,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAC/C,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC"}
package/lib/deepEquals.js CHANGED
@@ -1,4 +1,4 @@
1
- import isEqualWith from 'lodash/isEqualWith';
1
+ import isEqualWith from 'lodash-es/isEqualWith.js';
2
2
  /** Implements a deep equals using the `lodash.isEqualWith` function, that provides a customized comparator that
3
3
  * assumes all functions are equivalent.
4
4
  *
@@ -1 +1 @@
1
- {"version":3,"file":"deepEquals.js","sourceRoot":"","sources":["../src/deepEquals.ts"],"names":[],"mappings":"AAAA,OAAO,WAAW,MAAM,oBAAoB,CAAC;AAE7C;;;;;;GAMG;AACH,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,CAAM,EAAE,CAAM;IAC/C,OAAO,WAAW,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAQ,EAAE,KAAU,EAAE,EAAE;QAChD,IAAI,OAAO,GAAG,KAAK,UAAU,IAAI,OAAO,KAAK,KAAK,UAAU,EAAE;YAC5D,sCAAsC;YACtC,oEAAoE;YACpE,OAAO,IAAI,CAAC;SACb;QACD,OAAO,SAAS,CAAC,CAAC,wCAAwC;IAC5D,CAAC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"deepEquals.js","sourceRoot":"","sources":["../src/deepEquals.ts"],"names":[],"mappings":"AAAA,OAAO,WAAW,MAAM,oBAAoB,CAAC;AAE7C;;;;;;GAMG;AACH,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,CAAM,EAAE,CAAM;IAC/C,OAAO,WAAW,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAQ,EAAE,KAAU,EAAE,EAAE;QAChD,IAAI,OAAO,GAAG,KAAK,UAAU,IAAI,OAAO,KAAK,KAAK,UAAU,EAAE,CAAC;YAC7D,sCAAsC;YACtC,oEAAoE;YACpE,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,SAAS,CAAC,CAAC,wCAAwC;IAC5D,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -1,4 +1,4 @@
1
- import { TranslatableString } from './enums';
1
+ import { TranslatableString } from './enums.js';
2
2
  /** Translates a `TranslatableString` value `stringToTranslate` into english. When a `params` array is provided, each
3
3
  * value in the array is used to replace any of the replaceable parameters in the `stringToTranslate` using the `%1`,
4
4
  * `%2`, etc. replacement specifiers.