create.config.ts 1.15 KB
import { DetailsListEnum, DetailsListNameEnum } from '../../../enum/form';
import {
  TenantDetailsFieldsEnum,
  TenantDetailsFieldsNameEnum,
} from '../../../enum/formField/enrichment';
import { FormSchema } from '/@/components/Form';
import { useI18n } from '/@/hooks/web/useI18n';

const { t } = useI18n();

export const formSchemas: FormSchema[] = [
  {
    field: TenantDetailsFieldsEnum.DETAILS_LIST,
    component: 'Select',
    label: t(TenantDetailsFieldsNameEnum.DETAILS_LIST),
    rules: [
      {
        required: true,
        message: `请选择${t(TenantDetailsFieldsNameEnum.DETAILS_LIST)}`,
        type: 'array',
      },
    ],
    componentProps: {
      mode: 'multiple',
      options: Object.keys(DetailsListEnum).map((value) => ({
        label: DetailsListNameEnum[value],
        value,
      })),
      getPopupContainer: () => document.body,
      placeholder: `请选择${t(TenantDetailsFieldsNameEnum.DETAILS_LIST)}`,
    },
  },
  {
    field: TenantDetailsFieldsEnum.ADD_TO_METADATA,
    component: 'Checkbox',
    label: '',
    renderComponentContent: () => ({
      default: () => t(TenantDetailsFieldsNameEnum.ADD_TO_METADATA),
    }),
  },
];