@statistikzh/leu 0.27.0 → 0.28.1

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 (206) hide show
  1. package/.github/workflows/publish.yml +1 -3
  2. package/.release-please-manifest.json +1 -1
  3. package/.storybook/main.ts +1 -1
  4. package/.storybook/preview.ts +6 -4
  5. package/.storybook/static/global.css +5 -0
  6. package/AGENTS.md +162 -0
  7. package/CHANGELOG.md +30 -0
  8. package/dist/{Accordion-DLsqXcK8.js → Accordion-CwkI7sfx.js} +1 -1
  9. package/dist/Accordion.d.ts +1 -1
  10. package/dist/Accordion.js +2 -2
  11. package/dist/{Button-BSyDL_cV.js → Button-D1aYnunQ.js} +90 -82
  12. package/dist/{Button-BgNUxmo_.d.ts → Button-DcuvEVkC.d.ts} +14 -12
  13. package/dist/Button.d.ts +1 -1
  14. package/dist/Button.js +4 -4
  15. package/dist/{ButtonGroup-BmSvl-Oc.js → ButtonGroup-CqThYjzX.js} +2 -2
  16. package/dist/ButtonGroup.d.ts +1 -1
  17. package/dist/ButtonGroup.js +5 -5
  18. package/dist/{ChartWrapper-CvDvQsd5.js → ChartWrapper-BjVT4x-H.js} +2 -2
  19. package/dist/ChartWrapper.d.ts +3 -3
  20. package/dist/ChartWrapper.js +3 -3
  21. package/dist/{Checkbox-Cl_X6gBJ.js → Checkbox-HxYqp2w4.js} +2 -2
  22. package/dist/Checkbox.d.ts +3 -3
  23. package/dist/Checkbox.js +3 -3
  24. package/dist/{CheckboxGroup-BKhOmZYX.js → CheckboxGroup-DYws2rwt.js} +2 -2
  25. package/dist/CheckboxGroup.d.ts +1 -1
  26. package/dist/CheckboxGroup.js +4 -4
  27. package/dist/{Chip-DLKM9P7v.d.ts → Chip-DVGjEPJE.d.ts} +1 -1
  28. package/dist/{Chip-McVP3N_x.js → Chip-gKxD6IaZ.js} +1 -1
  29. package/dist/Chip.d.ts +1 -1
  30. package/dist/Chip.js +2 -2
  31. package/dist/{ChipGroup-Ta8Ht4jc.d.ts → ChipGroup-BK5BYM0X.d.ts} +2 -2
  32. package/dist/{ChipGroup-DUGavZeU.js → ChipGroup-ZvBzX_wd.js} +1 -1
  33. package/dist/ChipGroup.d.ts +1 -1
  34. package/dist/ChipGroup.js +3 -3
  35. package/dist/{ChipLink-BAxyQO2M.d.ts → ChipLink-BdG2o-nk.d.ts} +1 -1
  36. package/dist/ChipLink.d.ts +1 -1
  37. package/dist/ChipLink.js +2 -2
  38. package/dist/{ChipRemovable-DBjwt0CH.d.ts → ChipRemovable-CCwSQTAL.d.ts} +2 -2
  39. package/dist/ChipRemovable.d.ts +1 -1
  40. package/dist/ChipRemovable.js +3 -3
  41. package/dist/{ChipSelectable-CMJNcE4U.d.ts → ChipSelectable-BQ3VLVi5.d.ts} +1 -1
  42. package/dist/ChipSelectable.d.ts +1 -1
  43. package/dist/ChipSelectable.js +2 -2
  44. package/dist/{Dialog-BlDd4T2u.js → Dialog-BYpzTprV.js} +2 -2
  45. package/dist/Dialog.d.ts +3 -3
  46. package/dist/Dialog.js +3 -3
  47. package/dist/{Dropdown-BLxSIe6p.js → Dropdown-C4CgE4E-.js} +5 -5
  48. package/dist/Dropdown.d.ts +6 -6
  49. package/dist/Dropdown.js +8 -8
  50. package/dist/{FileInput-DntYrpZ-.js → FileInput-nsnSQCaU.js} +8 -6
  51. package/dist/FileInput.d.ts +6 -6
  52. package/dist/FileInput.js +6 -6
  53. package/dist/{Icon-Op80LrrO.d.ts → Icon-CUfh3eb3.d.ts} +1 -1
  54. package/dist/{Icon-CbZXpyHU.js → Icon-D8HTPEFH.js} +1 -1
  55. package/dist/Icon.d.ts +1 -1
  56. package/dist/Icon.js +2 -2
  57. package/dist/{Input-DBXX7ev8.js → Input-OrILqlax.js} +2 -2
  58. package/dist/{Input-CeaAOB4p.d.ts → Input-fEiQvGDF.d.ts} +3 -3
  59. package/dist/Input.d.ts +1 -1
  60. package/dist/Input.js +3 -3
  61. package/dist/{LeuElement-k4RjIeoG.js → LeuElement-C_lcHzQI.js} +1 -1
  62. package/dist/{Menu-Cu8eIF1T.js → Menu-CFLCnI34.js} +2 -2
  63. package/dist/{Menu-CQdx1ef3.d.ts → Menu-Z2b7dsB5.d.ts} +2 -2
  64. package/dist/Menu.d.ts +1 -1
  65. package/dist/Menu.js +4 -4
  66. package/dist/{MenuItem-Cs3KFhJm.js → MenuItem-ICjLCGim.js} +2 -2
  67. package/dist/{MenuItem-QcgnRk_7.d.ts → MenuItem-LY4TRIho.d.ts} +2 -2
  68. package/dist/MenuItem.d.ts +1 -1
  69. package/dist/MenuItem.js +3 -3
  70. package/dist/{Message-C6Zlk_2p.js → Message-Dw5D_0i1.js} +2 -2
  71. package/dist/Message.d.ts +2 -2
  72. package/dist/Message.js +3 -3
  73. package/dist/{Pagination-CqkHh-Vd.d.ts → Pagination-9eZ8WMvR.d.ts} +4 -4
  74. package/dist/{Pagination-CB2eVlXk.js → Pagination-D1tP5FrM.js} +4 -4
  75. package/dist/Pagination.d.ts +1 -1
  76. package/dist/Pagination.js +6 -6
  77. package/dist/{Placeholder-DHMexMhK.js → Placeholder-CnGzCZ5-.js} +1 -1
  78. package/dist/Placeholder.d.ts +1 -1
  79. package/dist/Placeholder.js +2 -2
  80. package/dist/{Popup-Btgm2a3D.d.ts → Popup-B5iDSLIO.d.ts} +1 -1
  81. package/dist/{Popup-8jhVy8gB.js → Popup-BiN_tZDN.js} +1 -1
  82. package/dist/Popup.d.ts +1 -1
  83. package/dist/Popup.js +2 -2
  84. package/dist/{ProgressBar-CG0_lHfS.js → ProgressBar-BfJo_KyU.js} +1 -1
  85. package/dist/ProgressBar.d.ts +1 -1
  86. package/dist/ProgressBar.js +2 -2
  87. package/dist/{Radio-DG3xqP3s.js → Radio-CV7vuQUj.js} +1 -1
  88. package/dist/Radio.d.ts +1 -1
  89. package/dist/Radio.js +2 -2
  90. package/dist/{RadioGroup-BKCp9ICX.js → RadioGroup-C3XWSScc.js} +2 -2
  91. package/dist/RadioGroup.d.ts +1 -1
  92. package/dist/RadioGroup.js +3 -3
  93. package/dist/{Range-7LrESv4K.js → Range-C8RVrIM9.js} +1 -1
  94. package/dist/Range.d.ts +1 -1
  95. package/dist/Range.js +2 -2
  96. package/dist/{ScrollTop-CJJsfniA.js → ScrollTop-B_TJ_k4m.js} +3 -3
  97. package/dist/ScrollTop.d.ts +3 -3
  98. package/dist/ScrollTop.js +5 -5
  99. package/dist/{Select-CxEDXIBn.js → Select-CbPTrL3G.js} +7 -8
  100. package/dist/Select.d.ts +9 -9
  101. package/dist/Select.js +9 -9
  102. package/dist/{Spinner-VhKfzI3Q.js → Spinner-ChKJQJTN.js} +1 -1
  103. package/dist/{Spinner-CrM1enM0.d.ts → Spinner-DHYaX6-Y.d.ts} +1 -1
  104. package/dist/Spinner.d.ts +1 -1
  105. package/dist/Spinner.js +2 -2
  106. package/dist/Tab-BJbzY1xd.js +117 -0
  107. package/dist/Tab-CN97q0nj.d.ts +30 -0
  108. package/dist/Tab.d.ts +2 -0
  109. package/dist/Tab.js +3 -0
  110. package/dist/TabGroup-BIaCHrKR.js +248 -0
  111. package/dist/TabGroup.d.ts +64 -0
  112. package/dist/TabGroup.js +5 -0
  113. package/dist/TabPanel-CTyw410b.js +65 -0
  114. package/dist/TabPanel-DQgWP7LO.d.ts +26 -0
  115. package/dist/TabPanel.d.ts +2 -0
  116. package/dist/TabPanel.js +3 -0
  117. package/dist/{Table-rg_JCtsA.js → Table-D3QmePJd.js} +3 -3
  118. package/dist/Table.d.ts +3 -3
  119. package/dist/Table.js +7 -7
  120. package/dist/{Tag-BROUaDAZ.js → Tag-nUnWtHYy.js} +1 -1
  121. package/dist/Tag.d.ts +1 -1
  122. package/dist/Tag.js +2 -2
  123. package/dist/{VisuallyHidden-OeQvhxYn.d.ts → VisuallyHidden-CB7aRJzF.d.ts} +1 -1
  124. package/dist/{VisuallyHidden-Co_txzxB.js → VisuallyHidden-DF2q9pTa.js} +1 -1
  125. package/dist/VisuallyHidden.d.ts +1 -1
  126. package/dist/VisuallyHidden.js +2 -2
  127. package/dist/index.d.ts +14 -14
  128. package/dist/index.js +30 -30
  129. package/dist/leu-accordion.js +2 -2
  130. package/dist/leu-button-group.js +5 -5
  131. package/dist/leu-button.d.ts +1 -1
  132. package/dist/leu-button.js +4 -4
  133. package/dist/leu-chart-wrapper.js +3 -3
  134. package/dist/leu-checkbox-group.js +4 -4
  135. package/dist/leu-checkbox.js +3 -3
  136. package/dist/leu-chip-group.d.ts +1 -1
  137. package/dist/leu-chip-group.js +3 -3
  138. package/dist/leu-chip-link.d.ts +1 -1
  139. package/dist/leu-chip-link.js +2 -2
  140. package/dist/leu-chip-removable.d.ts +1 -1
  141. package/dist/leu-chip-removable.js +3 -3
  142. package/dist/leu-chip-selectable.d.ts +1 -1
  143. package/dist/leu-chip-selectable.js +2 -2
  144. package/dist/leu-dialog.js +3 -3
  145. package/dist/leu-dropdown.js +8 -8
  146. package/dist/leu-file-input.js +6 -6
  147. package/dist/leu-icon.d.ts +1 -1
  148. package/dist/leu-icon.js +2 -2
  149. package/dist/leu-input.d.ts +1 -1
  150. package/dist/leu-input.js +3 -3
  151. package/dist/leu-menu-item.d.ts +1 -1
  152. package/dist/leu-menu-item.js +3 -3
  153. package/dist/leu-menu.d.ts +1 -1
  154. package/dist/leu-menu.js +4 -4
  155. package/dist/leu-message.js +3 -3
  156. package/dist/leu-pagination.d.ts +1 -1
  157. package/dist/leu-pagination.js +6 -6
  158. package/dist/leu-placeholder.js +2 -2
  159. package/dist/leu-popup.d.ts +1 -1
  160. package/dist/leu-popup.js +2 -2
  161. package/dist/leu-progress-bar.js +2 -2
  162. package/dist/leu-radio-group.js +3 -3
  163. package/dist/leu-radio.js +2 -2
  164. package/dist/leu-range.js +2 -2
  165. package/dist/leu-scroll-top.js +5 -5
  166. package/dist/leu-select.js +9 -9
  167. package/dist/leu-spinner.d.ts +1 -1
  168. package/dist/leu-spinner.js +2 -2
  169. package/dist/leu-tab-group.d.ts +10 -0
  170. package/dist/leu-tab-group.js +8 -0
  171. package/dist/leu-tab-panel.d.ts +10 -0
  172. package/dist/leu-tab-panel.js +6 -0
  173. package/dist/leu-tab.d.ts +10 -0
  174. package/dist/leu-tab.js +6 -0
  175. package/dist/leu-table.js +7 -7
  176. package/dist/leu-tag.js +2 -2
  177. package/dist/leu-visually-hidden.d.ts +1 -1
  178. package/dist/leu-visually-hidden.js +2 -2
  179. package/dist/vscode.html-custom-data.json +87 -19
  180. package/dist/vue/index.d.ts +93 -25
  181. package/dist/web-types.json +169 -44
  182. package/package.json +6 -5
  183. package/src/components/button/Button.ts +45 -30
  184. package/src/components/button/button.css +55 -54
  185. package/src/components/button/stories/button.stories.ts +17 -20
  186. package/src/components/button/test/button.test.ts +46 -0
  187. package/src/components/file-input/FileInput.ts +4 -2
  188. package/src/components/file-input/test/file-input.test.ts +24 -0
  189. package/src/components/select/Select.ts +0 -1
  190. package/src/components/tab/Tab.ts +72 -0
  191. package/src/components/tab/TabGroup.ts +267 -0
  192. package/src/components/tab/TabPanel.ts +59 -0
  193. package/src/components/tab/leu-tab-group.ts +11 -0
  194. package/src/components/tab/leu-tab-panel.ts +11 -0
  195. package/src/components/tab/leu-tab.ts +11 -0
  196. package/src/components/tab/stories/tab.stories.ts +97 -0
  197. package/src/components/tab/tab-group.css +63 -0
  198. package/src/components/tab/tab-panel.css +10 -0
  199. package/src/components/tab/tab.css +54 -0
  200. package/src/components/tab/test/tab-group.test.ts +426 -0
  201. package/src/components/tab/test/tab-panel.test.ts +102 -0
  202. package/src/components/tab/test/tab.test.ts +139 -0
  203. package/tsconfig.json +1 -0
  204. /package/dist/{FormAssociatedMixin-Cc74LjbC.d.ts → FormAssociatedMixin-Cw7LsSUE.d.ts} +0 -0
  205. /package/dist/{LeuElement-pJFU18Xm.d.ts → LeuElement-DK1jntuu.d.ts} +0 -0
  206. /package/dist/{hasSlotController-DWPyZ52b.d.ts → hasSlotController-BjKyhJm-.d.ts} +0 -0
