@statistikzh/leu 0.24.2 → 0.25.0

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 (532) hide show
  1. package/.release-please-manifest.json +1 -1
  2. package/.storybook/main.ts +18 -53
  3. package/.storybook/manager.ts +1 -4
  4. package/.storybook/preview.ts +23 -16
  5. package/.storybook/theme.ts +1 -1
  6. package/CHANGELOG.md +14 -0
  7. package/dist/Accordion-CDNyrB8d.js +241 -0
  8. package/dist/Accordion.d.ts +44 -44
  9. package/dist/Accordion.js +2 -249
  10. package/dist/Button-DSGPIcjm.d.ts +93 -0
  11. package/dist/Button-EdS9xr2J.js +524 -0
  12. package/dist/Button.d.ts +2 -85
  13. package/dist/Button.js +4 -504
  14. package/dist/ButtonGroup-BQqf8o_d.js +88 -0
  15. package/dist/ButtonGroup.d.ts +19 -19
  16. package/dist/ButtonGroup.js +5 -101
  17. package/dist/ChartWrapper-LiNHTNRw.js +158 -0
  18. package/dist/ChartWrapper.d.ts +26 -26
  19. package/dist/ChartWrapper.js +3 -163
  20. package/dist/Checkbox-BtDWmPab.js +198 -0
  21. package/dist/Checkbox.d.ts +35 -27
  22. package/dist/Checkbox.js +4 -157
  23. package/dist/CheckboxGroup-C8MbwW9u.js +81 -0
  24. package/dist/CheckboxGroup.d.ts +18 -18
  25. package/dist/CheckboxGroup.js +5 -82
  26. package/dist/Chip-Ch09jjYi.js +171 -0
  27. package/dist/Chip-DLKM9P7v.d.ts +18 -0
  28. package/dist/Chip.d.ts +2 -18
  29. package/dist/Chip.js +2 -166
  30. package/dist/ChipGroup-PvqVW-tm.js +125 -0
  31. package/dist/ChipGroup-Ta8Ht4jc.d.ts +42 -0
  32. package/dist/ChipGroup.d.ts +2 -43
  33. package/dist/ChipGroup.js +3 -132
  34. package/dist/ChipLink-BAxyQO2M.d.ts +17 -0
  35. package/dist/ChipLink.d.ts +2 -18
  36. package/dist/ChipLink.js +28 -28
  37. package/dist/ChipRemovable-DBjwt0CH.d.ts +25 -0
  38. package/dist/ChipRemovable.d.ts +2 -26
  39. package/dist/ChipRemovable.js +42 -43
  40. package/dist/ChipSelectable-CMJNcE4U.d.ts +32 -0
  41. package/dist/ChipSelectable.d.ts +2 -33
  42. package/dist/ChipSelectable.js +63 -72
  43. package/dist/Dialog-CV1JTkCn.js +241 -0
  44. package/dist/Dialog.d.ts +28 -28
  45. package/dist/Dialog.js +3 -240
  46. package/dist/Dropdown-DpFdFbA1.js +155 -0
  47. package/dist/Dropdown.d.ts +39 -41
  48. package/dist/Dropdown.js +8 -157
  49. package/dist/FileInput-5apX17JT.js +344 -0
  50. package/dist/FileInput.d.ts +56 -57
  51. package/dist/FileInput.js +6 -383
  52. package/dist/FormAssociatedMixin-BbFlza53.js +58 -0
  53. package/dist/FormAssociatedMixin-Cc74LjbC.d.ts +22 -0
  54. package/dist/Icon-DhAvH0XM.js +186 -0
  55. package/dist/Icon-Op80LrrO.d.ts +151 -0
  56. package/dist/Icon.d.ts +2 -4
  57. package/dist/Icon.js +2 -188
  58. package/dist/Input-CnEz-2dK.js +610 -0
  59. package/dist/Input-D2THgo7c.d.ts +169 -0
  60. package/dist/Input.d.ts +2 -166
  61. package/dist/Input.js +4 -626
  62. package/dist/LeuElement-B7NJzWwP.js +46 -0
  63. package/dist/LeuElement-pJFU18Xm.d.ts +11 -0
  64. package/dist/Menu-CQdx1ef3.d.ts +43 -0
  65. package/dist/Menu-DpiheIPk.js +136 -0
  66. package/dist/Menu.d.ts +2 -44
  67. package/dist/Menu.js +4 -157
  68. package/dist/MenuItem-CZTqGg5R.js +219 -0
  69. package/dist/MenuItem-QcgnRk_7.d.ts +63 -0
  70. package/dist/MenuItem.d.ts +2 -64
  71. package/dist/MenuItem.js +3 -227
  72. package/dist/Message-J4Kj7yHE.js +252 -0
  73. package/dist/Message.d.ts +53 -53
  74. package/dist/Message.js +3 -267
  75. package/dist/Pagination-Be8TcBoC.d.ts +76 -0
  76. package/dist/Pagination-CWqgusWZ.js +226 -0
  77. package/dist/Pagination.d.ts +2 -76
  78. package/dist/Pagination.js +6 -240
  79. package/dist/Placeholder-DMN6sMbp.js +95 -0
  80. package/dist/Placeholder.d.ts +15 -15
  81. package/dist/Placeholder.js +2 -89
  82. package/dist/Popup-Btgm2a3D.d.ts +61 -0
  83. package/dist/Popup-JQjuj26v.js +195 -0
  84. package/dist/Popup.d.ts +2 -62
  85. package/dist/Popup.js +2 -233
  86. package/dist/ProgressBar-CzN3fqiH.js +167 -0
  87. package/dist/ProgressBar.d.ts +21 -21
  88. package/dist/ProgressBar.js +2 -165
  89. package/dist/Radio-CX8aCsff.js +160 -0
  90. package/dist/Radio.d.ts +22 -22
  91. package/dist/Radio.js +2 -151
  92. package/dist/RadioGroup-CgEWQnC4.js +171 -0
  93. package/dist/RadioGroup.d.ts +35 -35
  94. package/dist/RadioGroup.js +3 -182
  95. package/dist/Range-DoW_ZdKm.js +496 -0
  96. package/dist/Range.d.ts +112 -112
  97. package/dist/Range.js +2 -586
  98. package/dist/ScrollTop-DxChetWq.js +130 -0
  99. package/dist/ScrollTop.d.ts +21 -21
  100. package/dist/ScrollTop.js +5 -134
  101. package/dist/Select-BCx79gOH.js +618 -0
  102. package/dist/Select.d.ts +130 -132
  103. package/dist/Select.js +9 -675
  104. package/dist/Spinner-CMo_o6Fy.d.ts +14 -0
  105. package/dist/Spinner-DJR4gv3Y.js +56 -0
  106. package/dist/Spinner.d.ts +2 -14
  107. package/dist/Spinner.js +2 -52
  108. package/dist/Table-DZz1ic3j.js +392 -0
  109. package/dist/Table.d.ts +61 -63
  110. package/dist/Table.js +7 -427
  111. package/dist/Tag-DsZS_8pl.js +76 -0
  112. package/dist/Tag.d.ts +8 -8
  113. package/dist/Tag.js +2 -74
  114. package/dist/VisuallyHidden-BkllVjlz.js +29 -0
  115. package/dist/VisuallyHidden-OeQvhxYn.d.ts +13 -0
  116. package/dist/VisuallyHidden.d.ts +2 -13
  117. package/dist/VisuallyHidden.js +2 -25
  118. package/dist/decorate-DwpAc4D0.js +9 -0
  119. package/dist/hasSlotController-BLtZurRh.d.ts +19 -0
  120. package/dist/hasSlotController-DjdfnOQp.js +38 -0
  121. package/dist/index.d.ts +33 -30
  122. package/dist/index.js +35 -45
  123. package/dist/leu-accordion.d.ts +7 -10
  124. package/dist/leu-accordion.js +4 -8
  125. package/dist/leu-button-group.d.ts +7 -10
  126. package/dist/leu-button-group.js +7 -12
  127. package/dist/leu-button.d.ts +7 -11
  128. package/dist/leu-button.js +6 -11
  129. package/dist/leu-chart-wrapper.d.ts +7 -12
  130. package/dist/leu-chart-wrapper.js +5 -9
  131. package/dist/leu-checkbox-group.d.ts +7 -10
  132. package/dist/leu-checkbox-group.js +7 -10
  133. package/dist/leu-checkbox.d.ts +7 -11
  134. package/dist/leu-checkbox.js +6 -8
  135. package/dist/leu-chip-group.d.ts +7 -12
  136. package/dist/leu-chip-group.js +5 -10
  137. package/dist/leu-chip-link.d.ts +7 -11
  138. package/dist/leu-chip-link.js +5 -8
  139. package/dist/leu-chip-removable.d.ts +7 -12
  140. package/dist/leu-chip-removable.js +6 -9
  141. package/dist/leu-chip-selectable.d.ts +7 -11
  142. package/dist/leu-chip-selectable.js +5 -8
  143. package/dist/leu-dialog.d.ts +7 -13
  144. package/dist/leu-dialog.js +5 -11
  145. package/dist/leu-dropdown.d.ts +7 -18
  146. package/dist/leu-dropdown.js +10 -17
  147. package/dist/leu-file-input.d.ts +7 -13
  148. package/dist/leu-file-input.js +8 -13
  149. package/dist/leu-icon.d.ts +7 -10
  150. package/dist/leu-icon.js +4 -7
  151. package/dist/leu-input.d.ts +7 -12
  152. package/dist/leu-input.js +6 -12
  153. package/dist/leu-menu-item.d.ts +7 -11
  154. package/dist/leu-menu-item.js +5 -9
  155. package/dist/leu-menu.d.ts +7 -12
  156. package/dist/leu-menu.js +6 -10
  157. package/dist/leu-message.d.ts +7 -11
  158. package/dist/leu-message.js +5 -10
  159. package/dist/leu-pagination.d.ts +7 -13
  160. package/dist/leu-pagination.js +8 -14
  161. package/dist/leu-placeholder.d.ts +7 -10
  162. package/dist/leu-placeholder.js +4 -5
  163. package/dist/leu-popup.d.ts +7 -11
  164. package/dist/leu-popup.js +4 -8
  165. package/dist/leu-progress-bar.d.ts +7 -10
  166. package/dist/leu-progress-bar.js +4 -8
  167. package/dist/leu-radio-group.d.ts +7 -10
  168. package/dist/leu-radio-group.js +5 -9
  169. package/dist/leu-radio.d.ts +7 -10
  170. package/dist/leu-radio.js +4 -7
  171. package/dist/leu-range.d.ts +7 -10
  172. package/dist/leu-range.js +4 -9
  173. package/dist/leu-scroll-top.d.ts +7 -12
  174. package/dist/leu-scroll-top.js +7 -13
  175. package/dist/leu-select.d.ts +7 -19
  176. package/dist/leu-select.js +11 -19
  177. package/dist/leu-spinner.d.ts +7 -10
  178. package/dist/leu-spinner.js +4 -5
  179. package/dist/leu-table.d.ts +7 -14
  180. package/dist/leu-table.js +9 -17
  181. package/dist/leu-tag.d.ts +7 -10
  182. package/dist/leu-tag.js +4 -7
  183. package/dist/leu-visually-hidden.d.ts +7 -10
  184. package/dist/leu-visually-hidden.js +4 -5
  185. package/dist/utils-hfk5Nwy8.js +28 -0
  186. package/dist/vscode.html-custom-data.json +2 -8
  187. package/dist/vue/index.d.ts +3 -9
  188. package/dist/web-types.json +8 -24
  189. package/eslint.config.mjs +79 -0
  190. package/package.json +44 -60
  191. package/scripts/generate-component/templates/stories/[name].stories.ts +1 -1
  192. package/src/components/accordion/Accordion.ts +1 -1
  193. package/src/components/button/Button.ts +62 -3
  194. package/src/components/button/test/button.test.ts +185 -7
  195. package/src/components/button-group/ButtonGroup.ts +1 -6
  196. package/src/components/button-group/stories/button-group.stories.ts +1 -1
  197. package/src/components/chart-wrapper/ChartWrapper.ts +1 -1
  198. package/src/components/chart-wrapper/stories/chart-wrapper.stories.ts +1 -1
  199. package/src/components/checkbox/Checkbox.ts +76 -12
  200. package/src/components/checkbox/CheckboxGroup.ts +1 -1
  201. package/src/components/checkbox/checkbox.css +4 -0
  202. package/src/components/checkbox/stories/checkbox.stories.ts +26 -3
  203. package/src/components/checkbox/test/checkbox.test.ts +147 -3
  204. package/src/components/chip/Chip.ts +1 -1
  205. package/src/components/chip/ChipGroup.ts +2 -2
  206. package/src/components/chip/stories/chip-removable.stories.ts +1 -1
  207. package/src/components/chip/test/chip-removable.test.ts +2 -2
  208. package/src/components/dialog/Dialog.ts +1 -1
  209. package/src/components/dialog/stories/dialog.stories.ts +0 -2
  210. package/src/components/dropdown/Dropdown.ts +1 -1
  211. package/src/components/dropdown/stories/dropdown.stories.ts +1 -1
  212. package/src/components/file-input/FileInput.ts +18 -20
  213. package/src/components/file-input/stories/file-input.stories.ts +2 -2
  214. package/src/components/file-input/test/file-input.test.ts +14 -1
  215. package/src/components/icon/Icon.ts +1 -1
  216. package/src/components/input/Input.ts +18 -7
  217. package/src/components/input/stories/input.stories.ts +24 -21
  218. package/src/components/menu/Menu.ts +4 -4
  219. package/src/components/menu/MenuItem.ts +1 -1
  220. package/src/components/menu/stories/menu-item.stories.ts +0 -2
  221. package/src/components/message/Message.ts +1 -1
  222. package/src/components/message/stories/message.stories.ts +2 -2
  223. package/src/components/pagination/Pagination.ts +1 -1
  224. package/src/components/pagination/stories/pagination.stories.ts +3 -3
  225. package/src/components/pagination/test/pagination.test.ts +1 -1
  226. package/src/components/placeholder/Placeholder.ts +1 -1
  227. package/src/components/placeholder/stories/placeholder.stories.ts +1 -1
  228. package/src/components/popup/Popup.ts +1 -1
  229. package/src/components/progress-bar/ProgressBar.ts +1 -1
  230. package/src/components/progress-bar/stories/progress-bar.stories.ts +1 -1
  231. package/src/components/radio/Radio.ts +1 -1
  232. package/src/components/radio/RadioGroup.ts +5 -5
  233. package/src/components/range/Range.ts +1 -1
  234. package/src/components/range/stories/range.stories.ts +2 -2
  235. package/src/components/scroll-top/ScrollTop.ts +1 -1
  236. package/src/components/select/Select.ts +2 -5
  237. package/src/components/spinner/Spinner.ts +1 -1
  238. package/src/components/table/Table.ts +1 -1
  239. package/src/components/tag/Tag.ts +1 -1
  240. package/src/components/tag/stories/tag.stories.ts +1 -1
  241. package/src/components/visually-hidden/VisuallyHidden.ts +1 -1
  242. package/src/docs/contributing.mdx +1 -1
  243. package/src/docs/installation.mdx +1 -1
  244. package/src/docs/theme.mdx +1 -1
  245. package/src/docs/usage.mdx +1 -1
  246. package/src/global.d.ts +1 -1
  247. package/src/lib/LeuElement.ts +1 -1
  248. package/src/lib/mixins/FormAssociatedMixin.ts +115 -0
  249. package/src/lib/styleMap.ts +1 -1
  250. package/tsdown.config.ts +35 -0
  251. package/web-test-runner.config.mjs +20 -2
  252. package/.eslintrc.json +0 -57
  253. package/dist/Icon.d-itcQ94ym.d.ts +0 -151
  254. package/dist/LeuElement-BfXSO7MN.js +0 -42
  255. package/dist/LeuElement.d-BevHqLUu.d.ts +0 -10
  256. package/dist/_tslib-CNEFicEt.js +0 -30
  257. package/dist/components/accordion/Accordion.d.ts +0 -49
  258. package/dist/components/accordion/Accordion.d.ts.map +0 -1
  259. package/dist/components/accordion/leu-accordion.d.ts +0 -8
  260. package/dist/components/accordion/leu-accordion.d.ts.map +0 -1
  261. package/dist/components/accordion/stories/accordion.stories.d.ts +0 -26
  262. package/dist/components/accordion/stories/accordion.stories.d.ts.map +0 -1
  263. package/dist/components/accordion/test/accordion.test.d.ts +0 -2
  264. package/dist/components/accordion/test/accordion.test.d.ts.map +0 -1
  265. package/dist/components/button/Button.d.ts +0 -81
  266. package/dist/components/button/Button.d.ts.map +0 -1
  267. package/dist/components/button/leu-button.d.ts +0 -8
  268. package/dist/components/button/leu-button.d.ts.map +0 -1
  269. package/dist/components/button/stories/button.stories.d.ts +0 -19
  270. package/dist/components/button/stories/button.stories.d.ts.map +0 -1
  271. package/dist/components/button/test/button.test.d.ts +0 -3
  272. package/dist/components/button/test/button.test.d.ts.map +0 -1
  273. package/dist/components/button-group/ButtonGroup.d.ts +0 -25
  274. package/dist/components/button-group/ButtonGroup.d.ts.map +0 -1
  275. package/dist/components/button-group/leu-button-group.d.ts +0 -8
  276. package/dist/components/button-group/leu-button-group.d.ts.map +0 -1
  277. package/dist/components/button-group/stories/button-group.stories.d.ts +0 -15
  278. package/dist/components/button-group/stories/button-group.stories.d.ts.map +0 -1
  279. package/dist/components/button-group/test/button-group.test.d.ts +0 -3
  280. package/dist/components/button-group/test/button-group.test.d.ts.map +0 -1
  281. package/dist/components/chart-wrapper/ChartWrapper.d.ts +0 -34
  282. package/dist/components/chart-wrapper/ChartWrapper.d.ts.map +0 -1
  283. package/dist/components/chart-wrapper/leu-chart-wrapper.d.ts +0 -8
  284. package/dist/components/chart-wrapper/leu-chart-wrapper.d.ts.map +0 -1
  285. package/dist/components/chart-wrapper/stories/chart-wrapper.stories.d.ts +0 -47
  286. package/dist/components/chart-wrapper/stories/chart-wrapper.stories.d.ts.map +0 -1
  287. package/dist/components/chart-wrapper/test/chart-wrapper.test.d.ts +0 -2
  288. package/dist/components/chart-wrapper/test/chart-wrapper.test.d.ts.map +0 -1
  289. package/dist/components/checkbox/Checkbox.d.ts +0 -28
  290. package/dist/components/checkbox/Checkbox.d.ts.map +0 -1
  291. package/dist/components/checkbox/CheckboxGroup.d.ts +0 -22
  292. package/dist/components/checkbox/CheckboxGroup.d.ts.map +0 -1
  293. package/dist/components/checkbox/leu-checkbox-group.d.ts +0 -8
  294. package/dist/components/checkbox/leu-checkbox-group.d.ts.map +0 -1
  295. package/dist/components/checkbox/leu-checkbox.d.ts +0 -8
  296. package/dist/components/checkbox/leu-checkbox.d.ts.map +0 -1
  297. package/dist/components/checkbox/stories/checkbox-group.stories.d.ts +0 -29
  298. package/dist/components/checkbox/stories/checkbox-group.stories.d.ts.map +0 -1
  299. package/dist/components/checkbox/stories/checkbox.stories.d.ts +0 -22
  300. package/dist/components/checkbox/stories/checkbox.stories.d.ts.map +0 -1
  301. package/dist/components/checkbox/test/checkbox-group.test.d.ts +0 -3
  302. package/dist/components/checkbox/test/checkbox-group.test.d.ts.map +0 -1
  303. package/dist/components/checkbox/test/checkbox.test.d.ts +0 -2
  304. package/dist/components/checkbox/test/checkbox.test.d.ts.map +0 -1
  305. package/dist/components/chip/Chip.d.ts +0 -15
  306. package/dist/components/chip/Chip.d.ts.map +0 -1
  307. package/dist/components/chip/ChipGroup.d.ts +0 -38
  308. package/dist/components/chip/ChipGroup.d.ts.map +0 -1
  309. package/dist/components/chip/ChipLink.d.ts +0 -13
  310. package/dist/components/chip/ChipLink.d.ts.map +0 -1
  311. package/dist/components/chip/ChipRemovable.d.ts +0 -21
  312. package/dist/components/chip/ChipRemovable.d.ts.map +0 -1
  313. package/dist/components/chip/ChipSelectable.d.ts +0 -28
  314. package/dist/components/chip/ChipSelectable.d.ts.map +0 -1
  315. package/dist/components/chip/exports.d.ts +0 -5
  316. package/dist/components/chip/exports.d.ts.map +0 -1
  317. package/dist/components/chip/leu-chip-group.d.ts +0 -8
  318. package/dist/components/chip/leu-chip-group.d.ts.map +0 -1
  319. package/dist/components/chip/leu-chip-link.d.ts +0 -8
  320. package/dist/components/chip/leu-chip-link.d.ts.map +0 -1
  321. package/dist/components/chip/leu-chip-removable.d.ts +0 -8
  322. package/dist/components/chip/leu-chip-removable.d.ts.map +0 -1
  323. package/dist/components/chip/leu-chip-selectable.d.ts +0 -8
  324. package/dist/components/chip/leu-chip-selectable.d.ts.map +0 -1
  325. package/dist/components/chip/stories/chip-group.stories.d.ts +0 -40
  326. package/dist/components/chip/stories/chip-group.stories.d.ts.map +0 -1
  327. package/dist/components/chip/stories/chip-link.stories.d.ts +0 -27
  328. package/dist/components/chip/stories/chip-link.stories.d.ts.map +0 -1
  329. package/dist/components/chip/stories/chip-removable.stories.d.ts +0 -21
  330. package/dist/components/chip/stories/chip-removable.stories.d.ts.map +0 -1
  331. package/dist/components/chip/stories/chip-selectable.stories.d.ts +0 -35
  332. package/dist/components/chip/stories/chip-selectable.stories.d.ts.map +0 -1
  333. package/dist/components/chip/test/chip-group.test.d.ts +0 -4
  334. package/dist/components/chip/test/chip-group.test.d.ts.map +0 -1
  335. package/dist/components/chip/test/chip-link.test.d.ts +0 -2
  336. package/dist/components/chip/test/chip-link.test.d.ts.map +0 -1
  337. package/dist/components/chip/test/chip-removable.test.d.ts +0 -2
  338. package/dist/components/chip/test/chip-removable.test.d.ts.map +0 -1
  339. package/dist/components/chip/test/chip-selectable.test.d.ts +0 -2
  340. package/dist/components/chip/test/chip-selectable.test.d.ts.map +0 -1
  341. package/dist/components/chip/test/chip.test.d.ts +0 -2
  342. package/dist/components/chip/test/chip.test.d.ts.map +0 -1
  343. package/dist/components/dialog/Dialog.d.ts +0 -29
  344. package/dist/components/dialog/Dialog.d.ts.map +0 -1
  345. package/dist/components/dialog/leu-dialog.d.ts +0 -8
  346. package/dist/components/dialog/leu-dialog.d.ts.map +0 -1
  347. package/dist/components/dialog/stories/dialog.stories.d.ts +0 -19
  348. package/dist/components/dialog/stories/dialog.stories.d.ts.map +0 -1
  349. package/dist/components/dialog/test/dialog.test.d.ts +0 -2
  350. package/dist/components/dialog/test/dialog.test.d.ts.map +0 -1
  351. package/dist/components/dropdown/Dropdown.d.ts +0 -40
  352. package/dist/components/dropdown/Dropdown.d.ts.map +0 -1
  353. package/dist/components/dropdown/leu-dropdown.d.ts +0 -8
  354. package/dist/components/dropdown/leu-dropdown.d.ts.map +0 -1
  355. package/dist/components/dropdown/stories/dropdown.stories.d.ts +0 -25
  356. package/dist/components/dropdown/stories/dropdown.stories.d.ts.map +0 -1
  357. package/dist/components/dropdown/test/dropdown.test.d.ts +0 -2
  358. package/dist/components/dropdown/test/dropdown.test.d.ts.map +0 -1
  359. package/dist/components/file-input/FileInput.d.ts +0 -62
  360. package/dist/components/file-input/FileInput.d.ts.map +0 -1
  361. package/dist/components/file-input/leu-file-input.d.ts +0 -8
  362. package/dist/components/file-input/leu-file-input.d.ts.map +0 -1
  363. package/dist/components/file-input/stories/file-input.stories.d.ts +0 -34
  364. package/dist/components/file-input/stories/file-input.stories.d.ts.map +0 -1
  365. package/dist/components/file-input/test/file-input.test.d.ts +0 -2
  366. package/dist/components/file-input/test/file-input.test.d.ts.map +0 -1
  367. package/dist/components/icon/Icon.d.ts +0 -20
  368. package/dist/components/icon/Icon.d.ts.map +0 -1
  369. package/dist/components/icon/leu-icon.d.ts +0 -8
  370. package/dist/components/icon/leu-icon.d.ts.map +0 -1
  371. package/dist/components/icon/paths.d.ts +0 -127
  372. package/dist/components/icon/paths.d.ts.map +0 -1
  373. package/dist/components/icon/stories/icon.stories.d.ts +0 -32
  374. package/dist/components/icon/stories/icon.stories.d.ts.map +0 -1
  375. package/dist/components/icon/test/icon.test.d.ts +0 -2
  376. package/dist/components/icon/test/icon.test.d.ts.map +0 -1
  377. package/dist/components/input/Input.d.ts +0 -163
  378. package/dist/components/input/Input.d.ts.map +0 -1
  379. package/dist/components/input/leu-input.d.ts +0 -8
  380. package/dist/components/input/leu-input.d.ts.map +0 -1
  381. package/dist/components/input/stories/input.stories.d.ts +0 -35
  382. package/dist/components/input/stories/input.stories.d.ts.map +0 -1
  383. package/dist/components/input/test/input.test.d.ts +0 -2
  384. package/dist/components/input/test/input.test.d.ts.map +0 -1
  385. package/dist/components/menu/Menu.d.ts +0 -39
  386. package/dist/components/menu/Menu.d.ts.map +0 -1
  387. package/dist/components/menu/MenuItem.d.ts +0 -61
  388. package/dist/components/menu/MenuItem.d.ts.map +0 -1
  389. package/dist/components/menu/leu-menu-item.d.ts +0 -8
  390. package/dist/components/menu/leu-menu-item.d.ts.map +0 -1
  391. package/dist/components/menu/leu-menu.d.ts +0 -8
  392. package/dist/components/menu/leu-menu.d.ts.map +0 -1
  393. package/dist/components/menu/stories/menu-item.stories.d.ts +0 -24
  394. package/dist/components/menu/stories/menu-item.stories.d.ts.map +0 -1
  395. package/dist/components/menu/stories/menu.stories.d.ts +0 -26
  396. package/dist/components/menu/stories/menu.stories.d.ts.map +0 -1
  397. package/dist/components/menu/test/menu-item.test.d.ts +0 -3
  398. package/dist/components/menu/test/menu-item.test.d.ts.map +0 -1
  399. package/dist/components/menu/test/menu.test.d.ts +0 -4
  400. package/dist/components/menu/test/menu.test.d.ts.map +0 -1
  401. package/dist/components/message/Message.d.ts +0 -59
  402. package/dist/components/message/Message.d.ts.map +0 -1
  403. package/dist/components/message/leu-message.d.ts +0 -8
  404. package/dist/components/message/leu-message.d.ts.map +0 -1
  405. package/dist/components/message/stories/message.stories.d.ts +0 -179
  406. package/dist/components/message/stories/message.stories.d.ts.map +0 -1
  407. package/dist/components/message/test/message.test.d.ts +0 -2
  408. package/dist/components/message/test/message.test.d.ts.map +0 -1
  409. package/dist/components/pagination/Pagination.d.ts +0 -72
  410. package/dist/components/pagination/Pagination.d.ts.map +0 -1
  411. package/dist/components/pagination/leu-pagination.d.ts +0 -8
  412. package/dist/components/pagination/leu-pagination.d.ts.map +0 -1
  413. package/dist/components/pagination/stories/pagination.stories.d.ts +0 -25
  414. package/dist/components/pagination/stories/pagination.stories.d.ts.map +0 -1
  415. package/dist/components/pagination/test/pagination.test.d.ts +0 -2
  416. package/dist/components/pagination/test/pagination.test.d.ts.map +0 -1
  417. package/dist/components/placeholder/Placeholder.d.ts +0 -23
  418. package/dist/components/placeholder/Placeholder.d.ts.map +0 -1
  419. package/dist/components/placeholder/leu-placeholder.d.ts +0 -8
  420. package/dist/components/placeholder/leu-placeholder.d.ts.map +0 -1
  421. package/dist/components/placeholder/stories/placeholder.stories.d.ts +0 -27
  422. package/dist/components/placeholder/stories/placeholder.stories.d.ts.map +0 -1
  423. package/dist/components/placeholder/test/placeholder.test.d.ts +0 -2
  424. package/dist/components/placeholder/test/placeholder.test.d.ts.map +0 -1
  425. package/dist/components/popup/Popup.d.ts +0 -57
  426. package/dist/components/popup/Popup.d.ts.map +0 -1
  427. package/dist/components/popup/leu-popup.d.ts +0 -8
  428. package/dist/components/popup/leu-popup.d.ts.map +0 -1
  429. package/dist/components/popup/stories/popup.stories.d.ts +0 -28
  430. package/dist/components/popup/stories/popup.stories.d.ts.map +0 -1
  431. package/dist/components/popup/test/popup.test.d.ts +0 -2
  432. package/dist/components/popup/test/popup.test.d.ts.map +0 -1
  433. package/dist/components/progress-bar/ProgressBar.d.ts +0 -25
  434. package/dist/components/progress-bar/ProgressBar.d.ts.map +0 -1
  435. package/dist/components/progress-bar/leu-progress-bar.d.ts +0 -8
  436. package/dist/components/progress-bar/leu-progress-bar.d.ts.map +0 -1
  437. package/dist/components/progress-bar/stories/progress-bar.stories.d.ts +0 -48
  438. package/dist/components/progress-bar/stories/progress-bar.stories.d.ts.map +0 -1
  439. package/dist/components/progress-bar/test/progress-bar.test.d.ts +0 -2
  440. package/dist/components/progress-bar/test/progress-bar.test.d.ts.map +0 -1
  441. package/dist/components/radio/Radio.d.ts +0 -24
  442. package/dist/components/radio/Radio.d.ts.map +0 -1
  443. package/dist/components/radio/RadioGroup.d.ts +0 -39
  444. package/dist/components/radio/RadioGroup.d.ts.map +0 -1
  445. package/dist/components/radio/leu-radio-group.d.ts +0 -8
  446. package/dist/components/radio/leu-radio-group.d.ts.map +0 -1
  447. package/dist/components/radio/leu-radio.d.ts +0 -8
  448. package/dist/components/radio/leu-radio.d.ts.map +0 -1
  449. package/dist/components/radio/stories/radio-group.stories.d.ts +0 -29
  450. package/dist/components/radio/stories/radio-group.stories.d.ts.map +0 -1
  451. package/dist/components/radio/stories/radio.stories.d.ts +0 -22
  452. package/dist/components/radio/stories/radio.stories.d.ts.map +0 -1
  453. package/dist/components/radio/test/radio-group.test.d.ts +0 -3
  454. package/dist/components/radio/test/radio-group.test.d.ts.map +0 -1
  455. package/dist/components/radio/test/radio.test.d.ts +0 -2
  456. package/dist/components/radio/test/radio.test.d.ts.map +0 -1
  457. package/dist/components/range/Range.d.ts +0 -116
  458. package/dist/components/range/Range.d.ts.map +0 -1
  459. package/dist/components/range/leu-range.d.ts +0 -8
  460. package/dist/components/range/leu-range.d.ts.map +0 -1
  461. package/dist/components/range/stories/range.stories.d.ts +0 -231
  462. package/dist/components/range/stories/range.stories.d.ts.map +0 -1
  463. package/dist/components/range/test/range.test.d.ts +0 -2
  464. package/dist/components/range/test/range.test.d.ts.map +0 -1
  465. package/dist/components/scroll-top/ScrollTop.d.ts +0 -23
  466. package/dist/components/scroll-top/ScrollTop.d.ts.map +0 -1
  467. package/dist/components/scroll-top/leu-scroll-top.d.ts +0 -8
  468. package/dist/components/scroll-top/leu-scroll-top.d.ts.map +0 -1
  469. package/dist/components/scroll-top/stories/scroll-top.stories.d.ts +0 -8
  470. package/dist/components/scroll-top/stories/scroll-top.stories.d.ts.map +0 -1
  471. package/dist/components/scroll-top/test/scroll-top.test.d.ts +0 -2
  472. package/dist/components/scroll-top/test/scroll-top.test.d.ts.map +0 -1
  473. package/dist/components/select/Select.d.ts +0 -145
  474. package/dist/components/select/Select.d.ts.map +0 -1
  475. package/dist/components/select/leu-select.d.ts +0 -8
  476. package/dist/components/select/leu-select.d.ts.map +0 -1
  477. package/dist/components/select/stories/select.stories.d.ts +0 -23
  478. package/dist/components/select/stories/select.stories.d.ts.map +0 -1
  479. package/dist/components/select/test/fixtures.d.ts +0 -2
  480. package/dist/components/select/test/fixtures.d.ts.map +0 -1
  481. package/dist/components/select/test/select.test.d.ts +0 -3
  482. package/dist/components/select/test/select.test.d.ts.map +0 -1
  483. package/dist/components/spinner/Spinner.d.ts +0 -10
  484. package/dist/components/spinner/Spinner.d.ts.map +0 -1
  485. package/dist/components/spinner/leu-spinner.d.ts +0 -8
  486. package/dist/components/spinner/leu-spinner.d.ts.map +0 -1
  487. package/dist/components/spinner/stories/spinner.stories.d.ts +0 -16
  488. package/dist/components/spinner/stories/spinner.stories.d.ts.map +0 -1
  489. package/dist/components/spinner/test/spinner.test.d.ts +0 -2
  490. package/dist/components/spinner/test/spinner.test.d.ts.map +0 -1
  491. package/dist/components/table/Table.d.ts +0 -65
  492. package/dist/components/table/Table.d.ts.map +0 -1
  493. package/dist/components/table/leu-table.d.ts +0 -8
  494. package/dist/components/table/leu-table.d.ts.map +0 -1
  495. package/dist/components/table/stories/table.stories.d.ts +0 -15
  496. package/dist/components/table/stories/table.stories.d.ts.map +0 -1
  497. package/dist/components/table/test/table.test.d.ts +0 -2
  498. package/dist/components/table/test/table.test.d.ts.map +0 -1
  499. package/dist/components/tag/Tag.d.ts +0 -13
  500. package/dist/components/tag/Tag.d.ts.map +0 -1
  501. package/dist/components/tag/leu-tag.d.ts +0 -8
  502. package/dist/components/tag/leu-tag.d.ts.map +0 -1
  503. package/dist/components/tag/stories/tag.stories.d.ts +0 -136
  504. package/dist/components/tag/stories/tag.stories.d.ts.map +0 -1
  505. package/dist/components/tag/test/tag.test.d.ts +0 -2
  506. package/dist/components/tag/test/tag.test.d.ts.map +0 -1
  507. package/dist/components/visually-hidden/VisuallyHidden.d.ts +0 -9
  508. package/dist/components/visually-hidden/VisuallyHidden.d.ts.map +0 -1
  509. package/dist/components/visually-hidden/leu-visually-hidden.d.ts +0 -8
  510. package/dist/components/visually-hidden/leu-visually-hidden.d.ts.map +0 -1
  511. package/dist/components/visually-hidden/stories/visually-hidden.stories.d.ts +0 -13
  512. package/dist/components/visually-hidden/stories/visually-hidden.stories.d.ts.map +0 -1
  513. package/dist/components/visually-hidden/test/visually-hidden.test.d.ts +0 -2
  514. package/dist/components/visually-hidden/test/visually-hidden.test.d.ts.map +0 -1
  515. package/dist/hasSlotController-Bm2tipvG.js +0 -53
  516. package/dist/hasSlotController.d-emXwVXWF.d.ts +0 -23
  517. package/dist/index.d.ts.map +0 -1
  518. package/dist/lib/LeuElement.d.ts +0 -8
  519. package/dist/lib/LeuElement.d.ts.map +0 -1
  520. package/dist/lib/a11y.d.ts +0 -11
  521. package/dist/lib/a11y.d.ts.map +0 -1
  522. package/dist/lib/hasSlotController.d.ts +0 -20
  523. package/dist/lib/hasSlotController.d.ts.map +0 -1
  524. package/dist/lib/styleMap.d.ts +0 -61
  525. package/dist/lib/styleMap.d.ts.map +0 -1
  526. package/dist/lib/utils.d.ts +0 -23
  527. package/dist/lib/utils.d.ts.map +0 -1
  528. package/dist/styles/style.stories.d.ts +0 -6
  529. package/dist/styles/style.stories.d.ts.map +0 -1
  530. package/dist/utils-DBGsNSJW.js +0 -33
  531. package/rollup.config.js +0 -94
  532. package/web-dev-server.config.mjs +0 -30
