scb-wc-test 0.1.14 → 0.1.16

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.
@@ -1,5 +1,5 @@
1
1
  const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["../../vendor/vendor-material.js","../../vendor/vendor.js"])))=>i.map(i=>d[i]);
2
- import{_ as h}from"../../vendor/preload-helper.js";import{a as g,n,i as u,E as p,x as l,t as v}from"../../vendor/vendor.js";(function(){try{var t=typeof globalThis<"u"?globalThis:window;if(!t.__scb_ce_guard_installed__){t.__scb_ce_guard_installed__=!0;var a=customElements.define.bind(customElements);customElements.define=function(o,i,s){try{customElements.get(o)||a(o,i,s)}catch(c){var d=String(c||"");if(d.indexOf("already been used")===-1&&d.indexOf("NotSupportedError")===-1)throw c}}}}catch{}})();var m=Object.defineProperty,b=Object.getOwnPropertyDescriptor,r=(t,a,o,i)=>{for(var s=i>1?void 0:i?b(a,o):a,d=t.length-1,c;d>=0;d--)(c=t[d])&&(s=(i?c(a,o,s):c(s))||s);return i&&s&&m(a,o,s),s};let e=class extends u{constructor(){super(...arguments),this.expanded=!1,this.label="",this.content="",this.overline="",this.supportingText="",this.leading=!1,this.leadingVariant="",this.leadingIcon="",this.imgHrefImage="",this.avatarLabel="",this.avatarAlt="",this.avatarVariant="icon",this.avatarSrc="",this.density=0,this._unique=e._uid(),this.toggleAccordion=()=>{const t=this.closest("scb-accordion");t?.hasAttribute("detached")||t.querySelectorAll("scb-accordion-item").forEach(o=>{o!==this&&(o.expanded=!1,o._applyInert(),o._setBottomMaxHeight(o))}),this.expanded=!this.expanded,this._applyInert(),this._setBottomMaxHeight(this)},this._onSlotChange=()=>{this.expanded&&this._setBottomMaxHeight(this)},this._onContentLoad=()=>{this.expanded&&this._setBottomMaxHeight(this)}}static _uid(){return globalThis.crypto?.randomUUID?.()??`${e._uidPrefix}-${++e._uidSeq}`}async firstUpdated(){e._mdIconLoaded||(await h(()=>import("../../vendor/vendor-material.js").then(t=>t.i),__vite__mapDeps([0,1]),import.meta.url),e._mdIconLoaded=!0),e._mdRippleLoaded||(await h(()=>import("../../vendor/vendor-material.js").then(t=>t.r),__vite__mapDeps([0,1]),import.meta.url),e._mdRippleLoaded=!0),this._applyInert(),this._bottomEl()?.addEventListener("load",this._onContentLoad,!0)}disconnectedCallback(){this._bottomEl()?.removeEventListener("load",this._onContentLoad,!0),super.disconnectedCallback()}_setBottomMaxHeight(t){const a=t._bottomEl();a&&(t.expanded?(a.style.maxHeight=`${a.scrollHeight}px`,setTimeout(()=>a.style.maxHeight="unset",160)):(a.style.maxHeight=`${a.scrollHeight}px`,requestAnimationFrame(()=>a.style.maxHeight="0")))}_onKeyDown(t){const a=this.closest("scb-accordion"),i=Array.from(a?.querySelectorAll("scb-accordion-item")||[]).map(c=>c.renderRoot.querySelector(".scb-accordion-top")).filter(c=>!!c),s=t.currentTarget,d=i.indexOf(s);switch(t.key){case"Enter":case" ":t.preventDefault(),this.toggleAccordion();break;case"ArrowDown":t.preventDefault(),d<i.length-1&&i[d+1].focus();break;case"ArrowUp":t.preventDefault(),d>0&&i[d-1].focus();break;case"Home":t.preventDefault(),i.length&&i[0].focus();break;case"End":t.preventDefault(),i.length&&i[i.length-1].focus();break}}_renderLeading(){if(!this.leading)return p;switch(this.leadingVariant){case"icon":return l`<md-icon>${this.leadingIcon}</md-icon>`;case"avatar":return l`
2
+ import{_ as h}from"../../vendor/preload-helper.js";import{a as g,n,i as u,E as p,x as l,t as m}from"../../vendor/vendor.js";import"../../vendor/vendor-material.js";(function(){try{var t=typeof globalThis<"u"?globalThis:window;if(!t.__scb_ce_guard_installed__){t.__scb_ce_guard_installed__=!0;var i=customElements.define.bind(customElements);customElements.define=function(o,a,s){try{customElements.get(o)||i(o,a,s)}catch(c){var d=String(c||"");if(d.indexOf("already been used")===-1&&d.indexOf("NotSupportedError")===-1)throw c}}}}catch{}})();var v=Object.defineProperty,b=Object.getOwnPropertyDescriptor,r=(t,i,o,a)=>{for(var s=a>1?void 0:a?b(i,o):i,d=t.length-1,c;d>=0;d--)(c=t[d])&&(s=(a?c(i,o,s):c(s))||s);return a&&s&&v(i,o,s),s};let e=class extends u{constructor(){super(...arguments),this.expanded=!1,this.label="",this.content="",this.overline="",this.supportingText="",this.leading=!1,this.leadingVariant="",this.leadingIcon="",this.imgHrefImage="",this.avatarLabel="",this.avatarAlt="",this.avatarVariant="icon",this.avatarSrc="",this.density=0,this._unique=e._uid(),this.toggleAccordion=()=>{const t=this.closest("scb-accordion");t?.hasAttribute("detached")||t.querySelectorAll("scb-accordion-item").forEach(o=>{o!==this&&(o.expanded=!1,o._applyInert(),o._setBottomMaxHeight(o))}),this.expanded=!this.expanded,this._applyInert(),this._setBottomMaxHeight(this)},this._onSlotChange=()=>{this.expanded&&this._setBottomMaxHeight(this)},this._onContentLoad=()=>{this.expanded&&this._setBottomMaxHeight(this)}}static _uid(){return globalThis.crypto?.randomUUID?.()??`${e._uidPrefix}-${++e._uidSeq}`}async firstUpdated(){e._mdIconLoaded||(await h(()=>import("../../vendor/vendor-material.js").then(t=>t.i),__vite__mapDeps([0,1]),import.meta.url),e._mdIconLoaded=!0),e._mdRippleLoaded||(await h(()=>import("../../vendor/vendor-material.js").then(t=>t.r),__vite__mapDeps([0,1]),import.meta.url),e._mdRippleLoaded=!0),this._applyInert(),this._bottomEl()?.addEventListener("load",this._onContentLoad,!0)}disconnectedCallback(){this._bottomEl()?.removeEventListener("load",this._onContentLoad,!0),super.disconnectedCallback()}_setBottomMaxHeight(t){const i=t._bottomEl();i&&(t.expanded?(i.style.maxHeight=`${i.scrollHeight}px`,setTimeout(()=>i.style.maxHeight="unset",160)):(i.style.maxHeight=`${i.scrollHeight}px`,requestAnimationFrame(()=>i.style.maxHeight="0")))}_onKeyDown(t){const i=this.closest("scb-accordion"),a=Array.from(i?.querySelectorAll("scb-accordion-item")||[]).map(c=>c.renderRoot.querySelector(".scb-accordion-top")).filter(c=>!!c),s=t.currentTarget,d=a.indexOf(s);switch(t.key){case"Enter":case" ":t.preventDefault(),this.toggleAccordion();break;case"ArrowDown":t.preventDefault(),d<a.length-1&&a[d+1].focus();break;case"ArrowUp":t.preventDefault(),d>0&&a[d-1].focus();break;case"Home":t.preventDefault(),a.length&&a[0].focus();break;case"End":t.preventDefault(),a.length&&a[a.length-1].focus();break}}_renderLeading(){if(!this.leading)return p;switch(this.leadingVariant){case"icon":return l`<md-icon>${this.leadingIcon}</md-icon>`;case"avatar":return l`
3
3
  <scb-avatar
4
4
  label=${this.avatarLabel}
5
5
  alt=${this.avatarAlt}
@@ -8,10 +8,10 @@ import{_ as h}from"../../vendor/preload-helper.js";import{a as g,n,i as u,E as p
8
8
  shape="circular"
9
9
  variant=${this.avatarVariant}
10
10
  ></scb-avatar>
11
- `;case"image":return this.imgHrefImage?l`<img part="leading-image" class="img" src="${this.imgHrefImage}" alt="" />`:p;default:return p}}_bottomEl(){return this.renderRoot.querySelector(".scb-accordion-bottom")}_applyInert(){const t=this._bottomEl();t&&(this.expanded?(t.removeAttribute("inert"),t.setAttribute("aria-hidden","false")):(t.setAttribute("inert",""),t.setAttribute("aria-hidden","true")))}updated(t){t.has("expanded")&&(this._applyInert(),this._setBottomMaxHeight(this))}render(){const t=`bottom-${this._unique}`,a=`header-${this._unique}`;return l`
11
+ `;case"image":return this.imgHrefImage?l`<img part="leading-image" class="img" src="${this.imgHrefImage}" alt="" />`:p;default:return p}}_bottomEl(){return this.renderRoot.querySelector(".scb-accordion-bottom")}_applyInert(){const t=this._bottomEl();t&&(this.expanded?(t.removeAttribute("inert"),t.setAttribute("aria-hidden","false")):(t.setAttribute("inert",""),t.setAttribute("aria-hidden","true")))}_emitExpandedChanged(){this.dispatchEvent(new CustomEvent("expanded-changed",{detail:{expanded:this.expanded,label:this.label},bubbles:!0,composed:!0}))}updated(t){t.has("expanded")&&(this._applyInert(),this._setBottomMaxHeight(this),t.get("expanded")!==void 0&&this._emitExpandedChanged())}render(){const t=`bottom-${this._unique}`,i=`header-${this._unique}`;return l`
12
12
  <div part="scb-accordion-item" class="scb-accordion-item">
13
13
  <div
14
- id=${a}
14
+ id=${i}
15
15
  class="scb-accordion-top"
16
16
  tabindex="0"
17
17
  role="button"
@@ -37,18 +37,18 @@ import{_ as h}from"../../vendor/preload-helper.js";import{a as g,n,i as u,E as p
37
37
  id=${t}
38
38
  class="scb-accordion-bottom ${this.expanded?"expanded":""}"
39
39
  role="region"
40
- aria-labelledby=${a}
40
+ aria-labelledby=${i}
41
41
  aria-hidden=${this.expanded?"false":"true"}
42
42
  >
43
43
  <slot @slotchange=${this._onSlotChange}>${this.content}</slot>
44
44
  </div>
45
45
  </div>
46
- `}};e._uidPrefix=`uid-${Math.random().toString(36).slice(2)}`;e._uidSeq=0;e._mdIconLoaded=!1;e._mdRippleLoaded=!1;e.styles=[g`
47
- :host {
48
- display: block;
49
- --_focus-width: var(--md-focus-ring-width, var(--stroke-focus-ring, 2px));
50
- --_focus-radius: var(--md-sys-shape-corner-small, var(--radius-s, 8px));
51
46
 
47
+ <md-focus-ring></md-focus-ring>
48
+ `}};e._uidPrefix=`uid-${Math.random().toString(36).slice(2)}`;e._uidSeq=0;e._mdIconLoaded=!1;e._mdRippleLoaded=!1;e.styles=[g`
49
+ :host {
50
+ display: block;
51
+ position: relative;
52
52
  --scb-accordion-hover-radius: var(--radius-none, 0px);
53
53
  --scb-accordion-chevron-nudge-y: 3px;
54
54
  --scb-accordion-transition-duration: 150ms;
@@ -56,7 +56,16 @@ import{_ as h}from"../../vendor/preload-helper.js";import{a as g,n,i as u,E as p
56
56
  --scb-accordion-panel-padding-closed: var(--spacing-0, 0px);
57
57
  }
58
58
 
59
- .scb-accordion-item{
59
+ md-focus-ring {
60
+ position: absolute;
61
+ inset: 0;
62
+ pointer-events: none;
63
+ display: none;
64
+ border-radius: var(--scb-accordion-focus-ring-radius, var(--md-sys-shape-corner-small, 8px));
65
+ }
66
+ :host(:focus-within) md-focus-ring { display: block; }
67
+
68
+ .scb-accordion-item {
60
69
  border-bottom: var(--stroke-border, 1px) solid var(--md-sys-color-outline-variant);
61
70
  margin-bottom: calc(var(--stroke-border, 1px) * -1);
62
71
  display: flex;
@@ -77,15 +86,10 @@ import{_ as h}from"../../vendor/preload-helper.js";import{a as g,n,i as u,E as p
77
86
  gap: var(--spacing-5, 16px);
78
87
  color: var(--md-sys-color-on-surface);
79
88
  position: relative;
80
- overflow: hidden;
89
+ overflow: visible;
81
90
  -webkit-tap-highlight-color: transparent;
82
91
  }
83
92
  .scb-accordion-top:hover { border-radius: var(--scb-accordion-hover-radius); }
84
- .scb-accordion-top:focus-visible {
85
- outline: var(--_focus-width) solid var(--md-focus-ring-color, var(--p-40));
86
- outline-offset: var(--spacing-1, 2px);
87
- border-radius: var(--_focus-radius);
88
- }
89
93
 
90
94
  :host([density="-2"]) .scb-accordion-top,
91
95
  :host-context([data-density="-2"]) .scb-accordion-top {
@@ -149,6 +153,12 @@ import{_ as h}from"../../vendor/preload-helper.js";import{a as g,n,i as u,E as p
149
153
  .texts { display: grid; gap: var(--spacing-1, 2px); }
150
154
  .chevron { margin-left: auto; padding-top: var(--scb-accordion-chevron-nudge-y, 3px); font-size: var(--icon-size-small, 24px); }
151
155
 
152
- md-ripple { border-radius: inherit; inset: 0; position: absolute; pointer-events: none; }
156
+ md-ripple {
157
+ border-radius: inherit;
158
+ inset: 0;
159
+ position: absolute;
160
+ pointer-events: none;
161
+ overflow: hidden;
162
+ }
153
163
  @media (prefers-reduced-motion: reduce) { md-ripple { display: none; } }
154
- `];r([n({type:Boolean})],e.prototype,"expanded",2);r([n({type:String,reflect:!0})],e.prototype,"label",2);r([n({type:String})],e.prototype,"content",2);r([n({type:String,attribute:"overline"})],e.prototype,"overline",2);r([n({type:String,attribute:"supporting-text"})],e.prototype,"supportingText",2);r([n({type:Boolean})],e.prototype,"leading",2);r([n({type:String,attribute:"leading-variant",reflect:!0})],e.prototype,"leadingVariant",2);r([n({type:String,attribute:"leading-icon"})],e.prototype,"leadingIcon",2);r([n({type:String,attribute:"img-href-image",reflect:!0})],e.prototype,"imgHrefImage",2);r([n({type:String,attribute:"avatar-label"})],e.prototype,"avatarLabel",2);r([n({type:String,attribute:"avatar-alt"})],e.prototype,"avatarAlt",2);r([n({type:String,attribute:"avatar-variant"})],e.prototype,"avatarVariant",2);r([n({type:String,attribute:"avatar-src"})],e.prototype,"avatarSrc",2);r([n({type:Number,reflect:!0})],e.prototype,"density",2);e=r([v("scb-accordion-item")],e);
164
+ `];r([n({type:Boolean})],e.prototype,"expanded",2);r([n({type:String,reflect:!0})],e.prototype,"label",2);r([n({type:String})],e.prototype,"content",2);r([n({type:String,attribute:"overline"})],e.prototype,"overline",2);r([n({type:String,attribute:"supporting-text"})],e.prototype,"supportingText",2);r([n({type:Boolean})],e.prototype,"leading",2);r([n({type:String,attribute:"leading-variant",reflect:!0})],e.prototype,"leadingVariant",2);r([n({type:String,attribute:"leading-icon"})],e.prototype,"leadingIcon",2);r([n({type:String,attribute:"img-href-image",reflect:!0})],e.prototype,"imgHrefImage",2);r([n({type:String,attribute:"avatar-label"})],e.prototype,"avatarLabel",2);r([n({type:String,attribute:"avatar-alt"})],e.prototype,"avatarAlt",2);r([n({type:String,attribute:"avatar-variant"})],e.prototype,"avatarVariant",2);r([n({type:String,attribute:"avatar-src"})],e.prototype,"avatarSrc",2);r([n({type:Number,reflect:!0})],e.prototype,"density",2);e=r([m("scb-accordion-item")],e);
@@ -1,5 +1,5 @@
1
- import{n as a,t as l,i as _,x as f}from"../../vendor/vendor.js";import"./scb-accordion-item.js";import"../../vendor/preload-helper.js";(function(){try{var n=typeof globalThis<"u"?globalThis:window;if(!n.__scb_ce_guard_installed__){n.__scb_ce_guard_installed__=!0;var r=customElements.define.bind(customElements);customElements.define=function(t,c,e){try{customElements.get(t)||r(t,c,e)}catch(s){var o=String(s||"");if(o.indexOf("already been used")===-1&&o.indexOf("NotSupportedError")===-1)throw s}}}}catch{}})();var u=Object.defineProperty,p=Object.getOwnPropertyDescriptor,i=(n,r,t,c)=>{for(var e=c>1?void 0:c?p(r,t):r,o=n.length-1,s;o>=0;o--)(s=n[o])&&(e=(c?s(r,t,e):s(e))||e);return c&&e&&u(r,t,e),e};let d=class extends _{constructor(){super(...arguments),this.detached=!1}render(){return f`
1
+ import{n as a,t as l,i as _,x as f}from"../../vendor/vendor.js";import"./scb-accordion-item.js";import"../../vendor/preload-helper.js";import"../../vendor/vendor-material.js";(function(){try{var n=typeof globalThis<"u"?globalThis:window;if(!n.__scb_ce_guard_installed__){n.__scb_ce_guard_installed__=!0;var r=customElements.define.bind(customElements);customElements.define=function(t,o,e){try{customElements.get(t)||r(t,o,e)}catch(s){var c=String(s||"");if(c.indexOf("already been used")===-1&&c.indexOf("NotSupportedError")===-1)throw s}}}}catch{}})();var u=Object.defineProperty,p=Object.getOwnPropertyDescriptor,d=(n,r,t,o)=>{for(var e=o>1?void 0:o?p(r,t):r,c=n.length-1,s;c>=0;c--)(s=n[c])&&(e=(o?s(r,t,e):s(e))||e);return o&&e&&u(r,t,e),e};let i=class extends _{constructor(){super(...arguments),this.detached=!1}render(){return f`
2
2
  <div class="scb-accordion" ?detached=${this.detached}>
3
3
  <slot></slot>
4
4
  </div>
5
- `}};i([a({type:Boolean,reflect:!0})],d.prototype,"detached",2);d=i([l("scb-accordion")],d);
5
+ `}};d([a({type:Boolean,reflect:!0})],i.prototype,"detached",2);i=d([l("scb-accordion")],i);
@@ -1,5 +1,5 @@
1
1
  const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["../../vendor/vendor-material.js","../../vendor/vendor.js"])))=>i.map(i=>d[i]);
2
- import{_ as h}from"../../vendor/preload-helper.js";import{i as b,a as m,x as u,E as e,n as c,t as f}from"../../vendor/vendor.js";(function(){try{var t=typeof globalThis<"u"?globalThis:window;if(!t.__scb_ce_guard_installed__){t.__scb_ce_guard_installed__=!0;var r=customElements.define.bind(customElements);customElements.define=function(i,n,a){try{customElements.get(i)||r(i,n,a)}catch(d){var o=String(d||"");if(o.indexOf("already been used")===-1&&o.indexOf("NotSupportedError")===-1)throw d}}}}catch{}})();var p=Object.defineProperty,_=Object.getOwnPropertyDescriptor,s=(t,r,i,n)=>{for(var a=n>1?void 0:n?_(r,i):r,o=t.length-1,d;o>=0;o--)(d=t[o])&&(a=(n?d(r,i,a):d(a))||a);return n&&a&&p(r,i,a),a};let l=class extends b{constructor(){super(...arguments),this.variant="filled",this.type="button",this.label="Button",this.trailingIcon=!1,this.icon="",this.disabled=!1,this.href="",this.target="",this.rel="",this.__loadedButtons=new Set,this.__iconLoaded=!1}async __ensureDepsLoaded(){if(!this.__loadedButtons.has(this.variant)){switch(this.variant){case"filled":await h(()=>import("../../vendor/vendor-material.js").then(t=>t.f),__vite__mapDeps([0,1]),import.meta.url);break;case"outlined":await h(()=>import("../../vendor/vendor-material.js").then(t=>t.o),__vite__mapDeps([0,1]),import.meta.url);break;case"filled-tonal":await h(()=>import("../../vendor/vendor-material.js").then(t=>t.c),__vite__mapDeps([0,1]),import.meta.url);break;case"text":await h(()=>import("../../vendor/vendor-material.js").then(t=>t.t),__vite__mapDeps([0,1]),import.meta.url);break}this.__loadedButtons.add(this.variant)}this.icon&&!this.__iconLoaded&&(await h(()=>import("../../vendor/vendor-material.js").then(t=>t.i),__vite__mapDeps([0,1]),import.meta.url),this.__iconLoaded=!0)}__getInnerButton(){return this.renderRoot.querySelector("md-filled-button, md-outlined-button, md-filled-tonal-button, md-text-button")}__syncAriaToInner(){const t=this.__getInnerButton();if(!t)return;const r=this.getAttribute("aria-controls");r&&t.setAttribute("aria-controls",r);const i=this.getAttribute("aria-expanded");i!==null&&(t.setAttribute("aria-expanded",i),this.removeAttribute("aria-expanded")),this.__ariaObserver?.disconnect(),this.__ariaObserver=new MutationObserver(n=>{const a=this.__getInnerButton();if(a){for(const o of n)if(!(o.type!=="attributes"||!o.attributeName)&&(o.attributeName==="aria-controls"||o.attributeName==="aria-expanded")){const d=this.getAttribute(o.attributeName);d===null?a.removeAttribute(o.attributeName):a.setAttribute(o.attributeName,d),o.attributeName==="aria-expanded"&&this.removeAttribute("aria-expanded")}}}),this.__ariaObserver.observe(this,{attributes:!0,attributeFilter:["aria-controls","aria-expanded"]})}firstUpdated(){(this.type==="submit"||this.type==="reset")&&this.addEventListener("click",()=>{if(!this.disabled){const t=this.closest("form");t&&(this.type==="submit"&&t.requestSubmit(),this.type==="reset"&&t.reset())}}),this.__ensureDepsLoaded(),this.__syncAriaToInner()}updated(t){(t.has("variant")||t.has("icon")&&this.icon)&&this.__ensureDepsLoaded(),t.has("variant")&&this.__syncAriaToInner()}disconnectedCallback(){this.__ariaObserver?.disconnect(),super.disconnectedCallback()}static get styles(){return m`
2
+ import{_ as f}from"../../vendor/preload-helper.js";import{i as A,a as x,x as h,E as r,n as c,t as I}from"../../vendor/vendor.js";(function(){try{var t=typeof globalThis<"u"?globalThis:window;if(!t.__scb_ce_guard_installed__){t.__scb_ce_guard_installed__=!0;var e=customElements.define.bind(customElements);customElements.define=function(i,o,a){try{customElements.get(i)||e(i,o,a)}catch(d){var s=String(d||"");if(s.indexOf("already been used")===-1&&s.indexOf("NotSupportedError")===-1)throw d}}}}catch{}})();var E=Object.defineProperty,L=Object.getOwnPropertyDescriptor,l=(t,e,i,o)=>{for(var a=o>1?void 0:o?L(e,i):e,s=t.length-1,d;s>=0;s--)(d=t[s])&&(a=(o?d(e,i,a):d(a))||a);return o&&a&&E(e,i,a),a};let n=class extends A{constructor(){super(...arguments),this.variant="filled",this.type="button",this.label="Button",this.trailingIcon=!1,this.icon="",this.disabled=!1,this.href="",this.target="",this.rel="",this.__loadedButtons=new Set,this.__iconLoaded=!1}async __ensureDepsLoaded(){if(!this.__loadedButtons.has(this.variant)){switch(this.variant){case"filled":await f(()=>import("../../vendor/vendor-material.js").then(t=>t.f),__vite__mapDeps([0,1]),import.meta.url);break;case"outlined":await f(()=>import("../../vendor/vendor-material.js").then(t=>t.o),__vite__mapDeps([0,1]),import.meta.url);break;case"filled-tonal":await f(()=>import("../../vendor/vendor-material.js").then(t=>t.c),__vite__mapDeps([0,1]),import.meta.url);break;case"text":await f(()=>import("../../vendor/vendor-material.js").then(t=>t.t),__vite__mapDeps([0,1]),import.meta.url);break}this.__loadedButtons.add(this.variant)}this.icon&&!this.__iconLoaded&&(await f(()=>import("../../vendor/vendor-material.js").then(t=>t.i),__vite__mapDeps([0,1]),import.meta.url),this.__iconLoaded=!0)}__getMdHost(){return this.renderRoot.querySelector("md-filled-button, md-outlined-button, md-filled-tonal-button, md-text-button")}__getInnerNativeButton(t){return t?.shadowRoot?.querySelector("button")??null}__syncAriaToInner(){const t=this.__getMdHost(),e=this.__getInnerNativeButton(t);if(!t||!e)return;const i=(this.getAttribute("aria-label")||"").trim(),o=(t.getAttribute("aria-label")||"").trim(),a=this.label.trim()===""?(this.icon||"").trim():"",s=i||o||a;s?e.setAttribute("aria-label",s):e.removeAttribute("aria-label");const d=this.getAttribute("aria-controls");d!==null?e.setAttribute("aria-controls",d):e.removeAttribute("aria-controls");const v=this.getAttribute("aria-expanded");v!==null?e.setAttribute("aria-expanded",v):e.removeAttribute("aria-expanded"),t.removeAttribute("aria-label"),t.removeAttribute("aria-controls"),t.removeAttribute("aria-expanded"),this.removeAttribute("aria-expanded"),this.__ariaObserver?.disconnect(),this.__ariaObserver=new MutationObserver(g=>{const u=this.__getMdHost(),m=this.__getInnerNativeButton(u);if(!(!u||!m)){for(const _ of g){if(_.type!=="attributes"||!_.attributeName)continue;const b=_.attributeName,p=this.getAttribute(b);if(b==="aria-label"){const $=(u.getAttribute("aria-label")||"").trim(),y=(p||$||(this.label.trim()===""?(this.icon||"").trim():"")).trim();y?m.setAttribute("aria-label",y):m.removeAttribute("aria-label"),u.removeAttribute("aria-label")}else(b==="aria-controls"||b==="aria-expanded")&&(p===null?m.removeAttribute(b):m.setAttribute(b,p),b==="aria-expanded"&&this.removeAttribute("aria-expanded"))}u.removeAttribute("aria-label"),u.removeAttribute("aria-controls"),u.removeAttribute("aria-expanded")}}),this.__ariaObserver.observe(this,{attributes:!0,attributeFilter:["aria-label","aria-controls","aria-expanded"]})}firstUpdated(){(this.type==="submit"||this.type==="reset")&&this.addEventListener("click",()=>{if(!this.disabled){const t=this.closest("form");t&&(this.type==="submit"&&t.requestSubmit(),this.type==="reset"&&t.reset())}}),this.__ensureDepsLoaded(),this.__syncAriaToInner()}updated(t){(t.has("variant")||t.has("icon")&&this.icon)&&this.__ensureDepsLoaded(),t.has("variant")&&this.__syncAriaToInner()}disconnectedCallback(){this.__ariaObserver?.disconnect(),super.disconnectedCallback()}static get styles(){return x`
3
3
  /* Gör hosten stretchbar i t.ex. flex/grid */
4
4
  :host {
5
5
  display: inline-flex;
@@ -58,64 +58,64 @@ import{_ as h}from"../../vendor/preload-helper.js";import{i as b,a as m,x as u,E
58
58
  }
59
59
  }
60
60
  */
61
- `}render(){const t=!!this.icon?.trim(),r=t?u`<md-icon slot="icon">${this.icon}</md-icon>`:e,i=e,n=this.label.trim()===""?this.icon:void 0;switch(this.variant){case"filled":return u`
61
+ `}render(){const t=!!this.icon?.trim(),e=t?h`<md-icon slot="icon">${this.icon}</md-icon>`:r,i=r,o=this.label.trim()===""?this.icon:void 0;switch(this.variant){case"filled":return h`
62
62
  <md-filled-button
63
63
  type=${this.type}
64
64
  variant=${i}
65
65
  ?trailing-icon=${this.trailingIcon}
66
66
  ?disabled=${this.disabled}
67
- aria-label=${n}
68
- href=${this.href||e}
69
- target=${this.target||e}
70
- rel=${this.rel||e}
67
+ aria-label=${o}
68
+ href=${this.href||r}
69
+ target=${this.target||r}
70
+ rel=${this.rel||r}
71
71
  >
72
- ${t&&!this.trailingIcon?r:e}
72
+ ${t&&!this.trailingIcon?e:r}
73
73
  ${this.label}
74
- ${t&&this.trailingIcon?r:e}
74
+ ${t&&this.trailingIcon?e:r}
75
75
  </md-filled-button>
76
- `;case"outlined":return u`
76
+ `;case"outlined":return h`
77
77
  <md-outlined-button
78
78
  type=${this.type}
79
79
  variant=${i}
80
80
  ?trailing-icon=${this.trailingIcon}
81
81
  ?disabled=${this.disabled}
82
- aria-label=${n}
83
- href=${this.href||e}
84
- target=${this.target||e}
85
- rel=${this.rel||e}
82
+ aria-label=${o}
83
+ href=${this.href||r}
84
+ target=${this.target||r}
85
+ rel=${this.rel||r}
86
86
  >
87
- ${t&&!this.trailingIcon?r:e}
87
+ ${t&&!this.trailingIcon?e:r}
88
88
  ${this.label}
89
- ${t&&this.trailingIcon?r:e}
89
+ ${t&&this.trailingIcon?e:r}
90
90
  </md-outlined-button>
91
- `;case"filled-tonal":return u`
91
+ `;case"filled-tonal":return h`
92
92
  <md-filled-tonal-button
93
93
  type=${this.type}
94
94
  variant=${i}
95
95
  ?trailing-icon=${this.trailingIcon}
96
96
  ?disabled=${this.disabled}
97
- aria-label=${n}
98
- href=${this.href||e}
99
- target=${this.target||e}
100
- rel=${this.rel||e}
97
+ aria-label=${o}
98
+ href=${this.href||r}
99
+ target=${this.target||r}
100
+ rel=${this.rel||r}
101
101
  >
102
- ${t&&!this.trailingIcon?r:e}
102
+ ${t&&!this.trailingIcon?e:r}
103
103
  ${this.label}
104
- ${t&&this.trailingIcon?r:e}
104
+ ${t&&this.trailingIcon?e:r}
105
105
  </md-filled-tonal-button>
106
- `;case"text":return u`
106
+ `;case"text":return h`
107
107
  <md-text-button
108
108
  type=${this.type}
109
109
  variant=${i}
110
110
  ?trailing-icon=${this.trailingIcon}
111
111
  ?disabled=${this.disabled}
112
- aria-label=${n}
113
- href=${this.href||e}
114
- target=${this.target||e}
115
- rel=${this.rel||e}
112
+ aria-label=${o}
113
+ href=${this.href||r}
114
+ target=${this.target||r}
115
+ rel=${this.rel||r}
116
116
  >
117
- ${t&&!this.trailingIcon?r:e}
117
+ ${t&&!this.trailingIcon?e:r}
118
118
  ${this.label}
119
- ${t&&this.trailingIcon?r:e}
119
+ ${t&&this.trailingIcon?e:r}
120
120
  </md-text-button>
121
- `;default:return u``}}};s([c({type:String,reflect:!0})],l.prototype,"variant",2);s([c({type:String,reflect:!0})],l.prototype,"type",2);s([c({type:String})],l.prototype,"label",2);s([c({type:Boolean,attribute:"trailing-icon"})],l.prototype,"trailingIcon",2);s([c({type:String})],l.prototype,"icon",2);s([c({type:Boolean,reflect:!0})],l.prototype,"disabled",2);s([c({type:String})],l.prototype,"href",2);s([c({type:String})],l.prototype,"target",2);s([c({type:String})],l.prototype,"rel",2);l=s([f("scb-button")],l);export{l as ScbButton};
121
+ `;default:return h``}}};l([c({type:String,reflect:!0})],n.prototype,"variant",2);l([c({type:String,reflect:!0})],n.prototype,"type",2);l([c({type:String})],n.prototype,"label",2);l([c({type:Boolean,attribute:"trailing-icon"})],n.prototype,"trailingIcon",2);l([c({type:String})],n.prototype,"icon",2);l([c({type:Boolean,reflect:!0})],n.prototype,"disabled",2);l([c({type:String})],n.prototype,"href",2);l([c({type:String})],n.prototype,"target",2);l([c({type:String})],n.prototype,"rel",2);n=l([I("scb-button")],n);export{n as ScbButton};
@@ -1,5 +1,5 @@
1
1
  const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["../../vendor/vendor-material.js","../../vendor/vendor.js"])))=>i.map(i=>d[i]);
2
- import{_ as h}from"../../vendor/preload-helper.js";import{a as p,n as a,i as _,x as n,t as u}from"../../vendor/vendor.js";(function(){try{var e=typeof globalThis<"u"?globalThis:window;if(!e.__scb_ce_guard_installed__){e.__scb_ce_guard_installed__=!0;var o=customElements.define.bind(customElements);customElements.define=function(r,l,s){try{customElements.get(r)||o(r,l,s)}catch(c){var d=String(c||"");if(d.indexOf("already been used")===-1&&d.indexOf("NotSupportedError")===-1)throw c}}}}catch{}})();var m=Object.defineProperty,f=Object.getOwnPropertyDescriptor,i=(e,o,r,l)=>{for(var s=l>1?void 0:l?f(o,r):o,d=e.length-1,c;d>=0;d--)(c=e[d])&&(s=(l?c(o,r,s):c(s))||s);return l&&s&&m(o,r,s),s};let t=class extends _{constructor(){super(...arguments),this.variant="assist",this.label="",this.icon="",this.disabled=!1,this.elevated=!1,this.removable=!1,this.selected=!1,this.__loadedVariants=new Set,this.__chipSetLoaded=!1,this.__iconLoaded=!1}updated(e){super.updated(e),(e.has("variant")||e.has("icon"))&&this.__ensureDepsLoaded()}firstUpdated(){this.__ensureDepsLoaded()}async __ensureDepsLoaded(){if(!this.__loadedVariants.has(this.variant)){switch(this.variant){case"assist":await h(()=>import("../../vendor/vendor-material.js").then(e=>e.j),__vite__mapDeps([0,1]),import.meta.url);break;case"filter":await h(()=>import("../../vendor/vendor-material.js").then(e=>e.k),__vite__mapDeps([0,1]),import.meta.url);break}this.__loadedVariants.add(this.variant)}!this._insideChipSet&&!this.__chipSetLoaded&&(await h(()=>import("../../vendor/vendor-material.js").then(e=>e.m),__vite__mapDeps([0,1]),import.meta.url),this.__chipSetLoaded=!0),this.icon&&!this.__iconLoaded&&(await h(()=>import("../../vendor/vendor-material.js").then(e=>e.i),__vite__mapDeps([0,1]),import.meta.url),this.__iconLoaded=!0)}get _insideChipSet(){return!!this.closest("md-chip-set")}render(){const e=this._renderChip();return this._insideChipSet?e:n`<md-chip-set>${e}</md-chip-set>`}_renderChip(){const e=this.icon?n`<md-icon slot="icon">${this.icon}</md-icon>`:null;switch(this.variant){case"assist":return n`
2
+ import{_ as h}from"../../vendor/preload-helper.js";import{a as p,n as a,i as _,x as n,t as u}from"../../vendor/vendor.js";(function(){try{var e=typeof globalThis<"u"?globalThis:window;if(!e.__scb_ce_guard_installed__){e.__scb_ce_guard_installed__=!0;var o=customElements.define.bind(customElements);customElements.define=function(r,l,s){try{customElements.get(r)||o(r,l,s)}catch(c){var d=String(c||"");if(d.indexOf("already been used")===-1&&d.indexOf("NotSupportedError")===-1)throw c}}}}catch{}})();var m=Object.defineProperty,f=Object.getOwnPropertyDescriptor,i=(e,o,r,l)=>{for(var s=l>1?void 0:l?f(o,r):o,d=e.length-1,c;d>=0;d--)(c=e[d])&&(s=(l?c(o,r,s):c(s))||s);return l&&s&&m(o,r,s),s};let t=class extends _{constructor(){super(...arguments),this.variant="assist",this.label="",this.icon="",this.disabled=!1,this.elevated=!1,this.removable=!1,this.selected=!1,this.__loadedVariants=new Set,this.__chipSetLoaded=!1,this.__iconLoaded=!1}updated(e){super.updated(e),(e.has("variant")||e.has("icon"))&&this.__ensureDepsLoaded()}firstUpdated(){this.__ensureDepsLoaded()}async __ensureDepsLoaded(){if(!this.__loadedVariants.has(this.variant)){switch(this.variant){case"assist":await h(()=>import("../../vendor/vendor-material.js").then(e=>e.j),__vite__mapDeps([0,1]),import.meta.url);break;case"filter":await h(()=>import("../../vendor/vendor-material.js").then(e=>e.k),__vite__mapDeps([0,1]),import.meta.url);break}this.__loadedVariants.add(this.variant)}!this._insideChipSet&&!this.__chipSetLoaded&&(await h(()=>import("../../vendor/vendor-material.js").then(e=>e.n),__vite__mapDeps([0,1]),import.meta.url),this.__chipSetLoaded=!0),this.icon&&!this.__iconLoaded&&(await h(()=>import("../../vendor/vendor-material.js").then(e=>e.i),__vite__mapDeps([0,1]),import.meta.url),this.__iconLoaded=!0)}get _insideChipSet(){return!!this.closest("md-chip-set")}render(){const e=this._renderChip();return this._insideChipSet?e:n`<md-chip-set>${e}</md-chip-set>`}_renderChip(){const e=this.icon?n`<md-icon slot="icon">${this.icon}</md-icon>`:null;switch(this.variant){case"assist":return n`
3
3
  <md-assist-chip
4
4
  label=${this.label}
5
5
  ?disabled=${this.disabled}
@@ -1,9 +1,10 @@
1
1
  const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["../../vendor/vendor-material.js","../../vendor/vendor.js","../scb-icon-button/scb-icon-button.js","../../vendor/preload-helper.js","../scb-tooltip/scb-tooltip.js","../scb-button/scb-button.js"])))=>i.map(i=>d[i]);
2
- import{_ as p}from"../../vendor/preload-helper.js";import{a as u,n as c,r as h,i as b,x as d,t as _}from"../../vendor/vendor.js";(function(){try{var e=typeof globalThis<"u"?globalThis:window;if(!e.__scb_ce_guard_installed__){e.__scb_ce_guard_installed__=!0;var t=customElements.define.bind(customElements);customElements.define=function(s,a,n){try{customElements.get(s)||t(s,a,n)}catch(l){var r=String(l||"");if(r.indexOf("already been used")===-1&&r.indexOf("NotSupportedError")===-1)throw l}}}}catch{}})();var f=Object.defineProperty,m=Object.getOwnPropertyDescriptor,i=(e,t,s,a)=>{for(var n=a>1?void 0:a?m(t,s):t,r=e.length-1,l;r>=0;r--)(l=e[r])&&(n=(a?l(t,s,n):l(n))||n);return a&&n&&f(t,s,n),n};let o=class extends b{constructor(){super(...arguments),this.label="",this.selected=!1,this.leadingIcon="",this.itemHref="",this.hasSlotContent=!1,this.expanded=!1,this.__submenuId=`sub-${Math.random().toString(36).slice(2)}`,this._toggleExpand=e=>{e&&e.stopPropagation(),this.hasSlotContent&&(this.expanded=!this.expanded)},this._onButtonClick=e=>{e.stopPropagation(),this._dispatchSelect(),this._toggleExpand()},this._onLinkClick=()=>{this._dispatchSelect()},this._onKeyDown=e=>{const t=Array.from(this.parentElement?.querySelectorAll("scb-drawer-item")||[]),s=t.indexOf(this);switch(e.key){case"ArrowDown":{e.preventDefault(),(t[s+1]||t[0]).shadowRoot?.querySelector(".scb-drawer-label-text")?.focus();break}case"ArrowUp":{e.preventDefault(),(t[s-1]||t[t.length-1]).shadowRoot?.querySelector(".scb-drawer-label-text")?.focus();break}case"Home":{e.preventDefault(),t[0].shadowRoot?.querySelector(".scb-drawer-label-text")?.focus();break}case"End":{e.preventDefault(),t[t.length-1].shadowRoot?.querySelector(".scb-drawer-label-text")?.focus();break}}}}async __ensureDepsLoaded(){o.__rippleLoaded||(await p(()=>import("../../vendor/vendor-material.js").then(e=>e.r),__vite__mapDeps([0,1]),import.meta.url),o.__rippleLoaded=!0),this.leadingIcon&&!o.__iconLoaded&&(await p(()=>import("../../vendor/vendor-material.js").then(e=>e.i),__vite__mapDeps([0,1]),import.meta.url),o.__iconLoaded=!0),this.hasSlotContent&&!o.__iconButtonLoaded&&(await p(()=>import("../scb-icon-button/scb-icon-button.js"),__vite__mapDeps([2,3,1,0,4,5]),import.meta.url),o.__iconButtonLoaded=!0)}_onSlotChange(e){const s=e.target.assignedElements({flatten:!0});this.hasSlotContent=s.length>0&&s.every(a=>a.tagName==="SCB-SUB-DRAWER")}_dispatchSelect(){this.dispatchEvent(new CustomEvent("scb-drawer-select",{bubbles:!0,composed:!0,detail:{item:this}}))}async firstUpdated(){const e=this.renderRoot.querySelector("slot");if(e){const t=e.assignedElements({flatten:!0});this.hasSlotContent=t.length>0&&t.every(s=>s.tagName==="SCB-SUB-DRAWER")}await this.__ensureDepsLoaded()}updated(e){e.has("leadingIcon")&&this.leadingIcon&&this.__ensureDepsLoaded(),e.has("hasSlotContent")&&this.hasSlotContent&&this.__ensureDepsLoaded()}render(){const e=!!this.leadingIcon,t=!!this.itemHref,s=this.hasSlotContent;return d`
2
+ import{_ as l}from"../../vendor/preload-helper.js";import{a as h,n as u,r as p,i as _,x as c,t as b}from"../../vendor/vendor.js";(function(){try{var e=typeof globalThis<"u"?globalThis:window;if(!e.__scb_ce_guard_installed__){e.__scb_ce_guard_installed__=!0;var t=customElements.define.bind(customElements);customElements.define=function(i,n,a){try{customElements.get(i)||t(i,n,a)}catch(d){var o=String(d||"");if(o.indexOf("already been used")===-1&&o.indexOf("NotSupportedError")===-1)throw d}}}}catch{}})();var m=Object.defineProperty,g=Object.getOwnPropertyDescriptor,r=(e,t,i,n)=>{for(var a=n>1?void 0:n?g(t,i):t,o=e.length-1,d;o>=0;o--)(d=e[o])&&(a=(n?d(t,i,a):d(a))||a);return n&&a&&m(t,i,a),a};let s=class extends _{constructor(){super(...arguments),this.label="",this.selected=!1,this.leadingIcon="",this.itemHref="",this.hasSlotContent=!1,this.expanded=!1,this.__submenuId=`sub-${Math.random().toString(36).slice(2)}`,this.__focusId=`f-${Math.random().toString(36).slice(2)}`,this._toggleExpand=e=>{e&&e.stopPropagation(),this.hasSlotContent&&this.__setExpanded(!this.expanded)},this._onButtonClick=e=>{e.stopPropagation(),this._dispatchSelect(),this._toggleExpand()},this._onLinkClick=()=>{this._dispatchSelect()},this.__onContentLoad=()=>{this.expanded&&this.__setSubmenuHeightForOpen()},this._onKeyDown=e=>{const t=Array.from(this.parentElement?.querySelectorAll("scb-drawer-item")||[]),i=t.indexOf(this);switch(e.key){case"ArrowDown":{e.preventDefault(),(t[i+1]||t[0]).shadowRoot?.querySelector(".scb-drawer-label-text")?.focus();break}case"ArrowUp":{e.preventDefault(),(t[i-1]||t[t.length-1]).shadowRoot?.querySelector(".scb-drawer-label-text")?.focus();break}case"Home":{e.preventDefault(),t[0].shadowRoot?.querySelector(".scb-drawer-label-text")?.focus();break}case"End":{e.preventDefault(),t[t.length-1].shadowRoot?.querySelector(".scb-drawer-label-text")?.focus();break}}}}get __submenuEl(){return this.renderRoot.querySelector(`#${this.__submenuId}`)}async __ensureDepsLoaded(){s.__rippleLoaded||(await l(()=>import("../../vendor/vendor-material.js").then(e=>e.r),__vite__mapDeps([0,1]),import.meta.url),s.__rippleLoaded=!0),s.__focusRingLoaded||(await l(()=>import("../../vendor/vendor-material.js").then(e=>e.m),__vite__mapDeps([0,1]),import.meta.url),s.__focusRingLoaded=!0),this.leadingIcon&&!s.__iconLoaded&&(await l(()=>import("../../vendor/vendor-material.js").then(e=>e.i),__vite__mapDeps([0,1]),import.meta.url),s.__iconLoaded=!0),this.hasSlotContent&&!s.__iconButtonLoaded&&(await l(()=>import("../scb-icon-button/scb-icon-button.js"),__vite__mapDeps([2,3,1,0,4,5]),import.meta.url),s.__iconButtonLoaded=!0)}_onSlotChange(e){const i=e.target.assignedElements({flatten:!0});this.hasSlotContent=i.length>0&&i.every(n=>n.tagName==="SCB-SUB-DRAWER"),this.expanded&&this.__setSubmenuHeightForOpen()}__setExpanded(e){this.hasSlotContent&&(this.expanded=e,this.dispatchEvent(new CustomEvent("scb-drawer-expand",{bubbles:!0,composed:!0,detail:{item:this,expanded:e}})))}_dispatchSelect(){this.dispatchEvent(new CustomEvent("scb-drawer-select",{bubbles:!0,composed:!0,detail:{item:this}}))}async firstUpdated(){const e=this.renderRoot.querySelector("slot");if(e){const i=e.assignedElements({flatten:!0});this.hasSlotContent=i.length>0&&i.every(n=>n.tagName==="SCB-SUB-DRAWER")}await this.__ensureDepsLoaded();const t=this.__submenuEl;t&&("ResizeObserver"in window&&(this.__ro=new ResizeObserver(()=>{this.expanded&&this.__setSubmenuHeightForOpen()}),this.__ro.observe(t)),t.addEventListener("load",this.__onContentLoad,!0))}disconnectedCallback(){this.__submenuEl?.removeEventListener("load",this.__onContentLoad,!0),this.__ro?.disconnect(),super.disconnectedCallback()}updated(e){if(e.has("leadingIcon")&&this.leadingIcon&&this.__ensureDepsLoaded(),e.has("hasSlotContent")&&this.hasSlotContent&&this.__ensureDepsLoaded(),e.has("expanded")){const t=e.get("expanded");this.__applyInert(),this.__animateSubmenu(t,this.expanded)}}__applyInert(){const e=this.__submenuEl;e&&(this.expanded?(e.removeAttribute("inert"),e.setAttribute("aria-hidden","false")):(e.setAttribute("inert",""),e.setAttribute("aria-hidden","true")))}__setSubmenuHeightForOpen(){const e=this.__submenuEl;e&&(e.style.maxHeight=`${e.scrollHeight}px`,setTimeout(()=>{this.expanded&&(e.style.maxHeight="unset")},160))}__animateSubmenu(e,t){const i=this.__submenuEl;if(!(!i||e===t))if(t)i.classList.add("expanded"),i.style.maxHeight="0px",requestAnimationFrame(()=>this.__setSubmenuHeightForOpen());else{const n=i.scrollHeight;i.style.maxHeight=`${n}px`,requestAnimationFrame(()=>{i.classList.remove("expanded"),i.style.maxHeight="0px"})}}render(){const e=!!this.leadingIcon,t=!!this.itemHref,i=this.hasSlotContent;return c`
3
3
  <div class="scb-drawer-item">
4
4
  <div class="scb-drawer-item-label" ?selected=${this.selected}>
5
- ${t?d`
5
+ ${t?c`
6
6
  <a
7
+ id=${this.__focusId}
7
8
  class="scb-drawer-label-text"
8
9
  aria-label="${this.label}"
9
10
  href="${this.itemHref}"
@@ -13,102 +14,129 @@ import{_ as p}from"../../vendor/preload-helper.js";import{a as u,n as c,r as h,i
13
14
  >
14
15
  <span class="scb-drawer-click ${e?"has-icon":""}">
15
16
  <md-ripple></md-ripple>
16
- ${e?d`<md-icon>${this.leadingIcon}</md-icon>`:""}
17
+ ${e?c`<md-icon>${this.leadingIcon}</md-icon>`:""}
17
18
  ${this.label}
18
19
  </span>
19
20
  </a>
20
- `:d`
21
+ <md-focus-ring for=${this.__focusId} inward></md-focus-ring>
22
+ `:c`
21
23
  <button
24
+ id=${this.__focusId}
22
25
  type="button"
23
26
  class="scb-drawer-label-text"
24
27
  @click=${this._onButtonClick}
25
28
  @keydown=${this._onKeyDown}
26
- ${s?"aria-expanded="+String(this.expanded):""}
27
- ${s?"aria-controls="+this.__submenuId:""}
29
+ ${i?"aria-expanded="+String(this.expanded):""}
30
+ ${i?"aria-controls="+this.__submenuId:""}
28
31
  >
29
32
  <span class="scb-drawer-click ${e?"has-icon":""}">
30
33
  <md-ripple></md-ripple>
31
- ${e?d`<md-icon>${this.leadingIcon}</md-icon>`:""}
34
+ ${e?c`<md-icon>${this.leadingIcon}</md-icon>`:""}
32
35
  ${this.label}
33
36
  </span>
34
37
  </button>
38
+ <md-focus-ring for=${this.__focusId} inward></md-focus-ring>
35
39
  `}
36
-
37
- ${s?d`
38
- <!-- Separat ikonknapp: presentational + ej tabbbar, ingen ARIA-state -->
40
+ ${i?c`
39
41
  <scb-icon-button
40
42
  icon="${this.expanded?"expand_less":"expand_more"}"
41
43
  role="presentation"
42
44
  tabindex="-1"
43
- @click=${a=>{a.stopPropagation(),this._toggleExpand(a)}}
45
+ @click=${n=>{n.stopPropagation(),this._toggleExpand(n)}}
44
46
  ></scb-icon-button>
45
47
  `:""}
46
48
  </div>
47
49
 
48
- <div id="${this.__submenuId}" class="submenu ${this.expanded?"expanded":""}">
50
+ <div
51
+ id="${this.__submenuId}"
52
+ class="submenu ${this.expanded?"expanded":""}"
53
+ role="region"
54
+ aria-hidden=${this.expanded?"false":"true"}
55
+ >
49
56
  <slot @slotchange=${this._onSlotChange}></slot>
50
57
  </div>
51
58
  </div>
52
- `}};o.__rippleLoaded=!1;o.__iconLoaded=!1;o.__iconButtonLoaded=!1;o.styles=u`
53
- .scb-drawer-item-label {
54
- display: flex;
55
- align-items: center;
56
- position: relative;
57
- }
59
+ `}};s.__rippleLoaded=!1;s.__iconLoaded=!1;s.__iconButtonLoaded=!1;s.__focusRingLoaded=!1;s.styles=h`
60
+ :host {
61
+ /* Animation tokens */
62
+ --scb-drawer-sub-transition-duration: var(--scb-motion-duration-quick, 150ms);
63
+ --scb-drawer-sub-transition-easing: var(--scb-motion-easing-standard, cubic-bezier(.69,.16,.2,.98));
64
+
65
+ --scb-drawer-item-padding-y: 14px;
66
+ --scb-drawer-item-padding-x: 20px;
67
+ --scb-drawer-item-padding-x-has-icon: var(--spacing-4, 12px);
68
+ --scb-drawer-item-radius: 28px;
69
+ --scb-drawer-item-gap: var(--spacing-4, 12px);
70
+ }
71
+
72
+ .scb-drawer-item-label {
73
+ display: flex;
74
+ align-items: center;
75
+ position: relative;
76
+ }
77
+
78
+ .scb-drawer-label-text {
79
+ width: 100%;
80
+ display: block;
81
+ background: transparent;
82
+ border: 0;
83
+ text-align: left;
84
+ font: inherit;
85
+ color: inherit;
86
+ text-decoration: none;
87
+ cursor: pointer;
88
+ padding: 0;
89
+ margin: 0;
90
+ appearance: none;
91
+ -webkit-appearance: none;
92
+ box-sizing: border-box;
93
+ /* UA-outline av – vi visar md-focus-ring istället */
94
+ outline: none;
95
+ -webkit-tap-highlight-color: transparent;
96
+ }
97
+ .scb-drawer-label-text:focus,
98
+ .scb-drawer-label-text:focus-visible { outline: none; }
99
+ .scb-drawer-label-text:-moz-focusring { outline: none; }
58
100
 
59
- .scb-drawer-label-text {
60
- width: 100%;
61
- display: block;
62
- background: transparent;
63
- border: 0;
64
- text-align: left;
65
- font: inherit;
66
- color: inherit;
67
- text-decoration: none;
68
- cursor: pointer;
69
- padding: 0;
70
- margin: 0;
71
- appearance: none;
72
- -webkit-appearance: none;
73
- box-sizing: border-box;
74
- }
101
+ .scb-drawer-click {
102
+ display: flex;
103
+ align-items: center;
104
+ gap: var(--scb-drawer-item-gap);
105
+ padding-block: var(--scb-drawer-item-padding-y);
106
+ padding-inline: var(--scb-drawer-item-padding-x);
107
+ border-radius: var(--scb-drawer-item-radius);
108
+ position: relative;
109
+ overflow: hidden;
110
+ color: var(--md-sys-color-on-surface);
111
+ }
112
+ .scb-drawer-click.has-icon {
113
+ /* När leading icon finns minskar inline-padding till 12px (spacing-4) */
114
+ padding-inline: var(--scb-drawer-item-padding-x-has-icon);
115
+ padding-block: var(--scb-drawer-item-padding-y);
116
+ }
75
117
 
76
- .scb-drawer-label-text:focus-visible {
77
- outline: 2px solid var(--md-focus-ring-color, var(--p-40));
78
- outline-offset: 2px;
79
- border-radius: 28px;
80
- box-shadow: none;
81
- }
118
+ /* Släck ripple-fokuslagret */
119
+ .scb-drawer-click md-ripple { --md-ripple-focus-opacity: 0; }
82
120
 
83
- .scb-drawer-click {
84
- display: flex;
85
- align-items: center;
86
- gap: 12px;
87
- padding: 14px 20px;
88
- border-radius: 28px;
89
- position: relative;
90
- overflow: hidden;
91
- color: var(--md-sys-color-on-surface);
92
- }
93
- .scb-drawer-click.has-icon { padding: 14px 12px; }
121
+ .scb-drawer-item-label[selected] .scb-drawer-click,
122
+ :host([selected]) .scb-drawer-click {
123
+ color: var(--md-sys-color-on-secondary-container);
124
+ background: var(--md-sys-color-secondary-container);
125
+ font-weight: 600;
126
+ }
94
127
 
95
- .scb-drawer-item-label[selected] .scb-drawer-click,
96
- :host([selected]) .scb-drawer-click {
97
- color: var(--md-sys-color-on-secondary-container);
98
- background: var(--md-sys-color-secondary-container);
99
- font-weight: 600;
100
- }
128
+ scb-icon-button {
129
+ margin-left: auto;
130
+ flex: 0 0 auto;
131
+ }
101
132
 
102
- scb-icon-button {
103
- margin-left: auto;
104
- flex: 0 0 auto;
105
- }
106
- .submenu {
107
- display: none;
108
- padding-left: 16px;
109
- }
110
- .submenu.expanded {
111
- display: block;
112
- padding-left: 16px;
113
- }
114
- `;i([c({type:String})],o.prototype,"label",2);i([c({type:Boolean,reflect:!0})],o.prototype,"selected",2);i([c({type:String,attribute:"leading-icon"})],o.prototype,"leadingIcon",2);i([c({type:String,attribute:"item-href"})],o.prototype,"itemHref",2);i([h()],o.prototype,"hasSlotContent",2);i([h()],o.prototype,"expanded",2);o=i([_("scb-drawer-item")],o);
133
+ .submenu {
134
+ padding-left: var(--spacing-5, 16px);
135
+ overflow: hidden;
136
+ max-height: 0;
137
+ opacity: 0;
138
+ transition: var(--scb-drawer-sub-transition-duration) var(--scb-drawer-sub-transition-easing);
139
+ will-change: max-height, opacity;
140
+ }
141
+ .submenu.expanded { opacity: 1; }
142
+ `;r([u({type:String})],s.prototype,"label",2);r([u({type:Boolean,reflect:!0})],s.prototype,"selected",2);r([u({type:String,attribute:"leading-icon"})],s.prototype,"leadingIcon",2);r([u({type:String,attribute:"item-href"})],s.prototype,"itemHref",2);r([p()],s.prototype,"hasSlotContent",2);r([p()],s.prototype,"expanded",2);s=r([b("scb-drawer-item")],s);
@@ -1,19 +1,37 @@
1
- import{a as o,n as b,i as _,x as l,t as p}from"../../vendor/vendor.js";import"../scb-divider/scb-divider.js";(function(){try{var n=typeof globalThis<"u"?globalThis:window;if(!n.__scb_ce_guard_installed__){n.__scb_ce_guard_installed__=!0;var s=customElements.define.bind(customElements);customElements.define=function(r,t,e){try{customElements.get(r)||s(r,t,e)}catch(c){var i=String(c||"");if(i.indexOf("already been used")===-1&&i.indexOf("NotSupportedError")===-1)throw c}}}}catch{}})();var f=Object.defineProperty,u=Object.getOwnPropertyDescriptor,d=(n,s,r,t)=>{for(var e=t>1?void 0:t?u(s,r):s,i=n.length-1,c;i>=0;i--)(c=n[i])&&(e=(t?c(s,r,e):c(e))||e);return t&&e&&f(s,r,e),e};let a=class extends _{constructor(){super(...arguments),this.label=""}render(){return l`
2
-
3
- <scb-divider></scb-divider>
4
- ${this.label?l`
5
- <div class="scb-drawer-section">
6
- <div class="scb-drawer-label">${this.label}</div>
7
- </div>`:""}
8
- `}};a.styles=o`
1
+ import{a as d,n as b,i as m,x as c,t as v}from"../../vendor/vendor.js";import"../scb-divider/scb-divider.js";(function(){try{var l=typeof globalThis<"u"?globalThis:window;if(!l.__scb_ce_guard_installed__){l.__scb_ce_guard_installed__=!0;var s=customElements.define.bind(customElements);customElements.define=function(r,i,e){try{customElements.get(r)||s(r,i,e)}catch(t){var a=String(t||"");if(a.indexOf("already been used")===-1&&a.indexOf("NotSupportedError")===-1)throw t}}}}catch{}})();var p=Object.defineProperty,f=Object.getOwnPropertyDescriptor,o=(l,s,r,i)=>{for(var e=i>1?void 0:i?f(s,r):s,a=l.length-1,t;a>=0;a--)(t=l[a])&&(e=(i?t(s,r,e):t(e))||e);return i&&e&&p(s,r,e),e};let n=class extends m{constructor(){super(...arguments),this.label=""}render(){return c`
2
+ <scb-divider></scb-divider>
3
+ ${this.label?c`
4
+ <div class="scb-drawer-section">
5
+ <div class="scb-drawer-label">${this.label}</div>
6
+ </div>
7
+ `:""}
8
+ `}};n.styles=d`
9
+ :host {
10
+ color: var(--md-sys-color-on-surface);
11
+ font-family: var(--brand-font);
12
+ }
13
+
9
14
  .scb-drawer-section {
10
15
  display: block;
11
16
  width: 100%;
12
- padding: 14px 12px;
17
+
18
+ padding-block: var(--scb-drawer-section-padding-block, 14px);
19
+ padding-inline: var(--spacing-4, 12px);
20
+ color: var(--md-sys-color-on-surface);
21
+ font-weight: var(--weight-semibold, 600);
22
+ }
23
+
24
+ .scb-drawer-label {
25
+ font-family: var(--brand-font);
26
+ font-size: var(--md-sys-typescale-label-medium-size);
27
+ line-height: var(--md-sys-typescale-label-medium-line-height);
28
+ font-weight: var(--md-sys-typescale-label-medium-weight, var(--weight-semibold));
29
+ letter-spacing: var(--md-sys-typescale-label-medium-tracking);
13
30
  color: var(--md-sys-color-on-surface);
14
- font-weight: 600;
15
31
  }
32
+
16
33
  scb-divider {
17
- margin: 4px 12px;
34
+ margin-block: var(--spacing-2, 4px);
35
+ margin-inline: var(--spacing-4, 12px);
18
36
  }
19
- `;d([b({type:String})],a.prototype,"label",2);a=d([p("scb-drawer-section")],a);
37
+ `;o([b({type:String})],n.prototype,"label",2);n=o([v("scb-drawer-section")],n);