toolmark-monorepo / @toolmark/core / WizardStep
Interface: WizardStep
Defined in: packages/core/src/wizard/wizard-tools.ts:43
One step of a wizard (createWizardTools, spec §8.2).
Properties
files?
optionalfiles?:Record<string,FileFieldSpec>
Defined in: packages/core/src/wizard/wizard-tools.ts:56
File fields of the step, as FormToolOptions.files.
input
input:
StandardSchemaV1
Defined in: packages/core/src/wizard/wizard-tools.ts:52
Full schema of the step's values (validated on fill and before submit).
jsonSchema?
optionaljsonSchema?:JsonSchema
Defined in: packages/core/src/wizard/wizard-tools.ts:54
JSON Schema override for the step's values.
name
name:
string
Defined in: packages/core/src/wizard/wizard-tools.ts:48
Step name: the key of the step's slice in the wizard data and the prefix of its paths in results (<step>.<path>). A–Z a–z 0–9 _ -, 1–64 characters, unique within the wizard.
options?
optionaloptions?:Record<string,OptionsProvider>
Defined in: packages/core/src/wizard/wizard-tools.ts:61
Async option lookups of the step, as FormToolOptions.options; the wizard's <name>.options tool lists them as <step>.<path>.
sensitive?
optionalsensitive?:string[]
Defined in: packages/core/src/wizard/wizard-tools.ts:73
Dot paths (within the step) whose values are always redacted (spec §14), including in the wizard's state(); published as <step>.<path> in tm.info(name).sensitivePaths. [] stands for any array index (cards[].cvc).
Element-based sensitivity (password / cc-* inputs) is only known while the step's form is mounted; the wizard remembers it for the rest of its lifetime. A step whose data exists before its form is ever mounted (prefilled getData(), an agent fill of a later step) must declare its sensitive paths here, or its values are shown in state() until the step is first mounted.
title?
optionaltitle?:string
Defined in: packages/core/src/wizard/wizard-tools.ts:50
User-facing title of the step (listed in the fill description).