@@ -1,5 +1,5 @@
1
- import "./LeuElement-k4RjIeoG.js";
2
- import { t as LeuPlaceholder } from "./Placeholder-DHMexMhK.js";
1
+ import "./LeuElement-C_lcHzQI.js";
2
+ import { t as LeuPlaceholder } from "./Placeholder-CnGzCZ5-.js";
3
3
  //#region src/components/placeholder/leu-placeholder.ts
4
4
  LeuPlaceholder.define("leu-placeholder");
5
5
  //#endregion
@@ -1,4 +1,4 @@
1
- import { t as LeuPopup } from "./Popup-Btgm2a3D.js";
1
+ import { t as LeuPopup } from "./Popup-B5iDSLIO.js";
2
2
 
3
3
  //#region src/components/popup/leu-popup.d.ts
4
4
  declare global {
package/dist/leu-popup.js CHANGED
@@ -1,5 +1,5 @@
1
- import "./LeuElement-k4RjIeoG.js";
2
- import { t as LeuPopup } from "./Popup-8jhVy8gB.js";
1
+ import "./LeuElement-C_lcHzQI.js";
2
+ import { t as LeuPopup } from "./Popup-BiN_tZDN.js";
3
3
  //#region src/components/popup/leu-popup.ts
4
4
  LeuPopup.define("leu-popup");
5
5
  //#endregion
@@ -1,5 +1,5 @@
1
- import "./LeuElement-k4RjIeoG.js";
2
- import { t as LeuProgressBar } from "./ProgressBar-CG0_lHfS.js";
1
+ import "./LeuElement-C_lcHzQI.js";
2
+ import { t as LeuProgressBar } from "./ProgressBar-BfJo_KyU.js";
3
3
  //#region src/components/progress-bar/leu-progress-bar.ts
4
4
  LeuProgressBar.define("leu-progress-bar");
5
5
  //#endregion
@@ -1,6 +1,6 @@
1
- import "./LeuElement-k4RjIeoG.js";
2
- import "./Radio-DG3xqP3s.js";
3
- import { t as LeuRadioGroup } from "./RadioGroup-BKCp9ICX.js";
1
+ import "./LeuElement-C_lcHzQI.js";
2
+ import "./Radio-CV7vuQUj.js";
3
+ import { t as LeuRadioGroup } from "./RadioGroup-C3XWSScc.js";
4
4
  //#region src/components/radio/leu-radio-group.ts
5
5
  LeuRadioGroup.define("leu-radio-group");
6
6
  //#endregion
package/dist/leu-radio.js CHANGED
@@ -1,5 +1,5 @@
1
- import "./LeuElement-k4RjIeoG.js";
2
- import { t as LeuRadio } from "./Radio-DG3xqP3s.js";
1
+ import "./LeuElement-C_lcHzQI.js";
2
+ import { t as LeuRadio } from "./Radio-CV7vuQUj.js";
3
3
  //#region src/components/radio/leu-radio.ts
4
4
  LeuRadio.define("leu-radio");
5
5
  //#endregion
package/dist/leu-range.js CHANGED
@@ -1,5 +1,5 @@
1
- import "./LeuElement-k4RjIeoG.js";
2
- import { t as LeuRange } from "./Range-7LrESv4K.js";
1
+ import "./LeuElement-C_lcHzQI.js";
2
+ import { t as LeuRange } from "./Range-C8RVrIM9.js";
3
3
  //#region src/components/range/leu-range.ts
4
4
  LeuRange.define("leu-range");
5
5
  //#endregion
@@ -1,9 +1,9 @@
1
- import "./LeuElement-k4RjIeoG.js";
2
- import "./Icon-CbZXpyHU.js";
3
- import "./Spinner-VhKfzI3Q.js";
4
- import "./Button-BSyDL_cV.js";
1
+ import "./LeuElement-C_lcHzQI.js";
2
+ import "./Icon-D8HTPEFH.js";
3
+ import "./Spinner-ChKJQJTN.js";
4
+ import "./Button-D1aYnunQ.js";
5
5
  import "./FormAssociatedMixin-DLPvFtbT.js";
6
- import { t as LeuScrollTop } from "./ScrollTop-CJJsfniA.js";
6
+ import { t as LeuScrollTop } from "./ScrollTop-B_TJ_k4m.js";
7
7
  //#region src/components/scroll-top/leu-scroll-top.ts
8
8
  LeuScrollTop.define("leu-scroll-top");
9
9
  //#endregion
@@ -1,13 +1,13 @@
1
- import "./LeuElement-k4RjIeoG.js";
2
- import "./Icon-CbZXpyHU.js";
3
- import "./Spinner-VhKfzI3Q.js";
4
- import "./Button-BSyDL_cV.js";
1
+ import "./LeuElement-C_lcHzQI.js";
2
+ import "./Icon-D8HTPEFH.js";
3
+ import "./Spinner-ChKJQJTN.js";
4
+ import "./Button-D1aYnunQ.js";
5
5
  import "./FormAssociatedMixin-DLPvFtbT.js";
6
- import "./MenuItem-Cs3KFhJm.js";
7
- import "./Menu-Cu8eIF1T.js";
8
- import "./Popup-8jhVy8gB.js";
9
- import "./Input-DBXX7ev8.js";
10
- import { t as LeuSelect } from "./Select-CxEDXIBn.js";
6
+ import "./MenuItem-ICjLCGim.js";
7
+ import "./Menu-CFLCnI34.js";
8
+ import "./Popup-BiN_tZDN.js";
9
+ import "./Input-OrILqlax.js";
10
+ import { t as LeuSelect } from "./Select-CbPTrL3G.js";
11
11
  //#region src/components/select/leu-select.ts
12
12
  LeuSelect.define("leu-select");
13
13
  //#endregion
@@ -1,4 +1,4 @@
1
- import { t as LeuSpinner } from "./Spinner-CrM1enM0.js";
1
+ import { t as LeuSpinner } from "./Spinner-DHYaX6-Y.js";
2
2
 
3
3
  //#region src/components/spinner/leu-spinner.d.ts
4
4
  declare global {
@@ -1,5 +1,5 @@
1
- import "./LeuElement-k4RjIeoG.js";
2
- import { t as LeuSpinner } from "./Spinner-VhKfzI3Q.js";
1
+ import "./LeuElement-C_lcHzQI.js";
2
+ import { t as LeuSpinner } from "./Spinner-ChKJQJTN.js";
3
3
  //#region src/components/spinner/leu-spinner.ts
4
4
  LeuSpinner.define("leu-spinner");
5
5
  //#endregion
@@ -0,0 +1,10 @@
1
+ import { LeuTabGroup } from "./TabGroup.js";
2
+
3
+ //#region src/components/tab/leu-tab-group.d.ts
4
+ declare global {
5
+ interface HTMLElementTagNameMap {
6
+ "leu-tab-group": LeuTabGroup;
7
+ }
8
+ }
9
+ //#endregion
10
+ export { LeuTabGroup };
@@ -0,0 +1,8 @@
1
+ import "./LeuElement-C_lcHzQI.js";
2
+ import "./Tab-BJbzY1xd.js";
3
+ import "./TabPanel-CTyw410b.js";
4
+ import { t as LeuTabGroup } from "./TabGroup-BIaCHrKR.js";
5
+ //#region src/components/tab/leu-tab-group.ts
6
+ LeuTabGroup.define("leu-tab-group");
7
+ //#endregion
8
+ export { LeuTabGroup };
@@ -0,0 +1,10 @@
1
+ import { t as LeuTabPanel } from "./TabPanel-DQgWP7LO.js";
2
+
3
+ //#region src/components/tab/leu-tab-panel.d.ts
4
+ declare global {
5
+ interface HTMLElementTagNameMap {
6
+ "leu-tab-panel": LeuTabPanel;
7
+ }
8
+ }
9
+ //#endregion
10
+ export { LeuTabPanel };
@@ -0,0 +1,6 @@
1
+ import "./LeuElement-C_lcHzQI.js";
2
+ import { t as LeuTabPanel } from "./TabPanel-CTyw410b.js";
3
+ //#region src/components/tab/leu-tab-panel.ts
4
+ LeuTabPanel.define("leu-tab-panel");
5
+ //#endregion
6
+ export { LeuTabPanel };
@@ -0,0 +1,10 @@
1
+ import { t as LeuTab } from "./Tab-CN97q0nj.js";
2
+
3
+ //#region src/components/tab/leu-tab.d.ts
4
+ declare global {
5
+ interface HTMLElementTagNameMap {
6
+ "leu-tab": LeuTab;
7
+ }
8
+ }
9
+ //#endregion
10
+ export { LeuTab };
@@ -0,0 +1,6 @@
1
+ import "./LeuElement-C_lcHzQI.js";
2
+ import { t as LeuTab } from "./Tab-BJbzY1xd.js";
3
+ //#region src/components/tab/leu-tab.ts
4
+ LeuTab.define("leu-tab");
5
+ //#endregion
6
+ export { LeuTab };
package/dist/leu-table.js CHANGED
@@ -1,11 +1,11 @@
1
- import "./LeuElement-k4RjIeoG.js";
2
- import "./Icon-CbZXpyHU.js";
3
- import "./Spinner-VhKfzI3Q.js";
4
- import "./Button-BSyDL_cV.js";
1
+ import "./LeuElement-C_lcHzQI.js";
2
+ import "./Icon-D8HTPEFH.js";
3
+ import "./Spinner-ChKJQJTN.js";
4
+ import "./Button-D1aYnunQ.js";
5
5
  import "./FormAssociatedMixin-DLPvFtbT.js";
6
- import "./VisuallyHidden-Co_txzxB.js";
7
- import "./Pagination-CB2eVlXk.js";
8
- import { t as LeuTable } from "./Table-rg_JCtsA.js";
6
+ import "./VisuallyHidden-DF2q9pTa.js";
7
+ import "./Pagination-D1tP5FrM.js";
8
+ import { t as LeuTable } from "./Table-D3QmePJd.js";
9
9
  //#region src/components/table/leu-table.ts
10
10
  LeuTable.define("leu-table");
11
11
  //#endregion
package/dist/leu-tag.js CHANGED
@@ -1,5 +1,5 @@
1
- import "./LeuElement-k4RjIeoG.js";
2
- import { t as LeuTag } from "./Tag-BROUaDAZ.js";
1
+ import "./LeuElement-C_lcHzQI.js";
2
+ import { t as LeuTag } from "./Tag-nUnWtHYy.js";
3
3
  //#region src/components/tag/leu-tag.ts
4
4
  LeuTag.define("leu-tag");
5
5
  //#endregion
@@ -1,4 +1,4 @@
1
- import { t as LeuVisuallyHidden } from "./VisuallyHidden-OeQvhxYn.js";
1
+ import { t as LeuVisuallyHidden } from "./VisuallyHidden-CB7aRJzF.js";
2
2
 
3
3
  //#region src/components/visually-hidden/leu-visually-hidden.d.ts
4
4
  declare global {
@@ -1,5 +1,5 @@
1
- import "./LeuElement-k4RjIeoG.js";
2
- import { t as LeuVisuallyHidden } from "./VisuallyHidden-Co_txzxB.js";
1
+ import "./LeuElement-C_lcHzQI.js";
2
+ import { t as LeuVisuallyHidden } from "./VisuallyHidden-DF2q9pTa.js";
3
3
  //#region src/components/visually-hidden/leu-visually-hidden.ts
4
4
  LeuVisuallyHidden.define("leu-visually-hidden");
5
5
  //#endregion
@@ -34,6 +34,17 @@
34
34
  }
35
35
  ]
36
36
  },
