@skf-design-system/ui-components 1.0.2-beta.0 → 1.0.2-beta.10

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 (297) hide show
  1. package/README.md +37 -9
  2. package/dist/components/accordion/accordion-item.component.d.ts +36 -0
  3. package/dist/components/accordion/accordion-item.component.js +98 -0
  4. package/dist/components/accordion/accordion-item.d.ts +3 -3
  5. package/dist/components/accordion/accordion-item.js +4 -5
  6. package/dist/components/accordion/accordion-item.styles.js +77 -0
  7. package/dist/components/accordion/accordion.component.d.ts +6 -10
  8. package/dist/components/accordion/accordion.component.js +9 -10
  9. package/dist/components/accordion/accordion.d.ts +0 -1
  10. package/dist/components/accordion/accordion.js +0 -2
  11. package/dist/components/alert/alert.component.d.ts +12 -10
  12. package/dist/components/alert/alert.component.js +59 -51
  13. package/dist/components/alert/alert.styles.js +50 -51
  14. package/dist/components/breadcrumb/breadcrumb-item.component.js +59 -0
  15. package/dist/components/{breadcrumb-item → breadcrumb}/breadcrumb-item.d.ts +2 -2
  16. package/dist/components/breadcrumb/breadcrumb-item.js +6 -0
  17. package/dist/components/breadcrumb/breadcrumb-item.styles.js +63 -0
  18. package/dist/components/breadcrumb/breadcrumb.component.d.ts +6 -3
  19. package/dist/components/breadcrumb/breadcrumb.component.js +65 -0
  20. package/dist/components/breadcrumb/breadcrumb.d.ts +2 -2
  21. package/dist/components/breadcrumb/breadcrumb.js +6 -0
  22. package/dist/components/breadcrumb/breadcrumb.styles.js +25 -0
  23. package/dist/components/button/button.component.d.ts +13 -10
  24. package/dist/components/button/button.component.js +69 -66
  25. package/dist/components/button/button.styles.d.ts +1 -2
  26. package/dist/components/button/button.styles.js +6 -5
  27. package/dist/components/card/card.component.d.ts +6 -1
  28. package/dist/components/card/card.component.js +46 -24
  29. package/dist/components/card/card.styles.js +31 -14
  30. package/dist/components/checkbox/checkbox.component.d.ts +14 -11
  31. package/dist/components/checkbox/checkbox.component.js +67 -69
  32. package/dist/components/checkbox/checkbox.styles.d.ts +1 -2
  33. package/dist/components/checkbox/checkbox.styles.js +2 -6
  34. package/dist/components/{date-picker/datepicker.calendar.component.d.ts → datepicker/datepicker-calendar.component.d.ts} +8 -1
  35. package/dist/components/{date-picker/datepicker.calendar.component.js → datepicker/datepicker-calendar.component.js} +109 -115
  36. package/dist/components/datepicker/datepicker-calendar.d.ts +8 -0
  37. package/dist/components/datepicker/datepicker-calendar.js +6 -0
  38. package/dist/components/{date-picker/datepicker.component.d.ts → datepicker/datepicker-popup.component.d.ts} +9 -20
  39. package/dist/components/datepicker/datepicker-popup.component.js +272 -0
  40. package/dist/components/datepicker/datepicker-popup.d.ts +8 -0
  41. package/dist/components/{date-picker/datepicker.helpers.d.ts → datepicker/datepicker-popup.helpers.d.ts} +3 -3
  42. package/dist/components/datepicker/datepicker-popup.helpers.js +83 -0
  43. package/dist/components/datepicker/datepicker-popup.js +6 -0
  44. package/dist/components/{date-picker/datepicker.styles.js → datepicker/datepicker-popup.styles.js} +3 -3
  45. package/dist/components/{date-picker-input/datepicker-input.component.d.ts → datepicker/datepicker.component.d.ts} +22 -14
  46. package/dist/components/datepicker/datepicker.component.js +455 -0
  47. package/dist/components/datepicker/datepicker.d.ts +8 -0
  48. package/dist/components/datepicker/datepicker.js +6 -0
  49. package/dist/components/dialog/dialog.component.d.ts +8 -6
  50. package/dist/components/dialog/dialog.component.js +67 -67
  51. package/dist/components/dialog/dialog.d.ts +2 -2
  52. package/dist/components/dialog/dialog.styles.js +4 -4
  53. package/dist/components/divider/divider.component.d.ts +3 -0
  54. package/dist/components/divider/divider.component.js +43 -22
  55. package/dist/components/divider/divider.styles.js +9 -9
  56. package/dist/components/drawer/drawer.component.d.ts +24 -12
  57. package/dist/components/drawer/drawer.component.js +87 -63
  58. package/dist/components/drawer/drawer.d.ts +2 -2
  59. package/dist/components/drawer/drawer.styles.js +47 -40
  60. package/dist/components/header/header.component.d.ts +7 -4
  61. package/dist/components/header/header.component.js +68 -55
  62. package/dist/components/header/header.d.ts +2 -2
  63. package/dist/components/header/header.styles.js +2 -2
  64. package/dist/components/heading/heading.component.d.ts +8 -6
  65. package/dist/components/heading/heading.component.js +52 -24
  66. package/dist/components/heading/heading.styles.js +34 -36
  67. package/dist/components/icon/icon.component.d.ts +15 -17
  68. package/dist/components/icon/icon.component.js +62 -43
  69. package/dist/components/icon/icon.styles.d.ts +1 -2
  70. package/dist/components/icon/icon.styles.js +60 -60
  71. package/dist/components/input/input.component.d.ts +34 -39
  72. package/dist/components/input/input.component.js +159 -153
  73. package/dist/components/input/input.controllers.d.ts +0 -1
  74. package/dist/components/input/input.controllers.js +14 -19
  75. package/dist/components/link/link.component.d.ts +20 -25
  76. package/dist/components/link/link.component.js +104 -107
  77. package/dist/components/link/link.styles.d.ts +1 -2
  78. package/dist/components/link/link.styles.js +54 -46
  79. package/dist/components/loader/loader.component.d.ts +6 -4
  80. package/dist/components/loader/loader.component.js +49 -42
  81. package/dist/components/loader/loader.styles.d.ts +1 -2
  82. package/dist/components/loader/loader.styles.js +34 -30
  83. package/dist/components/logo/logo.component.d.ts +8 -6
  84. package/dist/components/logo/logo.component.js +55 -51
  85. package/dist/components/logo/logo.styles.js +26 -16
  86. package/dist/components/menu/menu-item.component.d.ts +13 -0
  87. package/dist/components/menu/menu-item.component.js +13 -0
  88. package/dist/components/{menu-item → menu}/menu-item.d.ts +2 -2
  89. package/dist/components/menu/menu-item.styles.js +23 -0
  90. package/dist/components/menu/menu.component.d.ts +14 -8
  91. package/dist/components/menu/menu.component.js +10 -12
  92. package/dist/components/menu/menu.d.ts +2 -2
  93. package/dist/components/{nav-item → nav}/nav-item.component.d.ts +6 -4
  94. package/dist/components/nav/nav-item.component.js +57 -0
  95. package/dist/components/nav/nav-item.styles.js +43 -0
  96. package/dist/components/nav/nav.component.d.ts +9 -0
  97. package/dist/components/nav/nav.component.js +47 -21
  98. package/dist/components/nav/nav.d.ts +2 -2
  99. package/dist/components/nav/nav.styles.js +15 -9
  100. package/dist/components/popover/popover.component.d.ts +17 -6
  101. package/dist/components/popover/popover.component.js +22 -16
  102. package/dist/components/popover/popover.d.ts +2 -2
  103. package/dist/components/progress/progress.component.d.ts +4 -2
  104. package/dist/components/progress/progress.component.js +38 -35
  105. package/dist/components/progress/progress.d.ts +2 -2
  106. package/dist/components/progress/progress.styles.js +42 -35
  107. package/dist/components/radio/radio.component.d.ts +13 -9
  108. package/dist/components/radio/radio.component.js +96 -91
  109. package/dist/components/radio/radio.styles.js +1 -1
  110. package/dist/components/{segmented-button-item → segmented-button}/segmented-button-item.component.d.ts +4 -4
  111. package/dist/components/segmented-button/segmented-button-item.component.js +56 -0
  112. package/dist/components/{segmented-button-item → segmented-button}/segmented-button-item.d.ts +2 -2
  113. package/dist/components/segmented-button/segmented-button-item.js +6 -0
  114. package/dist/components/segmented-button/segmented-button-item.styles.js +62 -0
  115. package/dist/components/segmented-button/segmented-button.component.d.ts +0 -2
  116. package/dist/components/segmented-button/segmented-button.component.js +71 -0
  117. package/dist/components/segmented-button/segmented-button.d.ts +2 -2
  118. package/dist/components/segmented-button/segmented-button.js +6 -0
  119. package/dist/components/segmented-button/segmented-button.styles.js +16 -0
  120. package/dist/components/{select-option-group → select}/select-option-group.component.d.ts +4 -0
  121. package/dist/components/select/select-option-group.component.js +50 -0
  122. package/dist/components/{select-option-group → select}/select-option-group.d.ts +2 -2
  123. package/dist/components/select/select-option-group.style.js +24 -0
  124. package/dist/components/{select-option → select}/select-option.component.d.ts +16 -12
  125. package/dist/components/select/select-option.component.js +135 -0
  126. package/dist/components/select/select-option.styles.js +65 -0
  127. package/dist/components/select/select.component.d.ts +35 -25
  128. package/dist/components/select/select.component.js +126 -88
  129. package/dist/components/select/select.controllers.d.ts +1 -1
  130. package/dist/components/select/select.controllers.js +16 -18
  131. package/dist/components/select/select.styles.js +8 -2
  132. package/dist/components/select/stories/select.stories.icons.d.ts +7 -0
  133. package/dist/components/{stepper-item → stepper}/stepper-item.component.d.ts +1 -1
  134. package/dist/components/stepper/stepper-item.component.js +116 -0
  135. package/dist/components/{stepper-item → stepper}/stepper-item.d.ts +2 -2
  136. package/dist/components/{stepper-item → stepper}/stepper-item.styles.js +4 -4
  137. package/dist/components/stepper/stepper.component.d.ts +2 -2
  138. package/dist/components/stepper/stepper.component.js +17 -18
  139. package/dist/components/stepper/stepper.d.ts +2 -2
  140. package/dist/components/stepper/stepper.helpers.d.ts +1 -1
  141. package/dist/components/stepper/stepper.helpers.js +6 -7
  142. package/dist/components/switch/switch.component.d.ts +4 -2
  143. package/dist/components/switch/switch.component.js +64 -58
  144. package/dist/components/switch/switch.d.ts +2 -2
  145. package/dist/components/switch/switch.styles.js +1 -1
  146. package/dist/components/{tab-panel → tabs}/tab-panel.component.d.ts +1 -1
  147. package/dist/components/tabs/tab-panel.component.js +39 -0
  148. package/dist/components/{tab-panel → tabs}/tab-panel.d.ts +2 -2
  149. package/dist/components/{tab → tabs}/tab.component.d.ts +3 -3
  150. package/dist/components/{tab → tabs}/tab.component.js +18 -15
  151. package/dist/components/{tab → tabs}/tab.d.ts +2 -2
  152. package/dist/components/{tab → tabs}/tab.styles.js +2 -2
  153. package/dist/components/{tab-group/tab-group.component.d.ts → tabs/tabs.component.d.ts} +3 -4
  154. package/dist/components/{tab-group/tab-group.component.js → tabs/tabs.component.js} +36 -37
  155. package/dist/components/tabs/tabs.d.ts +8 -0
  156. package/dist/components/tabs/tabs.js +6 -0
  157. package/dist/components/{tab-group/tab-group.styles.js → tabs/tabs.styles.js} +16 -16
  158. package/dist/components/tag/tag.component.d.ts +20 -16
  159. package/dist/components/tag/tag.component.js +74 -65
  160. package/dist/components/tag/tag.d.ts +2 -2
  161. package/dist/components/tag/tag.styles.js +63 -50
  162. package/dist/components/textarea/textarea.component.d.ts +14 -13
  163. package/dist/components/textarea/textarea.component.js +77 -72
  164. package/dist/components/{toast-item → toast}/toast-item.d.ts +2 -0
  165. package/dist/components/{toast-item → toast}/toast-item.js +4 -0
  166. package/dist/components/toast/toast-item.styles.js +21 -0
  167. package/dist/components/{toast-wrapper → toast}/toast-wrapper.component.js +1 -1
  168. package/dist/components/toast/toast-wrapper.styles.d.ts +1 -0
  169. package/dist/components/toast/toast.component.d.ts +5 -4
  170. package/dist/components/toast/toast.component.js +16 -16
  171. package/dist/components/toast/toast.singleton.d.ts +5 -5
  172. package/dist/components/toast/toast.singleton.js +28 -29
  173. package/dist/components/tooltip/tooltip.component.d.ts +11 -3
  174. package/dist/components/tooltip/tooltip.component.js +18 -9
  175. package/dist/components/tooltip/tooltip.d.ts +2 -2
  176. package/dist/custom-elements.json +2202 -1720
  177. package/dist/index.d.ts +19 -12
  178. package/dist/index.js +108 -89
  179. package/dist/internal/base-classes/popover/popover.base.d.ts +30 -6
  180. package/dist/internal/base-classes/popover/popover.base.js +83 -69
  181. package/dist/internal/base-classes/popover/popover.styles.js +4 -5
  182. package/dist/internal/components/formBase.d.ts +1 -0
  183. package/dist/internal/components/formBase.js +11 -19
  184. package/dist/internal/components/hint/hint.component.d.ts +6 -2
  185. package/dist/internal/components/hint/hint.component.js +47 -20
  186. package/dist/internal/components/hint/hint.styles.d.ts +1 -2
  187. package/dist/internal/components/hint/hint.styles.js +30 -26
  188. package/dist/internal/components/skf-element.d.ts +1 -3
  189. package/dist/internal/components/skf-element.js +4 -9
  190. package/dist/internal/constants/iconSeverity.d.ts +3 -2
  191. package/dist/internal/constants/iconSeverity.js +2 -3
  192. package/dist/internal/controllers/popover.controller.d.ts +2 -0
  193. package/dist/internal/controllers/popover.controller.js +11 -14
  194. package/dist/internal/helpers/hintSeverity.d.ts +2 -2
  195. package/dist/internal/helpers/hintSeverity.js +1 -1
  196. package/dist/internal/helpers/stateMap.d.ts +14 -0
  197. package/dist/internal/helpers/stateMap.js +68 -0
  198. package/dist/internal/helpers/uuid.d.ts +8 -10
  199. package/dist/internal/helpers/uuid.js +4 -11
  200. package/dist/internal/helpers/watch.d.ts +1 -1
  201. package/dist/internal/helpers/watch.js +12 -12
  202. package/dist/internal/templates/asterisk.d.ts +1 -1
  203. package/dist/internal/templates/asterisk.js +4 -4
  204. package/dist/internal/types/formField.d.ts +1 -1
  205. package/dist/internal/types.d.ts +22 -0
  206. package/dist/styles/component.styles.d.ts +1 -2
  207. package/dist/styles/component.styles.js +38 -37
  208. package/dist/styles/global-alt.css +1 -0
  209. package/dist/styles/global.css +1 -1
  210. package/dist/translations/en.d.ts +3 -0
  211. package/dist/translations/en.js +27 -0
  212. package/dist/translations/es.d.ts +3 -0
  213. package/dist/translations/es.js +27 -0
  214. package/dist/translations/index.d.ts +4 -0
  215. package/dist/translations/pt.d.ts +3 -0
  216. package/dist/translations/pt.js +27 -0
  217. package/dist/translations/sv.d.ts +3 -0
  218. package/dist/translations/sv.js +27 -0
  219. package/dist/types/jsx/custom-element-jsx.d.ts +2031 -927
  220. package/dist/types/vue/index.d.ts +357 -324
  221. package/dist/utilities/localize.d.ts +28 -0
  222. package/dist/utilities/localize.js +13 -0
  223. package/dist/vscode.html-custom-data.json +360 -1241
  224. package/dist/web-types.json +932 -805
  225. package/package.json +38 -52
  226. package/dist/components/accordion/accordion.test.d.ts +0 -1
  227. package/dist/components/checkbox/checkbox.test.d.ts +0 -1
  228. package/dist/components/collapse/collapse.component.d.ts +0 -40
  229. package/dist/components/collapse/collapse.component.js +0 -86
  230. package/dist/components/collapse/collapse.d.ts +0 -8
  231. package/dist/components/collapse/collapse.js +0 -6
  232. package/dist/components/collapse/collapse.styles.d.ts +0 -2
  233. package/dist/components/collapse/collapse.styles.js +0 -77
  234. package/dist/components/collapse/collapse.test.d.ts +0 -1
  235. package/dist/components/date-picker/datepicker.component.js +0 -261
  236. package/dist/components/date-picker/datepicker.d.ts +0 -10
  237. package/dist/components/date-picker/datepicker.helpers.js +0 -76
  238. package/dist/components/date-picker/datepicker.js +0 -8
  239. package/dist/components/date-picker-input/datepicker-input.component.js +0 -441
  240. package/dist/components/date-picker-input/datepicker-input.d.ts +0 -8
  241. package/dist/components/date-picker-input/datepicker-input.js +0 -6
  242. package/dist/components/input/input.test.d.ts +0 -1
  243. package/dist/components/menu-item/menu-item.component.d.ts +0 -25
  244. package/dist/components/menu-item/menu-item.component.js +0 -13
  245. package/dist/components/menu-item/menu-item.styles.js +0 -19
  246. package/dist/components/nav-item/nav-item.component.js +0 -38
  247. package/dist/components/nav-item/nav-item.styles.js +0 -39
  248. package/dist/components/radio/radio.test.d.ts +0 -1
  249. package/dist/components/select-option/select-option.component.js +0 -123
  250. package/dist/components/select-option/select-option.styles.js +0 -53
  251. package/dist/components/select-option-group/select-option-group.component.js +0 -31
  252. package/dist/components/select-option-group/select-option-group.style.js +0 -18
  253. package/dist/components/stepper-item/stepper-item.component.js +0 -113
  254. package/dist/components/switch/switch.test.d.ts +0 -1
  255. package/dist/components/tab-group/tab-group.d.ts +0 -8
  256. package/dist/components/tab-group/tab-group.js +0 -6
  257. package/dist/components/tab-panel/tab-panel.component.js +0 -36
  258. package/dist/components/toast-item/toast-item.styles.js +0 -18
  259. package/dist/internal/constants/heading.d.ts +0 -2
  260. package/dist/internal/playwright/index.d.ts +0 -1
  261. /package/dist/components/{breadcrumb-item/breadcrumb-item.styles.d.ts → accordion/accordion-item.styles.d.ts} +0 -0
  262. /package/dist/components/{breadcrumb-item → breadcrumb}/breadcrumb-item.component.d.ts +0 -0
  263. /package/dist/components/{date-picker/datepicker.calendar.styles.d.ts → breadcrumb/breadcrumb-item.styles.d.ts} +0 -0
  264. /package/dist/components/{date-picker/datepicker.styles.d.ts → datepicker/datepicker-calendar.styles.d.ts} +0 -0
  265. /package/dist/components/{date-picker/datepicker.calendar.styles.js → datepicker/datepicker-calendar.styles.js} +0 -0
  266. /package/dist/components/{menu-item/menu-item.styles.d.ts → datepicker/datepicker-popup.styles.d.ts} +0 -0
  267. /package/dist/components/{date-picker-input/datepicker-input.helpers.d.ts → datepicker/datepicker.helpers.d.ts} +0 -0
  268. /package/dist/components/{date-picker-input/datepicker-input.helpers.js → datepicker/datepicker.helpers.js} +0 -0
  269. /package/dist/components/{date-picker-input/datepicker-input.styles.d.ts → datepicker/datepicker.styles.d.ts} +0 -0
  270. /package/dist/components/{date-picker-input/datepicker-input.styles.js → datepicker/datepicker.styles.js} +0 -0
  271. /package/dist/components/{menu-item → menu}/menu-item.js +0 -0
  272. /package/dist/components/{nav-item/nav-item.styles.d.ts → menu/menu-item.styles.d.ts} +0 -0
  273. /package/dist/components/{nav-item → nav}/nav-item.d.ts +0 -0
  274. /package/dist/components/{nav-item → nav}/nav-item.js +0 -0
  275. /package/dist/components/{segmented-button-item/segmented-button-item.styles.d.ts → nav/nav-item.styles.d.ts} +0 -0
  276. /package/dist/components/{select-option-group/select-option-group.style.d.ts → segmented-button/segmented-button-item.styles.d.ts} +0 -0
  277. /package/dist/components/{select-option-group → select}/select-option-group.js +0 -0
  278. /package/dist/components/{select-option/select-option.styles.d.ts → select/select-option-group.style.d.ts} +0 -0
  279. /package/dist/components/{select-option → select}/select-option.controllers.d.ts +0 -0
  280. /package/dist/components/{select-option → select}/select-option.d.ts +0 -0
  281. /package/dist/components/{select-option → select}/select-option.js +0 -0
  282. /package/dist/components/{stepper-item/stepper-item.styles.d.ts → select/select-option.styles.d.ts} +0 -0
  283. /package/dist/components/{stepper-item → stepper}/stepper-item.js +0 -0
  284. /package/dist/components/{tab-group/tab-group.styles.d.ts → stepper/stepper-item.styles.d.ts} +0 -0
  285. /package/dist/components/{tab-panel → tabs}/tab-panel.js +0 -0
  286. /package/dist/components/{tab-panel → tabs}/tab-panel.styles.d.ts +0 -0
  287. /package/dist/components/{tab-panel → tabs}/tab-panel.styles.js +0 -0
  288. /package/dist/components/{tab → tabs}/tab.js +0 -0
  289. /package/dist/components/{tab → tabs}/tab.styles.d.ts +0 -0
  290. /package/dist/components/{toast-wrapper/toast-wrapper.styles.d.ts → tabs/tabs.styles.d.ts} +0 -0
  291. /package/dist/components/{toast-item → toast}/toast-item.component.d.ts +0 -0
  292. /package/dist/components/{toast-item → toast}/toast-item.component.js +0 -0
  293. /package/dist/components/{toast-item → toast}/toast-item.styles.d.ts +0 -0
  294. /package/dist/components/{toast-wrapper → toast}/toast-wrapper.component.d.ts +0 -0
  295. /package/dist/components/{toast-wrapper → toast}/toast-wrapper.d.ts +0 -0
  296. /package/dist/components/{toast-wrapper → toast}/toast-wrapper.js +0 -0
  297. /package/dist/components/{toast-wrapper → toast}/toast-wrapper.styles.js +0 -0
