@vectoriox/iox-builder 3.1.0 → 3.2.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.
|
@@ -827,6 +827,11 @@ var PanelEventTypes;
|
|
|
827
827
|
* id). Emitted when the overlay interaction badge is clicked so that badge → "edit THIS
|
|
828
828
|
* interaction", without firing the element's (live) animation. */
|
|
829
829
|
PanelEventTypes["INTERACTION_EDIT"] = "interactionedit";
|
|
830
|
+
/** A node's `interactions` were added/removed/edited. Carries `{ node }`.
|
|
831
|
+
* Repeater/Slider listen so their PREVIEW CLONES are re-cloned with the new interactions —
|
|
832
|
+
* clones are attached by ELEMENT at render time, so without this a new interaction only starts
|
|
833
|
+
* working after a save + reload. */
|
|
834
|
+
PanelEventTypes["INTERACTION_CHANGED"] = "interactionchanged";
|
|
830
835
|
})(PanelEventTypes || (PanelEventTypes = {}));
|
|
831
836
|
class PanelEventService {
|
|
832
837
|
constructor() {
|
|
@@ -6321,7 +6326,12 @@ class BuilderRepeaterComponent {
|
|
|
6321
6326
|
}
|
|
6322
6327
|
ngOnInit() {
|
|
6323
6328
|
this.bindingSub = this.panelEventService.subscribe(event => {
|
|
6324
|
-
|
|
6329
|
+
// A binding OR an interaction change on a template node must re-clone the preview rows.
|
|
6330
|
+
// Interactions matter because clones are attached by ELEMENT at render time, so a newly
|
|
6331
|
+
// added interaction never reaches an existing clone — it would appear to work only after
|
|
6332
|
+
// a save + reload. See element-context-state-plan.md.
|
|
6333
|
+
if (event.type !== PanelEventTypes.BINDING_CHANGED
|
|
6334
|
+
&& event.type !== PanelEventTypes.INTERACTION_CHANGED)
|
|
6325
6335
|
return;
|
|
6326
6336
|
const changedNode = event.data?.node;
|
|
6327
6337
|
if (!changedNode || !this.items.length)
|