@cupra/ui-kit 2.0.0-canary.62 → 2.0.0-canary.63

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 (82) hide show
  1. package/dist/cjs/components/ds-select/ds-select.cjs +4 -3
  2. package/dist/cjs/components/ds-slider/ds-slider.cjs +18 -18
  3. package/dist/cjs/components/ds-text-input/ds-text-input.cjs +3 -2
  4. package/dist/cjs/components/ds-textarea/ds-textarea.cjs +4 -3
  5. package/dist/cjs/components/ds-theme-provider/ds-theme-provider.cjs +1 -1
  6. package/dist/cjs/mixins/inputStatesMixin.cjs +1 -1
  7. package/dist/cjs/node_modules/.pnpm/lit-html@3.3.1/node_modules/lit-html/directive-helpers.cjs +2 -2
  8. package/dist/cjs/node_modules/.pnpm/lit-html@3.3.1/node_modules/lit-html/directive.cjs +1 -1
  9. package/dist/cjs/node_modules/.pnpm/lit-html@3.3.1/node_modules/lit-html/directives/live.cjs +5 -0
  10. package/dist/cjs/utils/IconsManager.cjs +1 -1
  11. package/dist/cjs/utils/PubSub.cjs +1 -1
  12. package/dist/cjs/utils/StylesRegistry/StylesRegistry.cjs +1 -1
  13. package/dist/cjs/utils/concurrencyLimit.cjs +1 -0
  14. package/dist/cjs/utils/cssWithTokens.cjs +1 -1
  15. package/dist/cjs/utils/htmlWithTokens.cjs +1 -1
  16. package/dist/esm/components/ds-select/ds-select.js +38 -32
  17. package/dist/esm/components/ds-slider/ds-slider.js +84 -67
  18. package/dist/esm/components/ds-text-input/ds-text-input.js +38 -30
  19. package/dist/esm/components/ds-textarea/ds-textarea.js +45 -37
  20. package/dist/esm/components/ds-theme-provider/ds-theme-provider.js +1 -1
  21. package/dist/esm/mixins/inputStatesMixin.js +4 -3
  22. package/dist/esm/node_modules/.pnpm/lit-html@3.3.1/node_modules/lit-html/directive-helpers.js +17 -16
  23. package/dist/esm/node_modules/.pnpm/lit-html@3.3.1/node_modules/lit-html/directive.js +4 -4
  24. package/dist/esm/node_modules/.pnpm/lit-html@3.3.1/node_modules/lit-html/directives/live.js +30 -0
  25. package/dist/esm/utils/IconsManager.js +1 -1
  26. package/dist/esm/utils/PubSub.js +1 -1
  27. package/dist/esm/utils/StylesRegistry/StylesRegistry.js +8 -6
  28. package/dist/esm/utils/concurrencyLimit.js +32 -0
  29. package/dist/esm/utils/cssWithTokens.js +1 -1
  30. package/dist/esm/utils/htmlWithTokens.js +1 -1
  31. package/dist/types/components/ds-select/ds-select.d.ts +2 -0
  32. package/dist/types/components/ds-select/ds-select.types.d.ts +1 -0
  33. package/dist/types/components/ds-slider/ds-slider.d.ts +7 -2
  34. package/dist/types/components/ds-slider/ds-slider.types.d.ts +18 -3
  35. package/dist/types/components/ds-text-input/ds-text-input.d.ts +2 -0
  36. package/dist/types/components/ds-text-input/ds-text-input.types.d.ts +1 -0
  37. package/dist/types/components/ds-textarea/ds-textarea.d.ts +2 -0
  38. package/dist/types/components/ds-textarea/ds-textarea.types.d.ts +1 -0
  39. package/dist/types/mixins/inputStatesMixin.d.ts +1 -0
  40. package/dist/types/utils/concurrencyLimit.d.ts +4 -0
  41. package/dist/types/utils/concurrencyLimit.test.d.ts +1 -0
  42. package/dist-react/cjs/components/ds-select/ds-select.cjs +4 -3
  43. package/dist-react/cjs/components/ds-slider/ds-slider.cjs +18 -18
  44. package/dist-react/cjs/components/ds-text-input/ds-text-input.cjs +3 -2
  45. package/dist-react/cjs/components/ds-textarea/ds-textarea.cjs +4 -3
  46. package/dist-react/cjs/components/ds-theme-provider/ds-theme-provider.cjs +1 -1
  47. package/dist-react/cjs/mixins/inputStatesMixin.cjs +1 -1
  48. package/dist-react/cjs/node_modules/.pnpm/lit-html@3.3.1/node_modules/lit-html/directive-helpers.cjs +2 -2
  49. package/dist-react/cjs/node_modules/.pnpm/lit-html@3.3.1/node_modules/lit-html/directive.cjs +1 -1
  50. package/dist-react/cjs/node_modules/.pnpm/lit-html@3.3.1/node_modules/lit-html/directives/live.cjs +5 -0
  51. package/dist-react/cjs/utils/IconsManager.cjs +1 -1
  52. package/dist-react/cjs/utils/PubSub.cjs +1 -1
  53. package/dist-react/cjs/utils/StylesRegistry/StylesRegistry.cjs +1 -1
  54. package/dist-react/cjs/utils/concurrencyLimit.cjs +1 -0
  55. package/dist-react/cjs/utils/cssWithTokens.cjs +1 -1
  56. package/dist-react/cjs/utils/htmlWithTokens.cjs +1 -1
  57. package/dist-react/esm/components/ds-select/ds-select.js +38 -32
  58. package/dist-react/esm/components/ds-slider/ds-slider.js +84 -67
  59. package/dist-react/esm/components/ds-text-input/ds-text-input.js +38 -30
  60. package/dist-react/esm/components/ds-textarea/ds-textarea.js +45 -37
  61. package/dist-react/esm/components/ds-theme-provider/ds-theme-provider.js +1 -1
  62. package/dist-react/esm/mixins/inputStatesMixin.js +4 -3
  63. package/dist-react/esm/node_modules/.pnpm/lit-html@3.3.1/node_modules/lit-html/directive-helpers.js +17 -16
  64. package/dist-react/esm/node_modules/.pnpm/lit-html@3.3.1/node_modules/lit-html/directive.js +4 -4
  65. package/dist-react/esm/node_modules/.pnpm/lit-html@3.3.1/node_modules/lit-html/directives/live.js +30 -0
  66. package/dist-react/esm/utils/IconsManager.js +1 -1
  67. package/dist-react/esm/utils/PubSub.js +1 -1
  68. package/dist-react/esm/utils/StylesRegistry/StylesRegistry.js +8 -6
  69. package/dist-react/esm/utils/concurrencyLimit.js +32 -0
  70. package/dist-react/esm/utils/cssWithTokens.js +1 -1
  71. package/dist-react/esm/utils/htmlWithTokens.js +1 -1
  72. package/dist-react/types/components/ds-select/ds-select.d.ts +2 -0
  73. package/dist-react/types/components/ds-select/ds-select.types.d.ts +1 -0
  74. package/dist-react/types/components/ds-slider/ds-slider.d.ts +7 -2
  75. package/dist-react/types/components/ds-slider/ds-slider.types.d.ts +18 -3
  76. package/dist-react/types/components/ds-text-input/ds-text-input.d.ts +2 -0
  77. package/dist-react/types/components/ds-text-input/ds-text-input.types.d.ts +1 -0
  78. package/dist-react/types/components/ds-textarea/ds-textarea.d.ts +2 -0
  79. package/dist-react/types/components/ds-textarea/ds-textarea.types.d.ts +1 -0
  80. package/dist-react/types/mixins/inputStatesMixin.d.ts +1 -0
  81. package/dist-react/types/utils/concurrencyLimit.d.ts +4 -0
  82. package/package.json +1 -1