@@ -49,27 +49,30 @@ function Template(args) {
49
49
  } = args
50
50
 
51
51
  return html`
52
- <leu-input
53
- value=${ifDefined(value)}
54
- error=${ifDefined(error)}
55
- pattern=${ifDefined(pattern)}
56
- prefix=${ifDefined(prefix)}
57
- suffix=${ifDefined(suffix)}
58
- size=${ifDefined(size)}
59
- icon=${ifDefined(icon)}
60
- type=${ifDefined(type)}
61
- min=${ifDefined(min)}
62
- max=${ifDefined(max)}
63
- minlength=${ifDefined(minlength)}
64
- maxlength=${ifDefined(maxlength)}
65
- step=${ifDefined(step)}
66
- label=${label}
67
- ?disabled=${disabled}
68
- ?required=${required}
69
- ?clearable=${clearable}
70
- ?novalidate=${novalidate}
71
- >
72
- </leu-input>
52
+ <form>
53
+ <leu-input
54
+ name="input-field"
55
+ value=${ifDefined(value)}
56
+ error=${ifDefined(error)}
57
+ pattern=${ifDefined(pattern)}
58
+ prefix=${ifDefined(prefix)}
59
+ suffix=${ifDefined(suffix)}
60
+ size=${ifDefined(size)}
61
+ icon=${ifDefined(icon)}
62
+ type=${ifDefined(type)}
63
+ min=${ifDefined(min)}
64
+ max=${ifDefined(max)}
65
+ minlength=${ifDefined(minlength)}
66
+ maxlength=${ifDefined(maxlength)}
67
+ step=${ifDefined(step)}
68
+ label=${label}
69
+ ?disabled=${disabled}
70
+ ?required=${required}
71
+ ?clearable=${clearable}
72
+ ?novalidate=${novalidate}
73
+ >
74
+ </leu-input>
75
+ </form>
73
76
  `
