@vectoriox/iox-builder 4.18.1 → 4.18.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -264,6 +264,8 @@ function resolveTraitControllerType(type) {
264
264
  case TraitInputType.FontFamily: return 'select';
265
265
  case TraitInputType.GridTemplate: return 'gridTemplate';
266
266
  case TraitInputType.Textarea: return 'textarea';
267
+ case TraitInputType.RuleList: return 'ruleList';
268
+ case TraitInputType.ActionList: return 'actionList';
267
269
  default: return 'text';
268
270
  }
269
271
  }
@@ -9750,7 +9752,7 @@ class FormComponentConfig extends ComponentConfig {
9750
9752
  // Stable identity the submit endpoint resolves the saved spec by. Generated on create;
9751
9753
  // shown read-only-ish so an author can copy it into a webhook consumer.
9752
9754
  new TraitConfig('formId', 'Form ID', TraitInputType.Text, undefined, ''),
9753
- new TraitConfig('feedback', 'Validation feedback', TraitInputType.Select, [
9755
+ new TraitConfig('feedback', 'Tell them about mistakes', TraitInputType.Select, [
9754
9756
  { label: 'Smart — on submit, then live once touched', value: 'smart' },
9755
9757
  { label: 'On submit only', value: 'submit' },
9756
9758
  { label: 'As you type', value: 'live' },
@@ -9760,7 +9762,7 @@ class FormComponentConfig extends ComponentConfig {
9760
9762
  // On by default and invisible to the visitor (decision D12).
9761
9763
  new TraitConfig('honeypot', 'Honeypot field', TraitInputType.Checkbox, undefined, true),
9762
9764
  new TraitConfig('minFillMs', 'Minimum fill time (ms)', TraitInputType.Number, undefined, 1200),
9763
- new TraitConfig('__afterSubmitLabel', 'After submit', TraitInputType.SectionLabel),
9765
+ new TraitConfig('__afterSubmitLabel', 'Where the answers go', TraitInputType.SectionLabel),
9764
9766
  // The ordered destination list. `store` is always first and cannot be removed — it is
9765
9767
  // the safety net the whole store-first design rests on.
9766
9768
  new TraitConfig('actions', 'Destinations', TraitInputType.ActionList, undefined, [{ type: 'store' }]),
@@ -9798,7 +9800,7 @@ class FieldComponentConfig extends ComponentConfig {
9798
9800
  new TraitConfig('label', 'Label', TraitInputType.Text, undefined, 'Label'),
9799
9801
  // Choosing the control also chooses the validation — an Email field validates email
9800
9802
  // with nothing configured.
9801
- new TraitConfig('control', 'Type', TraitInputType.Select, [
9803
+ new TraitConfig('control', 'Kind of answer', TraitInputType.Select, [
9802
9804
  { label: 'Text', value: 'text' },
9803
9805
  { label: 'Email', value: 'email' },
9804
9806
  { label: 'Phone', value: 'tel' },
@@ -9818,7 +9820,7 @@ class FieldComponentConfig extends ComponentConfig {
9818
9820
  // enforcement nor the file. See forms-and-inputs-plan.md → Remaining work P0/1.
9819
9821
  { label: 'Hidden', value: 'hidden' },
9820
9822
  ], 'text'),
9821
- new TraitConfig('placeholder', 'Placeholder', TraitInputType.Text, undefined, '', false, { trait: 'control', values: ['text', 'email', 'tel', 'url', 'number', 'password', 'textarea', 'select'] }),
9823
+ new TraitConfig('placeholder', 'Hint inside the box', TraitInputType.Text, undefined, '', false, { trait: 'control', values: ['text', 'email', 'tel', 'url', 'number', 'password', 'textarea', 'select'] }),
9822
9824
  new TraitConfig('help', 'Help text', TraitInputType.Text, undefined, ''),
9823
9825
  new TraitConfig('rows', 'Rows', TraitInputType.Number, undefined, 4, false, { trait: 'control', values: 'textarea' }),
9824
9826
  new TraitConfig('labelHidden', 'Hide label (screen readers still read it)', TraitInputType.Checkbox, undefined, false),
@@ -9829,8 +9831,8 @@ class FieldComponentConfig extends ComponentConfig {
9829
9831
  // One per line, `value|Label` or just the label. A richer editor arrives with bound
9830
9832
  // options in Phase 2; this keeps v1 to one control instead of a new trait type.
9831
9833
  new TraitConfig('optionsText', 'Choices (one per line)', TraitInputType.Textarea, undefined, '', false, { trait: 'control', values: ['select', 'radio'] }),
9832
- new TraitConfig('__validationLabel', 'Validation', TraitInputType.SectionLabel),
9833
- new TraitConfig('required', 'Required', TraitInputType.Checkbox, undefined, false),
9834
+ new TraitConfig('__validationLabel', 'What this field demands', TraitInputType.SectionLabel),
9835
+ new TraitConfig('required', 'They must fill it in', TraitInputType.Checkbox, undefined, false),
9834
9836
  // The additive rule list (minLength, pattern, matches, …). Unused rules are invisible
9835
9837
  // rather than a wall of empty controls — the Effects-group pattern.
9836
9838
  new TraitConfig('rules', 'Rules', TraitInputType.RuleList, undefined, []),