create.config.ts 1.17 KB
import { useRuleChainI18n } from '../../../hook/useRuleChainI18n';
import { FormSchema } from '/@/components/Form';

const { tLabel, tPlaceholder, t } = useRuleChainI18n('action', 'saveTimeseries');

export enum SaveTimeseriesFieldsEnum {
  DEFAULT_TTL = 'defaultTTL',
  SKIP_LATEST_PERSISTENCE = 'skipLatestPersistence',
  USE_SERVER_TS = 'useServerTs',
}

export const formSchemas: FormSchema[] = [
  {
    field: SaveTimeseriesFieldsEnum.DEFAULT_TTL,
    component: 'InputNumber',
    label: tLabel(SaveTimeseriesFieldsEnum.DEFAULT_TTL),
    required: true,
    componentProps: {
      min: 0,
      placeholder: tPlaceholder(SaveTimeseriesFieldsEnum.DEFAULT_TTL),
    },
  },
  {
    field: SaveTimeseriesFieldsEnum.SKIP_LATEST_PERSISTENCE,
    component: 'Checkbox',
    label: '',
    renderComponentContent: () => ({
      default: () => tLabel(SaveTimeseriesFieldsEnum.SKIP_LATEST_PERSISTENCE),
    }),
  },
  {
    field: SaveTimeseriesFieldsEnum.USE_SERVER_TS,
    component: 'Checkbox',
    label: tLabel(SaveTimeseriesFieldsEnum.USE_SERVER_TS),
    renderComponentContent: () => ({
      default: () => t('rule.chain.action.saveTimeseries.fields.useServerTsDesc'),
    }),
  },
];