@@ -1,13 +1,14 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const h=require("../base/UiKitElement.cjs"),u=require("../../decorators/customUiKitElement.cjs"),c=require("../../mixins/ViewportMixin.cjs"),d=require("../../mixins/inputStatesMixin.cjs"),m=require("../../utils/objectConverter.cjs"),v=require("../../utils/validateMaxLength.cjs");require("../../node_modules/.pnpm/@lit_reactive-element@2.1.1/node_modules/@lit/reactive-element/reactive-element.cjs");const r=require("../../node_modules/.pnpm/lit-html@3.3.1/node_modules/lit-html/lit-html.cjs");require("../../node_modules/.pnpm/lit-element@4.2.1/node_modules/lit-element/lit-element.cjs");const n=require("../../node_modules/.pnpm/@lit_reactive-element@2.1.1/node_modules/@lit/reactive-element/decorators/property.cjs"),x=require("../../node_modules/.pnpm/lit-html@3.3.1/node_modules/lit-html/directives/class-map.cjs"),f=require("./styles/common.styles.cjs");var g=Object.defineProperty,y=Object.getOwnPropertyDescriptor,o=(a,t,s,i)=>{for(var e=i>1?void 0:i?y(t,s):t,l=a.length-1,p;l>=0;l--)(p=a[l])&&(e=(i?p(t,s,e):p(e))||e);return i&&e&&g(t,s,e),e};exports.DsTextarea=class extends d.inputStatesMixin(c.ViewportMixin(h.UiKitElement)){constructor(){super(...arguments),this.keyboardMode=!1,this.size="medium",this.helperText="",this.forcedError="",this.invalidError="",this.mode="light"}onInputReady(t){t.classList.add("ds-scroll")}get classes(){const t=typeof this.size=="string"?this.size:this.size[this.viewport];return{container:!0,error:!!this.forcedError,[t]:!!t,[this.mode]:!!this.mode,disabled:this.inputStates.disabled,filled:this.inputStates.filled,invalid:this.inputStates.invalid,focus:this.inputStates.focus,"focus-visible":this.inputStates.focusVisible}}render(){return r.html`
2
- <div class=${x.classMap(this.classes)}>
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const h=require("../base/UiKitElement.cjs"),u=require("../../decorators/customUiKitElement.cjs"),d=require("../../mixins/ViewportMixin.cjs"),c=require("../../mixins/inputStatesMixin.cjs"),x=require("../../utils/objectConverter.cjs"),y=require("../../utils/validateMaxLength.cjs");require("../../node_modules/.pnpm/@lit_reactive-element@2.1.1/node_modules/@lit/reactive-element/reactive-element.cjs");const e=require("../../node_modules/.pnpm/lit-html@3.3.1/node_modules/lit-html/lit-html.cjs");require("../../node_modules/.pnpm/lit-element@4.2.1/node_modules/lit-element/lit-element.cjs");const o=require("../../node_modules/.pnpm/@lit_reactive-element@2.1.1/node_modules/@lit/reactive-element/decorators/property.cjs"),m=require("../../node_modules/.pnpm/lit-html@3.3.1/node_modules/lit-html/directives/class-map.cjs"),v=require("./styles/common.styles.cjs");var T=Object.defineProperty,f=Object.getOwnPropertyDescriptor,s=(a,t,n,i)=>{for(var r=i>1?void 0:i?f(t,n):t,l=a.length-1,p;l>=0;l--)(p=a[l])&&(r=(i?p(t,n,r):p(r))||r);return i&&r&&T(t,n,r),r};exports.DsTextarea=class extends c.inputStatesMixin(d.ViewportMixin(h.UiKitElement)){constructor(){super(...arguments),this.keyboardMode=!1,this.size="medium",this.helperText="",this.forcedError="",this.invalidError="",this.readonlyText="",this.mode="light"}onInputReady(t){t.classList.add("ds-scroll")}get classes(){const t=typeof this.size=="string"?this.size:this.size[this.viewport];return{container:!0,error:!!this.forcedError,[t]:!!t,[this.mode]:!!this.mode,disabled:this.inputStates.disabled,readonly:this.inputStates.readonly,filled:this.inputStates.filled,invalid:this.inputStates.invalid,focus:this.inputStates.focus,"focus-visible":this.inputStates.focusVisible}}render(){return e.html`
2
+ <div class=${m.classMap(this.classes)}>
3
3
  <div class="input-container">
4
4
  <slot></slot>
5
5
  </div>
6
6
  <div class="footer">
7
+ ${this.readonlyTextTemplate}
7
8
  ${this.helperTextTemplate}
8
9
  ${this.forcedErrorTemplate}
9
10
  ${this.invalidErrorTemplate}
10
11
  ${this.lengthTemplate}
11
12
  </div>
12
13
  </div>
13
- `}get lengthTemplate(){var s,i,e;const t=(i=(s=this.nativeInput)==null?void 0:s.maxLength)==null?void 0:i.toString();return v.validateMaxLength(t)?r.html`<span class="char-counter">${((e=this.inputStates.currentValue)==null?void 0:e.length)||0}/${t}</span>`:r.nothing}get helperTextTemplate(){return this.forcedError||this.inputStates.invalid&&this.invalidError?r.nothing:r.html`<span class="support-text helper-text">${this.helperText}</span>`}get forcedErrorTemplate(){return this.forcedError?r.html`<span class="support-text error-text forced-error">${this.forcedError}</span>`:r.nothing}get invalidErrorTemplate(){return this.forcedError||!this.inputStates.invalid||!this.invalidError?r.nothing:r.html`<span class="support-text error-text invalid-error">${this.invalidError}</span>`}};exports.DsTextarea.styles=[f.commonStyles];o([n.property({type:String,converter:m.objectConverter})],exports.DsTextarea.prototype,"size",2);o([n.property({type:String,attribute:"helper-text"})],exports.DsTextarea.prototype,"helperText",2);o([n.property({type:String,attribute:"forced-error"})],exports.DsTextarea.prototype,"forcedError",2);o([n.property({type:String,attribute:"invalid-error"})],exports.DsTextarea.prototype,"invalidError",2);o([n.property({type:String})],exports.DsTextarea.prototype,"mode",2);exports.DsTextarea=o([u.customUiKitElement("ds-textarea")],exports.DsTextarea);
14
+ `}get lengthTemplate(){var n,i,r;const t=(i=(n=this.nativeInput)==null?void 0:n.maxLength)==null?void 0:i.toString();return y.validateMaxLength(t)?e.html`<span class="char-counter">${((r=this.inputStates.currentValue)==null?void 0:r.length)||0}/${t}</span>`:e.nothing}get helperTextTemplate(){return this.inputStates.readonly||this.forcedError||this.inputStates.invalid&&this.invalidError?e.nothing:e.html`<span class="support-text helper-text">${this.helperText}</span>`}get forcedErrorTemplate(){return this.inputStates.readonly||!this.forcedError?e.nothing:e.html`<span class="support-text error-text forced-error">${this.forcedError}</span>`}get readonlyTextTemplate(){return!this.inputStates.readonly||!this.readonlyText?e.nothing:e.html`<span class="support-text readonly-text">${this.readonlyText}</span>`}get invalidErrorTemplate(){return this.inputStates.readonly||this.forcedError||!this.inputStates.invalid||!this.invalidError?e.nothing:e.html`<span class="support-text error-text invalid-error">${this.invalidError}</span>`}};exports.DsTextarea.styles=[v.commonStyles];s([o.property({type:String,converter:x.objectConverter})],exports.DsTextarea.prototype,"size",2);s([o.property({type:String,attribute:"helper-text"})],exports.DsTextarea.prototype,"helperText",2);s([o.property({type:String,attribute:"forced-error"})],exports.DsTextarea.prototype,"forcedError",2);s([o.property({type:String,attribute:"invalid-error"})],exports.DsTextarea.prototype,"invalidError",2);s([o.property({type:String,attribute:"readonly-text"})],exports.DsTextarea.prototype,"readonlyText",2);s([o.property({type:String})],exports.DsTextarea.prototype,"mode",2);exports.DsTextarea=s([u.customUiKitElement("ds-textarea")],exports.DsTextarea);
@@ -1,4 +1,4 @@
1
1
  "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("../../core/theme.constants.cjs"),p=require("../../decorators/customUiKitElement.cjs"),f=require("../../node_modules/.pnpm/@lit_context@1.1.6/node_modules/@lit/context/lib/decorators/provide.cjs"),y=require("../../utils/PubSub.cjs"),m=require("../../utils/booleanConverter.cjs");require("../../node_modules/.pnpm/@lit_reactive-element@2.1.1/node_modules/@lit/reactive-element/reactive-element.cjs");const l=require("../../node_modules/.pnpm/lit-html@3.3.1/node_modules/lit-html/lit-html.cjs"),v=require("../../node_modules/.pnpm/lit-element@4.2.1/node_modules/lit-element/lit-element.cjs"),h=require("../../node_modules/.pnpm/@lit_reactive-element@2.1.1/node_modules/@lit/reactive-element/decorators/property.cjs"),u=require("../../node_modules/.pnpm/@lit_reactive-element@2.1.1/node_modules/@lit/reactive-element/decorators/state.cjs"),$=require("../../styles/source/shared/fonts-config.cjs"),T=require("./themeContext.cjs");var b=Object.defineProperty,P=Object.getOwnPropertyDescriptor,d=(a,e,s,o)=>{for(var t=o>1?void 0:o?P(e,s):e,r=a.length-1,n;r>=0;r--)(n=a[r])&&(t=(o?n(e,s,t):n(t))||t);return o&&t&&b(e,s,t),t};exports.DsThemeProvider=class extends v.LitElement{constructor(){super(...arguments),this.loadFonts=!0,this.loadStyles=!0,this.cssLoaded=!1,this.loadedFonts=new Set}updated(e){super.updated(e),e.has("theme")&&(y.pubSub.publish("theme",this.theme),sessionStorage==null||sessionStorage.setItem(c.THEME_STORAGE_KEY,this.theme),typeof FontFace<"u"&&(document!=null&&document.fonts)&&this.loadThemeFonts(),this.loadThemeStyles().then(()=>{this.cssLoaded=!0,this.dispatchEvent(new CustomEvent("ui-kit:ready",{bubbles:!0,composed:!0}))}))}loadThemeFonts(){var e;(e=$.fontsConfig[this.theme])==null||e.fonts.forEach(s=>{this.loadThemeFont(s)})}async loadThemeFont({weight:e,name:s,file:o}){if(!this.loadFonts)return Promise.resolve();const t=`${s}-${e}`;if(this.loadedFonts.has(t))return;const r=new FontFace(s,`url('https://ds-assets.cupra.com/fonts/${this.theme}/${o}.woff2') format('woff2'),
