scb-wc 0.1.78 → 0.1.80

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 (180) hide show
  1. package/README.md +41 -22
  2. package/all.js +0 -2
  3. package/index.js +88 -90
  4. package/mvc/components/all.js +0 -2
  5. package/mvc/components/scb-accordion/scb-accordion-item.js +3 -173
  6. package/mvc/components/scb-accordion/scb-accordion.js +4 -33
  7. package/mvc/components/scb-app-bar/scb-app-bar.js +2 -110
  8. package/mvc/components/scb-avatar/scb-avatar.js +2 -94
  9. package/mvc/components/scb-badge/scb-badge.js +2 -72
  10. package/mvc/components/scb-breadcrumb/scb-breadcrumb-item.js +2 -12
  11. package/mvc/components/scb-breadcrumb/scb-breadcrumb.js +4 -91
  12. package/mvc/components/scb-button/scb-button.js +47 -309
  13. package/mvc/components/scb-calendar/scb-calendar-event.js +2 -6
  14. package/mvc/components/scb-calendar/scb-calendar.js +6 -120
  15. package/mvc/components/scb-calendar-card/scb-calendar-card.js +21 -350
  16. package/mvc/components/scb-card/scb-card.js +54 -819
  17. package/mvc/components/scb-checkbox/scb-checkbox-group.js +3 -31
  18. package/mvc/components/scb-checkbox/scb-checkbox.js +5 -127
  19. package/mvc/components/scb-chip/scb-chip.js +2 -76
  20. package/mvc/components/scb-collapse/scb-collapse.js +2 -44
  21. package/mvc/components/scb-cookies-consent/scb-cookies-consent.js +7 -73
  22. package/mvc/components/scb-dialog/scb-dialog.js +2 -213
  23. package/mvc/components/scb-divider/scb-divider.js +1 -69
  24. package/mvc/components/scb-drawer/scb-drawer.js +6 -102
  25. package/mvc/components/scb-drop-zone/scb-drop-zone.js +2 -410
  26. package/mvc/components/scb-dropdown/scb-dropdown.js +17 -222
  27. package/mvc/components/scb-fab/scb-fab.js +7 -95
  28. package/mvc/components/scb-fact-card/scb-fact-card-content.js +2 -69
  29. package/mvc/components/scb-fact-card/scb-fact-card.js +2 -214
  30. package/mvc/components/scb-footer/scb-footer-section.js +1 -3
  31. package/mvc/components/scb-footer/scb-footer.js +3 -172
  32. package/mvc/components/scb-gallery-grid/scb-gallery-grid.js +2 -112
  33. package/mvc/components/scb-grid/scb-grid-item.js +1 -32
  34. package/mvc/components/scb-grid/scb-grid.js +1 -99
  35. package/mvc/components/scb-grid/scb-stack.js +1 -33
  36. package/mvc/components/scb-header/scb-header-menu-item.js +1 -5
  37. package/mvc/components/scb-header/scb-header-tab.js +1 -5
  38. package/mvc/components/scb-header/scb-header.js +75 -888
  39. package/mvc/components/scb-horizontal-scroller/scb-horizontal-scroller.js +43 -168
  40. package/mvc/components/scb-icon-button/scb-icon-button.js +59 -171
  41. package/mvc/components/scb-keyfigure-card/scb-keyfigure-card.js +17 -218
  42. package/mvc/components/scb-link/scb-link.js +4 -55
  43. package/mvc/components/scb-list/scb-list-item.js +23 -126
  44. package/mvc/components/scb-list/scb-list.js +5 -26
  45. package/mvc/components/scb-menu/scb-menu-item.js +16 -190
  46. package/mvc/components/scb-menu/scb-menu-section.js +4 -36
  47. package/mvc/components/scb-menu/scb-menu.js +5 -69
  48. package/mvc/components/scb-menu/scb-sub-menu.js +2 -7
  49. package/mvc/components/scb-nav/scb-nav-item.js +1 -28
  50. package/mvc/components/scb-nav/scb-nav.js +5 -98
  51. package/mvc/components/scb-notification-card/scb-notification-card.js +7 -364
  52. package/mvc/components/scb-options-menu/scb-options-menu-item.js +3 -50
  53. package/mvc/components/scb-options-menu/scb-options-menu.js +2 -82
  54. package/mvc/components/scb-options-menu/scb-options-sub-menu.js +2 -31
  55. package/mvc/components/scb-overlay/scb-overlay.js +3 -43
  56. package/mvc/components/scb-pagination/scb-pagination.js +19 -221
  57. package/mvc/components/scb-progress-indicator/scb-progress-indicator.js +2 -67
  58. package/mvc/components/scb-progress-stepper/scb-progress-step.js +4 -121
  59. package/mvc/components/scb-progress-stepper/scb-progress-stepper.js +2 -56
  60. package/mvc/components/scb-radio-button/scb-radio-button.js +5 -116
  61. package/mvc/components/scb-radio-button/scb-radio-group.js +2 -32
  62. package/mvc/components/scb-scrollspy/scb-scrollspy.js +2 -61
  63. package/mvc/components/scb-search/scb-search.js +5 -249
  64. package/mvc/components/scb-segmented-button/scb-segmented-button.js +1 -32
  65. package/mvc/components/scb-segmented-button/scb-segmented-item.js +2 -70
  66. package/mvc/components/scb-select/scb-select-option.js +2 -54
  67. package/mvc/components/scb-select/scb-select.js +4 -244
  68. package/mvc/components/scb-skeleton/scb-skeleton.js +2 -35
  69. package/mvc/components/scb-slider/scb-slider.js +5 -9
  70. package/mvc/components/scb-snackbar/scb-snackbar.js +9 -84
  71. package/mvc/components/scb-status-pill/scb-status-pill.js +2 -43
  72. package/mvc/components/scb-stepper/scb-step.js +8 -186
  73. package/mvc/components/scb-stepper/scb-stepper.js +2 -130
  74. package/mvc/components/scb-switch/scb-switch.js +4 -49
  75. package/mvc/components/scb-table/scb-table.js +2 -48
  76. package/mvc/components/scb-table-advanced/scb-table-advanced.js +2 -53
  77. package/mvc/components/scb-tabs/scb-primary-tab.js +2 -7
  78. package/mvc/components/scb-tabs/scb-secondary-tab.js +2 -7
  79. package/mvc/components/scb-tabs/scb-tabs.js +4 -31
  80. package/mvc/components/scb-textfield/scb-textfield.js +142 -388
  81. package/mvc/components/scb-toc/scb-toc-item.js +3 -251
  82. package/mvc/components/scb-toc/scb-toc.js +2 -16
  83. package/mvc/components/scb-tooltip/scb-tooltip.js +8 -155
  84. package/mvc/components/scb-viz/scb-viz.js +4 -619
  85. package/mvc/scb-wc-core.css +1 -1
  86. package/mvc/scb-wc-selfhost.css +1 -1
  87. package/mvc/scb-wc.css +1 -1
  88. package/mvc/vendor/assist-chip.js +3 -3
  89. package/mvc/vendor/chip-set.js +1 -1
  90. package/mvc/vendor/chip.js +2 -2
  91. package/mvc/vendor/elevation.js +2 -2
  92. package/mvc/vendor/filter-chip.js +1 -1
  93. package/mvc/vendor/focusable.js +1 -1
  94. package/mvc/vendor/form-associated.js +1 -1
  95. package/mvc/vendor/icon.js +2 -2
  96. package/mvc/vendor/lazy-focus-ring.js +2 -0
  97. package/mvc/vendor/lazy-ripple.js +2 -0
  98. package/mvc/vendor/md-focus-ring.js +2 -2
  99. package/mvc/vendor/ripple.js +2 -2
  100. package/mvc/vendor/scb-card-variants.internal.js +284 -0
  101. package/mvc/vendor/scb-chevron.js +10 -0
  102. package/mvc/vendor/scb-header-drawer.internal.js +71 -0
  103. package/mvc/vendor/shared-styles.js +1 -1
  104. package/mvc/vendor/tab-styles.js +3 -3
  105. package/mvc/vendor/validator.js +1 -1
  106. package/mvc/vendor/vendor.js +3 -4
  107. package/package.json +2 -2
  108. package/scb-accordion/scb-accordion-item.js +33 -32
  109. package/scb-app-bar/scb-app-bar.js +1 -1
  110. package/scb-button/scb-button.js +287 -259
  111. package/scb-calendar/scb-calendar.js +49 -49
  112. package/scb-calendar-card/scb-calendar-card.js +105 -59
  113. package/scb-card/scb-card-variants.internal.js +230 -0
  114. package/scb-card/scb-card.js +387 -528
  115. package/scb-checkbox/scb-checkbox.js +0 -1
  116. package/scb-chevron/scb-chevron.js +0 -1
  117. package/scb-components/scb-button/scb-button.d.ts +14 -2
  118. package/scb-components/scb-calendar/scb-calendar.d.ts +1 -0
  119. package/scb-components/scb-calendar-card/scb-calendar-card.d.ts +16 -4
  120. package/scb-components/scb-card/scb-card-variants.internal.d.ts +15 -0
  121. package/scb-components/scb-card/scb-card.d.ts +26 -9
  122. package/scb-components/scb-cookies-consent/scb-cookies-consent.d.ts +3 -0
  123. package/scb-components/scb-header/scb-header-drawer.internal.d.ts +31 -0
  124. package/scb-components/scb-header/scb-header.d.ts +1 -2
  125. package/scb-components/scb-horizontal-scroller/scb-horizontal-scroller.d.ts +6 -1
  126. package/scb-components/scb-icon-button/scb-icon-button.d.ts +28 -29
  127. package/scb-components/scb-keyfigure-card/scb-keyfigure-card.d.ts +13 -4
  128. package/scb-components/scb-list/scb-list-item.d.ts +20 -2
  129. package/scb-components/scb-list/scb-list.d.ts +1 -2
  130. package/scb-components/scb-nav/scb-nav.d.ts +2 -0
  131. package/scb-components/scb-segmented-button/scb-segmented-item.d.ts +1 -0
  132. package/scb-components/scb-select/scb-select-option.d.ts +2 -0
  133. package/scb-components/scb-toc/scb-toc-item.d.ts +1 -0
  134. package/scb-components/scb-tooltip/scb-tooltip.d.ts +2 -0
  135. package/scb-cookies-consent/scb-cookies-consent.js +43 -31
  136. package/scb-datepicker/scb-datepicker.js +27 -25
  137. package/scb-dialog/scb-dialog.js +1 -1
  138. package/scb-dropdown/scb-dropdown.js +29 -28
  139. package/scb-header/scb-header-drawer.internal.js +78 -0
  140. package/scb-header/scb-header.js +41 -89
  141. package/scb-horizontal-scroller/scb-horizontal-scroller.js +181 -88
  142. package/scb-icon-button/scb-icon-button.js +293 -205
  143. package/scb-keyfigure-card/scb-keyfigure-card.js +96 -43
  144. package/scb-list/scb-list-item.js +117 -52
  145. package/scb-list/scb-list.js +9 -9
  146. package/scb-nav/scb-nav.js +26 -23
  147. package/scb-notification-card/scb-notification-card.js +0 -2
  148. package/scb-options-menu/scb-options-menu-item.js +20 -20
  149. package/scb-pagination/scb-pagination.js +0 -1
  150. package/scb-progress-stepper/scb-progress-step.js +19 -17
  151. package/scb-radio-button/scb-radio-button.js +0 -1
  152. package/scb-search/scb-search.js +29 -28
  153. package/scb-segmented-button/scb-segmented-item.js +22 -19
  154. package/scb-select/scb-select-option.js +20 -14
  155. package/scb-select/scb-select.js +26 -26
  156. package/scb-stepper/scb-step.js +34 -31
  157. package/scb-textfield/scb-textfield.js +39 -39
  158. package/scb-toc/scb-toc-item.js +26 -26
  159. package/scb-tooltip/scb-tooltip.js +5 -4
  160. package/scb-viz/scb-viz.js +1 -1
  161. package/scb-wc-core.css +1 -1
  162. package/scb-wc-public-entry/index.d.ts +97 -0
  163. package/scb-wc-selfhost.css +1 -1
  164. package/scb-wc.bundle.js +1873 -1476
  165. package/scb-wc.css +1 -1
  166. package/scb-wc.d.ts +194 -198
  167. package/mvc/components/scb-chevron/scb-chevron.js +0 -41
  168. package/mvc/components/scb-datepicker/scb-datepicker.js +0 -296
  169. package/mvc/vendor/element-internals.js +0 -1
  170. package/mvc/vendor/filled-icon-button.js +0 -2
  171. package/mvc/vendor/filled-tonal-icon-button.js +0 -2
  172. package/mvc/vendor/form-label-activation.js +0 -1
  173. package/mvc/vendor/form-submitter.js +0 -1
  174. package/mvc/vendor/icon-button.js +0 -2
  175. package/mvc/vendor/list.js +0 -8
  176. package/mvc/vendor/outlined-icon-button.js +0 -2
  177. package/mvc/vendor/shared-styles2.js +0 -30
  178. package/scb-components/index.d.ts +0 -99
  179. package/scb-components/scb-chevron/scb-chevron.d.ts +0 -11
  180. package/scb-components/scb-datepicker/scb-datepicker.d.ts +0 -39
