@@ -344,7 +344,8 @@ export function computeDefaults<T = any, S extends StrictRJSFSchema = RJSFSchema
344344 schema ,
345345 rootSchema ,
346346 rawFormData ,
347- experimental_defaultFormStateBehavior
347+ experimental_defaultFormStateBehavior ,
348+ experimental_customMergeAllOf
348349 ) ;
349350 if ( ! isObject ( rawFormData ) ) {
350351 defaultsWithFormData = mergeDefaultsWithFormData < T > (
@@ -366,7 +367,8 @@ export function computeDefaults<T = any, S extends StrictRJSFSchema = RJSFSchema
366367 * @param schema - The schema for which the formData state is desired
367368 * @param rootSchema - The root schema, used to primarily to look up `$ref`s
368369 * @param formData - The current formData
369- * @param experimental_defaultFormStateBehavior - Optional configuration object, if provided, allows users to override default form state behavior
370+ * @param [experimental_defaultFormStateBehavior] - Optional configuration object, if provided, allows users to override default form state behavior
371+ * @param [experimental_customMergeAllOf] - Optional function that allows for custom merging of `allOf` schemas
370372 * @returns - valid formData that matches schema
371373 */
372374export function ensureFormDataMatchingSchema <
@@ -378,9 +380,10 @@ export function ensureFormDataMatchingSchema<
378380 schema : S ,
379381 rootSchema : S ,
380382 formData : T | undefined ,
381- experimental_defaultFormStateBehavior ?: Experimental_DefaultFormStateBehavior
383+ experimental_defaultFormStateBehavior ?: Experimental_DefaultFormStateBehavior ,
384+ experimental_customMergeAllOf ?: Experimental_CustomMergeAllOf < S >
382385) : T | T [ ] | undefined {
383- const isSelectField = ! isConstant ( schema ) && isSelect ( validator , schema , rootSchema ) ;
386+ const isSelectField = ! isConstant ( schema ) && isSelect ( validator , schema , rootSchema , experimental_customMergeAllOf ) ;
384387 let validFormData : T | T [ ] | undefined = formData ;
385388 if ( isSelectField ) {
386389 const getOptionsList = optionsList ( schema ) ;
0 commit comments