@warp-ds/elements 2.10.0-next.14 → 2.10.0-next.17

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 (632) hide show
  1. package/dist/.storybook/utilities.js +4 -4
  2. package/dist/api.js.map +2 -2
  3. package/dist/custom-elements.json +437 -53
  4. package/dist/docs/affix/affix.md +2 -2
  5. package/dist/docs/affix/api.md +2 -2
  6. package/dist/docs/alert/alert.md +4 -4
  7. package/dist/docs/alert/api.md +4 -4
  8. package/dist/docs/attention/api.md +50 -2
  9. package/dist/docs/attention/attention.md +50 -2
  10. package/dist/docs/badge/api.md +50 -4
  11. package/dist/docs/badge/badge.md +50 -4
  12. package/dist/docs/box/api.md +2 -2
  13. package/dist/docs/box/box.md +2 -2
  14. package/dist/docs/button/api.md +8 -0
  15. package/dist/docs/button/button.md +8 -0
  16. package/dist/docs/card/api.md +8 -0
  17. package/dist/docs/card/card.md +8 -0
  18. package/dist/docs/checkbox/api.md +50 -2
  19. package/dist/docs/checkbox/checkbox.md +224 -2
  20. package/dist/docs/checkbox/styling.md +173 -0
  21. package/dist/docs/checkbox-group/api.md +24 -0
  22. package/dist/docs/checkbox-group/checkbox-group.md +67 -30
  23. package/dist/docs/checkbox-group/styling.md +31 -29
  24. package/dist/docs/combobox/api.md +20 -12
  25. package/dist/docs/combobox/combobox.md +20 -12
  26. package/dist/docs/datepicker/api.md +14 -6
  27. package/dist/docs/datepicker/datepicker.md +14 -6
  28. package/dist/docs/icon/api.md +3 -3
  29. package/dist/docs/icon/icon.md +3 -3
  30. package/dist/docs/index.md +3 -1
  31. package/dist/docs/modal/api.md +16 -0
  32. package/dist/docs/modal/modal.md +16 -0
  33. package/dist/docs/radio-group/api.md +4 -4
  34. package/dist/docs/radio-group/radio-group.md +183 -68
  35. package/dist/docs/radio-group/styling.md +179 -64
  36. package/dist/docs/slider-thumb/api.md +16 -0
  37. package/dist/docs/slider-thumb/slider-thumb.md +16 -0
  38. package/dist/docs/snackbar/accessibility.md +20 -0
  39. package/dist/docs/snackbar/api.md +30 -0
  40. package/dist/docs/snackbar/examples.md +191 -0
  41. package/dist/docs/snackbar/snackbar.md +385 -0
  42. package/dist/docs/snackbar/styling.md +72 -0
  43. package/dist/docs/snackbar/usage.md +60 -0
  44. package/dist/docs/snackbar-item/api.md +41 -0
  45. package/dist/docs/snackbar-item/snackbar-item.md +49 -0
  46. package/dist/docs/step/api.md +16 -0
  47. package/dist/docs/step/step.md +16 -0
  48. package/dist/docs/switch/api.md +8 -0
  49. package/dist/docs/switch/switch.md +8 -0
  50. package/dist/docs/textarea/api.md +40 -0
  51. package/dist/docs/textarea/textarea.md +40 -0
  52. package/dist/docs/textfield/api.md +32 -0
  53. package/dist/docs/textfield/textfield.md +32 -0
  54. package/dist/index.d.ts +316 -3
  55. package/dist/packages/affix/affix.d.ts +4 -4
  56. package/dist/packages/affix/affix.hydration.test.d.ts +1 -1
  57. package/dist/packages/affix/affix.hydration.test.js +15 -15
  58. package/dist/packages/affix/affix.js +346 -316
  59. package/dist/packages/affix/affix.js.map +2 -2
  60. package/dist/packages/affix/affix.react.stories.d.ts +2 -2
  61. package/dist/packages/affix/affix.react.stories.js +3 -3
  62. package/dist/packages/affix/affix.react.test.js +5 -3
  63. package/dist/packages/affix/affix.stories.d.ts +3 -3
  64. package/dist/packages/affix/affix.stories.js +10 -10
  65. package/dist/packages/affix/affix.test.d.ts +1 -1
  66. package/dist/packages/affix/affix.test.js +10 -10
  67. package/dist/packages/affix/react.d.ts +2 -2
  68. package/dist/packages/affix/react.js +6 -6
  69. package/dist/packages/affix/styles.js +1 -1
  70. package/dist/packages/alert/alert.d.ts +3 -3
  71. package/dist/packages/alert/alert.hydration.test.d.ts +1 -1
  72. package/dist/packages/alert/alert.hydration.test.js +21 -21
  73. package/dist/packages/alert/alert.js +345 -320
  74. package/dist/packages/alert/alert.js.map +2 -2
  75. package/dist/packages/alert/alert.react.stories.d.ts +2 -2
  76. package/dist/packages/alert/alert.react.stories.js +13 -13
  77. package/dist/packages/alert/alert.stories.d.ts +4 -4
  78. package/dist/packages/alert/alert.stories.js +29 -27
  79. package/dist/packages/alert/alert.test.d.ts +1 -1
  80. package/dist/packages/alert/alert.test.js +34 -21
  81. package/dist/packages/alert/react.d.ts +1 -1
  82. package/dist/packages/alert/react.js +4 -4
  83. package/dist/packages/alert/styles.js +1 -1
  84. package/dist/packages/attention/attention.d.ts +11 -6
  85. package/dist/packages/attention/attention.hydration.test.d.ts +1 -1
  86. package/dist/packages/attention/attention.hydration.test.js +29 -29
  87. package/dist/packages/attention/attention.js +1737 -1695
  88. package/dist/packages/attention/attention.js.map +2 -2
  89. package/dist/packages/attention/attention.react.stories.d.ts +3 -3
  90. package/dist/packages/attention/attention.react.stories.js +13 -13
  91. package/dist/packages/attention/attention.react.test.js +11 -7
  92. package/dist/packages/attention/attention.stories.d.ts +4 -4
  93. package/dist/packages/attention/attention.stories.js +126 -117
  94. package/dist/packages/attention/attention.test.d.ts +1 -1
  95. package/dist/packages/attention/attention.test.js +18 -10
  96. package/dist/packages/attention/layout-styles.js +900 -900
  97. package/dist/packages/attention/react.d.ts +4 -4
  98. package/dist/packages/attention/react.js +13 -11
  99. package/dist/packages/attention/styles.js +1 -1
  100. package/dist/packages/badge/badge.d.ts +3 -3
  101. package/dist/packages/badge/badge.hydration.test.d.ts +1 -1
  102. package/dist/packages/badge/badge.hydration.test.js +25 -25
  103. package/dist/packages/badge/badge.js +276 -276
  104. package/dist/packages/badge/badge.js.map +2 -2
  105. package/dist/packages/badge/badge.react.stories.d.ts +3 -3
  106. package/dist/packages/badge/badge.react.stories.js +17 -17
  107. package/dist/packages/badge/badge.stories.d.ts +3 -3
  108. package/dist/packages/badge/badge.stories.js +22 -20
  109. package/dist/packages/badge/badge.test.d.ts +1 -1
  110. package/dist/packages/badge/badge.test.js +13 -11
  111. package/dist/packages/badge/react.d.ts +1 -1
  112. package/dist/packages/badge/react.js +4 -4
  113. package/dist/packages/badge/styles.js +1 -1
  114. package/dist/packages/box/box.d.ts +1 -1
  115. package/dist/packages/box/box.hydration.test.d.ts +1 -1
  116. package/dist/packages/box/box.hydration.test.js +14 -14
  117. package/dist/packages/box/box.js +283 -283
  118. package/dist/packages/box/box.js.map +2 -2
  119. package/dist/packages/box/box.react.stories.d.ts +3 -3
  120. package/dist/packages/box/box.react.stories.js +8 -8
  121. package/dist/packages/box/box.stories.d.ts +3 -3
  122. package/dist/packages/box/box.stories.js +25 -19
  123. package/dist/packages/box/box.test.d.ts +1 -1
  124. package/dist/packages/box/box.test.js +6 -6
  125. package/dist/packages/box/react.d.ts +1 -1
  126. package/dist/packages/box/react.js +4 -4
  127. package/dist/packages/box/slot.test.d.ts +1 -1
  128. package/dist/packages/box/slot.test.js +6 -6
  129. package/dist/packages/box/styles.js +1 -1
  130. package/dist/packages/breadcrumbs/breadcrumbs.d.ts +1 -1
  131. package/dist/packages/breadcrumbs/breadcrumbs.hydration.test.d.ts +1 -1
  132. package/dist/packages/breadcrumbs/breadcrumbs.hydration.test.js +55 -49
  133. package/dist/packages/breadcrumbs/breadcrumbs.js +284 -278
  134. package/dist/packages/breadcrumbs/breadcrumbs.js.map +2 -2
  135. package/dist/packages/breadcrumbs/breadcrumbs.react.stories.d.ts +3 -3
  136. package/dist/packages/breadcrumbs/breadcrumbs.react.stories.js +6 -6
  137. package/dist/packages/breadcrumbs/breadcrumbs.stories.d.ts +3 -3
  138. package/dist/packages/breadcrumbs/breadcrumbs.stories.js +27 -26
  139. package/dist/packages/breadcrumbs/breadcrumbs.test.d.ts +1 -1
  140. package/dist/packages/breadcrumbs/breadcrumbs.test.js +19 -17
  141. package/dist/packages/breadcrumbs/react.d.ts +1 -1
  142. package/dist/packages/breadcrumbs/react.js +4 -4
  143. package/dist/packages/breadcrumbs/styles.js +1 -1
  144. package/dist/packages/button/button.d.ts +9 -4
  145. package/dist/packages/button/button.hydration.test.d.ts +1 -1
  146. package/dist/packages/button/button.hydration.test.js +19 -19
  147. package/dist/packages/button/button.js +743 -717
  148. package/dist/packages/button/button.js.map +2 -2
  149. package/dist/packages/button/button.react.stories.d.ts +5 -5
  150. package/dist/packages/button/button.react.stories.js +30 -30
  151. package/dist/packages/button/button.react.test.js +13 -13
  152. package/dist/packages/button/button.stories.d.ts +4 -4
  153. package/dist/packages/button/button.stories.js +276 -167
  154. package/dist/packages/button/button.test.d.ts +1 -1
  155. package/dist/packages/button/button.test.js +36 -35
  156. package/dist/packages/button/react.d.ts +3 -3
  157. package/dist/packages/button/react.js +7 -7
  158. package/dist/packages/button/styles.js +373 -347
  159. package/dist/packages/card/card.d.ts +1 -1
  160. package/dist/packages/card/card.hydration.test.d.ts +1 -1
  161. package/dist/packages/card/card.hydration.test.js +14 -14
  162. package/dist/packages/card/card.js +305 -290
  163. package/dist/packages/card/card.js.map +2 -2
  164. package/dist/packages/card/card.react.stories.d.ts +3 -3
  165. package/dist/packages/card/card.react.stories.js +11 -11
  166. package/dist/packages/card/card.stories.d.ts +3 -3
  167. package/dist/packages/card/card.stories.js +36 -24
  168. package/dist/packages/card/card.test.d.ts +1 -1
  169. package/dist/packages/card/card.test.js +6 -6
  170. package/dist/packages/card/react.d.ts +1 -1
  171. package/dist/packages/card/react.js +4 -4
  172. package/dist/packages/card/styles.js +1 -1
  173. package/dist/packages/checkbox/checkbox.a11y.test.d.ts +1 -1
  174. package/dist/packages/checkbox/checkbox.a11y.test.js +47 -33
  175. package/dist/packages/checkbox/checkbox.d.ts +2 -2
  176. package/dist/packages/checkbox/checkbox.hydration.test.d.ts +1 -1
  177. package/dist/packages/checkbox/checkbox.hydration.test.js +21 -21
  178. package/dist/packages/checkbox/checkbox.js +475 -424
  179. package/dist/packages/checkbox/checkbox.js.map +2 -2
  180. package/dist/packages/checkbox/checkbox.react.stories.d.ts +2 -2
  181. package/dist/packages/checkbox/checkbox.react.stories.js +3 -3
  182. package/dist/packages/checkbox/checkbox.stories.d.ts +4 -4
  183. package/dist/packages/checkbox/checkbox.stories.js +99 -91
  184. package/dist/packages/checkbox/checkbox.test.d.ts +1 -1
  185. package/dist/packages/checkbox/checkbox.test.js +64 -64
  186. package/dist/packages/checkbox/react.d.ts +1 -1
  187. package/dist/packages/checkbox/react.js +6 -6
  188. package/dist/packages/checkbox/styles.js +183 -132
  189. package/dist/packages/checkbox-group/checkbox-group.a11y.test.d.ts +2 -2
  190. package/dist/packages/checkbox-group/checkbox-group.a11y.test.js +83 -73
  191. package/dist/packages/checkbox-group/checkbox-group.d.ts +16 -2
  192. package/dist/packages/checkbox-group/checkbox-group.hydration.test.d.ts +2 -2
  193. package/dist/packages/checkbox-group/checkbox-group.hydration.test.js +36 -19
  194. package/dist/packages/checkbox-group/checkbox-group.js +60 -55
  195. package/dist/packages/checkbox-group/checkbox-group.js.map +2 -2
  196. package/dist/packages/checkbox-group/checkbox-group.react.test.js +4 -4
  197. package/dist/packages/checkbox-group/checkbox-group.test.d.ts +2 -2
  198. package/dist/packages/checkbox-group/checkbox-group.test.js +96 -90
  199. package/dist/packages/checkbox-group/react.d.ts +2 -2
  200. package/dist/packages/checkbox-group/react.js +6 -6
  201. package/dist/packages/combobox/combobox.a11y.test.d.ts +2 -2
  202. package/dist/packages/combobox/combobox.a11y.test.js +72 -49
  203. package/dist/packages/combobox/combobox.d.ts +2 -2
  204. package/dist/packages/combobox/combobox.hydration.test.d.ts +1 -1
  205. package/dist/packages/combobox/combobox.hydration.test.js +45 -45
  206. package/dist/packages/combobox/combobox.js +332 -332
  207. package/dist/packages/combobox/combobox.js.map +3 -3
  208. package/dist/packages/combobox/combobox.react.stories.d.ts +3 -3
  209. package/dist/packages/combobox/combobox.react.stories.js +29 -29
  210. package/dist/packages/combobox/combobox.react.test.js +8 -8
  211. package/dist/packages/combobox/combobox.stories.d.ts +4 -4
  212. package/dist/packages/combobox/combobox.stories.js +100 -94
  213. package/dist/packages/combobox/combobox.test.d.ts +2 -2
  214. package/dist/packages/combobox/combobox.test.js +148 -133
  215. package/dist/packages/combobox/react.d.ts +2 -2
  216. package/dist/packages/combobox/react.js +14 -14
  217. package/dist/packages/combobox/styles.js +1 -1
  218. package/dist/packages/datepicker/DatePicker.test.d.ts +2 -2
  219. package/dist/packages/datepicker/DatePicker.test.js +46 -41
  220. package/dist/packages/datepicker/datepicker.d.ts +3 -3
  221. package/dist/packages/datepicker/datepicker.hydration.test.d.ts +1 -1
  222. package/dist/packages/datepicker/datepicker.hydration.test.js +21 -21
  223. package/dist/packages/datepicker/datepicker.js +665 -625
  224. package/dist/packages/datepicker/datepicker.js.map +3 -3
  225. package/dist/packages/datepicker/datepicker.react.stories.d.ts +3 -3
  226. package/dist/packages/datepicker/datepicker.react.stories.js +9 -9
  227. package/dist/packages/datepicker/datepicker.react.test.js +6 -6
  228. package/dist/packages/datepicker/datepicker.stories.d.ts +4 -4
  229. package/dist/packages/datepicker/datepicker.stories.js +32 -32
  230. package/dist/packages/datepicker/datepicker.test.d.ts +2 -2
  231. package/dist/packages/datepicker/datepicker.test.js +77 -79
  232. package/dist/packages/datepicker/react.d.ts +2 -2
  233. package/dist/packages/datepicker/react.js +16 -14
  234. package/dist/packages/datepicker/styles/w-datepicker-calendar.styles.js +13 -12
  235. package/dist/packages/datepicker/styles/w-datepicker-day.styles.js +58 -55
  236. package/dist/packages/datepicker/styles/w-datepicker-month.styles.js +60 -57
  237. package/dist/packages/datepicker/styles/w-datepicker.styles.js +87 -87
  238. package/dist/packages/datepicker/utils.d.ts +1 -1
  239. package/dist/packages/datepicker/utils.js +25 -19
  240. package/dist/packages/datepicker/utils.test.js +20 -20
  241. package/dist/packages/expandable/expandable.d.ts +4 -4
  242. package/dist/packages/expandable/expandable.hydration.test.d.ts +1 -1
  243. package/dist/packages/expandable/expandable.hydration.test.js +21 -21
  244. package/dist/packages/expandable/expandable.js +357 -330
  245. package/dist/packages/expandable/expandable.js.map +4 -4
  246. package/dist/packages/expandable/expandable.react.stories.d.ts +3 -3
  247. package/dist/packages/expandable/expandable.react.stories.js +7 -7
  248. package/dist/packages/expandable/expandable.react.test.js +15 -7
  249. package/dist/packages/expandable/expandable.stories.d.ts +5 -5
  250. package/dist/packages/expandable/expandable.stories.js +51 -45
  251. package/dist/packages/expandable/expandable.test.d.ts +1 -1
  252. package/dist/packages/expandable/expandable.test.js +19 -17
  253. package/dist/packages/expandable/react.d.ts +2 -2
  254. package/dist/packages/expandable/react.js +9 -9
  255. package/dist/packages/expandable/styles.js +1 -1
  256. package/dist/packages/global.d.ts +1 -0
  257. package/dist/packages/global.js +5 -0
  258. package/dist/packages/i18n.d.ts +1 -1
  259. package/dist/packages/i18n.js +37 -29
  260. package/dist/packages/icon/icon.d.ts +7 -2
  261. package/dist/packages/icon/icon.hydration.test.d.ts +1 -1
  262. package/dist/packages/icon/icon.hydration.test.js +25 -25
  263. package/dist/packages/icon/icon.js +31 -26
  264. package/dist/packages/icon/icon.js.map +2 -2
  265. package/dist/packages/icon/icon.react.stories.d.ts +1 -1
  266. package/dist/packages/icon/icon.react.stories.js +283 -284
  267. package/dist/packages/icon/icon.stories.d.ts +3 -3
  268. package/dist/packages/icon/icon.stories.js +299 -298
  269. package/dist/packages/icon/icon.test.d.ts +1 -1
  270. package/dist/packages/icon/icon.test.js +36 -28
  271. package/dist/packages/icon/react.d.ts +1 -1
  272. package/dist/packages/icon/react.js +4 -4
  273. package/dist/packages/icon/style.js +24 -25
  274. package/dist/packages/interaction-type-detection.d.ts +22 -0
  275. package/dist/packages/interaction-type-detection.js +38 -0
  276. package/dist/packages/link/link.d.ts +2 -2
  277. package/dist/packages/link/link.hydration.test.d.ts +1 -1
  278. package/dist/packages/link/link.hydration.test.js +27 -27
  279. package/dist/packages/link/link.js +709 -683
  280. package/dist/packages/link/link.js.map +2 -2
  281. package/dist/packages/link/link.react.stories.d.ts +3 -3
  282. package/dist/packages/link/link.react.stories.js +42 -42
  283. package/dist/packages/link/link.react.test.js +5 -3
  284. package/dist/packages/link/link.stories.d.ts +3 -3
  285. package/dist/packages/link/link.stories.js +51 -51
  286. package/dist/packages/link/link.test.d.ts +1 -1
  287. package/dist/packages/link/link.test.js +11 -7
  288. package/dist/packages/link/react.d.ts +2 -2
  289. package/dist/packages/link/react.js +6 -6
  290. package/dist/packages/link/styles.js +57 -57
  291. package/dist/packages/modal/index.d.ts +7 -7
  292. package/dist/packages/modal/index.js +7 -7
  293. package/dist/packages/modal/modal.d.ts +1 -1
  294. package/dist/packages/modal/modal.hydration.test.d.ts +1 -1
  295. package/dist/packages/modal/modal.hydration.test.js +12 -12
  296. package/dist/packages/modal/modal.js +405 -405
  297. package/dist/packages/modal/modal.js.map +2 -2
  298. package/dist/packages/modal/modal.react.stories.d.ts +3 -3
  299. package/dist/packages/modal/modal.react.stories.js +7 -6
  300. package/dist/packages/modal/modal.react.test.js +5 -5
  301. package/dist/packages/modal/modal.stories.d.ts +6 -6
  302. package/dist/packages/modal/modal.stories.js +253 -238
  303. package/dist/packages/modal/react.d.ts +4 -4
  304. package/dist/packages/modal/react.js +13 -13
  305. package/dist/packages/modal/util.js +2 -2
  306. package/dist/packages/modal-footer/modal-footer.d.ts +1 -1
  307. package/dist/packages/modal-footer/modal-footer.js +291 -291
  308. package/dist/packages/modal-footer/modal-footer.js.map +2 -2
  309. package/dist/packages/modal-footer/react.d.ts +1 -1
  310. package/dist/packages/modal-footer/react.js +4 -4
  311. package/dist/packages/modal-header/modal-header.d.ts +2 -2
  312. package/dist/packages/modal-header/modal-header.js +439 -418
  313. package/dist/packages/modal-header/modal-header.js.map +2 -2
  314. package/dist/packages/modal-header/modal-header.react.test.js +5 -3
  315. package/dist/packages/modal-header/react.d.ts +2 -2
  316. package/dist/packages/modal-header/react.js +8 -8
  317. package/dist/packages/page-indicator/page-indicator.d.ts +1 -1
  318. package/dist/packages/page-indicator/page-indicator.hydration.test.d.ts +1 -1
  319. package/dist/packages/page-indicator/page-indicator.hydration.test.js +22 -22
  320. package/dist/packages/page-indicator/page-indicator.js +26 -26
  321. package/dist/packages/page-indicator/page-indicator.js.map +2 -2
  322. package/dist/packages/page-indicator/page-indicator.react.stories.d.ts +3 -3
  323. package/dist/packages/page-indicator/page-indicator.react.stories.js +11 -11
  324. package/dist/packages/page-indicator/page-indicator.react.test.js +5 -5
  325. package/dist/packages/page-indicator/page-indicator.stories.d.ts +3 -3
  326. package/dist/packages/page-indicator/page-indicator.stories.js +56 -27
  327. package/dist/packages/page-indicator/page-indicator.test.d.ts +1 -1
  328. package/dist/packages/page-indicator/page-indicator.test.js +110 -70
  329. package/dist/packages/page-indicator/react.d.ts +2 -2
  330. package/dist/packages/page-indicator/react.js +7 -7
  331. package/dist/packages/page-indicator/style.js +21 -21
  332. package/dist/packages/pagination/pagination.a11y.test.d.ts +1 -1
  333. package/dist/packages/pagination/pagination.a11y.test.js +59 -25
  334. package/dist/packages/pagination/pagination.d.ts +3 -3
  335. package/dist/packages/pagination/pagination.hydration.test.d.ts +1 -1
  336. package/dist/packages/pagination/pagination.hydration.test.js +19 -19
  337. package/dist/packages/pagination/pagination.js +380 -349
  338. package/dist/packages/pagination/pagination.js.map +2 -2
  339. package/dist/packages/pagination/pagination.react.stories.d.ts +5 -5
  340. package/dist/packages/pagination/pagination.react.stories.js +8 -8
  341. package/dist/packages/pagination/pagination.react.test.js +6 -6
  342. package/dist/packages/pagination/pagination.stories.d.ts +3 -3
  343. package/dist/packages/pagination/pagination.stories.js +18 -18
  344. package/dist/packages/pagination/pagination.test.d.ts +1 -1
  345. package/dist/packages/pagination/pagination.test.js +146 -69
  346. package/dist/packages/pagination/react.d.ts +3 -3
  347. package/dist/packages/pagination/react.js +12 -10
  348. package/dist/packages/pagination/styles.js +1 -1
  349. package/dist/packages/pill/pill.d.ts +2 -2
  350. package/dist/packages/pill/pill.hydration.test.d.ts +1 -1
  351. package/dist/packages/pill/pill.hydration.test.js +14 -14
  352. package/dist/packages/pill/pill.js +334 -311
  353. package/dist/packages/pill/pill.js.map +2 -2
  354. package/dist/packages/pill/pill.react.stories.d.ts +3 -3
  355. package/dist/packages/pill/pill.react.stories.js +3 -3
  356. package/dist/packages/pill/pill.react.test.js +8 -8
  357. package/dist/packages/pill/pill.stories.d.ts +3 -3
  358. package/dist/packages/pill/pill.stories.js +8 -8
  359. package/dist/packages/pill/pill.test.d.ts +1 -1
  360. package/dist/packages/pill/pill.test.js +17 -15
  361. package/dist/packages/pill/react.d.ts +2 -2
  362. package/dist/packages/pill/react.js +18 -14
  363. package/dist/packages/pill/styles.js +1 -1
  364. package/dist/packages/radio/base-element.d.ts +3 -3
  365. package/dist/packages/radio/base-element.js +3 -3
  366. package/dist/packages/radio/custom-error-validator.d.ts +1 -1
  367. package/dist/packages/radio/custom-error-validator.js +3 -3
  368. package/dist/packages/radio/form-associated-element.d.ts +8 -8
  369. package/dist/packages/radio/form-associated-element.js +27 -26
  370. package/dist/packages/radio/host-styles.js +9 -9
  371. package/dist/packages/radio/invalid.d.ts +1 -1
  372. package/dist/packages/radio/invalid.js +1 -1
  373. package/dist/packages/radio/radio-styles.js +199 -160
  374. package/dist/packages/radio/radio.a11y.test.d.ts +2 -2
  375. package/dist/packages/radio/radio.a11y.test.js +60 -58
  376. package/dist/packages/radio/radio.d.ts +3 -3
  377. package/dist/packages/radio/radio.hydration.test.d.ts +1 -1
  378. package/dist/packages/radio/radio.hydration.test.js +23 -14
  379. package/dist/packages/radio/radio.js +485 -446
  380. package/dist/packages/radio/radio.js.map +3 -3
  381. package/dist/packages/radio/radio.react.stories.d.ts +2 -2
  382. package/dist/packages/radio/radio.react.stories.js +3 -3
  383. package/dist/packages/radio/radio.stories.d.ts +4 -4
  384. package/dist/packages/radio/radio.stories.js +152 -136
  385. package/dist/packages/radio/radio.test.d.ts +1 -1
  386. package/dist/packages/radio/radio.test.js +74 -73
  387. package/dist/packages/radio/react.d.ts +1 -1
  388. package/dist/packages/radio/react.js +4 -4
  389. package/dist/packages/radio/required-validator.d.ts +1 -1
  390. package/dist/packages/radio/required-validator.js +12 -7
  391. package/dist/packages/radio/slot.d.ts +1 -1
  392. package/dist/packages/radio/slot.js +11 -8
  393. package/dist/packages/radio/watch.d.ts +1 -1
  394. package/dist/packages/radio/watch.js +3 -1
  395. package/dist/packages/radio-group/radio-group-styles.js +121 -88
  396. package/dist/packages/radio-group/radio-group.a11y.test.d.ts +2 -2
  397. package/dist/packages/radio-group/radio-group.a11y.test.js +81 -79
  398. package/dist/packages/radio-group/radio-group.d.ts +14 -5
  399. package/dist/packages/radio-group/radio-group.hydration.test.d.ts +2 -2
  400. package/dist/packages/radio-group/radio-group.hydration.test.js +29 -18
  401. package/dist/packages/radio-group/radio-group.js +648 -560
  402. package/dist/packages/radio-group/radio-group.js.map +3 -3
  403. package/dist/packages/radio-group/radio-group.react.test.js +4 -4
  404. package/dist/packages/radio-group/radio-group.test.d.ts +2 -2
  405. package/dist/packages/radio-group/radio-group.test.js +234 -229
  406. package/dist/packages/radio-group/react.d.ts +2 -2
  407. package/dist/packages/radio-group/react.js +10 -10
  408. package/dist/packages/select/react.d.ts +2 -2
  409. package/dist/packages/select/react.js +11 -11
  410. package/dist/packages/select/select.a11y.test.d.ts +1 -1
  411. package/dist/packages/select/select.a11y.test.js +98 -91
  412. package/dist/packages/select/select.d.ts +4 -4
  413. package/dist/packages/select/select.hydration.test.d.ts +1 -1
  414. package/dist/packages/select/select.hydration.test.js +16 -16
  415. package/dist/packages/select/select.js +350 -331
  416. package/dist/packages/select/select.js.map +2 -2
  417. package/dist/packages/select/select.react.stories.d.ts +3 -3
  418. package/dist/packages/select/select.react.stories.js +7 -7
  419. package/dist/packages/select/select.react.test.js +6 -6
  420. package/dist/packages/select/select.stories.d.ts +3 -3
  421. package/dist/packages/select/select.stories.js +51 -48
  422. package/dist/packages/select/select.test.d.ts +1 -1
  423. package/dist/packages/select/select.test.js +175 -178
  424. package/dist/packages/select/styles.js +1 -1
  425. package/dist/packages/slider/Slider.d.ts +1 -1
  426. package/dist/packages/slider/Slider.js +4 -4
  427. package/dist/packages/slider/index.d.ts +2 -2
  428. package/dist/packages/slider/index.js +2 -2
  429. package/dist/packages/slider/react.d.ts +3 -3
  430. package/dist/packages/slider/react.js +9 -9
  431. package/dist/packages/slider/slider.d.ts +3 -3
  432. package/dist/packages/slider/slider.hydration.test.d.ts +1 -1
  433. package/dist/packages/slider/slider.hydration.test.js +39 -20
  434. package/dist/packages/slider/slider.js +480 -462
  435. package/dist/packages/slider/slider.js.map +2 -2
  436. package/dist/packages/slider/slider.react.stories.d.ts +3 -3
  437. package/dist/packages/slider/slider.react.stories.js +31 -34
  438. package/dist/packages/slider/slider.react.test.js +6 -6
  439. package/dist/packages/slider/slider.stories.d.ts +7 -7
  440. package/dist/packages/slider/slider.stories.js +332 -340
  441. package/dist/packages/slider/slider.test.d.ts +5 -5
  442. package/dist/packages/slider/slider.test.js +367 -334
  443. package/dist/packages/slider/styles/w-slider.styles.js +166 -148
  444. package/dist/packages/slider/styles.js +1 -1
  445. package/dist/packages/slider-thumb/SliderThumb.d.ts +1 -1
  446. package/dist/packages/slider-thumb/SliderThumb.js +4 -4
  447. package/dist/packages/slider-thumb/oddbird-css-anchor-positioning.d.ts +1 -1
  448. package/dist/packages/slider-thumb/oddbird-css-anchor-positioning.js +1 -1
  449. package/dist/packages/slider-thumb/react.d.ts +3 -3
  450. package/dist/packages/slider-thumb/react.js +11 -9
  451. package/dist/packages/slider-thumb/slider-thumb.d.ts +3 -3
  452. package/dist/packages/slider-thumb/slider-thumb.hydration.test.d.ts +1 -1
  453. package/dist/packages/slider-thumb/slider-thumb.hydration.test.js +26 -17
  454. package/dist/packages/slider-thumb/slider-thumb.js +545 -548
  455. package/dist/packages/slider-thumb/slider-thumb.js.map +3 -3
  456. package/dist/packages/slider-thumb/slider-thumb.react.test.js +9 -5
  457. package/dist/packages/slider-thumb/styles/w-slider-thumb.styles.js +189 -188
  458. package/dist/packages/slider-thumb/styles.js +1 -1
  459. package/dist/packages/snackbar/locales/da/messages.d.mts +1 -0
  460. package/dist/packages/snackbar/locales/da/messages.mjs +1 -0
  461. package/dist/packages/snackbar/locales/en/messages.d.mts +1 -0
  462. package/dist/packages/snackbar/locales/en/messages.mjs +1 -0
  463. package/dist/packages/snackbar/locales/fi/messages.d.mts +1 -0
  464. package/dist/packages/snackbar/locales/fi/messages.mjs +1 -0
  465. package/dist/packages/snackbar/locales/nb/messages.d.mts +1 -0
  466. package/dist/packages/snackbar/locales/nb/messages.mjs +1 -0
  467. package/dist/packages/snackbar/locales/sv/messages.d.mts +1 -0
  468. package/dist/packages/snackbar/locales/sv/messages.mjs +1 -0
  469. package/dist/packages/snackbar/react.d.ts +2 -0
  470. package/dist/packages/snackbar/react.js +11 -0
  471. package/dist/packages/snackbar/snackbar.d.ts +132 -0
  472. package/dist/packages/snackbar/snackbar.hydration.test.d.ts +1 -0
  473. package/dist/packages/snackbar/snackbar.hydration.test.js +13 -0
  474. package/dist/packages/snackbar/snackbar.js +2665 -0
  475. package/dist/packages/snackbar/snackbar.js.map +7 -0
  476. package/dist/packages/snackbar/snackbar.react.stories.d.ts +12 -0
  477. package/dist/packages/snackbar/snackbar.react.stories.js +160 -0
  478. package/dist/packages/snackbar/snackbar.stories.d.ts +20 -0
  479. package/dist/packages/snackbar/snackbar.stories.js +363 -0
  480. package/dist/packages/snackbar/snackbar.test.d.ts +4 -0
  481. package/dist/packages/snackbar/snackbar.test.js +17 -0
  482. package/dist/packages/snackbar/styles.d.ts +1 -0
  483. package/dist/packages/snackbar/styles.js +35 -0
  484. package/dist/packages/snackbar-item/react.d.ts +5 -0
  485. package/dist/packages/snackbar-item/react.js +16 -0
  486. package/dist/packages/snackbar-item/snackbar-item.d.ts +69 -0
  487. package/dist/packages/snackbar-item/snackbar-item.js +2620 -0
  488. package/dist/packages/snackbar-item/snackbar-item.js.map +7 -0
  489. package/dist/packages/snackbar-item/snackbar-item.react.test.d.ts +1 -0
  490. package/dist/packages/snackbar-item/snackbar-item.react.test.js +5 -0
  491. package/dist/packages/snackbar-item/styles.d.ts +1 -0
  492. package/dist/packages/snackbar-item/styles.js +133 -0
  493. package/dist/packages/step/react.d.ts +1 -1
  494. package/dist/packages/step/react.js +4 -4
  495. package/dist/packages/step/step.d.ts +2 -2
  496. package/dist/packages/step/step.hydration.test.d.ts +1 -1
  497. package/dist/packages/step/step.hydration.test.js +10 -10
  498. package/dist/packages/step/step.js +334 -312
  499. package/dist/packages/step/step.js.map +2 -2
  500. package/dist/packages/step-indicator/index.d.ts +2 -2
  501. package/dist/packages/step-indicator/index.js +2 -2
  502. package/dist/packages/step-indicator/react.d.ts +2 -2
  503. package/dist/packages/step-indicator/react.js +5 -5
  504. package/dist/packages/step-indicator/step-indicator.a11y.test.d.ts +2 -2
  505. package/dist/packages/step-indicator/step-indicator.a11y.test.js +48 -46
  506. package/dist/packages/step-indicator/step-indicator.d.ts +1 -1
  507. package/dist/packages/step-indicator/step-indicator.hydration.test.d.ts +1 -1
  508. package/dist/packages/step-indicator/step-indicator.hydration.test.js +10 -10
  509. package/dist/packages/step-indicator/step-indicator.js +280 -276
  510. package/dist/packages/step-indicator/step-indicator.js.map +2 -2
  511. package/dist/packages/step-indicator/stepindicator.react.stories.d.ts +2 -2
  512. package/dist/packages/step-indicator/stepindicator.react.stories.js +3 -3
  513. package/dist/packages/step-indicator/stepindicator.stories.d.ts +3 -3
  514. package/dist/packages/step-indicator/stepindicator.stories.js +129 -129
  515. package/dist/packages/step-indicator/styles.js +1 -1
  516. package/dist/packages/styles.js +274 -274
  517. package/dist/packages/switch/react.d.ts +1 -1
  518. package/dist/packages/switch/react.js +6 -6
  519. package/dist/packages/switch/styles.js +1 -1
  520. package/dist/packages/switch/switch.a11y.test.d.ts +1 -1
  521. package/dist/packages/switch/switch.a11y.test.js +46 -38
  522. package/dist/packages/switch/switch.d.ts +1 -1
  523. package/dist/packages/switch/switch.hydration.test.d.ts +1 -1
  524. package/dist/packages/switch/switch.hydration.test.js +23 -23
  525. package/dist/packages/switch/switch.js +299 -299
  526. package/dist/packages/switch/switch.js.map +2 -2
  527. package/dist/packages/switch/switch.react.stories.d.ts +2 -2
  528. package/dist/packages/switch/switch.react.stories.js +2 -2
  529. package/dist/packages/switch/switch.stories.d.ts +2 -2
  530. package/dist/packages/switch/switch.stories.js +42 -37
  531. package/dist/packages/switch/switch.test.d.ts +1 -1
  532. package/dist/packages/switch/switch.test.js +30 -35
  533. package/dist/packages/tab/react.d.ts +6 -4
  534. package/dist/packages/tab/react.js +11 -10
  535. package/dist/packages/tab/styles.d.ts +1 -0
  536. package/dist/packages/tab/styles.js +2 -0
  537. package/dist/packages/tab/tab.d.ts +5 -5
  538. package/dist/packages/tab/tab.hydration.test.d.ts +1 -1
  539. package/dist/packages/tab/tab.hydration.test.js +18 -12
  540. package/dist/packages/tab/tab.js +305 -304
  541. package/dist/packages/tab/tab.js.map +3 -3
  542. package/dist/packages/tab/tab.react.test.js +5 -3
  543. package/dist/packages/tab-panel/react.d.ts +3 -2
  544. package/dist/packages/tab-panel/react.js +11 -5
  545. package/dist/packages/tab-panel/tab-panel.d.ts +3 -3
  546. package/dist/packages/tab-panel/tab-panel.hydration.test.d.ts +1 -1
  547. package/dist/packages/tab-panel/tab-panel.hydration.test.js +13 -10
  548. package/dist/packages/tab-panel/tab-panel.js +289 -287
  549. package/dist/packages/tab-panel/tab-panel.js.map +2 -2
  550. package/dist/packages/tabs/index.d.ts +4 -4
  551. package/dist/packages/tabs/index.js +3 -3
  552. package/dist/packages/tabs/react.d.ts +27 -8
  553. package/dist/packages/tabs/react.js +30 -9
  554. package/dist/packages/tabs/styles.js +1 -1
  555. package/dist/packages/tabs/tabs.a11y.test.d.ts +3 -3
  556. package/dist/packages/tabs/tabs.a11y.test.js +188 -169
  557. package/dist/packages/tabs/tabs.d.ts +3 -3
  558. package/dist/packages/tabs/tabs.hydration.test.d.ts +3 -1
  559. package/dist/packages/tabs/tabs.hydration.test.js +22 -8
  560. package/dist/packages/tabs/tabs.js +289 -282
  561. package/dist/packages/tabs/tabs.js.map +2 -2
  562. package/dist/packages/tabs/tabs.react.stories.d.ts +12 -10
  563. package/dist/packages/tabs/tabs.react.stories.js +28 -28
  564. package/dist/packages/tabs/tabs.stories.d.ts +4 -4
  565. package/dist/packages/tabs/tabs.stories.js +101 -95
  566. package/dist/packages/tabs/tabs.test.d.ts +3 -3
  567. package/dist/packages/tabs/tabs.test.js +136 -122
  568. package/dist/packages/textarea/react.d.ts +2 -2
  569. package/dist/packages/textarea/react.js +17 -17
  570. package/dist/packages/textarea/styles.js +1 -1
  571. package/dist/packages/textarea/textarea.a11y.test.d.ts +1 -1
  572. package/dist/packages/textarea/textarea.a11y.test.js +89 -57
  573. package/dist/packages/textarea/textarea.d.ts +1 -1
  574. package/dist/packages/textarea/textarea.hydration.test.d.ts +1 -1
  575. package/dist/packages/textarea/textarea.hydration.test.js +19 -19
  576. package/dist/packages/textarea/textarea.js +300 -298
  577. package/dist/packages/textarea/textarea.js.map +2 -2
  578. package/dist/packages/textarea/textarea.react.stories.d.ts +3 -3
  579. package/dist/packages/textarea/textarea.react.stories.js +13 -13
  580. package/dist/packages/textarea/textarea.react.test.js +7 -7
  581. package/dist/packages/textarea/textarea.stories.d.ts +3 -3
  582. package/dist/packages/textarea/textarea.stories.js +44 -42
  583. package/dist/packages/textarea/textarea.test.d.ts +1 -1
  584. package/dist/packages/textarea/textarea.test.js +124 -88
  585. package/dist/packages/textfield/react.d.ts +2 -2
  586. package/dist/packages/textfield/react.js +17 -17
  587. package/dist/packages/textfield/styles/w-textfield.styles.js +60 -58
  588. package/dist/packages/textfield/styles.js +1 -1
  589. package/dist/packages/textfield/textfield.d.ts +3 -3
  590. package/dist/packages/textfield/textfield.hydration.test.d.ts +1 -1
  591. package/dist/packages/textfield/textfield.hydration.test.js +19 -19
  592. package/dist/packages/textfield/textfield.js +376 -368
  593. package/dist/packages/textfield/textfield.js.map +3 -3
  594. package/dist/packages/textfield/textfield.react.stories.d.ts +3 -3
  595. package/dist/packages/textfield/textfield.react.stories.js +31 -31
  596. package/dist/packages/textfield/textfield.react.test.js +7 -7
  597. package/dist/packages/textfield/textfield.stories.d.ts +4 -4
  598. package/dist/packages/textfield/textfield.stories.js +107 -89
  599. package/dist/packages/textfield/textfield.test.d.ts +2 -2
  600. package/dist/packages/textfield/textfield.test.js +103 -71
  601. package/dist/packages/toast/api.d.ts +1 -1
  602. package/dist/packages/toast/api.js +3 -3
  603. package/dist/packages/toast/index.d.ts +5 -5
  604. package/dist/packages/toast/index.js +5 -5
  605. package/dist/packages/toast/toast.d.ts +4 -4
  606. package/dist/packages/toast/toast.js +346 -317
  607. package/dist/packages/toast/toast.js.map +4 -4
  608. package/dist/packages/toast/toast.stories.d.ts +4 -4
  609. package/dist/packages/toast/toast.stories.js +37 -16
  610. package/dist/packages/toast/toast.test.d.ts +1 -1
  611. package/dist/packages/toast/toast.test.js +48 -31
  612. package/dist/packages/toast/types.d.ts +1 -1
  613. package/dist/packages/toast-container/styles.js +1 -1
  614. package/dist/packages/toast-container/toast-container.d.ts +2 -2
  615. package/dist/packages/toast-container/toast-container.js +291 -290
  616. package/dist/packages/toast-container/toast-container.js.map +2 -2
  617. package/dist/packages/utils/element-collapse.d.ts +12 -0
  618. package/dist/packages/utils/element-collapse.js +102 -0
  619. package/dist/packages/utils/expand-transition.d.ts +1 -1
  620. package/dist/packages/utils/expand-transition.js +12 -10
  621. package/dist/packages/utils/unstyled-heading.d.ts +1 -1
  622. package/dist/packages/utils/unstyled-heading.js +4 -4
  623. package/dist/packages/utils/window-exists.js +1 -1
  624. package/dist/packages/utils.js +2 -2
  625. package/dist/setup-tests.d.ts +3 -3
  626. package/dist/setup-tests.js +16 -13
  627. package/dist/tests/react-hydration.js +29 -30
  628. package/dist/tests/react-ssr-attributes.d.ts +1 -1
  629. package/dist/tests/react-ssr-attributes.js +4 -4
  630. package/dist/web-types.json +110 -22
  631. package/eik/index.js +12 -12
  632. package/package.json +11 -18