package/package.json CHANGED
@@ -6,7 +6,7 @@
6
6
  "url": "https://github.com/SKF-Internal/ui-components/issues"
7
7
  },
8
8
  "engines": {
9
- "node": ">=20",
9
+ "node": ">=22",
10
10
  "pnpm": ">=10"
11
11
  },
12
12
  "engineStrict": true,
@@ -17,8 +17,9 @@
17
17
  "import": "./dist/index.js"
18
18
  },
19
19
  "./components/*": "./dist/components/*",
20
- "./react/*": "./dist/react/*",
21
- "./styles/*.css": "./dist/styles/*.css"
20
+ "./styles/*.css": "./dist/styles/*.css",
21
+ "./translations/*": "./dist/translations/*",
22
+ "./utilities/*": "./dist/utilities/*"
22
23
  },
23
24
  "homepage": "https://github.com/SKF-Internal/ui-components",
24
25
  "license": "UNLICENSED",
@@ -34,66 +35,54 @@
34
35
  "sideEffects": true,
35
36
  "type": "module",
36
37
  "types": "./dist/index.d.ts",
37
- "version": "1.0.2-beta.0",
38
+ "version": "1.0.2-beta.10",
38
39
  "dependencies": {
39
- "@floating-ui/dom": "^1.6.13",
40
- "@js-temporal/polyfill": "^0.4.4"
40
+ "@floating-ui/dom": "^1.7.1",
41
+ "@js-temporal/polyfill": "^0.5.1",
42
+ "@shoelace-style/localize": "^3.2.1",
43
+ "@skf-design-system/ui-assets": "0.1.3-beta.16",
44
+ "lit": "^3.3.0"
41
45
  },
