@cupra/ui-kit 2.0.0-canary.89 → 2.0.0-canary.91

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.
Files changed (49) hide show
  1. package/dist/cjs/components/ds-dialog/ds-dialog.cjs +2 -2
  2. package/dist/cjs/components/ds-sidebar-navigation/ds-sidebar-navigation.cjs +2 -2
  3. package/dist/cjs/components/ds-theme-provider/ds-theme-provider.cjs +1 -1
  4. package/dist/cjs/styles/source/shared/fonts-config.cjs +1 -1
  5. package/dist/cjs/utils/IconsManager.cjs +1 -1
  6. package/dist/cjs/utils/PubSub.cjs +1 -1
  7. package/dist/cjs/utils/StylesRegistry/StylesRegistry.cjs +1 -1
  8. package/dist/cjs/utils/cssWithTokens.cjs +1 -1
  9. package/dist/cjs/utils/htmlWithTokens.cjs +1 -1
  10. package/dist/cjs/utils/scrollLock.cjs +1 -0
  11. package/dist/esm/components/ds-dialog/ds-dialog.js +17 -13
  12. package/dist/esm/components/ds-sidebar-navigation/ds-sidebar-navigation.js +9 -8
  13. package/dist/esm/components/ds-theme-provider/ds-theme-provider.js +1 -1
  14. package/dist/esm/styles/source/shared/fonts-config.js +10 -0
  15. package/dist/esm/utils/IconsManager.js +1 -1
  16. package/dist/esm/utils/PubSub.js +1 -1
  17. package/dist/esm/utils/StylesRegistry/StylesRegistry.js +1 -1
  18. package/dist/esm/utils/cssWithTokens.js +1 -1
  19. package/dist/esm/utils/htmlWithTokens.js +1 -1
  20. package/dist/esm/utils/scrollLock.js +12 -0
  21. package/dist/types/components/ds-dialog/ds-dialog.d.ts +3 -1
  22. package/dist/types/components/ds-select/ds-select.types.d.ts +1 -1
  23. package/dist/types/components/ds-sidebar-navigation/ds-sidebar-navigation.d.ts +0 -1
  24. package/dist/types/utils/scrollLock.d.ts +6 -0
  25. package/dist-react/cjs/components/ds-dialog/ds-dialog.cjs +2 -2
  26. package/dist-react/cjs/components/ds-sidebar-navigation/ds-sidebar-navigation.cjs +2 -2
  27. package/dist-react/cjs/components/ds-theme-provider/ds-theme-provider.cjs +1 -1
  28. package/dist-react/cjs/styles/source/shared/fonts-config.cjs +1 -1
  29. package/dist-react/cjs/utils/IconsManager.cjs +1 -1
  30. package/dist-react/cjs/utils/PubSub.cjs +1 -1
  31. package/dist-react/cjs/utils/StylesRegistry/StylesRegistry.cjs +1 -1
  32. package/dist-react/cjs/utils/cssWithTokens.cjs +1 -1
  33. package/dist-react/cjs/utils/htmlWithTokens.cjs +1 -1
  34. package/dist-react/cjs/utils/scrollLock.cjs +1 -0
  35. package/dist-react/esm/components/ds-dialog/ds-dialog.js +17 -13
  36. package/dist-react/esm/components/ds-sidebar-navigation/ds-sidebar-navigation.js +9 -8
  37. package/dist-react/esm/components/ds-theme-provider/ds-theme-provider.js +1 -1
  38. package/dist-react/esm/styles/source/shared/fonts-config.js +10 -0
  39. package/dist-react/esm/utils/IconsManager.js +1 -1
  40. package/dist-react/esm/utils/PubSub.js +1 -1
  41. package/dist-react/esm/utils/StylesRegistry/StylesRegistry.js +1 -1
  42. package/dist-react/esm/utils/cssWithTokens.js +1 -1
  43. package/dist-react/esm/utils/htmlWithTokens.js +1 -1
  44. package/dist-react/esm/utils/scrollLock.js +12 -0
  45. package/dist-react/types/components/ds-dialog/ds-dialog.d.ts +3 -1
  46. package/dist-react/types/components/ds-select/ds-select.types.d.ts +1 -1
  47. package/dist-react/types/components/ds-sidebar-navigation/ds-sidebar-navigation.d.ts +0 -1
  48. package/dist-react/types/utils/scrollLock.d.ts +6 -0
  49. package/package.json +3 -3
