@rjsf/utils 6.0.0-beta.20 → 6.0.0-beta.22

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 (63) hide show
  1. package/dist/index.cjs +202 -68
  2. package/dist/index.cjs.map +4 -4
  3. package/dist/utils.esm.js +202 -68
  4. package/dist/utils.esm.js.map +4 -4
  5. package/dist/utils.umd.js +175 -57
  6. package/lib/ErrorSchemaBuilder.d.ts +2 -2
  7. package/lib/createSchemaUtils.js +6 -4
  8. package/lib/createSchemaUtils.js.map +1 -1
  9. package/lib/enums.d.ts +6 -0
  10. package/lib/enums.js +6 -0
  11. package/lib/enums.js.map +1 -1
  12. package/lib/guessType.d.ts +1 -1
  13. package/lib/idGenerators.d.ts +8 -1
  14. package/lib/idGenerators.js +10 -1
  15. package/lib/idGenerators.js.map +1 -1
  16. package/lib/index.d.ts +9 -4
  17. package/lib/index.js +9 -4
  18. package/lib/index.js.map +1 -1
  19. package/lib/isFormDataAvailable.d.ts +7 -0
  20. package/lib/isFormDataAvailable.js +13 -0
  21. package/lib/isFormDataAvailable.js.map +1 -0
  22. package/lib/isRootSchema.d.ts +13 -0
  23. package/lib/isRootSchema.js +25 -0
  24. package/lib/isRootSchema.js.map +1 -0
  25. package/lib/nameGenerators.d.ts +13 -0
  26. package/lib/nameGenerators.js +30 -0
  27. package/lib/nameGenerators.js.map +1 -0
  28. package/lib/schema/getDefaultFormState.d.ts +8 -3
  29. package/lib/schema/getDefaultFormState.js +15 -6
  30. package/lib/schema/getDefaultFormState.js.map +1 -1
  31. package/lib/schema/retrieveSchema.d.ts +10 -5
  32. package/lib/schema/retrieveSchema.js +37 -14
  33. package/lib/schema/retrieveSchema.js.map +1 -1
  34. package/lib/shouldRenderOptionalField.d.ts +18 -0
  35. package/lib/shouldRenderOptionalField.js +47 -0
  36. package/lib/shouldRenderOptionalField.js.map +1 -0
  37. package/lib/toFieldPathId.d.ts +4 -2
  38. package/lib/toFieldPathId.js +10 -3
  39. package/lib/toFieldPathId.js.map +1 -1
  40. package/lib/tsconfig.tsbuildinfo +1 -1
  41. package/lib/types.d.ts +87 -43
  42. package/lib/useDeepCompareMemo.d.ts +8 -0
  43. package/lib/useDeepCompareMemo.js +17 -0
  44. package/lib/useDeepCompareMemo.js.map +1 -0
  45. package/lib/validationDataMerge.d.ts +2 -1
  46. package/lib/validationDataMerge.js +3 -2
  47. package/lib/validationDataMerge.js.map +1 -1
  48. package/package.json +1 -1
  49. package/src/ErrorSchemaBuilder.ts +2 -2
  50. package/src/createSchemaUtils.ts +6 -1
  51. package/src/enums.ts +6 -0
  52. package/src/idGenerators.ts +11 -1
  53. package/src/index.ts +15 -2
  54. package/src/isFormDataAvailable.ts +13 -0
  55. package/src/isRootSchema.ts +30 -0
  56. package/src/nameGenerators.ts +43 -0
  57. package/src/schema/getDefaultFormState.ts +20 -2
  58. package/src/schema/retrieveSchema.ts +39 -5
  59. package/src/shouldRenderOptionalField.ts +56 -0
  60. package/src/toFieldPathId.ts +12 -2
  61. package/src/types.ts +100 -47
  62. package/src/useDeepCompareMemo.ts +17 -0
  63. package/src/validationDataMerge.ts +7 -1