2
2
  url('https://ds-assets.cupra.com/fonts/${this.theme}/${o}.woff') format('woff'),
3
3
  url('https://ds-assets.cupra.com/fonts/${this.theme}/${o}.ttf') format('truetype'),
4
- url('https://ds-assets.cupra.com/fonts/${this.theme}/${o}.otf') format('opentype')`,{style:"normal",weight:e,display:"swap"});try{await r.load(),document.fonts.add(r),this.loadedFonts.add(t)}catch(n){console.error(`Error loading "${s}" font with "${e}" weight:`,n)}}loadThemeStyles(){return this.loadStyles?new Promise((e,s)=>{const o="/2.0.0-canary.62",t=`https://ds-assets.cupra.com${o}/styles/${this.theme}/theme.css`;if(document.head.querySelector(`link[href="${t}"]`))e();else{const r=`ui-kit-theme-${o}`,n=document.getElementById(r),i=document.createElement("link");i.id=r,i.rel="stylesheet",i.href=t,i.onload=()=>e(),i.onerror=()=>s(new Error(`Failed to load theme CSS: ${t}`)),document.head.appendChild(i),n==null||n.remove()}}):Promise.resolve()}render(){return this.cssLoaded?l.html`<slot></slot>`:l.nothing}};d([h.property({type:Boolean,converter:m.booleanConverter,attribute:"load-fonts"})],exports.DsThemeProvider.prototype,"loadFonts",2);d([h.property({type:Boolean,converter:m.booleanConverter,attribute:"load-styles"})],exports.DsThemeProvider.prototype,"loadStyles",2);d([f.provide({context:T.themeContext}),h.property({type:String})],exports.DsThemeProvider.prototype,"theme",2);d([u.state()],exports.DsThemeProvider.prototype,"cssLoaded",2);d([u.state()],exports.DsThemeProvider.prototype,"loadedFonts",2);exports.DsThemeProvider=d([p.customUiKitElement("ds-theme-provider")],exports.DsThemeProvider);
4
+ url('https://ds-assets.cupra.com/fonts/${this.theme}/${o}.otf') format('opentype')`,{style:"normal",weight:e,display:"swap"});try{await r.load(),document.fonts.add(r),this.loadedFonts.add(t)}catch(n){console.error(`Error loading "${s}" font with "${e}" weight:`,n)}}loadThemeStyles(){return this.loadStyles?new Promise((e,s)=>{const o="/2.0.0-canary.63",t=`https://ds-assets.cupra.com${o}/styles/${this.theme}/theme.css`;if(document.head.querySelector(`link[href="${t}"]`))e();else{const r=`ui-kit-theme-${o}`,n=document.getElementById(r),i=document.createElement("link");i.id=r,i.rel="stylesheet",i.href=t,i.onload=()=>e(),i.onerror=()=>s(new Error(`Failed to load theme CSS: ${t}`)),document.head.appendChild(i),n==null||n.remove()}}):Promise.resolve()}render(){return this.cssLoaded?l.html`<slot></slot>`:l.nothing}};d([h.property({type:Boolean,converter:m.booleanConverter,attribute:"load-fonts"})],exports.DsThemeProvider.prototype,"loadFonts",2);d([h.property({type:Boolean,converter:m.booleanConverter,attribute:"load-styles"})],exports.DsThemeProvider.prototype,"loadStyles",2);d([f.provide({context:T.themeContext}),h.property({type:String})],exports.DsThemeProvider.prototype,"theme",2);d([u.state()],exports.DsThemeProvider.prototype,"cssLoaded",2);d([u.state()],exports.DsThemeProvider.prototype,"loadedFonts",2);exports.DsThemeProvider=d([p.customUiKitElement("ds-theme-provider")],exports.DsThemeProvider);
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=u=>class extends u{constructor(){super(...arguments),this.inputStates={currentValue:"",focus:!1,focusVisible:!1,invalid:!1,filled:!1,disabled:!1},this.keyboardMode=!1,this._updateStates=()=>{var t,e,s,i,n;this.inputStates.currentValue=(t=this.nativeInput)==null?void 0:t.value,this.inputStates.invalid=!((e=this.nativeInput)!=null&&e.validity.valid),this.inputStates.focus=document.activeElement===this.nativeInput,this.inputStates.disabled=(s=this.nativeInput)==null?void 0:s.disabled,this.inputStates.filled=((n=(i=this.nativeInput)==null?void 0:i.value)==null?void 0:n.length)>0,this.requestUpdate()},this._handleKeydown=()=>{this.keyboardMode=!0},this._handleMousedown=()=>{this.keyboardMode=!1},this._handlePointerdown=()=>{this.keyboardMode=!1},this._handleFocusIn=t=>{t.target===this.nativeInput&&(this.inputStates.focus=!0,this.inputStates.focusVisible=!!this.keyboardMode,this.requestUpdate())},this._handleFocusOut=()=>{this.inputStates.focus=!1,this.inputStates.focusVisible=!1,this.requestUpdate()}}onInputReady(t){}firstUpdated(t){super.firstUpdated(t),window==null||window.addEventListener("keydown",this._handleKeydown),window==null||window.addEventListener("mousedown",this._handleMousedown),window==null||window.addEventListener("pointerdown",this._handlePointerdown);const e=()=>{var i,n,a;const s=this.querySelector("input")||this.querySelector("textarea")||((i=this.shadowRoot)==null?void 0:i.querySelector("input"))||((n=this.shadowRoot)==null?void 0:n.querySelector("textarea"));s&&(this.nativeInput=s,this._setupInputObservers(),this.onInputReady(s),(a=this.hostMutationObserver)==null||a.disconnect())};e(),this.hostMutationObserver=new MutationObserver(e),this.hostMutationObserver.observe(this,{childList:!0,subtree:!0,attributes:!0})}_setupInputObservers(){this.nativeInput.addEventListener("input",this._updateStates),this.nativeInput.addEventListener("focusin",this._handleFocusIn),this.nativeInput.addEventListener("focusout",this._handleFocusOut),this.inputMutationObserver=new MutationObserver(this._updateStates),this.inputMutationObserver.observe(this.nativeInput,{attributes:!0}),this._updateStates()}disconnectedCallback(){var t,e;super.disconnectedCallback(),window==null||window.removeEventListener("keydown",this._handleKeydown),window==null||window.removeEventListener("mousedown",this._handleMousedown),window==null||window.removeEventListener("pointerdown",this._handlePointerdown),(t=this.hostMutationObserver)==null||t.disconnect(),(e=this.inputMutationObserver)==null||e.disconnect(),this.nativeInput&&(this.nativeInput.removeEventListener("input",this._updateStates),this.nativeInput.removeEventListener("focusin",this._handleFocusIn),this.nativeInput.removeEventListener("focusout",this._handleFocusOut))}};exports.inputStatesMixin=o;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=u=>class extends u{constructor(){super(...arguments),this.inputStates={currentValue:"",focus:!1,focusVisible:!1,invalid:!1,filled:!1,disabled:!1,readonly:!1},this.keyboardMode=!1,this._updateStates=()=>{var t,e,s,i,n,a;this.inputStates.currentValue=(t=this.nativeInput)==null?void 0:t.value,this.inputStates.invalid=!((e=this.nativeInput)!=null&&e.validity.valid),this.inputStates.focus=document.activeElement===this.nativeInput,this.inputStates.disabled=(s=this.nativeInput)==null?void 0:s.disabled,this.inputStates.readonly=((i=this.nativeInput)==null?void 0:i.readOnly)??!1,this.inputStates.filled=((a=(n=this.nativeInput)==null?void 0:n.value)==null?void 0:a.length)>0,this.requestUpdate()},this._handleKeydown=()=>{this.keyboardMode=!0},this._handleMousedown=()=>{this.keyboardMode=!1},this._handlePointerdown=()=>{this.keyboardMode=!1},this._handleFocusIn=t=>{t.target===this.nativeInput&&(this.inputStates.focus=!0,this.inputStates.focusVisible=!!this.keyboardMode,this.requestUpdate())},this._handleFocusOut=()=>{this.inputStates.focus=!1,this.inputStates.focusVisible=!1,this.requestUpdate()}}onInputReady(t){}firstUpdated(t){super.firstUpdated(t),window==null||window.addEventListener("keydown",this._handleKeydown),window==null||window.addEventListener("mousedown",this._handleMousedown),window==null||window.addEventListener("pointerdown",this._handlePointerdown);const e=()=>{var i,n,a;const s=this.querySelector("input")||this.querySelector("textarea")||((i=this.shadowRoot)==null?void 0:i.querySelector("input"))||((n=this.shadowRoot)==null?void 0:n.querySelector("textarea"));s&&(this.nativeInput=s,this._setupInputObservers(),this.onInputReady(s),(a=this.hostMutationObserver)==null||a.disconnect())};e(),this.hostMutationObserver=new MutationObserver(e),this.hostMutationObserver.observe(this,{childList:!0,subtree:!0,attributes:!0})}_setupInputObservers(){this.nativeInput.addEventListener("input",this._updateStates),this.nativeInput.addEventListener("focusin",this._handleFocusIn),this.nativeInput.addEventListener("focusout",this._handleFocusOut),this.inputMutationObserver=new MutationObserver(this._updateStates),this.inputMutationObserver.observe(this.nativeInput,{attributes:!0}),this._updateStates()}disconnectedCallback(){var t,e;super.disconnectedCallback(),window==null||window.removeEventListener("keydown",this._handleKeydown),window==null||window.removeEventListener("mousedown",this._handleMousedown),window==null||window.removeEventListener("pointerdown",this._handlePointerdown),(t=this.hostMutationObserver)==null||t.disconnect(),(e=this.inputMutationObserver)==null||e.disconnect(),this.nativeInput&&(this.nativeInput.removeEventListener("input",this._updateStates),this.nativeInput.removeEventListener("focusin",this._handleFocusIn),this.nativeInput.removeEventListener("focusout",this._handleFocusOut))}};exports.inputStatesMixin=o;
@@ -1,5 +1,5 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("./lit-html.cjs");/**
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("./lit-html.cjs");/**
2
2
  * @license
3
3
  * Copyright 2020 Google LLC
4
4
  * SPDX-License-Identifier: BSD-3-Clause
5
- */const{I:c}=a._$LH,d=()=>document.createComment(""),u=(e,r,t)=>{var s;const o=e._$AA.parentNode,A=r===void 0?e._$AB:r._$AA;if(t===void 0){const _=o.insertBefore(d(),A),$=o.insertBefore(d(),A);t=new c(_,$,e,e.options)}else{const _=t._$AB.nextSibling,$=t._$AM,l=$!==e;if(l){let i;(s=t._$AQ)==null||s.call(t,e),t._$AM=e,t._$AP!==void 0&&(i=e._$AU)!==$._$AU&&t._$AP(i)}if(_!==A||l){let i=t._$AA;for(;i!==_;){const m=i.nextSibling;o.insertBefore(i,A),i=m}}}return t},n=(e,r,t=e)=>(e._$AI(r,t),e),f={},v=(e,r=f)=>e._$AH=r,P=e=>e._$AH,g=e=>{e._$AR(),e._$AA.remove()};exports.getCommittedValue=P;exports.insertPart=u;exports.removePart=g;exports.setChildPartValue=n;exports.setCommittedValue=v;
5
+ */const{I:a}=n._$LH,c=e=>e.strings===void 0,d=()=>document.createComment(""),u=(e,r,t)=>{var $;const _=e._$AA.parentNode,s=r===void 0?e._$AB:r._$AA;if(t===void 0){const A=_.insertBefore(d(),s),o=_.insertBefore(d(),s);t=new a(A,o,e,e.options)}else{const A=t._$AB.nextSibling,o=t._$AM,l=o!==e;if(l){let i;($=t._$AQ)==null||$.call(t,e),t._$AM=e,t._$AP!==void 0&&(i=e._$AU)!==o._$AU&&t._$AP(i)}if(A!==s||l){let i=t._$AA;for(;i!==A;){const m=i.nextSibling;_.insertBefore(i,s),i=m}}}return t},f=(e,r,t=e)=>(e._$AI(r,t),e),v={},g=(e,r=v)=>e._$AH=r,P=e=>e._$AH,p=e=>{e._$AR(),e._$AA.remove()};exports.getCommittedValue=P;exports.insertPart=u;exports.isSingleExpression=c;exports.removePart=p;exports.setChildPartValue=f;exports.setCommittedValue=g;
@@ -2,4 +2,4 @@
2
2
  * @license
