@vectoriox/iox-builder 1.1.0 → 1.1.2

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vectoriox/iox-builder",
3
- "version": "1.1.0",
3
+ "version": "1.1.2",
4
4
  "peerDependencies": {
5
5
  "@angular/common": ">=20.0.0",
6
6
  "@angular/core": ">=20.0.0",
@@ -765,18 +765,24 @@ declare class BuilderComponent implements OnInit, AfterViewInit, OnChanges, OnDe
765
765
  /**
766
766
  * StyleRegistryService — manages a single <style> tag for the builder canvas.
767
767
  *
768
- * Each builder component gets a unique CSS class `.iox-node-{id}` applied to its
769
- * first inner element. onUpdate() in the style panel calls upsert() to compile
770
- * the flat style-trait map into a CSS rule and flush it to the stylesheet.
768
+ * Each builder component gets two CSS classes:
769
+ * .iox-node-{id} — applied to the inner element; handles layout/visual props
770
+ * (display, flex, background, border, padding, etc.)
771
+ * .iox-outer-{id} — applied to the host element by RenderDirective; handles
772
+ * properties that participate in the PARENT flow (margin,
773
+ * align-self, flex-grow/shrink/basis, order).
771
774
  *
772
- * This replaces the old [ngStyle] binding, enabling future support for
773
- * hover states, breakpoints, and pseudo-selectors without DOM modifications.
775
+ * This split is necessary because margin on an inner wrapper only adds internal
776
+ * space it does not push sibling elements. Applying margin to the host element
777
+ * (which IS the flex/block child in the parent container) makes it work correctly.
774
778
  *
775
779
  * Scoped to PageUiComponent.providers[] — one stylesheet per builder instance.
776
780
  */
777
781
  declare class StyleRegistryService {
778
782
  private rules;
779
783
  private styleEl;
784
+ /** Properties that must live on the host element to affect the parent layout. */
785
+ private static readonly OUTER_PROPS;
780
786
  init(): void;
781
787
  upsert(nodeId: string, styles: Record<string, any>): void;
782
788
  remove(nodeId: string): void;