@vectoriox/iox-builder 11.11.0 → 11.11.1

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.
package/index.d.ts CHANGED
@@ -248,7 +248,8 @@ interface InteractionPreset {
248
248
  type ElementState = 'hover' | 'active' | 'focus' | 'first-child' | 'last-child' | 'nth-child(odd)' | 'nth-child(even)' | 'parent-hover' | 'trigger-hover' | 'trigger-on' | 'wrong' | 'accepted' | 'current' | 'on';
249
249
  /** Interaction pseudo-classes — compiled to .iox-node-{id}:state */
250
250
  declare const INTERACTION_STATES: ElementState[];
251
- /** Structural pseudo-classes — compiled to .iox-outer-{id}:state */
251
+ /** Structural pseudo-classes — matched on the outer element by the shared `planStateRule` (@vectoriox/iox-ui), the
252
+ * engine's planner too (iox-client-engine#14). */
252
253
  declare const STRUCTURAL_STATES: ElementState[];
253
254
  /**
254
255
  * Relational pseudo-classes — the styled element is a descendant, the pseudo-class
@@ -1533,19 +1534,6 @@ declare class StyleRegistryService {
1533
1534
  private fontLocale;
1534
1535
  private tokenMode;
1535
1536
  private styleEl;
1536
- /**
1537
- * Properties that must live on the OUTER wrapper (.iox-outer-{id}) because they
1538
- * affect how the element participates in its PARENT layout (flex/block flow).
1539
- * Everything else goes to the INNER element (.iox-node-{id}).
1540
- *
1541
- * Exception — out-of-flow positioning (position:fixed/absolute):
1542
- * When position is fixed or absolute, width is redirected to the inner element
1543
- * (the positioned one) and a default width:100% is added if none is set, so the
1544
- * element stays visible. top/right/bottom/left/zIndex are always inner because
1545
- * they are co-ordinates of the positioned element, not the flow wrapper.
1546
- * position itself goes to inner with `!important` to beat component-scoped CSS.
1547
- */
1548
- private static readonly OUTER_PROPS;
1549
1537
  /**
1550
1538
  * Properties that need !important on the inner element to beat Angular's scoped-CSS
1551
1539
  * specificity boost. CANVAS-ONLY (H2 audit, 2026-10-11): the shared compiler never forces
@@ -1601,10 +1589,13 @@ declare class StyleRegistryService {
1601
1589
  private clearResponsive;
1602
1590
  private isOutOfFlow;
1603
1591
  /**
1604
- * The selector BODY (no leading dot) for a state rule, or null when a relational / targeted
1605
- * state has no scope yet (emitting it unscoped would be wrong — a page-global `:has()`).
1592
+ * A state rule's CSS through the SHARED planner the engine emits with (`planStateRule`, iox-client-engine#14), or ''
1593
+ * when a relational / targeted state has no scope yet (emitting it unscoped would be wrong — a page-global `:has()`).
1594
+ * `relativeToId` is the parent for a relational state (parent-hover) and the nearest common ancestor of the node and
1595
+ * its trigger for a targeted one (trigger-hover, trigger-on). A structural state is matched on the outer element and
1596
+ * reaches the node's own; its outer props stay outer.
1606
1597
  */
1607
- private stateSelector;
1598
+ private stateRuleCss;
1608
1599
  /**
1609
1600
  * The inner + outer rule (joined) and the `::marker` rule for one composed style map.
1610
1601
  * `isOutOfFlow` is passed in rather than read from `styles` because a breakpoint layer is
@@ -1648,6 +1639,9 @@ declare class StyleRegistryService {
1648
1639
  loadFontsFor(tokens: ReadonlyArray<DesignTokenLike> | null | undefined, locale?: string | null): void;
1649
1640
  private linkFonts;
1650
1641
  private compile;
1642
+ /** One rule for a FULL selector. Declaration compilation (kebab-case, viewport-unit rewrite, !important) lives in
1643
+ * the shared style-compiler so the SSR engine produces byte-identical output. */
1644
+ private compileSelector;
1651
1645
  private _flushPending;
1652
1646
  private flush;
1653
1647
  static ɵfac: i0.ɵɵFactoryDeclaration<StyleRegistryService, never>;
@@ -1898,10 +1892,10 @@ declare class InteractionEngineService {
1898
1892
  private executeSwiperAction;
1899
1893
  private resolveTarget;
1900
1894
  private executeAction;
1895
+ /** On the canvas a run never writes a transform inline (one inside the scaled page breaks Lenis). */
1896
+ private settleOptions;
1901
1897
  /** What an element is left as once an action is done: a revealed one interactive, a hidden one inert. */
1902
1898
  private settleAfter;
1903
- /** Write a frame inline. On the canvas never a transform: one inside the scaled page breaks Lenis. */
1904
- private applyFrame;
1905
1899
  /**
1906
1900
  * Freeze an element at the animation's starting frame immediately, before any
1907
1901
  * trigger fires. Called for ALL entrance-type actions regardless of trigger so
@@ -1914,6 +1908,8 @@ declare class InteractionEngineService {
1914
1908
  */
1915
1909
  private applyPreState;
1916
1910
  private clearInlineAnimationStyles;
1911
+ /** A hover-out: the action played back from where the element IS (never from its end frame), settled by the shared
1912
+ * rule — played back to hidden, it holds hidden; to shown, it releases. */
1917
1913
  private reverseAction;
1918
1914
  /** The action's keyframes from the ONE shared table both runtimes animate from (composite T2). */
1919
1915
  private keyframesFor;
@@ -3064,8 +3060,11 @@ declare class BuilderContainerComponent implements OnInit, OnDestroy {
3064
3060
  * stylesheet treat them exactly as it treats the engine's own twins.
3065
3061
  */
3066
3062
  formClass: string;
3067
- /** Which state the canvas is showing. Only meaningful on a form host. */
3068
- formState: string;
3063
+ /** Which state the canvas is showing. Only meaningful on a form host: its submit buttons follow it (busy, disabled
3064
+ * while Sending — the ONE `syncSubmitButtons` both live paths call, iox-ui#42); "While sending" is the shared CSS's. */
3065
+ set formState(state: string);
3066
+ get formState(): string;
3067
+ private _formState;
3069
3068
  childClick: EventEmitter<any>;
3070
3069
  childMouseEnter: EventEmitter<any>;
3071
3070
  childMouseLeave: EventEmitter<void>;
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@vectoriox/iox-builder",
3
- "version": "11.11.0",
3
+ "version": "11.11.1",
4
4
  "peerDependencies": {
5
5
  "@angular/common": ">=20.0.0",
6
6
  "@angular/core": ">=20.0.0",
7
7
  "@angular/animations": ">=20.0.0",
8
8
  "@angular/cdk": ">=20.0.0",
9
- "@vectoriox/iox-ui": ">=5.73.0",
9
+ "@vectoriox/iox-ui": ">=5.81.0",
10
10
  "interactjs": "^1.10.27",
11
11
  "primeng": ">=20.0.0",
12
12
  "swiper": ">=12.0.0",