/** * A `fsm-dynamo` Forms v2 Settings POJO-k MINIMÁLIS shape-je, ami a generatornak * elég. NEM importáljuk a fsm-dynamo type-okat közvetlenül — duck-typing * shape-en megyünk, hogy a Wave-2b új field-type-ok ne törjenek build-et. * * A generator a `fieldTypeKey` (= `type` enum string-érték) alapján dispatch-el * a `FIELD_TYPE_TEST_CASE_REGISTRY`-ben. */ /** * MASTERPROMPTER-004 (assertion-fél re-target): egy INVALID-eset assertion-jel. * A hardcode `.text-red-400.mt-1` per-mező error helyett a consumer választhat: * - `field-error` (DEFAULT, flotta-kompatibilis) — a mező alatti `.text-red-400.mt-1` látszik; * - `submit-disabled` — a form submit-gombja `disabled` (a mező-error nincs kirenderelve, de a form nem submittelhető); * - `form-error-panel` — form-szintű error-panel (`${form}-form-error` v. explicit `formErrorTestId`) látszik. * Field-szinten felülírja a form-szintűt; egyik sincs → `field-error`. */ export type DyE2E_InvalidSignal_Type = 'field-error' | 'submit-disabled' | 'form-error-panel'; export interface DyE2E_FieldSettings_Shape { /** A field stable kulcsa — fieldControl key + selectorhoz. */ key: string; /** `DyFM_Field_Type` enum-érték (string), pl. `'text'`, `'number'`. */ type: string; /** Ember-olvasható cimke (label). */ label?: string; /** Required validator-flag. */ required?: boolean; /** Disabled flag. */ disabled?: boolean; /** Stable testId, ha van. */ testId?: string; /** Per-type opcionális mezők — duck-typed. */ min?: number | string; max?: number | string; minLength?: number; maxLength?: number; minDate?: string; maxDate?: string; minDateTime?: string; maxDateTime?: string; step?: number; /** Select / Multiselect / RadioSelect option-list. */ options?: { label: string; value: unknown; disabled?: boolean; }[]; /** DateRange-specifikus. */ allowSameDay?: boolean; /** Settings.validators[] — pl. `[{ type: 'minLength', value: 8 }, ...]`. */ validators?: { type: string; value?: unknown; message?: string; }[]; /** MASTERPROMPTER-004: per-mező INVALID-assertion jel (felülírja a form-szintűt). Default `field-error`. */ invalidSignal?: DyE2E_InvalidSignal_Type; /** Bármi más — duck-typing kompatibilitás. */ [extra: string]: unknown; } export interface DyE2E_FormSettings_Shape { /** A form stable kulcsa. */ key: string; /** A form-fields tömb. */ fields: DyE2E_FieldSettings_Shape[]; /** Ember-olvasható cimke. */ label?: string; /** * A submit-gomb explicit testId-je. Ha megadva, a form-level emitter EZT használja * a `${key}-submit` derivált helyett. Azért kell, mert a renderelt submit testId a * FORM `settings.id`-jából jön (`${id}-submit`), ami eltérhet a generator `key`-jétől * (pl. FDPNX login: key `login`, de a renderelt submit `fdp-login-submit`). */ submitTestId?: string; /** MASTERPROMPTER-004: form-szintű DEFAULT INVALID-assertion jel (a field-szintű felülírja). */ invalidSignal?: DyE2E_InvalidSignal_Type; /** A `form-error-panel` invalidSignal explicit testId-je (különben `${key}-form-error`). */ formErrorTestId?: string; /** Bármi más. */ [extra: string]: unknown; } //# sourceMappingURL=form-settings-shape.interface.d.ts.map