3
3
  * Copyright 2017 Google LLC
4
4
  * SPDX-License-Identifier: BSD-3-Clause
5
- */const s={ATTRIBUTE:1,CHILD:2},u=i=>(...t)=>({_$litDirective$:i,values:t});class ${constructor(t){}get _$AU(){return this._$AM._$AU}_$AT(t,e,r){this._$Ct=t,this._$AM=e,this._$Ci=r}_$AS(t,e){return this.update(t,e)}update(t,e){return this.render(...e)}}exports.Directive=$;exports.PartType=s;exports.directive=u;
5
+ */const s={ATTRIBUTE:1,CHILD:2,PROPERTY:3,BOOLEAN_ATTRIBUTE:4},u=i=>(...t)=>({_$litDirective$:i,values:t});class T{constructor(t){}get _$AU(){return this._$AM._$AU}_$AT(t,e,r){this._$Ct=t,this._$AM=e,this._$Ci=r}_$AS(t,e){return this.update(t,e)}update(t,e){return this.render(...e)}}exports.Directive=T;exports.PartType=s;exports.directive=u;
@@ -0,0 +1,5 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("../lit-html.cjs"),t=require("../directive.cjs"),s=require("../directive-helpers.cjs");/**
2
+ * @license
3
+ * Copyright 2020 Google LLC
4
+ * SPDX-License-Identifier: BSD-3-Clause
5
+ */const l=t.directive(class extends t.Directive{constructor(e){if(super(e),e.type!==t.PartType.PROPERTY&&e.type!==t.PartType.ATTRIBUTE&&e.type!==t.PartType.BOOLEAN_ATTRIBUTE)throw Error("The `live` directive is not allowed on child or event bindings");if(!s.isSingleExpression(e))throw Error("`live` bindings can only contain a single expression")}render(e){return e}update(e,[r]){if(r===n.noChange||r===n.nothing)return r;const i=e.element,o=e.name;if(e.type===t.PartType.PROPERTY){if(r===i[o])return n.noChange}else if(e.type===t.PartType.BOOLEAN_ATTRIBUTE){if(!!r===i.hasAttribute(o))return n.noChange}else if(e.type===t.PartType.ATTRIBUTE&&i.getAttribute(o)===r+"")return n.noChange;return s.setCommittedValue(e),r}});exports.live=l;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("../core/theme.constants.cjs"),l=require("./PubSub.cjs");class u{constructor(){this.icons={},this.handleChangeTheme=e=>{if(this.theme===e)return;this.theme=e;const n=Object.keys(this.icons);this.icons={},n.forEach(s=>this.fetchIcon(s))},this.fetchIcon=async(e,n={})=>{const s=typeof sessionStorage<"u"?sessionStorage==null?void 0:sessionStorage.getItem(r.THEME_STORAGE_KEY):null;!this.theme&&s&&(this.theme=s);const t=this.icons[e];if(t)return await t;const i=this.loadIcon(e,n).catch(a=>{throw delete this.icons[e],a});return this.icons[e]=i,i},this.loadIcon=(e,{cache:n="force-cache",...s})=>!this.theme||typeof fetch>"u"?Promise.resolve('<svg class="ds-icon"></svg>'):fetch(`https://ds-assets.cupra.com/icons/${this.theme}/${e}.svg`,{cache:n,...s}).then(t=>t.text()).catch(t=>{if((t==null?void 0:t.name)==="AbortError")throw t;return console.error(`Failed to fetch icon "${e}":`,t),""}),l.pubSub.subscribe("theme",this.handleChangeTheme)}}const o=Symbol.for("@cupra/ui-kit/icons-manager/2.0.0-canary.62"),h=globalThis;let c=h[o];c||(c=new u,Object.defineProperty(h,o,{value:c,writable:!1,configurable:!1,enumerable:!1}));const f=c;exports.iconsManager=f;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("../core/theme.constants.cjs"),l=require("./PubSub.cjs");class u{constructor(){this.icons={},this.handleChangeTheme=e=>{if(this.theme===e)return;this.theme=e;const n=Object.keys(this.icons);this.icons={},n.forEach(s=>this.fetchIcon(s))},this.fetchIcon=async(e,n={})=>{const s=typeof sessionStorage<"u"?sessionStorage==null?void 0:sessionStorage.getItem(r.THEME_STORAGE_KEY):null;!this.theme&&s&&(this.theme=s);const t=this.icons[e];if(t)return await t;const i=this.loadIcon(e,n).catch(a=>{throw delete this.icons[e],a});return this.icons[e]=i,i},this.loadIcon=(e,{cache:n="force-cache",...s})=>!this.theme||typeof fetch>"u"?Promise.resolve('<svg class="ds-icon"></svg>'):fetch(`https://ds-assets.cupra.com/icons/${this.theme}/${e}.svg`,{cache:n,...s}).then(t=>t.text()).catch(t=>{if((t==null?void 0:t.name)==="AbortError")throw t;return console.error(`Failed to fetch icon "${e}":`,t),""}),l.pubSub.subscribe("theme",this.handleChangeTheme)}}const o=Symbol.for("@cupra/ui-kit/icons-manager/2.0.0-canary.63"),h=globalThis;let c=h[o];c||(c=new u,Object.defineProperty(h,o,{value:c,writable:!1,configurable:!1,enumerable:!1}));const f=c;exports.iconsManager=f;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});class u{constructor(){this.subscribers={},this.lastPublishedData={}}subscribe(s,r){return this.subscribers[s]||(this.subscribers[s]=[]),this.subscribers[s].push(r),this.lastPublishedData[s]}unsubscribe(s,r){this.subscribers[s]&&(this.subscribers[s]=this.subscribers[s].filter(i=>i!==r))}publish(s,r){this.lastPublishedData[s]=r,this.subscribers[s]&&this.subscribers[s].forEach(i=>{try{i(r)}catch(c){console.error(`Error in subscriber for event "${s}":`,c)}})}}const t=Symbol.for("@cupra/ui-kit/pubsub/2.0.0-canary.62"),e=globalThis;let b=e[t];b||(b=new u,Object.defineProperty(e,t,{value:b,writable:!1,configurable:!1,enumerable:!1}));const l=b;exports.PubSub=u;exports.pubSub=l;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});class u{constructor(){this.subscribers={},this.lastPublishedData={}}subscribe(s,r){return this.subscribers[s]||(this.subscribers[s]=[]),this.subscribers[s].push(r),this.lastPublishedData[s]}unsubscribe(s,r){this.subscribers[s]&&(this.subscribers[s]=this.subscribers[s].filter(i=>i!==r))}publish(s,r){this.lastPublishedData[s]=r,this.subscribers[s]&&this.subscribers[s].forEach(i=>{try{i(r)}catch(c){console.error(`Error in subscriber for event "${s}":`,c)}})}}const t=Symbol.for("@cupra/ui-kit/pubsub/2.0.0-canary.63"),e=globalThis;let b=e[t];b||(b=new u,Object.defineProperty(e,t,{value:b,writable:!1,configurable:!1,enumerable:!1}));const l=b;exports.PubSub=u;exports.pubSub=l;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});class s{constructor(){this.stylePromises=new Map,this.getStyles=async({componentName:e,theme:t})=>{if(!t||!e)return;const r=`https://ds-assets.cupra.com/2.0.0-canary.62/styles/${t}/components/${e}.css`,c=this.getCachedStyleSheetPromise({url:r});if(c)return c;const i=this.fetchStyle({url:r}).then(n=>(n||this.stylePromises.delete(r),n));return this.stylePromises.set(r,i),this.stylePromises.get(r)}}async fetchStyle({url:e}){try{if(typeof fetch>"u")return;const 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 s.instance||(s.instance=new s),s.instance}}const o=s.getInstance();exports.stylesRegistry=o;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("../concurrencyLimit.cjs"),a=o.concurrencyLimit(20);class s{constructor(){this.stylePromises=new Map,this.getStyles=async({componentName:e,theme:t})=>{if(!t||!e)return;const c=`https://ds-assets.cupra.com/2.0.0-canary.63/styles/${t}/components/${e}.css`,r=this.getCachedStyleSheetPromise({url:c});if(r)return r;const i=a(()=>this.fetchStyle({url:c})).then(n=>(n||this.stylePromises.delete(c),n));return this.stylePromises.set(c,i),this.stylePromises.get(c)}}async fetchStyle({url:e}){try{if(typeof fetch>"u")return;const 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 s.instance||(s.instance=new s),s.instance}}const h=s.getInstance();exports.stylesRegistry=h;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});function c(r){let n=0;const e=[];function u(){if(n<r){n++;return}return new Promise(t=>{e.push(()=>{n++,t()})})}function o(){n--;const t=e.shift();t&&t()}return async t=>{const i=u();i&&await i;try{return await t()}finally{o()}}}exports.concurrencyLimit=c;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("../node_modules/.pnpm/@lit_reactive-element@2.1.1/node_modules/@lit/reactive-element/reactive-element.cjs");require("../node_modules/.pnpm/lit-html@3.3.1/node_modules/lit-html/lit-html.cjs");require("../node_modules/.pnpm/lit-element@4.2.1/node_modules/lit-element/lit-element.cjs");const e=require("../node_modules/.pnpm/@lit_reactive-element@2.1.1/node_modules/@lit/reactive-element/css-tag.cjs");function i(r,...t){const s=String.raw({raw:r},...t).replace(/(--private-[\w-]+)(?=\s*[):,])/g,"$1-v2-0-0-canary-62"),n=e.unsafeCSS(s);return e.css`${n}`}exports.cssWithTokens=i;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("../node_modules/.pnpm/@lit_reactive-element@2.1.1/node_modules/@lit/reactive-element/reactive-element.cjs");require("../node_modules/.pnpm/lit-html@3.3.1/node_modules/lit-html/lit-html.cjs");require("../node_modules/.pnpm/lit-element@4.2.1/node_modules/lit-element/lit-element.cjs");const e=require("../node_modules/.pnpm/@lit_reactive-element@2.1.1/node_modules/@lit/reactive-element/css-tag.cjs");function i(r,...t){const s=String.raw({raw:r},...t).replace(/(--private-[\w-]+)(?=\s*[):,])/g,"$1-v2-0-0-canary-63"),n=e.unsafeCSS(s);return e.css`${n}`}exports.cssWithTokens=i;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("../node_modules/.pnpm/@lit_reactive-element@2.1.1/node_modules/@lit/reactive-element/reactive-element.cjs");const i=require("../node_modules/.pnpm/lit-html@3.3.1/node_modules/lit-html/lit-html.cjs");require("../node_modules/.pnpm/lit-element@4.2.1/node_modules/lit-element/lit-element.cjs");const o=require("../node_modules/.pnpm/lit-html@3.3.1/node_modules/lit-html/directives/unsafe-html.cjs");function a(e,...t){const r=String.raw({raw:e},...t).replace(/(--private-[\w-]+)(?=\s*[):,])/g,"$1-v2-0-0-canary-62"),n=o.unsafeHTML(r);return i.html`${n}`}exports.htmlWithTokens=a;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("../node_modules/.pnpm/@lit_reactive-element@2.1.1/node_modules/@lit/reactive-element/reactive-element.cjs");const i=require("../node_modules/.pnpm/lit-html@3.3.1/node_modules/lit-html/lit-html.cjs");require("../node_modules/.pnpm/lit-element@4.2.1/node_modules/lit-element/lit-element.cjs");const o=require("../node_modules/.pnpm/lit-html@3.3.1/node_modules/lit-html/directives/unsafe-html.cjs");function a(e,...t){const r=String.raw({raw:e},...t).replace(/(--private-[\w-]+)(?=\s*[):,])/g,"$1-v2-0-0-canary-63"),n=o.unsafeHTML(r);return i.html`${n}`}exports.htmlWithTokens=a;
@@ -1,30 +1,31 @@
1
- import { UiKitElement as f } from "../base/UiKitElement.js";
2
- import { customUiKitElement as S } from "../../decorators/customUiKitElement.js";
1
+ import { UiKitElement as y } from "../base/UiKitElement.js";
2
+ import { customUiKitElement as f } from "../../decorators/customUiKitElement.js";
3
+ import { booleanConverter as S } from "../../utils/booleanConverter.js";
3
4
  import "../../node_modules/.pnpm/@lit_reactive-element@2.1.1/node_modules/@lit/reactive-element/reactive-element.js";