37
+ {
38
+ "name": "leu-button-group",
39
+ "description": "A radio input-like button group component.\nIt allows only one button to be active at a time.\n---\n\n\n### **Events:**\n - **input** - When the value of the group changes by clicking a button\n\n### **Slots:**\n - _default_ - Slot for the buttons",
40
+ "attributes": [],
41
+ "references": [
42
+ {
43
+ "name": "Documentation",
44
+ "url": "https://statistikzh.github.io/leu/?path=/story/button-group"
45
+ }
46
+ ]
47
+ },
37
48
  {
38
49
  "name": "leu-button",
39
50
  "description": "\n---\n\n\n### **Slots:**\n - **before** - The icon to display before the label\n- **after** - The icon to display after the label\n- _default_ - The label of the button or the icon if no label is set",
@@ -59,7 +70,7 @@
59
70
  },
60
71
  {
61
72
  "name": "type",
62
- "description": "The `type` of the underlying button element.",
73
+ "description": "The `type` of the underlying button element. Ignored when `href` is set.",
63
74
  "values": [
64
75
  { "name": "button" },
65
76
  { "name": "submit" },
@@ -68,12 +79,27 @@
68
79
  },
69
80
  {
70
81
  "name": "componentRole",
71
- "description": "The `role` of the underlying button element.",
82
+ "description": "The `role` of the underlying button element. Ignored when `href` is set.",
83
+ "values": []
84
+ },
85
+ {
86
+ "name": "href",
87
+ "description": "If set, renders the button as an <a> element instead of a <button> with the provided href.",
72
88
  "values": []
73
89
  },
90
+ {
91
+ "name": "target",
92
+ "description": "Tells the browser where to display the linked URL. Only used when `href` is set.",
93
+ "values": [
94
+ { "name": "_blank" },
95
+ { "name": "_parent" },
96
+ { "name": "_self" },
97
+ { "name": "_top" }
98
+ ]
99
+ },
74
100
  {
75
101
  "name": "disabled",
76
- "description": "Whether the button is disabled or not.",
102
+ "description": "Whether the button is disabled or not. Ignored when `href` is set.",
77
103
  "values": []
78
104
  },
79
105
  {
@@ -96,11 +122,6 @@
96
122
  "description": "Whether the button is expanded or not.\nOnly has an effect on the variant `ghost` to show an expanding icon.\nIf the property is not set, the icon will not be shown.\nIf it is set, the icon will either show an expanded or collapsed state.",
97
123
  "values": [{ "name": "true" }, { "name": "false" }]
98
124
  },
99
- {
100
- "name": "fluid",
101
- "description": "Alters the shape of the button to be full width of its parent container",
102
- "values": []
103
- },
104
125
  {
105
126
  "name": "loading",
106
127
  "description": "Replaces the content with a spinner",
@@ -114,17 +135,6 @@
114
135
  }
115
136
  ]