74
77
  }
75
78
 
@@ -5,7 +5,7 @@ import { LeuElement } from "../../lib/LeuElement.js"
5
5
 
6
6
  import { LeuMenuItem } from "./MenuItem.js"
7
7
 
8
- import styles from "./menu.css"
8
+ import styles from "./menu.css?inline"
9
9
 
10
10
  /**
11
11
  * @typedef {'single' | 'multiple' | 'none'} SelectsType
@@ -64,7 +64,7 @@ export class LeuMenu extends LeuElement {
64
64
 
65
65
  if (menuItemRole) {
66
66
  this.getMenuItems().forEach((menuItem) => {
67
- menuItem.componentRole = menuItemRole // eslint-disable-line no-param-reassign
67
+ menuItem.componentRole = menuItemRole
68
68
  })
69
69
  }
70
70
  }
@@ -114,9 +114,9 @@ export class LeuMenu extends LeuElement {
114
114
  menuItems.forEach((menuItem, i) => {
115
115
  if (i === currentItemIndex) {
116
116
  currentItem = menuItem
117
- menuItem.tabbable = true // eslint-disable-line no-param-reassign
117
+ menuItem.tabbable = true
118
118
  } else {
119
- menuItem.tabbable = false // eslint-disable-line no-param-reassign
119
+ menuItem.tabbable = false
120
120
  }
121
121
  })
122
122
 
@@ -5,7 +5,7 @@ import { property } from "lit/decorators.js"
5
5
  import { LeuElement } from "../../lib/LeuElement.js"
6
6
  import { LeuIcon } from "../icon/Icon.js"
7
7
 
8
- import styles from "./menu-item.css"
8
+ import styles from "./menu-item.css?inline"
9
9
 
10
10
  type MenuItemRole =
11
11
  | "menuitem"
@@ -23,7 +23,6 @@ export default {
23
23
  },
24
24
  }
25
25
 
26
- /* eslint-disable no-nested-ternary */
27
26
  function Template(args) {
28
27
  return html`
29
28
  <leu-menu-item
@@ -46,7 +45,6 @@ function Template(args) {
46
45
  </leu-menu-item>
47
46
  `
48
47
  }