@@ -1,370 +1,41 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["../../vendor/icon.js","../../vendor/rolldown-runtime.js","../../vendor/vendor.js","../../vendor/vendor-lit.js","../../vendor/ripple.js","../../vendor/attachable-controller.js"])))=>i.map(i=>d[i]);
2
- import{_ as P,b as L,g as W,h as i,y as n}from"../../vendor/vendor.js";import"../../vendor/vendor-lit.js";import"../../vendor/md-focus-ring.js";import{t as a}from"../../vendor/decorate.js";import{n as I,t as h}from"../../vendor/assertClassBrand.js";import{t as H}from"../../vendor/preload-helper.js";(function(){try{var r=typeof globalThis<"u"?globalThis:window;if(!r.__scb_ce_guard_installed__){r.__scb_ce_guard_installed__=!0;var e=customElements.define.bind(customElements);customElements.define=function(s,l,c){try{customElements.get(s)||e(s,l,c)}catch(m){var g=String(m||"");if(g.indexOf("already been used")===-1&&g.indexOf("NotSupportedError")===-1)throw m}}}}catch{}})();var d,o,p,b={fromAttribute:r=>r??"",toAttribute:r=>typeof r!="string"||r.trim()===""?null:r},t=(d=new WeakSet,o=class extends P{constructor(...e){super(...e),I(this,d),this.variant="default",this.size="medium",this.date=null,this.direction="horizontal",this.title="",this.calendarCardTitle="",this.subtitle="",this.supportingText="",this.cardHref="",this.cardHrefNav="",this.showMedia=null,this.mediaWidth="",this.mediaHeight="",this.mediaAspect="",this.width="",this.maxWidth="",this.minWidth="",this.height="",this.maxHeight="",this.minHeight="",this.sizing="",this.spacing=void 0,this.spacingTop=void 0,this.spacingBottom=void 0,this.spacingLeft=void 0,this.spacingRight=void 0}__hasSlottedContent(e){return!!this.querySelector(`[slot="${e}"]`)}__getSlottedText(e){return this.querySelector(`[slot="${e}"]`)?.textContent?.trim()??""}async firstUpdated(){p.__iconLoaded||(await H(()=>import("../../vendor/icon.js").then(e=>e.t),__vite__mapDeps([0,1,2,3]),import.meta.url),p.__iconLoaded=!0),p.__rippleLoaded||(await H(()=>import("../../vendor/ripple.js").then(e=>e.t),__vite__mapDeps([4,1,2,5,3]),import.meta.url),p.__rippleLoaded=!0),this.__applyInnerSizing(),h(d,this,$).call(this)}render(){const e=this.variant?`${this.variant.toLowerCase()}`:"",s=this.direction?`${this.direction.toLowerCase()}`:"",l=this.cardHref?"clickable":"",c=this.__hasSlottedContent("heading"),g=this.__hasSlottedContent("subtitle"),m=this.__hasSlottedContent("supporting-text"),v=this.calendarCardTitle||this.title,y=this.subtitle,f=this.supportingText,u=c||!!v,x=g||!!y,T=m||!!f,{day:z,month:w}=h(d,this,A).call(this),_=this.mediaWidth&&this.mediaWidth.trim()!==""?this.mediaWidth:"",k=this.mediaHeight&&this.mediaHeight.trim()!==""?this.mediaHeight:"",S=this.mediaAspect&&this.mediaAspect.trim()!==""?this.mediaAspect:"",C=`${_?`inline-size:${_};`:""}${k?`block-size:${k};`:""}${S?`aspect-ratio:${S};`:""}`;return n`
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["../../vendor/lazy-focus-ring.js","../../vendor/rolldown-runtime.js","../../vendor/preload-helper.js","../../vendor/lazy-ripple.js"])))=>i.map(i=>d[i]);
2
+ import{h as T,m as C,p as a,v as c,y as P}from"../../vendor/vendor.js";import"../../vendor/vendor-lit.js";import{t as H}from"../../vendor/preload-helper.js";import{t as i}from"../../vendor/decorate.js";(function(){try{var l=typeof globalThis<"u"?globalThis:window;if(!l.__scb_ce_guard_installed__){l.__scb_ce_guard_installed__=!0;var e=customElements.define.bind(customElements);customElements.define=function(r,d,n){try{customElements.get(r)||e(r,d,n)}catch(o){var s=String(o||"");if(s.indexOf("already been used")===-1&&s.indexOf("NotSupportedError")===-1)throw o}}}}catch{}})();var h,L=new Intl.DateTimeFormat("sv-SE",{month:"short"}),p={fromAttribute:l=>l??"",toAttribute:l=>typeof l!="string"||l.trim()===""?null:l},g,m;function I(){return g??(g=H(()=>import("../../vendor/lazy-focus-ring.js").then(l=>l.i),__vite__mapDeps([0,1,2]),import.meta.url)),g}function S(){return m??(m=H(()=>import("../../vendor/lazy-ripple.js"),__vite__mapDeps([3,2]),import.meta.url)),m}var t=(h=class extends T{constructor(...e){super(...e),this.variant="default",this.size="medium",this.date=null,this.direction="horizontal",this.title="",this.calendarCardTitle="",this.subtitle="",this.supportingText="",this.cardHref="",this.cardHrefNav="",this.showMedia=null,this.mediaWidth="",this.mediaHeight="",this.mediaAspect="",this.width="",this.maxWidth="",this.minWidth="",this.height="",this.maxHeight="",this.minHeight="",this.sizing="",this.spacing=void 0,this.spacingTop=void 0,this.spacingBottom=void 0,this.spacingLeft=void 0,this.spacingRight=void 0,this.__focusRingRequested=!1,this.__focusRingLoaded=!1,this.__rippleRequested=!1,this.__rippleLoaded=!1,this.__pendingRippleClick=!1,this.__onPointerInteraction=r=>{this.__ensureRipple(r)},this.__ensureFocusRingOnFocusVisible=()=>{this.__focusRingLoaded||this.__focusRingRequested||(this.__focusRingRequested=!0,I().then(({ensureFocusRingReady:r})=>r()).then(()=>{this.__focusRingLoaded=!0,this.requestUpdate()}))}}__hasSlottedContent(e){return!!this.querySelector(`[slot="${e}"]`)}__getSlottedText(e){return this.querySelector(`[slot="${e}"]`)?.textContent?.trim()??""}get __resolvedTitle(){return this.__getSlottedText("heading")||this.calendarCardTitle||this.title}get __resolvedSubtitle(){return this.__getSlottedText("subtitle")||this.subtitle}get __resolvedLabel(){return this.__resolvedTitle||this.__resolvedSubtitle||"Kalenderkort"}firstUpdated(){this.__applyInnerSizing(),this.__applySpacing()}__ensureRipple(e){if(this.cardHref){if(e&&(this.__pendingRippleEvent=e),this.__rippleLoaded){this.__syncRipple();return}this.__rippleRequested||(this.__rippleRequested=!0,S().then(({ensureRippleReady:r})=>r()).then(()=>{this.__rippleLoaded=!0,this.requestUpdate(),this.updateComplete.then(()=>this.__syncRipple())}))}}async __syncRipple(){const e=this.renderRoot.querySelector("md-ripple"),r=this.renderRoot.querySelector(".calendar-card"),d=this.__pendingRippleEvent,n=this.__pendingRippleClick;this.__pendingRippleEvent=void 0,this.__pendingRippleClick=!1;const{syncRippleToControl:s}=await S();await s(e,r,d,n)}render(){const e=this.variant?`${this.variant.toLowerCase()}`:"",r=this.direction?`${this.direction.toLowerCase()}`:"",d=this.cardHref?"clickable":"",n=this.__hasSlottedContent("heading"),s=this.__hasSlottedContent("subtitle"),o=this.__hasSlottedContent("supporting-text"),b=this.calendarCardTitle||this.title,u=this.subtitle,v=this.supportingText,f=n||!!b,y=s||!!u,R=o||!!v,{day:x,month:_}=this.__getDateParts(),z=this.mediaWidth&&this.mediaWidth.trim()!==""?this.mediaWidth:"",w=this.mediaHeight&&this.mediaHeight.trim()!==""?this.mediaHeight:"",k=this.mediaAspect&&this.mediaAspect.trim()!==""?this.mediaAspect:"",$=`${z?`inline-size:${z};`:""}${w?`block-size:${w};`:""}${k?`aspect-ratio:${k};`:""}`;return c`
3
3
  <div
4
- class="calendar-card ${s} ${l} ${e}"
4
+ class="calendar-card ${r} ${d} ${e}"
5
5
  role="${this.cardHref?"link":"group"}"
6
- aria-label="${E.call(h(d,this))}"
6
+ aria-label="${this.__resolvedLabel}"
7
7
  tabindex="${this.cardHref?"0":"-1"}"
8
8
  @click=${this.cardHref?this._handleHrefNavigation:null}
9
9
  @keydown=${this.cardHref?this._onKeyDown:null}
10
- style="cursor: ${this.cardHref?"pointer":"default"};"
10
+ @focusin=${this.cardHref?this.__ensureFocusRingOnFocusVisible:null}
11
+ @pointerenter=${this.cardHref?this.__onPointerInteraction:null}
12
+ @pointerdown=${this.cardHref?this.__onPointerInteraction:null}
11
13
  >
12
- ${this.cardHref?n`<md-ripple></md-ripple>`:""}
13
- ${this.showMedia?n`
14
- <div class="media" style="${C}" aria-label="Datum: ${z} ${w}">
15
- <div class="day">${z}</div>
16
- <div class="month">${w}</div>
14
+ ${this.cardHref&&this.__rippleLoaded?c`<md-ripple></md-ripple>`:""}
15
+ ${this.showMedia?c`
16
+ <div class="media" style="${$}" aria-label="Datum: ${x} ${_}">
17
+ <div class="day">${x}</div>
18
+ <div class="month">${_}</div>
17
19
  </div>
18
20
  `:""}
19
21
  <div class="container">
20
- ${u||x?n`
22
+ ${f||y?c`
21
23
  <div class="header-container">
22
- ${u?n`
24
+ ${f?c`
23
25
  <div class="title-container">
24
- <div class="title">${c?n`<slot name="heading"></slot>`:v}</div>
25
- ${this.cardHref?n`<div class="icon-container"><md-icon>arrow_forward</md-icon></div>`:""}
26
+ <div class="title">${n?c`<slot name="heading"></slot>`:b}</div>
27
+ ${this.cardHref?c`<div class="icon-container"><md-icon class="calendar-card-icon" aria-hidden="true">arrow_forward</md-icon></div>`:""}
26
28
  </div>
27
29
  `:""}
28
- ${x?n`<div class="subtitle">${g?n`<slot name="subtitle"></slot>`:y}</div>`:""}
30
+ ${y?c`<div class="subtitle">${s?c`<slot name="subtitle"></slot>`:u}</div>`:""}
29
31
  </div>
30
32
  `:""}
31
- ${T?n`
33
+ ${R?c`
32
34
  <div class="supporting-text">
33
- ${m?n`<slot name="supporting-text"></slot>`:f}
35
+ ${o?c`<slot name="supporting-text"></slot>`:v}
34
36
  </div>
35
37
  `:""}
36
38
  </div>
37
39
  </div>
38
- ${this.cardHref?n`<md-focus-ring></md-focus-ring>`:""}
39
- `}__applyInnerSizing(){const e=this.renderRoot.querySelector(".calendar-card");e&&(this.width&&this.width.trim()!==""?(e.style.inlineSize="100%",e.style.maxInlineSize="100%"):(e.style.removeProperty("inline-size"),e.style.removeProperty("max-inline-size")),this.height&&this.height.trim()!==""||this.sizing==="stretch"?e.style.blockSize="100%":e.style.removeProperty("block-size"),this.maxHeight&&this.maxHeight.trim()!==""?e.style.maxBlockSize="100%":e.style.removeProperty("max-block-size"))}_onKeyDown(e){(e.key==="Enter"||e.key===" ")&&this.cardHref&&(window.open(this.cardHref,"_self"),e.preventDefault())}_handleHrefNavigation(){this.cardHref&&(this.cardHrefNav==="tab"?window.open(this.cardHref,"_blank"):this.cardHrefNav==="window"?window.open(this.cardHref,"_blank","noopener,noreferrer,width=800,height=600"):window.open(this.cardHref,"_self"))}mapSpacingToken(e){if(!e)return;const s=String(e).trim();if(s)return/^\d+$/.test(s)?`var(--spacing-${Math.max(0,Math.min(14,parseInt(s,10)))})`:s}updated(e){e.has("width")&&(this.width?this.style.inlineSize=this.width:this.style.removeProperty("inline-size")),e.has("maxWidth")&&(this.maxWidth?this.style.maxInlineSize=this.maxWidth:this.style.removeProperty("max-inline-size")),e.has("minWidth")&&(this.minWidth?this.style.minInlineSize=this.minWidth:this.style.removeProperty("min-inline-size")),e.has("height")&&(this.height?this.style.blockSize=this.height:this.style.removeProperty("block-size")),e.has("maxHeight")&&(this.maxHeight?this.style.maxBlockSize=this.maxHeight:this.style.removeProperty("max-block-size")),e.has("minHeight")&&(this.minHeight?this.style.minBlockSize=this.minHeight:this.style.removeProperty("min-block-size")),(e.has("width")||e.has("height")||e.has("maxHeight")||e.has("sizing"))&&this.__applyInnerSizing(),(e.has("spacing")||e.has("spacingTop")||e.has("spacingBottom")||e.has("spacingLeft")||e.has("spacingRight"))&&h(d,this,$).call(this)}},p=o,o.__iconLoaded=!1,o.__rippleLoaded=!1,o.styles=L`
40
- :host {
41
- display: block;
42
- position: relative;
43
- box-sizing: border-box;
44
- inline-size: 100%;
45
- min-inline-size: 0;
46
- padding: var(--scb-calendar-card-focus-ring-gap, 4px);
47
- margin-block-start: var(--scb-calendar-card-spacing-block-start, 0);
48
- margin-block-end: var(--scb-calendar-card-spacing-block-end, 0);
49
- margin-inline-start: var(--scb-calendar-card-spacing-inline-start, 0);
50
- margin-inline-end: var(--scb-calendar-card-spacing-inline-end, 0);
51
-
52
- --scb-calendar-card-padding: var(--spacing-spacing-7, 24px);
53
- --scb-calendar-card-gap: var(--spacing-spacing-4, 12px);
54
- --scb-calendar-card-horizontal-gap: var(--spacing-spacing-6, 20px);
55
- --scb-calendar-card-horizontal-min-block-size: 112px;
56
-
57
- --scb-calendar-card-media-size: var(--spacing-spacing-11, 64px);
58
- --scb-calendar-card-media-gap: var(--spacing-spacing-2, 4px);
59
- --scb-calendar-card-day-size: var(--scale-07, 28px);
60
- --scb-calendar-card-day-letter-spacing: -0.6px;
61
- --scb-calendar-card-month-size: var(--scale-02, 14px);
62
-
63
- --scb-calendar-card-content-gap: var(--spacing-spacing-4, 12px);
64
- --scb-calendar-card-header-gap: var(--spacing-spacing-2, 4px);
65
- --scb-calendar-card-title-min-block-size: 32px;
66
- --scb-calendar-card-icon-size: 20px;
67
-
68
- --scb-calendar-card-title-font-size: var(--md-sys-typescale-headline-small-size, 24px);
69
- --scb-calendar-card-title-line-height: var(--md-sys-typescale-headline-small-line-height2, 30px);
70
- --scb-calendar-card-title-letter-spacing: var(--md-sys-typescale-headline-small-tracking, -0.6px);
71
-
72
- --scb-calendar-card-subtitle-font-size: var(--md-sys-typescale-title-medium-size, 18px);
73
- --scb-calendar-card-subtitle-line-height: var(--md-sys-typescale-title-medium-line-height, 26px);
74
- --scb-calendar-card-subtitle-letter-spacing: var(--md-sys-typescale-title-medium-tracking, -0.3px);
75
-
76
- --scb-calendar-card-supporting-font-size: var(--md-sys-typescale-body-medium-size, 16px);
77
- --scb-calendar-card-supporting-line-height: var(--md-sys-typescale-body-medium-line-height, 24px);
78
- --scb-calendar-card-supporting-letter-spacing: var(--md-sys-typescale-body-medium-tracking, -0.15px);
79
- }
80
-
81
- :host([size='medium']) {
82
- --scb-calendar-card-padding: var(--spacing-spacing-6, 20px);
83
- --scb-calendar-card-gap: var(--spacing-spacing-3, 8px);
84
- --scb-calendar-card-horizontal-gap: var(--spacing-spacing-5, 16px);
85
- --scb-calendar-card-horizontal-min-block-size: 96px;
86
-
87
- --scb-calendar-card-media-size: var(--spacing-spacing-10, 56px);
88
- --scb-calendar-card-day-size: var(--scale-06, 24px);
89
- --scb-calendar-card-day-letter-spacing: -0.4px;
90
- --scb-calendar-card-month-size: var(--scale-01, 12px);
91
-
92
- --scb-calendar-card-content-gap: var(--spacing-spacing-3, 8px);
93
- --scb-calendar-card-header-gap: var(--spacing-spacing-1, 2px);
94
- --scb-calendar-card-title-min-block-size: 28px;
95
-
96
- --scb-calendar-card-title-font-size: var(--md-sys-typescale-title-medium-size, 18px);
97
- --scb-calendar-card-title-line-height: var(--md-sys-typescale-title-medium-line-height, 26px);
98
- --scb-calendar-card-title-letter-spacing: var(--md-sys-typescale-title-medium-tracking, -0.3px);
99
-
100
- --scb-calendar-card-subtitle-font-size: var(--md-sys-typescale-title-small-size, 16px);
101
- --scb-calendar-card-subtitle-line-height: var(--md-sys-typescale-title-small-line-height, 24px);
102
- --scb-calendar-card-subtitle-letter-spacing: var(--md-sys-typescale-title-small-tracking, -0.2px);
103
-
104
- --scb-calendar-card-supporting-font-size: var(--md-sys-typescale-body-medium-size, 16px);
105
- --scb-calendar-card-supporting-line-height: var(--md-sys-typescale-body-medium-line-height, 24px);
106
- --scb-calendar-card-supporting-letter-spacing: var(--md-sys-typescale-body-medium-tracking, -0.15px);
107
- }
108
-
109
- :host([size='small']) {
110
- --scb-calendar-card-padding: var(--spacing-spacing-5, 16px);
111
- --scb-calendar-card-gap: var(--spacing-spacing-3, 8px);
112
- --scb-calendar-card-horizontal-gap: var(--spacing-spacing-4, 12px);
113
- --scb-calendar-card-horizontal-min-block-size: 84px;
114
-
115
- --scb-calendar-card-media-size: var(--spacing-spacing-9, 48px);
116
- --scb-calendar-card-day-size: var(--scale-05, 20px);
117
- --scb-calendar-card-day-letter-spacing: -0.3px;
118
- --scb-calendar-card-month-size: var(--scale-01, 12px);
119
-
120
- --scb-calendar-card-content-gap: var(--spacing-spacing-2, 4px);
121
- --scb-calendar-card-header-gap: var(--spacing-spacing-1, 2px);
122
- --scb-calendar-card-title-min-block-size: 24px;
123
- --scb-calendar-card-icon-size: 18px;
124
-
125
- --scb-calendar-card-title-font-size: var(--md-sys-typescale-title-small-size, 16px);
126
- --scb-calendar-card-title-line-height: var(--md-sys-typescale-title-small-line-height, 24px);
127
- --scb-calendar-card-title-letter-spacing: var(--md-sys-typescale-title-small-tracking, -0.2px);
128
-
129
- --scb-calendar-card-subtitle-font-size: var(--md-sys-typescale-body-medium-size, 16px);
130
- --scb-calendar-card-subtitle-line-height: var(--md-sys-typescale-body-medium-line-height, 24px);
131
- --scb-calendar-card-subtitle-letter-spacing: var(--md-sys-typescale-body-medium-tracking, -0.15px);
132
-
133
- --scb-calendar-card-supporting-font-size: var(--md-sys-typescale-body-small-size, 14px);
134
- --scb-calendar-card-supporting-line-height: var(--md-sys-typescale-body-small-line-height, 20px);
135
- --scb-calendar-card-supporting-letter-spacing: var(--md-sys-typescale-body-small-tracking, -0.1px);
136
- }
137
-
138
- :host([sizing='stretch']) {
139
- inline-size: 100%;
140
- block-size: 100%;
141
- max-inline-size: none;
142
- }
143
-
144
- :host([sizing='content-width']) {
145
- display: inline-block;
146
- inline-size: auto;
147
- block-size: auto;
148
- }
149
- :host([sizing='content-width']) .calendar-card {
150
- inline-size: max-content;
151
- }
152
-
153
- :host([sizing='content-height']) {
154
- inline-size: 100%;
155
- block-size: auto;
156
- max-inline-size: none;
157
- }
158
-
159
- md-focus-ring {
160
- position: absolute;
161
- inset: 0;
162
- pointer-events: none;
163
- display: none;
164
- border-radius: var(--scb-calendar-card-focus-ring-radius, var(--radius-large, 16px));
165
- }
166
- .calendar-card:focus-visible + md-focus-ring {
167
- display: block;
168
- }
169
-
170
- .calendar-card {
171
- box-sizing: border-box;
172
- overflow: hidden;
173
-
174
- position: relative;
175
- display: flex;
176
- color: var(--md-sys-color-on-surface, #0f0865);
177
- font-family: var(--brand-font, var(--brand, "Inter"), sans-serif);
178
- font-style: normal;
179
- flex-direction: column;
180
- align-items: flex-start;
181
- gap: var(--scb-calendar-card-gap);
182
- align-self: stretch;
183
- cursor: pointer;
184
- transition:
185
- box-shadow 0.18s ease,
186
- transform 0.18s ease,
187
- background-color 0.18s ease,
188
- border-color 0.18s ease;
189
-
190
- inline-size: 100%;
191
- max-inline-size: 100%;
192
- }
193
-
194
- /* Lås standard till proportionella siffror i kortet */
195
- .calendar-card,
196
- .calendar-card .title,
197
- .calendar-card .subtitle,
198
- .calendar-card .supporting-text {
199
- font-variant-numeric: proportional-nums;
200
- font-feature-settings: 'tnum' 0, 'pnum' 1;
201
- }
202
-
203
- .calendar-card:focus,
204
- .calendar-card:focus-visible {
205
- outline: none;
206
- }
207
-
208
- .calendar-card.horizontal {
209
- flex-direction: row;
210
- align-items: flex-start;
211
- max-width: none;
212
- width: 100%;
213
- gap: var(--scb-calendar-card-horizontal-gap);
214
- min-block-size: var(--scb-calendar-card-horizontal-min-block-size);
215
- }
216
-
217
- .calendar-card.outlined {
218
- border-radius: var(--radius-large, 16px);
219
- border: 1px solid var(--md-sys-color-outline-variant, #ccc);
220
- background: var(--md-sys-color-surface, #fff);
221
- padding: var(--scb-calendar-card-padding);
222
- }
223
-
224
- .calendar-card.filled {
225
- border-radius: var(--radius-large, 16px);
226
- background: var(--md-sys-color-surface-dim, #f9f8ef);
227
- padding: var(--scb-calendar-card-padding);
228
- }
229
-
230
- .calendar-card.filled .media {
231
- background: var(--md-sys-color-surface, #fff);
232
- }
233
-
234
- md-ripple {
235
- border-radius: var(--radius-l, 16px);
236
- }
237
-
238
- .media {
239
- display: flex;
240
- width: var(--scb-calendar-card-media-size);
241
- min-width: var(--scb-calendar-card-media-size);
242
- max-width: var(--scb-calendar-card-media-size);
243
- height: var(--scb-calendar-card-media-size);
244
- padding: var(--spacing-spacing-0, 0) 0;
245
- flex-direction: column;
246
- justify-content: center;
247
- align-items: center;
248
- gap: var(--scb-calendar-card-media-gap);
249
- border-radius: var(--md-sys-shape-corner-small);
250
- background: var(--md-sys-color-surface-dim, #f9f8ef);
251
- }
252
-
253
- .calendar-card.horizontal .media {
254
- align-self: flex-start;
255
- }
256
-
257
- .media .day {
258
- font-size: var(--scb-calendar-card-day-size);
259
- font-weight: var(--weight-bold, 700);
260
- line-height: 100%;
261
- letter-spacing: var(--scb-calendar-card-day-letter-spacing);
262
- font-variant-numeric: tabular-nums;
263
- }
264
-
265
- .media .month {
266
- font-size: var(--scb-calendar-card-month-size);
267
- font-weight: var(--weight-regular, 400);
268
- line-height: 100%;
269
- }
270
-
271
- .container {
272
- flex: 1 1 auto;
273
- min-width: 0;
274
- display: flex;
275
- flex-direction: column;
276
- gap: var(--scb-calendar-card-content-gap);
277
- width: 100%;
278
- align-self: flex-start;
279
- }
280
-
281
- .header-container {
282
- display: flex;
283
- flex-direction: column;
284
- gap: var(--scb-calendar-card-header-gap);
285
- }
286
-
287
- .title-container {
288
- width: 100%;
289
- flex: 0 0 auto;
290
- display: flex;
291
- align-items: center;
292
- gap: var(--spacing-spacing-3, 8px);
293
- color: inherit;
294
- text-decoration: none;
295
- min-block-size: var(--scb-calendar-card-title-min-block-size);
296
- }
297
-
298
- .title {
299
- font-family: var(--brand-font, var(--brand, "Inter"), sans-serif);
300
- font-size: var(--scb-calendar-card-title-font-size);
301
- font-weight: var(--weight-bold, 700);
302
- line-height: var(--scb-calendar-card-title-line-height);
303
- letter-spacing: var(--scb-calendar-card-title-letter-spacing);
304
- flex: 1 1 auto;
305
- min-inline-size: 0;
306
- white-space: normal;
307
- word-break: normal;
308
- overflow-wrap: break-word;
309
- hyphens: auto;
310
- overflow: visible;
311
- text-overflow: clip;
312
- }
313
-
314
- .title-container md-icon {
315
- inline-size: var(--scb-calendar-card-icon-size);
316
- block-size: var(--scb-calendar-card-icon-size);
317
- flex: 0 0 auto;
318
- }
319
-
320
- .icon-container{
321
- display: flex;
322
- width: var(--spacing-spacing-7, 24px);
323
- height: var(--spacing-spacing-7, 24px);
324
- align-items: center;
325
- justify-content: center;
326
- }
327
-
328
- .subtitle {
329
- font-family: var(--brand-font, var(--brand, "Inter"), sans-serif);
330
- font-size: var(--scb-calendar-card-subtitle-font-size);
331
- font-weight: var(--weight-semibold, 600);
332
- line-height: var(--scb-calendar-card-subtitle-line-height);
333
- letter-spacing: var(--scb-calendar-card-subtitle-letter-spacing);
334
- white-space: normal;
335
- word-break: normal;
336
- overflow-wrap: break-word;
337
- hyphens: manual;
338
- overflow: visible;
339
- text-overflow: clip;
340
- }
341
-
342
- .supporting-text {
343
- font-family: var(--brand-font, var(--brand, "Inter"), sans-serif);
344
- font-size: var(--scb-calendar-card-supporting-font-size);
345
- font-weight: var(--weight-regular, 400);
346
- line-height: var(--scb-calendar-card-supporting-line-height);
347
- letter-spacing: var(--scb-calendar-card-supporting-letter-spacing);
348
- white-space: normal;
349
- word-break: normal;
350
- overflow-wrap: break-word;
351
- hyphens: manual;
352
- overflow: visible;
353
- text-overflow: clip;
354
- }
355
-
356
- .title ::slotted(*),
357
- .subtitle ::slotted(*),
358
- .supporting-text ::slotted(*) {
359
- margin: 0;
360
- color: inherit;
361
- font: inherit;
362
- letter-spacing: inherit;
363
- }
364
-
365
- .supporting-text ::slotted(scb-link) {
366
- --scb-link-font-size: var(--scb-calendar-card-supporting-font-size);
367
- --scb-link-line-height: var(--scb-calendar-card-supporting-line-height);
368
- --scb-link-letter-spacing: var(--scb-calendar-card-supporting-letter-spacing);
369
- }
370
- `,o);function B(){return this.__getSlottedText("heading")||this.calendarCardTitle||this.title}function D(){return this.__getSlottedText("subtitle")||this.subtitle}function E(){return B.call(h(d,this))||D.call(h(d,this))||"Kalenderkort"}function A(){const r={day:1,month:"Jan"};if(!this.date)return r;const e=this.date instanceof Date?this.date:(()=>{const c=new Date(String(this.date));return Number.isNaN(c.getTime())?null:c})();if(!e)return r;const s=e.getDate(),l=new Intl.DateTimeFormat("sv-SE",{month:"short"}).format(e).replace(".","").trim();return{day:s,month:l.charAt(0).toUpperCase()+l.slice(1)}}function $(){const r=this.mapSpacingToken(this.spacing),e=this.mapSpacingToken(this.spacingTop)??r,s=this.mapSpacingToken(this.spacingBottom)??r,l=this.mapSpacingToken(this.spacingLeft),c=this.mapSpacingToken(this.spacingRight);e?this.style.setProperty("--scb-calendar-card-spacing-block-start",e):this.style.removeProperty("--scb-calendar-card-spacing-block-start"),s?this.style.setProperty("--scb-calendar-card-spacing-block-end",s):this.style.removeProperty("--scb-calendar-card-spacing-block-end"),l?this.style.setProperty("--scb-calendar-card-spacing-inline-start",l):this.style.removeProperty("--scb-calendar-card-spacing-inline-start"),c?this.style.setProperty("--scb-calendar-card-spacing-inline-end",c):this.style.removeProperty("--scb-calendar-card-spacing-inline-end")}a([i({type:String,reflect:!0})],t.prototype,"variant",void 0);a([i({type:String,reflect:!0})],t.prototype,"size",void 0);a([i({type:String,attribute:"date"})],t.prototype,"date",void 0);a([i({type:String,reflect:!0})],t.prototype,"direction",void 0);a([i({type:String,reflect:!0,converter:b})],t.prototype,"title",void 0);a([i({type:String,attribute:"calendar-card-title",reflect:!0,converter:b})],t.prototype,"calendarCardTitle",void 0);a([i({type:String,reflect:!0,converter:b})],t.prototype,"subtitle",void 0);a([i({type:String,attribute:"supporting-text",reflect:!0,converter:b})],t.prototype,"supportingText",void 0);a([i({type:String,attribute:"card-href"})],t.prototype,"cardHref",void 0);a([i({type:String,attribute:"card-href-nav"})],t.prototype,"cardHrefNav",void 0);a([i({type:Boolean,reflect:!0,attribute:"show-media"})],t.prototype,"showMedia",void 0);a([i({type:String,attribute:"media-width"})],t.prototype,"mediaWidth",void 0);a([i({type:String,attribute:"media-height"})],t.prototype,"mediaHeight",void 0);a([i({type:String,attribute:"media-aspect"})],t.prototype,"mediaAspect",void 0);a([i({type:String,reflect:!0})],t.prototype,"width",void 0);a([i({type:String,reflect:!0,attribute:"max-width"})],t.prototype,"maxWidth",void 0);a([i({type:String,attribute:"min-width"})],t.prototype,"minWidth",void 0);a([i({type:String,reflect:!0})],t.prototype,"height",void 0);a([i({type:String,reflect:!0,attribute:"max-height"})],t.prototype,"maxHeight",void 0);a([i({type:String,attribute:"min-height"})],t.prototype,"minHeight",void 0);a([i({type:String,reflect:!0,converter:b})],t.prototype,"sizing",void 0);a([i({type:String,reflect:!0})],t.prototype,"spacing",void 0);a([i({type:String,attribute:"spacing-top",reflect:!0})],t.prototype,"spacingTop",void 0);a([i({type:String,attribute:"spacing-bottom",reflect:!0})],t.prototype,"spacingBottom",void 0);a([i({type:String,attribute:"spacing-left",reflect:!0})],t.prototype,"spacingLeft",void 0);a([i({type:String,attribute:"spacing-right",reflect:!0})],t.prototype,"spacingRight",void 0);t=p=a([W("scb-calendar-card")],t);
40
+ ${this.cardHref&&this.__focusRingLoaded?c`<md-focus-ring></md-focus-ring>`:""}
41
+ `}__getDateParts(){const e={day:1,month:"Jan"};if(!this.date)return e;const r=this.date instanceof Date?this.date:(()=>{const s=new Date(String(this.date));return Number.isNaN(s.getTime())?null:s})();if(!r)return e;const d=r.getDate(),n=L.format(r).replace(".","").trim();return{day:d,month:n.charAt(0).toUpperCase()+n.slice(1)}}__applyInnerSizing(){const e=this.renderRoot.querySelector(".calendar-card");e&&(this.width&&this.width.trim()!==""?(e.style.inlineSize="100%",e.style.maxInlineSize="100%"):(e.style.removeProperty("inline-size"),e.style.removeProperty("max-inline-size")),this.height&&this.height.trim()!==""||this.sizing==="stretch"?e.style.blockSize="100%":e.style.removeProperty("block-size"),this.maxHeight&&this.maxHeight.trim()!==""?e.style.maxBlockSize="100%":e.style.removeProperty("max-block-size"))}_onKeyDown(e){(e.key==="Enter"||e.key===" ")&&this.cardHref&&(window.open(this.cardHref,"_self"),e.preventDefault())}_handleHrefNavigation(){this.cardHref&&((!this.__rippleLoaded||this.__pendingRippleEvent)&&(this.__pendingRippleClick=!0,this.__ensureRipple()),this.cardHrefNav==="tab"?window.open(this.cardHref,"_blank"):this.cardHrefNav==="window"?window.open(this.cardHref,"_blank","noopener,noreferrer,width=800,height=600"):window.open(this.cardHref,"_self"))}mapSpacingToken(e){if(!e)return;const r=String(e).trim();if(r)return/^\d+$/.test(r)?`var(--spacing-${Math.max(0,Math.min(14,parseInt(r,10)))})`:r}__applySpacing(){const e=this.mapSpacingToken(this.spacing),r=this.mapSpacingToken(this.spacingTop)??e,d=this.mapSpacingToken(this.spacingBottom)??e,n=this.mapSpacingToken(this.spacingLeft),s=this.mapSpacingToken(this.spacingRight);r?this.style.setProperty("--scb-calendar-card-spacing-block-start",r):this.style.removeProperty("--scb-calendar-card-spacing-block-start"),d?this.style.setProperty("--scb-calendar-card-spacing-block-end",d):this.style.removeProperty("--scb-calendar-card-spacing-block-end"),n?this.style.setProperty("--scb-calendar-card-spacing-inline-start",n):this.style.removeProperty("--scb-calendar-card-spacing-inline-start"),s?this.style.setProperty("--scb-calendar-card-spacing-inline-end",s):this.style.removeProperty("--scb-calendar-card-spacing-inline-end")}updated(e){e.has("width")&&(this.width?this.style.inlineSize=this.width:this.style.removeProperty("inline-size")),e.has("maxWidth")&&(this.maxWidth?this.style.maxInlineSize=this.maxWidth:this.style.removeProperty("max-inline-size")),e.has("minWidth")&&(this.minWidth?this.style.minInlineSize=this.minWidth:this.style.removeProperty("min-inline-size")),e.has("height")&&(this.height?this.style.blockSize=this.height:this.style.removeProperty("block-size")),e.has("maxHeight")&&(this.maxHeight?this.style.maxBlockSize=this.maxHeight:this.style.removeProperty("max-block-size")),e.has("minHeight")&&(this.minHeight?this.style.minBlockSize=this.minHeight:this.style.removeProperty("min-block-size")),(e.has("width")||e.has("height")||e.has("maxHeight")||e.has("sizing"))&&this.__applyInnerSizing(),(e.has("spacing")||e.has("spacingTop")||e.has("spacingBottom")||e.has("spacingLeft")||e.has("spacingRight"))&&this.__applySpacing()}},h.styles=P`:host{display:block;position:relative;box-sizing:border-box;inline-size:100%;min-inline-size:0;padding:var(--scb-calendar-card-focus-ring-gap, 4px);margin-block-start:var(--scb-calendar-card-spacing-block-start, 0);margin-block-end:var(--scb-calendar-card-spacing-block-end, 0);margin-inline-start:var(--scb-calendar-card-spacing-inline-start, 0);margin-inline-end:var(--scb-calendar-card-spacing-inline-end, 0);--scb-calendar-card-padding:var(--spacing-spacing-7, 24px);--scb-calendar-card-gap:var(--spacing-spacing-4, 12px);--scb-calendar-card-horizontal-gap:var(--spacing-spacing-6, 20px);--scb-calendar-card-horizontal-min-block-size:112px;--scb-calendar-card-media-size:var(--spacing-spacing-11, 64px);--scb-calendar-card-media-gap:var(--spacing-spacing-2, 4px);--scb-calendar-card-day-size:var(--scale-07, 28px);--scb-calendar-card-day-letter-spacing:-0.6px;--scb-calendar-card-month-size:var(--scale-02, 14px);--scb-calendar-card-content-gap:var(--spacing-spacing-4, 12px);--scb-calendar-card-header-gap:var(--spacing-spacing-2, 4px);--scb-calendar-card-title-min-block-size:32px;--scb-calendar-card-icon-size:20px;--scb-calendar-card-title-font-size:var(--md-sys-typescale-headline-small-size, 24px);--scb-calendar-card-title-line-height:var(--md-sys-typescale-headline-small-line-height2, 30px);--scb-calendar-card-title-letter-spacing:var(--md-sys-typescale-headline-small-tracking, -0.6px);--scb-calendar-card-subtitle-font-size:var(--md-sys-typescale-title-medium-size, 18px);--scb-calendar-card-subtitle-line-height:var(--md-sys-typescale-title-medium-line-height, 26px);--scb-calendar-card-subtitle-letter-spacing:var(--md-sys-typescale-title-medium-tracking, -0.3px);--scb-calendar-card-supporting-font-size:var(--md-sys-typescale-body-medium-size, 16px);--scb-calendar-card-supporting-line-height:var(--md-sys-typescale-body-medium-line-height, 24px);--scb-calendar-card-supporting-letter-spacing:var(--md-sys-typescale-body-medium-tracking, -0.15px)}:host([size='medium']),:host([size='small']){--scb-calendar-card-gap:var(--spacing-spacing-3, 8px);--scb-calendar-card-month-size:var(--scale-01, 12px);--scb-calendar-card-header-gap:var(--spacing-spacing-1, 2px)}:host([size='medium']){--scb-calendar-card-padding:var(--spacing-spacing-6, 20px);--scb-calendar-card-horizontal-gap:var(--spacing-spacing-5, 16px);--scb-calendar-card-horizontal-min-block-size:96px;--scb-calendar-card-media-size:var(--spacing-spacing-10, 56px);--scb-calendar-card-day-size:var(--scale-06, 24px);--scb-calendar-card-day-letter-spacing:-0.4px;--scb-calendar-card-content-gap:var(--spacing-spacing-3, 8px);--scb-calendar-card-title-min-block-size:28px;--scb-calendar-card-title-font-size:var(--md-sys-typescale-title-medium-size, 18px);--scb-calendar-card-title-line-height:var(--md-sys-typescale-title-medium-line-height, 26px);--scb-calendar-card-title-letter-spacing:var(--md-sys-typescale-title-medium-tracking, -0.3px);--scb-calendar-card-subtitle-font-size:var(--md-sys-typescale-title-small-size, 16px);--scb-calendar-card-subtitle-line-height:var(--md-sys-typescale-title-small-line-height, 24px);--scb-calendar-card-subtitle-letter-spacing:var(--md-sys-typescale-title-small-tracking, -0.2px);--scb-calendar-card-supporting-font-size:var(--md-sys-typescale-body-medium-size, 16px);--scb-calendar-card-supporting-line-height:var(--md-sys-typescale-body-medium-line-height, 24px);--scb-calendar-card-supporting-letter-spacing:var(--md-sys-typescale-body-medium-tracking, -0.15px)}:host([size='small']){--scb-calendar-card-padding:var(--spacing-spacing-5, 16px);--scb-calendar-card-horizontal-gap:var(--spacing-spacing-4, 12px);--scb-calendar-card-horizontal-min-block-size:84px;--scb-calendar-card-media-size:var(--spacing-spacing-9, 48px);--scb-calendar-card-day-size:var(--scale-05, 20px);--scb-calendar-card-day-letter-spacing:-0.3px;--scb-calendar-card-content-gap:var(--spacing-spacing-2, 4px);--scb-calendar-card-title-min-block-size:24px;--scb-calendar-card-icon-size:18px;--scb-calendar-card-title-font-size:var(--md-sys-typescale-title-small-size, 16px);--scb-calendar-card-title-line-height:var(--md-sys-typescale-title-small-line-height, 24px);--scb-calendar-card-title-letter-spacing:var(--md-sys-typescale-title-small-tracking, -0.2px);--scb-calendar-card-subtitle-font-size:var(--md-sys-typescale-body-medium-size, 16px);--scb-calendar-card-subtitle-line-height:var(--md-sys-typescale-body-medium-line-height, 24px);--scb-calendar-card-subtitle-letter-spacing:var(--md-sys-typescale-body-medium-tracking, -0.15px);--scb-calendar-card-supporting-font-size:var(--md-sys-typescale-body-small-size, 14px);--scb-calendar-card-supporting-line-height:var(--md-sys-typescale-body-small-line-height, 20px);--scb-calendar-card-supporting-letter-spacing:var(--md-sys-typescale-body-small-tracking, -0.1px)}:host([sizing='stretch']){inline-size:100%;block-size:100%;max-inline-size:none}:host([sizing='content-width']){display:inline-block;inline-size:auto;block-size:auto}:host([sizing='content-width']) .calendar-card{inline-size:max-content}:host([sizing='content-height']){inline-size:100%;block-size:auto;max-inline-size:none}md-focus-ring{position:absolute;inset:0;pointer-events:none;display:none;border-radius:var(--scb-calendar-card-focus-ring-radius, var(--radius-large, 16px))}.calendar-card:focus-visible+md-focus-ring{display:block}.calendar-card{box-sizing:border-box;overflow:hidden;position:relative;display:flex;color:var(--md-sys-color-on-surface, #0f0865);font-family:var(--brand-font, var(--brand, "Inter"), sans-serif);font-style:normal;flex-direction:column;align-items:flex-start;gap:var(--scb-calendar-card-gap);align-self:stretch;transition:box-shadow .18s ease,transform .18s ease,background-color .18s ease,border-color .18s ease;inline-size:100%;max-inline-size:100%}.calendar-card.clickable{cursor:pointer}.calendar-card,.calendar-card .subtitle,.calendar-card .supporting-text,.calendar-card .title{font-variant-numeric:proportional-nums;font-feature-settings:"tnum"0,"pnum"1}.calendar-card:focus,.calendar-card:focus-visible{outline:0}.calendar-card.horizontal{flex-direction:row;align-items:flex-start;max-width:none;width:100%;gap:var(--scb-calendar-card-horizontal-gap);min-block-size:var(--scb-calendar-card-horizontal-min-block-size)}.calendar-card.outlined{border-radius:var(--radius-large, 16px);border:1px solid var(--md-sys-color-outline-variant, #ccc);background:var(--md-sys-color-surface, #fff);padding:var(--scb-calendar-card-padding)}.calendar-card.filled,.media{background:var(--md-sys-color-surface-dim, #f9f8ef)}.calendar-card.filled{border-radius:var(--radius-large, 16px);padding:var(--scb-calendar-card-padding)}.calendar-card.filled .media{background:var(--md-sys-color-surface, #fff)}md-ripple{border-radius:var(--radius-l, 16px)}.media{width:var(--scb-calendar-card-media-size);min-width:var(--scb-calendar-card-media-size);max-width:var(--scb-calendar-card-media-size);height:var(--scb-calendar-card-media-size);padding:var(--spacing-spacing-0, 0)0;justify-content:center;align-items:center;gap:var(--scb-calendar-card-media-gap);border-radius:var(--md-sys-shape-corner-small)}.calendar-card.horizontal .media{align-self:flex-start}.media .day{font-size:var(--scb-calendar-card-day-size);font-weight:var(--weight-bold, 700);line-height:100%;letter-spacing:var(--scb-calendar-card-day-letter-spacing);font-variant-numeric:tabular-nums}.media .month{font-size:var(--scb-calendar-card-month-size);font-weight:var(--weight-regular, 400);line-height:100%}.container,.header-container,.media{display:flex;flex-direction:column}.container{flex:1 1 auto;min-width:0;gap:var(--scb-calendar-card-content-gap);width:100%;align-self:flex-start}.header-container{gap:var(--scb-calendar-card-header-gap)}.title-container{width:100%;flex:0 0 auto;display:flex;align-items:center;gap:var(--spacing-spacing-3, 8px);color:inherit;text-decoration:none;min-block-size:var(--scb-calendar-card-title-min-block-size)}.title{font-family:var(--brand-font, var(--brand, "Inter"), sans-serif);font-size:var(--scb-calendar-card-title-font-size);font-weight:var(--weight-bold, 700);line-height:var(--scb-calendar-card-title-line-height);letter-spacing:var(--scb-calendar-card-title-letter-spacing);flex:1 1 auto;min-inline-size:0;white-space:normal;word-break:normal;overflow-wrap:break-word;hyphens:auto;overflow:visible;text-overflow:clip}.title-container .calendar-card-icon{inline-size:var(--scb-calendar-card-icon-size);block-size:var(--scb-calendar-card-icon-size);flex:0 0 auto}.calendar-card-icon,.icon-container{align-items:center;justify-content:center}.icon-container{display:flex;width:var(--spacing-spacing-7, 24px);height:var(--spacing-spacing-7, 24px)}.calendar-card-icon{display:inline-flex;overflow:hidden;font-family:"Material Symbols Outlined";font-size:var(--icon-size-medium, 24px);line-height:1;white-space:nowrap;text-transform:none;word-wrap:normal;direction:ltr;font-variation-settings:normal;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.calendar-card-icon.scb-svg-icon{fill:currentColor;font:inherit}.subtitle,.supporting-text{font-family:var(--brand-font, var(--brand, "Inter"), sans-serif);white-space:normal;word-break:normal;overflow-wrap:break-word;hyphens:manual;overflow:visible;text-overflow:clip}.subtitle{font-size:var(--scb-calendar-card-subtitle-font-size);font-weight:var(--weight-semibold, 600);line-height:var(--scb-calendar-card-subtitle-line-height);letter-spacing:var(--scb-calendar-card-subtitle-letter-spacing)}.supporting-text{font-size:var(--scb-calendar-card-supporting-font-size);font-weight:var(--weight-regular, 400);line-height:var(--scb-calendar-card-supporting-line-height);letter-spacing:var(--scb-calendar-card-supporting-letter-spacing)}.subtitle ::slotted(*),.supporting-text ::slotted(*),.title ::slotted(*){margin:0;color:inherit;font:inherit;letter-spacing:inherit}.supporting-text ::slotted(scb-link){--scb-link-font-size:var(--scb-calendar-card-supporting-font-size);--scb-link-line-height:var(--scb-calendar-card-supporting-line-height);--scb-link-letter-spacing:var(--scb-calendar-card-supporting-letter-spacing)}`,h);i([a({type:String,reflect:!0})],t.prototype,"variant",void 0);i([a({type:String,reflect:!0})],t.prototype,"size",void 0);i([a({type:String,attribute:"date"})],t.prototype,"date",void 0);i([a({type:String,reflect:!0})],t.prototype,"direction",void 0);i([a({type:String,reflect:!0,converter:p})],t.prototype,"title",void 0);i([a({type:String,attribute:"calendar-card-title",reflect:!0,converter:p})],t.prototype,"calendarCardTitle",void 0);i([a({type:String,reflect:!0,converter:p})],t.prototype,"subtitle",void 0);i([a({type:String,attribute:"supporting-text",reflect:!0,converter:p})],t.prototype,"supportingText",void 0);i([a({type:String,attribute:"card-href"})],t.prototype,"cardHref",void 0);i([a({type:String,attribute:"card-href-nav"})],t.prototype,"cardHrefNav",void 0);i([a({type:Boolean,reflect:!0,attribute:"show-media"})],t.prototype,"showMedia",void 0);i([a({type:String,attribute:"media-width"})],t.prototype,"mediaWidth",void 0);i([a({type:String,attribute:"media-height"})],t.prototype,"mediaHeight",void 0);i([a({type:String,attribute:"media-aspect"})],t.prototype,"mediaAspect",void 0);i([a({type:String,reflect:!0})],t.prototype,"width",void 0);i([a({type:String,reflect:!0,attribute:"max-width"})],t.prototype,"maxWidth",void 0);i([a({type:String,attribute:"min-width"})],t.prototype,"minWidth",void 0);i([a({type:String,reflect:!0})],t.prototype,"height",void 0);i([a({type:String,reflect:!0,attribute:"max-height"})],t.prototype,"maxHeight",void 0);i([a({type:String,attribute:"min-height"})],t.prototype,"minHeight",void 0);i([a({type:String,reflect:!0,converter:p})],t.prototype,"sizing",void 0);i([a({type:String,reflect:!0})],t.prototype,"spacing",void 0);i([a({type:String,attribute:"spacing-top",reflect:!0})],t.prototype,"spacingTop",void 0);i([a({type:String,attribute:"spacing-bottom",reflect:!0})],t.prototype,"spacingBottom",void 0);i([a({type:String,attribute:"spacing-left",reflect:!0})],t.prototype,"spacingLeft",void 0);i([a({type:String,attribute:"spacing-right",reflect:!0})],t.prototype,"spacingRight",void 0);t=i([C("scb-calendar-card")],t);