4
- import { html as d, nothing as y } from "../../node_modules/.pnpm/lit-html@3.3.1/node_modules/lit-html/lit-html.js";
5
+ import { html as c, nothing as O } from "../../node_modules/.pnpm/lit-html@3.3.1/node_modules/lit-html/lit-html.js";
5
6
  import "../../node_modules/.pnpm/lit-element@4.2.1/node_modules/lit-element/lit-element.js";
6
- import { property as p } from "../../node_modules/.pnpm/@lit_reactive-element@2.1.1/node_modules/@lit/reactive-element/decorators/property.js";
7
- import { state as c } from "../../node_modules/.pnpm/@lit_reactive-element@2.1.1/node_modules/@lit/reactive-element/decorators/state.js";
8
- import { query as O } from "../../node_modules/.pnpm/@lit_reactive-element@2.1.1/node_modules/@lit/reactive-element/decorators/query.js";
7
+ import { property as h } from "../../node_modules/.pnpm/@lit_reactive-element@2.1.1/node_modules/@lit/reactive-element/decorators/property.js";
8
+ import { state as d } from "../../node_modules/.pnpm/@lit_reactive-element@2.1.1/node_modules/@lit/reactive-element/decorators/state.js";
9
+ import { query as b } from "../../node_modules/.pnpm/@lit_reactive-element@2.1.1/node_modules/@lit/reactive-element/decorators/query.js";
9
10
  import { queryAssignedElements as v } from "../../node_modules/.pnpm/@lit_reactive-element@2.1.1/node_modules/@lit/reactive-element/decorators/query-assigned-elements.js";