49
- /* eslint-enable no-nested-ternary */
50
48
 
51
49
  export const Regular = Template.bind({})
52
50
 
@@ -4,7 +4,7 @@ import { classMap } from "lit/directives/class-map.js"
4
4
 
5
5
  import { LeuElement } from "../../lib/LeuElement.js"
6
6
 
7
- import styles from "./message.css"
7
+ import styles from "./message.css?inline"
8
8
  import { LeuIcon } from "../icon/Icon.js"
9
9
  import { HasSlotController } from "../../lib/hasSlotController.js"
10
10
 
@@ -1,6 +1,6 @@
1
- import { Meta, StoryObj } from "@storybook/web-components"
1
+ import { Meta, StoryObj } from "@storybook/web-components-vite"
2
2
  import { html, TemplateResult } from "lit"
3
- import { action } from "@storybook/addon-actions"
3
+ import { action } from "storybook/actions"
4
4
 
5
5
  import "../leu-message.js"
6
6
  import "../../button/leu-button.js"
@@ -7,7 +7,7 @@ import { LeuButton } from "../button/Button.js"
7
7
  import { LeuVisuallyHidden } from "../visually-hidden/VisuallyHidden.js"
8
8
  import { LeuIcon } from "../icon/Icon.js"
9
9
 
10
- import styles from "./pagination.css"
10
+ import styles from "./pagination.css?inline"
11
11
 
