@descope/flow-components 3.13.0 → 3.13.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.
@@ -5,7 +5,7 @@
5
5
  "name": "flowComponents",
6
6
  "type": "app",
7
7
  "buildInfo": {
8
- "buildVersion": "3.13.0",
8
+ "buildVersion": "3.13.2",
9
9
  "buildName": "@descope/flow-components"
10
10
  },
11
11
  "remoteEntry": {
@@ -5,7 +5,7 @@
5
5
  "name": "flowComponents",
6
6
  "type": "app",
7
7
  "buildInfo": {
8
- "buildVersion": "3.13.0",
8
+ "buildVersion": "3.13.2",
9
9
  "buildName": "@descope/flow-components"
10
10
  },
11
11
  "remoteEntry": {
package/dist/index.cjs.js CHANGED
@@ -90125,6 +90125,11 @@ function requireIndex_cjs () {
90125
90125
  componentName: componentName$_,
90126
90126
  baseSelector: 'vaadin-tooltip',
90127
90127
  }) {
90128
+ // Observes the inner descope-anchored's `class` attribute so runtime updates
90129
+ // (e.g. real-time conditional components toggling `.hidden`) keep this
90130
+ // tooltip's class in sync. Set up in connectedCallback so reconnects work.
90131
+ #anchoredClassObserver = null;
90132
+
90128
90133
  constructor() {
90129
90134
  super();
90130
90135
 
@@ -90240,9 +90245,31 @@ function requireIndex_cjs () {
90240
90245
  );
90241
90246
  this.#setTooltipTarget();
90242
90247
 
90248
+ setTimeout(() => this.#onOverlayReady());
90249
+ }
90250
+
90251
+ #observeAnchored() {
90252
+ this.#anchoredClassObserver?.disconnect();
90253
+ if (this.anchored) {
90254
+ this.#anchoredClassObserver = observeAttributes(
90255
+ this.anchored,
90256
+ () => this.#syncComponentState(),
90257
+ { includeAttrs: ['class'] },
90258
+ );
90259
+ }
90260
+ }
90261
+
90262
+ // createBaseClass gates init() to first-connect, so observing here is
90263
+ // required for the detach/reattach cycle to keep working.
90264
+ connectedCallback() {
90265
+ super.connectedCallback?.();
90243
90266
  this.#syncComponentState();
90267
+ this.#observeAnchored();
90268
+ }
90244
90269
 
90245
- setTimeout(() => this.#onOverlayReady());
90270
+ disconnectedCallback() {
90271
+ super.disconnectedCallback?.();
90272
+ this.#anchoredClassObserver?.disconnect();
90246
90273
  }
90247
90274
 
90248
90275
  #setTooltipTarget() {
@@ -91534,6 +91561,12 @@ function requireIndex_cjs () {
91534
91561
  componentName: componentName$X,
91535
91562
  baseSelector: 'descope-anchored',
91536
91563
  }) {
91564
+ // Observes the inner descope-anchored's `class` attribute so runtime
91565
+ // updates (e.g. real-time conditional components toggling `.hidden`) keep
91566
+ // this attachment host's class in sync. Set up in connectedCallback so
91567
+ // reconnects work (createBaseClass gates init() to first connect only).
91568
+ #anchoredClassObserver = null;
91569
+
91537
91570
  constructor() {
91538
91571
  super();
91539
91572
 
@@ -91572,8 +91605,6 @@ function requireIndex_cjs () {
91572
91605
  init() {
91573
91606
  super.init?.();
91574
91607
 
91575
- this.#syncComponentState();
91576
-
91577
91608
  injectStyle(
91578
91609
  `
91579
91610
  :host {
@@ -91624,6 +91655,30 @@ function requireIndex_cjs () {
91624
91655
  this.classList.toggle('hidden', hasHidden);
91625
91656
  }
91626
91657
 
91658
+ #observeAnchored() {
91659
+ this.#anchoredClassObserver?.disconnect();
91660
+ if (this.anchored) {
91661
+ this.#anchoredClassObserver = observeAttributes(
91662
+ this.anchored,
91663
+ () => this.#syncComponentState(),
91664
+ { includeAttrs: ['class'] },
91665
+ );
91666
+ }
91667
+ }
91668
+
91669
+ // createBaseClass gates init() to first-connect, so observing here is
91670
+ // required for the detach/reattach cycle to keep working.
91671
+ connectedCallback() {
91672
+ super.connectedCallback?.();
91673
+ this.#syncComponentState();
91674
+ this.#observeAnchored();
91675
+ }
91676
+
91677
+ disconnectedCallback() {
91678
+ super.disconnectedCallback?.();
91679
+ this.#anchoredClassObserver?.disconnect();
91680
+ }
91681
+
91627
91682
  #syncAvailableSizeAttr() {
91628
91683
  const anchor = this.defaultSlot?.assignedElements()?.[0];
91629
91684
 
@@ -108971,6 +109026,11 @@ descope-enriched-text {
108971
109026
 
108972
109027
  #hostStretchSheet = null;
108973
109028
 
109029
+ // Observes the anchor's `class` attribute so runtime updates by the SDK
109030
+ // (e.g. real-time conditional components toggling `.hidden`) propagate to
109031
+ // this element. Without this, only the initial slotchange would sync.
109032
+ #anchorClassObserver = null;
109033
+
108974
109034
  get #anchor() {
108975
109035
  return this.defaultSlot.assignedElements({ flatten: true })[0];
108976
109036
  }
@@ -109073,6 +109133,28 @@ descope-enriched-text {
109073
109133
  this.#anchored,
109074
109134
  'st-host-direction',
109075
109135
  );
109136
+
109137
+ this.#observeAnchorClass();
109138
+ }
109139
+
109140
+ #observeAnchorClass() {
109141
+ this.#anchorClassObserver?.disconnect();
109142
+ if (this.#anchor) {
109143
+ this.#anchorClassObserver = observeAttributes(
109144
+ this.#anchor,
109145
+ () => this.#syncComponentState(),
109146
+ { includeAttrs: ['class'] },
109147
+ );
109148
+ }
109149
+ }
109150
+
109151
+ // createBaseClass gates init() to first-connect (#isInit). Without
109152
+ // re-observing here, runtime `.hidden` toggles stop syncing after a
109153
+ // detach/reattach cycle.
109154
+ connectedCallback() {
109155
+ super.connectedCallback?.();
109156
+ this.#observeAnchorClass();
109157
+ this.#syncComponentState();
109076
109158
  }
109077
109159
 
109078
109160
  // Injects [stretch] layout rules into the containing component's shadow root (e.g. descope-attachment)
@@ -109114,6 +109196,7 @@ descope-enriched-text {
109114
109196
  super.disconnectedCallback?.();
109115
109197
  this.#stretchObserver?.disconnect();
109116
109198
  this.#directionObserver?.disconnect();
109199
+ this.#anchorClassObserver?.disconnect();
109117
109200
  }
109118
109201
 
109119
109202
  // Track whether anything is slotted, so the host display rule can hide an
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@descope/flow-components",
3
- "version": "3.13.0",
3
+ "version": "3.13.2",
4
4
  "description": "",
5
5
  "main": "dist/index.cjs.js",
6
6
  "module": "dist/index.esm.js",
@@ -97,7 +97,7 @@
97
97
  "webpack-subresource-integrity": "5.2.0-rc.1"
98
98
  },
99
99
  "dependencies": {
100
- "@descope/web-components-ui": "3.13.0"
100
+ "@descope/web-components-ui": "3.13.2"
101
101
  },
102
102
  "peerDependencies": {
103
103
  "react": ">= 18"