42
46
  "devDependencies": {
43
- "@chromatic-com/storybook": "^3.2.6",
44
- "@commitlint/cli": "^19.8.0",
45
- "@commitlint/config-conventional": "^19.8.0",
47
+ "@chromatic-com/storybook": "^4.0.1",
48
+ "@commitlint/cli": "^19.8.1",
49
+ "@commitlint/config-conventional": "^19.8.1",
46
50
  "@custom-elements-manifest/analyzer": "^0.10.4",
47
- "@eslint/js": "^9.22.0",
48
- "@playwright/test": "^1.51.1",
49
- "@skf-design-system/ui-assets": "0.1.3-beta.4",
50
- "@storybook/addon-a11y": "^8.6.7",
51
- "@storybook/addon-essentials": "^8.6.7",
52
- "@storybook/addon-interactions": "^8.6.7",
53
- "@storybook/addon-links": "^8.6.7",
54
- "@storybook/blocks": "^8.6.7",
55
- "@storybook/manager-api": "^8.6.7",
56
- "@storybook/test": "^8.6.7",
57
- "@storybook/test-runner": "^0.22.0",
58
- "@storybook/theming": "^8.6.7",
59
- "@storybook/web-components": "^8.6.7",
60
- "@storybook/web-components-vite": "^8.6.7",
61
- "@types/node": "^22.13.10",
51
+ "@eslint/js": "^9.29.0",
52
+ "@storybook/addon-a11y": "^9.0.13",
53
+ "@storybook/addon-docs": "^9.0.13",
54
+ "@storybook/addon-links": "^9.0.13",
55
+ "@storybook/web-components-vite": "^9.0.13",
56
+ "@types/node": "^24.0.4",
57
+ "@wc-toolkit/jsx-types": "^1.2.2",
62
58
  "@wc-toolkit/module-path-resolver": "^1.0.0",
63
- "@wc-toolkit/storybook-helpers": "^1.0.4",
59
+ "@wc-toolkit/storybook-helpers": "^9.0.1",
64
60
  "@wc-toolkit/type-parser": "^1.0.3",
65
- "concurrently": "^9.1.2",
61
+ "concurrently": "^9.2.0",
66
62
  "custom-element-jet-brains-integration": "^1.7.0",
67
- "custom-element-jsx-integration": "^1.6.0",
68
63
  "custom-element-vs-code-integration": "^1.5.0",
69
64
  "custom-element-vuejs-integration": "^1.4.0",
70
- "eslint": "^9.22.0",
71
- "eslint-config-prettier": "^10.1.1",
72
- "eslint-plugin-lit": "^1.15.0",
73
- "eslint-plugin-lit-a11y": "^4.1.4",
74
- "eslint-plugin-wc": "^2.2.0",
75
- "express": "^4.21.2",
65
+ "eslint": "^9.29.0",
66
+ "eslint-plugin-lit": "^2.1.1",
67
+ "eslint-plugin-lit-a11y": "^5.0.1",
68
+ "eslint-plugin-storybook": "9.0.13",
69
+ "eslint-plugin-wc": "^3.0.1",
76
70
  "husky": "^9.1.7",
77
- "lint-staged": "^15.5.0",
78
- "lit": "^3.2.1",
71
+ "lint-staged": "^16.1.2",
79
72
  "postcss-styled-syntax": "^0.7.1",
80
- "prettier": "3.5.3",
81
- "storybook": "^8.6.7",
82
- "stylelint": "^16.16.0",
83
- "stylelint-config-standard": "^37.0.0",
73
+ "prettier": "3.6.1",
74
+ "storybook": "^9.0.13",
75
+ "stylelint": "^16.21.0",
76
+ "stylelint-config-standard": "^38.0.0",
84
77
  "stylelint-no-unsupported-browser-features": "^8.0.4",
85
- "stylelint-order": "^6.0.4",
78
+ "stylelint-order": "^7.0.0",
86
79
  "stylelint-value-no-unknown-custom-properties": "^6.0.1",
87
- "tsc-alias": "^1.8.11",
88
- "typescript": "^5.8.2",
89
- "typescript-eslint": "^8.26.1",
90
- "vite": "^6.2.2",
80
+ "tsc-alias": "^1.8.16",
81
+ "typescript": "^5.8.3",
82
+ "typescript-eslint": "^8.35.0",
83
+ "vite": "^7.0.0",
91
84
  "vite-tsconfig-paths": "^5.1.4"
92
85
  },