@@ -1,4 +1,4 @@
1
- const e=require(`../../node_modules/.pnpm/lit-html@3.3.1/node_modules/lit-html/lit-html.cjs`);require(`../../node_modules/.pnpm/lit@3.3.1/node_modules/lit/index.cjs`);const t=require(`../../node_modules/.pnpm/@lit_reactive-element@2.1.1/node_modules/@lit/reactive-element/decorators/property.cjs`),n=require(`../../node_modules/.pnpm/@lit_reactive-element@2.1.1/node_modules/@lit/reactive-element/decorators/state.cjs`),r=require(`../../node_modules/.pnpm/@lit_reactive-element@2.1.1/node_modules/@lit/reactive-element/decorators/query.cjs`);require(`../../node_modules/.pnpm/lit@3.3.1/node_modules/lit/decorators.cjs`);const i=require(`../../_virtual/_@oxc-project_runtime@0.122.0/helpers/decorate.cjs`),a=require(`../base/UiKitElement.cjs`),o=require(`../../decorators/customUiKitElement.cjs`),s=require(`../../utils/booleanConverter.cjs`),c=require(`../../node_modules/.pnpm/lit-html@3.3.1/node_modules/lit-html/directives/class-map.cjs`);require(`../../node_modules/.pnpm/lit@3.3.1/node_modules/lit/directives/class-map.cjs`);const l=require(`../../utils/debounce.cjs`),u=require(`./styles/common.styles.cjs`);var d=class extends a.UiKitElement{constructor(...e){super(...e),this.lockClose=!1,this.lockScroll=!0,this.open=!1,this.size=`medium`,this.hasBeenOpened=!1,this.hasScroll=!1,this.debouncedCheckScroll=l.debounce({func:()=>this.checkScroll()}),this.handleCloseButtonClick=()=>{this.handleClose(`button`)},this.handleDialogClick=e=>{e.target===this.nativeDialog&&this.handleClose(`backdrop`)},this.handleCancel=e=>{e.preventDefault(),this.lockClose||this.handleClose(`escape`)},this.handleHostClick=e=>{e.stopPropagation()}}static{this.styles=[u.commonStyles]}async updated(e){super.updated(e),!this.hasBeenOpened&&e.has(`open`)&&this.open&&(this.hasBeenOpened=!0),e.has(`open`)&&(this.handleResizeObserver(),this.syncNativeDialogState()),e.has(`open`)&&this.open&&(await this.updateComplete,this.requestUpdate())}syncNativeDialogState(){this.nativeDialog&&(this.open?this.openNativeDialog():this.closeNativeDialog())}openNativeDialog(){this.nativeDialog.open||this.nativeDialog.showModal?.()}closeNativeDialog(){this.nativeDialog.open&&this.nativeDialog.close?.()}async handleResizeObserver(){this.resizeObserver?.disconnect(),this.content&&(this.resizeObserver.observe(this.content),await new Promise(requestAnimationFrame),this.checkScroll())}get panelClasses(){return{panel:!0,"with-scroll":this.open&&this.hasScroll,[this.size]:!!this.size}}dispatchCloseEvents(e){let t=`ds-dialog:close-${e}`;this.dispatchEvent(new Event(t,{bubbles:!0,composed:!0})),this.dispatchEvent(new Event(`ds-dialog:close`,{bubbles:!0,composed:!0}))}handleClose(e){this.lockClose||(this.open=!1,this.dispatchCloseEvents(e))}connectedCallback(){super.connectedCallback(),this.resizeObserver=new ResizeObserver(this.debouncedCheckScroll),this.handleResizeObserver(),this.addEventListener(`click`,this.handleHostClick)}disconnectedCallback(){super.disconnectedCallback(),this.resizeObserver?.disconnect(),this.removeEventListener(`click`,this.handleHostClick)}checkScroll(){this.hasScroll=this.content?.scrollHeight>this.content?.clientHeight}render(){return!this.hasBeenOpened&&!this.open?e.E:e.x`
1
+ const e=require(`../../node_modules/.pnpm/lit-html@3.3.1/node_modules/lit-html/lit-html.cjs`);require(`../../node_modules/.pnpm/lit@3.3.1/node_modules/lit/index.cjs`);const t=require(`../../node_modules/.pnpm/@lit_reactive-element@2.1.1/node_modules/@lit/reactive-element/decorators/property.cjs`),n=require(`../../node_modules/.pnpm/@lit_reactive-element@2.1.1/node_modules/@lit/reactive-element/decorators/state.cjs`),r=require(`../../node_modules/.pnpm/@lit_reactive-element@2.1.1/node_modules/@lit/reactive-element/decorators/query.cjs`);require(`../../node_modules/.pnpm/lit@3.3.1/node_modules/lit/decorators.cjs`);const i=require(`../../_virtual/_@oxc-project_runtime@0.122.0/helpers/decorate.cjs`),a=require(`../base/UiKitElement.cjs`),o=require(`../../decorators/customUiKitElement.cjs`),s=require(`../../utils/booleanConverter.cjs`),c=require(`../../node_modules/.pnpm/lit-html@3.3.1/node_modules/lit-html/directives/class-map.cjs`);require(`../../node_modules/.pnpm/lit@3.3.1/node_modules/lit/directives/class-map.cjs`);const l=require(`../../utils/debounce.cjs`),u=require(`../../utils/scrollLock.cjs`),d=require(`./styles/common.styles.cjs`);var f=class extends a.UiKitElement{constructor(...e){super(...e),this.lockClose=!1,this.lockScroll=!0,this.open=!1,this.size=`medium`,this.hasBeenOpened=!1,this.hasScroll=!1,this.debouncedCheckScroll=l.debounce({func:()=>this.checkScroll()}),this.scrollLocked=!1,this.handleCloseButtonClick=()=>{this.handleClose(`button`)},this.handleDialogClick=e=>{e.target===this.nativeDialog&&this.handleClose(`backdrop`)},this.handleCancel=e=>{e.preventDefault(),this.lockClose||this.handleClose(`escape`)},this.handleHostClick=e=>{e.stopPropagation()}}static{this.styles=[d.commonStyles]}updated(e){super.updated(e),!this.hasBeenOpened&&e.has(`open`)&&this.open&&(this.hasBeenOpened=!0),e.has(`open`)&&(this.open||(this.hasScroll=!1),this.handleResizeObserver(),this.syncNativeDialogState(),this.syncScrollLock())}syncScrollLock(){this.open&&this.lockScroll?(u.scrollLock.lock(),this.scrollLocked=!0):this.scrollLocked&&=(u.scrollLock.unlock(),!1)}syncNativeDialogState(){this.nativeDialog&&(this.open?this.openNativeDialog():this.closeNativeDialog())}openNativeDialog(){this.nativeDialog.open||this.nativeDialog.showModal?.()}closeNativeDialog(){this.nativeDialog.open&&this.nativeDialog.close?.()}async handleResizeObserver(){this.resizeObserver?.disconnect(),this.content&&(this.resizeObserver.observe(this.content),await new Promise(requestAnimationFrame),this.checkScroll())}get panelClasses(){return{panel:!0,"with-scroll":this.open&&this.hasScroll,[this.size]:!!this.size}}dispatchCloseEvents(e){let t=`ds-dialog:close-${e}`;this.dispatchEvent(new Event(t,{bubbles:!0,composed:!0})),this.dispatchEvent(new Event(`ds-dialog:close`,{bubbles:!0,composed:!0}))}handleClose(e){this.lockClose||(this.open=!1,this.dispatchCloseEvents(e))}connectedCallback(){super.connectedCallback(),this.resizeObserver=new ResizeObserver(this.debouncedCheckScroll),this.handleResizeObserver(),this.addEventListener(`click`,this.handleHostClick)}disconnectedCallback(){super.disconnectedCallback(),this.resizeObserver?.disconnect(),this.scrollLocked&&=(u.scrollLock.unlock(),!1),this.removeEventListener(`click`,this.handleHostClick)}checkScroll(){this.hasScroll||=this.content?.scrollHeight>this.content?.clientHeight}render(){return!this.hasBeenOpened&&!this.open?e.E:e.x`
2
2
  <dialog
3
3
  class="dialog"
4
4
  data-testid="ds-dialog-container"
@@ -17,4 +17,4 @@ const e=require(`../../node_modules/.pnpm/lit-html@3.3.1/node_modules/lit-html/l
17
17
  </div>
18
18
  </div>
19
19
  </dialog>
20
- `}};i.__decorate([t.n({type:Boolean,converter:s.booleanConverter,attribute:`lock-close`})],d.prototype,`lockClose`,void 0),i.__decorate([t.n({type:Boolean,converter:s.booleanConverter,attribute:`lock-scroll`})],d.prototype,`lockScroll`,void 0),i.__decorate([t.n({type:Boolean,converter:s.booleanConverter})],d.prototype,`open`,void 0),i.__decorate([t.n({type:String})],d.prototype,`size`,void 0),i.__decorate([t.n({type:String,attribute:`data-aria-label`})],d.prototype,`dataAriaLabel`,void 0),i.__decorate([t.n({type:String,attribute:`data-aria-description`})],d.prototype,`dataAriaDescription`,void 0),i.__decorate([n.r()],d.prototype,`hasBeenOpened`,void 0),i.__decorate([n.r()],d.prototype,`hasScroll`,void 0),i.__decorate([r.e(`.content`)],d.prototype,`content`,void 0),i.__decorate([r.e(`dialog`)],d.prototype,`nativeDialog`,void 0),d=i.__decorate([o.customUiKitElement(`ds-dialog`)],d);
20
+ `}};i.__decorate([t.n({type:Boolean,converter:s.booleanConverter,attribute:`lock-close`})],f.prototype,`lockClose`,void 0),i.__decorate([t.n({type:Boolean,converter:s.booleanConverter,attribute:`lock-scroll`})],f.prototype,`lockScroll`,void 0),i.__decorate([t.n({type:Boolean,converter:s.booleanConverter})],f.prototype,`open`,void 0),i.__decorate([t.n({type:String})],f.prototype,`size`,void 0),i.__decorate([t.n({type:String,attribute:`data-aria-label`})],f.prototype,`dataAriaLabel`,void 0),i.__decorate([t.n({type:String,attribute:`data-aria-description`})],f.prototype,`dataAriaDescription`,void 0),i.__decorate([n.r()],f.prototype,`hasBeenOpened`,void 0),i.__decorate([n.r()],f.prototype,`hasScroll`,void 0),i.__decorate([r.e(`.content`)],f.prototype,`content`,void 0),i.__decorate([r.e(`dialog`)],f.prototype,`nativeDialog`,void 0),f=i.__decorate([o.customUiKitElement(`ds-dialog`)],f);
@@ -1,4 +1,4 @@
1
- const e=require(`../../node_modules/.pnpm/lit-html@3.3.1/node_modules/lit-html/lit-html.cjs`);require(`../../node_modules/.pnpm/lit@3.3.1/node_modules/lit/index.cjs`);const t=require(`../../node_modules/.pnpm/@lit_reactive-element@2.1.1/node_modules/@lit/reactive-element/decorators/property.cjs`),n=require(`../../node_modules/.pnpm/@lit_reactive-element@2.1.1/node_modules/@lit/reactive-element/decorators/query-assigned-elements.cjs`);require(`../../node_modules/.pnpm/lit@3.3.1/node_modules/lit/decorators.cjs`);const r=require(`../../_virtual/_@oxc-project_runtime@0.122.0/helpers/decorate.cjs`),i=require(`../base/UiKitElement.cjs`),a=require(`../../decorators/customUiKitElement.cjs`),o=require(`../../utils/booleanConverter.cjs`),s=require(`../../node_modules/.pnpm/lit-html@3.3.1/node_modules/lit-html/directives/class-map.cjs`);require(`../../node_modules/.pnpm/lit@3.3.1/node_modules/lit/directives/class-map.cjs`);const c=require(`./styles/common.styles.cjs`);var l=class extends i.UiKitElement{constructor(...e){super(...e),this.open=!1,this.scrollLocked=!1,this.savedBodyOverflow=``,this.toggleModal=()=>{this.open=!this.open,this.open?this.dispatchEvent(new Event(`ds-sidebar-navigation:open`,{bubbles:!0,composed:!0})):this.dispatchEvent(new Event(`ds-sidebar-navigation:close`,{bubbles:!0,composed:!0}))},this.handleModalClick=e=>{e.target===e.currentTarget&&this.toggleModal()},this.handleSlotChange=e=>{let t=e.target.assignedElements().find(e=>e.tagName===`DS-BUTTON`);this.setMainCtaSize(t)},this.setMainCtaSize=e=>{e&&e.setAttribute(`size`,JSON.stringify({xxl:`large`,xl:`large`,l:`medium`,m:`medium`,s:`small`,xs:`small`,xxs:`small`}))}}static{this.styles=[c.commonStyles]}firstUpdated(e){super.firstUpdated(e);let t=this.mainCtas?.[0];t&&this.setMainCtaSize(t)}updated(e){super.updated(e),e.has(`open`)&&(this.open?(this.savedBodyOverflow=document.body.style.overflow,document.body.style.overflow=`hidden`,this.scrollLocked=!0):this.scrollLocked&&=(document.body.style.overflow=this.savedBodyOverflow,!1))}disconnectedCallback(){super.disconnectedCallback(),this.scrollLocked&&=(document.body.style.overflow=this.savedBodyOverflow,!1)}modalButtonTemplate(){return this.componentFactory.createIconButton({class:`modal-button`,"icon-name":this.open?`cross`:`triple-dot-v`,"@click":this.toggleModal,"data-testid":`modal-button`,"data-aria-label":`more actions`,variant:`tertiary`,size:JSON.stringify({xxl:`large`,xl:`large`,l:`medium`,m:`medium`,s:`small`,xs:`small`,xxs:`small`})})}classes(){return{container:!0,open:this.open}}render(){return e.x`
1
+ const e=require(`../../node_modules/.pnpm/lit-html@3.3.1/node_modules/lit-html/lit-html.cjs`);require(`../../node_modules/.pnpm/lit@3.3.1/node_modules/lit/index.cjs`);const t=require(`../../node_modules/.pnpm/@lit_reactive-element@2.1.1/node_modules/@lit/reactive-element/decorators/property.cjs`),n=require(`../../node_modules/.pnpm/@lit_reactive-element@2.1.1/node_modules/@lit/reactive-element/decorators/query-assigned-elements.cjs`);require(`../../node_modules/.pnpm/lit@3.3.1/node_modules/lit/decorators.cjs`);const r=require(`../../_virtual/_@oxc-project_runtime@0.122.0/helpers/decorate.cjs`),i=require(`../base/UiKitElement.cjs`),a=require(`../../decorators/customUiKitElement.cjs`),o=require(`../../utils/booleanConverter.cjs`),s=require(`../../node_modules/.pnpm/lit-html@3.3.1/node_modules/lit-html/directives/class-map.cjs`);require(`../../node_modules/.pnpm/lit@3.3.1/node_modules/lit/directives/class-map.cjs`);const c=require(`../../utils/scrollLock.cjs`),l=require(`./styles/common.styles.cjs`);var u=class extends i.UiKitElement{constructor(...e){super(...e),this.open=!1,this.scrollLocked=!1,this.toggleModal=()=>{this.open=!this.open,this.open?this.dispatchEvent(new Event(`ds-sidebar-navigation:open`,{bubbles:!0,composed:!0})):this.dispatchEvent(new Event(`ds-sidebar-navigation:close`,{bubbles:!0,composed:!0}))},this.handleModalClick=e=>{e.target===e.currentTarget&&this.toggleModal()},this.handleSlotChange=e=>{let t=e.target.assignedElements().find(e=>e.tagName===`DS-BUTTON`);this.setMainCtaSize(t)},this.setMainCtaSize=e=>{e&&e.setAttribute(`size`,JSON.stringify({xxl:`large`,xl:`large`,l:`medium`,m:`medium`,s:`small`,xs:`small`,xxs:`small`}))}}static{this.styles=[l.commonStyles]}firstUpdated(e){super.firstUpdated(e);let t=this.mainCtas?.[0];t&&this.setMainCtaSize(t)}updated(e){super.updated(e),e.has(`open`)&&(this.open?(c.scrollLock.lock(),this.scrollLocked=!0):this.scrollLocked&&=(c.scrollLock.unlock(),!1))}disconnectedCallback(){super.disconnectedCallback(),this.scrollLocked&&=(c.scrollLock.unlock(),!1)}modalButtonTemplate(){return this.componentFactory.createIconButton({class:`modal-button`,"icon-name":this.open?`cross`:`triple-dot-v`,"@click":this.toggleModal,"data-testid":`modal-button`,"data-aria-label":`more actions`,variant:`tertiary`,size:JSON.stringify({xxl:`large`,xl:`large`,l:`medium`,m:`medium`,s:`small`,xs:`small`,xxs:`small`})})}classes(){return{container:!0,open:this.open}}render(){return e.x`
2
2
  <div class=${s.e(this.classes())}>
3
3
  <nav class="nav" part="bar">
4
4
  <div class="aside" part="aside">
@@ -17,4 +17,4 @@ const e=require(`../../node_modules/.pnpm/lit-html@3.3.1/node_modules/lit-html/l
17
17
  <slot name="ctas"></slot>
18
18
  </div>
19
19
  </div>
20
- `}};r.__decorate([t.n({type:Boolean,converter:o.booleanConverter,reflect:!0})],l.prototype,`open`,void 0),r.__decorate([n.o({slot:`main-cta`,selector:`ds-button`,flatten:!0})],l.prototype,`mainCtas`,void 0),l=r.__decorate([a.customUiKitElement(`ds-sidebar-navigation`)],l);
20
+ `}};r.__decorate([t.n({type:Boolean,converter:o.booleanConverter,reflect:!0})],u.prototype,`open`,void 0),r.__decorate([n.o({slot:`main-cta`,selector:`ds-button`,flatten:!0})],u.prototype,`mainCtas`,void 0),u=r.__decorate([a.customUiKitElement(`ds-sidebar-navigation`)],u);
@@ -1,4 +1,4 @@
1
1
  const e=require(`../../node_modules/.pnpm/@lit_context@1.1.6/node_modules/@lit/context/lib/decorators/provide.cjs`),t=require(`./themeContext.cjs`),n=require(`../../core/theme.constants.cjs`),r=require(`../../utils/PubSub.cjs`),i=require(`../../node_modules/.pnpm/lit-html@3.3.1/node_modules/lit-html/lit-html.cjs`),a=require(`../../node_modules/.pnpm/lit-element@4.2.1/node_modules/lit-element/lit-element.cjs`);require(`../../node_modules/.pnpm/lit@3.3.1/node_modules/lit/index.cjs`);const o=require(`../../node_modules/.pnpm/@lit_reactive-element@2.1.1/node_modules/@lit/reactive-element/decorators/property.cjs`),s=require(`../../node_modules/.pnpm/@lit_reactive-element@2.1.1/node_modules/@lit/reactive-element/decorators/state.cjs`);require(`../../node_modules/.pnpm/lit@3.3.1/node_modules/lit/decorators.cjs`);const c=require(`../../_virtual/_@oxc-project_runtime@0.122.0/helpers/decorate.cjs`),l=require(`../../decorators/customUiKitElement.cjs`),u=require(`../../utils/booleanConverter.cjs`),d=require(`../../styles/source/shared/fonts-config.cjs`);var f=class extends a.i{constructor(...e){super(...e),this.loadFonts=!0,this.loadStyles=!0,this.cssLoaded=!1,this.loadedFonts=new Set}updated(e){super.updated(e),e.has(`theme`)&&(r.pubSub.publish(`theme`,this.theme),sessionStorage?.setItem(n.THEME_STORAGE_KEY,this.theme),typeof FontFace<`u`&&document?.fonts&&this.loadThemeFonts(),this.loadThemeStyles().then(()=>{this.cssLoaded=!0,this.dispatchEvent(new CustomEvent(`ui-kit:ready`,{bubbles:!0,composed:!0}))}))}loadThemeFonts(){d.fontsConfig[this.theme]?.fonts.forEach(e=>{this.loadThemeFont(e)})}async loadThemeFont({weight:e,name:t,file:n}){if(!this.loadFonts)return Promise.resolve();let r=`${t}-${e}`;if(this.loadedFonts.has(r))return;let i=new FontFace(t,`url('https://ds-assets.cupra.com/fonts/${this.theme}/${n}.woff2') format('woff2'),
2
2
  url('https://ds-assets.cupra.com/fonts/${this.theme}/${n}.woff') format('woff'),
3
3
  url('https://ds-assets.cupra.com/fonts/${this.theme}/${n}.ttf') format('truetype'),
4
- url('https://ds-assets.cupra.com/fonts/${this.theme}/${n}.otf') format('opentype')`,{style:`normal`,weight:e,display:`swap`});try{await i.load(),document.fonts.add(i),this.loadedFonts.add(r)}catch(n){console.error(`Error loading "${t}" font with "${e}" weight:`,n)}}loadThemeStyles(){return this.loadStyles?new Promise((e,t)=>{let n=`/2.0.0-canary.89`,r=`https://ds-assets.cupra.com${n}/styles/${this.theme}/theme.css`;if(document.head.querySelector(`link[href="${r}"]`))e();else{let i=`ui-kit-theme-${n}`,a=document.getElementById(i),o=document.createElement(`link`);o.id=i,o.rel=`stylesheet`,o.href=r,o.onload=()=>e(),o.onerror=()=>t(Error(`Failed to load theme CSS: ${r}`)),document.head.appendChild(o),a?.remove()}}):Promise.resolve()}render(){return this.cssLoaded?i.x`<slot></slot>`:i.E}};c.__decorate([o.n({type:Boolean,converter:u.booleanConverter,attribute:`load-fonts`})],f.prototype,`loadFonts`,void 0),c.__decorate([o.n({type:Boolean,converter:u.booleanConverter,attribute:`load-styles`})],f.prototype,`loadStyles`,void 0),c.__decorate([e.e({context:t.themeContext}),o.n({type:String})],f.prototype,`theme`,void 0),c.__decorate([s.r()],f.prototype,`cssLoaded`,void 0),c.__decorate([s.r()],f.prototype,`loadedFonts`,void 0),f=c.__decorate([l.customUiKitElement(`ds-theme-provider`)],f);
4
+ url('https://ds-assets.cupra.com/fonts/${this.theme}/${n}.otf') format('opentype')`,{style:`normal`,weight:e,display:`swap`});try{await i.load(),document.fonts.add(i),this.loadedFonts.add(r)}catch(n){console.error(`Error loading "${t}" font with "${e}" weight:`,n)}}loadThemeStyles(){return this.loadStyles?new Promise((e,t)=>{let n=`/2.0.0-canary.91`,r=`https://ds-assets.cupra.com${n}/styles/${this.theme}/theme.css`;if(document.head.querySelector(`link[href="${r}"]`))e();else{let i=`ui-kit-theme-${n}`,a=document.getElementById(i),o=document.createElement(`link`);o.id=i,o.rel=`stylesheet`,o.href=r,o.onload=()=>e(),o.onerror=()=>t(Error(`Failed to load theme CSS: ${r}`)),document.head.appendChild(o),a?.remove()}}):Promise.resolve()}render(){return this.cssLoaded?i.x`<slot></slot>`:i.E}};c.__decorate([o.n({type:Boolean,converter:u.booleanConverter,attribute:`load-fonts`})],f.prototype,`loadFonts`,void 0),c.__decorate([o.n({type:Boolean,converter:u.booleanConverter,attribute:`load-styles`})],f.prototype,`loadStyles`,void 0),c.__decorate([e.e({context:t.themeContext}),o.n({type:String})],f.prototype,`theme`,void 0),c.__decorate([s.r()],f.prototype,`cssLoaded`,void 0),c.__decorate([s.r()],f.prototype,`loadedFonts`,void 0),f=c.__decorate([l.customUiKitElement(`ds-theme-provider`)],f);
@@ -1 +1 @@
1
- var e={cupra:{fonts:[{name:`cupra-screen`,weight:`300`,file:`CupraScreen-Light`},{name:`cupra-screen`,weight:`350`,file:`CupraScreen-Book`},{name:`cupra-screen`,weight:`400`,file:`CupraScreen-Regular`},{name:`cupra-screen`,weight:`500`,file:`CupraScreen-Medium`}]},"cupra-diagonal":{fonts:[{name:`cupra-screen`,weight:`300`,file:`CupraScreen-Light`},{name:`cupra-screen`,weight:`350`,file:`CupraScreen-Book`},{name:`cupra-screen`,weight:`400`,file:`CupraScreen-Regular`},{name:`cupra-screen`,weight:`500`,file:`CupraScreen-Medium`}]},seat:{fonts:[{name:`seat`,weight:`400`,file:`SeatBcn-Regular`},{name:`seat`,weight:`500`,file:`SeatBcn-Medium`},{name:`seat`,weight:`700`,file:`SeatBcn-Bold`}]},"seat-legacy":{fonts:[{name:`seat`,weight:`400`,file:`SeatBcn-Regular`},{name:`seat`,weight:`500`,file:`SeatBcn-Medium`},{name:`seat`,weight:`700`,file:`SeatBcn-Bold`}]}};exports.fontsConfig=e;
1
+ var e={cupra:{fonts:[{name:`cupra-screen`,weight:`300`,file:`CupraScreen-Light`},{name:`cupra-screen`,weight:`350`,file:`CupraScreen-Book`},{name:`cupra-screen`,weight:`400`,file:`CupraScreen-Regular`},{name:`cupra-screen`,weight:`500`,file:`CupraScreen-Medium`}]},"cupra-diagonal":{fonts:[{name:`cupra-screen`,weight:`300`,file:`CupraScreen-Light`},{name:`cupra-screen`,weight:`350`,file:`CupraScreen-Book`},{name:`cupra-screen`,weight:`400`,file:`CupraScreen-Regular`},{name:`cupra-screen`,weight:`500`,file:`CupraScreen-Medium`}]},seat:{fonts:[{name:`seat`,weight:`350`,file:`CupraScreen-Book`},{name:`seat`,weight:`400`,file:`SeatBcn-Regular`},{name:`seat`,weight:`500`,file:`SeatBcn-Medium`},{name:`seat`,weight:`700`,file:`SeatBcn-Bold`},{name:`seat`,weight:`900`,file:`CupraScreen-Black`}]},"seat-legacy":{fonts:[{name:`seat`,weight:`400`,file:`SeatBcn-Regular`},{name:`seat`,weight:`500`,file:`SeatBcn-Medium`},{name:`seat`,weight:`700`,file:`SeatBcn-Bold`}]}};exports.fontsConfig=e;
@@ -1 +1 @@
1
- const e=require(`../core/theme.constants.cjs`),t=require(`./PubSub.cjs`);var n=class{constructor(){this.icons={},this.handleChangeTheme=e=>{if(this.theme===e)return;this.theme=e;let t=Object.keys(this.icons);this.icons={},t.forEach(e=>this.fetchIcon(e))},this.fetchIcon=async(t,n={})=>{let r=typeof sessionStorage<`u`?sessionStorage?.getItem(e.THEME_STORAGE_KEY):null;!this.theme&&r&&(this.theme=r);let i=this.icons[t];if(i)return await i;let a=this.loadIcon(t,n).catch(e=>{throw delete this.icons[t],e});return this.icons[t]=a,a},this.loadIcon=(e,{cache:t=`force-cache`,...n})=>!this.theme||typeof fetch>`u`?Promise.resolve(`<svg class="ds-icon"></svg>`):fetch(`https://ds-assets.cupra.com/icons/${this.theme}/${e}.svg`,{cache:t,...n}).then(e=>e.text()).catch(t=>{if(t?.name===`AbortError`)throw t;return console.error(`Failed to fetch icon "${e}":`,t),``}),t.pubSub.subscribe(`theme`,this.handleChangeTheme)}},r=Symbol.for(`@cupra/ui-kit/icons-manager/2.0.0-canary.89`),i=globalThis,a=i[r];a||(a=new n,Object.defineProperty(i,r,{value:a,writable:!1,configurable:!1,enumerable:!1}));var o=a;exports.iconsManager=o;
1
+ const e=require(`../core/theme.constants.cjs`),t=require(`./PubSub.cjs`);var n=class{constructor(){this.icons={},this.handleChangeTheme=e=>{if(this.theme===e)return;this.theme=e;let t=Object.keys(this.icons);this.icons={},t.forEach(e=>this.fetchIcon(e))},this.fetchIcon=async(t,n={})=>{let r=typeof sessionStorage<`u`?sessionStorage?.getItem(e.THEME_STORAGE_KEY):null;!this.theme&&r&&(this.theme=r);let i=this.icons[t];if(i)return await i;let a=this.loadIcon(t,n).catch(e=>{throw delete this.icons[t],e});return this.icons[t]=a,a},this.loadIcon=(e,{cache:t=`force-cache`,...n})=>!this.theme||typeof fetch>`u`?Promise.resolve(`<svg class="ds-icon"></svg>`):fetch(`https://ds-assets.cupra.com/icons/${this.theme}/${e}.svg`,{cache:t,...n}).then(e=>e.text()).catch(t=>{if(t?.name===`AbortError`)throw t;return console.error(`Failed to fetch icon "${e}":`,t),``}),t.pubSub.subscribe(`theme`,this.handleChangeTheme)}},r=Symbol.for(`@cupra/ui-kit/icons-manager/2.0.0-canary.91`),i=globalThis,a=i[r];a||(a=new n,Object.defineProperty(i,r,{value:a,writable:!1,configurable:!1,enumerable:!1}));var o=a;exports.iconsManager=o;
@@ -1 +1 @@
1
- var e=class{constructor(){this.subscribers={},this.lastPublishedData={}}subscribe(e,t){return this.subscribers[e]||(this.subscribers[e]=[]),this.subscribers[e].push(t),this.lastPublishedData[e]}unsubscribe(e,t){this.subscribers[e]&&(this.subscribers[e]=this.subscribers[e].filter(e=>e!==t))}publish(e,t){this.lastPublishedData[e]=t,this.subscribers[e]&&this.subscribers[e].forEach(n=>{try{n(t)}catch(t){console.error(`Error in subscriber for event "${e}":`,t)}})}},t=Symbol.for(`@cupra/ui-kit/pubsub/2.0.0-canary.89`),n=globalThis,r=n[t];r||(r=new e,Object.defineProperty(n,t,{value:r,writable:!1,configurable:!1,enumerable:!1}));var i=r;exports.pubSub=i;
1
+ var e=class{constructor(){this.subscribers={},this.lastPublishedData={}}subscribe(e,t){return this.subscribers[e]||(this.subscribers[e]=[]),this.subscribers[e].push(t),this.lastPublishedData[e]}unsubscribe(e,t){this.subscribers[e]&&(this.subscribers[e]=this.subscribers[e].filter(e=>e!==t))}publish(e,t){this.lastPublishedData[e]=t,this.subscribers[e]&&this.subscribers[e].forEach(n=>{try{n(t)}catch(t){console.error(`Error in subscriber for event "${e}":`,t)}})}},t=Symbol.for(`@cupra/ui-kit/pubsub/2.0.0-canary.91`),n=globalThis,r=n[t];r||(r=new e,Object.defineProperty(n,t,{value:r,writable:!1,configurable:!1,enumerable:!1}));var i=r;exports.pubSub=i;
@@ -1 +1 @@
1
- var e=require(`../concurrencyLimit.cjs`).concurrencyLimit(20),t=class t{constructor(){this.stylePromises=new Map,this.getStyles=async({componentName:t,theme:n})=>{if(!n||!t)return;let r=`https://ds-assets.cupra.com/2.0.0-canary.89/styles/${n}/components/${t}.css`,i=this.getCachedStyleSheetPromise({url:r});if(i)return i;let a=e(()=>this.fetchStyle({url:r})).then(e=>(e||this.stylePromises.delete(r),e));return this.stylePromises.set(r,a),this.stylePromises.get(r)}}async fetchStyle({url:e}){try{if(typeof fetch>`u`)return;let t=await fetch(e,{cache:`force-cache`});if(t.ok)return t.text()}catch(t){console.error(`Failed to fetch Style Sheet "${e}":`,t)}}getCachedStyleSheetPromise({url:e}){return this.stylePromises.get(e)}static getInstance(){return t.instance||=new t,t.instance}}.getInstance();exports.stylesRegistry=t;
1
+ var e=require(`../concurrencyLimit.cjs`).concurrencyLimit(20),t=class t{constructor(){this.stylePromises=new Map,this.getStyles=async({componentName:t,theme:n})=>{if(!n||!t)return;let r=`https://ds-assets.cupra.com/2.0.0-canary.91/styles/${n}/components/${t}.css`,i=this.getCachedStyleSheetPromise({url:r});if(i)return i;let a=e(()=>this.fetchStyle({url:r})).then(e=>(e||this.stylePromises.delete(r),e));return this.stylePromises.set(r,a),this.stylePromises.get(r)}}async fetchStyle({url:e}){try{if(typeof fetch>`u`)return;let t=await fetch(e,{cache:`force-cache`});if(t.ok)return t.text()}catch(t){console.error(`Failed to fetch Style Sheet "${e}":`,t)}}getCachedStyleSheetPromise({url:e}){return this.stylePromises.get(e)}static getInstance(){return t.instance||=new t,t.instance}}.getInstance();exports.stylesRegistry=t;
@@ -1 +1 @@
1
- const e=require(`../node_modules/.pnpm/@lit_reactive-element@2.1.1/node_modules/@lit/reactive-element/css-tag.cjs`);require(`../node_modules/.pnpm/lit@3.3.1/node_modules/lit/index.cjs`);function t(t,...n){return e.i`${e.r(String.raw({raw:t},...n).replace(/(--private-[\w-]+)(?=\s*[):,])/g,`$1-v2-0-0-canary-89`))}`}exports.cssWithTokens=t;
1
+ const e=require(`../node_modules/.pnpm/@lit_reactive-element@2.1.1/node_modules/@lit/reactive-element/css-tag.cjs`);require(`../node_modules/.pnpm/lit@3.3.1/node_modules/lit/index.cjs`);function t(t,...n){return e.i`${e.r(String.raw({raw:t},...n).replace(/(--private-[\w-]+)(?=\s*[):,])/g,`$1-v2-0-0-canary-91`))}`}exports.cssWithTokens=t;
@@ -1 +1 @@
1
- const e=require(`../node_modules/.pnpm/lit-html@3.3.1/node_modules/lit-html/lit-html.cjs`);require(`../node_modules/.pnpm/lit@3.3.1/node_modules/lit/index.cjs`);const t=require(`../node_modules/.pnpm/lit-html@3.3.1/node_modules/lit-html/directives/unsafe-html.cjs`);require(`../node_modules/.pnpm/lit@3.3.1/node_modules/lit/directives/unsafe-html.cjs`);function n(n,...r){return e.x`${t.o(String.raw({raw:n},...r).replace(/(--private-[\w-]+)(?=\s*[):,])/g,`$1-v2-0-0-canary-89`))}`}exports.htmlWithTokens=n;
1
+ const e=require(`../node_modules/.pnpm/lit-html@3.3.1/node_modules/lit-html/lit-html.cjs`);require(`../node_modules/.pnpm/lit@3.3.1/node_modules/lit/index.cjs`);const t=require(`../node_modules/.pnpm/lit-html@3.3.1/node_modules/lit-html/directives/unsafe-html.cjs`);require(`../node_modules/.pnpm/lit@3.3.1/node_modules/lit/directives/unsafe-html.cjs`);function n(n,...r){return e.x`${t.o(String.raw({raw:n},...r).replace(/(--private-[\w-]+)(?=\s*[):,])/g,`$1-v2-0-0-canary-91`))}`}exports.htmlWithTokens=n;
@@ -0,0 +1 @@
1
+ var e=new class{#e=0;#t=``;lock(){this.#e===0&&(this.#t=document.body.style.overflow,document.body.style.overflow=`hidden`),this.#e++}unlock(){this.#e!==0&&(this.#e--,this.#e===0&&(document.body.style.overflow=this.#t,this.#t=``))}};exports.scrollLock=e;
@@ -11,11 +11,12 @@ import { booleanConverter as c } from "../../utils/booleanConverter.js";
11
11
  import { e as l } from "../../node_modules/.pnpm/lit-html@3.3.1/node_modules/lit-html/directives/class-map.js";
12
12
  import "../../node_modules/.pnpm/lit@3.3.1/node_modules/lit/directives/class-map.js";
13
13
  import { debounce as u } from "../../utils/debounce.js";
14
- import { commonStyles as d } from "./styles/common.styles.js";
14
+ import { scrollLock as d } from "../../utils/scrollLock.js";
15
+ import { commonStyles as f } from "./styles/common.styles.js";
15
16
  //#region src/components/ds-dialog/ds-dialog.ts
16
- var f = class extends o {
17
+ var p = class extends o {
17
18
  constructor(...e) {
18
- super(...e), this.lockClose = !1, this.lockScroll = !0, this.open = !1, this.size = "medium", this.hasBeenOpened = !1, this.hasScroll = !1, this.debouncedCheckScroll = u({ func: () => this.checkScroll() }), this.handleCloseButtonClick = () => {
19
+ super(...e), this.lockClose = !1, this.lockScroll = !0, this.open = !1, this.size = "medium", this.hasBeenOpened = !1, this.hasScroll = !1, this.debouncedCheckScroll = u({ func: () => this.checkScroll() }), this.scrollLocked = !1, this.handleCloseButtonClick = () => {
19
20
  this.handleClose("button");
20
21
  }, this.handleDialogClick = (e) => {
21
22
  e.target === this.nativeDialog && this.handleClose("backdrop");
@@ -26,10 +27,13 @@ var f = class extends o {
26
27
  };
27
28
  }
28
29
  static {
29
- this.styles = [d];
30
+ this.styles = [f];
30
31
  }
31
- async updated(e) {
32
- super.updated(e), !this.hasBeenOpened && e.has("open") && this.open && (this.hasBeenOpened = !0), e.has("open") && (this.handleResizeObserver(), this.syncNativeDialogState()), e.has("open") && this.open && (await this.updateComplete, this.requestUpdate());
32
+ updated(e) {
33
+ super.updated(e), !this.hasBeenOpened && e.has("open") && this.open && (this.hasBeenOpened = !0), e.has("open") && (this.open || (this.hasScroll = !1), this.handleResizeObserver(), this.syncNativeDialogState(), this.syncScrollLock());
34
+ }
35
+ syncScrollLock() {
36
+ this.open && this.lockScroll ? (d.lock(), this.scrollLocked = !0) : this.scrollLocked &&= (d.unlock(), !1);
33
37
  }
34
38
  syncNativeDialogState() {
35
39
  this.nativeDialog && (this.open ? this.openNativeDialog() : this.closeNativeDialog());
@@ -67,10 +71,10 @@ var f = class extends o {
67
71
  super.connectedCallback(), this.resizeObserver = new ResizeObserver(this.debouncedCheckScroll), this.handleResizeObserver(), this.addEventListener("click", this.handleHostClick);
68
72
  }
69
73
  disconnectedCallback() {
70
- super.disconnectedCallback(), this.resizeObserver?.disconnect(), this.removeEventListener("click", this.handleHostClick);
74
+ super.disconnectedCallback(), this.resizeObserver?.disconnect(), this.scrollLocked &&= (d.unlock(), !1), this.removeEventListener("click", this.handleHostClick);
71
75
  }
72
76
  checkScroll() {
73
- this.hasScroll = this.content?.scrollHeight > this.content?.clientHeight;
77
+ this.hasScroll ||= this.content?.scrollHeight > this.content?.clientHeight;
74
78
  }
75
79
  render() {
76
80
  return !this.hasBeenOpened && !this.open ? e : t`
@@ -99,18 +103,18 @@ a([n({
99
103
  type: Boolean,
100
104
  converter: c,
101
105
  attribute: "lock-close"
102
- })], f.prototype, "lockClose", void 0), a([n({
106
+ })], p.prototype, "lockClose", void 0), a([n({
103
107
  type: Boolean,
104
108
  converter: c,
105
109
  attribute: "lock-scroll"
106
- })], f.prototype, "lockScroll", void 0), a([n({
110
+ })], p.prototype, "lockScroll", void 0), a([n({
107
111
  type: Boolean,
108
112
  converter: c
109
- })], f.prototype, "open", void 0), a([n({ type: String })], f.prototype, "size", void 0), a([n({
113
+ })], p.prototype, "open", void 0), a([n({ type: String })], p.prototype, "size", void 0), a([n({
110
114
  type: String,
111
115
  attribute: "data-aria-label"
112
- })], f.prototype, "dataAriaLabel", void 0), a([n({
116
+ })], p.prototype, "dataAriaLabel", void 0), a([n({
113
117
  type: String,
114
118
  attribute: "data-aria-description"
115
- })], f.prototype, "dataAriaDescription", void 0), a([r()], f.prototype, "hasBeenOpened", void 0), a([r()], f.prototype, "hasScroll", void 0), a([i(".content")], f.prototype, "content", void 0), a([i("dialog")], f.prototype, "nativeDialog", void 0), f = a([s("ds-dialog")], f);
119
+ })], p.prototype, "dataAriaDescription", void 0), a([r()], p.prototype, "hasBeenOpened", void 0), a([r()], p.prototype, "hasScroll", void 0), a([i(".content")], p.prototype, "content", void 0), a([i("dialog")], p.prototype, "nativeDialog", void 0), p = a([s("ds-dialog")], p);
116
120
  //#endregion
@@ -9,11 +9,12 @@ import { customUiKitElement as a } from "../../decorators/customUiKitElement.js"
9
9
  import { booleanConverter as o } from "../../utils/booleanConverter.js";
10
10
  import { e as s } from "../../node_modules/.pnpm/lit-html@3.3.1/node_modules/lit-html/directives/class-map.js";
11
11
  import "../../node_modules/.pnpm/lit@3.3.1/node_modules/lit/directives/class-map.js";
12
- import { commonStyles as c } from "./styles/common.styles.js";
12
+ import { scrollLock as c } from "../../utils/scrollLock.js";
13
+ import { commonStyles as l } from "./styles/common.styles.js";
13
14
  //#region src/components/ds-sidebar-navigation/ds-sidebar-navigation.ts
14
- var l = class extends i {
15
+ var u = class extends i {
15
16
  constructor(...e) {
16
- super(...e), this.open = !1, this.scrollLocked = !1, this.savedBodyOverflow = "", this.toggleModal = () => {
17
+ super(...e), this.open = !1, this.scrollLocked = !1, this.toggleModal = () => {
17
18
  this.open = !this.open, this.open ? this.dispatchEvent(new Event("ds-sidebar-navigation:open", {
18
19
  bubbles: !0,
19
20
  composed: !0
@@ -39,7 +40,7 @@ var l = class extends i {
39
40
  };
40
41
  }
41
42
  static {
42
- this.styles = [c];
43
+ this.styles = [l];
43
44
  }
44
45
  firstUpdated(e) {
45
46
  super.firstUpdated(e);
@@ -47,10 +48,10 @@ var l = class extends i {
47
48
  t && this.setMainCtaSize(t);
48
49
  }
49
50
  updated(e) {
50
- super.updated(e), e.has("open") && (this.open ? (this.savedBodyOverflow = document.body.style.overflow, document.body.style.overflow = "hidden", this.scrollLocked = !0) : this.scrollLocked &&= (document.body.style.overflow = this.savedBodyOverflow, !1));
51
+ super.updated(e), e.has("open") && (this.open ? (c.lock(), this.scrollLocked = !0) : this.scrollLocked &&= (c.unlock(), !1));
51
52
  }
52
53
  disconnectedCallback() {
53
- super.disconnectedCallback(), this.scrollLocked &&= (document.body.style.overflow = this.savedBodyOverflow, !1);
54
+ super.disconnectedCallback(), this.scrollLocked &&= (c.unlock(), !1);
54
55
  }
55
56
  modalButtonTemplate() {
56
57
  return this.componentFactory.createIconButton({
@@ -104,9 +105,9 @@ r([t({
104
105
  type: Boolean,
105
106
  converter: o,
106
107
  reflect: !0
107
- })], l.prototype, "open", void 0), r([n({
108
+ })], u.prototype, "open", void 0), r([n({
108
109
  slot: "main-cta",
109
110
  selector: "ds-button",
110
111
  flatten: !0
111
- })], l.prototype, "mainCtas", void 0), l = r([a("ds-sidebar-navigation")], l);
112
+ })], u.prototype, "mainCtas", void 0), u = r([a("ds-sidebar-navigation")], u);
112
113
  //#endregion
@@ -50,7 +50,7 @@ var p = class extends o {
50
50
  }
51
51
  loadThemeStyles() {
52
52
  return this.loadStyles ? new Promise((e, t) => {
53
- let n = "/2.0.0-canary.89", r = `https://ds-assets.cupra.com${n}/styles/${this.theme}/theme.css`;
53
+ let n = "/2.0.0-canary.91", r = `https://ds-assets.cupra.com${n}/styles/${this.theme}/theme.css`;
54
54
  if (document.head.querySelector(`link[href="${r}"]`)) e();
55
55
  else {
56
56
  let i = `ui-kit-theme-${n}`, a = document.getElementById(i), o = document.createElement("link");
@@ -45,6 +45,11 @@ var e = {
45
45
  }
46
46
  ] },
47
47
  seat: { fonts: [
48
+ {
49
+ name: "seat",
50
+ weight: "350",
51
+ file: "CupraScreen-Book"
52
+ },
48
53
  {
49
54
  name: "seat",
50
55
  weight: "400",
@@ -59,6 +64,11 @@ var e = {
59
64
  name: "seat",
60
65
  weight: "700",
61
66
  file: "SeatBcn-Bold"
67
+ },
68
+ {
69
+ name: "seat",
70
+ weight: "900",
71
+ file: "CupraScreen-Black"
62
72
  }
63
73
  ] },
64
74
  "seat-legacy": { fonts: [
@@ -25,7 +25,7 @@ var n = class {
25
25
  return console.error(`Failed to fetch icon "${e}":`, t), "";
26
26
  }), t.subscribe("theme", this.handleChangeTheme);
27
27
  }
28
- }, r = Symbol.for("@cupra/ui-kit/icons-manager/2.0.0-canary.89"), i = globalThis, a = i[r];
28
+ }, r = Symbol.for("@cupra/ui-kit/icons-manager/2.0.0-canary.91"), i = globalThis, a = i[r];
29
29
  a || (a = new n(), Object.defineProperty(i, r, {
30
30
  value: a,
31
31
  writable: !1,
@@ -18,7 +18,7 @@ var e = class {
18
18
  }
19
19
  });
20
20
  }
21
- }, t = Symbol.for("@cupra/ui-kit/pubsub/2.0.0-canary.89"), n = globalThis, r = n[t];
21
+ }, t = Symbol.for("@cupra/ui-kit/pubsub/2.0.0-canary.91"), n = globalThis, r = n[t];
22
22
  r || (r = new e(), Object.defineProperty(n, t, {
23
23
  value: r,
24
24
  writable: !1,
@@ -4,7 +4,7 @@ var t = e(20), n = class e {
4
4
  constructor() {
5
5
  this.stylePromises = /* @__PURE__ */ new Map(), this.getStyles = async ({ componentName: e, theme: n }) => {
6
6
  if (!n || !e) return;
7
- let r = `https://ds-assets.cupra.com/2.0.0-canary.89/styles/${n}/components/${e}.css`, i = this.getCachedStyleSheetPromise({ url: r });
7
+ let r = `https://ds-assets.cupra.com/2.0.0-canary.91/styles/${n}/components/${e}.css`, i = this.getCachedStyleSheetPromise({ url: r });
8
8
  if (i) return i;
9
9
  let a = t(() => this.fetchStyle({ url: r })).then((e) => (e || this.stylePromises.delete(r), e));
10
10
  return this.stylePromises.set(r, a), this.stylePromises.get(r);
@@ -2,7 +2,7 @@ import { i as e, r as t } from "../node_modules/.pnpm/@lit_reactive-element@2.1.
2
2
  import "../node_modules/.pnpm/lit@3.3.1/node_modules/lit/index.js";
3
3
  //#region src/utils/cssWithTokens.ts
4
4
  function n(n, ...r) {
5
- return e`${t(String.raw({ raw: n }, ...r).replace(/(--private-[\w-]+)(?=\s*[):,])/g, "$1-v2-0-0-canary-89"))}`;
5
+ return e`${t(String.raw({ raw: n }, ...r).replace(/(--private-[\w-]+)(?=\s*[):,])/g, "$1-v2-0-0-canary-91"))}`;
6
6
  }
7
7
  //#endregion
8
8
  export { n as cssWithTokens };
@@ -4,7 +4,7 @@ import { o as t } from "../node_modules/.pnpm/lit-html@3.3.1/node_modules/lit-ht
4
4
  import "../node_modules/.pnpm/lit@3.3.1/node_modules/lit/directives/unsafe-html.js";
5
5
  //#region src/utils/htmlWithTokens.ts
6
6
  function n(n, ...r) {
7
- return e`${t(String.raw({ raw: n }, ...r).replace(/(--private-[\w-]+)(?=\s*[):,])/g, "$1-v2-0-0-canary-89"))}`;
7
+ return e`${t(String.raw({ raw: n }, ...r).replace(/(--private-[\w-]+)(?=\s*[):,])/g, "$1-v2-0-0-canary-91"))}`;
8
8
  }
9
9
  //#endregion
10
10
  export { n as htmlWithTokens };
@@ -0,0 +1,12 @@
1
+ var e = new class {
2
+ #e = 0;
3
+ #t = "";
4
+ lock() {
5
+ this.#e === 0 && (this.#t = document.body.style.overflow, document.body.style.overflow = "hidden"), this.#e++;
6
+ }
7
+ unlock() {
8
+ this.#e !== 0 && (this.#e--, this.#e === 0 && (document.body.style.overflow = this.#t, this.#t = ""));
9
+ }
10
+ }();
11
+ //#endregion
12
+ export { e as scrollLock };
@@ -17,7 +17,9 @@ export declare class DsDialog extends UiKitElement {
17
17
  private nativeDialog;
18
18
  private resizeObserver;
19
19
  private debouncedCheckScroll;
20
- updated(changedProperties: PropertyValues): Promise<void>;
20
+ private scrollLocked;
21
+ updated(changedProperties: PropertyValues): void;
22
+ private syncScrollLock;
21
23
  private syncNativeDialogState;
22
24
  private openNativeDialog;
23
25
  private closeNativeDialog;
@@ -1,7 +1,7 @@
1
1
  import type { CommonAttrs } from '../../types/types.ts';
2
2
  export interface DsSelectAttrs extends CommonAttrs {
3
3
  mode?: 'dark' | 'light';
4
- size?: 'medium' | 'small';
4
+ size?: 'large' | 'medium' | 'small';
5
5
  variant?: 'primary' | 'secondary' | (string & {});
6
6
  readonly?: boolean;
7
7
  }
@@ -6,7 +6,6 @@ export declare class DsSidebarNavigation extends UiKitElement implements DsSideb
6
6
  open: DsSidebarNavigationAttrs['open'];
7
7
  mainCtas: Array<Node>;
8
8
  private scrollLocked;
9
- private savedBodyOverflow;
10
9
  protected firstUpdated(_changedProperties: PropertyValues): void;
11
10
  protected updated(_changedProperties: PropertyValues): void;
12
11
  disconnectedCallback(): void;
@@ -0,0 +1,6 @@
1
+ export declare class ScrollLock {
2
+ #private;
3
+ lock(): void;
4
+ unlock(): void;
5
+ }
6
+ export declare const scrollLock: ScrollLock;
@@ -1,4 +1,4 @@
1
- const e=require(`../../node_modules/.pnpm/lit-html@3.3.1/node_modules/lit-html/lit-html.cjs`);require(`../../node_modules/.pnpm/lit@3.3.1/node_modules/lit/index.cjs`);const t=require(`../../node_modules/.pnpm/@lit_reactive-element@2.1.1/node_modules/@lit/reactive-element/decorators/property.cjs`),n=require(`../../node_modules/.pnpm/@lit_reactive-element@2.1.1/node_modules/@lit/reactive-element/decorators/state.cjs`),r=require(`../../node_modules/.pnpm/@lit_reactive-element@2.1.1/node_modules/@lit/reactive-element/decorators/query.cjs`);require(`../../node_modules/.pnpm/lit@3.3.1/node_modules/lit/decorators.cjs`);const i=require(`../../_virtual/_@oxc-project_runtime@0.122.0/helpers/decorate.cjs`),a=require(`../base/UiKitElement.cjs`),o=require(`../../decorators/customUiKitElement.cjs`),s=require(`../../utils/booleanConverter.cjs`),c=require(`../../node_modules/.pnpm/lit-html@3.3.1/node_modules/lit-html/directives/class-map.cjs`);require(`../../node_modules/.pnpm/lit@3.3.1/node_modules/lit/directives/class-map.cjs`);const l=require(`../../utils/debounce.cjs`),u=require(`./styles/common.styles.cjs`);var d=class extends a.UiKitElement{constructor(...e){super(...e),this.lockClose=!1,this.lockScroll=!0,this.open=!1,this.size=`medium`,this.hasBeenOpened=!1,this.hasScroll=!1,this.debouncedCheckScroll=l.debounce({func:()=>this.checkScroll()}),this.handleCloseButtonClick=()=>{this.handleClose(`button`)},this.handleDialogClick=e=>{e.target===this.nativeDialog&&this.handleClose(`backdrop`)},this.handleCancel=e=>{e.preventDefault(),this.lockClose||this.handleClose(`escape`)},this.handleHostClick=e=>{e.stopPropagation()}}static{this.styles=[u.commonStyles]}async updated(e){super.updated(e),!this.hasBeenOpened&&e.has(`open`)&&this.open&&(this.hasBeenOpened=!0),e.has(`open`)&&(this.handleResizeObserver(),this.syncNativeDialogState()),e.has(`open`)&&this.open&&(await this.updateComplete,this.requestUpdate())}syncNativeDialogState(){this.nativeDialog&&(this.open?this.openNativeDialog():this.closeNativeDialog())}openNativeDialog(){this.nativeDialog.open||this.nativeDialog.showModal?.()}closeNativeDialog(){this.nativeDialog.open&&this.nativeDialog.close?.()}async handleResizeObserver(){this.resizeObserver?.disconnect(),this.content&&(this.resizeObserver.observe(this.content),await new Promise(requestAnimationFrame),this.checkScroll())}get panelClasses(){return{panel:!0,"with-scroll":this.open&&this.hasScroll,[this.size]:!!this.size}}dispatchCloseEvents(e){let t=`ds-dialog:close-${e}`;this.dispatchEvent(new Event(t,{bubbles:!0,composed:!0})),this.dispatchEvent(new Event(`ds-dialog:close`,{bubbles:!0,composed:!0}))}handleClose(e){this.lockClose||(this.open=!1,this.dispatchCloseEvents(e))}connectedCallback(){super.connectedCallback(),this.resizeObserver=new ResizeObserver(this.debouncedCheckScroll),this.handleResizeObserver(),this.addEventListener(`click`,this.handleHostClick)}disconnectedCallback(){super.disconnectedCallback(),this.resizeObserver?.disconnect(),this.removeEventListener(`click`,this.handleHostClick)}checkScroll(){this.hasScroll=this.content?.scrollHeight>this.content?.clientHeight}render(){return!this.hasBeenOpened&&!this.open?e.E:e.x`
1
+ const e=require(`../../node_modules/.pnpm/lit-html@3.3.1/node_modules/lit-html/lit-html.cjs`);require(`../../node_modules/.pnpm/lit@3.3.1/node_modules/lit/index.cjs`);const t=require(`../../node_modules/.pnpm/@lit_reactive-element@2.1.1/node_modules/@lit/reactive-element/decorators/property.cjs`),n=require(`../../node_modules/.pnpm/@lit_reactive-element@2.1.1/node_modules/@lit/reactive-element/decorators/state.cjs`),r=require(`../../node_modules/.pnpm/@lit_reactive-element@2.1.1/node_modules/@lit/reactive-element/decorators/query.cjs`);require(`../../node_modules/.pnpm/lit@3.3.1/node_modules/lit/decorators.cjs`);const i=require(`../../_virtual/_@oxc-project_runtime@0.122.0/helpers/decorate.cjs`),a=require(`../base/UiKitElement.cjs`),o=require(`../../decorators/customUiKitElement.cjs`),s=require(`../../utils/booleanConverter.cjs`),c=require(`../../node_modules/.pnpm/lit-html@3.3.1/node_modules/lit-html/directives/class-map.cjs`);require(`../../node_modules/.pnpm/lit@3.3.1/node_modules/lit/directives/class-map.cjs`);const l=require(`../../utils/debounce.cjs`),u=require(`../../utils/scrollLock.cjs`),d=require(`./styles/common.styles.cjs`);var f=class extends a.UiKitElement{constructor(...e){super(...e),this.lockClose=!1,this.lockScroll=!0,this.open=!1,this.size=`medium`,this.hasBeenOpened=!1,this.hasScroll=!1,this.debouncedCheckScroll=l.debounce({func:()=>this.checkScroll()}),this.scrollLocked=!1,this.handleCloseButtonClick=()=>{this.handleClose(`button`)},this.handleDialogClick=e=>{e.target===this.nativeDialog&&this.handleClose(`backdrop`)},this.handleCancel=e=>{e.preventDefault(),this.lockClose||this.handleClose(`escape`)},this.handleHostClick=e=>{e.stopPropagation()}}static{this.styles=[d.commonStyles]}updated(e){super.updated(e),!this.hasBeenOpened&&e.has(`open`)&&this.open&&(this.hasBeenOpened=!0),e.has(`open`)&&(this.open||(this.hasScroll=!1),this.handleResizeObserver(),this.syncNativeDialogState(),this.syncScrollLock())}syncScrollLock(){this.open&&this.lockScroll?(u.scrollLock.lock(),this.scrollLocked=!0):this.scrollLocked&&=(u.scrollLock.unlock(),!1)}syncNativeDialogState(){this.nativeDialog&&(this.open?this.openNativeDialog():this.closeNativeDialog())}openNativeDialog(){this.nativeDialog.open||this.nativeDialog.showModal?.()}closeNativeDialog(){this.nativeDialog.open&&this.nativeDialog.close?.()}async handleResizeObserver(){this.resizeObserver?.disconnect(),this.content&&(this.resizeObserver.observe(this.content),await new Promise(requestAnimationFrame),this.checkScroll())}get panelClasses(){return{panel:!0,"with-scroll":this.open&&this.hasScroll,[this.size]:!!this.size}}dispatchCloseEvents(e){let t=`ds-dialog:close-${e}`;this.dispatchEvent(new Event(t,{bubbles:!0,composed:!0})),this.dispatchEvent(new Event(`ds-dialog:close`,{bubbles:!0,composed:!0}))}handleClose(e){this.lockClose||(this.open=!1,this.dispatchCloseEvents(e))}connectedCallback(){super.connectedCallback(),this.resizeObserver=new ResizeObserver(this.debouncedCheckScroll),this.handleResizeObserver(),this.addEventListener(`click`,this.handleHostClick)}disconnectedCallback(){super.disconnectedCallback(),this.resizeObserver?.disconnect(),this.scrollLocked&&=(u.scrollLock.unlock(),!1),this.removeEventListener(`click`,this.handleHostClick)}checkScroll(){this.hasScroll||=this.content?.scrollHeight>this.content?.clientHeight}render(){return!this.hasBeenOpened&&!this.open?e.E:e.x`
2
2
  <dialog
3
3
  class="dialog"
4
4
  data-testid="ds-dialog-container"
@@ -17,4 +17,4 @@ const e=require(`../../node_modules/.pnpm/lit-html@3.3.1/node_modules/lit-html/l
17
17
  </div>
18
18
  </div>
19
19
  </dialog>
20
- `}};i.__decorate([t.n({type:Boolean,converter:s.booleanConverter,attribute:`lock-close`})],d.prototype,`lockClose`,void 0),i.__decorate([t.n({type:Boolean,converter:s.booleanConverter,attribute:`lock-scroll`})],d.prototype,`lockScroll`,void 0),i.__decorate([t.n({type:Boolean,converter:s.booleanConverter})],d.prototype,`open`,void 0),i.__decorate([t.n({type:String})],d.prototype,`size`,void 0),i.__decorate([t.n({type:String,attribute:`data-aria-label`})],d.prototype,`dataAriaLabel`,void 0),i.__decorate([t.n({type:String,attribute:`data-aria-description`})],d.prototype,`dataAriaDescription`,void 0),i.__decorate([n.r()],d.prototype,`hasBeenOpened`,void 0),i.__decorate([n.r()],d.prototype,`hasScroll`,void 0),i.__decorate([r.e(`.content`)],d.prototype,`content`,void 0),i.__decorate([r.e(`dialog`)],d.prototype,`nativeDialog`,void 0),d=i.__decorate([o.customUiKitElement(`ds-dialog`)],d);
20
+ `}};i.__decorate([t.n({type:Boolean,converter:s.booleanConverter,attribute:`lock-close`})],f.prototype,`lockClose`,void 0),i.__decorate([t.n({type:Boolean,converter:s.booleanConverter,attribute:`lock-scroll`})],f.prototype,`lockScroll`,void 0),i.__decorate([t.n({type:Boolean,converter:s.booleanConverter})],f.prototype,`open`,void 0),i.__decorate([t.n({type:String})],f.prototype,`size`,void 0),i.__decorate([t.n({type:String,attribute:`data-aria-label`})],f.prototype,`dataAriaLabel`,void 0),i.__decorate([t.n({type:String,attribute:`data-aria-description`})],f.prototype,`dataAriaDescription`,void 0),i.__decorate([n.r()],f.prototype,`hasBeenOpened`,void 0),i.__decorate([n.r()],f.prototype,`hasScroll`,void 0),i.__decorate([r.e(`.content`)],f.prototype,`content`,void 0),i.__decorate([r.e(`dialog`)],f.prototype,`nativeDialog`,void 0),f=i.__decorate([o.customUiKitElement(`ds-dialog`)],f);
@@ -1,4 +1,4 @@
1
- const e=require(`../../node_modules/.pnpm/lit-html@3.3.1/node_modules/lit-html/lit-html.cjs`);require(`../../node_modules/.pnpm/lit@3.3.1/node_modules/lit/index.cjs`);const t=require(`../../node_modules/.pnpm/@lit_reactive-element@2.1.1/node_modules/@lit/reactive-element/decorators/property.cjs`),n=require(`../../node_modules/.pnpm/@lit_reactive-element@2.1.1/node_modules/@lit/reactive-element/decorators/query-assigned-elements.cjs`);require(`../../node_modules/.pnpm/lit@3.3.1/node_modules/lit/decorators.cjs`);const r=require(`../../_virtual/_@oxc-project_runtime@0.122.0/helpers/decorate.cjs`),i=require(`../base/UiKitElement.cjs`),a=require(`../../decorators/customUiKitElement.cjs`),o=require(`../../utils/booleanConverter.cjs`),s=require(`../../node_modules/.pnpm/lit-html@3.3.1/node_modules/lit-html/directives/class-map.cjs`);require(`../../node_modules/.pnpm/lit@3.3.1/node_modules/lit/directives/class-map.cjs`);const c=require(`./styles/common.styles.cjs`);var l=class extends i.UiKitElement{constructor(...e){super(...e),this.open=!1,this.scrollLocked=!1,this.savedBodyOverflow=``,this.toggleModal=()=>{this.open=!this.open,this.open?this.dispatchEvent(new Event(`ds-sidebar-navigation:open`,{bubbles:!0,composed:!0})):this.dispatchEvent(new Event(`ds-sidebar-navigation:close`,{bubbles:!0,composed:!0}))},this.handleModalClick=e=>{e.target===e.currentTarget&&this.toggleModal()},this.handleSlotChange=e=>{let t=e.target.assignedElements().find(e=>e.tagName===`DS-BUTTON`);this.setMainCtaSize(t)},this.setMainCtaSize=e=>{e&&e.setAttribute(`size`,JSON.stringify({xxl:`large`,xl:`large`,l:`medium`,m:`medium`,s:`small`,xs:`small`,xxs:`small`}))}}static{this.styles=[c.commonStyles]}firstUpdated(e){super.firstUpdated(e);let t=this.mainCtas?.[0];t&&this.setMainCtaSize(t)}updated(e){super.updated(e),e.has(`open`)&&(this.open?(this.savedBodyOverflow=document.body.style.overflow,document.body.style.overflow=`hidden`,this.scrollLocked=!0):this.scrollLocked&&=(document.body.style.overflow=this.savedBodyOverflow,!1))}disconnectedCallback(){super.disconnectedCallback(),this.scrollLocked&&=(document.body.style.overflow=this.savedBodyOverflow,!1)}modalButtonTemplate(){return this.componentFactory.createIconButton({class:`modal-button`,"icon-name":this.open?`cross`:`triple-dot-v`,"@click":this.toggleModal,"data-testid":`modal-button`,"data-aria-label":`more actions`,variant:`tertiary`,size:JSON.stringify({xxl:`large`,xl:`large`,l:`medium`,m:`medium`,s:`small`,xs:`small`,xxs:`small`})})}classes(){return{container:!0,open:this.open}}render(){return e.x`
1
+ const e=require(`../../node_modules/.pnpm/lit-html@3.3.1/node_modules/lit-html/lit-html.cjs`);require(`../../node_modules/.pnpm/lit@3.3.1/node_modules/lit/index.cjs`);const t=require(`../../node_modules/.pnpm/@lit_reactive-element@2.1.1/node_modules/@lit/reactive-element/decorators/property.cjs`),n=require(`../../node_modules/.pnpm/@lit_reactive-element@2.1.1/node_modules/@lit/reactive-element/decorators/query-assigned-elements.cjs`);require(`../../node_modules/.pnpm/lit@3.3.1/node_modules/lit/decorators.cjs`);const r=require(`../../_virtual/_@oxc-project_runtime@0.122.0/helpers/decorate.cjs`),i=require(`../base/UiKitElement.cjs`),a=require(`../../decorators/customUiKitElement.cjs`),o=require(`../../utils/booleanConverter.cjs`),s=require(`../../node_modules/.pnpm/lit-html@3.3.1/node_modules/lit-html/directives/class-map.cjs`);require(`../../node_modules/.pnpm/lit@3.3.1/node_modules/lit/directives/class-map.cjs`);const c=require(`../../utils/scrollLock.cjs`),l=require(`./styles/common.styles.cjs`);var u=class extends i.UiKitElement{constructor(...e){super(...e),this.open=!1,this.scrollLocked=!1,this.toggleModal=()=>{this.open=!this.open,this.open?this.dispatchEvent(new Event(`ds-sidebar-navigation:open`,{bubbles:!0,composed:!0})):this.dispatchEvent(new Event(`ds-sidebar-navigation:close`,{bubbles:!0,composed:!0}))},this.handleModalClick=e=>{e.target===e.currentTarget&&this.toggleModal()},this.handleSlotChange=e=>{let t=e.target.assignedElements().find(e=>e.tagName===`DS-BUTTON`);this.setMainCtaSize(t)},this.setMainCtaSize=e=>{e&&e.setAttribute(`size`,JSON.stringify({xxl:`large`,xl:`large`,l:`medium`,m:`medium`,s:`small`,xs:`small`,xxs:`small`}))}}static{this.styles=[l.commonStyles]}firstUpdated(e){super.firstUpdated(e);let t=this.mainCtas?.[0];t&&this.setMainCtaSize(t)}updated(e){super.updated(e),e.has(`open`)&&(this.open?(c.scrollLock.lock(),this.scrollLocked=!0):this.scrollLocked&&=(c.scrollLock.unlock(),!1))}disconnectedCallback(){super.disconnectedCallback(),this.scrollLocked&&=(c.scrollLock.unlock(),!1)}modalButtonTemplate(){return this.componentFactory.createIconButton({class:`modal-button`,"icon-name":this.open?`cross`:`triple-dot-v`,"@click":this.toggleModal,"data-testid":`modal-button`,"data-aria-label":`more actions`,variant:`tertiary`,size:JSON.stringify({xxl:`large`,xl:`large`,l:`medium`,m:`medium`,s:`small`,xs:`small`,xxs:`small`})})}classes(){return{container:!0,open:this.open}}render(){return e.x`
2
2
  <div class=${s.e(this.classes())}>
3
3
  <nav class="nav" part="bar">
4
4
  <div class="aside" part="aside">
@@ -17,4 +17,4 @@ const e=require(`../../node_modules/.pnpm/lit-html@3.3.1/node_modules/lit-html/l
17
17
  <slot name="ctas"></slot>
18
18
  </div>
19
19
  </div>
20
- `}};r.__decorate([t.n({type:Boolean,converter:o.booleanConverter,reflect:!0})],l.prototype,`open`,void 0),r.__decorate([n.o({slot:`main-cta`,selector:`ds-button`,flatten:!0})],l.prototype,`mainCtas`,void 0),l=r.__decorate([a.customUiKitElement(`ds-sidebar-navigation`)],l);
20
+ `}};r.__decorate([t.n({type:Boolean,converter:o.booleanConverter,reflect:!0})],u.prototype,`open`,void 0),r.__decorate([n.o({slot:`main-cta`,selector:`ds-button`,flatten:!0})],u.prototype,`mainCtas`,void 0),u=r.__decorate([a.customUiKitElement(`ds-sidebar-navigation`)],u);
@@ -1,4 +1,4 @@
1
1
  const e=require(`../../node_modules/.pnpm/@lit_context@1.1.6/node_modules/@lit/context/lib/decorators/provide.cjs`),t=require(`./themeContext.cjs`),n=require(`../../core/theme.constants.cjs`),r=require(`../../utils/PubSub.cjs`),i=require(`../../node_modules/.pnpm/lit-html@3.3.1/node_modules/lit-html/lit-html.cjs`),a=require(`../../node_modules/.pnpm/lit-element@4.2.1/node_modules/lit-element/lit-element.cjs`);require(`../../node_modules/.pnpm/lit@3.3.1/node_modules/lit/index.cjs`);const o=require(`../../node_modules/.pnpm/@lit_reactive-element@2.1.1/node_modules/@lit/reactive-element/decorators/property.cjs`),s=require(`../../node_modules/.pnpm/@lit_reactive-element@2.1.1/node_modules/@lit/reactive-element/decorators/state.cjs`);require(`../../node_modules/.pnpm/lit@3.3.1/node_modules/lit/decorators.cjs`);const c=require(`../../_virtual/_@oxc-project_runtime@0.122.0/helpers/decorate.cjs`),l=require(`../../decorators/customUiKitElement.cjs`),u=require(`../../utils/booleanConverter.cjs`),d=require(`../../styles/source/shared/fonts-config.cjs`);var f=class extends a.i{constructor(...e){super(...e),this.loadFonts=!0,this.loadStyles=!0,this.cssLoaded=!1,this.loadedFonts=new Set}updated(e){super.updated(e),e.has(`theme`)&&(r.pubSub.publish(`theme`,this.theme),sessionStorage?.setItem(n.THEME_STORAGE_KEY,this.theme),typeof FontFace<`u`&&document?.fonts&&this.loadThemeFonts(),this.loadThemeStyles().then(()=>{this.cssLoaded=!0,this.dispatchEvent(new CustomEvent(`ui-kit:ready`,{bubbles:!0,composed:!0}))}))}loadThemeFonts(){d.fontsConfig[this.theme]?.fonts.forEach(e=>{this.loadThemeFont(e)})}async loadThemeFont({weight:e,name:t,file:n}){if(!this.loadFonts)return Promise.resolve();let r=`${t}-${e}`;if(this.loadedFonts.has(r))return;let i=new FontFace(t,`url('https://ds-assets.cupra.com/fonts/${this.theme}/${n}.woff2') format('woff2'),
2
2
  url('https://ds-assets.cupra.com/fonts/${this.theme}/${n}.woff') format('woff'),
3
3
  url('https://ds-assets.cupra.com/fonts/${this.theme}/${n}.ttf') format('truetype'),
4
- url('https://ds-assets.cupra.com/fonts/${this.theme}/${n}.otf') format('opentype')`,{style:`normal`,weight:e,display:`swap`});try{await i.load(),document.fonts.add(i),this.loadedFonts.add(r)}catch(n){console.error(`Error loading "${t}" font with "${e}" weight:`,n)}}loadThemeStyles(){return this.loadStyles?new Promise((e,t)=>{let n=`/2.0.0-canary.89`,r=`https://ds-assets.cupra.com${n}/styles/${this.theme}/theme.css`;if(document.head.querySelector(`link[href="${r}"]`))e();else{let i=`ui-kit-theme-${n}`,a=document.getElementById(i),o=document.createElement(`link`);o.id=i,o.rel=`stylesheet`,o.href=r,o.onload=()=>e(),o.onerror=()=>t(Error(`Failed to load theme CSS: ${r}`)),document.head.appendChild(o),a?.remove()}}):Promise.resolve()}render(){return this.cssLoaded?i.x`<slot></slot>`:i.E}};c.__decorate([o.n({type:Boolean,converter:u.booleanConverter,attribute:`load-fonts`})],f.prototype,`loadFonts`,void 0),c.__decorate([o.n({type:Boolean,converter:u.booleanConverter,attribute:`load-styles`})],f.prototype,`loadStyles`,void 0),c.__decorate([e.e({context:t.themeContext}),o.n({type:String})],f.prototype,`theme`,void 0),c.__decorate([s.r()],f.prototype,`cssLoaded`,void 0),c.__decorate([s.r()],f.prototype,`loadedFonts`,void 0),f=c.__decorate([l.customUiKitElement(`ds-theme-provider`)],f);
4
+ url('https://ds-assets.cupra.com/fonts/${this.theme}/${n}.otf') format('opentype')`,{style:`normal`,weight:e,display:`swap`});try{await i.load(),document.fonts.add(i),this.loadedFonts.add(r)}catch(n){console.error(`Error loading "${t}" font with "${e}" weight:`,n)}}loadThemeStyles(){return this.loadStyles?new Promise((e,t)=>{let n=`/2.0.0-canary.91`,r=`https://ds-assets.cupra.com${n}/styles/${this.theme}/theme.css`;if(document.head.querySelector(`link[href="${r}"]`))e();else{let i=`ui-kit-theme-${n}`,a=document.getElementById(i),o=document.createElement(`link`);o.id=i,o.rel=`stylesheet`,o.href=r,o.onload=()=>e(),o.onerror=()=>t(Error(`Failed to load theme CSS: ${r}`)),document.head.appendChild(o),a?.remove()}}):Promise.resolve()}render(){return this.cssLoaded?i.x`<slot></slot>`:i.E}};c.__decorate([o.n({type:Boolean,converter:u.booleanConverter,attribute:`load-fonts`})],f.prototype,`loadFonts`,void 0),c.__decorate([o.n({type:Boolean,converter:u.booleanConverter,attribute:`load-styles`})],f.prototype,`loadStyles`,void 0),c.__decorate([e.e({context:t.themeContext}),o.n({type:String})],f.prototype,`theme`,void 0),c.__decorate([s.r()],f.prototype,`cssLoaded`,void 0),c.__decorate([s.r()],f.prototype,`loadedFonts`,void 0),f=c.__decorate([l.customUiKitElement(`ds-theme-provider`)],f);
@@ -1 +1 @@
1
- var e={cupra:{fonts:[{name:`cupra-screen`,weight:`300`,file:`CupraScreen-Light`},{name:`cupra-screen`,weight:`350`,file:`CupraScreen-Book`},{name:`cupra-screen`,weight:`400`,file:`CupraScreen-Regular`},{name:`cupra-screen`,weight:`500`,file:`CupraScreen-Medium`}]},"cupra-diagonal":{fonts:[{name:`cupra-screen`,weight:`300`,file:`CupraScreen-Light`},{name:`cupra-screen`,weight:`350`,file:`CupraScreen-Book`},{name:`cupra-screen`,weight:`400`,file:`CupraScreen-Regular`},{name:`cupra-screen`,weight:`500`,file:`CupraScreen-Medium`}]},seat:{fonts:[{name:`seat`,weight:`400`,file:`SeatBcn-Regular`},{name:`seat`,weight:`500`,file:`SeatBcn-Medium`},{name:`seat`,weight:`700`,file:`SeatBcn-Bold`}]},"seat-legacy":{fonts:[{name:`seat`,weight:`400`,file:`SeatBcn-Regular`},{name:`seat`,weight:`500`,file:`SeatBcn-Medium`},{name:`seat`,weight:`700`,file:`SeatBcn-Bold`}]}};exports.fontsConfig=e;
1
+ var e={cupra:{fonts:[{name:`cupra-screen`,weight:`300`,file:`CupraScreen-Light`},{name:`cupra-screen`,weight:`350`,file:`CupraScreen-Book`},{name:`cupra-screen`,weight:`400`,file:`CupraScreen-Regular`},{name:`cupra-screen`,weight:`500`,file:`CupraScreen-Medium`}]},"cupra-diagonal":{fonts:[{name:`cupra-screen`,weight:`300`,file:`CupraScreen-Light`},{name:`cupra-screen`,weight:`350`,file:`CupraScreen-Book`},{name:`cupra-screen`,weight:`400`,file:`CupraScreen-Regular`},{name:`cupra-screen`,weight:`500`,file:`CupraScreen-Medium`}]},seat:{fonts:[{name:`seat`,weight:`350`,file:`CupraScreen-Book`},{name:`seat`,weight:`400`,file:`SeatBcn-Regular`},{name:`seat`,weight:`500`,file:`SeatBcn-Medium`},{name:`seat`,weight:`700`,file:`SeatBcn-Bold`},{name:`seat`,weight:`900`,file:`CupraScreen-Black`}]},"seat-legacy":{fonts:[{name:`seat`,weight:`400`,file:`SeatBcn-Regular`},{name:`seat`,weight:`500`,file:`SeatBcn-Medium`},{name:`seat`,weight:`700`,file:`SeatBcn-Bold`}]}};exports.fontsConfig=e;
@@ -1 +1 @@
1
- const e=require(`../core/theme.constants.cjs`),t=require(`./PubSub.cjs`);var n=class{constructor(){this.icons={},this.handleChangeTheme=e=>{if(this.theme===e)return;this.theme=e;let t=Object.keys(this.icons);this.icons={},t.forEach(e=>this.fetchIcon(e))},this.fetchIcon=async(t,n={})=>{let r=typeof sessionStorage<`u`?sessionStorage?.getItem(e.THEME_STORAGE_KEY):null;!this.theme&&r&&(this.theme=r);let i=this.icons[t];if(i)return await i;let a=this.loadIcon(t,n).catch(e=>{throw delete this.icons[t],e});return this.icons[t]=a,a},this.loadIcon=(e,{cache:t=`force-cache`,...n})=>!this.theme||typeof fetch>`u`?Promise.resolve(`<svg class="ds-icon"></svg>`):fetch(`https://ds-assets.cupra.com/icons/${this.theme}/${e}.svg`,{cache:t,...n}).then(e=>e.text()).catch(t=>{if(t?.name===`AbortError`)throw t;return console.error(`Failed to fetch icon "${e}":`,t),``}),t.pubSub.subscribe(`theme`,this.handleChangeTheme)}},r=Symbol.for(`@cupra/ui-kit/icons-manager/2.0.0-canary.89`),i=globalThis,a=i[r];a||(a=new n,Object.defineProperty(i,r,{value:a,writable:!1,configurable:!1,enumerable:!1}));var o=a;exports.iconsManager=o;
1
+ const e=require(`../core/theme.constants.cjs`),t=require(`./PubSub.cjs`);var n=class{constructor(){this.icons={},this.handleChangeTheme=e=>{if(this.theme===e)return;this.theme=e;let t=Object.keys(this.icons);this.icons={},t.forEach(e=>this.fetchIcon(e))},this.fetchIcon=async(t,n={})=>{let r=typeof sessionStorage<`u`?sessionStorage?.getItem(e.THEME_STORAGE_KEY):null;!this.theme&&r&&(this.theme=r);let i=this.icons[t];if(i)return await i;let a=this.loadIcon(t,n).catch(e=>{throw delete this.icons[t],e});return this.icons[t]=a,a},this.loadIcon=(e,{cache:t=`force-cache`,...n})=>!this.theme||typeof fetch>`u`?Promise.resolve(`<svg class="ds-icon"></svg>`):fetch(`https://ds-assets.cupra.com/icons/${this.theme}/${e}.svg`,{cache:t,...n}).then(e=>e.text()).catch(t=>{if(t?.name===`AbortError`)throw t;return console.error(`Failed to fetch icon "${e}":`,t),``}),t.pubSub.subscribe(`theme`,this.handleChangeTheme)}},r=Symbol.for(`@cupra/ui-kit/icons-manager/2.0.0-canary.91`),i=globalThis,a=i[r];a||(a=new n,Object.defineProperty(i,r,{value:a,writable:!1,configurable:!1,enumerable:!1}));var o=a;exports.iconsManager=o;
@@ -1 +1 @@
1
- var e=class{constructor(){this.subscribers={},this.lastPublishedData={}}subscribe(e,t){return this.subscribers[e]||(this.subscribers[e]=[]),this.subscribers[e].push(t),this.lastPublishedData[e]}unsubscribe(e,t){this.subscribers[e]&&(this.subscribers[e]=this.subscribers[e].filter(e=>e!==t))}publish(e,t){this.lastPublishedData[e]=t,this.subscribers[e]&&this.subscribers[e].forEach(n=>{try{n(t)}catch(t){console.error(`Error in subscriber for event "${e}":`,t)}})}},t=Symbol.for(`@cupra/ui-kit/pubsub/2.0.0-canary.89`),n=globalThis,r=n[t];r||(r=new e,Object.defineProperty(n,t,{value:r,writable:!1,configurable:!1,enumerable:!1}));var i=r;exports.pubSub=i;
1
+ var e=class{constructor(){this.subscribers={},this.lastPublishedData={}}subscribe(e,t){return this.subscribers[e]||(this.subscribers[e]=[]),this.subscribers[e].push(t),this.lastPublishedData[e]}unsubscribe(e,t){this.subscribers[e]&&(this.subscribers[e]=this.subscribers[e].filter(e=>e!==t))}publish(e,t){this.lastPublishedData[e]=t,this.subscribers[e]&&this.subscribers[e].forEach(n=>{try{n(t)}catch(t){console.error(`Error in subscriber for event "${e}":`,t)}})}},t=Symbol.for(`@cupra/ui-kit/pubsub/2.0.0-canary.91`),n=globalThis,r=n[t];r||(r=new e,Object.defineProperty(n,t,{value:r,writable:!1,configurable:!1,enumerable:!1}));var i=r;exports.pubSub=i;
@@ -1 +1 @@
1
- var e=require(`../concurrencyLimit.cjs`).concurrencyLimit(20),t=class t{constructor(){this.stylePromises=new Map,this.getStyles=async({componentName:t,theme:n})=>{if(!n||!t)return;let r=`https://ds-assets.cupra.com/2.0.0-canary.89/styles/${n}/components/${t}.css`,i=this.getCachedStyleSheetPromise({url:r});if(i)return i;let a=e(()=>this.fetchStyle({url:r})).then(e=>(e||this.stylePromises.delete(r),e));return this.stylePromises.set(r,a),this.stylePromises.get(r)}}async fetchStyle({url:e}){try{if(typeof fetch>`u`)return;let t=await fetch(e,{cache:`force-cache`});if(t.ok)return t.text()}catch(t){console.error(`Failed to fetch Style Sheet "${e}":`,t)}}getCachedStyleSheetPromise({url:e}){return this.stylePromises.get(e)}static getInstance(){return t.instance||=new t,t.instance}}.getInstance();exports.stylesRegistry=t;
1
+ var e=require(`../concurrencyLimit.cjs`).concurrencyLimit(20),t=class t{constructor(){this.stylePromises=new Map,this.getStyles=async({componentName:t,theme:n})=>{if(!n||!t)return;let r=`https://ds-assets.cupra.com/2.0.0-canary.91/styles/${n}/components/${t}.css`,i=this.getCachedStyleSheetPromise({url:r});if(i)return i;let a=e(()=>this.fetchStyle({url:r})).then(e=>(e||this.stylePromises.delete(r),e));return this.stylePromises.set(r,a),this.stylePromises.get(r)}}async fetchStyle({url:e}){try{if(typeof fetch>`u`)return;let t=await fetch(e,{cache:`force-cache`});if(t.ok)return t.text()}catch(t){console.error(`Failed to fetch Style Sheet "${e}":`,t)}}getCachedStyleSheetPromise({url:e}){return this.stylePromises.get(e)}static getInstance(){return t.instance||=new t,t.instance}}.getInstance();exports.stylesRegistry=t;
@@ -1 +1 @@
1
- const e=require(`../node_modules/.pnpm/@lit_reactive-element@2.1.1/node_modules/@lit/reactive-element/css-tag.cjs`);require(`../node_modules/.pnpm/lit@3.3.1/node_modules/lit/index.cjs`);function t(t,...n){return e.i`${e.r(String.raw({raw:t},...n).replace(/(--private-[\w-]+)(?=\s*[):,])/g,`$1-v2-0-0-canary-89`))}`}exports.cssWithTokens=t;
1
+ const e=require(`../node_modules/.pnpm/@lit_reactive-element@2.1.1/node_modules/@lit/reactive-element/css-tag.cjs`);require(`../node_modules/.pnpm/lit@3.3.1/node_modules/lit/index.cjs`);function t(t,...n){return e.i`${e.r(String.raw({raw:t},...n).replace(/(--private-[\w-]+)(?=\s*[):,])/g,`$1-v2-0-0-canary-91`))}`}exports.cssWithTokens=t;
@@ -1 +1 @@
1
- const e=require(`../node_modules/.pnpm/lit-html@3.3.1/node_modules/lit-html/lit-html.cjs`);require(`../node_modules/.pnpm/lit@3.3.1/node_modules/lit/index.cjs`);const t=require(`../node_modules/.pnpm/lit-html@3.3.1/node_modules/lit-html/directives/unsafe-html.cjs`);require(`../node_modules/.pnpm/lit@3.3.1/node_modules/lit/directives/unsafe-html.cjs`);function n(n,...r){return e.x`${t.o(String.raw({raw:n},...r).replace(/(--private-[\w-]+)(?=\s*[):,])/g,`$1-v2-0-0-canary-89`))}`}exports.htmlWithTokens=n;
1
+ const e=require(`../node_modules/.pnpm/lit-html@3.3.1/node_modules/lit-html/lit-html.cjs`);require(`../node_modules/.pnpm/lit@3.3.1/node_modules/lit/index.cjs`);const t=require(`../node_modules/.pnpm/lit-html@3.3.1/node_modules/lit-html/directives/unsafe-html.cjs`);require(`../node_modules/.pnpm/lit@3.3.1/node_modules/lit/directives/unsafe-html.cjs`);function n(n,...r){return e.x`${t.o(String.raw({raw:n},...r).replace(/(--private-[\w-]+)(?=\s*[):,])/g,`$1-v2-0-0-canary-91`))}`}exports.htmlWithTokens=n;
@@ -0,0 +1 @@
1
+ var e=new class{#e=0;#t=``;lock(){this.#e===0&&(this.#t=document.body.style.overflow,document.body.style.overflow=`hidden`),this.#e++}unlock(){this.#e!==0&&(this.#e--,this.#e===0&&(document.body.style.overflow=this.#t,this.#t=``))}};exports.scrollLock=e;
@@ -11,11 +11,12 @@ import { booleanConverter as c } from "../../utils/booleanConverter.js";
11
11
  import { e as l } from "../../node_modules/.pnpm/lit-html@3.3.1/node_modules/lit-html/directives/class-map.js";
12
12
  import "../../node_modules/.pnpm/lit@3.3.1/node_modules/lit/directives/class-map.js";
13
13
  import { debounce as u } from "../../utils/debounce.js";
14
- import { commonStyles as d } from "./styles/common.styles.js";
14
+ import { scrollLock as d } from "../../utils/scrollLock.js";
15
+ import { commonStyles as f } from "./styles/common.styles.js";
15
16
  //#region src/components/ds-dialog/ds-dialog.ts
16
- var f = class extends o {
17
+ var p = class extends o {
17
18
  constructor(...e) {
18
- super(...e), this.lockClose = !1, this.lockScroll = !0, this.open = !1, this.size = "medium", this.hasBeenOpened = !1, this.hasScroll = !1, this.debouncedCheckScroll = u({ func: () => this.checkScroll() }), this.handleCloseButtonClick = () => {
19
+ super(...e), this.lockClose = !1, this.lockScroll = !0, this.open = !1, this.size = "medium", this.hasBeenOpened = !1, this.hasScroll = !1, this.debouncedCheckScroll = u({ func: () => this.checkScroll() }), this.scrollLocked = !1, this.handleCloseButtonClick = () => {
19
20
  this.handleClose("button");
20
21
  }, this.handleDialogClick = (e) => {
21
22
  e.target === this.nativeDialog && this.handleClose("backdrop");
@@ -26,10 +27,13 @@ var f = class extends o {
26
27
  };
27
28
  }
28
29
  static {
29
- this.styles = [d];
30
+ this.styles = [f];
30
31
  }
31
- async updated(e) {
32
- super.updated(e), !this.hasBeenOpened && e.has("open") && this.open && (this.hasBeenOpened = !0), e.has("open") && (this.handleResizeObserver(), this.syncNativeDialogState()), e.has("open") && this.open && (await this.updateComplete, this.requestUpdate());
32
+ updated(e) {
33
+ super.updated(e), !this.hasBeenOpened && e.has("open") && this.open && (this.hasBeenOpened = !0), e.has("open") && (this.open || (this.hasScroll = !1), this.handleResizeObserver(), this.syncNativeDialogState(), this.syncScrollLock());
34
+ }
35
+ syncScrollLock() {
36
+ this.open && this.lockScroll ? (d.lock(), this.scrollLocked = !0) : this.scrollLocked &&= (d.unlock(), !1);
33
37
  }
34
38
  syncNativeDialogState() {
35
39
  this.nativeDialog && (this.open ? this.openNativeDialog() : this.closeNativeDialog());
@@ -67,10 +71,10 @@ var f = class extends o {
67
71
  super.connectedCallback(), this.resizeObserver = new ResizeObserver(this.debouncedCheckScroll), this.handleResizeObserver(), this.addEventListener("click", this.handleHostClick);
68
72
  }
69
73
  disconnectedCallback() {
70
- super.disconnectedCallback(), this.resizeObserver?.disconnect(), this.removeEventListener("click", this.handleHostClick);
74
+ super.disconnectedCallback(), this.resizeObserver?.disconnect(), this.scrollLocked &&= (d.unlock(), !1), this.removeEventListener("click", this.handleHostClick);
71
75
  }
72
76
  checkScroll() {
73
- this.hasScroll = this.content?.scrollHeight > this.content?.clientHeight;
77
+ this.hasScroll ||= this.content?.scrollHeight > this.content?.clientHeight;
74
78
  }
75
79
  render() {
76
80
  return !this.hasBeenOpened && !this.open ? e : t`
@@ -99,18 +103,18 @@ a([n({
99
103
  type: Boolean,
100
104
  converter: c,
101
105
  attribute: "lock-close"
102
- })], f.prototype, "lockClose", void 0), a([n({
106
+ })], p.prototype, "lockClose", void 0), a([n({
103
107
  type: Boolean,
104
108
  converter: c,
105
109
  attribute: "lock-scroll"
106
- })], f.prototype, "lockScroll", void 0), a([n({
110
+ })], p.prototype, "lockScroll", void 0), a([n({
107
111
  type: Boolean,
108
112
  converter: c
109
- })], f.prototype, "open", void 0), a([n({ type: String })], f.prototype, "size", void 0), a([n({
113
+ })], p.prototype, "open", void 0), a([n({ type: String })], p.prototype, "size", void 0), a([n({
110
114
  type: String,
111
115
  attribute: "data-aria-label"
112
- })], f.prototype, "dataAriaLabel", void 0), a([n({
116
+ })], p.prototype, "dataAriaLabel", void 0), a([n({
113
117
  type: String,
114
118
  attribute: "data-aria-description"
115
- })], f.prototype, "dataAriaDescription", void 0), a([r()], f.prototype, "hasBeenOpened", void 0), a([r()], f.prototype, "hasScroll", void 0), a([i(".content")], f.prototype, "content", void 0), a([i("dialog")], f.prototype, "nativeDialog", void 0), f = a([s("ds-dialog")], f);
119
+ })], p.prototype, "dataAriaDescription", void 0), a([r()], p.prototype, "hasBeenOpened", void 0), a([r()], p.prototype, "hasScroll", void 0), a([i(".content")], p.prototype, "content", void 0), a([i("dialog")], p.prototype, "nativeDialog", void 0), p = a([s("ds-dialog")], p);
116
120
  //#endregion
@@ -9,11 +9,12 @@ import { customUiKitElement as a } from "../../decorators/customUiKitElement.js"
9
9
  import { booleanConverter as o } from "../../utils/booleanConverter.js";
10
10
  import { e as s } from "../../node_modules/.pnpm/lit-html@3.3.1/node_modules/lit-html/directives/class-map.js";
11
11
  import "../../node_modules/.pnpm/lit@3.3.1/node_modules/lit/directives/class-map.js";
12
- import { commonStyles as c } from "./styles/common.styles.js";
12
+ import { scrollLock as c } from "../../utils/scrollLock.js";
13
+ import { commonStyles as l } from "./styles/common.styles.js";
13
14
  //#region src/components/ds-sidebar-navigation/ds-sidebar-navigation.ts
14
- var l = class extends i {
15
+ var u = class extends i {
15
16
  constructor(...e) {
16
- super(...e), this.open = !1, this.scrollLocked = !1, this.savedBodyOverflow = "", this.toggleModal = () => {
17
+ super(...e), this.open = !1, this.scrollLocked = !1, this.toggleModal = () => {
17
18
  this.open = !this.open, this.open ? this.dispatchEvent(new Event("ds-sidebar-navigation:open", {
18
19
  bubbles: !0,
19
20
  composed: !0
@@ -39,7 +40,7 @@ var l = class extends i {
39
40
  };
40
41
  }
41
42
  static {
42
- this.styles = [c];
43
+ this.styles = [l];
43
44
  }
44
45
  firstUpdated(e) {
45
46
  super.firstUpdated(e);
@@ -47,10 +48,10 @@ var l = class extends i {
47
48
  t && this.setMainCtaSize(t);
48
49
  }
49
50
  updated(e) {
50
- super.updated(e), e.has("open") && (this.open ? (this.savedBodyOverflow = document.body.style.overflow, document.body.style.overflow = "hidden", this.scrollLocked = !0) : this.scrollLocked &&= (document.body.style.overflow = this.savedBodyOverflow, !1));
51
+ super.updated(e), e.has("open") && (this.open ? (c.lock(), this.scrollLocked = !0) : this.scrollLocked &&= (c.unlock(), !1));
51
52
  }
52
53
  disconnectedCallback() {
53
- super.disconnectedCallback(), this.scrollLocked &&= (document.body.style.overflow = this.savedBodyOverflow, !1);
54
+ super.disconnectedCallback(), this.scrollLocked &&= (c.unlock(), !1);
54
55
  }
55
56
  modalButtonTemplate() {
56
57
  return this.componentFactory.createIconButton({
@@ -104,9 +105,9 @@ r([t({
104
105
  type: Boolean,
105
106
  converter: o,
106
107
  reflect: !0
107
- })], l.prototype, "open", void 0), r([n({
108
+ })], u.prototype, "open", void 0), r([n({
108
109
  slot: "main-cta",
109
110
  selector: "ds-button",
110
111
  flatten: !0
111
- })], l.prototype, "mainCtas", void 0), l = r([a("ds-sidebar-navigation")], l);
112
+ })], u.prototype, "mainCtas", void 0), u = r([a("ds-sidebar-navigation")], u);
112
113
  //#endregion
@@ -50,7 +50,7 @@ var p = class extends o {
50
50
  }
51
51
  loadThemeStyles() {
52
52
  return this.loadStyles ? new Promise((e, t) => {
53
- let n = "/2.0.0-canary.89", r = `https://ds-assets.cupra.com${n}/styles/${this.theme}/theme.css`;
53
+ let n = "/2.0.0-canary.91", r = `https://ds-assets.cupra.com${n}/styles/${this.theme}/theme.css`;
54
54
  if (document.head.querySelector(`link[href="${r}"]`)) e();
55
55
  else {
56
56
  let i = `ui-kit-theme-${n}`, a = document.getElementById(i), o = document.createElement("link");
@@ -45,6 +45,11 @@ var e = {
45
45
  }
46
46
  ] },
47
47
  seat: { fonts: [
48
+ {
49
+ name: "seat",
50
+ weight: "350",
51
+ file: "CupraScreen-Book"
52
+ },
48
53
  {
49
54
  name: "seat",
50
55
  weight: "400",
@@ -59,6 +64,11 @@ var e = {
59
64
  name: "seat",
60
65
  weight: "700",
61
66
  file: "SeatBcn-Bold"
67
+ },
68
+ {
69
+ name: "seat",
70
+ weight: "900",
71
+ file: "CupraScreen-Black"
62
72
  }
63
73
  ] },
64
74
  "seat-legacy": { fonts: [
@@ -25,7 +25,7 @@ var n = class {
25
25
  return console.error(`Failed to fetch icon "${e}":`, t), "";
26
26
  }), t.subscribe("theme", this.handleChangeTheme);
27
27
  }
28
- }, r = Symbol.for("@cupra/ui-kit/icons-manager/2.0.0-canary.89"), i = globalThis, a = i[r];
28
+ }, r = Symbol.for("@cupra/ui-kit/icons-manager/2.0.0-canary.91"), i = globalThis, a = i[r];
29
29
  a || (a = new n(), Object.defineProperty(i, r, {
30
30
  value: a,
31
31
  writable: !1,
@@ -18,7 +18,7 @@ var e = class {
18
18
  }
19
19
  });
20
20
  }
21
- }, t = Symbol.for("@cupra/ui-kit/pubsub/2.0.0-canary.89"), n = globalThis, r = n[t];
21
+ }, t = Symbol.for("@cupra/ui-kit/pubsub/2.0.0-canary.91"), n = globalThis, r = n[t];
22
22
  r || (r = new e(), Object.defineProperty(n, t, {
23
23
  value: r,
24
24
  writable: !1,
@@ -4,7 +4,7 @@ var t = e(20), n = class e {
4
4
  constructor() {
5
5
  this.stylePromises = /* @__PURE__ */ new Map(), this.getStyles = async ({ componentName: e, theme: n }) => {
6
6
  if (!n || !e) return;
7
- let r = `https://ds-assets.cupra.com/2.0.0-canary.89/styles/${n}/components/${e}.css`, i = this.getCachedStyleSheetPromise({ url: r });
7
+ let r = `https://ds-assets.cupra.com/2.0.0-canary.91/styles/${n}/components/${e}.css`, i = this.getCachedStyleSheetPromise({ url: r });
8
8
  if (i) return i;
9
9
  let a = t(() => this.fetchStyle({ url: r })).then((e) => (e || this.stylePromises.delete(r), e));
10
10
  return this.stylePromises.set(r, a), this.stylePromises.get(r);
@@ -2,7 +2,7 @@ import { i as e, r as t } from "../node_modules/.pnpm/@lit_reactive-element@2.1.
2
2
  import "../node_modules/.pnpm/lit@3.3.1/node_modules/lit/index.js";
3
3
  //#region src/utils/cssWithTokens.ts
4
4
  function n(n, ...r) {
5
- return e`${t(String.raw({ raw: n }, ...r).replace(/(--private-[\w-]+)(?=\s*[):,])/g, "$1-v2-0-0-canary-89"))}`;
5
+ return e`${t(String.raw({ raw: n }, ...r).replace(/(--private-[\w-]+)(?=\s*[):,])/g, "$1-v2-0-0-canary-91"))}`;
6
6
  }
7
7
  //#endregion
8
8
  export { n as cssWithTokens };
@@ -4,7 +4,7 @@ import { o as t } from "../node_modules/.pnpm/lit-html@3.3.1/node_modules/lit-ht
4
4
  import "../node_modules/.pnpm/lit@3.3.1/node_modules/lit/directives/unsafe-html.js";
5
5
  //#region src/utils/htmlWithTokens.ts
6
6
  function n(n, ...r) {
7
- return e`${t(String.raw({ raw: n }, ...r).replace(/(--private-[\w-]+)(?=\s*[):,])/g, "$1-v2-0-0-canary-89"))}`;
7
+ return e`${t(String.raw({ raw: n }, ...r).replace(/(--private-[\w-]+)(?=\s*[):,])/g, "$1-v2-0-0-canary-91"))}`;
8
8
  }
9
9
  //#endregion
10
10
  export { n as htmlWithTokens };
@@ -0,0 +1,12 @@
1
+ var e = new class {
2
+ #e = 0;
3
+ #t = "";
4
+ lock() {
5
+ this.#e === 0 && (this.#t = document.body.style.overflow, document.body.style.overflow = "hidden"), this.#e++;
6
+ }
7
+ unlock() {
8
+ this.#e !== 0 && (this.#e--, this.#e === 0 && (document.body.style.overflow = this.#t, this.#t = ""));
9
+ }
10
+ }();
11
+ //#endregion
12
+ export { e as scrollLock };
@@ -17,7 +17,9 @@ export declare class DsDialog extends UiKitElement {
17
17
  private nativeDialog;
18
18
  private resizeObserver;
19
19
  private debouncedCheckScroll;
20
- updated(changedProperties: PropertyValues): Promise<void>;
20
+ private scrollLocked;
21
+ updated(changedProperties: PropertyValues): void;
22
+ private syncScrollLock;
21
23
  private syncNativeDialogState;
22
24
  private openNativeDialog;
23
25
  private closeNativeDialog;
@@ -1,7 +1,7 @@
1
1
  import type { CommonAttrs } from '../../types/types.ts';
2
2
  export interface DsSelectAttrs extends CommonAttrs {
3
3
  mode?: 'dark' | 'light';
4
- size?: 'medium' | 'small';
4
+ size?: 'large' | 'medium' | 'small';
5
5
  variant?: 'primary' | 'secondary' | (string & {});
6
6
  readonly?: boolean;
7
7
  }
@@ -6,7 +6,6 @@ export declare class DsSidebarNavigation extends UiKitElement implements DsSideb
6
6
  open: DsSidebarNavigationAttrs['open'];
7
7
  mainCtas: Array<Node>;
8
8
  private scrollLocked;
9
- private savedBodyOverflow;
10
9
  protected firstUpdated(_changedProperties: PropertyValues): void;
11
10
  protected updated(_changedProperties: PropertyValues): void;
12
11
  disconnectedCallback(): void;
@@ -0,0 +1,6 @@
1
+ export declare class ScrollLock {
2
+ #private;
3
+ lock(): void;
4
+ unlock(): void;
5
+ }
6
+ export declare const scrollLock: ScrollLock;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cupra/ui-kit",
3
- "version": "2.0.0-canary.89",
3
+ "version": "2.0.0-canary.91",
4
4
  "description": "Web components library",
5
5
  "author": "SEAT S.A.",
6
6
  "license": "SEAT S.A. Library EULA 1.0",
@@ -110,7 +110,7 @@
110
110
  "cssnano": "^7.1.3",
111
111
  "dotenv": "^16.4.7",
112
112
  "jsdom": "^26.0.0",
113
- "lodash": "^4.17.23",
113
+ "lodash": "^4.18.1",
114
114
  "lottie-web": "^5.13.0",
115
115
  "nodemon": "^3.1.14",
116
116
  "playwright": "1.56.1",
@@ -127,7 +127,7 @@
127
127
  "ts-morph": "^27.0.2",
128
128
  "tsc-alias": "^1.8.13",
129
129
  "typescript": "^5.8.2",
130
- "vite": "^8.0.3",
130
+ "vite": "^8.0.5",
131
131
  "vite-bundle-analyzer": "^0.22.3",
132
132
  "xml2js": "^0.6.2"
133
133
  },