@vectoriox/iox-builder 8.1.0 → 9.0.0

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.
@@ -16,7 +16,7 @@ import { SelectModule } from 'primeng/select';
16
16
  import { TooltipModule } from 'primeng/tooltip';
17
17
  import { DialogModule } from 'primeng/dialog';
18
18
  import * as i1 from '@vectoriox/iox-ui';
19
- import { VALIDATION_STATES as VALIDATION_STATES$1, VALIDATION_STATE_CLASS as VALIDATION_STATE_CLASS$1, DEFAULT_WIDTH_BY_TYPE, COLOR_SCHEME_TRAIT, COLOR_SCHEMES, ColorScheme, Breakpoint, BREAKPOINTS, countOverrides, setOverride, NEW_NODE_STYLE_DEFAULTS, defaultElementStyleFor, applyElementStyle, stripSuppressedProps, DeclarationContext, buildPartSelector, planResponsiveRules, resolveStyleProps, buildTargetedStateSelector, statePseudoClass, compileTokenCssBlocks, catalogFontId, fontsForTokens, GOOGLE_FONTS_FILE_ORIGIN, googleFontHref, compileDeclarations, wrapInBreakpointQuery, BreakpointQueryKind, breakpointDef, breakpointForWidth, FormRenderState, safeSetInput, ContextStore, ComponentInstanceRegistryService, isActionEnabled, isContextAction, contextActionEffect, resolveContextValue, declaredInputNames, emptyImagePlaceholder, syncNodeDesignClasses, composeVirtualTraits, withDefaultHoverTransition, stateNamesIn, partClassName, resolveInputs, setInputOverride, collectContextSlotKeys, withContextSlots, compilePageStyle, nodeUsesContext, resolveBoundValue, IS_PREVIEW, planDataSource, dataSourcePlanToRequest, normalizeCollectionResult, resolveRepeaterItems, getByPath, computeRelative, IoxPageModule, PALETTE_PRESETS, elementStyleById, PART_CLASS_NAMES } from '@vectoriox/iox-ui';
19
+ import { VALIDATION_STATES as VALIDATION_STATES$1, VALIDATION_STATE_CLASS as VALIDATION_STATE_CLASS$1, DEFAULT_WIDTH_BY_TYPE, COLOR_SCHEME_TRAIT, COLOR_SCHEMES, ColorScheme, Breakpoint, BREAKPOINTS, countOverrides, setOverride, NEW_NODE_STYLE_DEFAULTS, defaultElementStyleFor, applyElementStyle, stripSuppressedProps, DeclarationContext, buildPartSelector, planResponsiveRules, resolveStyleProps, buildTargetedStateSelector, statePseudoClass, compileTokenCssBlocks, catalogFontId, fontsForTokens, GOOGLE_FONTS_FILE_ORIGIN, googleFontHref, compileDeclarations, wrapInBreakpointQuery, BreakpointQueryKind, breakpointDef, breakpointForWidth, FormRenderState, safeSetInput, ContextStore, ComponentInstanceRegistryService, isActionEnabled, isContextAction, contextActionEffect, resolveContextValue, declaredInputNames, emptyImagePlaceholder, syncNodeDesignClasses, composeVirtualTraits, withDefaultHoverTransition, stateNamesIn, partClassName, resolveInputs, setInputOverride, collectContextSlotKeys, withContextSlots, compilePageStyle, nodeUsesContext, resolveBoundValue, IS_PREVIEW, planDataSource, dataSourcePlanToRequest, normalizeCollectionResult, resolveRepeaterItems, getByPath, computeRelative, LinkType, buttonBlockHref, IoxPageModule, PALETTE_PRESETS, elementStyleById, PART_CLASS_NAMES } from '@vectoriox/iox-ui';
20
20
  export { ComponentInstanceRegistryService, VIRTUAL_TRAIT_KEYS, composeVirtualTraits } from '@vectoriox/iox-ui';
