diff options
Diffstat (limited to 'packages/client/src/scripts/form.ts')
| -rw-r--r-- | packages/client/src/scripts/form.ts | 59 |
1 files changed, 0 insertions, 59 deletions
diff --git a/packages/client/src/scripts/form.ts b/packages/client/src/scripts/form.ts deleted file mode 100644 index 7f321cc0ae..0000000000 --- a/packages/client/src/scripts/form.ts +++ /dev/null @@ -1,59 +0,0 @@ -export type FormItem = { - label?: string; - type: 'string'; - default: string | null; - hidden?: boolean; - multiline?: boolean; -} | { - label?: string; - type: 'number'; - default: number | null; - hidden?: boolean; - step?: number; -} | { - label?: string; - type: 'boolean'; - default: boolean | null; - hidden?: boolean; -} | { - label?: string; - type: 'enum'; - default: string | null; - hidden?: boolean; - enum: string[]; -} | { - label?: string; - type: 'radio'; - default: unknown | null; - hidden?: boolean; - options: { - label: string; - value: unknown; - }[]; -} | { - label?: string; - type: 'object'; - default: Record<string, unknown> | null; - hidden: true; -} | { - label?: string; - type: 'array'; - default: unknown[] | null; - hidden: true; -}; - -export type Form = Record<string, FormItem>; - -type GetItemType<Item extends FormItem> = - Item['type'] extends 'string' ? string : - Item['type'] extends 'number' ? number : - Item['type'] extends 'boolean' ? boolean : - Item['type'] extends 'radio' ? unknown : - Item['type'] extends 'enum' ? string : - Item['type'] extends 'array' ? unknown[] : - Item['type'] extends 'object' ? Record<string, unknown> - : never; - -export type GetFormResultType<F extends Form> = { - [P in keyof F]: GetItemType<F[P]>; -}; |