feat: Schema 中 componentProps 随注册组件联动类型提示

This commit is contained in:
dullathanol
2026-04-03 01:39:49 +08:00
parent 128a131797
commit a6433c2b50
18 changed files with 698 additions and 132 deletions

View File

@@ -1,9 +1,7 @@
import type {
VbenFormSchema as FormSchema,
VbenFormProps,
} from '@vben/common-ui';
import type { VbenFormProps as CoreFormProps } from '@vben/common-ui';
import type { ComponentType } from './component';
import type { VbenFormSchema } from './form-schema';
import { setupVbenForm, useVbenForm as useForm, z } from '@vben/common-ui';
import { $t } from '@vben/locales';
@@ -41,9 +39,14 @@ async function initSetupVbenForm() {
});
}
const useVbenForm = useForm<ComponentType>;
type VbenFormProps = Omit<CoreFormProps<ComponentType>, 'schema'> & {
schema?: VbenFormSchema[];
};
function useVbenForm(options: VbenFormProps) {
return useForm<ComponentType>(options as CoreFormProps<ComponentType>);
}
export { initSetupVbenForm, useVbenForm, z };
export type VbenFormSchema = FormSchema<ComponentType>;
export type { VbenFormProps };
export type { VbenFormProps, VbenFormSchema };