21
21
  import Lenis from 'lenis';
22
22
  import { Subject, BehaviorSubject, of, forkJoin } from 'rxjs';
@@ -8864,7 +8864,10 @@ class BuilderButtonBlockComponent {
8864
8864
  this.children = [];
8865
8865
  this.style = {};
8866
8866
  this.tag = 'button';
8867
+ this.linkType = LinkType.External;
8867
8868
  this.href = '';
8869
+ /** A page link shows its route as authored, as the canvas Link does (the engine resolves it). */
8870
+ this.pageRoute = '';
8868
8871
  this.target = '_self';
8869
8872
  this.type = 'button';
8870
8873
  this.nodeId = '';
@@ -8873,6 +8876,9 @@ class BuilderButtonBlockComponent {
8873
8876
  this.childMouseEnter = new EventEmitter();
8874
8877
  this.childMouseLeave = new EventEmitter();
8875
8878
  }
8879
+ get resolvedHref() {
8880
+ return buttonBlockHref(this);
8881
+ }
8876
8882
  ngOnInit() {
8877
8883
  // Register the HOST as the dropzone (was the ioxDropzone directive on the inner button).
8878
8884
  this.dragEngine.registerDropzone(this.dropListId, this.elRef.nativeElement, this.children, this.cdr, (evt) => this.onDrop(evt));
@@ -8884,7 +8890,7 @@ class BuilderButtonBlockComponent {
8884
8890
  this.dragEngine.handleDrop(this.children, event, this.dropListId, this.cdr);
8885
8891
  }
8886
8892
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.31", ngImport: i0, type: BuilderButtonBlockComponent, deps: [{ token: i0.ElementRef }, { token: DragEngineService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
8887
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.31", type: BuilderButtonBlockComponent, isStandalone: false, selector: "button[iox-button-block],a[iox-button-block]", inputs: { children: "children", style: "style", tag: "tag", href: "href", target: "target", type: "type", nodeId: "nodeId", dropListId: "dropListId" }, outputs: { childClick: "childClick", childMouseEnter: "childMouseEnter", childMouseLeave: "childMouseLeave" }, host: { properties: { "class": "'button-block-root iox-node-' + nodeId", "attr.href": "tag === 'a' ? (href || null) : null", "attr.target": "tag === 'a' ? (target || null) : null", "attr.type": "tag === 'a' ? null : type" } }, ngImport: i0, template: `
8893
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.31", type: BuilderButtonBlockComponent, isStandalone: false, selector: "button[iox-button-block],a[iox-button-block]", inputs: { children: "children", style: "style", tag: "tag", linkType: "linkType", href: "href", pageRoute: "pageRoute", target: "target", type: "type", nodeId: "nodeId", dropListId: "dropListId" }, outputs: { childClick: "childClick", childMouseEnter: "childMouseEnter", childMouseLeave: "childMouseLeave" }, host: { properties: { "class": "'button-block-root iox-node-' + nodeId", "attr.href": "resolvedHref", "attr.target": "tag === 'a' ? (target || null) : null", "attr.type": "tag === 'a' ? null : type" } }, ngImport: i0, template: `
8888
8894
  <span *ngIf="!children.length" class="button-block-placeholder" data-iox-chrome>Button</span>
8889
8895
 
8890
8896
  <!-- WRAPPER COLLAPSE (task 9c): render children directly into the host; iox-outer + drag land
@@ -8914,7 +8920,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.31", ngImpo
8914
8920
  </ng-container>
8915
8921
  `, host: {
8916
8922
  '[class]': "'button-block-root iox-node-' + nodeId",
8917
- '[attr.href]': "tag === 'a' ? (href || null) : null",
8923
+ '[attr.href]': 'resolvedHref',
8918
8924
  '[attr.target]': "tag === 'a' ? (target || null) : null",
8919
8925
  '[attr.type]': "tag === 'a' ? null : type",
8920
8926
  }, standalone: false, styles: [":host{box-sizing:border-box}.button-block-placeholder{flex:1;display:flex;align-items:center;justify-content:center;color:#64748b66;font-size:12px;pointer-events:none;-webkit-user-select:none;user-select:none}:host ::ng-deep>[class*=iox-outer-]{min-width:0}\n"] }]
@@ -8924,8 +8930,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.31", ngImpo
8924
8930
  type: Input
8925
8931
  }], tag: [{
8926
8932
  type: Input
8933
+ }], linkType: [{
8934
+ type: Input
8927
8935
  }], href: [{
8928
8936
  type: Input
8937
+ }], pageRoute: [{
8938
+ type: Input
8929
8939
  }], target: [{
8930
8940
  type: Input
8931
8941
  }], type: [{
@@ -10374,66 +10384,6 @@ function matchesControlSearch(name, label, term) {
10374
10384
  return name.toLowerCase().includes(needle) || (label ?? '').toLowerCase().includes(needle);
10375
10385
  }
10376
10386
 
10377
- const FORM_PRESETS = Object.freeze([
10378
- {
10379
- id: 'contact', name: 'Contact', icon: 'ph-thin ph-envelope-simple',
10380
- description: 'Name, email and a message. Stored, and emailed to you.',
10381
- formName: 'Contact form',
10382
- fields: [
10383
- { label: 'Full name', control: 'text', required: true },
10384
- { label: 'Email', control: 'email', required: true },
10385
- { label: 'Message', control: 'textarea', required: true, rows: 5 },
10386
- ],
10387
- submitLabel: 'Send message',
10388
- successText: 'Thanks — we’ll be in touch shortly.',
10389
- errorText: 'We couldn’t send your message. Please try again — your answers are still here.',
10390
- },
10391
- {
10392
- id: 'newsletter', name: 'Newsletter', icon: 'ph-thin ph-paper-plane-tilt',
10393
- description: 'One email field plus consent. Stored.',
10394
- formName: 'Newsletter signup',
10395
- fields: [
10396
- { label: 'Email', control: 'email', required: true, placeholder: 'you@company.com' },
10397
- // Consent is a checkbox that must be TICKED — `required` on a checkbox becomes the
10398
- // `accepted` rule, with its own message, rather than a generic "this is required".
10399
- { label: 'Email me occasional updates', control: 'checkbox', required: true },
10400
- ],
10401
- submitLabel: 'Subscribe',
10402
- successText: 'You’re on the list.',
10403
- errorText: 'We couldn’t sign you up. Please try again.',
10404
- },
10405
- {
10406
- id: 'application', name: 'Application', icon: 'ph-thin ph-read-cv-logo',
10407
- description: 'Details plus a CV upload. Stored, with an auto-reply.',
10408
- formName: 'Application',
10409
- fields: [
10410
- { label: 'Full name', control: 'text', required: true },
10411
- { label: 'Email', control: 'email', required: true },
10412
- { label: 'Phone', control: 'tel' },
10413
- { label: 'Role', control: 'select', required: true, optionsText: 'Design\nEngineering\nOther' },
10414
- { label: 'CV', control: 'file', required: true, help: 'PDF or Word, up to 5MB' },
10415
- { label: 'Anything else', control: 'textarea', rows: 4 },
10416
- ],
10417
- submitLabel: 'Apply',
10418
- successText: 'Application received — we’ll read it properly and reply.',
10419
- errorText: 'We couldn’t submit your application. Please try again.',
10420
- },
10421
- {
10422
- id: 'booking', name: 'Booking request', icon: 'ph-thin ph-calendar-check',
10423
- description: 'Date and party size. Stored, and it notifies you.',
10424
- formName: 'Booking request',
10425
- fields: [
10426
- { label: 'Name', control: 'text', required: true },
10427
- { label: 'Email', control: 'email', required: true },
10428
- { label: 'Date', control: 'date', required: true },
10429
- { label: 'People', control: 'number', required: true },
10430
- { label: 'Notes', control: 'textarea', rows: 3, help: 'Allergies, access needs, anything useful' },
10431
- ],
10432
- submitLabel: 'Request a booking',
10433
- successText: 'Request received — we’ll confirm by email.',
10434
- errorText: 'We couldn’t send your request. Please try again.',
10435
- },
10436
- ]);
10437
10387
  /**
10438
10388
  * Build a preset's node tree.
10439
10389
  *
@@ -10826,11 +10776,9 @@ function text(content, createConfig, styleId, styles = {}) {
10826
10776
  wearing(node, styleId);
10827
10777
  return styled(node, { padding: '0', margin: '0', ...styles });
10828
10778
  }
10829
- /** A button's label takes the BUTTON's type (the style's size, weight, case, tracking) — not body's. */
10830
- const BUTTON_LABEL = {
10831
- color: 'inherit', fontFamily: 'inherit', fontSize: 'inherit', fontWeight: 'inherit', lineHeight: 'inherit',
10832
- letterSpacing: 'inherit', textTransform: 'inherit',
10833
- };
10779
+ /** A button's label takes the BUTTON's type (size, weight, case, tracking) and ink — the contract's
10780
+ * `button-label` element style, the one the site composer gives a composed button's label too (W1.1). */
10781
+ const BUTTON_LABEL_STYLE = 'button-label';
10834
10782
  function withChildren(node, children) {
10835
10783
  if (!node || children.some(c => !c))
10836
10784
  return null;
@@ -10856,7 +10804,7 @@ function button(styleId, label, createConfig, styles = {}) {
10856
10804
  return null;
10857
10805
  setTrait(btn, 'tag', 'button');
10858
10806
  styled(btn, styles);
10859
- return withChildren(btn, [text(label, createConfig, undefined, BUTTON_LABEL)]);
10807
+ return withChildren(btn, [text(label, createConfig, BUTTON_LABEL_STYLE)]);
10860
10808
  }
10861
10809
  /** A Container sized by its content: the palette Container's 200px drop-zone min-height is canvas
10862
10810
  * furniture, and a specimen has no drop zone. */
@@ -11030,6 +10978,10 @@ class BuilderButtonComponentConfig extends ComponentConfig {
11030
10978
  }
11031
10979
  }
11032
10980
 
10981
+ const BUTTON_LINK_TYPES = [
10982
+ { label: 'External URL', value: LinkType.External },
10983
+ { label: 'Website Page', value: LinkType.Page },
10984
+ ];
11033
10985
  class ButtonBlockComponentConfig extends ComponentConfig {
11034
10986
  constructor() {
11035
10987
  super('ButtonBlock', 'app-builder-button-block', 'ph-thin ph-cursor-click', 'Basic');
@@ -11038,13 +10990,21 @@ class ButtonBlockComponentConfig extends ComponentConfig {
11038
10990
  this.children = [];
11039
10991
  this.inputs = {
11040
10992
  tag: 'select',
10993
+ linkType: 'select',
11041
10994
  href: 'text',
10995
+ pageRoute: 'text',
11042
10996
  target: 'select',
11043
10997
  type: 'select',
11044
10998
  };
10999
+ // A link button points at a URL or at a website PAGE by route — the Link's two link types
11000
+ // (W1.1): a page route is shown as the route here and resolved base-relative by the engine.
11001
+ // `href` / `pageRoute` depend on `linkType`, which depends on `tag`: a trait whose controlling
11002
+ // trait is hidden is hidden too, so a <button> shows neither.
11045
11003
  this.traits = [
11046
11004
  new TraitConfig('tag', 'Tag', TraitInputType.Select, ['button', 'a'], 'button'),
11047
- new TraitConfig('href', 'URL', TraitInputType.Text, undefined, '', false, { trait: 'tag', values: 'a' }),
11005
+ new TraitConfig('linkType', 'Link Type', TraitInputType.Select, BUTTON_LINK_TYPES, LinkType.External, false, { trait: 'tag', values: 'a' }),
11006
+ new TraitConfig('href', 'URL', TraitInputType.Text, undefined, '', false, { trait: 'linkType', values: LinkType.External }),
11007
+ new TraitConfig('pageRoute', 'Page Route', TraitInputType.Text, undefined, '', false, { trait: 'linkType', values: LinkType.Page }),
11048
11008
  new TraitConfig('target', 'Target', TraitInputType.Select, ['_self', '_blank'], '_self', false, { trait: 'tag', values: 'a' }),
11049
11009
  new TraitConfig('type', 'Type', TraitInputType.Select, ['button', 'submit', 'reset'], 'button', false, { trait: 'tag', values: 'button' }),
11050
11010
  ];
@@ -11843,5 +11803,5 @@ class BuilderSpacerComponentConfig extends ComponentConfig {
11843
11803
  * Generated bundle index. Do not edit.
11844
11804
  */
11845
11805
 
11846
- export { ACTION_TYPE_OPTIONS, AuditCode, AuditPanelComponent, AuditSeverity, BODY_CRUMB_LABEL, BREAKPOINT_PRESENTATION, BUILDER_CANVAS_CONTAINER, BUILDER_CHROME_EN, BUILDER_FONT_LINK_ATTR, BUILDER_TOKEN_SCOPE_CLASS, BackgroundGroupStyleConfig, BorderGroupStyleConfig, BreadcrumbBarComponent, BuilderButtonBlockComponent, BuilderButtonComponentConfig, BuilderClipboardService, BuilderComponent, BuilderContainerComponent, BuilderContainerComponentConfig, BuilderDataSourceService, BuilderDialogComponent, BuilderDividerComponentConfig, BuilderHeadingComponentConfig, BuilderHistoryService, BuilderIconComponentConfig, BuilderImageComponentConfig, BuilderLinkComponentConfig, BuilderLinkedContainerComponent, BuilderLinkedContainerConfig, BuilderListComponentConfig, BuilderListItemComponentConfig, BuilderMode, BuilderRepeaterComponent, BuilderSpacerComponentConfig, ButtonBlockComponentConfig, CANVAS_EMPTY_IMAGE_LABEL_EN, CANVAS_EMPTY_IMAGE_LABEL_KEY, CANVAS_ROOT_RESET_CSS, CardComponentConfig, ChildLayoutGroupStyleConfig, ComponentConfig, ComponentRegistryService, DEFAULT_ESSENTIAL_TRAITS, DRAG_HANDLE_ATTR, DROP_REFUSED_CLASS, DataSourceRegistryService, DataSourceType, DialogComponentConfig, DimensionsGroupStyleConfig, DragEngineService, EASING_OPTIONS$1 as EASING_OPTIONS, EDITOR_CHROME_ATTRIBUTE, ESSENTIAL_TRAITS_BY_TYPE, EffectsGroupStyleConfig, FIELD_KIND_PRESETS, FIELD_PARTS, FORM_PRESETS, FORM_STATE_BLOCK_TYPES, FORM_TYPE, FieldComponentConfig, FieldGroupComponentConfig, FormComponentConfig, FormErrorComponentConfig, FormStateService, FormSuccessComponentConfig, GalleryConfig, GroupStyleConfig, INSERT_REFUSAL_LABEL_KEYS, INTERACTION_STATES, INVERSE_ACTION, IOX_BUILDER_CANVAS, IOX_BUILDER_LABELS, IOX_DATA_SOURCE_ENDPOINTS, InsertRefusal, InteractionEngineService, InteractionPresetRegistryService, IoxBuilderModule, IoxDraggableDirective, IoxDropzoneDirective, LAYOUT_PRESETS, LayerTreeComponent, LayoutGroupStyleConfig, ListGroupStyleConfig, NodeAction, OverlayComponent, OverlayService, PALETTE_PRESET_DEFS, PanelChildComponent, PanelComponent, PanelEventService, PanelEventTypes, PanelTypes, PositionGroupStyleConfig, PresetRegistryService, RELATIONAL_STATES, RELATIONAL_STATE_BASE, ROOT_ESCAPE_PX, ROUTE_ANIMATION_OPTIONS, RenderDirective, RepeaterComponentConfig, RootZone, SCREEN_WIDTH_OPTIONS, STRUCTURAL_STATES, SUPPORTED_STATES, SectionComponent, SectionComponentConfig, SizeGroupStyleConfig, SliderContainerComponent, SliderContainerConfig, SliderSlideComponent, SliderSlideConfig, SpacingGroupStyleConfig, StyleCategory, StyleRegistryService, TraitConfig as StyleTraitConfig, SubmitButtonComponentConfig, SymbolRegistryService, TARGETED_STATES, TARGETED_STATE_BASE, TRIGGER_OPTIONS, TextBlockComponentConfig, ToolbarAction, ToolbarComponent, TraitConfig, TraitInputType, TypographyGroupStyleConfig, UNITS_ALL, UNITS_DEG, UNITS_FIXED, UNITS_NO_VW, VALIDATION_STATES, VALIDATION_STATE_CLASS, ViewportService, ZOOM_OPTIONS, arrayItemSchemaFields, arraySchemaFields, auditNodes, buildConsentPreset, buildElementStyleSpecimen, buildFieldKindPreset, buildFlavorSpecimen, buildFormPreset, buildFullStyleTraits, buildLayoutPreset, buildPalettePreset, buildPresetStyleTraits, canFluidise, canvasEmptyImageLabel, collapseColumnsProps, columnCountOf, defaultBuilderLabels, defaultPageSettings, dropTargetLabel, escapesRoot, essentialTraitsFor, findNodeLocation, findParentOf, flattenSchemaFields, fluidiseProps, generateNodeId, insertRefusal, insertRefusalLabel, isHiddenAt, isSpecimen, markSpecimen, matchesControlSearch, nearestFormNode, nodeAncestorPath, nodeAncestorPathInEither, reorderProps, resolveInsertTarget, resolveTraitControllerType, resolveTraitOptions, rootEscapeBand, rootZone, setStyleTrait, setTrait, stackChildrenProps, summarise, syncEmptyImagePlaceholder, syncNodeDesign, textNode, visibilityProps, wrapNode };
11806
+ export { ACTION_TYPE_OPTIONS, AuditCode, AuditPanelComponent, AuditSeverity, BODY_CRUMB_LABEL, BREAKPOINT_PRESENTATION, BUILDER_CANVAS_CONTAINER, BUILDER_CHROME_EN, BUILDER_FONT_LINK_ATTR, BUILDER_TOKEN_SCOPE_CLASS, BackgroundGroupStyleConfig, BorderGroupStyleConfig, BreadcrumbBarComponent, BuilderButtonBlockComponent, BuilderButtonComponentConfig, BuilderClipboardService, BuilderComponent, BuilderContainerComponent, BuilderContainerComponentConfig, BuilderDataSourceService, BuilderDialogComponent, BuilderDividerComponentConfig, BuilderHeadingComponentConfig, BuilderHistoryService, BuilderIconComponentConfig, BuilderImageComponentConfig, BuilderLinkComponentConfig, BuilderLinkedContainerComponent, BuilderLinkedContainerConfig, BuilderListComponentConfig, BuilderListItemComponentConfig, BuilderMode, BuilderRepeaterComponent, BuilderSpacerComponentConfig, ButtonBlockComponentConfig, CANVAS_EMPTY_IMAGE_LABEL_EN, CANVAS_EMPTY_IMAGE_LABEL_KEY, CANVAS_ROOT_RESET_CSS, CardComponentConfig, ChildLayoutGroupStyleConfig, ComponentConfig, ComponentRegistryService, DEFAULT_ESSENTIAL_TRAITS, DRAG_HANDLE_ATTR, DROP_REFUSED_CLASS, DataSourceRegistryService, DataSourceType, DialogComponentConfig, DimensionsGroupStyleConfig, DragEngineService, EASING_OPTIONS$1 as EASING_OPTIONS, EDITOR_CHROME_ATTRIBUTE, ESSENTIAL_TRAITS_BY_TYPE, EffectsGroupStyleConfig, FIELD_KIND_PRESETS, FIELD_PARTS, FORM_STATE_BLOCK_TYPES, FORM_TYPE, FieldComponentConfig, FieldGroupComponentConfig, FormComponentConfig, FormErrorComponentConfig, FormStateService, FormSuccessComponentConfig, GalleryConfig, GroupStyleConfig, INSERT_REFUSAL_LABEL_KEYS, INTERACTION_STATES, INVERSE_ACTION, IOX_BUILDER_CANVAS, IOX_BUILDER_LABELS, IOX_DATA_SOURCE_ENDPOINTS, InsertRefusal, InteractionEngineService, InteractionPresetRegistryService, IoxBuilderModule, IoxDraggableDirective, IoxDropzoneDirective, LAYOUT_PRESETS, LayerTreeComponent, LayoutGroupStyleConfig, ListGroupStyleConfig, NodeAction, OverlayComponent, OverlayService, PALETTE_PRESET_DEFS, PanelChildComponent, PanelComponent, PanelEventService, PanelEventTypes, PanelTypes, PositionGroupStyleConfig, PresetRegistryService, RELATIONAL_STATES, RELATIONAL_STATE_BASE, ROOT_ESCAPE_PX, ROUTE_ANIMATION_OPTIONS, RenderDirective, RepeaterComponentConfig, RootZone, SCREEN_WIDTH_OPTIONS, STRUCTURAL_STATES, SUPPORTED_STATES, SectionComponent, SectionComponentConfig, SizeGroupStyleConfig, SliderContainerComponent, SliderContainerConfig, SliderSlideComponent, SliderSlideConfig, SpacingGroupStyleConfig, StyleCategory, StyleRegistryService, TraitConfig as StyleTraitConfig, SubmitButtonComponentConfig, SymbolRegistryService, TARGETED_STATES, TARGETED_STATE_BASE, TRIGGER_OPTIONS, TextBlockComponentConfig, ToolbarAction, ToolbarComponent, TraitConfig, TraitInputType, TypographyGroupStyleConfig, UNITS_ALL, UNITS_DEG, UNITS_FIXED, UNITS_NO_VW, VALIDATION_STATES, VALIDATION_STATE_CLASS, ViewportService, ZOOM_OPTIONS, arrayItemSchemaFields, arraySchemaFields, auditNodes, buildConsentPreset, buildElementStyleSpecimen, buildFieldKindPreset, buildFlavorSpecimen, buildFormPreset, buildFullStyleTraits, buildLayoutPreset, buildPalettePreset, buildPresetStyleTraits, canFluidise, canvasEmptyImageLabel, collapseColumnsProps, columnCountOf, defaultBuilderLabels, defaultPageSettings, dropTargetLabel, escapesRoot, essentialTraitsFor, findNodeLocation, findParentOf, flattenSchemaFields, fluidiseProps, generateNodeId, insertRefusal, insertRefusalLabel, isHiddenAt, isSpecimen, markSpecimen, matchesControlSearch, nearestFormNode, nodeAncestorPath, nodeAncestorPathInEither, reorderProps, resolveInsertTarget, resolveTraitControllerType, resolveTraitOptions, rootEscapeBand, rootZone, setStyleTrait, setTrait, stackChildrenProps, summarise, syncEmptyImagePlaceholder, syncNodeDesign, textNode, visibilityProps, wrapNode };
11847
11807
  //# sourceMappingURL=vectoriox-iox-builder.mjs.map