Merge branch 'main' into next

This commit is contained in:
GitHub Actions Bot 2024-09-30 05:01:14 +00:00
commit e616271f65
2 changed files with 6 additions and 5 deletions

View File

@ -20,6 +20,7 @@ export const InitializerWithSwitch = (props) => {
type,
item.find,
passInRemove ?? item.remove,
schema?.name || item?.schema?.name,
);
const { insert } = useSchemaInitializer();
return (

View File

@ -753,14 +753,14 @@ export const useCustomFormItemInitializerFields = (options?: any) => {
});
};
export const findSchema = (schema: Schema, key: string, action: string) => {
export const findSchema = (schema: Schema, key: string, action: string, name?: string) => {
if (!Schema.isSchemaInstance(schema)) return null;
return schema.reduceProperties((buf, s) => {
if (s[key] === action) {
if (s[key] === action && (!name || s.name === name)) {
return s;
}
if (s['x-component'] !== 'Action.Container' && !s['x-component'].includes('AssociationField')) {
const c = findSchema(s, key, action);
const c = findSchema(s, key, action, name);
if (c) {
return c;
}
@ -782,7 +782,7 @@ const recursiveParent = (schema: Schema) => {
return recursiveParent(schema.parent);
};
export const useCurrentSchema = (action: string, key: string, find = findSchema, rm = removeSchema) => {
export const useCurrentSchema = (action: string, key: string, find = findSchema, rm = removeSchema, name?: string) => {
const { removeActiveFieldName } = useFormActiveFields() || {};
const { form }: { form?: Form } = useFormBlockContext();
let fieldSchema = useFieldSchema();
@ -793,7 +793,7 @@ export const useCurrentSchema = (action: string, key: string, find = findSchema,
}
}
const { remove } = useDesignable();
const schema = find(fieldSchema, key, action);
const schema = find(fieldSchema, key, action, name);
return {
schema,
exists: !!schema,