utils.ts 568 Bytes
import { FormFieldsEnum } from '.';
import { Rule } from '/@/components/Form';
import { i18n } from '/@/locales/setupI18n';

const t = i18n.global.t;

export const validateDevicePicker = () => {
  return {
    required: true,
    validateTrigger: 'blur',
    validator(_rule: Recordable, value: Recordable, _callback: Fn) {
      const device = Reflect.get(value || {}, FormFieldsEnum.DEVICE);
      if (!device || !device.length)
        return Promise.reject(t('common.chooseText') + t('business.deviceText'));
      return Promise.resolve();
    },
  } as Rule;
};