@trendyol/baklava 3.0.0-beta.2 → 3.0.0-beta.21

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 (219) hide show
  1. package/README.md +3 -3
  2. package/dist/assets/credit_card.svg +4 -0
  3. package/dist/assets/door_open.svg +3 -0
  4. package/dist/assets/sorting_asc.svg +4 -0
  5. package/dist/assets/sorting_desc.svg +4 -0
  6. package/dist/baklava-react.d.ts +69 -0
  7. package/dist/baklava-react.d.ts.map +1 -1
  8. package/dist/baklava-react.js +1 -1
  9. package/dist/baklava-react.js.map +3 -3
  10. package/dist/baklava-vue.d.ts +9 -0
  11. package/dist/baklava.d.ts +9 -0
  12. package/dist/baklava.d.ts.map +1 -1
  13. package/dist/baklava.js +1 -1
  14. package/dist/{chunk-MACM4RPG.js → chunk-2GQCCDR3.js} +2 -2
  15. package/dist/{chunk-3QXRSN5E.js → chunk-4BZSILLM.js} +2 -2
  16. package/dist/{chunk-JZ3S4JFA.js → chunk-4T26H7PC.js} +2 -2
  17. package/dist/{chunk-X2KXJYXQ.js → chunk-5MOOXA2X.js} +6 -6
  18. package/dist/{chunk-X2KXJYXQ.js.map → chunk-5MOOXA2X.js.map} +2 -2
  19. package/dist/{chunk-LYOZ36IH.js → chunk-5TPDRTCU.js} +2 -2
  20. package/dist/chunk-73GEFGEG.js +2 -0
  21. package/dist/chunk-73GEFGEG.js.map +7 -0
  22. package/dist/{chunk-QXFCLEZB.js → chunk-73RGV4UX.js} +2 -2
  23. package/dist/chunk-7QNX2GPS.js +24 -0
  24. package/dist/chunk-7QNX2GPS.js.map +7 -0
  25. package/dist/chunk-ASB5S6J4.js +8 -0
  26. package/dist/chunk-ASB5S6J4.js.map +7 -0
  27. package/dist/chunk-EG7U7PM3.js +11 -0
  28. package/dist/chunk-EG7U7PM3.js.map +7 -0
  29. package/dist/{chunk-MG23TBA3.js → chunk-FQBDGFMR.js} +4 -4
  30. package/dist/{chunk-VXYXKLNG.js → chunk-FVBGMXMC.js} +2 -2
  31. package/dist/chunk-H5K6KEKD.js +20 -0
  32. package/dist/chunk-H5K6KEKD.js.map +7 -0
  33. package/dist/chunk-HZ6A5QFC.js +2 -0
  34. package/dist/chunk-HZ6A5QFC.js.map +7 -0
  35. package/dist/chunk-IWBCUOHE.js +34 -0
  36. package/dist/chunk-IWBCUOHE.js.map +7 -0
  37. package/dist/{chunk-PWZJTYMH.js → chunk-IZTTP5LH.js} +2 -2
  38. package/dist/chunk-LIW32ZGE.js +2 -0
  39. package/dist/chunk-LIW32ZGE.js.map +7 -0
  40. package/dist/chunk-LPHOBDYM.js +11 -0
  41. package/dist/chunk-LPHOBDYM.js.map +7 -0
  42. package/dist/{chunk-2YD3I4BZ.js → chunk-LXYK2N4C.js} +2 -2
  43. package/dist/{chunk-OSNB4BPE.js → chunk-MND5TXTF.js} +2 -2
  44. package/dist/{chunk-Q7LYRUYQ.js → chunk-N6FMS7MM.js} +4 -4
  45. package/dist/chunk-NGJM4NWA.js +4 -0
  46. package/dist/chunk-NGJM4NWA.js.map +7 -0
  47. package/dist/chunk-OB455JKN.js +30 -0
  48. package/dist/chunk-OB455JKN.js.map +7 -0
  49. package/dist/chunk-P4FHU5BE.js +16 -0
  50. package/dist/chunk-P4FHU5BE.js.map +7 -0
  51. package/dist/chunk-PACDVPAB.js +26 -0
  52. package/dist/chunk-PACDVPAB.js.map +7 -0
  53. package/dist/{chunk-YCHZB54C.js → chunk-Q6MAW2EF.js} +2 -2
  54. package/dist/{chunk-XLRX2X2I.js → chunk-QF4LGACD.js} +2 -2
  55. package/dist/{chunk-HULHLSIH.js → chunk-RQEU3SZQ.js} +4 -4
  56. package/dist/{chunk-L6BUT2FV.js → chunk-U752J5IG.js} +2 -2
  57. package/dist/chunk-UCLJCOUS.js +5 -0
  58. package/dist/chunk-UCLJCOUS.js.map +7 -0
  59. package/dist/chunk-WH6MQCKK.js +63 -0
  60. package/dist/chunk-WH6MQCKK.js.map +7 -0
  61. package/dist/{chunk-57IOXMBV.js → chunk-WQTBAXMP.js} +5 -5
  62. package/dist/{chunk-PLUCMBSD.js → chunk-WXWKIQAK.js} +2 -2
  63. package/dist/{chunk-UERDT3VQ.js → chunk-X67Z2G2H.js} +4 -4
  64. package/dist/chunk-XDJ3G3LW.js +111 -0
  65. package/dist/chunk-XDJ3G3LW.js.map +7 -0
  66. package/dist/chunk-XDUIVR6I.js +2 -0
  67. package/dist/chunk-XDUIVR6I.js.map +7 -0
  68. package/dist/chunk-Y3PONRYW.js +2 -0
  69. package/dist/chunk-Y3PONRYW.js.map +7 -0
  70. package/dist/components/accordion-group/accordion/bl-accordion.d.ts +41 -0
  71. package/dist/components/accordion-group/accordion/bl-accordion.d.ts.map +1 -0
  72. package/dist/components/accordion-group/accordion/bl-accordion.js +2 -0
  73. package/dist/components/accordion-group/accordion/bl-accordion.js.map +7 -0
  74. package/dist/components/accordion-group/accordion/bl-accordion.test.d.ts +2 -0
  75. package/dist/components/accordion-group/accordion/bl-accordion.test.d.ts.map +1 -0
  76. package/dist/components/accordion-group/bl-accordion-group.d.ts +14 -0
  77. package/dist/components/accordion-group/bl-accordion-group.d.ts.map +1 -0
  78. package/dist/components/accordion-group/bl-accordion-group.js +2 -0
  79. package/dist/components/accordion-group/bl-accordion-group.js.map +7 -0
  80. package/dist/components/accordion-group/bl-accordion-group.test.d.ts +2 -0
  81. package/dist/components/accordion-group/bl-accordion-group.test.d.ts.map +1 -0
  82. package/dist/components/alert/bl-alert.js +1 -1
  83. package/dist/components/badge/bl-badge.js +1 -1
  84. package/dist/components/button/bl-button.js +1 -1
  85. package/dist/components/checkbox-group/bl-checkbox-group.d.ts +29 -2
  86. package/dist/components/checkbox-group/bl-checkbox-group.d.ts.map +1 -1
  87. package/dist/components/checkbox-group/bl-checkbox-group.js +1 -1
  88. package/dist/components/checkbox-group/checkbox/bl-checkbox.d.ts +16 -1
  89. package/dist/components/checkbox-group/checkbox/bl-checkbox.d.ts.map +1 -1
  90. package/dist/components/checkbox-group/checkbox/bl-checkbox.js +1 -1
  91. package/dist/components/dialog/bl-dialog.d.ts +4 -0
  92. package/dist/components/dialog/bl-dialog.d.ts.map +1 -1
  93. package/dist/components/dialog/bl-dialog.js +1 -1
  94. package/dist/components/dialog/bl-dialog.stories.d.ts +3 -0
  95. package/dist/components/dialog/bl-dialog.stories.d.ts.map +1 -1
  96. package/dist/components/dialog/bl-dialog.stories.js +11 -8
  97. package/dist/components/dialog/bl-dialog.stories.js.map +3 -3
  98. package/dist/components/drawer/bl-drawer.d.ts +6 -0
  99. package/dist/components/drawer/bl-drawer.d.ts.map +1 -1
  100. package/dist/components/drawer/bl-drawer.js +1 -1
  101. package/dist/components/dropdown/bl-dropdown.js +1 -1
  102. package/dist/components/dropdown/group/bl-dropdown-group.js +1 -1
  103. package/dist/components/dropdown/item/bl-dropdown-item.d.ts +1 -0
  104. package/dist/components/dropdown/item/bl-dropdown-item.d.ts.map +1 -1
  105. package/dist/components/dropdown/item/bl-dropdown-item.js +1 -1
  106. package/dist/components/icon/bl-icon.js +1 -1
  107. package/dist/components/icon/icon-list.d.ts +1 -1
  108. package/dist/components/icon/icon-list.d.ts.map +1 -1
  109. package/dist/components/icon/icon-list.js +1 -1
  110. package/dist/components/icon/icon-list.js.map +2 -2
  111. package/dist/components/input/bl-input.js +1 -1
  112. package/dist/components/notification/bl-notification.js +1 -1
  113. package/dist/components/notification/card/bl-notification-card.js +1 -1
  114. package/dist/components/pagination/bl-pagination.js +1 -1
  115. package/dist/components/popover/bl-popover.d.ts.map +1 -1
  116. package/dist/components/popover/bl-popover.js +1 -1
  117. package/dist/components/progress-indicator/bl-progress-indicator.js +1 -1
  118. package/dist/components/radio-group/bl-radio-group.js +1 -1
  119. package/dist/components/radio-group/radio/bl-radio.js +1 -1
  120. package/dist/components/select/bl-select.d.ts +4 -0
  121. package/dist/components/select/bl-select.d.ts.map +1 -1
  122. package/dist/components/select/bl-select.js +1 -1
  123. package/dist/components/select/option/bl-select-option.js +1 -1
  124. package/dist/components/split-button/bl-split-button.d.ts +103 -0
  125. package/dist/components/split-button/bl-split-button.d.ts.map +1 -0
  126. package/dist/components/split-button/bl-split-button.js +2 -0
  127. package/dist/components/split-button/bl-split-button.js.map +7 -0
  128. package/dist/components/split-button/bl-split-button.test.d.ts +2 -0
  129. package/dist/components/split-button/bl-split-button.test.d.ts.map +1 -0
  130. package/dist/components/switch/bl-switch.js +1 -1
  131. package/dist/components/tab-group/bl-tab-group.js +1 -1
  132. package/dist/components/tab-group/tab/bl-tab.js +1 -1
  133. package/dist/components/tab-group/tab-panel/bl-tab-panel.js +1 -1
  134. package/dist/components/table/bl-table.d.ts +120 -0
  135. package/dist/components/table/bl-table.d.ts.map +1 -0
  136. package/dist/components/table/bl-table.js +2 -0
  137. package/dist/components/table/bl-table.js.map +7 -0
  138. package/dist/components/table/bl-table.test.d.ts +6 -0
  139. package/dist/components/table/bl-table.test.d.ts.map +1 -0
  140. package/dist/components/table/table-body/bl-table-body.d.ts +19 -0
  141. package/dist/components/table/table-body/bl-table-body.d.ts.map +1 -0
  142. package/dist/components/table/table-body/bl-table-body.js +2 -0
  143. package/dist/components/table/table-body/bl-table-body.js.map +7 -0
  144. package/dist/components/table/table-body/bl-table-body.test.d.ts +2 -0
  145. package/dist/components/table/table-body/bl-table-body.test.d.ts.map +1 -0
  146. package/dist/components/table/table-cell/bl-table-cell.d.ts +35 -0
  147. package/dist/components/table/table-cell/bl-table-cell.d.ts.map +1 -0
  148. package/dist/components/table/table-cell/bl-table-cell.js +2 -0
  149. package/dist/components/table/table-cell/bl-table-cell.js.map +7 -0
  150. package/dist/components/table/table-cell/bl-table-cell.test.d.ts +2 -0
  151. package/dist/components/table/table-cell/bl-table-cell.test.d.ts.map +1 -0
  152. package/dist/components/table/table-header/bl-table-header.d.ts +22 -0
  153. package/dist/components/table/table-header/bl-table-header.d.ts.map +1 -0
  154. package/dist/components/table/table-header/bl-table-header.js +2 -0
  155. package/dist/components/table/table-header/bl-table-header.js.map +7 -0
  156. package/dist/components/table/table-header/bl-table-header.test.d.ts +2 -0
  157. package/dist/components/table/table-header/bl-table-header.test.d.ts.map +1 -0
  158. package/dist/components/table/table-header-cell/bl-table-header-cell.d.ts +43 -0
  159. package/dist/components/table/table-header-cell/bl-table-header-cell.d.ts.map +1 -0
  160. package/dist/components/table/table-header-cell/bl-table-header-cell.js +2 -0
  161. package/dist/components/table/table-header-cell/bl-table-header-cell.js.map +7 -0
  162. package/dist/components/table/table-header-cell/bl-table-header-cell.test.d.ts +2 -0
  163. package/dist/components/table/table-header-cell/bl-table-header-cell.test.d.ts.map +1 -0
  164. package/dist/components/table/table-row/bl-table-row.d.ts +31 -0
  165. package/dist/components/table/table-row/bl-table-row.d.ts.map +1 -0
  166. package/dist/components/table/table-row/bl-table-row.js +2 -0
  167. package/dist/components/table/table-row/bl-table-row.js.map +7 -0
  168. package/dist/components/table/table-row/bl-table-row.test.d.ts +2 -0
  169. package/dist/components/table/table-row/bl-table-row.test.d.ts.map +1 -0
  170. package/dist/components/textarea/bl-textarea.js +1 -1
  171. package/dist/components/tooltip/bl-tooltip.d.ts +7 -1
  172. package/dist/components/tooltip/bl-tooltip.d.ts.map +1 -1
  173. package/dist/components/tooltip/bl-tooltip.js +1 -1
  174. package/dist/custom-elements.json +972 -7
  175. package/dist/utilities/elements.d.ts +1 -0
  176. package/dist/utilities/elements.d.ts.map +1 -1
  177. package/dist/utilities/style-to-px-converter.test.d.ts +2 -0
  178. package/dist/utilities/style-to-px-converter.test.d.ts.map +1 -0
  179. package/dist/utilities/style-to-px.converter.d.ts +2 -0
  180. package/dist/utilities/style-to-px.converter.d.ts.map +1 -0
  181. package/package.json +1 -1
  182. package/dist/chunk-3B64VOWB.js +0 -2
  183. package/dist/chunk-3B64VOWB.js.map +0 -7
  184. package/dist/chunk-6H54TTNK.js +0 -20
  185. package/dist/chunk-6H54TTNK.js.map +0 -7
  186. package/dist/chunk-A4RJP5R7.js +0 -23
  187. package/dist/chunk-A4RJP5R7.js.map +0 -7
  188. package/dist/chunk-AAGDUS7G.js +0 -11
  189. package/dist/chunk-AAGDUS7G.js.map +0 -7
  190. package/dist/chunk-DJOD4BTL.js +0 -2
  191. package/dist/chunk-DJOD4BTL.js.map +0 -7
  192. package/dist/chunk-L42A6DU2.js +0 -107
  193. package/dist/chunk-L42A6DU2.js.map +0 -7
  194. package/dist/chunk-QY5DKRF5.js +0 -26
  195. package/dist/chunk-QY5DKRF5.js.map +0 -7
  196. package/dist/chunk-UP2BMLLI.js +0 -33
  197. package/dist/chunk-UP2BMLLI.js.map +0 -7
  198. package/dist/chunk-WPMIVZ4A.js +0 -23
  199. package/dist/chunk-WPMIVZ4A.js.map +0 -7
  200. package/dist/chunk-YML6L24Q.js +0 -5
  201. package/dist/chunk-YML6L24Q.js.map +0 -7
  202. /package/dist/{chunk-MACM4RPG.js.map → chunk-2GQCCDR3.js.map} +0 -0
  203. /package/dist/{chunk-3QXRSN5E.js.map → chunk-4BZSILLM.js.map} +0 -0
  204. /package/dist/{chunk-JZ3S4JFA.js.map → chunk-4T26H7PC.js.map} +0 -0
  205. /package/dist/{chunk-LYOZ36IH.js.map → chunk-5TPDRTCU.js.map} +0 -0
  206. /package/dist/{chunk-QXFCLEZB.js.map → chunk-73RGV4UX.js.map} +0 -0
  207. /package/dist/{chunk-MG23TBA3.js.map → chunk-FQBDGFMR.js.map} +0 -0
  208. /package/dist/{chunk-VXYXKLNG.js.map → chunk-FVBGMXMC.js.map} +0 -0
  209. /package/dist/{chunk-PWZJTYMH.js.map → chunk-IZTTP5LH.js.map} +0 -0
  210. /package/dist/{chunk-2YD3I4BZ.js.map → chunk-LXYK2N4C.js.map} +0 -0
  211. /package/dist/{chunk-OSNB4BPE.js.map → chunk-MND5TXTF.js.map} +0 -0
  212. /package/dist/{chunk-Q7LYRUYQ.js.map → chunk-N6FMS7MM.js.map} +0 -0
  213. /package/dist/{chunk-YCHZB54C.js.map → chunk-Q6MAW2EF.js.map} +0 -0
  214. /package/dist/{chunk-XLRX2X2I.js.map → chunk-QF4LGACD.js.map} +0 -0
  215. /package/dist/{chunk-HULHLSIH.js.map → chunk-RQEU3SZQ.js.map} +0 -0
  216. /package/dist/{chunk-L6BUT2FV.js.map → chunk-U752J5IG.js.map} +0 -0
  217. /package/dist/{chunk-57IOXMBV.js.map → chunk-WQTBAXMP.js.map} +0 -0
  218. /package/dist/{chunk-PLUCMBSD.js.map → chunk-WXWKIQAK.js.map} +0 -0
  219. /package/dist/{chunk-UERDT3VQ.js.map → chunk-X67Z2G2H.js.map} +0 -0