93
- "peerDependencies": {
94
- "@skf-design-system/ui-assets": "0.1.3-beta.1",
95
- "lit": "^3.1.3"
96
- },
97
86
  "scripts": {
98
87
  "analyze": "cem analyze",
99
88
  "dev": "vite",
@@ -108,9 +97,6 @@
108
97
  "lint:eslint": "eslint \"**/*.{js,ts}\" --ignore-pattern .gitignore",
109
98
  "lint:prettier": "prettier \"**/*.{js,ts}\" --check --ignore-path .gitignore --log-level warn",
110
99
  "lint:stylelint": "stylelint \"**/*.{css,ts}\" --quiet --ignore-path .gitignore",
111
- "serve:storybook-static": "pnpm build && pnpm storybook build && node ./build/serve.js",
112
- "storybook": "concurrently \"storybook dev -p 9009\" \"pnpm analyze --watch\"",
113
- "test": "npx playwright test",
114
- "test:ui": " npx playwright test --ui"
100
+ "storybook": "concurrently \"storybook dev -p 6006\" \"pnpm analyze --watch\""
115
101
  }
116
102
  }
@@ -1 +0,0 @@
1
- export {};
@@ -1 +0,0 @@
1
- export {};
@@ -1,40 +0,0 @@
1
- import '../icon/icon.js';
2
- import { SkfElement } from '../../internal/components/skf-element.js';
3
- import type { HeadingType } from '../../internal/constants/heading.js';
4
- import type { CSSResultGroup } from 'lit';
5
- /**
6
- * The `<skf-collapse>` component is a general purpose container for content that can be collapsed / expanded.
7
- *
8
- * See [zeroheight](https://zeroheight.com/853e936c9/p/6590bf-accordion) for design principles.
9
- *
10
- * @event {CustomEvent} skf-collapse-toggle - Event emitted when toggled
11
- *
12
- * @slot - Main content
13
- *
14
- * @tagname skf-collapse
15
- */
16
- export declare class SkfCollapse extends SkfElement {
17
- static styles: CSSResultGroup;
18
- /** If true, will animate the expand/collapse state */
19
- animated: boolean;
20
- /** If true, will set the collapse to be expanded by default */
21
- expanded: boolean;
22
- /** Heading for the collapse */
23
- heading?: string;
24
- /**
25
- * Defines which heading element will be rendered
26
- * @type { "h2" | "h3" | "h4" }
27
- */
28
- headingAs: Exclude<HeadingType, 'h1'>;
29
- /** If true, renders the small version */
30
- small: boolean;
31
- /** If true, will truncate the heading in collapsed state */
32
- truncate: boolean;
33
- /** Class method as alternative to manipulate attribute */
34
- setClose(): void;
35
- /** Class method as alternative to manipulate attribute */
36
- setOpen(): void;
37
- /** @internal */
38
- private _toggle;
39
- render(): import("lit").TemplateResult;
40
- }
@@ -1,86 +0,0 @@
1
- import "../icon/icon.js";
2
- import { SkfElement as c } from "../../internal/components/skf-element.js";
3
- import h from "../../styles/component.styles.js";
4
- import { property as s } from "lit/decorators.js";
5
- import { classMap as m } from "lit/directives/class-map.js";
6
- import { ifDefined as f } from "lit/directives/if-defined.js";
7
- import { unsafeStatic as d, html as u } from "lit/static-html.js";
8
- import _ from "./collapse.styles.js";
9
- var y = Object.defineProperty, a = (i, n, r, g) => {
10
- for (var t = void 0, l = i.length - 1, p; l >= 0; l--)
11
- (p = i[l]) && (t = p(n, r, t) || t);
12
- return t && y(n, r, t), t;
13
- };
14
- const o = class o extends c {
15
- constructor() {
16
- super(...arguments), this.animated = !1, this.expanded = !1, this.headingAs = "h2", this.small = !1, this.truncate = !1, this._toggle = () => {
17
- this.dispatchEvent(
18
- new CustomEvent("skf-collapse-toggle", {
19
- bubbles: !0,
20
- composed: !0,
21
- cancelable: !0
22
- })
23
- ), this.expanded = !this.expanded;
24
- };
25
- }
26
- /** Class method as alternative to manipulate attribute */
27
- setClose() {
28
- this.expanded = !1;
29
- }
30
- /** Class method as alternative to manipulate attribute */
31
- setOpen() {
32
- this.expanded = !0;
33
- }
34
- render() {
35
- return u`
36
- <div class=${m({
37
- collapse: !0,
38
- "collapse--animated": this.animated,
39
- "collapse--expanded": this.expanded,
40
- "collapse--small": this.small,
41
- "collapse--truncate": this.truncate
42
- })}>
43
- <${d(this.headingAs)} class="collapse__heading">
44
- <button
45
- @click=${this._toggle}
46
- aria-controls="main"
47
- aria-expanded=${f(this.expanded ? "true" : "false")}
48
- class="collapse__btn"
49
- type="button"
50
- >
51
- <span class="collapse__label">${this.heading}</span>
52
- <skf-icon class="collapse__icon" name=${this.expanded ? "caretUp" : "caretDown"}></skf-icon>
53
- </button>
54
- </${d(this.headingAs)}>
55
- <div class="collapse__body">
56
- <div class="collapse__main" data-testid="main" id="main">
57
- <slot></slot>
58
- </div>
59
- </div>
60
- </div>
61
- `;
62
- }
63
- };
64
- o.styles = [h, _];
65
- let e = o;
66
- a([
67
- s({ type: Boolean, reflect: !0 })
68
- ], e.prototype, "animated");
69
- a([
70
- s({ type: Boolean, reflect: !0 })
71
- ], e.prototype, "expanded");
72
- a([
73
- s()
74
- ], e.prototype, "heading");
75
- a([
76
- s({ attribute: "heading-as" })
77
- ], e.prototype, "headingAs");
78
- a([
79
- s({ type: Boolean, reflect: !0 })
80
- ], e.prototype, "small");
81
- a([
82
- s({ type: Boolean, reflect: !0 })
83
- ], e.prototype, "truncate");
84
- export {
85
- e as SkfCollapse
86
- };
@@ -1,8 +0,0 @@
1
- import { SkfCollapse } from './collapse.component.js';
2
- export * from './collapse.component.js';
3
- export default SkfCollapse;
4
- declare global {
5
- interface HTMLElementTagNameMap {
6
- 'skf-collapse': SkfCollapse;
7
- }
8
- }
@@ -1,6 +0,0 @@
1
- import { SkfCollapse as e } from "./collapse.component.js";
2
- e.define("skf-collapse");
3
- export {
4
- e as SkfCollapse,
5
- e as default
6
- };
@@ -1,2 +0,0 @@
1
- declare const _default: import("lit").CSSResult;
2
- export default _default;
@@ -1,77 +0,0 @@
1
- import { css as a } from "lit";
2
- const s = a`
3
- /* stylelint-disable selector-class-pattern */
4
- @layer components {
5
- .collapse {
6
- background: var(--skf-bg-color-neutral-1);
7
- border-bottom: var(--skf-border-width-sm) solid var(--skf-border-color-tertiary);
8
- }
9
-
10
- .collapse__heading {
11
- font-size: var(--_skf-collapse-heading-size, var(--skf-font-size-100));
12
- font-weight: var(--_skf-collapse-heading-weight, normal);
13
-
14
- .collapse--small & {
15
- --_skf-collapse-heading-size: var(--skf-font-size-75);
16
- --_skf-collapse-heading-weight: var(--skf-font-weight-medium);
17
- }
18
- }
19
-
20
- .collapse__btn {
21
- align-items: center;
22
- display: flex;
23
- padding-block: var(--_skf-collapse-button-padding-block, var(--skf-spacing-50));
24
- padding-inline: var(--skf-spacing-75);
25
- width: 100%;
26
-
27
- &:focus-visible {
28
- outline: var(--skf-border-width-md) solid var(--skf-interactive-border-color-focus);
29
- outline-offset: -2px;
30
- }
31
-
32
- .collapse--small & {
33
- --_skf-collapse-button-padding-block: var(--skf-spacing-25);
34
- }
35
- }
36
-
37
- .collapse__label {
38
- .collapse--truncate:not(.collapse--expanded) & {
39
- overflow: hidden;
40
- text-overflow: ellipsis;
41
- white-space: nowrap;
42
- }
43
- }
44
-
45
- .collapse__icon {
46
- margin-inline-start: auto;
47
- }
48
-
49
- .collapse__body {
50
- display: grid;
51
- grid-template-rows: var(--_skf-collapse-body-height, 0fr);
52
- padding-inline: var(--skf-spacing-75);
53
-
54
- .collapse--animated & {
55
- transition: grid-template-rows calc(var(--skf-motion-duration-normal) * 1ms)
56
- var(--skf-motion-easing-ease-in);
57
- }
58
-
59
- .collapse--expanded & {
60
- --_skf-collapse-body-height: 1fr;
61
- }
62
- }
63
-
64
- .collapse__main {
65
- overflow: hidden;
66
-
67
- &::after {
68
- content: '';
69
- display: block;
70
- padding-block-end: var(--skf-spacing-100);
71
- }
72
- }
73
- }
74
- `;
75
- export {
76
- s as default
77
- };
@@ -1 +0,0 @@
1
- export {};
@@ -1,261 +0,0 @@
1
- import "../button/button.js";
2
- import { dateFormatter as l, is as v } from "../date-picker-input/datepicker-input.helpers.js";
3
- import { SkfElement as R } from "../../internal/components/skf-element.js";
4
- import { watch as p } from "../../internal/helpers/watch.js";
5
- import S from "../../styles/component.styles.js";
6
- import { html as D } from "lit";
7
- import { property as o, state as m } from "lit/decorators.js";
8
- import "./datepicker.js";
9
- import { getDateParts as g, assertISODate as $, earliestDate as T, latestDate as C, compareDates as c, doAnimate as b } from "./datepicker.helpers.js";
10
- import { styles as k } from "./datepicker.styles.js";
11
- var F = Object.defineProperty, E = Object.getOwnPropertyDescriptor, n = (w, e, t, a) => {
12
- for (var s = a > 1 ? void 0 : a ? E(e, t) : e, r = w.length - 1, d; r >= 0; r--)
13
- (d = w[r]) && (s = (a ? d(e, t, s) : d(s)) || s);
14
- return a && s && F(e, t, s), s;
15
- };
16
- const y = class y extends R {
17
- constructor() {
18
- super(...arguments), this.locale = "en-CA", this.date = (/* @__PURE__ */ new Date()).toLocaleDateString(this.locale), this.id = "", this.range = !1, this.selectedDate = void 0, this.selectedDateRange = {
19
- start: null,
20
- end: null
21
- }, this._datePlusOneMonth = new Date(
22
- new Date(this.date).getFullYear(),
23
- new Date(this.date).getMonth() + 1,
24
- 1
25
- ), this._handleCalendarView = (e) => {
26
- this._handleChangeCalendarView(e.detail);
27
- }, this._handleSelectedDate = (e) => {
28
- var t;
29
- if (this.selectedDate = e.detail.date, console.log("selectedDate", this.selectedDate), this.range) {
30
- const a = (t = this.shadowRoot) == null ? void 0 : t.querySelectorAll("skf-datepicker-calendar"), s = this.selectedDateRange, r = s.start && this.selectedDate < s.start;
31
- if (!!(s.start && s.end) || r)
32
- this.selectedDateRange = {
33
- start: this.selectedDate,
34
- end: null
35
- };
36
- else {
37
- const f = !!s.start ? { end: e.detail.date } : { start: e.detail.date };
38
- this.selectedDateRange = {
39
- ...s,
40
- ...f
41
- };
42
- }
43
- this._onRangeCompleteEmitEvent(), a != null && a.length && [...a].forEach((h) => {
44
- h.selectedDateRange = this.selectedDateRange;
45
- });
46
- }
47
- this.emit("skf-datepicker-selected", {
48
- detail: { date: this.range ? this.selectedDateRange : this.selectedDate }
49
- }), this.requestUpdate();
50
- }, this._handleTodayClick = () => {
51
- const { month: e, year: t } = g(), { month: a, year: s } = g(this.date);
52
- if (a === e && s === t && (this.selectedDateRange.start || this.selectedDate)) {
53
- this.date = l(this.selectedDateRange.start ?? this.selectedDate), this.emit("update-calendar-view", {
54
- detail: this.date
55
- });
56
- return;
57
- }
58
- if (this.range) {
59
- this.emit("update-calendar-view", {
60
- detail: l(/* @__PURE__ */ new Date())
61
- });
62
- return;
63
- }
64
- this.date = l(/* @__PURE__ */ new Date());
65
- };
66
- }
67
- connectedCallback() {
68
- super.connectedCallback(), this.addEventListener("update-calendar-view", this._handleCalendarView), this.addEventListener("selected-date-changed", this._handleSelectedDate);
69
- }
70
- firstUpdated() {
71
- (this.selectedDateRange.start ?? this.selectedDate) && this._onRangeCompleteEmitEvent();
72
- const t = this.selectedDate ?? this.selectedDateRange.start;
73
- t instanceof Date && this.gotoDate(t);
74
- }
75
- clearSelection() {
76
- this.selectedDateRange = {
77
- start: null,
78
- end: null
79
- }, this.selectedDate = void 0;
80
- }
81
- /** @internal */
82
- _onRangeCompleteEmitEvent() {
83
- if (!this.selectedDateRange.start || !this.selectedDateRange.end) return;
84
- const e = Math.abs(
85
- this.selectedDateRange.end.getTime() - this.selectedDateRange.start.getTime()
86
- ), t = Math.ceil(e / (1e3 * 60 * 60 * 24)) + 1;
87
- this.emit("selected-date-range-changed", {
88
- detail: {
89
- ...this.selectedDateRange,
90
- days: t,
91
- id: this.id
92
- }
93
- });
94
- }
95
- _handleRangeChange() {
96
- this.style.setProperty("--max-width", this.range ? "43em" : "21em");
97
- }
98
- _handleDateChange() {
99
- console.log("%cdate changed", "color:red", this.date), this.date = this.date && $(this.date) ? this.date : l(/* @__PURE__ */ new Date()), this.date = T(
100
- C(this.date, this.selectableFrom ?? this.date),
101
- this.selectableTo ?? this.date
102
- ), this._date = new Date(this.date), this._datePlusOneMonth = new Date(this._date.getFullYear(), this._date.getMonth() + 1, 1);
103
- }
104
- _handleSelectedDateRangeChange() {
105
- }
106
- _handleSelectedDateChange() {
107
- console.log("selected date changed", this.selectedDate);
108
- }
109
- /**
110
- * Navigates to the given date.
111
- * @param date - The date to navigate to, either a Date object or a string in the format 'yyyy-mm-dd'
112
- */
113
- gotoDate(e) {
114
- if (e instanceof Date)
115
- this.date = l(e);
116
- else if (v(e).dateISO())
117
- this.date = e;
118
- else
119
- throw new Error("Invalid date format");
120
- this.emit("update-calendar-view", {
121
- detail: e
122
- });
123
- }
124
- render() {
125
- return D`
126
- <div class="calendar-container">
127
- <skf-datepicker-calendar
128
- .date=${this._date ?? /* @__PURE__ */ new Date()}
129
- .eventid="${this.id}"
130
- .range=${this.range}
131
- .selectedDate=${this.selectedDate}
132
- .selectedDateRange=${this.selectedDateRange}
133
- .selectableFrom=${this.selectableFrom}
134
- .selectableTo=${this.selectableTo}
135
- .invalidDates=${this.invalidDates}
136
- class="start"
137
- id=${this.id}
138
- locale="${this.locale}"
139
- ></skf-datepicker-calendar>
140
- <skf-datepicker-calendar
141
- ?hidden=${!this.range}
142
- .date=${this._datePlusOneMonth}
143
- .eventid="${this.id}"
144
- .range=${!0}
145
- .selectedDate="${this.selectedDate}"
146
- .selectedDateRange=${this.selectedDateRange}
147
- .selectableFrom=${this.selectableFrom}
148
- .selectableTo=${this.selectableTo}
149
- .invalidDates=${this.invalidDates}
150
- class="end"
151
- id=${`${this.id}-range-end`}
152
- locale="${this.locale}"
153
- ></skf-datepicker-calendar>
154
- </div>
155
- ${this._renderTodayBtn()}
156
- <slot></slot>
157
- <div class="triangle"></div>
158
- `;
159
- }
160
- /** @internal */
161
- _renderTodayBtn() {
162
- let e = !1;
163
- if (this.selectableTo && c(this.selectableTo, l(/* @__PURE__ */ new Date())) === -1)
164
- return D``;
165
- if (this.selectableFrom && c(this.selectableFrom, l(/* @__PURE__ */ new Date())) === 1)
166
- return D``;
167
- const { month: t, year: a } = g(), { month: s, year: r } = g(this.date), d = this.selectedDate ?? this.selectedDateRange.start, h = t === s && a === r, f = d && c(l(/* @__PURE__ */ new Date()), l(d), "months") === 0;
168
- return (h && !d || f && h) && (e = !0), D`
169
- <div class="today">
170
- <skf-button
171
- @click=${this._handleTodayClick}
172
- ?disabled=${e}
173
- variant="tertiary"
174
- size="sm"
175
- >
176
- ${_(this.date) && (this.selectedDate || this.selectedDateRange.start) && !e ? "Selected date" : "Today"}
177
- </skf-button>
178
- </div>
179
- `;
180
- function _(u) {
181
- return c(u, l(/* @__PURE__ */ new Date()), "months") === 0;
182
- }
183
- }
184
- /** @internal */
185
- _handleChangeCalendarView(e) {
186
- const t = c(this.date, e);
187
- this._animateView(t, () => {
188
- this.date = e;
189
- }).then(() => {
190
- }).catch((a) => {
191
- console.error(a);
192
- });
193
- }
194
- /** @internal */
195
- async _animateView(e, t) {
196
- if (!this.shadowRoot) return;
197
- const a = [...this.shadowRoot.querySelectorAll("skf-datepicker-calendar")];
198
- return a.length ? (await b(
199
- a,
200
- [{ opacity: 0, transform: `translateX(calc(16px * ${e.toString()}))` }],
201
- { duration: 100, easing: "ease-in", fill: "backwards" }
202
- ), t(), await b(
203
- a,
204
- [
205
- { opacity: 0, transform: `translateX(${(-16 * e).toString()}px)` },
206
- { opacity: 1, transform: "translateX(0)" }
207
- ],
208
- { duration: 100, easing: "ease-out", fill: "backwards" }
209
- )) : Promise.resolve();
210
- }
211
- };
212
- y.styles = [S, k];
213
- let i = y;
214
- n([
215
- o({ reflect: !0 })
216
- ], i.prototype, "locale", 2);
217
- n([
218
- o({ type: String, reflect: !0 })
219
- ], i.prototype, "date", 2);
220
- n([
221
- o({ type: String })
222
- ], i.prototype, "id", 2);
223
- n([
224
- o({ attribute: "invalid-dates" })
225
- ], i.prototype, "invalidDates", 2);
226
- n([
227
- o({ type: Boolean })
228
- ], i.prototype, "range", 2);
229
- n([
230
- m()
231
- ], i.prototype, "selectedDate", 2);
232
- n([
233
- o({ attribute: "selectable-from" })
234
- ], i.prototype, "selectableFrom", 2);
235
- n([
236
- o({ attribute: "selectable-to" })
237
- ], i.prototype, "selectableTo", 2);
238
- n([
239
- m()
240
- ], i.prototype, "selectedDateRange", 2);
241
- n([
242
- m()
243
- ], i.prototype, "_date", 2);
244
- n([
245
- m()
246
- ], i.prototype, "_datePlusOneMonth", 2);
247
- n([
248
- p("range")
249
- ], i.prototype, "_handleRangeChange", 1);
250
- n([
251
- p("date")
252
- ], i.prototype, "_handleDateChange", 1);
253
- n([
254
- p("selectedDateRange")
255
- ], i.prototype, "_handleSelectedDateRangeChange", 1);
256
- n([
257
- p("selectedDate")
258
- ], i.prototype, "_handleSelectedDateChange", 1);
259
- export {
260
- i as SkfDatePicker
261
- };
@@ -1,10 +0,0 @@
1
- import { SkfDatePickerCalendar } from './datepicker.calendar.component.js';
2
- import { SkfDatePicker } from './datepicker.component.js';
3
- export * from './datepicker.component.js';
4
- export default SkfDatePicker;
5
- declare global {
6
- interface HTMLElementTagNameMap {
7
- 'skf-datepicker': SkfDatePicker;
8
- 'skf-datepicker-calendar': SkfDatePickerCalendar;
9
- }
10
- }