116
137
  },
117
- {
118
- "name": "leu-button-group",
119
- "description": "A radio input-like button group component.\nIt allows only one button to be active at a time.\n---\n\n\n### **Events:**\n - **input** - When the value of the group changes by clicking a button\n\n### **Slots:**\n - _default_ - Slot for the buttons",
120
- "attributes": [],
121
- "references": [
122
- {
123
- "name": "Documentation",
124
- "url": "https://statistikzh.github.io/leu/?path=/story/button-group"
125
- }
126
- ]
127
- },
128
138
  {
129
139
  "name": "leu-chart-wrapper",
130
140
  "description": "A wrapper element for charts.\n---\n\n\n### **Slots:**\n - **title** - The title of the chart. Use a heading tag (h2-4) depending on your context.\n- **description** - A description of the chart. Content is wrapped in a `<p>` tag by the component.\n- **chart** - The actual chart\n- **caption** - A caption for the chart, e.g. a source or explanation of the data.\n- **download** - A download button or dropdown to export the chart in different formats.",
@@ -859,6 +869,64 @@
859
869
  }
860
870
  ]
861
871
  },
872
+ {
873
+ "name": "leu-tab",
874
+ "description": "Tab Button.\n---\n\n\n### **Events:**\n - **leu:tab-select**",
875
+ "attributes": [
876
+ {
877
+ "name": "name",
878
+ "description": "Name to link Button and Panel together",
879
+ "values": []
880
+ },
881
+ { "name": "active", "description": "Is active", "values": [] }
882
+ ],
883
+ "references": [
884
+ {
885
+ "name": "Documentation",
886
+ "url": "https://statistikzh.github.io/leu/?path=/story/tab"
887
+ }
888
+ ]
889
+ },
890
+ {
891
+ "name": "leu-tab-group",
892
+ "description": "Tab Group\n---\n\n\n### **Methods:**\n \n\n### **Slots:**\n - **tabs** - Slot for the leu-tab elements\n- **panels** - Slot for the leu-tab-panel elements",
893
+ "attributes": [
894
+ {
895
+ "name": "label",
896
+ "description": "Label for the tab list, used for accessibility.\nContent will not be visible on the page, but should be provided for screen readers.",
897
+ "values": []
898
+ },
899
+ {
900
+ "name": "active",
901
+ "description": "Name of the active/selected tab and panel. Has to match the name property of a leu-tab and leu-tab-panel.",
902
+ "values": []
903
+ }
904
+ ],
905
+ "references": [
906
+ {
907
+ "name": "Documentation",
908
+ "url": "https://statistikzh.github.io/leu/?path=/story/tab-group"
909
+ }
910
+ ]
911
+ },
912
+ {
913
+ "name": "leu-tab-panel",
914
+ "description": "Tab Panel\n---\n\n\n### **Events:**\n - **leu:show-tab-panel** - Fired when a tab panel is shown",
915
+ "attributes": [
916
+ {
917
+ "name": "name",
918
+ "description": "Name of the tab. Apply the same name to the corresponding tab button to link them together.\nHas to be unique within the tab component.",
919
+ "values": []
920
+ },
921
+ { "name": "active", "values": [] }
922
+ ],
923
+ "references": [
924
+ {
925
+ "name": "Documentation",
926
+ "url": "https://statistikzh.github.io/leu/?path=/story/tab-panel"
927
+ }
928
+ ]
929
+ },
862
930
  {
863
931
  "name": "leu-table",
864
932
  "description": "\n---\n",
@@ -1,8 +1,8 @@
1
1
  import type { DefineComponent } from "vue";
2
2
 
3
3
  import type { LeuAccordion } from "../Accordion.js";
4
- import type { LeuButton } from "../Button.js";
5
4
  import type { LeuButtonGroup } from "../ButtonGroup.js";
5
+ import type { LeuButton } from "../Button.js";
6
6
  import type { LeuChartWrapper } from "../ChartWrapper.js";
7
7
  import type { LeuCheckbox } from "../Checkbox.js";
8
8
  import type { LeuCheckboxGroup } from "../CheckboxGroup.js";
@@ -28,6 +28,9 @@ import type { LeuRange, CustomEvent } from "../Range.js";
28
28
  import type { LeuScrollTop } from "../ScrollTop.js";
29
29
  import type { LeuSelect } from "../Select.js";
30
30
  import type { LeuSpinner } from "../Spinner.js";
31
+ import type { LeuTab, CustomEvent } from "../Tab.js";
32
+ import type { LeuTabGroup } from "../TabGroup.js";
33
+ import type { LeuTabPanel, CustomEvent } from "../TabPanel.js";
31
34
  import type { LeuTable } from "../Table.js";
32
35
  import type { LeuTag } from "../Tag.js";
33
36
  import type { LeuVisuallyHidden } from "../VisuallyHidden.js";
@@ -43,6 +46,13 @@ type LeuAccordionProps = {
43
46
  label?: LeuAccordion["label"];
44
47
  };
45
48
 
49
+ type LeuButtonGroupProps = {
50
+ /** The value of the currently selected (active) button */
51
+ value?: LeuButtonGroup["value"];
52
+ /** When the value of the group changes by clicking a button */
53
+ oninput?: (e: CustomEvent<never>) => void;
54
+ };
55
+
46
56
  type LeuButtonProps = {
47
57
  /** `aria-label` of the underlying button elements.
48
58
  Use it to provide a label when only an icon is visible. */
@@ -51,11 +61,15 @@ Use it to provide a label when only an icon is visible. */
51
61
  size?: LeuButton["size"];
52
62
  /** The visual variant of the button. */
53
63
  variant?: LeuButton["variant"];
54
- /** The `type` of the underlying button element. */
64
+ /** The `type` of the underlying button element. Ignored when `href` is set. */
55
65
  type?: LeuButton["type"];
56
- /** The `role` of the underlying button element. */
66
+ /** The `role` of the underlying button element. Ignored when `href` is set. */
57
67
  componentRole?: LeuButton["componentRole"];
58
- /** Whether the button is disabled or not. */
68
+ /** If set, renders the button as an <a> element instead of a <button> with the provided href. */
69
+ href?: LeuButton["href"];
70
+ /** Tells the browser where to display the linked URL. Only used when `href` is set. */
71
+ target?: LeuButton["target"];
72
+ /** Whether the button is disabled or not. Ignored when `href` is set. */
59
73
  disabled?: LeuButton["disabled"];
60
74
  /** Whether the button should be round.
61
75
  Can only be applied when the button contains an icon without a visible label. */
@@ -70,19 +84,10 @@ Only has an effect on the variant `ghost` to show an expanding icon.
70
84
  If the property is not set, the icon will not be shown.
71
85
  If it is set, the icon will either show an expanded or collapsed state. */
72
86
  expanded?: LeuButton["expanded"];
73
- /** Alters the shape of the button to be full width of its parent container */
74
- fluid?: LeuButton["fluid"];
75
87
  /** Replaces the content with a spinner */
76
88
  loading?: LeuButton["loading"];
77
89
  };
78
90
 
79
- type LeuButtonGroupProps = {
80
- /** The value of the currently selected (active) button */
81
- value?: LeuButtonGroup["value"];
82
- /** When the value of the group changes by clicking a button */
83
- oninput?: (e: CustomEvent<never>) => void;
84
- };
85
-
86
91
  type LeuChartWrapperProps = {
87
92
  /** Whether the chart is currently loading or not.
88
93
  When set to `true`, a spinner will be shown in the chart container. */
@@ -450,6 +455,35 @@ finds all the options that match the given values and selects them. */
450
455
 
451
456
  type LeuSpinnerProps = {};
452
457
 
458
+ type LeuTabProps = {
459
+ /** Name to link Button and Panel together */
460
+ name?: LeuTab["name"];
461
+ /** Is active */
462
+ active?: LeuTab["active"];
463
+
464
+ /** */
465
+ "onleu:tab-select"?: (e: CustomEvent<CustomEvent>) => void;
466
+ };
467
+
468
+ type LeuTabGroupProps = {
469
+ /** Label for the tab list, used for accessibility.
470
+ Content will not be visible on the page, but should be provided for screen readers. */
471
+ label?: LeuTabGroup["label"];
472
+ /** Name of the active/selected tab and panel. Has to match the name property of a leu-tab and leu-tab-panel. */
473
+ active?: LeuTabGroup["active"];
474
+ };
475
+
476
+ type LeuTabPanelProps = {
477
+ /** Name of the tab. Apply the same name to the corresponding tab button to link them together.
478
+ Has to be unique within the tab component. */
479
+ name?: LeuTabPanel["name"];
480
+ /** */
481
+ active?: LeuTabPanel["active"];
482
+
483
+ /** Fired when a tab panel is shown */
484
+ "onleu:show-tab-panel"?: (e: CustomEvent<CustomEvent>) => void;
485
+ };
486
+
453
487
  type LeuTableProps = {
454
488
  /** */
455
489
  columns?: LeuTable["columns"];
@@ -499,18 +533,6 @@ export type CustomElements = {
499
533
  */
500
534
  "leu-accordion": DefineComponent<LeuAccordionProps>;
501
535
 
502
- /**
503
- *
504
- * ---
505
- *
506
- *
507
- * ### **Slots:**
508
- * - **before** - The icon to display before the label
509
- * - **after** - The icon to display after the label
510
- * - _default_ - The label of the button or the icon if no label is set
511
- */
512
- "leu-button": DefineComponent<LeuButtonProps>;
513
-
514
536
  /**
515
537
  * A radio input-like button group component.
516
538
  * It allows only one button to be active at a time.
@@ -525,6 +547,18 @@ export type CustomElements = {
525
547
  */
526
548
  "leu-button-group": DefineComponent<LeuButtonGroupProps>;
527
549
 
550
+ /**
551
+ *
552
+ * ---
553
+ *
554
+ *
555
+ * ### **Slots:**
556
+ * - **before** - The icon to display before the label
557
+ * - **after** - The icon to display after the label
558
+ * - _default_ - The label of the button or the icon if no label is set
559
+ */
560
+ "leu-button": DefineComponent<LeuButtonProps>;
561
+
528
562
  /**
529
563
  * A wrapper element for charts.
530
564
  * ---
@@ -813,6 +847,40 @@ export type CustomElements = {
813
847
  */
814
848
  "leu-spinner": DefineComponent<LeuSpinnerProps>;
815
849
 
850
+ /**
851
+ * Tab Button.
852
+ * ---
853
+ *
854
+ *
855
+ * ### **Events:**
856
+ * - **leu:tab-select**
857
+ */
858
+ "leu-tab": DefineComponent<LeuTabProps>;
859
+
860
+ /**
861
+ * Tab Group
862
+ * ---
863
+ *
864
+ *
865
+ * ### **Methods:**
866
+ *
867
+ *
868
+ * ### **Slots:**
869
+ * - **tabs** - Slot for the leu-tab elements
870
+ * - **panels** - Slot for the leu-tab-panel elements
871
+ */
872
+ "leu-tab-group": DefineComponent<LeuTabGroupProps>;
873
+
874
+ /**
875
+ * Tab Panel
876
+ * ---
877
+ *
878
+ *
879
+ * ### **Events:**
880
+ * - **leu:show-tab-panel** - Fired when a tab panel is shown
881
+ */
882
+ "leu-tab-panel": DefineComponent<LeuTabPanelProps>;
883
+
816
884
  /**
817
885
  *
818
886
  * ---