@@ -8,9 +8,10 @@ import { Experimental_CustomMergeAllOf, FormContextType, RJSFSchema, StrictRJSFS
8
8
  * @param [rootSchema={}] - The root schema that will be forwarded to all the APIs
9
9
  * @param [rawFormData] - The current formData, if any, to assist retrieving a schema
10
10
  * @param [experimental_customMergeAllOf] - Optional function that allows for custom merging of `allOf` schemas
11
+ * @param [resolveAnyOfOrOneOfRefs = false] - Optional flag indicating whether to resolved refs in anyOf/oneOf lists
11
12
  * @returns - The schema having its conditions, additional properties, references and dependencies resolved
12
13
  */
13
- export default function retrieveSchema<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(validator: ValidatorType<T, S, F>, schema: S, rootSchema?: S, rawFormData?: T, experimental_customMergeAllOf?: Experimental_CustomMergeAllOf<S>): S;
14
+ export default function retrieveSchema<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(validator: ValidatorType<T, S, F>, schema: S, rootSchema?: S, rawFormData?: T, experimental_customMergeAllOf?: Experimental_CustomMergeAllOf<S>, resolveAnyOfOrOneOfRefs?: boolean): S;
14
15
  /** Resolves a conditional block (if/else/then) by removing the condition and merging the appropriate conditional branch
15
16
  * with the rest of the schema. If `expandAllBranches` is true, then the `retrieveSchemaInteral()` results for both
16
17
  * conditions will be returned.
@@ -60,9 +61,10 @@ export declare function getMatchingPatternProperties<S extends StrictRJSFSchema
60
61
  * @param recurseList - The list of recursive references already processed
61
62
  * @param [formData] - The current formData, if any, to assist retrieving a schema
62
63
  * @param [experimental_customMergeAllOf] - Optional function that allows for custom merging of `allOf` schemas
64
+ * @param [resolveAnyOfOrOneOfRefs] - Optional flag indicating whether to resolved refs in anyOf/oneOf lists
63
65
  * @returns - The list of schemas having its references, dependencies and allOf schemas resolved
64
66
  */
65
- export declare function resolveSchema<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(validator: ValidatorType<T, S, F>, schema: S, rootSchema: S, expandAllBranches: boolean, recurseList: string[], formData?: T, experimental_customMergeAllOf?: Experimental_CustomMergeAllOf<S>): S[];
67
+ export declare function resolveSchema<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(validator: ValidatorType<T, S, F>, schema: S, rootSchema: S, expandAllBranches: boolean, recurseList: string[], formData?: T, experimental_customMergeAllOf?: Experimental_CustomMergeAllOf<S>, resolveAnyOfOrOneOfRefs?: boolean): S[];
66
68
  /** Resolves all references within a schema and then returns the `retrieveSchemaInternal()` if the resolved schema is
67
69
  * actually different than the original. Passes the `expandAllBranches` flag down to the `retrieveSchemaInternal()`
68
70
  * helper call.
@@ -75,18 +77,20 @@ export declare function resolveSchema<T = any, S extends StrictRJSFSchema = RJSF
75
77
  * @param recurseList - The list of recursive references already processed
76
78
  * @param [formData] - The current formData, if any, to assist retrieving a schema
77
79
  * @param [experimental_customMergeAllOf] - Optional function that allows for custom merging of `allOf` schemas
80
+ * @param [resolveAnyOfOrOneOfRefs] - Optional flag indicating whether to resolved refs in anyOf/oneOf lists
78
81
  * @returns - The list schemas retrieved after having all references resolved
79
82
  */
80
- export declare function resolveReference<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(validator: ValidatorType<T, S, F>, schema: S, rootSchema: S, expandAllBranches: boolean, recurseList: string[], formData?: T, experimental_customMergeAllOf?: Experimental_CustomMergeAllOf<S>): S[];
83
+ export declare function resolveReference<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(validator: ValidatorType<T, S, F>, schema: S, rootSchema: S, expandAllBranches: boolean, recurseList: string[], formData?: T, experimental_customMergeAllOf?: Experimental_CustomMergeAllOf<S>, resolveAnyOfOrOneOfRefs?: boolean): S[];
81
84
  /** Resolves all references within the schema itself as well as any of its properties and array items.
82
85
  *
83
86
  * @param schema - The schema for which resolving all references is desired
84
87
  * @param rootSchema - The root schema that will be forwarded to all the APIs
85
88
  * @param recurseList - List of $refs already resolved to prevent recursion
86
89
  * @param [baseURI] - The base URI to be used for resolving relative references
90
+ * @param [resolveAnyOfOrOneOfRefs] - Optional flag indicating whether to resolved refs in anyOf/oneOf lists
87
91
  * @returns - given schema will all references resolved or the original schema if no internal `$refs` were resolved
88
92
  */
89
- export declare function resolveAllReferences<S extends StrictRJSFSchema = RJSFSchema>(schema: S, rootSchema: S, recurseList: string[], baseURI?: string): S;
93
+ export declare function resolveAllReferences<S extends StrictRJSFSchema = RJSFSchema>(schema: S, rootSchema: S, recurseList: string[], baseURI?: string, resolveAnyOfOrOneOfRefs?: boolean): S;
90
94
  /** Creates new 'properties' items for each key in the `formData`
91
95
  *
92
96
  * @param validator - An implementation of the `ValidatorType` interface that will be used when necessary
@@ -110,10 +114,11 @@ export declare function stubExistingAdditionalProperties<T = any, S extends Stri
110
114
  * dependencies as a list of schemas
111
115
  * @param [recurseList=[]] - The optional, list of recursive references already processed
112
116
  * @param [experimental_customMergeAllOf] - Optional function that allows for custom merging of `allOf` schemas
117
+ * @param [resolveAnyOfOrOneOfRefs] - Optional flag indicating whether to resolved refs in anyOf/oneOf lists
113
118
  * @returns - The schema(s) resulting from having its conditions, additional properties, references and dependencies
114
119
  * resolved. Multiple schemas may be returned if `expandAllBranches` is true.
115
120
  */
116
- export declare function retrieveSchemaInternal<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(validator: ValidatorType<T, S, F>, schema: S, rootSchema: S, rawFormData?: T, expandAllBranches?: boolean, recurseList?: string[], experimental_customMergeAllOf?: Experimental_CustomMergeAllOf<S>): S[];
121
+ export declare function retrieveSchemaInternal<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(validator: ValidatorType<T, S, F>, schema: S, rootSchema: S, rawFormData?: T, expandAllBranches?: boolean, recurseList?: string[], experimental_customMergeAllOf?: Experimental_CustomMergeAllOf<S>, resolveAnyOfOrOneOfRefs?: boolean): S[];
117
122
  /** Resolves an `anyOf` or `oneOf` within a schema (if present) to the list of schemas returned from
118
123
  * `retrieveSchemaInternal()` for the best matching option. If `expandAllBranches` is true, then a list of schemas for ALL
119
124
  * options are retrieved and returned.
@@ -24,10 +24,11 @@ import isEmpty from 'lodash-es/isEmpty.js';
24
24
  * @param [rootSchema={}] - The root schema that will be forwarded to all the APIs
25
25
  * @param [rawFormData] - The current formData, if any, to assist retrieving a schema
26
26
  * @param [experimental_customMergeAllOf] - Optional function that allows for custom merging of `allOf` schemas
27
+ * @param [resolveAnyOfOrOneOfRefs = false] - Optional flag indicating whether to resolved refs in anyOf/oneOf lists
27
28
  * @returns - The schema having its conditions, additional properties, references and dependencies resolved
28
29
  */
29
- export default function retrieveSchema(validator, schema, rootSchema = {}, rawFormData, experimental_customMergeAllOf) {
30
- return retrieveSchemaInternal(validator, schema, rootSchema, rawFormData, undefined, undefined, experimental_customMergeAllOf)[0];
30
+ export default function retrieveSchema(validator, schema, rootSchema = {}, rawFormData, experimental_customMergeAllOf, resolveAnyOfOrOneOfRefs = false) {
31
+ return retrieveSchemaInternal(validator, schema, rootSchema, rawFormData, undefined, undefined, experimental_customMergeAllOf, resolveAnyOfOrOneOfRefs)[0];
31
32
  }
32
33
  /** Resolves a conditional block (if/else/then) by removing the condition and merging the appropriate conditional branch
33
34
  * with the rest of the schema. If `expandAllBranches` is true, then the `retrieveSchemaInteral()` results for both
@@ -120,10 +121,11 @@ export function getMatchingPatternProperties(schema, key) {
120
121
  * @param recurseList - The list of recursive references already processed
121
122
  * @param [formData] - The current formData, if any, to assist retrieving a schema
122
123
  * @param [experimental_customMergeAllOf] - Optional function that allows for custom merging of `allOf` schemas
124
+ * @param [resolveAnyOfOrOneOfRefs] - Optional flag indicating whether to resolved refs in anyOf/oneOf lists
123
125
  * @returns - The list of schemas having its references, dependencies and allOf schemas resolved
124
126
  */
125
- export function resolveSchema(validator, schema, rootSchema, expandAllBranches, recurseList, formData, experimental_customMergeAllOf) {
126
- const updatedSchemas = resolveReference(validator, schema, rootSchema, expandAllBranches, recurseList, formData, experimental_customMergeAllOf);
127
+ export function resolveSchema(validator, schema, rootSchema, expandAllBranches, recurseList, formData, experimental_customMergeAllOf, resolveAnyOfOrOneOfRefs) {
128
+ const updatedSchemas = resolveReference(validator, schema, rootSchema, expandAllBranches, recurseList, formData, experimental_customMergeAllOf, resolveAnyOfOrOneOfRefs);
127
129
  if (updatedSchemas.length > 1 || updatedSchemas[0] !== schema) {
128
130
  // return the updatedSchemas array if it has either multiple schemas within it
129
131
  // OR the first schema is not the same as the original schema
@@ -135,7 +137,7 @@ export function resolveSchema(validator, schema, rootSchema, expandAllBranches,
135
137
  return retrieveSchemaInternal(validator, s, rootSchema, formData, expandAllBranches, recurseList, experimental_customMergeAllOf);
136
138
  });
137
139
  }
138
- if (ALL_OF_KEY in schema && Array.isArray(schema.allOf)) {
140
+ if (ALL_OF_KEY in schema && Array.isArray(schema[ALL_OF_KEY])) {
139
141
  const allOfSchemaElements = schema.allOf.map((allOfSubschema) => retrieveSchemaInternal(validator, allOfSubschema, rootSchema, formData, expandAllBranches, recurseList, experimental_customMergeAllOf));
140
142
  const allPermutations = getAllPermutationsOfXxxOf(allOfSchemaElements);
141
143
  return allPermutations.map((permutation) => ({
@@ -158,13 +160,14 @@ export function resolveSchema(validator, schema, rootSchema, expandAllBranches,
158
160
  * @param recurseList - The list of recursive references already processed
159
161
  * @param [formData] - The current formData, if any, to assist retrieving a schema
160
162
  * @param [experimental_customMergeAllOf] - Optional function that allows for custom merging of `allOf` schemas
163
+ * @param [resolveAnyOfOrOneOfRefs] - Optional flag indicating whether to resolved refs in anyOf/oneOf lists
161
164
  * @returns - The list schemas retrieved after having all references resolved
162
165
  */
163
- export function resolveReference(validator, schema, rootSchema, expandAllBranches, recurseList, formData, experimental_customMergeAllOf) {
164
- const updatedSchema = resolveAllReferences(schema, rootSchema, recurseList);
166
+ export function resolveReference(validator, schema, rootSchema, expandAllBranches, recurseList, formData, experimental_customMergeAllOf, resolveAnyOfOrOneOfRefs) {
167
+ const updatedSchema = resolveAllReferences(schema, rootSchema, recurseList, undefined, resolveAnyOfOrOneOfRefs);
165
168
  if (updatedSchema !== schema) {
166
169
  // Only call this if the schema was actually changed by the `resolveAllReferences()` function
167
- return retrieveSchemaInternal(validator, updatedSchema, rootSchema, formData, expandAllBranches, recurseList, experimental_customMergeAllOf);
170
+ return retrieveSchemaInternal(validator, updatedSchema, rootSchema, formData, expandAllBranches, recurseList, experimental_customMergeAllOf, resolveAnyOfOrOneOfRefs);
168
171
  }
169
172
  return [schema];
170
173
  }
@@ -174,9 +177,10 @@ export function resolveReference(validator, schema, rootSchema, expandAllBranche
174
177
  * @param rootSchema - The root schema that will be forwarded to all the APIs
175
178
  * @param recurseList - List of $refs already resolved to prevent recursion
176
179
  * @param [baseURI] - The base URI to be used for resolving relative references
180
+ * @param [resolveAnyOfOrOneOfRefs] - Optional flag indicating whether to resolved refs in anyOf/oneOf lists
177
181
  * @returns - given schema will all references resolved or the original schema if no internal `$refs` were resolved
178
182
  */
179
- export function resolveAllReferences(schema, rootSchema, recurseList, baseURI) {
183
+ export function resolveAllReferences(schema, rootSchema, recurseList, baseURI, resolveAnyOfOrOneOfRefs) {
180
184
  if (!isObject(schema)) {
181
185
  return schema;
182
186
  }
@@ -200,7 +204,7 @@ export function resolveAllReferences(schema, rootSchema, recurseList, baseURI) {
200
204
  const childrenLists = [];
201
205
  const updatedProps = transform(resolvedSchema[PROPERTIES_KEY], (result, value, key) => {
202
206
  const childList = [...recurseList];
203
- result[key] = resolveAllReferences(value, rootSchema, childList, baseURI);
207
+ result[key] = resolveAllReferences(value, rootSchema, childList, baseURI, resolveAnyOfOrOneOfRefs);
204
208
  childrenLists.push(childList);
205
209
  }, {});
206
210
  merge(recurseList, uniq(flattenDeep(childrenLists)));
@@ -211,9 +215,27 @@ export function resolveAllReferences(schema, rootSchema, recurseList, baseURI) {
211
215
  typeof resolvedSchema.items !== 'boolean') {
212
216
  resolvedSchema = {
213
217
  ...resolvedSchema,
214
- items: resolveAllReferences(resolvedSchema.items, rootSchema, recurseList, baseURI),
218
+ items: resolveAllReferences(resolvedSchema.items, rootSchema, recurseList, baseURI, resolveAnyOfOrOneOfRefs),
215
219
  };
216
220
  }
221
+ if (resolveAnyOfOrOneOfRefs) {
222
+ let key;
223
+ let schemas;
224
+ if (ANY_OF_KEY in schema && Array.isArray(schema[ANY_OF_KEY])) {
225
+ key = ANY_OF_KEY;
226
+ schemas = resolvedSchema[ANY_OF_KEY];
227
+ }
228
+ else if (ONE_OF_KEY in schema && Array.isArray(schema[ONE_OF_KEY])) {
229
+ key = ONE_OF_KEY;
230
+ schemas = resolvedSchema[ONE_OF_KEY];
231
+ }
232
+ if (key && schemas) {
233
+ resolvedSchema = {
234
+ ...resolvedSchema,
235
+ [key]: schemas.map((s) => resolveAllReferences(s, rootSchema, recurseList, baseURI, resolveAnyOfOrOneOfRefs)),
236
+ };
237
+ }
238
+ }
217
239
  return deepEquals(schema, resolvedSchema) ? schema : resolvedSchema;
218
240
  }
219
241
  /** Creates new 'properties' items for each key in the `formData`
@@ -247,7 +269,7 @@ export function stubExistingAdditionalProperties(validator, theSchema, rootSchem
247
269
  }
248
270
  }
249
271
  if (ADDITIONAL_PROPERTIES_KEY in schema && schema.additionalProperties !== false) {
250
- let additionalProperties = {};
272
+ let additionalProperties;
251
273
  if (typeof schema.additionalProperties !== 'boolean') {
252
274
  if (REF_KEY in schema.additionalProperties) {
253
275
  additionalProperties = retrieveSchema(validator, { [REF_KEY]: get(schema.additionalProperties, [REF_KEY]) }, rootSchema, formData, experimental_customMergeAllOf);
@@ -295,14 +317,15 @@ export function stubExistingAdditionalProperties(validator, theSchema, rootSchem
295
317
  * dependencies as a list of schemas
296
318
  * @param [recurseList=[]] - The optional, list of recursive references already processed
297
319
  * @param [experimental_customMergeAllOf] - Optional function that allows for custom merging of `allOf` schemas
320
+ * @param [resolveAnyOfOrOneOfRefs] - Optional flag indicating whether to resolved refs in anyOf/oneOf lists
298
321
  * @returns - The schema(s) resulting from having its conditions, additional properties, references and dependencies
299
322
  * resolved. Multiple schemas may be returned if `expandAllBranches` is true.
300
323
  */
301
- export function retrieveSchemaInternal(validator, schema, rootSchema, rawFormData, expandAllBranches = false, recurseList = [], experimental_customMergeAllOf) {
324
+ export function retrieveSchemaInternal(validator, schema, rootSchema, rawFormData, expandAllBranches = false, recurseList = [], experimental_customMergeAllOf, resolveAnyOfOrOneOfRefs) {
302
325
  if (!isObject(schema)) {
303
326
  return [{}];
304
327
  }
305
- const resolvedSchemas = resolveSchema(validator, schema, rootSchema, expandAllBranches, recurseList, rawFormData, experimental_customMergeAllOf);
328
+ const resolvedSchemas = resolveSchema(validator, schema, rootSchema, expandAllBranches, recurseList, rawFormData, experimental_customMergeAllOf, resolveAnyOfOrOneOfRefs);
306
329
  return resolvedSchemas.flatMap((s) => {
307
330
  var _a;
308
331
  let resolvedSchema = s;
@@ -1 +1 @@
1
- {"version":3,"file":"retrieveSchema.js","sourceRoot":"","sources":["../../src/schema/retrieveSchema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"retrieveSchema.js","sourceRoot":"","sources":["../../src/schema/retrieveSchema.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ import { FormContextType, Registry, RJSFSchema, StrictRJSFSchema, UiSchema } from './types.js';
2
+ /** Returns the unique list of schema types for all of the options in a anyOf/oneOf
3
+ *
4
+ * @param schemas - The list of schemas representing the XxxOf options
5
+ * @returns - All of the unique types contained within the oneOf list
6
+ */
7
+ export declare function getSchemaTypesForXxxOf<S extends StrictRJSFSchema = RJSFSchema>(schemas: S[]): string | string[];
8
+ /** Determines whether the field information from the combination of `schema` and `required` along with the
9
+ * `enableOptionalDataFieldForType` settings from the global UI options in the `registry` all indicate that this field
10
+ * should be rendered with the Optional Data Controls UI.
11
+ *
12
+ * @param registry - The `registry` object
13
+ * @param schema - The schema for the field
14
+ * @param required - Flag indicating whether the field is required
15
+ * @param [uiSchema] - The uiSchema for the field
16
+ * @return - True if the field should be rendered with the optional field UI, otherwise false
17
+ */
18
+ export default function shouldRenderOptionalField<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(registry: Registry<T, S, F>, schema: S, required: boolean, uiSchema?: UiSchema<T, S, F>): boolean;
@@ -0,0 +1,47 @@
1
+ import isObject from 'lodash-es/isObject.js';
2
+ import uniq from 'lodash-es/uniq.js';
3
+ import getSchemaType from './getSchemaType.js';
4
+ import getUiOptions from './getUiOptions.js';
5
+ import isRootSchema from './isRootSchema.js';
6
+ import { ANY_OF_KEY, ONE_OF_KEY } from './constants.js';
7
+ /** Returns the unique list of schema types for all of the options in a anyOf/oneOf
8
+ *
9
+ * @param schemas - The list of schemas representing the XxxOf options
10
+ * @returns - All of the unique types contained within the oneOf list
11
+ */
12
+ export function getSchemaTypesForXxxOf(schemas) {
13
+ const allTypes = uniq(schemas
14
+ .map((s) => (isObject(s) ? getSchemaType(s) : undefined))
15
+ .flat()
16
+ .filter((t) => t !== undefined));
17
+ return allTypes.length === 1 ? allTypes[0] : allTypes;
18
+ }
19
+ /** Determines whether the field information from the combination of `schema` and `required` along with the
20
+ * `enableOptionalDataFieldForType` settings from the global UI options in the `registry` all indicate that this field
21
+ * should be rendered with the Optional Data Controls UI.
22
+ *
23
+ * @param registry - The `registry` object
24
+ * @param schema - The schema for the field
25
+ * @param required - Flag indicating whether the field is required
26
+ * @param [uiSchema] - The uiSchema for the field
27
+ * @return - True if the field should be rendered with the optional field UI, otherwise false
28
+ */
29
+ export default function shouldRenderOptionalField(registry, schema, required, uiSchema) {
30
+ const { enableOptionalDataFieldForType = [] } = getUiOptions(uiSchema, registry.globalUiOptions);
31
+ let schemaType;
32
+ if (ANY_OF_KEY in schema && Array.isArray(schema[ANY_OF_KEY])) {
33
+ schemaType = getSchemaTypesForXxxOf(schema[ANY_OF_KEY]);
34
+ }
35
+ else if (ONE_OF_KEY in schema && Array.isArray(schema[ONE_OF_KEY])) {
36
+ schemaType = getSchemaTypesForXxxOf(schema[ONE_OF_KEY]);
37
+ }
38
+ else {
39
+ schemaType = getSchemaType(schema);
40
+ }
41
+ return (!isRootSchema(registry, schema) &&
42
+ !required &&
43
+ !!schemaType &&
44
+ !Array.isArray(schemaType) &&
45
+ !!enableOptionalDataFieldForType.find((val) => val === schemaType));
46
+ }
47
+ //# sourceMappingURL=shouldRenderOptionalField.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shouldRenderOptionalField.js","sourceRoot":"","sources":["../src/shouldRenderOptionalField.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,iBAAiB,CAAC;AACvC,OAAO,IAAI,MAAM,aAAa,CAAC;AAG/B,OAAO,aAAa,MAAM,iBAAiB,CAAC;AAC5C,OAAO,YAAY,MAAM,gBAAgB,CAAC;AAC1C,OAAO,YAAY,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAErD;;;;GAIG;AACH,MAAM,UAAU,sBAAsB,CAA0C,OAAY;IAC1F,MAAM,QAAQ,GAAa,IAAI,CAC7B,OAAO;SACJ,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;SACxD,IAAI,EAAE;SACN,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC,CAClC,CAAC;IACF,OAAO,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;AACxD,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,CAAC,OAAO,UAAU,yBAAyB,CAI/C,QAA2B,EAAE,MAAS,EAAE,QAAiB,EAAE,QAA4B;IACvF,MAAM,EAAE,8BAA8B,GAAG,EAAE,EAAE,GAAG,YAAY,CAAU,QAAQ,EAAE,QAAQ,CAAC,eAAe,CAAC,CAAC;IAC1G,IAAI,UAA+C,CAAC;IACpD,IAAI,UAAU,IAAI,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC;QAC9D,UAAU,GAAG,sBAAsB,CAAI,MAAM,CAAC,UAAU,CAAQ,CAAC,CAAC;IACpE,CAAC;SAAM,IAAI,UAAU,IAAI,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC;QACrE,UAAU,GAAG,sBAAsB,CAAI,MAAM,CAAC,UAAU,CAAQ,CAAC,CAAC;IACpE,CAAC;SAAM,CAAC;QACN,UAAU,GAAG,aAAa,CAAI,MAAM,CAAC,CAAC;IACxC,CAAC;IACD,OAAO,CACL,CAAC,YAAY,CAAU,QAAQ,EAAE,MAAM,CAAC;QACxC,CAAC,QAAQ;QACT,CAAC,CAAC,UAAU;QACZ,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC;QAC1B,CAAC,CAAC,8BAA8B,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,KAAK,UAAU,CAAC,CACnE,CAAC;AACJ,CAAC"}
@@ -2,11 +2,13 @@ import { FieldPathId, FieldPathList, GlobalFormOptions } from './types.js';
2
2
  /** Constructs the `FieldPathId` for `fieldPath`. If `parentPathId` is provided, the `fieldPath` is appended to the end
3
3
  * of the parent path. Then the `ID_KEY` of the resulting `FieldPathId` is constructed from the `idPrefix` and
4
4
  * `idSeparator` contained within the `globalFormOptions`. If `fieldPath` is passed as an empty string, it will simply
5
- * generate the path from the `parentPath` (if provided) and the `idPrefix` and `idSeparator`
5
+ * generate the path from the `parentPath` (if provided) and the `idPrefix` and `idSeparator`. If a `nameGenerator`
6
+ * is provided in `globalFormOptions`, it will also generate the HTML `name` attribute.
6
7
  *
7
8
  * @param fieldPath - The property name or array index of the current field element
8
9
  * @param globalFormOptions - The `GlobalFormOptions` used to get the `idPrefix` and `idSeparator`
9
10
  * @param [parentPath] - The optional `FieldPathId` or `FieldPathList` of the parent element for this field element
11
+ * @param [isMultiValue] - Optional flag indicating this field accepts multiple values
10
12
  * @returns - The `FieldPathId` for the given `fieldPath` and the optional `parentPathId`
11
13
  */
12
- export default function toFieldPathId(fieldPath: string | number, globalFormOptions: GlobalFormOptions, parentPath?: FieldPathId | FieldPathList): FieldPathId;
14
+ export default function toFieldPathId(fieldPath: string | number, globalFormOptions: GlobalFormOptions, parentPath?: FieldPathId | FieldPathList, isMultiValue?: boolean): FieldPathId;
@@ -2,18 +2,25 @@ import { ID_KEY } from './constants.js';
2
2
  /** Constructs the `FieldPathId` for `fieldPath`. If `parentPathId` is provided, the `fieldPath` is appended to the end
3
3
  * of the parent path. Then the `ID_KEY` of the resulting `FieldPathId` is constructed from the `idPrefix` and
4
4
  * `idSeparator` contained within the `globalFormOptions`. If `fieldPath` is passed as an empty string, it will simply
5
- * generate the path from the `parentPath` (if provided) and the `idPrefix` and `idSeparator`
5
+ * generate the path from the `parentPath` (if provided) and the `idPrefix` and `idSeparator`. If a `nameGenerator`
6
+ * is provided in `globalFormOptions`, it will also generate the HTML `name` attribute.
6
7
  *
7
8
  * @param fieldPath - The property name or array index of the current field element
8
9
  * @param globalFormOptions - The `GlobalFormOptions` used to get the `idPrefix` and `idSeparator`
9
10
  * @param [parentPath] - The optional `FieldPathId` or `FieldPathList` of the parent element for this field element
11
+ * @param [isMultiValue] - Optional flag indicating this field accepts multiple values
10
12
  * @returns - The `FieldPathId` for the given `fieldPath` and the optional `parentPathId`
11
13
  */
12
- export default function toFieldPathId(fieldPath, globalFormOptions, parentPath) {
14
+ export default function toFieldPathId(fieldPath, globalFormOptions, parentPath, isMultiValue) {
13
15
  const basePath = Array.isArray(parentPath) ? parentPath : parentPath === null || parentPath === void 0 ? void 0 : parentPath.path;
14
16
  const childPath = fieldPath === '' ? [] : [fieldPath];
15
17
  const path = basePath ? basePath.concat(...childPath) : childPath;
16
18
  const id = [globalFormOptions.idPrefix, ...path].join(globalFormOptions.idSeparator);
17
- return { path, [ID_KEY]: id };
19
+ // Generate name attribute if nameGenerator is provided
20
+ let name;
21
+ if (globalFormOptions.nameGenerator && path.length > 0) {
22
+ name = globalFormOptions.nameGenerator(path, globalFormOptions.idPrefix, isMultiValue);
23
+ }
24
+ return { path, [ID_KEY]: id, ...(name !== undefined && { name }) };
18
25
  }
19
26
  //# sourceMappingURL=toFieldPathId.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"toFieldPathId.js","sourceRoot":"","sources":["../src/toFieldPathId.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAGrC;;;;;;;;;GASG;AACH,MAAM,CAAC,OAAO,UAAU,aAAa,CACnC,SAA0B,EAC1B,iBAAoC,EACpC,UAAwC;IAExC,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,IAAI,CAAC;IAC3E,MAAM,SAAS,GAAG,SAAS,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IACtD,MAAM,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAClE,MAAM,EAAE,GAAG,CAAC,iBAAiB,CAAC,QAAQ,EAAE,GAAG,IAAI,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;IACrF,OAAO,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC;AAChC,CAAC"}
1
+ {"version":3,"file":"toFieldPathId.js","sourceRoot":"","sources":["../src/toFieldPathId.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAGrC;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,OAAO,UAAU,aAAa,CACnC,SAA0B,EAC1B,iBAAoC,EACpC,UAAwC,EACxC,YAAsB;IAEtB,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,IAAI,CAAC;IAC3E,MAAM,SAAS,GAAG,SAAS,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IACtD,MAAM,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAClE,MAAM,EAAE,GAAG,CAAC,iBAAiB,CAAC,QAAQ,EAAE,GAAG,IAAI,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;IAErF,uDAAuD;IACvD,IAAI,IAAwB,CAAC;IAC7B,IAAI,iBAAiB,CAAC,aAAa,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvD,IAAI,GAAG,iBAAiB,CAAC,aAAa,CAAC,IAAI,EAAE,iBAAiB,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;IACzF,CAAC;IAED,OAAO,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,IAAI,KAAK,SAAS,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;AACrE,CAAC"}