@@ -0,0 +1,16 @@
1
+ import{a as m}from"./chunk-Y3PONRYW.js";import{a as u}from"./chunk-DINNT5P2.js";import{a as b,b as p}from"./chunk-5MOOXA2X.js";import{a as d,b as i,f as h}from"./chunk-4OT5AMS5.js";import{d as a}from"./chunk-IZ2LK5GK.js";var f=d`:host{--header-cell-width:var(--bl-table-header-cell-width, auto);--header-cell-min-width:var(--bl-table-header-cell-min-width, auto);display:table-cell;border:1px solid var(--bl-color-neutral-lighter);background-color:var(--bl-color-neutral-lightest);padding:var(--bl-size-m);font:var(--bl-font-title-3-medium);color:var(--bl-color-neutral-darker);box-sizing:border-box;vertical-align:middle;white-space:normal;width:var(--header-cell-width);min-width:var(--header-cell-min-width);background-clip:padding-box}.table-header-cell{display:flex;align-items:center}.table-header-cell.shadow-right::before{content:"";position:absolute;right:-1px;top:0;width:16px;height:100%;z-index:-1;border-right:1px solid var(--bl-color-neutral-lighter);box-shadow:8px 0 16px 0 rgb(39 49 66 / 10%)}.table-header-cell.shadow-left::before{content:"";position:absolute;left:-1px;top:0;width:16px;height:100%;z-index:-1;border-left:1px solid var(--bl-color-neutral-lighter);box-shadow:-8px 0 16px 0 rgb(39 49 66 / 10%)}bl-checkbox{margin-right:var(--bl-size-m)}.sort-icons-wrapper{all:unset;width:100%;display:flex;align-items:center;justify-content:space-between;gap:var(--bl-size-4xs);cursor:pointer}.sort-icons-wrapper:focus-visible{outline:2px solid var(--bl-color-primary);outline-offset:2px;border-radius:var(--bl-border-radius-xs)}.sort-icons-wrapper bl-icon{font-size:var(--bl-font-size-m);color:var(--bl-color-neutral-darker)}`,g=f;var x="bl-table-header-cell",r=class extends h{constructor(){super(...arguments);this.sortKey=""}static get styles(){return[g]}get _table(){return this.closest("bl-table")}get _tableRow(){return this.closest("bl-table-row")}get selectable(){var e;return this.index===0&&!!((e=this._table)!=null&&e.isSelectable(!0))}get sortable(){var e;return!!((e=this._table)!=null&&e.sortable)&&!!this.sortKey}get index(){let e=this.parentNode;return e?[...e.children].indexOf(this):-1}get checked(){var e;return!!((e=this._table)!=null&&e.isAllSelected())}get indeterminate(){var e;return!!((e=this._table)!=null&&e.isAnySelected())}get isAllUnselectedDisabled(){var e;return!!((e=this._table)!=null&&e.isAllUnselectedDisabled())}get sortDirection(){var e,t;return((e=this._table)==null?void 0:e.sortKey)===this.sortKey&&((t=this._table)==null?void 0:t.sortDirection)||""}get sortIconName(){return this.sortDirection==="asc"?"sorting_asc":this.sortDirection==="desc"?"sorting_desc":"sorting"}get shadowRight(){var e;return!!((e=this._tableRow)!=null&&e.stickyFirstColumn)&&this.index===0}get shadowLeft(){var e;return!!((e=this._tableRow)!=null&&e.stickyLastColumn)&&this.nextElementSibling===null}connectedCallback(){super.connectedCallback(),this.closest(m)||console.warn("bl-table-header-cell is designed to be used inside a bl-table-row",this)}onChange(e){var o,l;let t=(o=this.shadowRoot)==null?void 0:o.querySelector(".select-all");if(e.detail&&this.isAllUnselectedDisabled){setTimeout(()=>{var c;let s=(c=t==null?void 0:t.shadowRoot)==null?void 0:c.querySelector("input");s==null||s.click()},0);return}(l=this._table)==null||l.onSelectionChange(!0,e.detail,""),setTimeout(()=>{t.checked=this.checked,t.indeterminate=this.indeterminate})}onSort(){var t;let e="asc";this.sortDirection==="asc"?e="desc":this.sortDirection==="desc"&&(e=""),(t=this._table)==null||t.onSortChange(this.sortKey,e)}_renderCheckbox(){return this.selectable?i`<bl-checkbox
2
+ class="select-all"
3
+ value="all"
4
+ .indeterminate="${this.indeterminate}"
5
+ @bl-checkbox-change=${this.onChange}
6
+ role="option"
7
+ .checked="${this.checked}"
8
+ aria-selected="${this.checked}"
9
+ >
10
+ </bl-checkbox>`:null}render(){let e=this.sortDirection==="asc",t=this.sortDirection==="desc",n=e?"ascending":t?"descending":void 0,o=this.shadowRight?"shadow-right":this.shadowLeft?"shadow-left":"",l=this.sortable?i` <button class="sort-icons-wrapper" tabindex="0" @click=${this.onSort}>
11
+ <slot></slot>
12
+ <bl-icon name="${this.sortIconName}"></bl-icon>
13
+ </button>`:i` <slot></slot>`;return i`<div class="table-header-cell ${o}" aria-sort=${u(n)}>
14
+ ${this._renderCheckbox()} ${l}
15
+ </div> `}};a([p({type:String,reflect:!0,attribute:"sort-key"})],r.prototype,"sortKey",2),r=a([b(x)],r);export{x as a,r as b};
16
+ //# sourceMappingURL=chunk-P4FHU5BE.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../src/components/table/table-header-cell/bl-table-header-cell.css", "../src/components/table/table-header-cell/bl-table-header-cell.ts"],
4
+ "sourcesContent": ["import {css} from 'lit';\nexport const styles = css`:host{--header-cell-width:var(--bl-table-header-cell-width, auto);--header-cell-min-width:var(--bl-table-header-cell-min-width, auto);display:table-cell;border:1px solid var(--bl-color-neutral-lighter);background-color:var(--bl-color-neutral-lightest);padding:var(--bl-size-m);font:var(--bl-font-title-3-medium);color:var(--bl-color-neutral-darker);box-sizing:border-box;vertical-align:middle;white-space:normal;width:var(--header-cell-width);min-width:var(--header-cell-min-width);background-clip:padding-box}.table-header-cell{display:flex;align-items:center}.table-header-cell.shadow-right::before{content:\"\";position:absolute;right:-1px;top:0;width:16px;height:100%;z-index:-1;border-right:1px solid var(--bl-color-neutral-lighter);box-shadow:8px 0 16px 0 rgb(39 49 66 / 10%)}.table-header-cell.shadow-left::before{content:\"\";position:absolute;left:-1px;top:0;width:16px;height:100%;z-index:-1;border-left:1px solid var(--bl-color-neutral-lighter);box-shadow:-8px 0 16px 0 rgb(39 49 66 / 10%)}bl-checkbox{margin-right:var(--bl-size-m)}.sort-icons-wrapper{all:unset;width:100%;display:flex;align-items:center;justify-content:space-between;gap:var(--bl-size-4xs);cursor:pointer}.sort-icons-wrapper:focus-visible{outline:2px solid var(--bl-color-primary);outline-offset:2px;border-radius:var(--bl-border-radius-xs)}.sort-icons-wrapper bl-icon{font-size:var(--bl-font-size-m);color:var(--bl-color-neutral-darker)}`;\nexport default styles;\n", "import { CSSResultGroup, html, LitElement, TemplateResult } from \"lit\";\nimport { customElement, property } from \"lit/decorators.js\";\nimport { ifDefined } from \"lit/directives/if-defined.js\";\nimport \"element-internals-polyfill\";\nimport \"../../checkbox-group/checkbox/bl-checkbox\";\nimport BlCheckbox from \"../../checkbox-group/checkbox/bl-checkbox\";\nimport \"../../icon/bl-icon\";\nimport { BaklavaIcon } from \"../../icon/icon-list\";\nimport { SortDirection } from \"../bl-table\";\nimport type BlTableRow from \"../table-row/bl-table-row\";\nimport { blTableRowTag } from \"../table-row/bl-table-row\";\nimport style from \"./bl-table-header-cell.css\";\n\nexport const blTableHeaderCellTag = \"bl-table-header-cell\";\n\n/**\n * @tag bl-table-header-cell\n * @summary Baklava Table component\n *\n * @cssproperty [--bl-table-header-cell-width] Set the column width\n * @cssproperty [--bl-table-header-cell-min-width] Set the column min width\n */\n@customElement(blTableHeaderCellTag)\nexport default class BlTableHeaderCell extends LitElement {\n static get styles(): CSSResultGroup {\n return [style];\n }\n /**\n * Set key value for column\n */\n @property({ type: String, reflect: true, attribute: \"sort-key\" })\n sortKey = \"\";\n\n private get _table() {\n return this.closest(\"bl-table\");\n }\n private get _tableRow() {\n return this.closest(\"bl-table-row\");\n }\n get selectable() {\n return this.index === 0 && !!this._table?.isSelectable(true);\n }\n get sortable() {\n return !!this._table?.sortable && !!this.sortKey;\n }\n get index() {\n const parent = this.parentNode;\n\n if (!parent) {\n return -1;\n }\n return [...parent.children].indexOf(this);\n }\n get checked() {\n return !!this._table?.isAllSelected();\n }\n get indeterminate() {\n return !!this._table?.isAnySelected();\n }\n get isAllUnselectedDisabled() {\n return !!this._table?.isAllUnselectedDisabled();\n }\n get sortDirection(): string {\n if (this._table?.sortKey === this.sortKey) {\n return this._table?.sortDirection || \"\";\n }\n\n return \"\";\n }\n get sortIconName(): BaklavaIcon {\n if (this.sortDirection === \"asc\") {\n return \"sorting_asc\";\n } else if (this.sortDirection === \"desc\") {\n return \"sorting_desc\";\n }\n\n return \"sorting\";\n }\n\n get shadowRight() {\n return !!this._tableRow?.stickyFirstColumn && this.index === 0;\n }\n get shadowLeft() {\n return !!this._tableRow?.stickyLastColumn && this.nextElementSibling === null;\n }\n\n connectedCallback(): void {\n super.connectedCallback();\n if (!this.closest<BlTableRow>(blTableRowTag)) {\n console.warn(\"bl-table-header-cell is designed to be used inside a bl-table-row\", this);\n }\n }\n\n onChange(event: CustomEvent) {\n const selectAllEl = this.shadowRoot?.querySelector(\".select-all\") as BlCheckbox;\n\n const checked = event.detail;\n\n // If all available rows are selected, instead of checking, uncheck all options\n if (checked && this.isAllUnselectedDisabled) {\n setTimeout(() => {\n const checkbox = selectAllEl?.shadowRoot?.querySelector(\"input\");\n\n checkbox?.click();\n }, 0);\n return;\n }\n this._table?.onSelectionChange(true, event.detail, \"\");\n setTimeout(() => {\n selectAllEl.checked = this.checked;\n selectAllEl.indeterminate = this.indeterminate;\n });\n }\n\n onSort() {\n let _sortDirection: SortDirection = \"asc\";\n\n if (this.sortDirection === \"asc\") {\n _sortDirection = \"desc\";\n } else if (this.sortDirection === \"desc\") {\n _sortDirection = \"\";\n }\n\n this._table?.onSortChange(this.sortKey, _sortDirection);\n }\n\n private _renderCheckbox() {\n return this.selectable\n ? html`<bl-checkbox\n class=\"select-all\"\n value=\"all\"\n .indeterminate=\"${this.indeterminate}\"\n @bl-checkbox-change=${this.onChange}\n role=\"option\"\n .checked=\"${this.checked}\"\n aria-selected=\"${this.checked}\"\n >\n </bl-checkbox>`\n : null;\n }\n\n render(): TemplateResult {\n const isAscending = this.sortDirection === \"asc\";\n const isDescending = this.sortDirection === \"desc\";\n const ariaSort = isAscending ? \"ascending\" : isDescending ? \"descending\" : undefined;\n\n const className = this.shadowRight ? \"shadow-right\" : this.shadowLeft ? \"shadow-left\" : \"\";\n const template = this.sortable\n ? html` <button class=\"sort-icons-wrapper\" tabindex=\"0\" @click=${this.onSort}>\n <slot></slot>\n <bl-icon name=\"${this.sortIconName}\"></bl-icon>\n </button>`\n : html` <slot></slot>`;\n\n return html`<div class=\"table-header-cell ${className}\" aria-sort=${ifDefined(ariaSort)}>\n ${this._renderCheckbox()} ${template}\n </div> `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n [blTableHeaderCellTag]: BlTableHeaderCell;\n }\n}\n"],
5
+ "mappings": "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",
6
+ "names": ["styles", "i", "bl_table_header_cell_default", "blTableHeaderCellTag", "BlTableHeaderCell", "s", "bl_table_header_cell_default", "_a", "parent", "_b", "blTableRowTag", "event", "selectAllEl", "checkbox", "_sortDirection", "x", "isAscending", "isDescending", "ariaSort", "className", "template", "l", "__decorateClass", "e"]
7
+ }
@@ -0,0 +1,26 @@
1
+ import{a as l}from"./chunk-GRL4DWKG.js";import{a as p,b as n,c as b}from"./chunk-5MOOXA2X.js";import{a as c,b as r,f as h}from"./chunk-4OT5AMS5.js";import{d as i}from"./chunk-IZ2LK5GK.js";var u=d=>{let o=d.match(/^(\d+(\.\d+)?)(.*)$/);if(!o)return null;let e=parseFloat(o[1]),a=o[3],s;switch(a){case"px":s=e;break;case"vw":s=e*window.innerWidth/100;break;case"%":s=e*window.innerWidth/100;break;default:s=null;break}return s};var v=c`.drawer{box-sizing:border-box;position:fixed;display:flex;top:0;right:-100%;bottom:0;width:var(--bl-drawer-current-width, 424px);padding:var(--bl-size-xl);padding-top:max(env(safe-area-inset-top), var(--bl-size-xl));padding-right:max(env(safe-area-inset-right), var(--bl-size-xl));padding-bottom:max(env(safe-area-inset-bottom), var(--bl-size-xl));background:var(--bl-color-neutral-full);box-shadow:var(--bl-size-xs) 0 var(--bl-size-2xl) rgba(0 0 0 / 50%);transition:right var(--bl-drawer-animation-duration, 0.25s);z-index:var(--bl-index-sticky)}:host([open]) .drawer{right:0}iframe{height:100%;width:100%;border:none}.container{display:flex;flex-direction:column;gap:var(--bl-size-xl);flex:1;width:100%}header{display:flex;justify-content:space-between;align-items:baseline;gap:var(--bl-size-2xs);background-color:white}header .header-buttons{display:flex;gap:var(--bl-size-xl);margin-left:auto}header h2{font:var(--bl-font-title-1-medium);color:var(--bl-color-neutral-darker);overflow:hidden;margin:0;padding:0}.content{flex:1;overflow-y:scroll}.iframe-content{flex:1}`,m=v;var t=class extends h{constructor(){super(...arguments);this.open=!1;this.width="424px";this.domExistence=!1}static get styles(){return[m]}connectedCallback(){super.connectedCallback(),window==null||window.addEventListener("bl-drawer-open",e=>{e.target!==this&&this.closeDrawer()}),this.resizeDrawerWidth(),window==null||window.addEventListener("resize",()=>this.resizeDrawerWidth()),window==null||window.addEventListener("load",()=>this.resizeDrawerWidth())}disconnectedCallback(){super.disconnectedCallback(),window==null||window.removeEventListener("resize",()=>this.resizeDrawerWidth()),window==null||window.addEventListener("load",()=>this.resizeDrawerWidth())}updated(e){e.has("open")&&this.toggleDialogHandler(),e.has("width")&&this.resizeDrawerWidth()}resizeDrawerWidth(){let e=u(this.width),a=!e||e<100?"424px":this.width;e&&((window==null?void 0:window.innerWidth)<e?this.style.setProperty("--bl-drawer-current-width","calc(100vw - 24px)"):this.style.setProperty("--bl-drawer-current-width",a))}toggleDialogHandler(){this.open?(this.domExistenceSchedule&&clearTimeout(this.domExistenceSchedule),this.domExistence=!0,this.onOpen("")):(this.domExistenceSchedule=window.setTimeout(()=>{this.domExistence=!1},1e3),this.onClose(""))}closeDrawer(){this.open=!1}renderContent(){let e=this.embedUrl?r`<iframe src=${this.embedUrl}></iframe>`:r`<slot></slot>`;return r`<section class=${this.embedUrl?"iframe-content":"content"}>
2
+ ${e}
3
+ </section>`}renderContainer(){let e=this.caption?r`<h2 id="drawer-caption">${this.caption}</h2>`:"",a=this.externalLink?r`<bl-button
4
+ icon="external_link"
5
+ variant="tertiary"
6
+ kind="neutral"
7
+ size="small"
8
+ href="${this.externalLink}"
9
+ target="_blank"
10
+ ></bl-button>`:"";return r`<div class="container">
11
+ <header>
12
+ ${e}
13
+ <div class="header-buttons">
14
+ ${a}
15
+ <bl-button
16
+ @click="${this.closeDrawer}"
17
+ icon="close"
18
+ size="small"
19
+ variant="tertiary"
20
+ kind="neutral"
21
+ ></bl-button>
22
+ </div>
23
+ </header>
24
+ ${this.renderContent()}
25
+ </div>`}render(){return this.domExistence?r`<div class="drawer">${this.renderContainer()}</div>`:r``}};i([n({type:Boolean,reflect:!0})],t.prototype,"open",2),i([n({type:String})],t.prototype,"caption",2),i([n({type:String,attribute:"embed-url"})],t.prototype,"embedUrl",2),i([n({type:String,attribute:"external-link"})],t.prototype,"externalLink",2),i([n({type:String,attribute:"width"})],t.prototype,"width",2),i([l("bl-drawer-open")],t.prototype,"onOpen",2),i([l("bl-drawer-close")],t.prototype,"onClose",2),i([b()],t.prototype,"domExistence",2),t=i([p("bl-drawer")],t);export{t as a};
26
+ //# sourceMappingURL=chunk-PACDVPAB.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../src/utilities/style-to-px.converter.ts", "../src/components/drawer/bl-drawer.css", "../src/components/drawer/bl-drawer.ts"],
4
+ "sourcesContent": ["export const styleToPixelConverter = (styleValue: string): number | null => {\n const match = styleValue.match(/^(\\d+(\\.\\d+)?)(.*)$/);\n\n if (!match) return null;\n\n const value = parseFloat(match[1]);\n const unit = match[3];\n\n let styleInPixel: number | null;\n\n switch (unit) {\n case \"px\":\n styleInPixel = value;\n break;\n case \"vw\":\n styleInPixel = (value * window.innerWidth) / 100;\n break;\n case \"%\":\n styleInPixel = (value * window.innerWidth) / 100;\n break;\n default:\n styleInPixel = null;\n break;\n }\n return styleInPixel;\n};\n", "import {css} from 'lit';\nexport const styles = css`.drawer{box-sizing:border-box;position:fixed;display:flex;top:0;right:-100%;bottom:0;width:var(--bl-drawer-current-width, 424px);padding:var(--bl-size-xl);padding-top:max(env(safe-area-inset-top), var(--bl-size-xl));padding-right:max(env(safe-area-inset-right), var(--bl-size-xl));padding-bottom:max(env(safe-area-inset-bottom), var(--bl-size-xl));background:var(--bl-color-neutral-full);box-shadow:var(--bl-size-xs) 0 var(--bl-size-2xl) rgba(0 0 0 / 50%);transition:right var(--bl-drawer-animation-duration, 0.25s);z-index:var(--bl-index-sticky)}:host([open]) .drawer{right:0}iframe{height:100%;width:100%;border:none}.container{display:flex;flex-direction:column;gap:var(--bl-size-xl);flex:1;width:100%}header{display:flex;justify-content:space-between;align-items:baseline;gap:var(--bl-size-2xs);background-color:white}header .header-buttons{display:flex;gap:var(--bl-size-xl);margin-left:auto}header h2{font:var(--bl-font-title-1-medium);color:var(--bl-color-neutral-darker);overflow:hidden;margin:0;padding:0}.content{flex:1;overflow-y:scroll}.iframe-content{flex:1}`;\nexport default styles;\n", "import { CSSResultGroup, html, LitElement, TemplateResult } from \"lit\";\nimport { PropertyValues } from \"lit\";\nimport { customElement, property, state } from \"lit/decorators.js\";\nimport { event, EventDispatcher } from \"../../utilities/event\";\nimport { styleToPixelConverter } from \"../../utilities/style-to-px.converter\";\nimport \"../button/bl-button\";\nimport style from \"./bl-drawer.css\";\n\n/**\n * @tag bl-drawer\n * @summary Baklava Drawer component\n *\n * @cssproperty [--bl-drawer-animation-duration=250ms] Drawer slide in animation duration\n */\n\n@customElement(\"bl-drawer\")\nexport default class BlDrawer extends LitElement {\n static get styles(): CSSResultGroup {\n return [style];\n }\n\n /**\n * Sets drawer open-close status\n */\n @property({ type: Boolean, reflect: true })\n open = false;\n\n /**\n * Sets the drawer title\n */\n @property({ type: String })\n caption?: string;\n\n /**\n * Sets the drawer embed url for iframe\n */\n @property({ type: String, attribute: \"embed-url\" })\n embedUrl?: string;\n\n /**\n * Sets the drawer external link\n */\n @property({ type: String, attribute: \"external-link\" })\n externalLink?: string;\n\n /**\n * Sets the drawer width\n */\n @property({ type: String, attribute: \"width\" })\n width: string = \"424px\";\n\n /**\n * Fires when the drawer is opened\n */\n @event(\"bl-drawer-open\") private onOpen: EventDispatcher<string>;\n\n /**\n * Fires when the drawer is closed\n */\n @event(\"bl-drawer-close\") private onClose: EventDispatcher<string>;\n\n connectedCallback() {\n super.connectedCallback();\n window?.addEventListener(\"bl-drawer-open\", event => {\n if (event.target !== this) this.closeDrawer();\n });\n this.resizeDrawerWidth();\n\n window?.addEventListener(\"resize\", () => this.resizeDrawerWidth());\n window?.addEventListener(\"load\", () => this.resizeDrawerWidth());\n }\n\n disconnectedCallback(): void {\n super.disconnectedCallback();\n window?.removeEventListener(\"resize\", () => this.resizeDrawerWidth());\n window?.addEventListener(\"load\", () => this.resizeDrawerWidth());\n }\n\n updated(changedProperties: PropertyValues<this>) {\n if (changedProperties.has(\"open\")) {\n this.toggleDialogHandler();\n }\n\n if (changedProperties.has(\"width\")) {\n this.resizeDrawerWidth();\n }\n }\n\n private domExistenceSchedule: number;\n\n private resizeDrawerWidth() {\n const drawerWidth = styleToPixelConverter(this.width);\n\n const newWidth = !drawerWidth || drawerWidth < 100 ? \"424px\" : this.width;\n\n if (drawerWidth) {\n if (window?.innerWidth < drawerWidth) {\n this.style.setProperty(\"--bl-drawer-current-width\", \"calc(100vw - 24px)\");\n } else {\n this.style.setProperty(\"--bl-drawer-current-width\", newWidth);\n }\n }\n }\n\n private toggleDialogHandler() {\n if (this.open) {\n if (this.domExistenceSchedule) {\n clearTimeout(this.domExistenceSchedule);\n }\n\n this.domExistence = true;\n // FIXME: Allow events without payload\n this.onOpen(\"\");\n } else {\n // Give some time for exit animation\n this.domExistenceSchedule = window.setTimeout(() => {\n this.domExistence = false;\n }, 1000);\n\n // FIXME: Allow events without payload\n this.onClose(\"\");\n }\n }\n\n @state() private domExistence = false;\n\n private closeDrawer() {\n this.open = false;\n }\n\n private renderContent() {\n const content = this.embedUrl\n ? html`<iframe src=${this.embedUrl}></iframe>`\n : html`<slot></slot>`;\n\n return html`<section class=${this.embedUrl ? \"iframe-content\" : \"content\"}>\n ${content}\n </section>`;\n }\n\n private renderContainer() {\n const title = this.caption ? html`<h2 id=\"drawer-caption\">${this.caption}</h2>` : \"\";\n const external_button = this.externalLink\n ? html`<bl-button\n icon=\"external_link\"\n variant=\"tertiary\"\n kind=\"neutral\"\n size=\"small\"\n href=\"${this.externalLink}\"\n target=\"_blank\"\n ></bl-button>`\n : \"\";\n\n return html`<div class=\"container\">\n <header>\n ${title}\n <div class=\"header-buttons\">\n ${external_button}\n <bl-button\n @click=\"${this.closeDrawer}\"\n icon=\"close\"\n size=\"small\"\n variant=\"tertiary\"\n kind=\"neutral\"\n ></bl-button>\n </div>\n </header>\n ${this.renderContent()}\n </div>`;\n }\n\n render(): TemplateResult {\n if (this.domExistence) {\n return html`<div class=\"drawer\">${this.renderContainer()}</div>`;\n } else {\n return html``;\n }\n }\n}\ndeclare global {\n interface HTMLElementTagNameMap {\n \"bl-drawer\": BlDrawer;\n }\n}\n"],
5
+ "mappings": "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",
6
+ "names": ["styleToPixelConverter", "styleValue", "match", "value", "unit", "styleInPixel", "styles", "i", "bl_drawer_default", "BlDrawer", "s", "bl_drawer_default", "event", "changedProperties", "drawerWidth", "styleToPixelConverter", "newWidth", "content", "x", "title", "external_button", "__decorateClass", "e", "t"]
7
+ }
@@ -1,4 +1,4 @@
1
- import{a as c}from"./chunk-GRL4DWKG.js";import{a as n,b as i,e as s}from"./chunk-X2KXJYXQ.js";import{a as l,b as r,f as a}from"./chunk-4OT5AMS5.js";import{d as e}from"./chunk-IZ2LK5GK.js";var v=l`:host{position:relative;display:flex;align-items:center;background-color:var(--bl-color-neutral-full)}.container{--title-padding-vertical:var(--bl-size-m);--title-padding-horizontal:var(--bl-size-xl);--title-color:var(--bl-color-neutral-darker);--caption-color:var(--bl-color-neutral-darker);--icon-color:var(--bl-color-neutral-darker);--border-bottom-width:var(--bl-size-4xs);--border-left-space:var(--bl-size-xl);--font-title:var(--bl-font-title-3-medium);--font-caption:var(--bl-font-title-4-regular);--tab-right-padding:var(--bl-size-xl);--help-container-width:var(--bl-size-2xl);--tab-height:calc(var(--bl-size-3xl) + var(--bl-size-s));display:flex;border:none;cursor:pointer;background-color:initial;width:max-content;height:var(--tab-height);padding:0 var(--tab-right-padding);margin-right:1px}.container::after{position:absolute;content:"";right:0;top:var(--bl-size-m);height:calc(100% - var(--bl-size-2xl));border-right:1px solid var(--bl-color-neutral-lighter)}:host(:last-of-type) .container::after{border-right:none}:host(:focus-visible){outline:none}:host(:focus-visible) .container,.container:focus-visible{outline:2px solid var(--bl-color-primary);outline-offset:calc(-1 * var(--bl-size-3xs));border-radius:var(--bl-border-radius-s)}:host .container::before{content:"";position:absolute;opacity:0;bottom:calc(-1 * var(--bl-size-4xs));left:var(--border-left-space);width:calc(100% - var(--bl-size-4xl));border-bottom:var(--border-bottom-width) solid var(--bl-color-primary)}:host([selected]:not([disabled])) .container::before{opacity:1}:host(.__ONLY_FOR_STORYBOOK_DEMONSTRATION_HOVER__) .container,:host([selected]) .container,:host(:hover) .container,:host([selected]) .container{--title-color:var(--bl-color-primary);--icon-color:var(--bl-color-primary)}:host([disabled]) .container{cursor:not-allowed;--title-color:var(--bl-color-neutral-lighter);--caption-color:var(--bl-color-neutral-lighter);--icon-color:var(--bl-color-neutral-lighter)}:host(.__ONLY_FOR_STORYBOOK_DEMONSTRATION_HOVER__) :where(.title, .icon),:host(:hover) :where(.title, .icon){transition:color 120ms ease-out}:host([selected]) .border-bottom{display:inline-block}:host([disabled]) .container.__ONLY_FOR_STORYBOOK_DEMONSTRATION_HOVER__,:host([disabled]) .container:hover{cursor:not-allowed}:host([help-text]) button{padding-right:0}.tab-button{width:max-content}.help-container{display:flex;justify-content:center;align-items:center;width:var(--help-container-width);height:100%;font-size:var(--bl-font-size-m);pointer-events:visible;padding-right:var(--tab-right-padding)}bl-tooltip{--bl-tooltip-position:fixed;display:flex}.title{display:flex;align-items:center;justify-content:center;font:var(--font-title);color:var(--title-color);line-height:var(--bl-size-m);white-space:nowrap}.title-container{display:flex;align-items:center;justify-content:center;flex-direction:column;margin:auto}.badge-container{padding-left:var(--bl-size-3xs);display:flex;margin-bottom:1px}.caption{font:var(--font-caption);line-height:var(--bl-size-xs);color:var(--caption-color);text-align:center;margin-top:var(--bl-size-4xs)}.icon{display:flex;color:var(--icon-color);font-size:var(--bl-font-size-l);margin-right:var(--bl-size-3xs);margin-bottom:1px}:host([notify]) .title::after{content:"";height:var(--bl-size-2xs);width:var(--bl-size-2xs);border-radius:var(--bl-size-3xs);margin-left:var(--bl-size-3xs);background-color:var(--bl-color-danger);margin-bottom:1px}`,d=v;var t=class extends a{constructor(){super(...arguments);this.notify=!1;this.badge="";this.selected=!1;this.disabled=!1}static get styles(){return[d]}connectedCallback(){super.connectedCallback(),this.updateComplete.then(()=>{var o;this.tabGroup=this.closest("bl-tab-group"),(o=this.tabGroup)==null||o.registerTab(this)})}disconnectedCallback(){var o;super.disconnectedCallback(),(o=this.tabGroup)==null||o.unregisterTab(this)}select(){this.selected=!0}focus(){this.tab.focus()}updated(o){this.tabIndex=this.selected?0:-1,o.has("selected")&&this.selected&&this._onSelect(this.name)}render(){let o=r` <slot></slot>`,b=this.helpText?r` <div class="help-container">
1
+ import{a as c}from"./chunk-GRL4DWKG.js";import{a as n,b as i,e as s}from"./chunk-5MOOXA2X.js";import{a as l,b as r,f as a}from"./chunk-4OT5AMS5.js";import{d as e}from"./chunk-IZ2LK5GK.js";var v=l`:host{position:relative;display:flex;align-items:center;background-color:var(--bl-color-neutral-full)}.container{--title-padding-vertical:var(--bl-size-m);--title-padding-horizontal:var(--bl-size-xl);--title-color:var(--bl-color-neutral-darker);--caption-color:var(--bl-color-neutral-darker);--icon-color:var(--bl-color-neutral-darker);--border-bottom-width:var(--bl-size-4xs);--border-left-space:var(--bl-size-xl);--font-title:var(--bl-font-title-3-medium);--font-caption:var(--bl-font-title-4-regular);--tab-right-padding:var(--bl-size-xl);--help-container-width:var(--bl-size-2xl);--tab-height:calc(var(--bl-size-3xl) + var(--bl-size-s));display:flex;border:none;cursor:pointer;background-color:initial;width:max-content;height:var(--tab-height);padding:0 var(--tab-right-padding);margin-right:1px}.container::after{position:absolute;content:"";right:0;top:var(--bl-size-m);height:calc(100% - var(--bl-size-2xl));border-right:1px solid var(--bl-color-neutral-lighter)}:host(:last-of-type) .container::after{border-right:none}:host(:focus-visible){outline:none}:host(:focus-visible) .container,.container:focus-visible{outline:2px solid var(--bl-color-primary);outline-offset:calc(-1 * var(--bl-size-3xs));border-radius:var(--bl-border-radius-s)}:host .container::before{content:"";position:absolute;opacity:0;bottom:calc(-1 * var(--bl-size-4xs));left:var(--border-left-space);width:calc(100% - var(--bl-size-4xl));border-bottom:var(--border-bottom-width) solid var(--bl-color-primary)}:host([selected]:not([disabled])) .container::before{opacity:1}:host(.__ONLY_FOR_STORYBOOK_DEMONSTRATION_HOVER__) .container,:host([selected]) .container,:host(:hover) .container,:host([selected]) .container{--title-color:var(--bl-color-primary);--icon-color:var(--bl-color-primary)}:host([disabled]) .container{cursor:not-allowed;--title-color:var(--bl-color-neutral-lighter);--caption-color:var(--bl-color-neutral-lighter);--icon-color:var(--bl-color-neutral-lighter)}:host(.__ONLY_FOR_STORYBOOK_DEMONSTRATION_HOVER__) :where(.title, .icon),:host(:hover) :where(.title, .icon){transition:color 120ms ease-out}:host([selected]) .border-bottom{display:inline-block}:host([disabled]) .container.__ONLY_FOR_STORYBOOK_DEMONSTRATION_HOVER__,:host([disabled]) .container:hover{cursor:not-allowed}:host([help-text]) button{padding-right:0}.tab-button{width:max-content}.help-container{display:flex;justify-content:center;align-items:center;width:var(--help-container-width);height:100%;font-size:var(--bl-font-size-m);pointer-events:visible;padding-right:var(--tab-right-padding)}bl-tooltip{--bl-tooltip-position:fixed;display:flex}.title{display:flex;align-items:center;justify-content:center;font:var(--font-title);color:var(--title-color);line-height:var(--bl-size-m);white-space:nowrap}.title-container{display:flex;align-items:center;justify-content:center;flex-direction:column;margin:auto}.badge-container{padding-left:var(--bl-size-3xs);display:flex;margin-bottom:1px}.caption{font:var(--font-caption);line-height:var(--bl-size-xs);color:var(--caption-color);text-align:center;margin-top:var(--bl-size-4xs)}.icon{display:flex;color:var(--icon-color);font-size:var(--bl-font-size-l);margin-right:var(--bl-size-3xs);margin-bottom:1px}:host([notify]) .title::after{content:"";height:var(--bl-size-2xs);width:var(--bl-size-2xs);border-radius:var(--bl-size-3xs);margin-left:var(--bl-size-3xs);background-color:var(--bl-color-danger);margin-bottom:1px}`,d=v;var t=class extends a{constructor(){super(...arguments);this.notify=!1;this.badge="";this.selected=!1;this.disabled=!1}static get styles(){return[d]}connectedCallback(){super.connectedCallback(),this.updateComplete.then(()=>{var o;this.tabGroup=this.closest("bl-tab-group"),(o=this.tabGroup)==null||o.registerTab(this)})}disconnectedCallback(){var o;super.disconnectedCallback(),(o=this.tabGroup)==null||o.unregisterTab(this)}select(){this.selected=!0}focus(){this.tab.focus()}updated(o){this.tabIndex=this.selected?0:-1,o.has("selected")&&this.selected&&this._onSelect(this.name)}render(){let o=r` <slot></slot>`,b=this.helpText?r` <div class="help-container">
2
2
  <bl-tooltip>
3
3
  <bl-button
4
4
  slot="tooltip-trigger"
@@ -28,4 +28,4 @@ import{a as c}from"./chunk-GRL4DWKG.js";import{a as n,b as i,e as s}from"./chunk
28
28
  ${b}
29
29
  </button>
30
30
  `}};e([i({type:String})],t.prototype,"caption",2),e([i({type:String,reflect:!0})],t.prototype,"name",2),e([i({type:String,attribute:"help-text",reflect:!0})],t.prototype,"helpText",2),e([i({type:String})],t.prototype,"icon",2),e([i({type:Boolean,reflect:!0})],t.prototype,"notify",2),e([i({type:String})],t.prototype,"badge",2),e([i({type:Boolean,reflect:!0})],t.prototype,"selected",2),e([i({type:Boolean,reflect:!0})],t.prototype,"disabled",2),e([c("bl-tab-selected")],t.prototype,"_onSelect",2),e([s(".container")],t.prototype,"tab",2),t=e([n("bl-tab")],t);export{t as a};
31
- //# sourceMappingURL=chunk-YCHZB54C.js.map
31
+ //# sourceMappingURL=chunk-Q6MAW2EF.js.map
@@ -1,2 +1,2 @@
1
- import{a as s,b as i,c as d}from"./chunk-X2KXJYXQ.js";import{a as l,b as o,f as a}from"./chunk-4OT5AMS5.js";import{d as r}from"./chunk-IZ2LK5GK.js";var u=l`div{padding:var(--bl-size-xl);background-color:var(--bl-color-neutral-full);border-radius:0 0 var(--bl-border-radius-m) var(--bl-border-radius-m)}div[hidden]{display:none}`,p=u;var t=class extends a{constructor(){super(...arguments);this.hidden=!0}static get styles(){return[p]}connectedCallback(){super.connectedCallback(),this.updateComplete.then(()=>{var e;this.tabGroup=this.closest("bl-tab-group"),(e=this.tabGroup)==null||e.registerTabPanel(this)})}disconnectedCallback(){var e;super.disconnectedCallback(),(e=this.tabGroup)==null||e.unregisterTabPanel(this)}render(){return o`<div ?hidden=${this.hidden}><slot></slot></div>`}};r([d()],t.prototype,"hidden",2),r([i({type:String,reflect:!0})],t.prototype,"tab",2),t=r([s("bl-tab-panel")],t);export{t as a};
2
- //# sourceMappingURL=chunk-XLRX2X2I.js.map
1
+ import{a as s,b as i,c as d}from"./chunk-5MOOXA2X.js";import{a as l,b as o,f as a}from"./chunk-4OT5AMS5.js";import{d as r}from"./chunk-IZ2LK5GK.js";var u=l`div{padding:var(--bl-size-xl);background-color:var(--bl-color-neutral-full);border-radius:0 0 var(--bl-border-radius-m) var(--bl-border-radius-m)}div[hidden]{display:none}`,p=u;var t=class extends a{constructor(){super(...arguments);this.hidden=!0}static get styles(){return[p]}connectedCallback(){super.connectedCallback(),this.updateComplete.then(()=>{var e;this.tabGroup=this.closest("bl-tab-group"),(e=this.tabGroup)==null||e.registerTabPanel(this)})}disconnectedCallback(){var e;super.disconnectedCallback(),(e=this.tabGroup)==null||e.unregisterTabPanel(this)}render(){return o`<div ?hidden=${this.hidden}><slot></slot></div>`}};r([d()],t.prototype,"hidden",2),r([i({type:String,reflect:!0})],t.prototype,"tab",2),t=r([s("bl-tab-panel")],t);export{t as a};
2
+ //# sourceMappingURL=chunk-QF4LGACD.js.map
@@ -1,6 +1,6 @@
1
- import{a as b}from"./chunk-ECPWEUBG.js";import{a as v}from"./chunk-DINNT5P2.js";import{a as m}from"./chunk-GRL4DWKG.js";import{a as u,b as e}from"./chunk-X2KXJYXQ.js";import{a as d,b as n,f as p}from"./chunk-4OT5AMS5.js";import{d as a}from"./chunk-IZ2LK5GK.js";var y=d`:host{display:block}.alert{--padding:var(--bl-size-m);--main-color:var(--bl-color-info);--main-bg-color:var(--bl-color-info-contrast);position:relative;display:flex;align-items:flex-start;justify-content:space-between;background-color:var(--main-bg-color);color:var(--bl-color-neutral-darker);box-shadow:inset 0 0 0 1px var(--main-color);border-radius:var(--bl-border-radius-l);padding:calc(var(--padding) / 2) var(--padding);padding-right:calc(var(--padding) / 2)}.description{font:var(--bl-font-body-text-2)}.wrapper{display:flex;flex-flow:column;flex-wrap:wrap;justify-content:space-between;flex:auto}.content{display:flex;margin-right:var(--bl-size-2xs);flex:20 1 70%;padding:calc(var(--padding) / 2) 0}.icon{padding:calc(var(--padding) / 2) 0;margin-right:var(--bl-size-2xs);color:var(--main-color)}.text-content{display:flex;flex-direction:column}.caption{color:var(--bl-color-neutral-darker);font:var(--bl-font-title-3-medium)}.actions{display:none;flex-wrap:wrap;gap:var(--bl-size-m);padding:calc(var(--padding) / 2) 0}.close{--bl-color-neutral-lightest:transparent}.caption + .description{margin-top:var(--bl-size-2xs)}:host([closed]){display:none}:host([variant="success"]) .alert{--main-color:var(--bl-color-success);--main-bg-color:var(--bl-color-success-contrast)}:host([variant="warning"]) .alert{--main-color:var(--bl-color-warning);--main-bg-color:var(--bl-color-warning-contrast)}:host([variant="danger"]) .alert{--main-color:var(--bl-color-danger);--main-bg-color:var(--bl-color-danger-contrast)}`,f=y;var t=class extends p{constructor(){super(...arguments);this.variant="info";this.closable=!1;this.closed=!1}static get styles(){return[f]}open(){this.closed=!1}close(){this.closed=!0}get _hasAlertCaptionSlot(){return this.querySelector(':scope > [slot="caption"]')!==null}_closeHandler(){this.closed=!0,this.onClose(!0)}_predefinedIcons(){switch(this.variant){case"success":return"check_fill";case"danger":return"close_fill";default:return this.variant}}_getIcon(){if(this.icon)return this.icon===!0?this._predefinedIcons():this.icon}_initAlertActionSlot(i){let r=i.target;r.assignedElements({flatten:!0}).forEach(o=>{var l,c;if(o.tagName!=="BL-BUTTON"){(l=o.parentNode)==null||l.removeChild(o);return}((c=this.shadowRoot)==null?void 0:c.querySelector(".actions")).style.display="flex";let g=r.name==="action-secondary"?"secondary":"primary",h={info:"neutral",warning:"neutral",success:"success",danger:"danger"};o.setAttribute("variant",g),o.setAttribute("kind",h[this.variant]),o.setAttribute("size","medium"),o.removeAttribute("icon")})}render(){let i=this.caption||this._hasAlertCaptionSlot?n`<span class="caption">
1
+ import{a as m}from"./chunk-ECPWEUBG.js";import{a as b}from"./chunk-DINNT5P2.js";import{a as v}from"./chunk-GRL4DWKG.js";import{a as u,b as e}from"./chunk-5MOOXA2X.js";import{a as d,b as n,f as p}from"./chunk-4OT5AMS5.js";import{d as a}from"./chunk-IZ2LK5GK.js";var y=d`:host{display:block}.alert{--padding:var(--bl-size-m);--main-color:var(--bl-color-info);--main-bg-color:var(--bl-color-info-contrast);position:relative;display:flex;align-items:flex-start;justify-content:space-between;background-color:var(--main-bg-color);color:var(--bl-color-neutral-darker);box-shadow:inset 0 0 0 1px var(--main-color);border-radius:var(--bl-border-radius-l);padding:calc(var(--padding) / 2) var(--padding);padding-right:calc(var(--padding) / 2)}.description{font:var(--bl-font-body-text-2)}.wrapper{display:flex;flex-flow:column;flex-wrap:wrap;justify-content:space-between;flex:auto}.content{display:flex;margin-right:var(--bl-size-2xs);flex:20 1 70%;padding:calc(var(--padding) / 2) 0}.icon{padding:calc(var(--padding) / 2) 0;margin-right:var(--bl-size-2xs);color:var(--main-color)}.text-content{display:flex;flex-direction:column}.caption{color:var(--bl-color-neutral-darker);font:var(--bl-font-title-3-medium)}.actions{display:none;flex-wrap:wrap;gap:var(--bl-size-m);padding:calc(var(--padding) / 2) 0}.close{--bl-color-neutral-lightest:transparent}.caption + .description{margin-top:var(--bl-size-2xs)}:host([closed]){display:none}:host([variant="success"]) .alert{--main-color:var(--bl-color-success);--main-bg-color:var(--bl-color-success-contrast)}:host([variant="warning"]) .alert{--main-color:var(--bl-color-warning);--main-bg-color:var(--bl-color-warning-contrast)}:host([variant="danger"]) .alert{--main-color:var(--bl-color-danger);--main-bg-color:var(--bl-color-danger-contrast)}`,f=y;var t=class extends p{constructor(){super(...arguments);this.variant="info";this.closable=!1;this.closed=!1}static get styles(){return[f]}open(){this.closed=!1}close(){this.closed=!0}get _hasAlertCaptionSlot(){return this.querySelector(':scope > [slot="caption"]')!==null}_closeHandler(){this.closed=!0,this.onClose(!0)}_predefinedIcons(){switch(this.variant){case"success":return"check_fill";case"danger":return"close_fill";default:return this.variant}}_getIcon(){if(this.icon)return this.icon===!0?this._predefinedIcons():this.icon}_initAlertActionSlot(i){let r=i.target;r.assignedElements({flatten:!0}).forEach(o=>{var l,c;if(o.tagName!=="BL-BUTTON"){(l=o.parentNode)==null||l.removeChild(o);return}((c=this.shadowRoot)==null?void 0:c.querySelector(".actions")).style.display="flex";let g=r.name==="action-secondary"?"secondary":"primary",h={info:"neutral",warning:"neutral",success:"success",danger:"danger"};o.setAttribute("variant",g),o.setAttribute("kind",h[this.variant]),o.setAttribute("size","medium"),o.removeAttribute("icon")})}render(){let i=this.caption||this._hasAlertCaptionSlot?n`<span class="caption">
2
2
  <slot name="caption"> ${this.caption} </slot>
3
- </span>`:null,r=this._getIcon()?n`<bl-icon class="icon" name=${v(this._getIcon())}></bl-icon>`:null,s=this.closable?n`<bl-button
3
+ </span>`:null,r=this._getIcon()?n`<bl-icon class="icon" name=${b(this._getIcon())}></bl-icon>`:null,s=this.closable?n`<bl-button
4
4
  class="close"
5
5
  label="close"
6
6
  kind="neutral"
@@ -27,5 +27,5 @@ import{a as b}from"./chunk-ECPWEUBG.js";import{a as v}from"./chunk-DINNT5P2.js";
27
27
  </div>
28
28
  ${s}
29
29
  </div>
30
- `}};a([e({reflect:!0})],t.prototype,"variant",2),a([e()],t.prototype,"description",2),a([e({converter:b()})],t.prototype,"icon",2),a([e({type:Boolean,reflect:!0})],t.prototype,"closable",2),a([e()],t.prototype,"caption",2),a([e({type:Boolean,reflect:!0})],t.prototype,"closed",2),a([m("bl-close")],t.prototype,"onClose",2),t=a([u("bl-alert")],t);export{t as a};
31
- //# sourceMappingURL=chunk-HULHLSIH.js.map
30
+ `}};a([e({reflect:!0})],t.prototype,"variant",2),a([e()],t.prototype,"description",2),a([e({converter:m()})],t.prototype,"icon",2),a([e({type:Boolean,reflect:!0})],t.prototype,"closable",2),a([e()],t.prototype,"caption",2),a([e({type:Boolean,reflect:!0})],t.prototype,"closed",2),a([v("bl-close")],t.prototype,"onClose",2),t=a([u("bl-alert")],t);export{t as a};
31
+ //# sourceMappingURL=chunk-RQEU3SZQ.js.map
@@ -1,4 +1,4 @@
1
- import{a as m}from"./chunk-GRL4DWKG.js";import{a as f,b as v,c as g}from"./chunk-X2KXJYXQ.js";import{a as x}from"./chunk-3USCFSFQ.js";import{b as u}from"./chunk-7GK5LKBV.js";import{a as c,b as p,f as d}from"./chunk-4OT5AMS5.js";import{d as e}from"./chunk-IZ2LK5GK.js";var o=class extends x{};o.directiveName="unsafeSVG",o.resultType=2;var y=u(o);var l="./assets";function S(s){l=s}function w(){return l}var E=import.meta.url;E&&S(new URL(l,E).toString());var $=c`:host{display:inline-block}:host div{display:flex;align-items:stretch;width:1em;height:1em;min-width:1em;min-height:1em;overflow:hidden;transform:translateZ(0)}:host svg{width:1em;height:1em}`,P=$;var h=new Map,t=class extends d{static get styles(){return[P]}get name(){return this._iconName}set name(n){n!==this._iconName&&(this._iconName=n,this.load())}async load(){let r=`${w()}/${this.name}.svg`;h.has(r)||h.set(r,fetch(r));try{let i=await h.get(r),a=i==null?void 0:i.clone();a!=null&&a.ok?(this.svg=await a.text(),this.onLoad(`${this.name} icon loaded`),this.requestUpdate()):this.onError(`${this.name} icon failed to load`)}catch(i){this.onError(`${this.name} icon failed to load [${i}]`)}}render(){return p`<div aria-hidden="true">${y(this.svg)}</div>`}};e([v()],t.prototype,"name",1),e([m("bl-load")],t.prototype,"onLoad",2),e([m("bl-error")],t.prototype,"onError",2),e([g()],t.prototype,"svg",2),t=e([f("bl-icon")],t);export{S as a,w as b,t as c};
1
+ import{a as m}from"./chunk-GRL4DWKG.js";import{a as x}from"./chunk-3USCFSFQ.js";import{b as u}from"./chunk-7GK5LKBV.js";import{a as f,b as v,c as g}from"./chunk-5MOOXA2X.js";import{a as c,b as p,f as d}from"./chunk-4OT5AMS5.js";import{d as e}from"./chunk-IZ2LK5GK.js";var o=class extends x{};o.directiveName="unsafeSVG",o.resultType=2;var y=u(o);var l="./assets";function S(s){l=s}function w(){return l}var E=import.meta.url;E&&S(new URL(l,E).toString());var $=c`:host{display:inline-block}:host div{display:flex;align-items:stretch;width:1em;height:1em;min-width:1em;min-height:1em;overflow:hidden;transform:translateZ(0)}:host svg{width:1em;height:1em}`,P=$;var h=new Map,t=class extends d{static get styles(){return[P]}get name(){return this._iconName}set name(n){n!==this._iconName&&(this._iconName=n,this.load())}async load(){let r=`${w()}/${this.name}.svg`;h.has(r)||h.set(r,fetch(r));try{let i=await h.get(r),a=i==null?void 0:i.clone();a!=null&&a.ok?(this.svg=await a.text(),this.onLoad(`${this.name} icon loaded`),this.requestUpdate()):this.onError(`${this.name} icon failed to load`)}catch(i){this.onError(`${this.name} icon failed to load [${i}]`)}}render(){return p`<div aria-hidden="true">${y(this.svg)}</div>`}};e([v()],t.prototype,"name",1),e([m("bl-load")],t.prototype,"onLoad",2),e([m("bl-error")],t.prototype,"onError",2),e([g()],t.prototype,"svg",2),t=e([f("bl-icon")],t);export{S as a,w as b,t as c};
2
2
  /*! Bundled license information:
3
3
 
4
4
  lit-html/directives/unsafe-svg.js:
@@ -8,4 +8,4 @@ lit-html/directives/unsafe-svg.js:
8
8
  * SPDX-License-Identifier: BSD-3-Clause
9
9
  *)
10
10
  */
11
- //# sourceMappingURL=chunk-L6BUT2FV.js.map
11
+ //# sourceMappingURL=chunk-U752J5IG.js.map
@@ -0,0 +1,5 @@
1
+ import{a as w,b as f,c as E,d as y,e as x,f as _,g as k,h as M}from"./chunk-EZSEQHRH.js";import{a as g}from"./chunk-6LT7O7T2.js";import{a as l}from"./chunk-GRL4DWKG.js";import{a as u,b as a,c as n,e as s}from"./chunk-5MOOXA2X.js";import{a as c,b as m,f as b}from"./chunk-4OT5AMS5.js";import{d as o}from"./chunk-IZ2LK5GK.js";function z(i){return typeof i=="string"?document.getElementById(i):i instanceof Element?i:null}var S=c`:host{display:contents}.popover{--arrow-display:var(--bl-popover-arrow-display, none);--background-color:var(--bl-popover-background-color, var(--bl-color-neutral-full));--border-color:var(--bl-popover-border-color, var(--bl-color-primary-highlight));--border-size:var(--bl-popover-border-size, 1px);--padding:var(--bl-popover-padding, var(--bl-size-m));--border-radius:var(--bl-popover-border-radius, var(--bl-size-3xs));--position:var(--bl-popover-position, fixed);--max-width:var(--bl-popover-max-width, 100vw);--max-viewport:calc(100vw - var(--bl-size-s));position:var(--position);box-sizing:border-box;border:var(--border-size) solid var(--border-color);padding:var(--padding);border-radius:var(--border-radius);z-index:var(--bl-index-popover);max-width:min(var(--max-viewport), var(--max-width));width:max-content;hyphens:auto;background-color:var(--background-color);font:var(--bl-font-title-3-regular);color:var(--bl-color-neutral-darker)}.popover:not(.visible){visibility:hidden}.arrow{--arrow-rotation:45deg;--size:var(--bl-size-2xs);--arrow-position:calc((var(--size) / -2) - var(--border-size));box-sizing:border-box;display:var(--arrow-display);position:absolute;background-color:var(--background-color);width:var(--size);height:var(--size);transform:rotate(var(--arrow-rotation));border:var(--border-size) solid var(--border-color);border-bottom:none;border-right:none}.popover[data-placement*="bottom"] .arrow{top:var(--arrow-position)}.popover[data-placement*="top"] .arrow{--arrow-rotation:225deg;bottom:var(--arrow-position)}.popover[data-placement*="left"] .arrow{--arrow-rotation:135deg;right:var(--arrow-position)}.popover[data-placement*="right"] .arrow{--arrow-rotation:315deg;left:var(--arrow-position)}`,C=S;var t=class extends b{constructor(){super(...arguments);this.placement="bottom";this.fitSize=!1;this.offset=8;this._visible=!1;this._handleClickOutside=e=>{let r=e.composedPath();!r.includes(this._target)&&!r.includes(this)&&this.hide()}}static get styles(){return[C]}connectedCallback(){super.connectedCallback(),this._handlePopoverShowEvent=this._handlePopoverShowEvent.bind(this),this._handleKeydownEvent=this._handleKeydownEvent.bind(this),this._handleClickOutside=this._handleClickOutside.bind(this)}disconnectedCallback(){super.disconnectedCallback(),this.popoverAutoUpdateCleanup&&this.popoverAutoUpdateCleanup()}getMiddleware(){let e=[];return e.push(y(this.offset),E(),f(),x({padding:4})),this.fitSize&&e.push(_({apply(r){r.elements.floating&&r.elements.reference&&Object.assign(r.elements.floating.style,{"min-width":`${r.elements.reference.getBoundingClientRect().width}px`})}})),e.push(w({element:this.arrow,padding:5})),e}setPopover(){this.target&&(this.popoverAutoUpdateCleanup=k(this.target,this._popover,()=>{M(this.target,this._popover,{placement:this.placement,strategy:"fixed",middleware:this.getMiddleware()}).then(({x:e,y:r,placement:d,middlewareData:p})=>{if(Object.assign(this._popover.style,{left:`${e}px`,top:`${r}px`}),this._popover.dataset.placement=d,p.arrow){let{x:v,y:h}=p.arrow;Object.assign(this.arrow.style,{left:v!=null?`${v}px`:"",top:h!=null?`${h}px`:""})}})}))}get target(){return this._target}set target(e){let r=z(e);if(!r){console.warn("BlPopover target only accepts an Element instance or a string id of a DOM element.");return}this._target=r}show(){this._visible=!0,this.setPopover(),this.onBlPopoverShow(""),document.addEventListener("click",this._handleClickOutside),document.addEventListener("keydown",this._handleKeydownEvent),document.addEventListener("bl-popover-show",this._handlePopoverShowEvent)}hide(){this._visible=!1,document.removeEventListener("click",this._handleClickOutside),document.removeEventListener("keydown",this._handleKeydownEvent),document.removeEventListener("bl-popover-show",this._handlePopoverShowEvent),this.onBlPopoverHide("")}get visible(){return this._visible}_handlePopoverShowEvent(e){if(e.target!==this){let{parentElement:r}=e.target;!this.contains(r)&&e.target.tagName===this.tagName&&this.hide()}}_handleKeydownEvent(e){e.key==="Escape"&&this.visible&&(e.preventDefault(),this.hide())}render(){let e=g({popover:!0,visible:this._visible});return m`<div class=${e}>
2
+ <slot id="popover" aria-live=${this._visible?"polite":"off"}></slot>
3
+ <div class="arrow" aria-hidden="true"></div>
4
+ </div>`}};o([s(".popover")],t.prototype,"_popover",2),o([s(".arrow")],t.prototype,"arrow",2),o([a({type:String})],t.prototype,"placement",2),o([n()],t.prototype,"_target",2),o([a({type:Boolean,attribute:"fit-size"})],t.prototype,"fitSize",2),o([a({type:Number})],t.prototype,"offset",2),o([n()],t.prototype,"_visible",2),o([l("bl-popover-show")],t.prototype,"onBlPopoverShow",2),o([l("bl-popover-hide")],t.prototype,"onBlPopoverHide",2),o([a()],t.prototype,"target",1),t=o([u("bl-popover")],t);export{z as a,t as b};
5
+ //# sourceMappingURL=chunk-UCLJCOUS.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../src/utilities/elements.ts", "../src/components/popover/bl-popover.css", "../src/components/popover/bl-popover.ts"],
4
+ "sourcesContent": ["export function getMiddleOfElement(element: Element) {\n const { x, y, width, height } = element.getBoundingClientRect();\n\n return {\n x: Math.floor(x + window.pageXOffset + width / 2),\n y: Math.floor(y + window.pageYOffset + height / 2),\n };\n}\n\nexport function getTarget(value: string | Element): Element | null {\n if (typeof value === \"string\") {\n return document.getElementById(value) as Element;\n } else if (value instanceof Element) {\n return value;\n }\n\n return null;\n}\n", "import {css} from 'lit';\nexport const styles = css`:host{display:contents}.popover{--arrow-display:var(--bl-popover-arrow-display, none);--background-color:var(--bl-popover-background-color, var(--bl-color-neutral-full));--border-color:var(--bl-popover-border-color, var(--bl-color-primary-highlight));--border-size:var(--bl-popover-border-size, 1px);--padding:var(--bl-popover-padding, var(--bl-size-m));--border-radius:var(--bl-popover-border-radius, var(--bl-size-3xs));--position:var(--bl-popover-position, fixed);--max-width:var(--bl-popover-max-width, 100vw);--max-viewport:calc(100vw - var(--bl-size-s));position:var(--position);box-sizing:border-box;border:var(--border-size) solid var(--border-color);padding:var(--padding);border-radius:var(--border-radius);z-index:var(--bl-index-popover);max-width:min(var(--max-viewport), var(--max-width));width:max-content;hyphens:auto;background-color:var(--background-color);font:var(--bl-font-title-3-regular);color:var(--bl-color-neutral-darker)}.popover:not(.visible){visibility:hidden}.arrow{--arrow-rotation:45deg;--size:var(--bl-size-2xs);--arrow-position:calc((var(--size) / -2) - var(--border-size));box-sizing:border-box;display:var(--arrow-display);position:absolute;background-color:var(--background-color);width:var(--size);height:var(--size);transform:rotate(var(--arrow-rotation));border:var(--border-size) solid var(--border-color);border-bottom:none;border-right:none}.popover[data-placement*=\"bottom\"] .arrow{top:var(--arrow-position)}.popover[data-placement*=\"top\"] .arrow{--arrow-rotation:225deg;bottom:var(--arrow-position)}.popover[data-placement*=\"left\"] .arrow{--arrow-rotation:135deg;right:var(--arrow-position)}.popover[data-placement*=\"right\"] .arrow{--arrow-rotation:315deg;left:var(--arrow-position)}`;\nexport default styles;\n", "import { CSSResultGroup, html, LitElement, TemplateResult } from \"lit\";\nimport { customElement, property, query, state } from \"lit/decorators.js\";\nimport { classMap } from \"lit/directives/class-map.js\";\nimport {\n computePosition,\n flip,\n shift,\n offset,\n arrow,\n inline,\n autoUpdate,\n size,\n Middleware,\n MiddlewareState,\n} from \"@floating-ui/dom\";\nimport { getTarget } from \"../../utilities/elements\";\nimport { event, EventDispatcher } from \"../../utilities/event\";\nimport style from \"./bl-popover.css\";\n\nexport type Placement =\n | \"top-start\"\n | \"top\"\n | \"top-end\"\n | \"bottom-start\"\n | \"bottom\"\n | \"bottom-end\"\n | \"left-start\"\n | \"left\"\n | \"left-end\"\n | \"right-start\"\n | \"right\"\n | \"right-end\";\n\n/**\n * @tag bl-popover\n * @summary Baklava Popover component\n *\n * @cssproperty [--bl-popover-arrow-display=none] - Sets the display of popovers arrow. Set as `block` to make arrow visible.\n * @cssproperty [--bl-popover-background-color=--bl-color-neutral-full] - Sets the background color of popover.\n * @cssproperty [--bl-popover-border-color=--bl-color-primary-highlight] - Sets the border color of popover.\n * @cssproperty [--bl-popover-border-size=1px] - Sets the border size of popover. You can set it to `0px` to not have a border (if you use a custom background color). Always use with a length unit.\n * @cssproperty [--bl-popover-padding=--bl-size-m] - Sets the padding of popover.\n * @cssproperty [--bl-popover-border-radius=--bl-size-3xs] - Sets the border radius of popover.\n * @cssproperty [--bl-popover-max-width=100vw] - Sets the maximum width of the popover (including border and padding).\n * @cssproperty [--bl-popover-position=fixed] - Sets the position of popover. You can set it to `absolute` if parent element is a fixed positioned element like drawer or dialog.\n */\n@customElement(\"bl-popover\")\nexport default class BlPopover extends LitElement {\n static get styles(): CSSResultGroup {\n return [style];\n }\n\n @query(\".popover\") private _popover: HTMLElement;\n @query(\".arrow\") private arrow: HTMLElement;\n\n /**\n * Sets placement of the popover\n */\n @property({ type: String })\n placement: Placement = \"bottom\";\n\n /**\n * Target elements state\n */\n @state() _target: string | Element;\n\n /**\n * Sets size of popover same as trigger element\n */\n @property({ type: Boolean, attribute: \"fit-size\" })\n fitSize = false;\n\n /**\n * Sets the distance between popover and target/trigger element\n */\n @property({ type: Number })\n offset = 8;\n\n /**\n * Visibility state\n */\n @state() private _visible = false;\n\n /**\n * Fires when the popover is shown\n */\n @event(\"bl-popover-show\") private onBlPopoverShow: EventDispatcher<string>;\n\n /**\n * Fires when popover becomes hidden\n */\n @event(\"bl-popover-hide\") private onBlPopoverHide: EventDispatcher<string>;\n\n connectedCallback() {\n super.connectedCallback();\n\n this._handlePopoverShowEvent = this._handlePopoverShowEvent.bind(this);\n this._handleKeydownEvent = this._handleKeydownEvent.bind(this);\n this._handleClickOutside = this._handleClickOutside.bind(this);\n }\n\n disconnectedCallback() {\n super.disconnectedCallback();\n\n this.popoverAutoUpdateCleanup && this.popoverAutoUpdateCleanup();\n }\n\n private getMiddleware(): Middleware[] {\n const middlewareParams: Middleware[] = [];\n\n middlewareParams.push(offset(this.offset), inline(), flip(), shift({ padding: 4 }));\n\n if (this.fitSize) {\n middlewareParams.push(\n size({\n apply(args: MiddlewareState) {\n if (args.elements.floating && args.elements.reference) {\n Object.assign(args.elements.floating.style, {\n \"min-width\": `${args.elements.reference.getBoundingClientRect().width}px`,\n });\n }\n },\n })\n );\n }\n\n middlewareParams.push(arrow({ element: this.arrow, padding: 5 }));\n\n return middlewareParams;\n }\n\n private _handleClickOutside = (event: MouseEvent) => {\n const eventPath = event.composedPath() as HTMLElement[];\n\n if (!eventPath.includes(this._target as HTMLElement) && !eventPath.includes(this)) {\n this.hide();\n }\n };\n\n private popoverAutoUpdateCleanup: () => void;\n\n private setPopover() {\n if (this.target) {\n this.popoverAutoUpdateCleanup = autoUpdate(this.target as Element, this._popover, () => {\n computePosition(this.target as Element, this._popover, {\n placement: this.placement,\n strategy: \"fixed\",\n middleware: this.getMiddleware(),\n }).then(({ x, y, placement, middlewareData }) => {\n Object.assign(this._popover.style, {\n left: `${x}px`,\n top: `${y}px`,\n });\n\n this._popover.dataset.placement = placement;\n\n if (middlewareData.arrow) {\n const { x: arrowX, y: arrowY } = middlewareData.arrow;\n\n Object.assign(this.arrow.style, {\n left: arrowX != null ? `${arrowX}px` : \"\",\n top: arrowY != null ? `${arrowY}px` : \"\",\n });\n }\n });\n });\n }\n }\n\n /**\n * Sets the target element of the popover to align and trigger.\n * It can be a string id of the target element or can be a direct Element reference of it.\n */\n @property()\n get target(): string | Element {\n return this._target;\n }\n\n set target(value: string | Element) {\n const target = getTarget(value);\n\n if (!target) {\n console.warn(\n \"BlPopover target only accepts an Element instance or a string id of a DOM element.\"\n );\n return;\n }\n\n this._target = target;\n }\n\n /**\n * Shows popover\n */\n show() {\n this._visible = true;\n this.setPopover();\n this.onBlPopoverShow(\"\");\n document.addEventListener(\"click\", this._handleClickOutside);\n document.addEventListener(\"keydown\", this._handleKeydownEvent);\n document.addEventListener(\"bl-popover-show\", this._handlePopoverShowEvent);\n }\n\n /**\n * Hides popover\n */\n hide() {\n this._visible = false;\n document.removeEventListener(\"click\", this._handleClickOutside);\n document.removeEventListener(\"keydown\", this._handleKeydownEvent);\n document.removeEventListener(\"bl-popover-show\", this._handlePopoverShowEvent);\n this.onBlPopoverHide(\"\");\n }\n\n /**\n * Gives the visibility status of the popover\n */\n get visible(): boolean {\n return this._visible;\n }\n\n private _handlePopoverShowEvent(event: Event) {\n if (event.target !== this) {\n const { parentElement } = event.target as HTMLElement;\n const isNestedPopover = this.contains(parentElement);\n\n if (!isNestedPopover && (event.target as HTMLElement).tagName === this.tagName) {\n this.hide();\n }\n }\n }\n\n private _handleKeydownEvent(event: KeyboardEvent) {\n if (event.key === \"Escape\" && this.visible) {\n event.preventDefault();\n this.hide();\n }\n }\n\n render(): TemplateResult {\n const classes = classMap({\n popover: true,\n visible: this._visible,\n });\n\n return html`<div class=${classes}>\n <slot id=\"popover\" aria-live=${this._visible ? \"polite\" : \"off\"}></slot>\n <div class=\"arrow\" aria-hidden=\"true\"></div>\n </div>`;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n \"bl-popover\": BlPopover;\n }\n}\n"],
5
+ "mappings": "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",
6
+ "names": ["getTarget", "value", "styles", "i", "bl_popover_default", "BlPopover", "s", "event", "eventPath", "bl_popover_default", "middlewareParams", "offset", "inline", "flip", "shift", "size", "args", "arrow", "autoUpdate", "computePosition", "x", "y", "placement", "middlewareData", "arrowX", "arrowY", "value", "target", "getTarget", "parentElement", "classes", "o", "__decorateClass", "i", "e", "t"]
7
+ }
@@ -0,0 +1,63 @@
1
+ import{a as f}from"./chunk-73RGV4UX.js";import{a as n}from"./chunk-DINNT5P2.js";import{a as s}from"./chunk-GRL4DWKG.js";import{a as u,b as o,c as h,e as l}from"./chunk-5MOOXA2X.js";import{a,b as d,f as c}from"./chunk-4OT5AMS5.js";import{d as e}from"./chunk-IZ2LK5GK.js";var D=a`:host{position:relative;display:inline-block}:host([kind="neutral"]) bl-popover{--bl-popover-border-color:var(--bl-color-neutral-darker)}:host([kind="success"]) bl-popover{--bl-popover-border-color:var(--bl-color-success)}:host([kind="danger"]) bl-popover{--bl-popover-border-color:var(--bl-color-danger)}.popover-content{display:flex;flex-direction:column;gap:var(--bl-size-xs)}`,w=D;var v="bl-dropdown",r=class extends c{constructor(){super(...arguments);this._isPopoverOpen=!1;this.variant="primary";this.kind="default";this.size="medium";this.disabled=!1;this.focusedOptionIndex=-1}static get styles(){return[w]}connectedCallback(){super.connectedCallback(),this.addEventListener("keydown",this.handleKeyDown)}disconnectedCallback(){super.disconnectedCallback(),this.removeEventListener("keydown",this.handleKeyDown)}firstUpdated(){this._popover.target=this._button}get opened(){return this._isPopoverOpen}_handleClick(){!this._isPopoverOpen&&!this.disabled?this.open():this.close()}handleKeyDown(i){if(["ArrowDown","ArrowRight"].includes(i.key))this.focusedOptionIndex++;else if(["ArrowUp","ArrowLeft"].includes(i.key))this.focusedOptionIndex--;else if(i.key==="Escape"){this.focusedOptionIndex=-1,this.close();return}else return;this.focusedOptionIndex=Math.max(0,Math.min(this.focusedOptionIndex,this.options.length-1)),this.options[this.focusedOptionIndex].focus(),i.preventDefault()}get options(){return[...this.querySelectorAll(b)]}open(){this._isPopoverOpen=!0,this._popover.show(),this.onOpen("Dropdown opened!")}close(){this._isPopoverOpen=!1,this._popover.visible&&this._popover.hide(),this.onClose("Dropdown closed!")}render(){return d`<bl-button
2
+ dropdown
3
+ .active=${this.opened}
4
+ ?disabled=${this.disabled}
5
+ variant="${this.variant}"
6
+ kind="${this.kind}"
7
+ size="${this.size}"
8
+ @bl-click="${this._handleClick}"
9
+ >
10
+ ${this.label}
11
+ </bl-button>
12
+ <bl-popover fit-size placement="bottom-start" @bl-popover-hide="${this.close}"
13
+ ><div class="popover-content">
14
+ <slot></slot></div
15
+ ></bl-popover> `}};e([l("bl-popover")],r.prototype,"_popover",2),e([l("bl-button")],r.prototype,"_button",2),e([h()],r.prototype,"_isPopoverOpen",2),e([o({type:String,reflect:!0})],r.prototype,"label",2),e([o({type:String,reflect:!0})],r.prototype,"variant",2),e([o({type:String,reflect:!0})],r.prototype,"kind",2),e([o({type:String,reflect:!0})],r.prototype,"size",2),e([o({type:Boolean,reflect:!0})],r.prototype,"disabled",2),e([s("bl-dropdown-open")],r.prototype,"onOpen",2),e([s("bl-dropdown-close")],r.prototype,"onClose",2),r=e([u(v)],r);var $=a`:host{width:100%;--bl-button-display:block;--bl-button-justify:start}`,x=$;var b="bl-dropdown-item",p=class extends c{static get styles(){return[x]}_handleClick(){var i,k;(i=this.BlDropdownField)==null||i.close(),(k=this.BlSplitButtonField)==null||k.close(),this.onClick("Action clicked!")}focus(){this.menuElement.focus()}connectedCallback(){super.connectedCallback(),this.BlDropdownGroupField=this.closest(f),this.BlDropdownField=this.closest(v),this.BlSplitButtonField=this.closest(m),!this.BlDropdownField&&!this.BlDropdownGroupField&&!this.BlSplitButtonField&&console.warn(`bl-dropdown-item is designed to be used inside a ${f}, ${v} or ${m}`,this)}disconnectedCallback(){super.disconnectedCallback()}render(){return d`<bl-button
16
+ variant="tertiary"
17
+ kind="neutral"
18
+ icon="${n(this.icon)}"
19
+ role="menuitem"
20
+ @click="${this._handleClick}"
21
+ ><slot></slot>
22
+ </bl-button>`}};e([o({type:String})],p.prototype,"icon",2),e([s("bl-dropdown-item-click")],p.prototype,"onClick",2),e([l("[role=menuitem]")],p.prototype,"menuElement",2),p=e([u(b)],p);var C=a`:host{position:relative;display:inline-block}:host([kind="neutral"]) bl-popover{--bl-popover-border-color:var(--bl-color-neutral-darker)}:host([kind="success"]) bl-popover{--bl-popover-border-color:var(--bl-color-success)}:host([kind="danger"]) bl-popover{--bl-popover-border-color:var(--bl-color-danger)}.split-button-container{display:flex}.split-main-button{width:100%;--bl-border-radius-m:calc(var(--bl-size-xs) / 2) 0 0 calc(var(--bl-size-xs) / 2)}.split-main-button:focus{--bl-border-radius-l:calc(var(--bl-size-m) / 2) 0 0 calc(var(--bl-size-m) / 2)}.dropdown-button{--bl-border-radius-m:0 calc(var(--bl-size-xs) / 2) calc(var(--bl-size-xs) / 2) 0}.dropdown-button:focus{--bl-border-radius-l:0 calc(var(--bl-size-m) / 2) calc(var(--bl-size-m) / 2) 0}:host([variant="secondary"]) .dropdown-button{left:-1px}:host([dropdown-disabled][variant="secondary"]) .dropdown-button{left:0}.split-divider{display:block;height:var(--bl-size-2xl);width:1px;background-color:var(--bl-color-neutral-full)}:host([variant="secondary"]) .split-divider{display:none}:host([size="small"]) .split-divider{height:var(--bl-size-xl)}:host([size="large"]) .split-divider{height:var(--bl-size-3xl)}:host([dropdown-disabled][disabled]) .split-divider{display:block;background-color:var(--bl-color-neutral-lighter)}`,_=C;var m="bl-split-button",t=class extends c{constructor(){super(...arguments);this._isPopoverOpen=!1;this.variant="primary";this.kind="default";this.size="medium";this.disabled=!1;this.loading=!1;this.dropdownDisabled=!1;this.target="_self";this.autofocus=!1;this.focusedOptionIndex=-1}static get styles(){return[_]}connectedCallback(){super.connectedCallback(),this.addEventListener("keydown",this.handleKeyDown)}disconnectedCallback(){super.disconnectedCallback(),this.removeEventListener("keydown",this.handleKeyDown)}firstUpdated(){this._popover.target=this.trigger}get opened(){return this._isPopoverOpen}_handleClick(){!this._isPopoverOpen&&!this.dropdownDisabled?this.open():this.close()}_handlePrimaryClick(){this.onClick("Click event fired!")}handleKeyDown(i){if(this._isPopoverOpen&&["ArrowDown","ArrowRight"].includes(i.key))this.focusedOptionIndex++;else if(this._isPopoverOpen&&["ArrowUp","ArrowLeft"].includes(i.key))this.focusedOptionIndex--;else if(this._isPopoverOpen&&i.key==="Escape"){this.focusedOptionIndex=-1,this.close();return}else return;this.focusedOptionIndex=Math.max(0,Math.min(this.focusedOptionIndex,this.options.length-1)),this.options[this.focusedOptionIndex].focus(),i.preventDefault()}get options(){return[...this.querySelectorAll(b)]}open(){this._isPopoverOpen=!0,this._popover.show(),this.onOpen("Dropdown opened!")}close(){this._isPopoverOpen&&(this._isPopoverOpen=!1,this._popover.visible&&this._popover.hide(),this.onClose("Dropdown closed!"))}render(){return d` <div class="split-button-container" id="split-button-container">
23
+ <bl-button
24
+ id="split-main-button"
25
+ class="split-main-button"
26
+ variant="${this.variant}"
27
+ kind="${this.kind}"
28
+ size="${this.size}"
29
+ loading-label="${n(this.loadingLabel)}"
30
+ icon="${n(this.icon)}"
31
+ href="${n(this.type)}"
32
+ ?disabled="${this.disabled}"
33
+ ?loading="${this.loading}"
34
+ type="${this.type}"
35
+ target="${n(this.target)}"
36
+ form="${n(this.form)}"
37
+ ?autofocus="${this.autofocus}"
38
+ @bl-click="${this._handlePrimaryClick}"
39
+ >
40
+ ${this.label}
41
+ </bl-button>
42
+ <div class="split-divider"></div>
43
+ <bl-button
44
+ id="dropdown-button"
45
+ class="dropdown-button"
46
+ .active="${this.opened}"
47
+ icon="${this.opened?"arrow_up":"arrow_down"}"
48
+ ?disabled="${this.dropdownDisabled}"
49
+ variant="${this.variant}"
50
+ kind="${this.kind}"
51
+ size="${this.size}"
52
+ ?loading="${this.loading}"
53
+ label="split-dropdown-button"
54
+ @bl-click="${this._handleClick}"
55
+ >
56
+ </bl-button>
57
+ <bl-popover fit-size placement="bottom-start" @bl-popover-hide="${this.close}">
58
+ <div class="popover-content">
59
+ <slot></slot>
60
+ </div>
61
+ </bl-popover>
62
+ </div>`}};e([l("#split-button-container")],t.prototype,"trigger",2),e([l("bl-popover")],t.prototype,"_popover",2),e([h()],t.prototype,"_isPopoverOpen",2),e([o({type:String,reflect:!0})],t.prototype,"label",2),e([o({type:String,reflect:!0})],t.prototype,"variant",2),e([o({type:String,reflect:!0})],t.prototype,"kind",2),e([o({type:String,reflect:!0})],t.prototype,"size",2),e([o({type:String,reflect:!0})],t.prototype,"href",2),e([o({type:Boolean,reflect:!0})],t.prototype,"disabled",2),e([o({type:Boolean,reflect:!0})],t.prototype,"loading",2),e([o({type:String,attribute:"loading-label"})],t.prototype,"loadingLabel",2),e([o({attribute:"dropdown-disabled",type:Boolean})],t.prototype,"dropdownDisabled",2),e([o({type:String})],t.prototype,"icon",2),e([o({type:String})],t.prototype,"target",2),e([o({type:String})],t.prototype,"type",2),e([o({type:Boolean,reflect:!0})],t.prototype,"autofocus",2),e([o({type:String})],t.prototype,"form",2),e([s("bl-dropdown-open")],t.prototype,"onOpen",2),e([s("bl-dropdown-close")],t.prototype,"onClose",2),e([s("bl-click")],t.prototype,"onClick",2),t=e([u(m)],t);export{m as a,t as b,b as c,p as d,v as e,r as f};
63
+ //# sourceMappingURL=chunk-WH6MQCKK.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../src/components/dropdown/bl-dropdown.css", "../src/components/dropdown/bl-dropdown.ts", "../src/components/dropdown/item/bl-dropdown-item.css", "../src/components/dropdown/item/bl-dropdown-item.ts", "../src/components/split-button/bl-split-button.css", "../src/components/split-button/bl-split-button.ts"],
4
+ "sourcesContent": ["import {css} from 'lit';\nexport const styles = css`:host{position:relative;display:inline-block}:host([kind=\"neutral\"]) bl-popover{--bl-popover-border-color:var(--bl-color-neutral-darker)}:host([kind=\"success\"]) bl-popover{--bl-popover-border-color:var(--bl-color-success)}:host([kind=\"danger\"]) bl-popover{--bl-popover-border-color:var(--bl-color-danger)}.popover-content{display:flex;flex-direction:column;gap:var(--bl-size-xs)}`;\nexport default styles;\n", "import { LitElement, html, CSSResultGroup, TemplateResult } from \"lit\";\nimport { customElement, property, state, query } from \"lit/decorators.js\";\nimport { event, EventDispatcher } from \"../../utilities/event\";\nimport \"../button/bl-button\";\nimport BlButton, { ButtonSize, ButtonVariant, ButtonKind } from \"../button/bl-button\";\nimport BlPopover from \"../popover/bl-popover\";\nimport style from \"./bl-dropdown.css\";\nimport BlDropdownItem, { blDropdownItemTag } from \"./item/bl-dropdown-item\";\n\nexport const blDropdownTag = \"bl-dropdown\";\n\n/**\n * @tag bl-dropdown\n * @summary Baklava Dropdown component\n */\n@customElement(blDropdownTag)\nexport default class BlDropdown extends LitElement {\n static get styles(): CSSResultGroup {\n return [style];\n }\n\n @query(\"bl-popover\")\n private _popover: BlPopover;\n\n @query(\"bl-button\")\n private _button: BlButton;\n\n @state() private _isPopoverOpen = false;\n\n /**\n * Sets the dropdown button label\n */\n @property({ type: String, reflect: true })\n label: string;\n\n /**\n * Sets the dropdown button variant\n */\n @property({ type: String, reflect: true })\n variant: ButtonVariant = \"primary\";\n\n /**\n * Sets the dropdown button kind\n */\n @property({ type: String, reflect: true })\n kind: ButtonKind = \"default\";\n\n /**\n * Sets the dropdown button size\n */\n @property({ type: String, reflect: true })\n size: ButtonSize = \"medium\";\n\n /**\n * Sets button as disabled\n */\n @property({ type: Boolean, reflect: true })\n disabled = false;\n\n /**\n * Fires when dropdown opened\n */\n @event(\"bl-dropdown-open\") private onOpen: EventDispatcher<string>;\n\n /**\n * Fires when dropdown closed\n */\n @event(\"bl-dropdown-close\") private onClose: EventDispatcher<string>;\n\n connectedCallback() {\n super.connectedCallback();\n this.addEventListener(\"keydown\", this.handleKeyDown);\n }\n\n disconnectedCallback() {\n super.disconnectedCallback();\n this.removeEventListener(\"keydown\", this.handleKeyDown);\n }\n\n firstUpdated() {\n // `_button` will be undefined during the initial render.\n // To ensure proper rendering, we set `_popover.target` after the template has been created.\n this._popover.target = this._button;\n }\n\n get opened() {\n return this._isPopoverOpen;\n }\n\n private _handleClick() {\n !this._isPopoverOpen && !this.disabled ? this.open() : this.close();\n }\n\n private focusedOptionIndex = -1;\n\n private handleKeyDown(event: KeyboardEvent) {\n // Next action\n if ([\"ArrowDown\", \"ArrowRight\"].includes(event.key)) {\n this.focusedOptionIndex++;\n\n // Previous action\n } else if ([\"ArrowUp\", \"ArrowLeft\"].includes(event.key)) {\n this.focusedOptionIndex--;\n // Select action\n } else if (event.key === \"Escape\") {\n this.focusedOptionIndex = -1;\n this.close();\n return;\n } else {\n // Other keys are not our interest here\n return;\n }\n\n // Don't exceed array indexes\n this.focusedOptionIndex = Math.max(\n 0,\n Math.min(this.focusedOptionIndex, this.options.length - 1)\n );\n\n this.options[this.focusedOptionIndex].focus();\n\n event.preventDefault();\n }\n\n get options(): BlDropdownItem[] {\n return [...this.querySelectorAll(blDropdownItemTag)];\n }\n\n open() {\n this._isPopoverOpen = true;\n this._popover.show();\n this.onOpen(\"Dropdown opened!\");\n }\n\n close() {\n this._isPopoverOpen = false;\n this._popover.visible && this._popover.hide();\n this.onClose(\"Dropdown closed!\");\n }\n\n render(): TemplateResult {\n return html`<bl-button\n dropdown\n .active=${this.opened}\n ?disabled=${this.disabled}\n variant=\"${this.variant}\"\n kind=\"${this.kind}\"\n size=\"${this.size}\"\n @bl-click=\"${this._handleClick}\"\n >\n ${this.label}\n </bl-button>\n <bl-popover fit-size placement=\"bottom-start\" @bl-popover-hide=\"${this.close}\"\n ><div class=\"popover-content\">\n <slot></slot></div\n ></bl-popover> `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n [blDropdownTag]: BlDropdown;\n }\n}\n", "import {css} from 'lit';\nexport const styles = css`:host{width:100%;--bl-button-display:block;--bl-button-justify:start}`;\nexport default styles;\n", "import { LitElement, html, CSSResultGroup, TemplateResult } from \"lit\";\nimport { customElement, property, query } from \"lit/decorators.js\";\nimport { ifDefined } from \"lit/directives/if-defined.js\";\nimport { event, EventDispatcher } from \"../../../utilities/event\";\nimport \"../../button/bl-button\";\nimport BlButton from \"../../button/bl-button\";\nimport { BaklavaIcon } from \"../../icon/icon-list\";\nimport type BlSplitButton from \"../../split-button/bl-split-button\";\nimport { blSplitButtonTag } from \"../../split-button/bl-split-button\";\nimport type BlDropdown from \"../bl-dropdown\";\nimport { blDropdownTag } from \"../bl-dropdown\";\nimport type BlDropdownGroup from \"../group/bl-dropdown-group\";\nimport { blDropdownGroupTag } from \"../group/bl-dropdown-group\";\nimport style from \"./bl-dropdown-item.css\";\n\nexport const blDropdownItemTag = \"bl-dropdown-item\";\n\n/**\n * @tag bl-dropdown-item\n * @summary Baklava Dropdown Item component\n */\n@customElement(blDropdownItemTag)\nexport default class BlDropdownItem extends LitElement {\n static get styles(): CSSResultGroup {\n return [style];\n }\n\n /**\n * Sets the icon name. Shows icon with bl-icon component\n */\n\n @property({ type: String })\n icon?: BaklavaIcon;\n\n @event(\"bl-dropdown-item-click\") private onClick: EventDispatcher<string>;\n\n private _handleClick() {\n this.BlDropdownField?.close();\n this.BlSplitButtonField?.close();\n this.onClick(\"Action clicked!\");\n }\n\n @query(\"[role=menuitem]\") private menuElement: BlButton;\n\n /**\n * Focuses this action\n */\n focus() {\n this.menuElement.focus();\n }\n\n private BlDropdownGroupField: BlDropdownGroup | null;\n private BlDropdownField: BlDropdown | null;\n private BlSplitButtonField: BlSplitButton | null;\n\n connectedCallback(): void {\n super.connectedCallback();\n\n this.BlDropdownGroupField = this.closest<BlDropdownGroup>(blDropdownGroupTag);\n this.BlDropdownField = this.closest<BlDropdown>(blDropdownTag);\n this.BlSplitButtonField = this.closest<BlSplitButton>(blSplitButtonTag);\n\n if (!this.BlDropdownField && !this.BlDropdownGroupField && !this.BlSplitButtonField) {\n console.warn(\n `bl-dropdown-item is designed to be used inside a ${blDropdownGroupTag}, ${blDropdownTag} or ${blSplitButtonTag}`,\n this\n );\n }\n }\n\n disconnectedCallback(): void {\n super.disconnectedCallback();\n }\n\n render(): TemplateResult {\n return html`<bl-button\n variant=\"tertiary\"\n kind=\"neutral\"\n icon=\"${ifDefined(this.icon)}\"\n role=\"menuitem\"\n @click=\"${this._handleClick}\"\n ><slot></slot>\n </bl-button>`;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n [blDropdownItemTag]: BlDropdownItem;\n }\n}\n", "import {css} from 'lit';\nexport const styles = css`:host{position:relative;display:inline-block}:host([kind=\"neutral\"]) bl-popover{--bl-popover-border-color:var(--bl-color-neutral-darker)}:host([kind=\"success\"]) bl-popover{--bl-popover-border-color:var(--bl-color-success)}:host([kind=\"danger\"]) bl-popover{--bl-popover-border-color:var(--bl-color-danger)}.split-button-container{display:flex}.split-main-button{width:100%;--bl-border-radius-m:calc(var(--bl-size-xs) / 2) 0 0 calc(var(--bl-size-xs) / 2)}.split-main-button:focus{--bl-border-radius-l:calc(var(--bl-size-m) / 2) 0 0 calc(var(--bl-size-m) / 2)}.dropdown-button{--bl-border-radius-m:0 calc(var(--bl-size-xs) / 2) calc(var(--bl-size-xs) / 2) 0}.dropdown-button:focus{--bl-border-radius-l:0 calc(var(--bl-size-m) / 2) calc(var(--bl-size-m) / 2) 0}:host([variant=\"secondary\"]) .dropdown-button{left:-1px}:host([dropdown-disabled][variant=\"secondary\"]) .dropdown-button{left:0}.split-divider{display:block;height:var(--bl-size-2xl);width:1px;background-color:var(--bl-color-neutral-full)}:host([variant=\"secondary\"]) .split-divider{display:none}:host([size=\"small\"]) .split-divider{height:var(--bl-size-xl)}:host([size=\"large\"]) .split-divider{height:var(--bl-size-3xl)}:host([dropdown-disabled][disabled]) .split-divider{display:block;background-color:var(--bl-color-neutral-lighter)}`;\nexport default styles;\n", "import { CSSResultGroup, html, LitElement, TemplateResult } from \"lit\";\nimport { customElement, property, state, query } from \"lit/decorators.js\";\nimport { ifDefined } from \"lit/directives/if-defined.js\";\nimport { ReferenceElement } from \"@floating-ui/core\";\nimport { event, EventDispatcher } from \"../../utilities/event\";\nimport \"../button/bl-button\";\nimport { TargetType } from \"../button/bl-button\";\nimport { ButtonSize, ButtonVariant, ButtonKind } from \"../button/bl-button\";\nimport BlDropdownItem, { blDropdownItemTag } from \"../dropdown/item/bl-dropdown-item\";\nimport { BaklavaIcon } from \"../icon/icon-list\";\nimport BlPopover from \"../popover/bl-popover\";\nimport style from \"./bl-split-button.css\";\n\nexport const blSplitButtonTag = \"bl-split-button\";\n\n/**\n * @tag bl-split-button\n * @summary Baklava Split Button component\n */\n\n@customElement(blSplitButtonTag)\nexport default class BlSplitButton extends LitElement {\n static get styles(): CSSResultGroup {\n return [style];\n }\n\n @query(\"#split-button-container\") private trigger: ReferenceElement;\n\n @query(\"bl-popover\")\n private _popover: BlPopover;\n\n @state() private _isPopoverOpen = false;\n\n /**\n * Sets the split button label\n */\n @property({ type: String, reflect: true })\n label: string;\n\n /**\n * Sets the split button variant\n */\n @property({ type: String, reflect: true })\n variant: Exclude<ButtonVariant, \"tertiary\"> = \"primary\";\n\n /**\n * Sets the split button kind\n */\n @property({ type: String, reflect: true })\n kind: ButtonKind = \"default\";\n\n /**\n * Sets the split button size\n */\n @property({ type: String, reflect: true })\n size: ButtonSize = \"medium\";\n\n /**\n * Set link url. If set, split main button will be rendered as anchor tag.\n */\n @property({ type: String, reflect: true })\n href: string;\n\n /**\n * Sets main button as disabled\n */\n @property({ type: Boolean, reflect: true })\n disabled = false;\n\n /**\n * Sets loading state of button\n */\n @property({ type: Boolean, reflect: true })\n loading = false;\n\n /**\n * Sets the button label for loading status.\n */\n @property({ type: String, attribute: \"loading-label\" })\n loadingLabel: string;\n\n /**\n * Sets dropdown button as disabled\n */\n @property({ attribute: \"dropdown-disabled\", type: Boolean })\n dropdownDisabled = false;\n\n /**\n * Sets the icon name. Shows icon with bl-icon component\n */\n @property({ type: String })\n icon?: BaklavaIcon;\n\n /**\n * Sets the anchor target. Used when `href` is set.\n */\n @property({ type: String })\n target?: TargetType = \"_self\";\n\n /**\n * Sets the type of the button. Set `submit` to use button as the submitter of parent form.\n */\n @property({ type: String })\n type: \"submit\";\n\n /**\n * Sets button to get keyboard focus automatically\n */\n @property({ type: Boolean, reflect: true })\n autofocus = false;\n\n /**\n * Sets the associated form of the button. Use when `type` is set to `submit` and button is not inside the target form.\n */\n @property({ type: String })\n form: HTMLFormElement | string;\n\n /**\n * Fires when dropdown opened\n */\n @event(\"bl-dropdown-open\") private onOpen: EventDispatcher<string>;\n\n /**\n * Fires when dropdown closed\n */\n @event(\"bl-dropdown-close\") private onClose: EventDispatcher<string>;\n\n /**\n * Fires when main button click\n */\n @event(\"bl-click\") private onClick: EventDispatcher<string>;\n\n connectedCallback() {\n super.connectedCallback();\n\n this.addEventListener(\"keydown\", this.handleKeyDown);\n }\n\n disconnectedCallback() {\n super.disconnectedCallback();\n\n this.removeEventListener(\"keydown\", this.handleKeyDown);\n }\n\n firstUpdated() {\n // To ensure proper rendering, we set `_popover.target` after the template has been created.\n this._popover.target = this.trigger;\n }\n\n get opened() {\n return this._isPopoverOpen;\n }\n\n private _handleClick() {\n !this._isPopoverOpen && !this.dropdownDisabled ? this.open() : this.close();\n }\n\n private _handlePrimaryClick() {\n this.onClick(\"Click event fired!\");\n }\n\n private focusedOptionIndex = -1;\n\n private handleKeyDown(event: KeyboardEvent) {\n // Next action\n if (this._isPopoverOpen && [\"ArrowDown\", \"ArrowRight\"].includes(event.key)) {\n this.focusedOptionIndex++;\n // Previous action\n } else if (this._isPopoverOpen && [\"ArrowUp\", \"ArrowLeft\"].includes(event.key)) {\n this.focusedOptionIndex--;\n // Select action\n } else if (this._isPopoverOpen && event.key === \"Escape\") {\n this.focusedOptionIndex = -1;\n this.close();\n return;\n } else {\n // Other keys are not our interest here\n return;\n }\n\n // Don't exceed array indexes\n this.focusedOptionIndex = Math.max(\n 0,\n Math.min(this.focusedOptionIndex, this.options.length - 1)\n );\n\n this.options[this.focusedOptionIndex].focus();\n\n event.preventDefault();\n }\n\n get options(): BlDropdownItem[] {\n return [...this.querySelectorAll(blDropdownItemTag)];\n }\n\n open() {\n this._isPopoverOpen = true;\n this._popover.show();\n this.onOpen(\"Dropdown opened!\");\n }\n\n close() {\n if (!this._isPopoverOpen) {\n return;\n }\n\n this._isPopoverOpen = false;\n this._popover.visible && this._popover.hide();\n this.onClose(\"Dropdown closed!\");\n }\n\n render(): TemplateResult {\n return html` <div class=\"split-button-container\" id=\"split-button-container\">\n <bl-button\n id=\"split-main-button\"\n class=\"split-main-button\"\n variant=\"${this.variant}\"\n kind=\"${this.kind}\"\n size=\"${this.size}\"\n loading-label=\"${ifDefined(this.loadingLabel)}\"\n icon=\"${ifDefined(this.icon)}\"\n href=\"${ifDefined(this.type)}\"\n ?disabled=\"${this.disabled}\"\n ?loading=\"${this.loading}\"\n type=\"${this.type}\"\n target=\"${ifDefined(this.target)}\"\n form=\"${ifDefined(this.form)}\"\n ?autofocus=\"${this.autofocus}\"\n @bl-click=\"${this._handlePrimaryClick}\"\n >\n ${this.label}\n </bl-button>\n <div class=\"split-divider\"></div>\n <bl-button\n id=\"dropdown-button\"\n class=\"dropdown-button\"\n .active=\"${this.opened}\"\n icon=\"${this.opened ? \"arrow_up\" : \"arrow_down\"}\"\n ?disabled=\"${this.dropdownDisabled}\"\n variant=\"${this.variant}\"\n kind=\"${this.kind}\"\n size=\"${this.size}\"\n ?loading=\"${this.loading}\"\n label=\"split-dropdown-button\"\n @bl-click=\"${this._handleClick}\"\n >\n </bl-button>\n <bl-popover fit-size placement=\"bottom-start\" @bl-popover-hide=\"${this.close}\">\n <div class=\"popover-content\">\n <slot></slot>\n </div>\n </bl-popover>\n </div>`;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n [blSplitButtonTag]: BlSplitButton;\n }\n}\n"],
5
+ "mappings": "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",
6
+ "names": ["styles", "i", "bl_dropdown_default", "blDropdownTag", "BlDropdown", "s", "bl_dropdown_default", "event", "blDropdownItemTag", "x", "__decorateClass", "i", "t", "e", "styles", "i", "bl_dropdown_item_default", "blDropdownItemTag", "BlDropdownItem", "s", "bl_dropdown_item_default", "_a", "_b", "blDropdownGroupTag", "blDropdownTag", "blSplitButtonTag", "x", "l", "__decorateClass", "e", "event", "i", "styles", "i", "bl_split_button_default", "blSplitButtonTag", "BlSplitButton", "s", "bl_split_button_default", "event", "blDropdownItemTag", "x", "l", "__decorateClass", "i", "t", "e"]
7
+ }
@@ -1,13 +1,13 @@
1
- import{a as d}from"./chunk-ECPWEUBG.js";import{a}from"./chunk-DINNT5P2.js";import{a as s}from"./chunk-GRL4DWKG.js";import{a as u,b as r}from"./chunk-X2KXJYXQ.js";import{a as l,b as i,f as c}from"./chunk-4OT5AMS5.js";import{d as o}from"./chunk-IZ2LK5GK.js";var p=l`:host{display:block}.notification{position:relative;border-radius:var(--bl-border-radius-m);box-shadow:0 5px 30px 0 rgba(39 49 66 / 25%)}.duration{position:absolute;left:0;right:0;bottom:0;height:var(--bl-size-2xs);width:100%}.duration > .remaining{position:absolute;height:100%;width:100%;border-radius:var(--bl-border-radius-s);border-top-left-radius:0;animation-name:to-zero;animation-duration:var(--duration, 7s);animation-timing-function:linear;animation-fill-mode:forwards;animation-play-state:running}.notification.__ONLY_FOR_STORYBOOK_DEMONSTRATION_HOVER__ .duration > .remaining,.notification:hover .duration > .remaining{animation-play-state:paused}@keyframes to-zero{to{width:0}}.notification[variant="success"] .duration > .remaining{background-color:var(--bl-color-success)}.notification[variant="warning"] .duration > .remaining{background-color:var(--bl-color-warning)}.notification[variant="danger"] .duration > .remaining{background-color:var(--bl-color-danger)}.notification[variant="info"] .duration > .remaining{background-color:var(--bl-color-info)}`,m=p;var f=(e=>(e.DurationEnded="duration-ended",e.CloseButton="close-button",e))(f||{}),v={info:"info",success:"success",warning:"warning",error:"danger"},t=class extends c{constructor(){super(...arguments);this.caption="";this.variant="info";this.duration=7;this.permanent=!1;this.closed=!1}static get styles(){return[m]}firstUpdated(){this.setupDuration()}async setupDuration(){if(!this.permanent){if(this.duration<=0){this.close("duration-ended");return}setTimeout(()=>{var e,n;(n=(e=this.shadowRoot)==null?void 0:e.querySelector(".remaining"))==null||n.addEventListener("animationend",()=>{this.close("duration-ended")},{once:!0})},0)}}close(e){this.onRequestClose({source:e},{cancelable:!0}).defaultPrevented||(this.onClose({source:e}),this.closed=!0)}handleClose(e){let n=e.target;n.closed=!1,this.close("close-button")}renderProgress(){return this.permanent?null:i`
1
+ import{a as d}from"./chunk-ECPWEUBG.js";import{a as s}from"./chunk-DINNT5P2.js";import{a}from"./chunk-GRL4DWKG.js";import{a as u,b as r}from"./chunk-5MOOXA2X.js";import{a as l,b as i,f as c}from"./chunk-4OT5AMS5.js";import{d as o}from"./chunk-IZ2LK5GK.js";var p=l`:host{display:block}.notification{position:relative;border-radius:var(--bl-border-radius-m);box-shadow:0 5px 30px 0 rgba(39 49 66 / 25%)}.duration{position:absolute;left:0;right:0;bottom:0;height:var(--bl-size-2xs);width:100%}.duration > .remaining{position:absolute;height:100%;width:100%;border-radius:var(--bl-border-radius-s);border-top-left-radius:0;animation-name:to-zero;animation-duration:var(--duration, 7s);animation-timing-function:linear;animation-fill-mode:forwards;animation-play-state:running}.notification.__ONLY_FOR_STORYBOOK_DEMONSTRATION_HOVER__ .duration > .remaining,.notification:hover .duration > .remaining{animation-play-state:paused}@keyframes to-zero{to{width:0}}.notification[variant="success"] .duration > .remaining{background-color:var(--bl-color-success)}.notification[variant="warning"] .duration > .remaining{background-color:var(--bl-color-warning)}.notification[variant="danger"] .duration > .remaining{background-color:var(--bl-color-danger)}.notification[variant="info"] .duration > .remaining{background-color:var(--bl-color-info)}`,m=p;var f=(e=>(e.DurationEnded="duration-ended",e.CloseButton="close-button",e))(f||{}),v={info:"info",success:"success",warning:"warning",error:"danger"},t=class extends c{constructor(){super(...arguments);this.caption="";this.variant="info";this.duration=7;this.permanent=!1;this.closed=!1}static get styles(){return[m]}firstUpdated(){this.setupDuration()}async setupDuration(){if(!this.permanent){if(this.duration<=0){this.close("duration-ended");return}setTimeout(()=>{var e,n;(n=(e=this.shadowRoot)==null?void 0:e.querySelector(".remaining"))==null||n.addEventListener("animationend",()=>{this.close("duration-ended")},{once:!0})},0)}}close(e){this.onRequestClose({source:e},{cancelable:!0}).defaultPrevented||(this.onClose({source:e}),this.closed=!0)}handleClose(e){let n=e.target;n.closed=!1,this.close("close-button")}renderProgress(){return this.permanent?null:i`
2
2
  <div class="duration">
3
3
  <div class="remaining" style="--duration: ${this.duration}s;"></div>
4
4
  </div>
5
5
  `}render(){let{icon:e=!0,variant:n="info"}=this;return i`
6
6
  <bl-alert
7
7
  class="notification"
8
- caption="${a(this.caption)}"
8
+ caption="${s(this.caption)}"
9
9
  icon=${e}
10
- variant=${a(v[n])}
10
+ variant=${s(v[n])}
11
11
  ?closed=${this.closed}
12
12
  ?closable=${!0}
13
13
  @bl-close=${this.handleClose}
@@ -17,5 +17,5 @@ import{a as d}from"./chunk-ECPWEUBG.js";import{a}from"./chunk-DINNT5P2.js";impor
17
17
  <slot name="primary-action" slot="action"></slot>
18
18
  <slot name="secondary-action" slot="action-secondary"></slot>
19
19
  </bl-alert>
20
- `}};o([r({type:String})],t.prototype,"caption",2),o([r({converter:d()})],t.prototype,"icon",2),o([r({reflect:!0})],t.prototype,"variant",2),o([r({type:Number})],t.prototype,"duration",2),o([r({type:Boolean})],t.prototype,"permanent",2),o([r({type:Boolean})],t.prototype,"closed",2),o([s("bl-notification-card-request-close")],t.prototype,"onRequestClose",2),o([s("bl-notification-card-close")],t.prototype,"onClose",2),t=o([u("bl-notification-card")],t);export{f as a,t as b};
21
- //# sourceMappingURL=chunk-57IOXMBV.js.map
20
+ `}};o([r({type:String})],t.prototype,"caption",2),o([r({converter:d()})],t.prototype,"icon",2),o([r({reflect:!0})],t.prototype,"variant",2),o([r({type:Number})],t.prototype,"duration",2),o([r({type:Boolean})],t.prototype,"permanent",2),o([r({type:Boolean})],t.prototype,"closed",2),o([a("bl-notification-card-request-close")],t.prototype,"onRequestClose",2),o([a("bl-notification-card-close")],t.prototype,"onClose",2),t=o([u("bl-notification-card")],t);export{f as a,t as b};
21
+ //# sourceMappingURL=chunk-WQTBAXMP.js.map
@@ -1,4 +1,4 @@
1
- import{a as r}from"./chunk-GRL4DWKG.js";import{a as c,b as l,c as p,e as u}from"./chunk-X2KXJYXQ.js";import{a as n,b as i,f as a}from"./chunk-4OT5AMS5.js";import{d as o}from"./chunk-IZ2LK5GK.js";var d=n`:host{position:relative}.option-container{--option-font:var(--bl-font-title-3-regular);--option-spacing:var(--bl-size-xs) 0;--option-selected-color:var(--bl-color-primary);--option-hover-color:var(--bl-color-primary-highlight);--option-color:var(--bl-color-neutral-darker);--option-disabled-color:var(--bl-color-neutral-light);--option-separator:1px solid var(--bl-color-neutral-lighter);--option-gap:var(--bl-size-2xs);--option-transition:color 120ms ease-out}.option-container::after{position:absolute;content:"";width:100%;bottom:0;border-bottom:var(--option-separator)}.no-border-bottom::after{border-bottom:none}:host(:last-of-type) .option-container::after{border-bottom:none}.single-option{width:100%;display:block;cursor:pointer;color:var(--option-color);margin:var(--option-spacing);transition:var(--option-transition);font:var(--option-font);user-select:none;position:relative;outline:none}.single-option:focus-visible::after{content:"";position:absolute;inset:calc(var(--bl-size-3xs) * -1);border:var(--bl-size-4xs) solid var(--option-hover-color);border-radius:var(--bl-size-4xs)}:host(.__ONLY_FOR_STORYBOOK_DEMONSTRATION_HOVER__) .single-option,:host(:hover) .single-option{color:var(--option-hover-color)}:host([selected]) .single-option{color:var(--option-selected-color)}:host([disabled]){cursor:not-allowed}:host([disabled]) .single-option{color:var(--option-disabled-color);cursor:not-allowed;pointer-events:none}.checkbox-option{width:100%;display:block;color:var(--option-color);padding:var(--option-spacing)}`,h=d;var e=class extends a{constructor(){super(...arguments);this.label="";this.disabled=!1;this.selected=!1;this.multiple=!1}static get styles(){return[h]}get value(){return this._value||this.textContent}set value(t){this._value=t}focus(){this.multiple||(this.focusTarget.tabIndex=0),this.focusTarget.focus(),this.onFocus(this.value)}blur(){this.onBlur(this.value),this.focusTarget.tabIndex=-1}singleOptionTemplate(){return i`<div
1
+ import{a as r}from"./chunk-GRL4DWKG.js";import{a as c,b as l,c as p,e as u}from"./chunk-5MOOXA2X.js";import{a as n,b as i,f as a}from"./chunk-4OT5AMS5.js";import{d as o}from"./chunk-IZ2LK5GK.js";var d=n`:host{position:relative}.option-container{--option-font:var(--bl-font-title-3-regular);--option-spacing:var(--bl-size-xs) 0;--option-selected-color:var(--bl-color-primary);--option-hover-color:var(--bl-color-primary-highlight);--option-color:var(--bl-color-neutral-darker);--option-disabled-color:var(--bl-color-neutral-light);--option-separator:1px solid var(--bl-color-neutral-lighter);--option-gap:var(--bl-size-2xs);--option-transition:color 120ms ease-out}.option-container::after{position:absolute;content:"";width:100%;bottom:0;border-bottom:var(--option-separator)}.no-border-bottom::after{border-bottom:none}:host(:last-of-type) .option-container::after{border-bottom:none}.single-option{width:100%;display:block;cursor:pointer;color:var(--option-color);margin:var(--option-spacing);transition:var(--option-transition);font:var(--option-font);user-select:none;position:relative;outline:none}.single-option:focus-visible::after{content:"";position:absolute;inset:calc(var(--bl-size-3xs) * -1);border:var(--bl-size-4xs) solid var(--option-hover-color);border-radius:var(--bl-size-4xs)}:host(.__ONLY_FOR_STORYBOOK_DEMONSTRATION_HOVER__) .single-option,:host(:hover) .single-option{color:var(--option-hover-color)}:host([selected]) .single-option{color:var(--option-selected-color)}:host([disabled]){cursor:not-allowed}:host([disabled]) .single-option{color:var(--option-disabled-color);cursor:not-allowed;pointer-events:none}.checkbox-option{width:100%;display:block;color:var(--option-color);padding:var(--option-spacing)}`,h=d;var e=class extends a{constructor(){super(...arguments);this.label="";this.disabled=!1;this.selected=!1;this.multiple=!1}static get styles(){return[h]}get value(){return this._value||this.textContent}set value(t){this._value=t}focus(){this.multiple||(this.focusTarget.tabIndex=0),this.focusTarget.focus(),this.onFocus(this.value)}blur(){this.onBlur(this.value),this.focusTarget.tabIndex=-1}singleOptionTemplate(){return i`<div
2
2
  class="single-option focus-target"
3
3
  @blur=${this.blur}
4
4
  @keydown=${this.handleKeydown}
@@ -19,4 +19,4 @@ import{a as r}from"./chunk-GRL4DWKG.js";import{a as c,b as l,c as p,e as u}from"
19
19
  </bl-checkbox>`}render(){return i`<div class="option-container">
20
20
  ${this.multiple?this.checkboxOptionTemplate():this.singleOptionTemplate()}
21
21
  </div>`}handleKeydown(t){(t.code==="Enter"||t.code==="Space")&&(this._onClickOption(),t.preventDefault())}_handleEvent(){this._onSelect(this.value)}_onClickOption(){this.selected=!this.selected,this._handleEvent()}_onCheckboxChange(t){this.selected=t.detail,this._handleEvent()}connectedCallback(){super.connectedCallback(),this.updateComplete.then(()=>{var t,s;this.blSelect=this.closest("bl-select"),this.multiple=((t=this.blSelect)==null?void 0:t.multiple)||!1,(s=this.blSelect)==null||s.registerOption(this)})}disconnectedCallback(){var t;super.disconnectedCallback(),(t=this.blSelect)==null||t.unregisterOption(this)}};o([l({})],e.prototype,"value",1),o([l({type:String,reflect:!0,attribute:"label"})],e.prototype,"label",2),o([l({type:Boolean,reflect:!0})],e.prototype,"disabled",2),o([l({type:Boolean,reflect:!0})],e.prototype,"selected",2),o([p()],e.prototype,"multiple",2),o([r("bl-select-option")],e.prototype,"_onSelect",2),o([r("bl-focus")],e.prototype,"onFocus",2),o([r("bl-blur")],e.prototype,"onBlur",2),o([u(".focus-target")],e.prototype,"focusTarget",2),e=o([c("bl-select-option")],e);export{e as a};
22
- //# sourceMappingURL=chunk-PLUCMBSD.js.map
22
+ //# sourceMappingURL=chunk-WXWKIQAK.js.map
@@ -1,10 +1,10 @@
1
- import{a as v,c as n}from"./chunk-HBPBDC7T.js";import{a as b}from"./chunk-DINNT5P2.js";import{a as d}from"./chunk-GRL4DWKG.js";import{a as h,b as i,c as m}from"./chunk-X2KXJYXQ.js";import{a as g,b as s,f as o}from"./chunk-4OT5AMS5.js";import{d as r}from"./chunk-IZ2LK5GK.js";var y=g`.pagination{display:flex;flex-wrap:wrap;justify-content:center;max-width:max-content;gap:var(--bl-size-s)}.pagination *{margin:0;padding:0;box-sizing:border-box}.page-container{display:flex;align-items:center}.page-list{display:flex;align-items:center;list-style:none;user-select:none;gap:var(--bl-size-3xs)}.dots{margin:0 var(--bl-size-2xs)}.dots::before{content:" \\B7 \\B7 \\B7";color:var(--bl-color-neutral-darker)}.pagination-helpers{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:var(--bl-size-m);color:var(--bl-color-neutral-darker)}.jumper,.select{display:flex;align-items:center;gap:var(--bl-size-2xs)}label{font:var(--bl-font-title-3-medium);font-size:var(--bl-font-size-m);font-weight:var(--bl-font-weight-medium);line-height:var(--bl-font-size-m);letter-spacing:0;user-select:none}bl-input{width:62px}bl-select{width:auto}@media only screen and (max-width: 768px){label{display:none}}`,P=y;var t=class extends o{constructor(){super(...arguments);this.currentPage=1;this.totalItems=0;this.itemsPerPage=10;this.hasJumper=!1;this.hasSelect=!1;this.itemsPerPageOptions=[{text:"10 Items",value:10},{text:"25 Items",value:25},{text:"50 Items",value:50},{text:"100 Items",value:100}];this.pages=[]}static get styles(){return[P]}connectedCallback(){super.connectedCallback(),setTimeout(()=>{window==null||window.addEventListener("resize",()=>this._paginate())})}disconnectedCallback(){super.disconnectedCallback(),window==null||window.removeEventListener("resize",this._paginate)}updated(e){(e.has("currentPage")||e.has("itemsPerPage")||e.has("totalItems"))&&this._paginate()}_paginate(){this.pages=[];let e=Math.ceil(Math.abs(this.totalItems/this.itemsPerPage))||1;if(e<=8){this.pages=Array.from(Array(e),(a,l)=>l+1);return}this.pages.push(1),this.currentPage<5?this.pages.push(2,3,4,5,"..."):this.currentPage>=5&&this.currentPage<=e-4?this.pages.push("...",this.currentPage-1,this.currentPage,this.currentPage+1,"..."):this.pages.push("...",e-4,e-3,e-2,e-1),this.pages.push(e)}_changePage(e){let a=this.currentPage;this.currentPage=e,this.onChange({selectedPage:e,prevPage:a,itemsPerPage:this.itemsPerPage})}_pageBack(){this.currentPage!==1&&this._changePage(this.currentPage-1)}_pageForward(){this.currentPage!==this._getLastPage()&&this._changePage(this.currentPage+1)}_getLastPage(){return+this.pages[this.pages.length-1]}_inputHandler(e){e.stopPropagation();let a=+e.target.value,l=a>0?Math.min(this._getLastPage(),a):1;this._changePage(l)}_selectHandler(e){var a;this.itemsPerPage=+((a=e==null?void 0:e.detail)==null?void 0:a.value)||100,this._changePage(1)}_renderSinglePage(e){if(typeof e=="string")return s`<li class="dots"></li>`;let a=this.currentPage===e?"page":void 0;return s` <li>
1
+ import{a as v,c as n}from"./chunk-HBPBDC7T.js";import{a as d}from"./chunk-DINNT5P2.js";import{a as b}from"./chunk-GRL4DWKG.js";import{a as h,b as i,c as m}from"./chunk-5MOOXA2X.js";import{a as g,b as s,f as o}from"./chunk-4OT5AMS5.js";import{d as r}from"./chunk-IZ2LK5GK.js";var y=g`.pagination{display:flex;flex-wrap:wrap;justify-content:center;max-width:max-content;gap:var(--bl-size-s)}.pagination *{margin:0;padding:0;box-sizing:border-box}.page-container{display:flex;align-items:center}.page-list{display:flex;align-items:center;list-style:none;user-select:none;gap:var(--bl-size-3xs)}.dots{margin:0 var(--bl-size-2xs)}.dots::before{content:" \\B7 \\B7 \\B7";color:var(--bl-color-neutral-darker)}.pagination-helpers{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:var(--bl-size-m);color:var(--bl-color-neutral-darker)}.jumper,.select{display:flex;align-items:center;gap:var(--bl-size-2xs)}label{font:var(--bl-font-title-3-medium);font-size:var(--bl-font-size-m);font-weight:var(--bl-font-weight-medium);line-height:var(--bl-font-size-m);letter-spacing:0;user-select:none}bl-input{width:62px}bl-select{width:auto}@media only screen and (max-width: 768px){label{display:none}}`,P=y;var t=class extends o{constructor(){super(...arguments);this.currentPage=1;this.totalItems=0;this.itemsPerPage=10;this.hasJumper=!1;this.hasSelect=!1;this.itemsPerPageOptions=[{text:"10 Items",value:10},{text:"25 Items",value:25},{text:"50 Items",value:50},{text:"100 Items",value:100}];this.pages=[]}static get styles(){return[P]}connectedCallback(){super.connectedCallback(),setTimeout(()=>{window==null||window.addEventListener("resize",()=>this._paginate())})}disconnectedCallback(){super.disconnectedCallback(),window==null||window.removeEventListener("resize",this._paginate)}updated(e){(e.has("currentPage")||e.has("itemsPerPage")||e.has("totalItems"))&&this._paginate()}_paginate(){this.pages=[];let e=Math.ceil(Math.abs(this.totalItems/this.itemsPerPage))||1;if(e<=8){this.pages=Array.from(Array(e),(a,l)=>l+1);return}this.pages.push(1),this.currentPage<5?this.pages.push(2,3,4,5,"..."):this.currentPage>=5&&this.currentPage<=e-4?this.pages.push("...",this.currentPage-1,this.currentPage,this.currentPage+1,"..."):this.pages.push("...",e-4,e-3,e-2,e-1),this.pages.push(e)}_changePage(e){let a=this.currentPage;this.currentPage=e,this.onChange({selectedPage:e,prevPage:a,itemsPerPage:this.itemsPerPage})}_pageBack(){this.currentPage!==1&&this._changePage(this.currentPage-1)}_pageForward(){this.currentPage!==this._getLastPage()&&this._changePage(this.currentPage+1)}_getLastPage(){return+this.pages[this.pages.length-1]}_inputHandler(e){e.stopPropagation();let a=+e.target.value,l=a>0?Math.min(this._getLastPage(),a):1;this._changePage(l)}_selectHandler(e){var a;this.itemsPerPage=+((a=e==null?void 0:e.detail)==null?void 0:a.value)||100,this._changePage(1)}_renderSinglePage(e){if(typeof e=="string")return s`<li class="dots"></li>`;let a=this.currentPage===e?"page":void 0;return s` <li>
2
2
  <bl-button
3
3
  @click="${()=>this._changePage(e)}"
4
4
  variant=${this.currentPage===e?"primary":"tertiary"}
5
5
  kind="neutral"
6
6
  label="Page ${e}"
7
- aria-current=${b(a)}
7
+ aria-current=${d(a)}
8
8
  >
9
9
  ${e}
10
10
  </bl-button>
@@ -46,5 +46,5 @@ import{a as v,c as n}from"./chunk-HBPBDC7T.js";import{a as b}from"./chunk-DINNT5
46
46
  <bl-input .value="${this.currentPage}" @bl-change="${this._inputHandler}"></bl-input>
47
47
  </div>`:null;return s` <nav class="pagination" aria-label="Pagination">
48
48
  ${(()=>{if(!(!this.hasSelect&&!this.hasJumper))return s` <div class="pagination-helpers">${l} ${f}</div> `})()} ${this.renderPages()}
49
- </nav>`}};r([i({attribute:"current-page",type:Number,reflect:!0})],t.prototype,"currentPage",2),r([i({attribute:"total-items",type:Number})],t.prototype,"totalItems",2),r([i({attribute:"items-per-page",type:Number,reflect:!0})],t.prototype,"itemsPerPage",2),r([i({attribute:"has-jumper",type:Boolean})],t.prototype,"hasJumper",2),r([i({attribute:"jumper-label",type:String})],t.prototype,"jumperLabel",2),r([i({attribute:"has-select",type:Boolean})],t.prototype,"hasSelect",2),r([i({attribute:"select-label",type:String})],t.prototype,"selectLabel",2),r([i({type:Array,attribute:!1})],t.prototype,"itemsPerPageOptions",2),r([m()],t.prototype,"pages",2),r([d("bl-change")],t.prototype,"onChange",2),t=r([h("bl-pagination"),v()],t);export{t as a};
50
- //# sourceMappingURL=chunk-UERDT3VQ.js.map
49
+ </nav>`}};r([i({attribute:"current-page",type:Number,reflect:!0})],t.prototype,"currentPage",2),r([i({attribute:"total-items",type:Number})],t.prototype,"totalItems",2),r([i({attribute:"items-per-page",type:Number,reflect:!0})],t.prototype,"itemsPerPage",2),r([i({attribute:"has-jumper",type:Boolean})],t.prototype,"hasJumper",2),r([i({attribute:"jumper-label",type:String})],t.prototype,"jumperLabel",2),r([i({attribute:"has-select",type:Boolean})],t.prototype,"hasSelect",2),r([i({attribute:"select-label",type:String})],t.prototype,"selectLabel",2),r([i({type:Array,attribute:!1})],t.prototype,"itemsPerPageOptions",2),r([m()],t.prototype,"pages",2),r([b("bl-change")],t.prototype,"onChange",2),t=r([h("bl-pagination"),v()],t);export{t as a};
50
+ //# sourceMappingURL=chunk-X67Z2G2H.js.map