@@ -0,0 +1,363 @@
1
+ import { getStorybookHelpers } from "@wc-toolkit/storybook-helpers";
2
+ import { html } from "lit";
3
+ // @ts-expect-error You'll find no types here, TypeScript the Grey
4
+ import "virtual:uno.css";
5
+ import "../attention/attention.js";
6
+ import "../button/button.js";
7
+ import "../icon/icon.js";
8
+ import "../modal/modal.js";
9
+ import "../modal-header/modal-header.js";
10
+ import "../modal-footer/modal-footer.js";
11
+ import "./snackbar.js";
12
+ import "../snackbar-item/snackbar-item.js";
13
+ import { SnackbarDuration } from "../snackbar-item/snackbar-item.js";
14
+ const { events: snackbarEvents, args: snackbarArgs, argTypes: snackbarArgTypes, } = getStorybookHelpers("w-snackbar");
15
+ const meta = {
16
+ title: "Overlays/Snackbar",
17
+ args: {
18
+ ...snackbarArgs,
19
+ canClose: true,
20
+ duration: undefined,
21
+ },
22
+ argTypes: {
23
+ ...snackbarArgTypes,
24
+ duration: {
25
+ control: { type: "select" },
26
+ options: ["4 seconds", "10 seconds", "Infinite"],
27
+ },
28
+ },
29
+ parameters: {
30
+ actions: {
31
+ handles: snackbarEvents,
32
+ },
33
+ },
34
+ };
35
+ export default meta;
36
+ export const Default = {
37
+ render({ duration, canClose }) {
38
+ const durationNum = duration === "Infinite"
39
+ ? SnackbarDuration.Infinite
40
+ : duration === "10 seconds"
41
+ ? SnackbarDuration.Long
42
+ : SnackbarDuration.Short;
43
+ return html `
44
+ <div class="flex gap-8">
45
+ <w-button
46
+ @click="${() => {
47
+ const snackbar = document.querySelector("w-snackbar");
48
+ snackbar.create("The message should be short, but if it is not and spans multiple lines then the icon and actions should be centered vertically", { variant: "positive", duration: durationNum, canClose });
49
+ }}"
50
+ >Positive variant</w-button
51
+ >
52
+
53
+ <w-button
54
+ @click="${() => {
55
+ const snackbar = document.querySelector("w-snackbar");
56
+ snackbar.create("The message should be short", {
57
+ variant: "warning",
58
+ duration: durationNum,
59
+ canClose,
60
+ });
61
+ }}"
62
+ >Warning variant</w-button
63
+ >
64
+
65
+ <w-button
66
+ @click="${() => {
67
+ const snackbar = document.querySelector("w-snackbar");
68
+ snackbar.create("The message should be short", {
69
+ variant: "negative",
70
+ duration: durationNum,
71
+ canClose,
72
+ });
73
+ }}"
74
+ >Negative variant</w-button
75
+ >
76
+
77
+ <w-button
78
+ @click="${() => {
79
+ const snackbar = document.querySelector("w-snackbar");
80
+ snackbar.create("The message should be short", {
81
+ variant: "info",
82
+ duration: durationNum,
83
+ canClose,
84
+ });
85
+ }}"
86
+ >Info variant</w-button
87
+ >
88
+
89
+ <w-button
90
+ @click="${() => {
91
+ const snackbar = document.querySelector("w-snackbar");
92
+ snackbar.create("The message should be short", {
93
+ duration: durationNum,
94
+ canClose,
95
+ });
96
+ }}"
97
+ >Neutral variant</w-button
98
+ >
99
+
100
+ <w-button
101
+ @click="${() => {
102
+ const snackbar = document.querySelector("w-snackbar");
103
+ const item = snackbar.create("The message should be short", {
104
+ duration: durationNum,
105
+ canClose,
106
+ });
107
+ const customIcon = document.createElement("w-icon");
108
+ customIcon.name = "Rocket";
109
+ customIcon.slot = "icon";
110
+ item.prepend(customIcon);
111
+ }}"
112
+ >Neutral w/ icon</w-button
113
+ >
114
+ </div>
115
+ `;
116
+ },
117
+ };
118
+ export const WithAction = {
119
+ render({ duration, canClose }) {
120
+ const durationNum = duration === "Infinite"
121
+ ? SnackbarDuration.Infinite
122
+ : duration === "10 seconds"
123
+ ? SnackbarDuration.Long
124
+ : SnackbarDuration.Short;
125
+ return html `
126
+ <div class="flex gap-8">
127
+ <w-button
128
+ @click="${() => {
129
+ const snackbar = document.querySelector("w-snackbar");
130
+ snackbar.create("The message should be short, but if it is not and spans multiple lines then the icon and actions should be centered vertically", {
131
+ variant: "positive",
132
+ duration: durationNum,
133
+ canClose,
134
+ action: {
135
+ label: "Action",
136
+ onclick() {
137
+ const modal = document.getElementById("with-action-modal");
138
+ modal.show = true;
139
+ },
140
+ },
141
+ });
142
+ }}"
143
+ >Positive variant</w-button
144
+ >
145
+
146
+ <w-button
147
+ @click="${() => {
148
+ const snackbar = document.querySelector("w-snackbar");
149
+ snackbar.create("The message should be short", {
150
+ variant: "warning",
151
+ duration: durationNum,
152
+ canClose,
153
+ action: {
154
+ label: "Action",
155
+ onclick() {
156
+ const modal = document.getElementById("with-action-modal");
157
+ modal.show = true;
158
+ },
159
+ },
160
+ });
161
+ }}"
162
+ >Warning variant</w-button
163
+ >
164
+
165
+ <w-button
166
+ @click="${() => {
167
+ const snackbar = document.querySelector("w-snackbar");
168
+ snackbar.create("The message should be short", {
169
+ variant: "negative",
170
+ duration: durationNum,
171
+ canClose,
172
+ action: {
173
+ label: "Action",
174
+ onclick() {
175
+ const modal = document.getElementById("with-action-modal");
176
+ modal.show = true;
177
+ },
178
+ },
179
+ });
180
+ }}"
181
+ >Negative variant</w-button
182
+ >
183
+
184
+ <w-button
185
+ @click="${() => {
186
+ const snackbar = document.querySelector("w-snackbar");
187
+ snackbar.create("The message should be short", {
188
+ variant: "info",
189
+ duration: durationNum,
190
+ canClose,
191
+ action: {
192
+ label: "Action",
193
+ onclick() {
194
+ const modal = document.getElementById("with-action-modal");
195
+ modal.show = true;
196
+ },
197
+ },
198
+ });
199
+ }}"
200
+ >Info variant</w-button
201
+ >
202
+
203
+ <w-button
204
+ @click="${() => {
205
+ const snackbar = document.querySelector("w-snackbar");
206
+ snackbar.create("The message should be short", {
207
+ duration: durationNum,
208
+ canClose,
209
+ action: {
210
+ label: "Action",
211
+ onclick() {
212
+ const modal = document.getElementById("with-action-modal");
213
+ modal.show = true;
214
+ },
215
+ },
216
+ });
217
+ }}"
218
+ >Neutral variant</w-button
219
+ >
220
+ </div>
221
+
222
+ <w-modal id="with-action-modal">
223
+ <w-modal-header slot="header" no-close></w-modal-header>
224
+ <div slot="content">
225
+ <p>Action was triggered</p>
226
+ </div>
227
+ <w-modal-footer slot="footer">
228
+ <div class="flex gap-16">
229
+ <w-button
230
+ variant="primary"
231
+ commandfor="with-action-modal"
232
+ command="--close"
233
+ >Close</w-button
234
+ >
235
+ </div>
236
+ </w-modal-footer>
237
+ </w-modal>
238
+ `;
239
+ },
240
+ };
241
+ export const WithLongActionLabel = {
242
+ render({ duration, canClose }) {
243
+ const durationNum = duration === "Infinite"
244
+ ? SnackbarDuration.Infinite
245
+ : duration === "10 seconds"
246
+ ? SnackbarDuration.Long
247
+ : SnackbarDuration.Short;
248
+ return html `
249
+ <div class="flex gap-8">
250
+ <w-button
251
+ @click="${() => {
252
+ const snackbar = document.querySelector("w-snackbar");
253
+ snackbar.create("The message should be short, but if it is not and spans multiple lines then the icon and actions should be centered vertically", {
254
+ variant: "positive",
255
+ duration: durationNum,
256
+ canClose,
257
+ action: {
258
+ label: "Long action label",
259
+ onclick() {
260
+ const modal = document.getElementById("with-long-action-modal");
261
+ modal.show = true;
262
+ },
263
+ },
264
+ });
265
+ }}"
266
+ >Positive variant</w-button
267
+ >
268
+
269
+ <w-button
270
+ @click="${() => {
271
+ const snackbar = document.querySelector("w-snackbar");
272
+ snackbar.create("The message should be short", {
273
+ variant: "warning",
274
+ duration: durationNum,
275
+ canClose,
276
+ action: {
277
+ label: "Long action label",
278
+ onclick() {
279
+ const modal = document.getElementById("with-long-action-modal");
280
+ modal.show = true;
281
+ },
282
+ },
283
+ });
284
+ }}"
285
+ >Warning variant</w-button
286
+ >
287
+
288
+ <w-button
289
+ @click="${() => {
290
+ const snackbar = document.querySelector("w-snackbar");
291
+ snackbar.create("The message should be short", {
292
+ variant: "negative",
293
+ duration: durationNum,
294
+ canClose,
295
+ action: {
296
+ label: "Long action label",
297
+ onclick() {
298
+ const modal = document.getElementById("with-long-action-modal");
299
+ modal.show = true;
300
+ },
301
+ },
302
+ });
303
+ }}"
304
+ >Negative variant</w-button
305
+ >
306
+
307
+ <w-button
308
+ @click="${() => {
309
+ const snackbar = document.querySelector("w-snackbar");
310
+ snackbar.create("The message should be short", {
311
+ variant: "info",
312
+ duration: durationNum,
313
+ canClose,
314
+ action: {
315
+ label: "Long action label",
316
+ onclick() {
317
+ const modal = document.getElementById("with-long-action-modal");
318
+ modal.show = true;
319
+ },
320
+ },
321
+ });
322
+ }}"
323
+ >Info variant</w-button
324
+ >
325
+
326
+ <w-button
327
+ @click="${() => {
328
+ const snackbar = document.querySelector("w-snackbar");
329
+ snackbar.create("The message should be short", {
330
+ duration: durationNum,
331
+ canClose,
332
+ action: {
333
+ label: "Long action label",
334
+ onclick() {
335
+ const modal = document.getElementById("with-long-action-modal");
336
+ modal.show = true;
337
+ },
338
+ },
339
+ });
340
+ }}"
341
+ >Neutral variant</w-button
342
+ >
343
+ </div>
344
+
345
+ <w-modal id="with-long-action-modal">
346
+ <w-modal-header slot="header" no-close></w-modal-header>
347
+ <div slot="content">
348
+ <p>Action was triggered</p>
349
+ </div>
350
+ <w-modal-footer slot="footer">
351
+ <div class="flex gap-16">
352
+ <w-button
353
+ variant="primary"
354
+ commandfor="with-long-action-modal"
355
+ command="--close"
356
+ >Close</w-button
357
+ >
358
+ </div>
359
+ </w-modal-footer>
360
+ </w-modal>
361
+ `;
362
+ },
363
+ };
@@ -0,0 +1,4 @@
1
+ import "../button/button.js";
2
+ import "../icon/icon.js";
3
+ import "../snackbar-item/snackbar-item.js";
4
+ import "./snackbar.js";
@@ -0,0 +1,17 @@
1
+ import { html } from "lit";
2
+ import { expect, test } from "vitest";
3
+ import { render } from "vitest-browser-lit";
4
+ import "../button/button.js";
5
+ import "../icon/icon.js";
6
+ import "../snackbar-item/snackbar-item.js";
7
+ import "./snackbar.js";
8
+ test("exposes a create function that adds snackbar items", async () => {
9
+ const component = html `<w-snackbar></w-snackbar>`;
10
+ const page = render(component);
11
+ const snackbar = page.container.querySelector("w-snackbar");
12
+ if (!snackbar)
13
+ return expect(snackbar).not.toBeNull();
14
+ await snackbar.updateComplete;
15
+ snackbar.create("Test message");
16
+ await expect.element(page.getByText("Test message")).toBeVisible();
17
+ });
@@ -0,0 +1 @@
1
+ export declare const styles: import("lit").CSSResult;
@@ -0,0 +1,35 @@
1
+ import { css } from "lit";
2
+ export const styles = css `
3
+ :host {
4
+ position: fixed;
5
+ pointer-events: none;
6
+
7
+ --_snackbar-gap: var(--w-c-snackbar-container-gap, 8px);
8
+ --_snackbar-position-top: var(--w-c-snackbar-position-top, initial);
9
+ --_snackbar-position-right: var(--w-c-snackbar-position-right, 0);
10
+ --_snackbar-position-bottom: var(--w-c-snackbar-position-bottom, 16px);
11
+ --_snackbar-position-left: var(--w-c-snackbar-position-left, 0);
12
+ --_snackbar-z-index: var(--w-c-snackbar-z-index, 50);
13
+
14
+ bottom: var(--_snackbar-position-bottom);
15
+ left: var(--_snackbar-position-left);
16
+ right: var(--_snackbar-position-right);
17
+ top: var(--_snackbar-position-top);
18
+
19
+ z-index: var(--_snackbar-z-index);
20
+ }
21
+
22
+ [part="container"] {
23
+ display: grid;
24
+ gap: var(--_snackbar-gap);
25
+ grid-template-rows: auto;
26
+ justify-content: center;
27
+ justify-items: center;
28
+ margin-inline: auto;
29
+ pointer-events: none;
30
+ }
31
+
32
+ ::slotted(*) {
33
+ pointer-events: initial;
34
+ }
35
+ `;
@@ -0,0 +1,5 @@
1
+ import React from "react";
2
+ import { SnackbarActionPlacement, WarpSnackbarItem } from "./snackbar-item.js";
3
+ export declare const SnackbarItem: React.ForwardRefExoticComponent<Omit<Omit<Omit<React.HTMLAttributes<WarpSnackbarItem>, "renderRoot" | "isUpdatePending" | "hasUpdated" | "addController" | "removeController" | "connectedCallback" | "disconnectedCallback" | "attributeChangedCallback" | "requestUpdate" | "updateComplete" | "updated" | "render" | "renderOptions" | "close" | "actionPlacement" | "duration"> & {} & Partial<Omit<WarpSnackbarItem, keyof HTMLElement>> & React.RefAttributes<WarpSnackbarItem>, "ref">, "action-placement"> & {
4
+ actionPlacement?: SnackbarActionPlacement;
5
+ } & React.RefAttributes<WarpSnackbarItem>>;
@@ -0,0 +1,16 @@
1
+ import { createComponent } from "@lit/react";
2
+ import { LitElement } from "lit";
3
+ import React from "react";
4
+ // decouple from CDN by providing a dummy class
5
+ class Component extends LitElement {
6
+ }
7
+ const BaseSnackbarItem = createComponent({
8
+ tagName: "w-snackbar-item",
9
+ elementClass: Component,
10
+ react: React,
11
+ });
12
+ export const SnackbarItem = React.forwardRef(({ actionPlacement, ...props }, ref) => React.createElement(BaseSnackbarItem, {
13
+ ...props,
14
+ ...(actionPlacement ? { "action-placement": actionPlacement } : {}),
15
+ ref,
16
+ }));
@@ -0,0 +1,69 @@
1
+ import { LitElement } from "lit";
2
+ export type SnackbarVariant = "positive" | "warning" | "negative" | "info" | "neutral";
3
+ export type SnackbarActionPlacement = "inline" | "block";
4
+ export declare enum SnackbarDuration {
5
+ Short = 4000,
6
+ Long = 10000,
7
+ Infinite = 120000000
8
+ }
9
+ /**
10
+ * An item to show in a `w-snackbar`.
11
+ *
12
+ * See the `create` function on `w-snackbar` for a convenience API which helps you make snackbar items.
13
+ *
14
+ * @parent w-snackbar
15
+ *
16
+ * @slot default - the snackbar message.
17
+ * @slot icon - icon preceeding the message.
18
+ * @slot action - action following the message.
19
+ *
20
+ * @csspart item - the container wrapping the message, icon and actions.
21
+ * @csspart icon - the icon for the variant.
22
+ * @csspart message - the default slot, body of the snackbar item.
23
+ * @csspart action - close and action button.
24
+ *
25
+ * @cssprop --w-c-snackbar-item-radius
26
+ * @cssprop --w-c-snackbar-item-max-width
27
+ * @cssprop --w-c-snackbar-item-min-width
28
+ * @cssprop --w-c-snackbar-item-padding
29
+ *
30
+ * @cssprop --w-c-snackbar-item-bg
31
+ * @cssprop --w-c-snackbar-item-action-bg-active
32
+ * @cssprop --w-c-snackbar-item-action-bg-hover
33
+ *
34
+ * @cssprop --w-c-snackbar-item-color
35
+ * @cssprop --w-c-snackbar-item-action-color-active
36
+ * @cssprop --w-c-snackbar-item-action-color-hover
37
+ *
38
+ * @cssprop --w-c-snackbar-item-box-shadow
39
+ */
40
+ export declare class WarpSnackbarItem extends LitElement {
41
+ #private;
42
+ static styles: import("lit").CSSResult[];
43
+ /**
44
+ * The placement of the action and close buttons.
45
+ */
46
+ actionPlacement: SnackbarActionPlacement;
47
+ /**
48
+ * How long the message should stay in the document before removing itself.
49
+ */
50
+ duration: number;
51
+ private root;
52
+ private hasAction;
53
+ connectedCallback(): void;
54
+ disconnectedCallback(): void;
55
+ updated(): Promise<void>;
56
+ /**
57
+ * Remove the snackbar item from the document.
58
+ *
59
+ * Moves focus to the last focused element outside of the snackbar item, if available.
60
+ */
61
+ close(): void;
62
+ protected firstUpdated(): void;
63
+ render(): import("lit").TemplateResult<1>;
64
+ }
65
+ declare global {
66
+ interface HTMLElementTagNameMap {
67
+ "w-snackbar-item": WarpSnackbarItem;
68
+ }
69
+ }