10
11
  import { classMap as u } from "../../node_modules/.pnpm/lit-html@3.3.1/node_modules/lit-html/directives/class-map.js";
11
12
  import { SelectKeyboardController as m } from "./controllers/SelectKeyboardController.js";
12
- import { commonStyles as b } from "./styles/common.styles.js";
13
- var x = Object.defineProperty, I = Object.getOwnPropertyDescriptor, n = (e, t, i, o) => {
14
- for (var a = o > 1 ? void 0 : o ? I(t, i) : t, l = e.length - 1, r; l >= 0; l--)
13
+ import { commonStyles as x } from "./styles/common.styles.js";
14
+ var I = Object.defineProperty, C = Object.getOwnPropertyDescriptor, n = (e, t, i, o) => {
15
+ for (var a = o > 1 ? void 0 : o ? C(t, i) : t, l = e.length - 1, r; l >= 0; l--)
15
16
  (r = e[l]) && (a = (o ? r(t, i, a) : r(a)) || a);
16
- return o && a && x(t, i, a), a;
17
+ return o && a && I(t, i, a), a;
17
18
  };
18
- let s = class extends f {
19
+ let s = class extends y {
19
20
  constructor() {
20
- super(...arguments), this.mode = "light", this.size = "medium", this.variant = "primary", this._open = !1, this.nativeSelect = null, this.nativeLabel = null, this.nativeOptions = [], this.activeIndex = -1, this.hasForcedError = !1, this.handleMutations = (e) => {
21
+ super(...arguments), this.mode = "light", this.size = "medium", this.variant = "primary", this.readonly = !1, this._open = !1, this.nativeSelect = null, this.nativeLabel = null, this.nativeOptions = [], this.activeIndex = -1, this.hasForcedError = !1, this.handleMutations = (e) => {
21
22
  e.forEach((t) => {
22
23
  t.type === "childList" && this.syncNativeOptions();
23
24
  }), this.requestUpdate();
24
25
  }, this.syncNativeOptions = () => {
25
26
  this.nativeOptions = Array.from(this.nativeSelect.options);
26
27
  }, this.handleOpen = () => {
27
- this._open = !0, this.activeIndex = this.findSelectedOptionIndex(), this.focusDisplaySelect();
28
+ this.readonly || (this._open = !0, this.activeIndex = this.findSelectedOptionIndex(), this.focusDisplaySelect());
28
29
  }, this.handleClose = () => {
29
30
  this._open = !1;
30
31
  }, this.handleClickDisplaySelect = () => {
@@ -125,6 +126,7 @@ let s = class extends f {
125
126
  container: !0,
126
127
  open: this._open,
127
128
  disabled: !!((e = this.nativeSelect) != null && e.disabled),
129
+ readonly: !!this.readonly,
128
130
  filled: !!((i = (t = this.nativeOptions) == null ? void 0 : t.find((a) => a.selected && !a.hidden)) != null && i.selected),
129
131
  invalid: !((o = this.nativeSelect) != null && o.validity.valid),
130
132
  error: this.hasForcedError,
@@ -140,12 +142,13 @@ let s = class extends f {
140
142
  return this._open;
141
143
  }
142
144
  render() {
143
- return d`
145
+ return c`
144
146
  <slot @slotchange=${this.initializeNativeSelect}></slot>
145
147
  <div class=${u(this.containerClasses)}>
146
148
  ${this.displaySelectTemplate}
147
149
  ${this.optionsContainerTemplate}
148
150
  <slot name="helper-text"></slot>
151
+ <slot name="readonly-text"></slot>
149
152
  <slot name="forced-error" @slotchange=${this.handleChangeForcedError}></slot>
150
153
  <slot name="invalid-error"></slot>
151
154
  </div>
@@ -164,10 +167,10 @@ let s = class extends f {
164
167
  if (l.nodeType !== 3)
165
168
  return r;
166
169
  if (l.textContent.trim() === "") return "";
167
- const h = document.createElement("span");
168
- return h.classList.add("text"), h.appendChild(r), h;
170
+ const p = document.createElement("span");
171
+ return p.classList.add("text"), p.appendChild(r), p;
169
172
  });
170
- return d`
173
+ return c`
171
174
  <div class="select-outline">
172
175
  <div class="select-container">
173
176
  <label id="display-label" class="label">${(o = this.nativeLabel) == null ? void 0 : o.innerText}</label>
@@ -195,17 +198,17 @@ let s = class extends f {
195
198
  return this._open && this.activeIndex >= 0 ? `${s.ARIA_OPTION_PREFIX}${this.nativeOptions[this.activeIndex].value}` : "";
196
199
  }
197
200
  get optionsContainerTemplate() {
198
- return d`
201
+ return c`
199
202
  <div id="options-container" class="options-container" role="listbox">
200
203
  ${this.nativeOptions.map(
201
- (e, t) => e.hidden ? y : this.renderOptionClone(e, t)
204
+ (e, t) => e.hidden ? O : this.renderOptionClone(e, t)
202
205
  )}
203
206
  </div>
204
207
  `;
205
208
  }
206
209
  renderOptionClone(e, t) {
207
210
  const i = Array.from(e.childNodes).map((o) => o.cloneNode(!0));
208
- return d`
211
+ return c`
209
212
  <div
210
213
  id="${s.ARIA_OPTION_PREFIX}${e.value}"
211
214
  class=${u({
@@ -225,34 +228,37 @@ let s = class extends f {
225
228
  `;
226
229
  }
227
230
  };
228
- s.styles = [b];
231
+ s.styles = [x];
229
232
  s.ARIA_OPTION_PREFIX = "option-";
230
233
  n([
231
- p({ type: String })
234
+ h({ type: String })
232
235
  ], s.prototype, "mode", 2);
233
236
  n([
234
- p({ type: String })
237
+ h({ type: String })
235
238
  ], s.prototype, "size", 2);
236
239
  n([
237
- p({ type: String })
240
+ h({ type: String })
238
241
  ], s.prototype, "variant", 2);
239
242
  n([
240
- c()
243
+ h({ type: Boolean, converter: S, reflect: !0 })
244
+ ], s.prototype, "readonly", 2);
245
+ n([
246
+ d()
241
247
  ], s.prototype, "_open", 2);
242
248
  n([
243
- c()
249
+ d()
244
250
  ], s.prototype, "nativeSelect", 2);
245
251
  n([
246
- c()
252
+ d()
247
253
  ], s.prototype, "nativeLabel", 2);
248
254
  n([
249
- c()
255
+ d()
250
256
  ], s.prototype, "nativeOptions", 2);
251
257
  n([
252
- c()
258
+ d()
253
259
  ], s.prototype, "activeIndex", 2);
254
260
  n([
255
- c()
261
+ d()
256
262
  ], s.prototype, "hasForcedError", 2);
257
263
  n([
258
264
  v({ slot: "", selector: "select", flatten: !0 })
@@ -264,10 +270,10 @@ n([
264
270
  v({ slot: "forced-error", flatten: !0 })
265
271
  ], s.prototype, "forcedError", 2);
266
272
  n([
267
- O(".select")
273
+ b(".select")
268
274
  ], s.prototype, "displaySelect", 2);
269
275
  s = n([
270
- S("ds-select")
276
+ f("ds-select")
271
277
  ], s);
272
278
  export {
273
279
  s as DsSelect