feat: edit an existing custom type

This commit is contained in:
Florian Sylvain committed 2026-10-20 04:42:50 +02:00
1 parent 083cc9e23e
commit 8e344b2500
57 files changed
+5648 -425

No files matched your search

+18 -2
View File
@@ -3,7 +3,14 @@ export const FIELD_TYPES = ['text', 'richtext', 'number', 'boolean', 'date', 'se
export type FieldType = (typeof FIELD_TYPES)[number]
export type KeyMode = 'auto' | 'manual'
export type KeyDisplayMode = KeyMode | 'empty'
export type BuilderStatus = 'saving' | 'offline' | 'failed' | 'problems' | 'dirty' | 'none'
export type BuilderStatus =
| 'saving'
| 'offline'
| 'failed'
| 'problems'
| 'dirty'
| 'saved'
| 'none'
export const BUILDER_LIMITS = {
nameMax: 100,
@@ -32,12 +39,14 @@ export interface BuilderField {
min: string
max: string
options: string[]
saved: boolean
}
export interface BuilderForm {
name: string
key: string
keyMode: KeyMode
keyLocked: boolean
fields: BuilderField[]
}
@@ -62,6 +71,7 @@ export function createField(uid: number, overrides: Partial<BuilderField> = {}):
min: '',
max: '',
options: [],
saved: false,
...overrides,
}
}
@@ -71,7 +81,13 @@ export function starterField(uid: number): BuilderField {
}
export function blankForm(uid: number): BuilderForm {
return { name: '', key: '', keyMode: 'auto', fields: [starterField(uid)] }
return {
name: '',
key: '',
keyMode: 'auto',
keyLocked: false,
fields: [starterField(uid)],
}
}
export function changeFieldType(field: BuilderField, type: FieldType): BuilderField {