@aurodesignsystem-dev/auro-formkit 0.0.0-pr740.1 → 0.0.0-pr740.3

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.
@@ -32,12 +32,6 @@ export class AuroBibtemplate extends LitElement {
32
32
  * @private
33
33
  */
34
34
  private buttonTag;
35
- /**
36
- * Prevents scrolling of the body when touching empty areas of the component.
37
- * @param {Event} event - The touchmove event.
38
- * @returns {void}
39
- */
40
- preventBodyScroll(event: Event): void;
41
35
  onCloseButtonClick(): void;
42
36
  /**
43
37
  * Exposes CSS parts for styling from parent components.
@@ -5,7 +5,7 @@ import { ifDefined } from 'lit/directives/if-defined.js';
5
5
 
6
6
  var colorCss$3 = css`#headerContainer{box-shadow:var(--ds-auro-dropdownbib-header-boxshadow-color)}#footerContainer{background-color:var(--ds-auro-dropdownbib-footer-container-color)}`;
7
7
 
8
- var styleCss$4 = css`#bibTemplate{display:flex;overflow:hidden;height:100%;max-height:100%;touch-action:none}#headerContainer{display:flex;flex-direction:column}#header{display:flex;width:100%;min-height:var(--ds-size-1000, 5rem);box-sizing:border-box;align-items:end;padding-top:var(--ds-size-400, 2rem);padding-right:var(--ds-size-700, 3.5rem);padding-left:var(--ds-size-200, 1rem);pointer-events:none}#subheader{width:100%}#subheader ::slotted([auro-input]){box-sizing:border-box;padding:0 var(--ds-size-200, 1rem)}#closeButton{position:absolute;top:var(--ds-size-400, 2rem);right:var(--ds-size-200, 1rem);border:none;background-color:transparent;cursor:pointer}#bodyContainer{position:relative;overflow:auto;flex:1 1 100%}:host([isfullscreen]) #bibTemplate{max-height:100dvh}:host([isfullscreen]) #bodyContainer{margin-top:var(--ds-size-100, 0.5rem)}#footerContainer{position:absolute;right:0;bottom:0;left:0;padding:var(--ds-size-200, 1rem)}`;
8
+ var styleCss$4 = css`#bibTemplate{display:flex;overflow:hidden;height:100%;max-height:100%;flex-direction:column}#headerContainer{display:flex;flex-direction:column}#header{display:flex;width:100%;min-height:var(--ds-size-1000, 5rem);box-sizing:border-box;align-items:end;padding-top:var(--ds-size-400, 2rem);padding-right:var(--ds-size-700, 3.5rem);padding-left:var(--ds-size-200, 1rem);pointer-events:none}#subheader{width:100%}#subheader ::slotted([auro-input]){box-sizing:border-box;padding:0 var(--ds-size-200, 1rem)}#closeButton{position:absolute;top:var(--ds-size-400, 2rem);right:var(--ds-size-200, 1rem);border:none;background-color:transparent;cursor:pointer}#bodyContainer{position:relative;overflow:auto;flex:1 1 100%}:host([isfullscreen]) #bibTemplate{max-height:100dvh}:host([isfullscreen]) #bodyContainer{margin-top:var(--ds-size-100, 0.5rem)}#footerContainer{position:absolute;right:0;bottom:0;left:0;padding:var(--ds-size-200, 1rem)}`;
9
9
 
10
10
  var tokenCss = css`:host{--ds-auro-dropdownbib-header-boxshadow-color: var(--ds-elevation-200, 0px 0px 10px rgba(0, 0, 0, 0.15));--ds-auro-dropdownbib-footer-container-color: var(--ds-basic-color-surface-default, #ffffff)}`;
11
11
 
@@ -1840,30 +1840,6 @@ class AuroBibtemplate extends LitElement {
1840
1840
  AuroLibraryRuntimeUtils$3.prototype.registerComponent(name, AuroBibtemplate);
1841
1841
  }
1842
1842
 
1843
- /**
1844
- * Prevents scrolling of the body when touching empty areas of the component.
1845
- * @param {Event} event - The touchmove event.
1846
- * @returns {void}
1847
- */
1848
- preventBodyScroll(event) {
1849
- if (event.target === this) {
1850
- event.preventDefault();
1851
- }
1852
- }
1853
-
1854
- connectedCallback() {
1855
- super.connectedCallback();
1856
-
1857
- this.preventBodyScroll = this.preventBodyScroll.bind(this);
1858
- this.addEventListener('touchmove', this.preventBodyScroll, { passive: false });
1859
- }
1860
-
1861
- disconnectedCallback() {
1862
- super.disconnectedCallback();
1863
-
1864
- this.removeEventListener('touchmove', this.preventBodyScroll, { passive: false });
1865
- }
1866
-
1867
1843
  onCloseButtonClick() {
1868
1844
  this.dispatchEvent(new Event("close-click", { bubbles: true,
1869
1845
  composed: true }));
@@ -5,7 +5,7 @@ import { ifDefined } from 'lit/directives/if-defined.js';
5
5
 
6
6
  var colorCss$3 = css`#headerContainer{box-shadow:var(--ds-auro-dropdownbib-header-boxshadow-color)}#footerContainer{background-color:var(--ds-auro-dropdownbib-footer-container-color)}`;
7
7
 
8
- var styleCss$4 = css`#bibTemplate{display:flex;overflow:hidden;height:100%;max-height:100%;touch-action:none}#headerContainer{display:flex;flex-direction:column}#header{display:flex;width:100%;min-height:var(--ds-size-1000, 5rem);box-sizing:border-box;align-items:end;padding-top:var(--ds-size-400, 2rem);padding-right:var(--ds-size-700, 3.5rem);padding-left:var(--ds-size-200, 1rem);pointer-events:none}#subheader{width:100%}#subheader ::slotted([auro-input]){box-sizing:border-box;padding:0 var(--ds-size-200, 1rem)}#closeButton{position:absolute;top:var(--ds-size-400, 2rem);right:var(--ds-size-200, 1rem);border:none;background-color:transparent;cursor:pointer}#bodyContainer{position:relative;overflow:auto;flex:1 1 100%}:host([isfullscreen]) #bibTemplate{max-height:100dvh}:host([isfullscreen]) #bodyContainer{margin-top:var(--ds-size-100, 0.5rem)}#footerContainer{position:absolute;right:0;bottom:0;left:0;padding:var(--ds-size-200, 1rem)}`;
8
+ var styleCss$4 = css`#bibTemplate{display:flex;overflow:hidden;height:100%;max-height:100%;flex-direction:column}#headerContainer{display:flex;flex-direction:column}#header{display:flex;width:100%;min-height:var(--ds-size-1000, 5rem);box-sizing:border-box;align-items:end;padding-top:var(--ds-size-400, 2rem);padding-right:var(--ds-size-700, 3.5rem);padding-left:var(--ds-size-200, 1rem);pointer-events:none}#subheader{width:100%}#subheader ::slotted([auro-input]){box-sizing:border-box;padding:0 var(--ds-size-200, 1rem)}#closeButton{position:absolute;top:var(--ds-size-400, 2rem);right:var(--ds-size-200, 1rem);border:none;background-color:transparent;cursor:pointer}#bodyContainer{position:relative;overflow:auto;flex:1 1 100%}:host([isfullscreen]) #bibTemplate{max-height:100dvh}:host([isfullscreen]) #bodyContainer{margin-top:var(--ds-size-100, 0.5rem)}#footerContainer{position:absolute;right:0;bottom:0;left:0;padding:var(--ds-size-200, 1rem)}`;
9
9
 
10
10
  var tokenCss = css`:host{--ds-auro-dropdownbib-header-boxshadow-color: var(--ds-elevation-200, 0px 0px 10px rgba(0, 0, 0, 0.15));--ds-auro-dropdownbib-footer-container-color: var(--ds-basic-color-surface-default, #ffffff)}`;
11
11
 
@@ -1840,30 +1840,6 @@ class AuroBibtemplate extends LitElement {
1840
1840
  AuroLibraryRuntimeUtils$3.prototype.registerComponent(name, AuroBibtemplate);
1841
1841
  }
1842
1842
 
1843
- /**
1844
- * Prevents scrolling of the body when touching empty areas of the component.
1845
- * @param {Event} event - The touchmove event.
1846
- * @returns {void}
1847
- */
1848
- preventBodyScroll(event) {
1849
- if (event.target === this) {
1850
- event.preventDefault();
1851
- }
1852
- }
1853
-
1854
- connectedCallback() {
1855
- super.connectedCallback();
1856
-
1857
- this.preventBodyScroll = this.preventBodyScroll.bind(this);
1858
- this.addEventListener('touchmove', this.preventBodyScroll, { passive: false });
1859
- }
1860
-
1861
- disconnectedCallback() {
1862
- super.disconnectedCallback();
1863
-
1864
- this.removeEventListener('touchmove', this.preventBodyScroll, { passive: false });
1865
- }
1866
-
1867
1843
  onCloseButtonClick() {
1868
1844
  this.dispatchEvent(new Event("close-click", { bubbles: true,
1869
1845
  composed: true }));
@@ -3927,6 +3927,10 @@ class AuroDropdownBib extends i$2 {
3927
3927
  connectedCallback() {
3928
3928
  super.connectedCallback();
3929
3929
 
3930
+ this.addEventListener('touchstart', this.preventBodyScroll);
3931
+ this.addEventListener('touchmove', this.preventBodyScroll);
3932
+
3933
+
3930
3934
  // Listen for the auro-bibtemplate-connected event to set the fullscreen attribute
3931
3935
  this.addEventListener('auro-bibtemplate-connected', (event) => {
3932
3936
  const bibTemplate = event.detail.element;
@@ -3956,6 +3960,60 @@ class AuroDropdownBib extends i$2 {
3956
3960
  }));
3957
3961
  }
3958
3962
 
3963
+ /**
3964
+ * Prevents scrolling of the body when touching empty areas of the component.
3965
+ * @param {Event} event - The touchmove event.
3966
+ * @returns {void}
3967
+ */
3968
+ preventBodyScroll(event) {
3969
+ function checkIfDecent(target, parent) {
3970
+ if (!parent.tagName || "text,svg".includes(parent.tagName.toLowerCase())) {
3971
+ return false;
3972
+ }
3973
+
3974
+ if (parent.tagName.toLowerCase() === 'slot') {
3975
+ const assignedElements = parent.assignedElements();
3976
+ if (assignedElements) {
3977
+ for (const child of assignedElements) {
3978
+ if (checkIfDecent(target, child)) {
3979
+ return true;
3980
+ }
3981
+ }
3982
+ }
3983
+ return false;
3984
+ }
3985
+
3986
+ if (target === parent || parent.contains(target)) {
3987
+ return true;
3988
+ }
3989
+
3990
+ if (parent.shadowRoot && checkIfDecent(target, parent.shadowRoot)) {
3991
+ return true;
3992
+ }
3993
+
3994
+ if (target.assignedSlot && checkIfDecent(target.assignedSlot, parent)) {
3995
+ return true;
3996
+ }
3997
+
3998
+ if (parent.children) {
3999
+ for (const child of parent.children) {
4000
+ if (checkIfDecent(target, child)) {
4001
+ return true;
4002
+ }
4003
+ }
4004
+ }
4005
+
4006
+ return false;
4007
+ }
4008
+ const isDecent = checkIfDecent(event.target, this);
4009
+ if (isDecent && event.type === 'touchstart') {
4010
+ // if the target is on the bib, let it go for `click` event
4011
+ return;
4012
+ }
4013
+ event.preventDefault();
4014
+ event.stopImmediatePropagation();
4015
+ }
4016
+
3959
4017
  // function that renders the HTML and CSS into the scope of the component
3960
4018
  render() {
3961
4019
  const classes = {
@@ -13442,7 +13500,7 @@ var inputVersion = '4.2.0';
13442
13500
 
13443
13501
  var colorCss$3$1 = i$5`#headerContainer{box-shadow:var(--ds-auro-dropdownbib-header-boxshadow-color)}#footerContainer{background-color:var(--ds-auro-dropdownbib-footer-container-color)}`;
13444
13502
 
13445
- var styleCss$4$1 = i$5`#bibTemplate{display:flex;overflow:hidden;height:100%;max-height:100%;touch-action:none}#headerContainer{display:flex;flex-direction:column}#header{display:flex;width:100%;min-height:var(--ds-size-1000, 5rem);box-sizing:border-box;align-items:end;padding-top:var(--ds-size-400, 2rem);padding-right:var(--ds-size-700, 3.5rem);padding-left:var(--ds-size-200, 1rem);pointer-events:none}#subheader{width:100%}#subheader ::slotted([auro-input]){box-sizing:border-box;padding:0 var(--ds-size-200, 1rem)}#closeButton{position:absolute;top:var(--ds-size-400, 2rem);right:var(--ds-size-200, 1rem);border:none;background-color:transparent;cursor:pointer}#bodyContainer{position:relative;overflow:auto;flex:1 1 100%}:host([isfullscreen]) #bibTemplate{max-height:100dvh}:host([isfullscreen]) #bodyContainer{margin-top:var(--ds-size-100, 0.5rem)}#footerContainer{position:absolute;right:0;bottom:0;left:0;padding:var(--ds-size-200, 1rem)}`;
13503
+ var styleCss$4$1 = i$5`#bibTemplate{display:flex;overflow:hidden;height:100%;max-height:100%;flex-direction:column}#headerContainer{display:flex;flex-direction:column}#header{display:flex;width:100%;min-height:var(--ds-size-1000, 5rem);box-sizing:border-box;align-items:end;padding-top:var(--ds-size-400, 2rem);padding-right:var(--ds-size-700, 3.5rem);padding-left:var(--ds-size-200, 1rem);pointer-events:none}#subheader{width:100%}#subheader ::slotted([auro-input]){box-sizing:border-box;padding:0 var(--ds-size-200, 1rem)}#closeButton{position:absolute;top:var(--ds-size-400, 2rem);right:var(--ds-size-200, 1rem);border:none;background-color:transparent;cursor:pointer}#bodyContainer{position:relative;overflow:auto;flex:1 1 100%}:host([isfullscreen]) #bibTemplate{max-height:100dvh}:host([isfullscreen]) #bodyContainer{margin-top:var(--ds-size-100, 0.5rem)}#footerContainer{position:absolute;right:0;bottom:0;left:0;padding:var(--ds-size-200, 1rem)}`;
13446
13504
 
13447
13505
  var tokenCss = i$5`:host{--ds-auro-dropdownbib-header-boxshadow-color: var(--ds-elevation-200, 0px 0px 10px rgba(0, 0, 0, 0.15));--ds-auro-dropdownbib-footer-container-color: var(--ds-basic-color-surface-default, #ffffff)}`;
13448
13506
 
@@ -15277,30 +15335,6 @@ class AuroBibtemplate extends i$2 {
15277
15335
  AuroLibraryRuntimeUtils$3.prototype.registerComponent(name, AuroBibtemplate);
15278
15336
  }
15279
15337
 
15280
- /**
15281
- * Prevents scrolling of the body when touching empty areas of the component.
15282
- * @param {Event} event - The touchmove event.
15283
- * @returns {void}
15284
- */
15285
- preventBodyScroll(event) {
15286
- if (event.target === this) {
15287
- event.preventDefault();
15288
- }
15289
- }
15290
-
15291
- connectedCallback() {
15292
- super.connectedCallback();
15293
-
15294
- this.preventBodyScroll = this.preventBodyScroll.bind(this);
15295
- this.addEventListener('touchmove', this.preventBodyScroll, { passive: false });
15296
- }
15297
-
15298
- disconnectedCallback() {
15299
- super.disconnectedCallback();
15300
-
15301
- this.removeEventListener('touchmove', this.preventBodyScroll, { passive: false });
15302
- }
15303
-
15304
15338
  onCloseButtonClick() {
15305
15339
  this.dispatchEvent(new Event("close-click", { bubbles: true,
15306
15340
  composed: true }));
@@ -3785,6 +3785,10 @@ class AuroDropdownBib extends i$2 {
3785
3785
  connectedCallback() {
3786
3786
  super.connectedCallback();
3787
3787
 
3788
+ this.addEventListener('touchstart', this.preventBodyScroll);
3789
+ this.addEventListener('touchmove', this.preventBodyScroll);
3790
+
3791
+
3788
3792
  // Listen for the auro-bibtemplate-connected event to set the fullscreen attribute
3789
3793
  this.addEventListener('auro-bibtemplate-connected', (event) => {
3790
3794
  const bibTemplate = event.detail.element;
@@ -3814,6 +3818,60 @@ class AuroDropdownBib extends i$2 {
3814
3818
  }));
3815
3819
  }
3816
3820
 
3821
+ /**
3822
+ * Prevents scrolling of the body when touching empty areas of the component.
3823
+ * @param {Event} event - The touchmove event.
3824
+ * @returns {void}
3825
+ */
3826
+ preventBodyScroll(event) {
3827
+ function checkIfDecent(target, parent) {
3828
+ if (!parent.tagName || "text,svg".includes(parent.tagName.toLowerCase())) {
3829
+ return false;
3830
+ }
3831
+
3832
+ if (parent.tagName.toLowerCase() === 'slot') {
3833
+ const assignedElements = parent.assignedElements();
3834
+ if (assignedElements) {
3835
+ for (const child of assignedElements) {
3836
+ if (checkIfDecent(target, child)) {
3837
+ return true;
3838
+ }
3839
+ }
3840
+ }
3841
+ return false;
3842
+ }
3843
+
3844
+ if (target === parent || parent.contains(target)) {
3845
+ return true;
3846
+ }
3847
+
3848
+ if (parent.shadowRoot && checkIfDecent(target, parent.shadowRoot)) {
3849
+ return true;
3850
+ }
3851
+
3852
+ if (target.assignedSlot && checkIfDecent(target.assignedSlot, parent)) {
3853
+ return true;
3854
+ }
3855
+
3856
+ if (parent.children) {
3857
+ for (const child of parent.children) {
3858
+ if (checkIfDecent(target, child)) {
3859
+ return true;
3860
+ }
3861
+ }
3862
+ }
3863
+
3864
+ return false;
3865
+ }
3866
+ const isDecent = checkIfDecent(event.target, this);
3867
+ if (isDecent && event.type === 'touchstart') {
3868
+ // if the target is on the bib, let it go for `click` event
3869
+ return;
3870
+ }
3871
+ event.preventDefault();
3872
+ event.stopImmediatePropagation();
3873
+ }
3874
+
3817
3875
  // function that renders the HTML and CSS into the scope of the component
3818
3876
  render() {
3819
3877
  const classes = {
@@ -13300,7 +13358,7 @@ var inputVersion = '4.2.0';
13300
13358
 
13301
13359
  var colorCss$3$1 = i$5`#headerContainer{box-shadow:var(--ds-auro-dropdownbib-header-boxshadow-color)}#footerContainer{background-color:var(--ds-auro-dropdownbib-footer-container-color)}`;
13302
13360
 
13303
- var styleCss$4$1 = i$5`#bibTemplate{display:flex;overflow:hidden;height:100%;max-height:100%;touch-action:none}#headerContainer{display:flex;flex-direction:column}#header{display:flex;width:100%;min-height:var(--ds-size-1000, 5rem);box-sizing:border-box;align-items:end;padding-top:var(--ds-size-400, 2rem);padding-right:var(--ds-size-700, 3.5rem);padding-left:var(--ds-size-200, 1rem);pointer-events:none}#subheader{width:100%}#subheader ::slotted([auro-input]){box-sizing:border-box;padding:0 var(--ds-size-200, 1rem)}#closeButton{position:absolute;top:var(--ds-size-400, 2rem);right:var(--ds-size-200, 1rem);border:none;background-color:transparent;cursor:pointer}#bodyContainer{position:relative;overflow:auto;flex:1 1 100%}:host([isfullscreen]) #bibTemplate{max-height:100dvh}:host([isfullscreen]) #bodyContainer{margin-top:var(--ds-size-100, 0.5rem)}#footerContainer{position:absolute;right:0;bottom:0;left:0;padding:var(--ds-size-200, 1rem)}`;
13361
+ var styleCss$4$1 = i$5`#bibTemplate{display:flex;overflow:hidden;height:100%;max-height:100%;flex-direction:column}#headerContainer{display:flex;flex-direction:column}#header{display:flex;width:100%;min-height:var(--ds-size-1000, 5rem);box-sizing:border-box;align-items:end;padding-top:var(--ds-size-400, 2rem);padding-right:var(--ds-size-700, 3.5rem);padding-left:var(--ds-size-200, 1rem);pointer-events:none}#subheader{width:100%}#subheader ::slotted([auro-input]){box-sizing:border-box;padding:0 var(--ds-size-200, 1rem)}#closeButton{position:absolute;top:var(--ds-size-400, 2rem);right:var(--ds-size-200, 1rem);border:none;background-color:transparent;cursor:pointer}#bodyContainer{position:relative;overflow:auto;flex:1 1 100%}:host([isfullscreen]) #bibTemplate{max-height:100dvh}:host([isfullscreen]) #bodyContainer{margin-top:var(--ds-size-100, 0.5rem)}#footerContainer{position:absolute;right:0;bottom:0;left:0;padding:var(--ds-size-200, 1rem)}`;
13304
13362
 
13305
13363
  var tokenCss = i$5`:host{--ds-auro-dropdownbib-header-boxshadow-color: var(--ds-elevation-200, 0px 0px 10px rgba(0, 0, 0, 0.15));--ds-auro-dropdownbib-footer-container-color: var(--ds-basic-color-surface-default, #ffffff)}`;
13306
13364
 
@@ -15135,30 +15193,6 @@ class AuroBibtemplate extends i$2 {
15135
15193
  AuroLibraryRuntimeUtils$3.prototype.registerComponent(name, AuroBibtemplate);
15136
15194
  }
15137
15195
 
15138
- /**
15139
- * Prevents scrolling of the body when touching empty areas of the component.
15140
- * @param {Event} event - The touchmove event.
15141
- * @returns {void}
15142
- */
15143
- preventBodyScroll(event) {
15144
- if (event.target === this) {
15145
- event.preventDefault();
15146
- }
15147
- }
15148
-
15149
- connectedCallback() {
15150
- super.connectedCallback();
15151
-
15152
- this.preventBodyScroll = this.preventBodyScroll.bind(this);
15153
- this.addEventListener('touchmove', this.preventBodyScroll, { passive: false });
15154
- }
15155
-
15156
- disconnectedCallback() {
15157
- super.disconnectedCallback();
15158
-
15159
- this.removeEventListener('touchmove', this.preventBodyScroll, { passive: false });
15160
- }
15161
-
15162
15196
  onCloseButtonClick() {
15163
15197
  this.dispatchEvent(new Event("close-click", { bubbles: true,
15164
15198
  composed: true }));
@@ -3716,6 +3716,10 @@ class AuroDropdownBib extends LitElement {
3716
3716
  connectedCallback() {
3717
3717
  super.connectedCallback();
3718
3718
 
3719
+ this.addEventListener('touchstart', this.preventBodyScroll);
3720
+ this.addEventListener('touchmove', this.preventBodyScroll);
3721
+
3722
+
3719
3723
  // Listen for the auro-bibtemplate-connected event to set the fullscreen attribute
3720
3724
  this.addEventListener('auro-bibtemplate-connected', (event) => {
3721
3725
  const bibTemplate = event.detail.element;
@@ -3745,6 +3749,60 @@ class AuroDropdownBib extends LitElement {
3745
3749
  }));
3746
3750
  }
3747
3751
 
3752
+ /**
3753
+ * Prevents scrolling of the body when touching empty areas of the component.
3754
+ * @param {Event} event - The touchmove event.
3755
+ * @returns {void}
3756
+ */
3757
+ preventBodyScroll(event) {
3758
+ function checkIfDecent(target, parent) {
3759
+ if (!parent.tagName || "text,svg".includes(parent.tagName.toLowerCase())) {
3760
+ return false;
3761
+ }
3762
+
3763
+ if (parent.tagName.toLowerCase() === 'slot') {
3764
+ const assignedElements = parent.assignedElements();
3765
+ if (assignedElements) {
3766
+ for (const child of assignedElements) {
3767
+ if (checkIfDecent(target, child)) {
3768
+ return true;
3769
+ }
3770
+ }
3771
+ }
3772
+ return false;
3773
+ }
3774
+
3775
+ if (target === parent || parent.contains(target)) {
3776
+ return true;
3777
+ }
3778
+
3779
+ if (parent.shadowRoot && checkIfDecent(target, parent.shadowRoot)) {
3780
+ return true;
3781
+ }
3782
+
3783
+ if (target.assignedSlot && checkIfDecent(target.assignedSlot, parent)) {
3784
+ return true;
3785
+ }
3786
+
3787
+ if (parent.children) {
3788
+ for (const child of parent.children) {
3789
+ if (checkIfDecent(target, child)) {
3790
+ return true;
3791
+ }
3792
+ }
3793
+ }
3794
+
3795
+ return false;
3796
+ }
3797
+ const isDecent = checkIfDecent(event.target, this);
3798
+ if (isDecent && event.type === 'touchstart') {
3799
+ // if the target is on the bib, let it go for `click` event
3800
+ return;
3801
+ }
3802
+ event.preventDefault();
3803
+ event.stopImmediatePropagation();
3804
+ }
3805
+
3748
3806
  // function that renders the HTML and CSS into the scope of the component
3749
3807
  render() {
3750
3808
  const classes = {
@@ -13218,7 +13276,7 @@ var inputVersion = '4.2.0';
13218
13276
 
13219
13277
  var colorCss$3 = css`#headerContainer{box-shadow:var(--ds-auro-dropdownbib-header-boxshadow-color)}#footerContainer{background-color:var(--ds-auro-dropdownbib-footer-container-color)}`;
13220
13278
 
13221
- var styleCss$4 = css`#bibTemplate{display:flex;overflow:hidden;height:100%;max-height:100%;touch-action:none}#headerContainer{display:flex;flex-direction:column}#header{display:flex;width:100%;min-height:var(--ds-size-1000, 5rem);box-sizing:border-box;align-items:end;padding-top:var(--ds-size-400, 2rem);padding-right:var(--ds-size-700, 3.5rem);padding-left:var(--ds-size-200, 1rem);pointer-events:none}#subheader{width:100%}#subheader ::slotted([auro-input]){box-sizing:border-box;padding:0 var(--ds-size-200, 1rem)}#closeButton{position:absolute;top:var(--ds-size-400, 2rem);right:var(--ds-size-200, 1rem);border:none;background-color:transparent;cursor:pointer}#bodyContainer{position:relative;overflow:auto;flex:1 1 100%}:host([isfullscreen]) #bibTemplate{max-height:100dvh}:host([isfullscreen]) #bodyContainer{margin-top:var(--ds-size-100, 0.5rem)}#footerContainer{position:absolute;right:0;bottom:0;left:0;padding:var(--ds-size-200, 1rem)}`;
13279
+ var styleCss$4 = css`#bibTemplate{display:flex;overflow:hidden;height:100%;max-height:100%;flex-direction:column}#headerContainer{display:flex;flex-direction:column}#header{display:flex;width:100%;min-height:var(--ds-size-1000, 5rem);box-sizing:border-box;align-items:end;padding-top:var(--ds-size-400, 2rem);padding-right:var(--ds-size-700, 3.5rem);padding-left:var(--ds-size-200, 1rem);pointer-events:none}#subheader{width:100%}#subheader ::slotted([auro-input]){box-sizing:border-box;padding:0 var(--ds-size-200, 1rem)}#closeButton{position:absolute;top:var(--ds-size-400, 2rem);right:var(--ds-size-200, 1rem);border:none;background-color:transparent;cursor:pointer}#bodyContainer{position:relative;overflow:auto;flex:1 1 100%}:host([isfullscreen]) #bibTemplate{max-height:100dvh}:host([isfullscreen]) #bodyContainer{margin-top:var(--ds-size-100, 0.5rem)}#footerContainer{position:absolute;right:0;bottom:0;left:0;padding:var(--ds-size-200, 1rem)}`;
13222
13280
 
13223
13281
  var tokenCss = css`:host{--ds-auro-dropdownbib-header-boxshadow-color: var(--ds-elevation-200, 0px 0px 10px rgba(0, 0, 0, 0.15));--ds-auro-dropdownbib-footer-container-color: var(--ds-basic-color-surface-default, #ffffff)}`;
13224
13282
 
@@ -15053,30 +15111,6 @@ class AuroBibtemplate extends LitElement {
15053
15111
  AuroLibraryRuntimeUtils$3.prototype.registerComponent(name, AuroBibtemplate);
15054
15112
  }
15055
15113
 
15056
- /**
15057
- * Prevents scrolling of the body when touching empty areas of the component.
15058
- * @param {Event} event - The touchmove event.
15059
- * @returns {void}
15060
- */
15061
- preventBodyScroll(event) {
15062
- if (event.target === this) {
15063
- event.preventDefault();
15064
- }
15065
- }
15066
-
15067
- connectedCallback() {
15068
- super.connectedCallback();
15069
-
15070
- this.preventBodyScroll = this.preventBodyScroll.bind(this);
15071
- this.addEventListener('touchmove', this.preventBodyScroll, { passive: false });
15072
- }
15073
-
15074
- disconnectedCallback() {
15075
- super.disconnectedCallback();
15076
-
15077
- this.removeEventListener('touchmove', this.preventBodyScroll, { passive: false });
15078
- }
15079
-
15080
15114
  onCloseButtonClick() {
15081
15115
  this.dispatchEvent(new Event("close-click", { bubbles: true,
15082
15116
  composed: true }));
@@ -3716,6 +3716,10 @@ class AuroDropdownBib extends LitElement {
3716
3716
  connectedCallback() {
3717
3717
  super.connectedCallback();
3718
3718
 
3719
+ this.addEventListener('touchstart', this.preventBodyScroll);
3720
+ this.addEventListener('touchmove', this.preventBodyScroll);
3721
+
3722
+
3719
3723
  // Listen for the auro-bibtemplate-connected event to set the fullscreen attribute
3720
3724
  this.addEventListener('auro-bibtemplate-connected', (event) => {
3721
3725
  const bibTemplate = event.detail.element;
@@ -3745,6 +3749,60 @@ class AuroDropdownBib extends LitElement {
3745
3749
  }));
3746
3750
  }
3747
3751
 
3752
+ /**
3753
+ * Prevents scrolling of the body when touching empty areas of the component.
3754
+ * @param {Event} event - The touchmove event.
3755
+ * @returns {void}
3756
+ */
3757
+ preventBodyScroll(event) {
3758
+ function checkIfDecent(target, parent) {
3759
+ if (!parent.tagName || "text,svg".includes(parent.tagName.toLowerCase())) {
3760
+ return false;
3761
+ }
3762
+
3763
+ if (parent.tagName.toLowerCase() === 'slot') {
3764
+ const assignedElements = parent.assignedElements();
3765
+ if (assignedElements) {
3766
+ for (const child of assignedElements) {
3767
+ if (checkIfDecent(target, child)) {
3768
+ return true;
3769
+ }
3770
+ }
3771
+ }
3772
+ return false;
3773
+ }
3774
+
3775
+ if (target === parent || parent.contains(target)) {
3776
+ return true;
3777
+ }
3778
+
3779
+ if (parent.shadowRoot && checkIfDecent(target, parent.shadowRoot)) {
3780
+ return true;
3781
+ }
3782
+
3783
+ if (target.assignedSlot && checkIfDecent(target.assignedSlot, parent)) {
3784
+ return true;
3785
+ }
3786
+
3787
+ if (parent.children) {
3788
+ for (const child of parent.children) {
3789
+ if (checkIfDecent(target, child)) {
3790
+ return true;
3791
+ }
3792
+ }
3793
+ }
3794
+
3795
+ return false;
3796
+ }
3797
+ const isDecent = checkIfDecent(event.target, this);
3798
+ if (isDecent && event.type === 'touchstart') {
3799
+ // if the target is on the bib, let it go for `click` event
3800
+ return;
3801
+ }
3802
+ event.preventDefault();
3803
+ event.stopImmediatePropagation();
3804
+ }
3805
+
3748
3806
  // function that renders the HTML and CSS into the scope of the component
3749
3807
  render() {
3750
3808
  const classes = {
@@ -13218,7 +13276,7 @@ var inputVersion = '4.2.0';
13218
13276
 
13219
13277
  var colorCss$3 = css`#headerContainer{box-shadow:var(--ds-auro-dropdownbib-header-boxshadow-color)}#footerContainer{background-color:var(--ds-auro-dropdownbib-footer-container-color)}`;
13220
13278
 
13221
- var styleCss$4 = css`#bibTemplate{display:flex;overflow:hidden;height:100%;max-height:100%;touch-action:none}#headerContainer{display:flex;flex-direction:column}#header{display:flex;width:100%;min-height:var(--ds-size-1000, 5rem);box-sizing:border-box;align-items:end;padding-top:var(--ds-size-400, 2rem);padding-right:var(--ds-size-700, 3.5rem);padding-left:var(--ds-size-200, 1rem);pointer-events:none}#subheader{width:100%}#subheader ::slotted([auro-input]){box-sizing:border-box;padding:0 var(--ds-size-200, 1rem)}#closeButton{position:absolute;top:var(--ds-size-400, 2rem);right:var(--ds-size-200, 1rem);border:none;background-color:transparent;cursor:pointer}#bodyContainer{position:relative;overflow:auto;flex:1 1 100%}:host([isfullscreen]) #bibTemplate{max-height:100dvh}:host([isfullscreen]) #bodyContainer{margin-top:var(--ds-size-100, 0.5rem)}#footerContainer{position:absolute;right:0;bottom:0;left:0;padding:var(--ds-size-200, 1rem)}`;
13279
+ var styleCss$4 = css`#bibTemplate{display:flex;overflow:hidden;height:100%;max-height:100%;flex-direction:column}#headerContainer{display:flex;flex-direction:column}#header{display:flex;width:100%;min-height:var(--ds-size-1000, 5rem);box-sizing:border-box;align-items:end;padding-top:var(--ds-size-400, 2rem);padding-right:var(--ds-size-700, 3.5rem);padding-left:var(--ds-size-200, 1rem);pointer-events:none}#subheader{width:100%}#subheader ::slotted([auro-input]){box-sizing:border-box;padding:0 var(--ds-size-200, 1rem)}#closeButton{position:absolute;top:var(--ds-size-400, 2rem);right:var(--ds-size-200, 1rem);border:none;background-color:transparent;cursor:pointer}#bodyContainer{position:relative;overflow:auto;flex:1 1 100%}:host([isfullscreen]) #bibTemplate{max-height:100dvh}:host([isfullscreen]) #bodyContainer{margin-top:var(--ds-size-100, 0.5rem)}#footerContainer{position:absolute;right:0;bottom:0;left:0;padding:var(--ds-size-200, 1rem)}`;
13222
13280
 
13223
13281
  var tokenCss = css`:host{--ds-auro-dropdownbib-header-boxshadow-color: var(--ds-elevation-200, 0px 0px 10px rgba(0, 0, 0, 0.15));--ds-auro-dropdownbib-footer-container-color: var(--ds-basic-color-surface-default, #ffffff)}`;
13224
13282
 
@@ -15053,30 +15111,6 @@ class AuroBibtemplate extends LitElement {
15053
15111
  AuroLibraryRuntimeUtils$3.prototype.registerComponent(name, AuroBibtemplate);
15054
15112
  }
15055
15113
 
15056
- /**
15057
- * Prevents scrolling of the body when touching empty areas of the component.
15058
- * @param {Event} event - The touchmove event.
15059
- * @returns {void}
15060
- */
15061
- preventBodyScroll(event) {
15062
- if (event.target === this) {
15063
- event.preventDefault();
15064
- }
15065
- }
15066
-
15067
- connectedCallback() {
15068
- super.connectedCallback();
15069
-
15070
- this.preventBodyScroll = this.preventBodyScroll.bind(this);
15071
- this.addEventListener('touchmove', this.preventBodyScroll, { passive: false });
15072
- }
15073
-
15074
- disconnectedCallback() {
15075
- super.disconnectedCallback();
15076
-
15077
- this.removeEventListener('touchmove', this.preventBodyScroll, { passive: false });
15078
- }
15079
-
15080
15114
  onCloseButtonClick() {
15081
15115
  this.dispatchEvent(new Event("close-click", { bubbles: true,
15082
15116
  composed: true }));
@@ -5636,6 +5636,10 @@ class AuroDropdownBib extends i$2 {
5636
5636
  connectedCallback() {
5637
5637
  super.connectedCallback();
5638
5638
 
5639
+ this.addEventListener('touchstart', this.preventBodyScroll);
5640
+ this.addEventListener('touchmove', this.preventBodyScroll);
5641
+
5642
+
5639
5643
  // Listen for the auro-bibtemplate-connected event to set the fullscreen attribute
5640
5644
  this.addEventListener('auro-bibtemplate-connected', (event) => {
5641
5645
  const bibTemplate = event.detail.element;
@@ -5665,6 +5669,60 @@ class AuroDropdownBib extends i$2 {
5665
5669
  }));
5666
5670
  }
5667
5671
 
5672
+ /**
5673
+ * Prevents scrolling of the body when touching empty areas of the component.
5674
+ * @param {Event} event - The touchmove event.
5675
+ * @returns {void}
5676
+ */
5677
+ preventBodyScroll(event) {
5678
+ function checkIfDecent(target, parent) {
5679
+ if (!parent.tagName || "text,svg".includes(parent.tagName.toLowerCase())) {
5680
+ return false;
5681
+ }
5682
+
5683
+ if (parent.tagName.toLowerCase() === 'slot') {
5684
+ const assignedElements = parent.assignedElements();
5685
+ if (assignedElements) {
5686
+ for (const child of assignedElements) {
5687
+ if (checkIfDecent(target, child)) {
5688
+ return true;
5689
+ }
5690
+ }
5691
+ }
5692
+ return false;
5693
+ }
5694
+
5695
+ if (target === parent || parent.contains(target)) {
5696
+ return true;
5697
+ }
5698
+
5699
+ if (parent.shadowRoot && checkIfDecent(target, parent.shadowRoot)) {
5700
+ return true;
5701
+ }
5702
+
5703
+ if (target.assignedSlot && checkIfDecent(target.assignedSlot, parent)) {
5704
+ return true;
5705
+ }
5706
+
5707
+ if (parent.children) {
5708
+ for (const child of parent.children) {
5709
+ if (checkIfDecent(target, child)) {
5710
+ return true;
5711
+ }
5712
+ }
5713
+ }
5714
+
5715
+ return false;
5716
+ }
5717
+ const isDecent = checkIfDecent(event.target, this);
5718
+ if (isDecent && event.type === 'touchstart') {
5719
+ // if the target is on the bib, let it go for `click` event
5720
+ return;
5721
+ }
5722
+ event.preventDefault();
5723
+ event.stopImmediatePropagation();
5724
+ }
5725
+
5668
5726
  // function that renders the HTML and CSS into the scope of the component
5669
5727
  render() {
5670
5728
  const classes = {
@@ -6929,7 +6987,7 @@ var dropdownVersion = '3.0.0';
6929
6987
 
6930
6988
  var colorCss$3 = i$5`#headerContainer{box-shadow:var(--ds-auro-dropdownbib-header-boxshadow-color)}#footerContainer{background-color:var(--ds-auro-dropdownbib-footer-container-color)}`;
6931
6989
 
6932
- var styleCss$4 = i$5`#bibTemplate{display:flex;overflow:hidden;height:100%;max-height:100%;touch-action:none}#headerContainer{display:flex;flex-direction:column}#header{display:flex;width:100%;min-height:var(--ds-size-1000, 5rem);box-sizing:border-box;align-items:end;padding-top:var(--ds-size-400, 2rem);padding-right:var(--ds-size-700, 3.5rem);padding-left:var(--ds-size-200, 1rem);pointer-events:none}#subheader{width:100%}#subheader ::slotted([auro-input]){box-sizing:border-box;padding:0 var(--ds-size-200, 1rem)}#closeButton{position:absolute;top:var(--ds-size-400, 2rem);right:var(--ds-size-200, 1rem);border:none;background-color:transparent;cursor:pointer}#bodyContainer{position:relative;overflow:auto;flex:1 1 100%}:host([isfullscreen]) #bibTemplate{max-height:100dvh}:host([isfullscreen]) #bodyContainer{margin-top:var(--ds-size-100, 0.5rem)}#footerContainer{position:absolute;right:0;bottom:0;left:0;padding:var(--ds-size-200, 1rem)}`;
6990
+ var styleCss$4 = i$5`#bibTemplate{display:flex;overflow:hidden;height:100%;max-height:100%;flex-direction:column}#headerContainer{display:flex;flex-direction:column}#header{display:flex;width:100%;min-height:var(--ds-size-1000, 5rem);box-sizing:border-box;align-items:end;padding-top:var(--ds-size-400, 2rem);padding-right:var(--ds-size-700, 3.5rem);padding-left:var(--ds-size-200, 1rem);pointer-events:none}#subheader{width:100%}#subheader ::slotted([auro-input]){box-sizing:border-box;padding:0 var(--ds-size-200, 1rem)}#closeButton{position:absolute;top:var(--ds-size-400, 2rem);right:var(--ds-size-200, 1rem);border:none;background-color:transparent;cursor:pointer}#bodyContainer{position:relative;overflow:auto;flex:1 1 100%}:host([isfullscreen]) #bibTemplate{max-height:100dvh}:host([isfullscreen]) #bodyContainer{margin-top:var(--ds-size-100, 0.5rem)}#footerContainer{position:absolute;right:0;bottom:0;left:0;padding:var(--ds-size-200, 1rem)}`;
6933
6991
 
6934
6992
  var tokenCss = i$5`:host{--ds-auro-dropdownbib-header-boxshadow-color: var(--ds-elevation-200, 0px 0px 10px rgba(0, 0, 0, 0.15));--ds-auro-dropdownbib-footer-container-color: var(--ds-basic-color-surface-default, #ffffff)}`;
6935
6993
 
@@ -8764,30 +8822,6 @@ class AuroBibtemplate extends i$2 {
8764
8822
  AuroLibraryRuntimeUtils$3.prototype.registerComponent(name, AuroBibtemplate);
8765
8823
  }
8766
8824
 
8767
- /**
8768
- * Prevents scrolling of the body when touching empty areas of the component.
8769
- * @param {Event} event - The touchmove event.
8770
- * @returns {void}
8771
- */
8772
- preventBodyScroll(event) {
8773
- if (event.target === this) {
8774
- event.preventDefault();
8775
- }
8776
- }
8777
-
8778
- connectedCallback() {
8779
- super.connectedCallback();
8780
-
8781
- this.preventBodyScroll = this.preventBodyScroll.bind(this);
8782
- this.addEventListener('touchmove', this.preventBodyScroll, { passive: false });
8783
- }
8784
-
8785
- disconnectedCallback() {
8786
- super.disconnectedCallback();
8787
-
8788
- this.removeEventListener('touchmove', this.preventBodyScroll, { passive: false });
8789
- }
8790
-
8791
8825
  onCloseButtonClick() {
8792
8826
  this.dispatchEvent(new Event("close-click", { bubbles: true,
8793
8827
  composed: true }));