@vectoriox/iox-builder 1.6.5 → 1.6.7

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.
@@ -2819,7 +2819,11 @@ class RenderDirective {
2819
2819
  if (nativeEl) {
2820
2820
  nativeEl.style.display = 'block';
2821
2821
  }
2822
- if (nativeEl) {
2822
+ // Preview clones (repeater/slider-generated rows) are display-only — only the
2823
+ // template node is selectable/editable. Skip overlay registration + interaction
2824
+ // wiring for them so they can't be hovered, selected, or edited on the canvas.
2825
+ const isPreviewClone = !!node.__previewClone;
2826
+ if (nativeEl && !isPreviewClone) {
2823
2827
  // Register node → element mapping for parent lookups
2824
2828
  this.overlayService.registerNode(node, nativeEl, componentRef);
2825
2829
  // Notify BindingsComponent so it re-applies bindings on the new
@@ -2865,7 +2869,10 @@ class RenderDirective {
2865
2869
  });
2866
2870
  }
2867
2871
  // Wire up interactions (animations) after the element is in the DOM.
2868
- this.interactionEngine.attach(node);
2872
+ // Preview clones are static rows — no per-clone interaction wiring.
2873
+ if (!isPreviewClone) {
2874
+ this.interactionEngine.attach(node);
2875
+ }
2869
2876
  }
2870
2877
  /** Try setInput(); fall back to direct assignment for non-@Input properties. */
2871
2878
  safeSetInput(ref, name, value) {
@@ -5076,6 +5083,10 @@ function cloneNodesForItem(nodes, item) {
5076
5083
  clone.id = Math.random().toString(36).substr(2, 9);
5077
5084
  // Point this clone and all its descendants at the original CSS rule.
5078
5085
  clone.styleId = cssId;
5086
+ // Mark as a preview clone: display-only, not selectable/editable on the canvas.
5087
+ // (Distinct from styleId, which duplication/paste also uses.) The render directive
5088
+ // skips overlay registration for nodes carrying this flag.
5089
+ clone.__previewClone = true;
5079
5090
  if (clone.bindings?.length && item) {
5080
5091
  for (const binding of clone.bindings) {
5081
5092
  const value = resolvePath(item, binding.path);
@@ -5926,7 +5937,7 @@ class SliderContainerComponent {
5926
5937
  <i *ngIf="isLoading" class="ph-thin ph-circle-notch slider-badge-spin"></i>
5927
5938
  </div>
5928
5939
 
5929
- <div #editSwiperEl class="swiper swiper-edit" [attr.dir]="dir">
5940
+ <div #editSwiperEl class="swiper swiper-edit" [attr.dir]="dir" [style.direction]="dir">
5930
5941
  <div class="swiper-wrapper">
5931
5942
 
5932
5943
  <!-- NORMAL MODE: all children as draggable slides -->
@@ -6005,6 +6016,7 @@ class SliderContainerComponent {
6005
6016
  [ngClass]="['iox-node-' + nodeId]"
6006
6017
  [ngStyle]="style"
6007
6018
  [attr.dir]="dir"
6019
+ [style.direction]="dir"
6008
6020
  [style.--swiper-navigation-color]="navigationColor || null"
6009
6021
  [style.--swiper-navigation-size.px]="navigationSize || null"
6010
6022
  [style.--swiper-pagination-color]="paginationColor || null">
@@ -6076,7 +6088,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
6076
6088
  <i *ngIf="isLoading" class="ph-thin ph-circle-notch slider-badge-spin"></i>
6077
6089
  </div>
6078
6090
 
6079
- <div #editSwiperEl class="swiper swiper-edit" [attr.dir]="dir">
6091
+ <div #editSwiperEl class="swiper swiper-edit" [attr.dir]="dir" [style.direction]="dir">
6080
6092
  <div class="swiper-wrapper">
6081
6093
 
6082
6094
  <!-- NORMAL MODE: all children as draggable slides -->
@@ -6155,6 +6167,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
6155
6167
  [ngClass]="['iox-node-' + nodeId]"
6156
6168
  [ngStyle]="style"
6157
6169
  [attr.dir]="dir"
6170
+ [style.direction]="dir"
6158
6171
  [style.--swiper-navigation-color]="navigationColor || null"
6159
6172
  [style.--swiper-navigation-size.px]="navigationSize || null"
6160
6173
  [style.--swiper-pagination-color]="paginationColor || null">