12
12
  const MIN_PAGE = 1
13
13
 
@@ -2,9 +2,9 @@ import { html } from "lit"
2
2
  import { ifDefined } from "lit/directives/if-defined.js"
3
3
 
4
4
  // https://stackoverflow.com/questions/72566428/storybook-angular-how-to-dynamically-update-args-from-the-template
5
- import { UPDATE_STORY_ARGS } from "@storybook/core-events" // eslint-disable-line
6
- import { action, HandlerFunction } from "@storybook/addon-actions"
7
- import { Meta, StoryObj } from "@storybook/web-components"
5
+ import { UPDATE_STORY_ARGS } from "storybook/internal/core-events"
6
+ import { action, HandlerFunction } from "storybook/actions"
7
+ import { Meta, StoryObj } from "@storybook/web-components-vite"
8
8
 
9
9
  import "../leu-pagination.js"
10
10
  import { LeuPagination } from "../Pagination.js"
@@ -188,7 +188,7 @@ describe("LeuPagination", () => {
188
188
  const el = await defaultFixture({
189
189
  numOfItems: 98,
190
190
  itemsPerPage: 7,
191
- page: 14,
191
+ defaultPage: 7,
192
192
  })
193
193
 
194
194
  const eventSpy = spy()
@@ -2,7 +2,7 @@ import { html } from "lit"
2
2
 
3
3
  import { LeuElement } from "../../lib/LeuElement.js"
4
4
 
5
- import styles from "./placeholder.css"
5
+ import styles from "./placeholder.css?inline"
6
6
 
7
7
  /**
8
8
  * @summary * A placeholder to display when no content is available.
@@ -1,4 +1,4 @@
1
- import { Meta, StoryObj } from "@storybook/web-components"
1
+ import { Meta, StoryObj } from "@storybook/web-components-vite"
2
2
  import { html } from "lit"
3
3
 
4
4
  import "../../button/leu-button.js"
@@ -12,7 +12,7 @@ import {
12
12
 
13
13
  import { LeuElement } from "../../lib/LeuElement.js"
14
14
 
15
- import styles from "./popup.css"
15
+ import styles from "./popup.css?inline"
16
16
 
17
17
  export interface VirtualElement {
18
18
  getBoundingClientRect: () => DOMRect
@@ -4,7 +4,7 @@ import { property } from "lit/decorators.js"
4
4
 
5
5
  import { LeuElement } from "../../lib/LeuElement.js"
6
6
 
7
- import styles from "./progress-bar.css"
7
+ import styles from "./progress-bar.css?inline"
8
8
 
9
9
  /**
10
10
  * An indicator showing the completion progress of a task
@@ -1,4 +1,4 @@
1
- import { Meta, StoryObj } from "@storybook/web-components"
1
+ import { Meta, StoryObj } from "@storybook/web-components-vite"
2
2
  import { html } from "lit"
3
3
  import { ifDefined } from "lit/directives/if-defined.js"
4
4
 
@@ -3,7 +3,7 @@ import { property } from "lit/decorators.js"
3
3
 
4
4
  import { LeuElement } from "../../lib/LeuElement.js"
5
5
 
6
- import styles from "./radio.css"
6
+ import styles from "./radio.css?inline"
7
7
 
8
8
  /**
9
9
  * @tagname leu-radio
@@ -4,7 +4,7 @@ import { property } from "lit/decorators.js"
4
4
 
5
5
  import { LeuElement } from "../../lib/LeuElement.js"
6
6
 
7
- import styles from "./radio-group.css"
7
+ import styles from "./radio-group.css?inline"
8
8
  import { LeuRadio } from "./Radio.js"
9
9
 
10
10
  /**
@@ -106,13 +106,13 @@ export class LeuRadioGroup extends LeuElement {
106
106
 
107
107
  private handleInput = (e: InputEvent & { target: LeuRadio }) => {
108
108
  this.items.forEach((item) => {
109
- item.checked = item === e.target // eslint-disable-line no-param-reassign
109
+ item.checked = item === e.target
110
110
  })
111
111
  }
112
112
 
113
113
  private selectItem(selectingItem: LeuRadio) {
114
114
  this.items.forEach((item) => {
115
- item.checked = item === selectingItem // eslint-disable-line no-param-reassign
115
+ item.checked = item === selectingItem
116
116
  })
117
117
  }
118
118
 
@@ -138,9 +138,9 @@ export class LeuRadioGroup extends LeuElement {
138
138
  private setTabIndex() {
139
139
  this.items.forEach((item, index) => {
140
140
  if (index === this.currentIndex) {
141
- item.tabIndex = 0 // eslint-disable-line no-param-reassign
141
+ item.tabIndex = 0
142
142
  } else {
143
- item.tabIndex = -1 // eslint-disable-line no-param-reassign
143
+ item.tabIndex = -1
144
144
  }
145
145
  })
146
146
  }
@@ -2,7 +2,7 @@ import { html, nothing, PropertyValues } from "lit"
2
2
  import { property, query } from "lit/decorators.js"
3
3
  import { ifDefined } from "lit/directives/if-defined.js"
4
4
 
5
- import styles from "./range.css"
5
+ import styles from "./range.css?inline"
6
6
  import { LeuElement } from "../../lib/LeuElement.js"
7
7
  import { clamp, isNumber } from "../../lib/utils.js"
8
8
 
@@ -1,5 +1,5 @@
1
- import { Meta, StoryObj } from "@storybook/web-components"
2
- import { action } from "@storybook/addon-actions"
1
+ import { Meta, StoryObj } from "@storybook/web-components-vite"
2
+ import { action } from "storybook/actions"
3
3
  import { html } from "lit"
4
4
  import { ifDefined } from "lit/directives/if-defined.js"
5
5
 
@@ -8,7 +8,7 @@ import { LeuIcon } from "../icon/Icon.js"
8
8
 
9
9
  import { throttle } from "../../lib/utils.js"
10
10
 
11
- import styles from "./scroll-top.css"
11
+ import styles from "./scroll-top.css?inline"
12
12
 
13
13
  /**
14
14
  * @tagname leu-scroll-top
@@ -13,7 +13,7 @@ import { LeuIcon } from "../icon/Icon.js"
13
13
  import { LeuInput } from "../input/Input.js"
14
14
  import { LeuPopup } from "../popup/Popup.js"
15
15
 
16
- import styles from "./select.css"
16
+ import styles from "./select.css?inline"
17
17
 
18
18
  /**
19
19
  * @tagname leu-select
@@ -174,7 +174,6 @@ export class LeuSelect extends LeuElement {
174
174
  this._displayValue = ""
175
175
  }
176
176
 
177
- /* eslint-disable no-param-reassign */
178
177
  menuItems.forEach((menuItem) => {
179
178
  if (changed.multiple) {
180
179
  menuItem.multipleSelection = this.multiple
@@ -198,7 +197,6 @@ export class LeuSelect extends LeuElement {
198
197
  }
199
198
  }
200
199
  })
201
- /* eslint-enable no-param-reassign */
202
200
 
203
201
  if (changed.optionFilter) {
204
202
  this._hasFilterResults = hasFilterResults
@@ -455,7 +453,7 @@ export class LeuSelect extends LeuElement {
455
453
  * We use the click event listener with the event delegation pattern
456
454
  * so this is not a violation of the rule.
457
455
  */
458
- /* eslint-disable lit-a11y/click-events-have-key-events */
456
+
459
457
  return html`<div
460
458
  class=${classMap(selectClasses)}
461
459
  @keydown=${this._handleKeyDown}
@@ -495,6 +493,5 @@ export class LeuSelect extends LeuElement {
495
493
  </leu-popup>
496
494
  </div>
497
495
  <input type="hidden" name=${this.name} .value=${this.value.join(",")} />`
498
- /* eslint-enable lit-a11y/click-events-have-key-events */
499
496
  }
500
497
  }
@@ -2,7 +2,7 @@ import { html } from "lit"
2
2
 
3
3
  import { LeuElement } from "../../lib/LeuElement.js"
4
4
 
5
- import styles from "./spinner.css"
5
+ import styles from "./spinner.css?inline"
6
6
 
7
7
  /**
8
8
  * @tagname leu-spinner
@@ -7,7 +7,7 @@ import { styleMap } from "../../lib/styleMap.js"
7
7
  import { LeuIcon } from "../icon/Icon.js"
8
8
  import { LeuPagination } from "../pagination/Pagination.js"
9
9
 
10
- import styles from "./table.css"
10
+ import styles from "./table.css?inline"
11
11
 
12
12
  /**
13
13
  * @tagname leu-table
@@ -3,7 +3,7 @@ import { property } from "lit/decorators.js"
3
3
 
4
4
  import { LeuElement } from "../../lib/LeuElement.js"
5
5
 
6
- import styles from "./tag.css"
6
+ import styles from "./tag.css?inline"
7
7
 
8
8
  /**
9
9
  * @tagname leu-tag
@@ -1,4 +1,4 @@
1
- import { Meta, StoryObj } from "@storybook/web-components"
1
+ import { Meta, StoryObj } from "@storybook/web-components-vite"
2
2
  import { html } from "lit"
3
3
  import { ifDefined } from "lit/directives/if-defined.js"
4
4
 
@@ -2,7 +2,7 @@ import { html } from "lit"
2
2
 
3
3
  import { LeuElement } from "../../lib/LeuElement.js"
4
4
 
5
- import styles from "./visually-hidden.css"
5
+ import styles from "./visually-hidden.css?inline"
6
6
 
7
7
  /**
8
8
  * @tagname leu-visually-hidden
@@ -1,4 +1,4 @@
1
- import { Meta, Markdown } from "@storybook/blocks"
1
+ import { Meta, Markdown } from "@storybook/addon-docs/blocks"
2
2
 
3
3
  <Meta title="Introduction/Contributing" />
4
4
 
@@ -1,4 +1,4 @@
1
- import { Meta, Markdown } from "@storybook/blocks"
1
+ import { Meta, Markdown } from "@storybook/addon-docs/blocks"
2
2
 
3
3
  <Meta title="Introduction/Installation" />
4
4
 
@@ -1,4 +1,4 @@
1
- import { Meta, Markdown, Canvas } from "@storybook/blocks"
1
+ import { Meta, Markdown, Canvas } from "@storybook/addon-docs/blocks"
2
2
  import React from "react"
3
3
 
4
4
  import * as GridStories from "../styles/style.stories"
@@ -1,4 +1,4 @@
1
- import { Meta, Markdown } from "@storybook/blocks"
1
+ import { Meta, Markdown } from "@storybook/addon-docs/blocks"
2
2
 
3
3
  <Meta title="Introduction/Usage" />
4
4
 
package/src/global.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- declare module "*.css" {
1
+ declare module "*.css?inline" {
2
2
  import { CSSResult } from "lit"
3
3
 
4
4
  const css: CSSResult
@@ -1,5 +1,5 @@
1
1
  import { CSSResultGroup, LitElement } from "lit"
2
- import commonStyles from "../styles/common-styles.css"
2
+ import commonStyles from "../styles/common-styles.css?inline"
3
3
 
4
4
  export class LeuElement extends LitElement {
5
5
  static version = __LEU_VERSION__
@@ -0,0 +1,115 @@
1
+ /* eslint-disable max-classes-per-file */
2
+ import { property } from "lit/decorators.js"
3
+ import { LeuElement } from "../LeuElement.js"
4
+
5
+ /* eslint-disable-next-line @typescript-eslint/no-explicit-any */
6
+ type AbstractConstructor<T = object> = abstract new (...args: any[]) => T
7
+
8
+ // @todo define sensible eslint settings for classes
9
+ /* eslint-disable max-classes-per-file */
10
+ export declare abstract class FormAssociatedMixinType {
11
+ static formAssociated: boolean
12
+
13
+ protected readonly internals: ElementInternals
14
+
15
+ name: string | null
16
+
17
+ disabled: boolean
18
+
19
+ required: boolean
20
+
21
+ protected hasInteracted: boolean
22
+
23
+ form: HTMLFormElement | null
24
+
25
+ validity: ValidityState
26
+
27
+ validationMessage: string
28
+
29
+ willValidate: boolean
30
+
31
+ checkValidity(): boolean
32
+
33
+ reportValidity(): boolean
34
+
35
+ resetValidity(): void
36
+
37
+ formDisabledCallback(isDisabled: boolean): void
38
+
39
+ formResetCallback(): void
40
+
41
+ formStateRestoreCallback(_state: string | FormData | null): void
42
+
43
+ protected abstract setFormValue(): void
44
+ }
45
+
46
+ export const FormAssociatedMixin = <T extends AbstractConstructor<LeuElement>>(
47
+ superClass: T,
48
+ ) => {
49
+ abstract class FormAssociatedMixinClass extends superClass {
50
+ static formAssociated = true
51
+
52
+ protected readonly internals: ElementInternals = this.attachInternals()
53
+
54
+ get form() {
55
+ return this.internals.form
56
+ }
57
+
58
+ /** The name of the form control. Is submitted with the `value` as key-value pair. */
59
+ @property({ reflect: true })
60
+ name: string | null = null
61
+
62
+ /** Disables the form control. */
63
+ @property({ type: Boolean })
64
+ disabled: boolean = false
65
+
66
+ // Treat every form control that doesn't implement its own `required` property as "not required"
67
+ required: boolean = false
68
+
69
+ /** Whether the user has interacted with the form control. */
70
+ @property({ state: true, attribute: false })
71
+ protected hasInteracted: boolean = false
72
+
73
+ get validity() {
74
+ return this.internals.validity
75
+ }
76
+
77
+ get validationMessage() {
78
+ return this.internals.validationMessage
79
+ }
80
+
81
+ get willValidate() {
82
+ return this.internals.willValidate
83
+ }
84
+
85
+ checkValidity() {
86
+ return this.internals.checkValidity()
87
+ }
88
+
89
+ reportValidity() {
90
+ return this.internals.reportValidity()
91
+ }
92
+
93
+ resetValidity() {
94
+ this.internals.setValidity({})
95
+ }
96
+
97
+ public formDisabledCallback(isDisabled: boolean) {
98
+ this.disabled = isDisabled
99
+ }
100
+
101
+ public formResetCallback() {
102
+ this.hasInteracted = false
103
+ this.resetValidity()
104
+ }
105
+
106
+ public formStateRestoreCallback(_state: string | FormData | null) {
107
+ this.resetValidity()
108
+ }
109
+
110
+ protected abstract setFormValue(): void
111
+ }
112
+
113
+ return FormAssociatedMixinClass as unknown as AbstractConstructor<FormAssociatedMixinType> &
114
+ T
115
+ }
@@ -1,4 +1,4 @@
1
- /* eslint-disable prefer-template,no-param-reassign,no-restricted-syntax,guard-for-in */
1
+ /* eslint-disable no-restricted-syntax */
2
2
 
3
3
  /**
4
4
  * The original lit styleMap directive is not compatible with a strict style-src content security policy.
@@ -0,0 +1,35 @@
1
+ import path from "path"
2
+ import { defineConfig } from "tsdown"
3
+ import { globSync } from "glob"
4
+ import postcssLit from "rollup-plugin-postcss-lit"
5
+
6
+ export const commonConfig = {
7
+ plugins: [postcssLit()],
8
+ define: {
9
+ __LEU_VERSION__: JSON.stringify(process.env.npm_package_version),
10
+ },
11
+ }
12
+
13
+ export default defineConfig({
14
+ entry: {
15
+ index: "src/index.ts",
16
+ ...Object.fromEntries(
17
+ globSync("src/components/*/{[A-Z],leu-}*.ts", { nocase: false }).map(
18
+ (file) => [path.basename(file, path.extname(file)), file],
19
+ ),
20
+ ),
21
+ },
22
+ format: "esm",
23
+ outDir: "dist",
24
+ dts: true,
25
+ clean: true,
26
+ platform: "browser",
27
+ deps: {
28
+ skipNodeModulesBundle: true,
29
+ },
30
+ define: commonConfig.define,
31
+ css: {
32
+ transformer: "postcss",
33
+ },
34
+ plugins: commonConfig.plugins,
35
+ })
@@ -1,7 +1,25 @@
1
1
  import { playwrightLauncher } from "@web/test-runner-playwright"
2
2
  import { esbuildPlugin } from "@web/dev-server-esbuild"
3
+ import { fromRollup } from "@web/dev-server-rollup"
3
4
  import { fileURLToPath } from "url"
4
- import { plugins as wdsPlugins } from "./web-dev-server.config.mjs"
5
+ import rollupReplace from "@rollup/plugin-replace"
6
+ import rollupPostcss from "rollup-plugin-postcss"
7
+ import rollupPostcssLit from "rollup-plugin-postcss-lit"
8
+
9
+ const replace = fromRollup(rollupReplace)
10
+ const postcss = fromRollup(rollupPostcss)
11
+ const postcssLit = fromRollup(rollupPostcssLit)
12
+
13
+ export const plugins = [
14
+ replace({
15
+ preventAssignment: true,
16
+ values: {
17
+ __LEU_VERSION__: JSON.stringify(process.env.npm_package_version),
18
+ },
19
+ }),
20
+ postcss({ inject: false }),
21
+ postcssLit(),
22
+ ]
5
23
 
6
24
  const filteredLogs = ["Couldn't load preload assets", "Lit is in dev mode"]
7
25
 
@@ -14,7 +32,7 @@ export default /** @type {import("@web/test-runner").TestRunnerConfig} */ ({
14
32
  target: "auto",
15
33
  tsconfig: fileURLToPath(new URL("./tsconfig.json", import.meta.url)),
16
34
  }),
17
- ...wdsPlugins,
35
+ ...plugins,
18
36
  ],
19
37
  mimeTypes: {
20
38
  "src/components/**/*.css": "js",