@smwb/ui-solid 0.11.1 → 0.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (738) hide show
  1. package/README.md +63 -22
  2. package/dist/assets/styles/less/components/accordion/accordion.entry.css +1 -1
  3. package/dist/assets/styles/less/components/avatar/avatar.entry.css +1 -1
  4. package/dist/assets/styles/less/components/chip/chip.entry.css +1 -1
  5. package/dist/assets/styles/less/components/descriptionList/descriptionList.entry.css +1 -0
  6. package/dist/assets/styles/less/components/emptyState/emptyState.entry.css +1 -0
  7. package/dist/assets/styles/less/components/kanban/kanban.entry.css +1 -0
  8. package/dist/assets/styles/less/components/meter/meter.entry.css +1 -0
  9. package/dist/assets/styles/less/components/modal/modal.entry.css +1 -1
  10. package/dist/assets/styles/less/components/overflowMenu/overflowMenu.entry.css +1 -1
  11. package/dist/assets/styles/less/components/personChip/personChip.entry.css +1 -0
  12. package/dist/assets/styles/less/components/progressIndicator/progressIndicator.entry.css +1 -1
  13. package/dist/assets/styles/less/components/sectionHeader/sectionHeader.entry.css +1 -0
  14. package/dist/assets/styles/less/components/selectField/selectField.entry.css +1 -1
  15. package/dist/assets/styles/less/components/stat/stat.entry.css +1 -0
  16. package/dist/assets/styles/less/components/stepper/stepper.entry.css +1 -1
  17. package/dist/assets/styles/less/components/table/table.entry.css +1 -1
  18. package/dist/assets/styles/less/components/tabs/tab/tab.entry.css +1 -1
  19. package/dist/assets/styles/less/components/tabs/tabs.entry.css +1 -1
  20. package/dist/assets/styles/less/components/textField/textField.entry.css +1 -1
  21. package/dist/assets/styles/less/components/timeline/timeline.entry.css +1 -0
  22. package/dist/assets/styles/less/components/tooltip/tooltip.entry.css +1 -1
  23. package/dist/assets/styles/less/components/typography/typography.entry.css +1 -1
  24. package/dist/assets/styles/less/tokens.entry.css +1 -0
  25. package/dist/components/base/icon/icon.js +4 -3
  26. package/dist/components/base/icon/icon.js.map +1 -1
  27. package/dist/components/base/ripple/ripple.js +4 -3
  28. package/dist/components/base/ripple/ripple.js.map +1 -1
  29. package/dist/components/dataDisplay/accordion/accordion.d.ts +18 -1
  30. package/dist/components/dataDisplay/accordion/accordion.js +91 -48
  31. package/dist/components/dataDisplay/accordion/accordion.js.map +1 -1
  32. package/dist/components/dataDisplay/assetGrid/assetGrid.js +14 -13
  33. package/dist/components/dataDisplay/assetGrid/assetGrid.js.map +1 -1
  34. package/dist/components/dataDisplay/avatar/avatar.d.ts +4 -0
  35. package/dist/components/dataDisplay/avatar/avatar.js +56 -40
  36. package/dist/components/dataDisplay/avatar/avatar.js.map +1 -1
  37. package/dist/components/dataDisplay/badge/badge.js +24 -20
  38. package/dist/components/dataDisplay/badge/badge.js.map +1 -1
  39. package/dist/components/dataDisplay/card/card.js +24 -23
  40. package/dist/components/dataDisplay/card/card.js.map +1 -1
  41. package/dist/components/dataDisplay/carousel/carousel.js +4 -3
  42. package/dist/components/dataDisplay/carousel/carousel.js.map +1 -1
  43. package/dist/components/dataDisplay/chart/chart.d.ts +65 -0
  44. package/dist/components/dataDisplay/chart/chartTheme.d.ts +35 -0
  45. package/dist/components/dataDisplay/chart/index.d.ts +4 -0
  46. package/dist/components/dataDisplay/chat/chat.js +52 -51
  47. package/dist/components/dataDisplay/chat/chat.js.map +1 -1
  48. package/dist/components/dataDisplay/chat/chatHeader.js +29 -29
  49. package/dist/components/dataDisplay/chat/chatHeader.js.map +1 -1
  50. package/dist/components/dataDisplay/chat/chatMessageBubble.js +28 -28
  51. package/dist/components/dataDisplay/chat/chatMessageBubble.js.map +1 -1
  52. package/dist/components/dataDisplay/chat/chatShell.js +54 -51
  53. package/dist/components/dataDisplay/chat/chatShell.js.map +1 -1
  54. package/dist/components/dataDisplay/chip/chip.js +79 -70
  55. package/dist/components/dataDisplay/chip/chip.js.map +1 -1
  56. package/dist/components/dataDisplay/chipGroup/chipGroup.js +9 -8
  57. package/dist/components/dataDisplay/chipGroup/chipGroup.js.map +1 -1
  58. package/dist/components/dataDisplay/descriptionList/descriptionList.d.ts +32 -0
  59. package/dist/components/dataDisplay/descriptionList/descriptionList.js +60 -0
  60. package/dist/components/dataDisplay/descriptionList/descriptionList.js.map +1 -0
  61. package/dist/components/dataDisplay/descriptionList/index.d.ts +2 -0
  62. package/dist/components/dataDisplay/expansionPanel/expansionPanel.js +4 -3
  63. package/dist/components/dataDisplay/expansionPanel/expansionPanel.js.map +1 -1
  64. package/dist/components/dataDisplay/imagesList/imagesList.js +8 -7
  65. package/dist/components/dataDisplay/imagesList/imagesList.js.map +1 -1
  66. package/dist/components/dataDisplay/imagesList/imagesListItem/imagesListItem.js +29 -24
  67. package/dist/components/dataDisplay/imagesList/imagesListItem/imagesListItem.js.map +1 -1
  68. package/dist/components/dataDisplay/kanban/index.d.ts +2 -0
  69. package/dist/components/dataDisplay/kanban/kanban.d.ts +42 -0
  70. package/dist/components/dataDisplay/kanban/kanban.js +133 -0
  71. package/dist/components/dataDisplay/kanban/kanban.js.map +1 -0
  72. package/dist/components/dataDisplay/lazyImage/lazyImage.js +30 -29
  73. package/dist/components/dataDisplay/lazyImage/lazyImage.js.map +1 -1
  74. package/dist/components/dataDisplay/list/list.js +17 -16
  75. package/dist/components/dataDisplay/list/list.js.map +1 -1
  76. package/dist/components/dataDisplay/meter/index.d.ts +2 -0
  77. package/dist/components/dataDisplay/meter/meter.d.ts +34 -0
  78. package/dist/components/dataDisplay/meter/meter.js +84 -0
  79. package/dist/components/dataDisplay/meter/meter.js.map +1 -0
  80. package/dist/components/dataDisplay/personChip/index.d.ts +2 -0
  81. package/dist/components/dataDisplay/personChip/personChip.d.ts +32 -0
  82. package/dist/components/dataDisplay/personChip/personChip.js +104 -0
  83. package/dist/components/dataDisplay/personChip/personChip.js.map +1 -0
  84. package/dist/components/dataDisplay/stat/index.d.ts +2 -0
  85. package/dist/components/dataDisplay/stat/stat.d.ts +33 -0
  86. package/dist/components/dataDisplay/stat/stat.js +101 -0
  87. package/dist/components/dataDisplay/stat/stat.js.map +1 -0
  88. package/dist/components/dataDisplay/table/table.d.ts +7 -0
  89. package/dist/components/dataDisplay/table/table.js +22 -21
  90. package/dist/components/dataDisplay/table/table.js.map +1 -1
  91. package/dist/components/dataDisplay/table/tableCell.d.ts +2 -0
  92. package/dist/components/dataDisplay/table/tableCell.js +9 -6
  93. package/dist/components/dataDisplay/table/tableCell.js.map +1 -1
  94. package/dist/components/dataDisplay/table/tableHeadCell.d.ts +11 -1
  95. package/dist/components/dataDisplay/table/tableHeadCell.js +26 -23
  96. package/dist/components/dataDisplay/table/tableHeadCell.js.map +1 -1
  97. package/dist/components/dataDisplay/table/tablePagination/tablePagination.js +4 -3
  98. package/dist/components/dataDisplay/table/tablePagination/tablePagination.js.map +1 -1
  99. package/dist/components/dataDisplay/thumbCard/thumbCard.js +54 -53
  100. package/dist/components/dataDisplay/thumbCard/thumbCard.js.map +1 -1
  101. package/dist/components/dataDisplay/timeline/index.d.ts +2 -0
  102. package/dist/components/dataDisplay/timeline/timeline.d.ts +38 -0
  103. package/dist/components/dataDisplay/timeline/timeline.js +89 -0
  104. package/dist/components/dataDisplay/timeline/timeline.js.map +1 -0
  105. package/dist/components/dataDisplay/treeView/treeView.js +4 -3
  106. package/dist/components/dataDisplay/treeView/treeView.js.map +1 -1
  107. package/dist/components/dataDisplay/typography/typography.d.ts +4 -0
  108. package/dist/components/dataDisplay/typography/typography.js +36 -22
  109. package/dist/components/dataDisplay/typography/typography.js.map +1 -1
  110. package/dist/components/feedBack/confirmDialog/confirmDialog.js +10 -9
  111. package/dist/components/feedBack/confirmDialog/confirmDialog.js.map +1 -1
  112. package/dist/components/feedBack/emptyState/emptyState.d.ts +25 -0
  113. package/dist/components/feedBack/emptyState/emptyState.js +86 -0
  114. package/dist/components/feedBack/emptyState/emptyState.js.map +1 -0
  115. package/dist/components/feedBack/emptyState/index.d.ts +2 -0
  116. package/dist/components/feedBack/message/message.js +4 -3
  117. package/dist/components/feedBack/message/message.js.map +1 -1
  118. package/dist/components/feedBack/modal/modal.js +4 -3
  119. package/dist/components/feedBack/modal/modal.js.map +1 -1
  120. package/dist/components/feedBack/progressIndicator/progressIndicator.d.ts +13 -0
  121. package/dist/components/feedBack/progressIndicator/progressIndicator.js +79 -46
  122. package/dist/components/feedBack/progressIndicator/progressIndicator.js.map +1 -1
  123. package/dist/components/feedBack/saveAssetDialog/saveAssetDialog.js +20 -15
  124. package/dist/components/feedBack/saveAssetDialog/saveAssetDialog.js.map +1 -1
  125. package/dist/components/feedBack/skeleton/skeleton.js +4 -3
  126. package/dist/components/feedBack/skeleton/skeleton.js.map +1 -1
  127. package/dist/components/feedBack/snackbar/snackbar.js +18 -17
  128. package/dist/components/feedBack/snackbar/snackbar.js.map +1 -1
  129. package/dist/components/feedBack/tooltip/tooltip.js +41 -33
  130. package/dist/components/feedBack/tooltip/tooltip.js.map +1 -1
  131. package/dist/components/inputs/button/button.js +32 -30
  132. package/dist/components/inputs/button/button.js.map +1 -1
  133. package/dist/components/inputs/buttonGroups/buttonGroup.js +9 -8
  134. package/dist/components/inputs/buttonGroups/buttonGroup.js.map +1 -1
  135. package/dist/components/inputs/checkbox/checkbox.js +4 -3
  136. package/dist/components/inputs/checkbox/checkbox.js.map +1 -1
  137. package/dist/components/inputs/datePicker/dataPickerInput.js +23 -23
  138. package/dist/components/inputs/datePicker/dataPickerInput.js.map +1 -1
  139. package/dist/components/inputs/datePicker/datePicker.js +84 -83
  140. package/dist/components/inputs/datePicker/datePicker.js.map +1 -1
  141. package/dist/components/inputs/fileDrop/fileDrop.js +4 -3
  142. package/dist/components/inputs/fileDrop/fileDrop.js.map +1 -1
  143. package/dist/components/inputs/fileInput/fileInput.js +11 -10
  144. package/dist/components/inputs/fileInput/fileInput.js.map +1 -1
  145. package/dist/components/inputs/floatingButton/floatingButton.js +9 -8
  146. package/dist/components/inputs/floatingButton/floatingButton.js.map +1 -1
  147. package/dist/components/inputs/radioButton/radioButton.js +9 -8
  148. package/dist/components/inputs/radioButton/radioButton.js.map +1 -1
  149. package/dist/components/inputs/rating/rating.js +41 -40
  150. package/dist/components/inputs/rating/rating.js.map +1 -1
  151. package/dist/components/inputs/selectField/selectField.d.ts +2 -0
  152. package/dist/components/inputs/selectField/selectField.js +55 -51
  153. package/dist/components/inputs/selectField/selectField.js.map +1 -1
  154. package/dist/components/inputs/slider/slider.js +4 -3
  155. package/dist/components/inputs/slider/slider.js.map +1 -1
  156. package/dist/components/inputs/textField/textField.js +38 -37
  157. package/dist/components/inputs/textField/textField.js.map +1 -1
  158. package/dist/components/inputs/textField/textFieldAdornment.js +9 -9
  159. package/dist/components/inputs/textField/textFieldAdornment.js.map +1 -1
  160. package/dist/components/inputs/textField/textFieldWrapper.js +41 -41
  161. package/dist/components/inputs/textField/textFieldWrapper.js.map +1 -1
  162. package/dist/components/inputs/timePicker/timePicker.js +12 -11
  163. package/dist/components/inputs/timePicker/timePicker.js.map +1 -1
  164. package/dist/components/inputs/toggle/toggle.js +4 -3
  165. package/dist/components/inputs/toggle/toggle.js.map +1 -1
  166. package/dist/components/inputs/valueSlider/valueSlider.js +26 -25
  167. package/dist/components/inputs/valueSlider/valueSlider.js.map +1 -1
  168. package/dist/components/layout/appLayout/appLayout.js +39 -38
  169. package/dist/components/layout/appLayout/appLayout.js.map +1 -1
  170. package/dist/components/layout/divider/divider.js +26 -22
  171. package/dist/components/layout/divider/divider.js.map +1 -1
  172. package/dist/components/layout/floatingWindow/floatingWindow.js +74 -73
  173. package/dist/components/layout/floatingWindow/floatingWindow.js.map +1 -1
  174. package/dist/components/layout/grid/grid.js +10 -9
  175. package/dist/components/layout/grid/grid.js.map +1 -1
  176. package/dist/components/layout/page/page.js +4 -3
  177. package/dist/components/layout/page/page.js.map +1 -1
  178. package/dist/components/layout/pageHeader/pageHeader.js +36 -35
  179. package/dist/components/layout/pageHeader/pageHeader.js.map +1 -1
  180. package/dist/components/layout/screenDivider/screenDivider.js +9 -8
  181. package/dist/components/layout/screenDivider/screenDivider.js.map +1 -1
  182. package/dist/components/layout/sectionHeader/index.d.ts +2 -0
  183. package/dist/components/layout/sectionHeader/sectionHeader.d.ts +30 -0
  184. package/dist/components/layout/sectionHeader/sectionHeader.js +100 -0
  185. package/dist/components/layout/sectionHeader/sectionHeader.js.map +1 -0
  186. package/dist/components/layout/sheet/sheet.js +4 -3
  187. package/dist/components/layout/sheet/sheet.js.map +1 -1
  188. package/dist/components/layout/stack/stack.js +31 -27
  189. package/dist/components/layout/stack/stack.js.map +1 -1
  190. package/dist/components/navigation/appBar/appBar.js +24 -23
  191. package/dist/components/navigation/appBar/appBar.js.map +1 -1
  192. package/dist/components/navigation/bottomBar/bottomBar.js +57 -56
  193. package/dist/components/navigation/bottomBar/bottomBar.js.map +1 -1
  194. package/dist/components/navigation/breadcrumbs/breadcrumbs.js +4 -3
  195. package/dist/components/navigation/breadcrumbs/breadcrumbs.js.map +1 -1
  196. package/dist/components/navigation/menu/menu.js +10 -9
  197. package/dist/components/navigation/menu/menu.js.map +1 -1
  198. package/dist/components/navigation/overflowMenu/overflowMenu.js +4 -3
  199. package/dist/components/navigation/overflowMenu/overflowMenu.js.map +1 -1
  200. package/dist/components/navigation/pagination/pagination.js +14 -13
  201. package/dist/components/navigation/pagination/pagination.js.map +1 -1
  202. package/dist/components/navigation/sidebar/sidebar.js +4 -3
  203. package/dist/components/navigation/sidebar/sidebar.js.map +1 -1
  204. package/dist/components/navigation/stepper/stepper.d.ts +10 -2
  205. package/dist/components/navigation/stepper/stepper.js +63 -47
  206. package/dist/components/navigation/stepper/stepper.js.map +1 -1
  207. package/dist/components/navigation/tabs/tab/tab.d.ts +2 -0
  208. package/dist/components/navigation/tabs/tab/tab.js +45 -44
  209. package/dist/components/navigation/tabs/tab/tab.js.map +1 -1
  210. package/dist/components/navigation/tabs/tabs.d.ts +12 -0
  211. package/dist/components/navigation/tabs/tabs.js +142 -86
  212. package/dist/components/navigation/tabs/tabs.js.map +1 -1
  213. package/dist/connects/rt/table/table.d.ts +2 -0
  214. package/dist/headless/components/dataDisplay/accordion/accordion.js +89 -47
  215. package/dist/headless/components/dataDisplay/accordion/accordion.js.map +1 -1
  216. package/dist/headless/components/dataDisplay/avatar/avatar.js +54 -39
  217. package/dist/headless/components/dataDisplay/avatar/avatar.js.map +1 -1
  218. package/dist/headless/components/dataDisplay/badge/badge.js +22 -19
  219. package/dist/headless/components/dataDisplay/badge/badge.js.map +1 -1
  220. package/dist/headless/components/dataDisplay/card/card.js +22 -22
  221. package/dist/headless/components/dataDisplay/card/card.js.map +1 -1
  222. package/dist/headless/components/dataDisplay/chat/chat.js +50 -50
  223. package/dist/headless/components/dataDisplay/chat/chat.js.map +1 -1
  224. package/dist/headless/components/dataDisplay/chat/chatHeader.js +29 -29
  225. package/dist/headless/components/dataDisplay/chat/chatHeader.js.map +1 -1
  226. package/dist/headless/components/dataDisplay/chat/chatMessageBubble.js +28 -28
  227. package/dist/headless/components/dataDisplay/chat/chatMessageBubble.js.map +1 -1
  228. package/dist/headless/components/dataDisplay/chat/chatShell.js +54 -51
  229. package/dist/headless/components/dataDisplay/chat/chatShell.js.map +1 -1
  230. package/dist/headless/components/dataDisplay/chip/chip.js +77 -69
  231. package/dist/headless/components/dataDisplay/chip/chip.js.map +1 -1
  232. package/dist/headless/components/dataDisplay/descriptionList/descriptionList.js +58 -0
  233. package/dist/headless/components/dataDisplay/descriptionList/descriptionList.js.map +1 -0
  234. package/dist/headless/components/dataDisplay/imagesList/imagesListItem/imagesListItem.js +28 -24
  235. package/dist/headless/components/dataDisplay/imagesList/imagesListItem/imagesListItem.js.map +1 -1
  236. package/dist/headless/components/dataDisplay/kanban/kanban.js +131 -0
  237. package/dist/headless/components/dataDisplay/kanban/kanban.js.map +1 -0
  238. package/dist/headless/components/dataDisplay/lazyImage/lazyImage.js +28 -28
  239. package/dist/headless/components/dataDisplay/lazyImage/lazyImage.js.map +1 -1
  240. package/dist/headless/components/dataDisplay/list/list.js +15 -15
  241. package/dist/headless/components/dataDisplay/list/list.js.map +1 -1
  242. package/dist/headless/components/dataDisplay/meter/meter.js +82 -0
  243. package/dist/headless/components/dataDisplay/meter/meter.js.map +1 -0
  244. package/dist/headless/components/dataDisplay/personChip/personChip.js +102 -0
  245. package/dist/headless/components/dataDisplay/personChip/personChip.js.map +1 -0
  246. package/dist/headless/components/dataDisplay/stat/stat.js +99 -0
  247. package/dist/headless/components/dataDisplay/stat/stat.js.map +1 -0
  248. package/dist/headless/components/dataDisplay/table/table.js +20 -20
  249. package/dist/headless/components/dataDisplay/table/table.js.map +1 -1
  250. package/dist/headless/components/dataDisplay/table/tableCell.js +9 -6
  251. package/dist/headless/components/dataDisplay/table/tableCell.js.map +1 -1
  252. package/dist/headless/components/dataDisplay/table/tableHeadCell.js +26 -23
  253. package/dist/headless/components/dataDisplay/table/tableHeadCell.js.map +1 -1
  254. package/dist/headless/components/dataDisplay/thumbCard/thumbCard.js +53 -53
  255. package/dist/headless/components/dataDisplay/thumbCard/thumbCard.js.map +1 -1
  256. package/dist/headless/components/dataDisplay/timeline/timeline.js +87 -0
  257. package/dist/headless/components/dataDisplay/timeline/timeline.js.map +1 -0
  258. package/dist/headless/components/dataDisplay/typography/typography.js +34 -21
  259. package/dist/headless/components/dataDisplay/typography/typography.js.map +1 -1
  260. package/dist/headless/components/feedBack/confirmDialog/confirmDialog.js +1 -1
  261. package/dist/headless/components/feedBack/confirmDialog/confirmDialog.js.map +1 -1
  262. package/dist/headless/components/feedBack/emptyState/emptyState.js +84 -0
  263. package/dist/headless/components/feedBack/emptyState/emptyState.js.map +1 -0
  264. package/dist/headless/components/feedBack/progressIndicator/progressIndicator.js +77 -45
  265. package/dist/headless/components/feedBack/progressIndicator/progressIndicator.js.map +1 -1
  266. package/dist/headless/components/feedBack/saveAssetDialog/saveAssetDialog.js +18 -14
  267. package/dist/headless/components/feedBack/saveAssetDialog/saveAssetDialog.js.map +1 -1
  268. package/dist/headless/components/feedBack/tooltip/tooltip.js +33 -26
  269. package/dist/headless/components/feedBack/tooltip/tooltip.js.map +1 -1
  270. package/dist/headless/components/inputs/button/button.js +33 -32
  271. package/dist/headless/components/inputs/button/button.js.map +1 -1
  272. package/dist/headless/components/inputs/datePicker/dataPickerInput.js +23 -23
  273. package/dist/headless/components/inputs/datePicker/dataPickerInput.js.map +1 -1
  274. package/dist/headless/components/inputs/datePicker/datePicker.js +79 -79
  275. package/dist/headless/components/inputs/datePicker/datePicker.js.map +1 -1
  276. package/dist/headless/components/inputs/rating/rating.js +39 -39
  277. package/dist/headless/components/inputs/rating/rating.js.map +1 -1
  278. package/dist/headless/components/inputs/selectField/selectField.js +61 -58
  279. package/dist/headless/components/inputs/selectField/selectField.js.map +1 -1
  280. package/dist/headless/components/inputs/textField/textField.js +36 -36
  281. package/dist/headless/components/inputs/textField/textField.js.map +1 -1
  282. package/dist/headless/components/inputs/textField/textFieldAdornment.js +9 -9
  283. package/dist/headless/components/inputs/textField/textFieldAdornment.js.map +1 -1
  284. package/dist/headless/components/inputs/textField/textFieldWrapper.js +41 -41
  285. package/dist/headless/components/inputs/textField/textFieldWrapper.js.map +1 -1
  286. package/dist/headless/components/inputs/valueSlider/valueSlider.js +24 -24
  287. package/dist/headless/components/inputs/valueSlider/valueSlider.js.map +1 -1
  288. package/dist/headless/components/layout/appLayout/appLayout.js +39 -39
  289. package/dist/headless/components/layout/appLayout/appLayout.js.map +1 -1
  290. package/dist/headless/components/layout/divider/divider.js +24 -21
  291. package/dist/headless/components/layout/divider/divider.js.map +1 -1
  292. package/dist/headless/components/layout/pageHeader/pageHeader.js +34 -34
  293. package/dist/headless/components/layout/pageHeader/pageHeader.js.map +1 -1
  294. package/dist/headless/components/layout/sectionHeader/sectionHeader.js +98 -0
  295. package/dist/headless/components/layout/sectionHeader/sectionHeader.js.map +1 -0
  296. package/dist/headless/components/layout/stack/stack.js +29 -26
  297. package/dist/headless/components/layout/stack/stack.js.map +1 -1
  298. package/dist/headless/components/navigation/appBar/appBar.js +22 -22
  299. package/dist/headless/components/navigation/appBar/appBar.js.map +1 -1
  300. package/dist/headless/components/navigation/bottomBar/bottomBar.js +51 -51
  301. package/dist/headless/components/navigation/bottomBar/bottomBar.js.map +1 -1
  302. package/dist/headless/components/navigation/stepper/stepper.js +61 -46
  303. package/dist/headless/components/navigation/stepper/stepper.js.map +1 -1
  304. package/dist/headless/components/navigation/tabs/tab/tab.js +44 -44
  305. package/dist/headless/components/navigation/tabs/tab/tab.js.map +1 -1
  306. package/dist/headless/components/navigation/tabs/tabs.js +140 -85
  307. package/dist/headless/components/navigation/tabs/tabs.js.map +1 -1
  308. package/dist/headless/icons/catalog.js +78 -1
  309. package/dist/headless/icons/catalog.js.map +1 -1
  310. package/dist/headless/icons/index.js +596 -574
  311. package/dist/headless/icons/index.js.map +1 -1
  312. package/dist/headless/icons/svg/accountTree.js +9 -0
  313. package/dist/headless/icons/svg/accountTree.js.map +1 -0
  314. package/dist/headless/icons/svg/callSplit.js +9 -0
  315. package/dist/headless/icons/svg/callSplit.js.map +1 -0
  316. package/dist/headless/icons/svg/deviceHub.js +8 -0
  317. package/dist/headless/icons/svg/deviceHub.js.map +1 -0
  318. package/dist/headless/icons/svg/editNote.js +9 -0
  319. package/dist/headless/icons/svg/editNote.js.map +1 -0
  320. package/dist/headless/icons/svg/filterList.js +9 -0
  321. package/dist/headless/icons/svg/filterList.js.map +1 -0
  322. package/dist/headless/icons/svg/forkRight.js +8 -0
  323. package/dist/headless/icons/svg/forkRight.js.map +1 -0
  324. package/dist/headless/icons/svg/groups.js +9 -0
  325. package/dist/headless/icons/svg/groups.js.map +1 -0
  326. package/dist/headless/icons/svg/hub.js +8 -0
  327. package/dist/headless/icons/svg/hub.js.map +1 -0
  328. package/dist/headless/icons/svg/index.js +598 -576
  329. package/dist/headless/icons/svg/index.js.map +1 -1
  330. package/dist/headless/icons/svg/lan.js +9 -0
  331. package/dist/headless/icons/svg/lan.js.map +1 -0
  332. package/dist/headless/icons/svg/personOff.js +9 -0
  333. package/dist/headless/icons/svg/personOff.js.map +1 -0
  334. package/dist/headless/icons/svg/schema.js +9 -0
  335. package/dist/headless/icons/svg/schema.js.map +1 -0
  336. package/dist/headless/index.js +281 -255
  337. package/dist/headless/index.js.map +1 -1
  338. package/dist/headless/source/components/dataDisplay/accordion/accordion.jsx +60 -18
  339. package/dist/headless/source/components/dataDisplay/accordion/accordion.jsx.map +1 -1
  340. package/dist/headless/source/components/dataDisplay/avatar/avatar.jsx +28 -3
  341. package/dist/headless/source/components/dataDisplay/avatar/avatar.jsx.map +1 -1
  342. package/dist/headless/source/components/dataDisplay/badge/badge.jsx +8 -4
  343. package/dist/headless/source/components/dataDisplay/badge/badge.jsx.map +1 -1
  344. package/dist/headless/source/components/dataDisplay/card/card.jsx +4 -3
  345. package/dist/headless/source/components/dataDisplay/card/card.jsx.map +1 -1
  346. package/dist/headless/source/components/dataDisplay/chart/chart.jsx +168 -0
  347. package/dist/headless/source/components/dataDisplay/chart/chart.jsx.map +1 -0
  348. package/dist/headless/source/components/dataDisplay/chart/chartTheme.js +78 -0
  349. package/dist/headless/source/components/dataDisplay/chart/chartTheme.js.map +7 -0
  350. package/dist/headless/source/components/dataDisplay/chart/index.js +9 -0
  351. package/dist/headless/source/components/dataDisplay/chart/index.js.map +7 -0
  352. package/dist/headless/source/components/dataDisplay/chat/chat.jsx +4 -3
  353. package/dist/headless/source/components/dataDisplay/chat/chat.jsx.map +1 -1
  354. package/dist/headless/source/components/dataDisplay/chat/chatHeader.jsx +7 -5
  355. package/dist/headless/source/components/dataDisplay/chat/chatHeader.jsx.map +1 -1
  356. package/dist/headless/source/components/dataDisplay/chat/chatMessageBubble.jsx +4 -3
  357. package/dist/headless/source/components/dataDisplay/chat/chatMessageBubble.jsx.map +1 -1
  358. package/dist/headless/source/components/dataDisplay/chat/chatShell.jsx +30 -26
  359. package/dist/headless/source/components/dataDisplay/chat/chatShell.jsx.map +1 -1
  360. package/dist/headless/source/components/dataDisplay/chip/chip.jsx +11 -6
  361. package/dist/headless/source/components/dataDisplay/chip/chip.jsx.map +1 -1
  362. package/dist/headless/source/components/dataDisplay/descriptionList/descriptionList.jsx +42 -0
  363. package/dist/headless/source/components/dataDisplay/descriptionList/descriptionList.jsx.map +1 -0
  364. package/dist/headless/source/components/dataDisplay/descriptionList/index.js +7 -0
  365. package/dist/headless/source/components/dataDisplay/descriptionList/index.js.map +7 -0
  366. package/dist/headless/source/components/dataDisplay/imagesList/imagesListItem/imagesListItem.jsx +10 -4
  367. package/dist/headless/source/components/dataDisplay/imagesList/imagesListItem/imagesListItem.jsx.map +1 -1
  368. package/dist/headless/source/components/dataDisplay/kanban/index.js +8 -0
  369. package/dist/headless/source/components/dataDisplay/kanban/index.js.map +7 -0
  370. package/dist/headless/source/components/dataDisplay/kanban/kanban.jsx +99 -0
  371. package/dist/headless/source/components/dataDisplay/kanban/kanban.jsx.map +1 -0
  372. package/dist/headless/source/components/dataDisplay/lazyImage/lazyImage.jsx +4 -3
  373. package/dist/headless/source/components/dataDisplay/lazyImage/lazyImage.jsx.map +1 -1
  374. package/dist/headless/source/components/dataDisplay/list/list.jsx +4 -3
  375. package/dist/headless/source/components/dataDisplay/list/list.jsx.map +1 -1
  376. package/dist/headless/source/components/dataDisplay/meter/index.js +8 -0
  377. package/dist/headless/source/components/dataDisplay/meter/index.js.map +7 -0
  378. package/dist/headless/source/components/dataDisplay/meter/meter.jsx +80 -0
  379. package/dist/headless/source/components/dataDisplay/meter/meter.jsx.map +1 -0
  380. package/dist/headless/source/components/dataDisplay/personChip/index.js +8 -0
  381. package/dist/headless/source/components/dataDisplay/personChip/index.js.map +7 -0
  382. package/dist/headless/source/components/dataDisplay/personChip/personChip.jsx +71 -0
  383. package/dist/headless/source/components/dataDisplay/personChip/personChip.jsx.map +1 -0
  384. package/dist/headless/source/components/dataDisplay/stat/index.js +7 -0
  385. package/dist/headless/source/components/dataDisplay/stat/index.js.map +7 -0
  386. package/dist/headless/source/components/dataDisplay/stat/stat.jsx +72 -0
  387. package/dist/headless/source/components/dataDisplay/stat/stat.jsx.map +1 -0
  388. package/dist/headless/source/components/dataDisplay/table/table.jsx +11 -4
  389. package/dist/headless/source/components/dataDisplay/table/table.jsx.map +1 -1
  390. package/dist/headless/source/components/dataDisplay/table/tableCell.jsx +8 -2
  391. package/dist/headless/source/components/dataDisplay/table/tableCell.jsx.map +1 -1
  392. package/dist/headless/source/components/dataDisplay/table/tableHeadCell.jsx +37 -3
  393. package/dist/headless/source/components/dataDisplay/table/tableHeadCell.jsx.map +1 -1
  394. package/dist/headless/source/components/dataDisplay/thumbCard/thumbCard.jsx +10 -7
  395. package/dist/headless/source/components/dataDisplay/thumbCard/thumbCard.jsx.map +1 -1
  396. package/dist/headless/source/components/dataDisplay/timeline/index.js +8 -0
  397. package/dist/headless/source/components/dataDisplay/timeline/index.js.map +7 -0
  398. package/dist/headless/source/components/dataDisplay/timeline/timeline.jsx +64 -0
  399. package/dist/headless/source/components/dataDisplay/timeline/timeline.jsx.map +1 -0
  400. package/dist/headless/source/components/dataDisplay/typography/typography.jsx +17 -3
  401. package/dist/headless/source/components/dataDisplay/typography/typography.jsx.map +1 -1
  402. package/dist/headless/source/components/feedBack/confirmDialog/confirmDialog.jsx +1 -1
  403. package/dist/headless/source/components/feedBack/confirmDialog/confirmDialog.jsx.map +1 -1
  404. package/dist/headless/source/components/feedBack/emptyState/emptyState.jsx +47 -0
  405. package/dist/headless/source/components/feedBack/emptyState/emptyState.jsx.map +1 -0
  406. package/dist/headless/source/components/feedBack/emptyState/index.js +6 -0
  407. package/dist/headless/source/components/feedBack/emptyState/index.js.map +7 -0
  408. package/dist/headless/source/components/feedBack/progressIndicator/progressIndicator.jsx +52 -10
  409. package/dist/headless/source/components/feedBack/progressIndicator/progressIndicator.jsx.map +1 -1
  410. package/dist/headless/source/components/feedBack/saveAssetDialog/saveAssetDialog.jsx +4 -2
  411. package/dist/headless/source/components/feedBack/saveAssetDialog/saveAssetDialog.jsx.map +1 -1
  412. package/dist/headless/source/components/feedBack/tooltip/tooltip.jsx +4 -2
  413. package/dist/headless/source/components/feedBack/tooltip/tooltip.jsx.map +1 -1
  414. package/dist/headless/source/components/inputs/button/button.jsx +7 -3
  415. package/dist/headless/source/components/inputs/button/button.jsx.map +1 -1
  416. package/dist/headless/source/components/inputs/datePicker/dataPickerInput.jsx +4 -3
  417. package/dist/headless/source/components/inputs/datePicker/dataPickerInput.jsx.map +1 -1
  418. package/dist/headless/source/components/inputs/datePicker/datePicker.jsx +4 -6
  419. package/dist/headless/source/components/inputs/datePicker/datePicker.jsx.map +1 -1
  420. package/dist/headless/source/components/inputs/rating/rating.jsx +4 -3
  421. package/dist/headless/source/components/inputs/rating/rating.jsx.map +1 -1
  422. package/dist/headless/source/components/inputs/selectField/selectField.jsx +8 -2
  423. package/dist/headless/source/components/inputs/selectField/selectField.jsx.map +1 -1
  424. package/dist/headless/source/components/inputs/textField/textField.jsx +8 -6
  425. package/dist/headless/source/components/inputs/textField/textField.jsx.map +1 -1
  426. package/dist/headless/source/components/inputs/textField/textFieldAdornment.jsx +4 -3
  427. package/dist/headless/source/components/inputs/textField/textFieldAdornment.jsx.map +1 -1
  428. package/dist/headless/source/components/inputs/textField/textFieldWrapper.jsx +9 -6
  429. package/dist/headless/source/components/inputs/textField/textFieldWrapper.jsx.map +1 -1
  430. package/dist/headless/source/components/inputs/valueSlider/valueSlider.jsx +4 -3
  431. package/dist/headless/source/components/inputs/valueSlider/valueSlider.jsx.map +1 -1
  432. package/dist/headless/source/components/layout/appLayout/appLayout.jsx +3 -2
  433. package/dist/headless/source/components/layout/appLayout/appLayout.jsx.map +1 -1
  434. package/dist/headless/source/components/layout/divider/divider.jsx +10 -6
  435. package/dist/headless/source/components/layout/divider/divider.jsx.map +1 -1
  436. package/dist/headless/source/components/layout/pageHeader/pageHeader.jsx +14 -10
  437. package/dist/headless/source/components/layout/pageHeader/pageHeader.jsx.map +1 -1
  438. package/dist/headless/source/components/layout/sectionHeader/index.js +6 -0
  439. package/dist/headless/source/components/layout/sectionHeader/index.js.map +7 -0
  440. package/dist/headless/source/components/layout/sectionHeader/sectionHeader.jsx +80 -0
  441. package/dist/headless/source/components/layout/sectionHeader/sectionHeader.jsx.map +1 -0
  442. package/dist/headless/source/components/layout/stack/stack.jsx +3 -2
  443. package/dist/headless/source/components/layout/stack/stack.jsx.map +1 -1
  444. package/dist/headless/source/components/navigation/appBar/appBar.jsx +7 -5
  445. package/dist/headless/source/components/navigation/appBar/appBar.jsx.map +1 -1
  446. package/dist/headless/source/components/navigation/bottomBar/bottomBar.jsx +4 -3
  447. package/dist/headless/source/components/navigation/bottomBar/bottomBar.jsx.map +1 -1
  448. package/dist/headless/source/components/navigation/stepper/stepper.jsx +14 -7
  449. package/dist/headless/source/components/navigation/stepper/stepper.jsx.map +1 -1
  450. package/dist/headless/source/components/navigation/tabs/tab/tab.jsx +7 -5
  451. package/dist/headless/source/components/navigation/tabs/tab/tab.jsx.map +1 -1
  452. package/dist/headless/source/components/navigation/tabs/tabs.jsx +84 -4
  453. package/dist/headless/source/components/navigation/tabs/tabs.jsx.map +1 -1
  454. package/dist/headless/source/connects/rt/table/table.jsx +9 -1
  455. package/dist/headless/source/connects/rt/table/table.jsx.map +1 -1
  456. package/dist/headless/source/icons/catalog.js +78 -1
  457. package/dist/headless/source/icons/catalog.js.map +2 -2
  458. package/dist/headless/source/icons/svg/accountTree.js +11 -0
  459. package/dist/headless/source/icons/svg/accountTree.js.map +7 -0
  460. package/dist/headless/source/icons/svg/callSplit.js +11 -0
  461. package/dist/headless/source/icons/svg/callSplit.js.map +7 -0
  462. package/dist/headless/source/icons/svg/deviceHub.js +10 -0
  463. package/dist/headless/source/icons/svg/deviceHub.js.map +7 -0
  464. package/dist/headless/source/icons/svg/editNote.js +11 -0
  465. package/dist/headless/source/icons/svg/editNote.js.map +7 -0
  466. package/dist/headless/source/icons/svg/filterList.js +11 -0
  467. package/dist/headless/source/icons/svg/filterList.js.map +7 -0
  468. package/dist/headless/source/icons/svg/forkRight.js +10 -0
  469. package/dist/headless/source/icons/svg/forkRight.js.map +7 -0
  470. package/dist/headless/source/icons/svg/groups.js +11 -0
  471. package/dist/headless/source/icons/svg/groups.js.map +7 -0
  472. package/dist/headless/source/icons/svg/hub.js +10 -0
  473. package/dist/headless/source/icons/svg/hub.js.map +7 -0
  474. package/dist/headless/source/icons/svg/index.js +22 -0
  475. package/dist/headless/source/icons/svg/index.js.map +2 -2
  476. package/dist/headless/source/icons/svg/lan.js +11 -0
  477. package/dist/headless/source/icons/svg/lan.js.map +7 -0
  478. package/dist/headless/source/icons/svg/personOff.js +11 -0
  479. package/dist/headless/source/icons/svg/personOff.js.map +7 -0
  480. package/dist/headless/source/icons/svg/schema.js +11 -0
  481. package/dist/headless/source/icons/svg/schema.js.map +7 -0
  482. package/dist/headless/source/index.js +33 -1
  483. package/dist/headless/source/index.js.map +2 -2
  484. package/dist/icons/catalog.d.ts +1 -1
  485. package/dist/icons/catalog.js +78 -1
  486. package/dist/icons/catalog.js.map +1 -1
  487. package/dist/icons/index.js +596 -574
  488. package/dist/icons/index.js.map +1 -1
  489. package/dist/icons/svg/accountTree.d.ts +4 -0
  490. package/dist/icons/svg/accountTree.js +9 -0
  491. package/dist/icons/svg/accountTree.js.map +1 -0
  492. package/dist/icons/svg/callSplit.d.ts +4 -0
  493. package/dist/icons/svg/callSplit.js +9 -0
  494. package/dist/icons/svg/callSplit.js.map +1 -0
  495. package/dist/icons/svg/deviceHub.d.ts +4 -0
  496. package/dist/icons/svg/deviceHub.js +8 -0
  497. package/dist/icons/svg/deviceHub.js.map +1 -0
  498. package/dist/icons/svg/editNote.d.ts +4 -0
  499. package/dist/icons/svg/editNote.js +9 -0
  500. package/dist/icons/svg/editNote.js.map +1 -0
  501. package/dist/icons/svg/filterList.d.ts +4 -0
  502. package/dist/icons/svg/filterList.js +9 -0
  503. package/dist/icons/svg/filterList.js.map +1 -0
  504. package/dist/icons/svg/forkRight.d.ts +4 -0
  505. package/dist/icons/svg/forkRight.js +8 -0
  506. package/dist/icons/svg/forkRight.js.map +1 -0
  507. package/dist/icons/svg/groups.d.ts +4 -0
  508. package/dist/icons/svg/groups.js +9 -0
  509. package/dist/icons/svg/groups.js.map +1 -0
  510. package/dist/icons/svg/hub.d.ts +4 -0
  511. package/dist/icons/svg/hub.js +8 -0
  512. package/dist/icons/svg/hub.js.map +1 -0
  513. package/dist/icons/svg/index.d.ts +11 -0
  514. package/dist/icons/svg/index.js +598 -576
  515. package/dist/icons/svg/index.js.map +1 -1
  516. package/dist/icons/svg/lan.d.ts +4 -0
  517. package/dist/icons/svg/lan.js +9 -0
  518. package/dist/icons/svg/lan.js.map +1 -0
  519. package/dist/icons/svg/personOff.d.ts +4 -0
  520. package/dist/icons/svg/personOff.js +9 -0
  521. package/dist/icons/svg/personOff.js.map +1 -0
  522. package/dist/icons/svg/schema.d.ts +4 -0
  523. package/dist/icons/svg/schema.js +9 -0
  524. package/dist/icons/svg/schema.js.map +1 -0
  525. package/dist/index.d.ts +21 -5
  526. package/dist/index.js +281 -255
  527. package/dist/index.js.map +1 -1
  528. package/dist/source/components/base/icon/icon.jsx +1 -0
  529. package/dist/source/components/base/icon/icon.jsx.map +1 -1
  530. package/dist/source/components/base/ripple/ripple.jsx +1 -0
  531. package/dist/source/components/base/ripple/ripple.jsx.map +1 -1
  532. package/dist/source/components/dataDisplay/accordion/accordion.jsx +61 -18
  533. package/dist/source/components/dataDisplay/accordion/accordion.jsx.map +1 -1
  534. package/dist/source/components/dataDisplay/assetGrid/assetGrid.jsx +1 -0
  535. package/dist/source/components/dataDisplay/assetGrid/assetGrid.jsx.map +1 -1
  536. package/dist/source/components/dataDisplay/avatar/avatar.jsx +29 -3
  537. package/dist/source/components/dataDisplay/avatar/avatar.jsx.map +1 -1
  538. package/dist/source/components/dataDisplay/badge/badge.jsx +9 -4
  539. package/dist/source/components/dataDisplay/badge/badge.jsx.map +1 -1
  540. package/dist/source/components/dataDisplay/card/card.jsx +5 -3
  541. package/dist/source/components/dataDisplay/card/card.jsx.map +1 -1
  542. package/dist/source/components/dataDisplay/carousel/carousel.jsx +1 -0
  543. package/dist/source/components/dataDisplay/carousel/carousel.jsx.map +1 -1
  544. package/dist/source/components/dataDisplay/chart/chart.jsx +170 -0
  545. package/dist/source/components/dataDisplay/chart/chart.jsx.map +1 -0
  546. package/dist/source/components/dataDisplay/chart/chartTheme.js +78 -0
  547. package/dist/source/components/dataDisplay/chart/chartTheme.js.map +7 -0
  548. package/dist/source/components/dataDisplay/chart/index.js +9 -0
  549. package/dist/source/components/dataDisplay/chart/index.js.map +7 -0
  550. package/dist/source/components/dataDisplay/chat/chat.jsx +5 -3
  551. package/dist/source/components/dataDisplay/chat/chat.jsx.map +1 -1
  552. package/dist/source/components/dataDisplay/chat/chatHeader.jsx +7 -5
  553. package/dist/source/components/dataDisplay/chat/chatHeader.jsx.map +1 -1
  554. package/dist/source/components/dataDisplay/chat/chatMessageBubble.jsx +4 -3
  555. package/dist/source/components/dataDisplay/chat/chatMessageBubble.jsx.map +1 -1
  556. package/dist/source/components/dataDisplay/chat/chatShell.jsx +30 -26
  557. package/dist/source/components/dataDisplay/chat/chatShell.jsx.map +1 -1
  558. package/dist/source/components/dataDisplay/chip/chip.jsx +12 -6
  559. package/dist/source/components/dataDisplay/chip/chip.jsx.map +1 -1
  560. package/dist/source/components/dataDisplay/chipGroup/chipGroup.jsx +1 -0
  561. package/dist/source/components/dataDisplay/chipGroup/chipGroup.jsx.map +1 -1
  562. package/dist/source/components/dataDisplay/descriptionList/descriptionList.jsx +44 -0
  563. package/dist/source/components/dataDisplay/descriptionList/descriptionList.jsx.map +1 -0
  564. package/dist/source/components/dataDisplay/descriptionList/index.js +7 -0
  565. package/dist/source/components/dataDisplay/descriptionList/index.js.map +7 -0
  566. package/dist/source/components/dataDisplay/expansionPanel/expansionPanel.jsx +1 -0
  567. package/dist/source/components/dataDisplay/expansionPanel/expansionPanel.jsx.map +1 -1
  568. package/dist/source/components/dataDisplay/imagesList/imagesList.jsx +1 -0
  569. package/dist/source/components/dataDisplay/imagesList/imagesList.jsx.map +1 -1
  570. package/dist/source/components/dataDisplay/imagesList/imagesListItem/imagesListItem.jsx +11 -4
  571. package/dist/source/components/dataDisplay/imagesList/imagesListItem/imagesListItem.jsx.map +1 -1
  572. package/dist/source/components/dataDisplay/kanban/index.js +8 -0
  573. package/dist/source/components/dataDisplay/kanban/index.js.map +7 -0
  574. package/dist/source/components/dataDisplay/kanban/kanban.jsx +101 -0
  575. package/dist/source/components/dataDisplay/kanban/kanban.jsx.map +1 -0
  576. package/dist/source/components/dataDisplay/lazyImage/lazyImage.jsx +5 -3
  577. package/dist/source/components/dataDisplay/lazyImage/lazyImage.jsx.map +1 -1
  578. package/dist/source/components/dataDisplay/list/list.jsx +5 -3
  579. package/dist/source/components/dataDisplay/list/list.jsx.map +1 -1
  580. package/dist/source/components/dataDisplay/meter/index.js +8 -0
  581. package/dist/source/components/dataDisplay/meter/index.js.map +7 -0
  582. package/dist/source/components/dataDisplay/meter/meter.jsx +82 -0
  583. package/dist/source/components/dataDisplay/meter/meter.jsx.map +1 -0
  584. package/dist/source/components/dataDisplay/personChip/index.js +8 -0
  585. package/dist/source/components/dataDisplay/personChip/index.js.map +7 -0
  586. package/dist/source/components/dataDisplay/personChip/personChip.jsx +73 -0
  587. package/dist/source/components/dataDisplay/personChip/personChip.jsx.map +1 -0
  588. package/dist/source/components/dataDisplay/stat/index.js +7 -0
  589. package/dist/source/components/dataDisplay/stat/index.js.map +7 -0
  590. package/dist/source/components/dataDisplay/stat/stat.jsx +74 -0
  591. package/dist/source/components/dataDisplay/stat/stat.jsx.map +1 -0
  592. package/dist/source/components/dataDisplay/table/table.jsx +12 -4
  593. package/dist/source/components/dataDisplay/table/table.jsx.map +1 -1
  594. package/dist/source/components/dataDisplay/table/tableCell.jsx +8 -2
  595. package/dist/source/components/dataDisplay/table/tableCell.jsx.map +1 -1
  596. package/dist/source/components/dataDisplay/table/tableHeadCell.jsx +37 -3
  597. package/dist/source/components/dataDisplay/table/tableHeadCell.jsx.map +1 -1
  598. package/dist/source/components/dataDisplay/table/tablePagination/tablePagination.jsx +1 -0
  599. package/dist/source/components/dataDisplay/table/tablePagination/tablePagination.jsx.map +1 -1
  600. package/dist/source/components/dataDisplay/thumbCard/thumbCard.jsx +11 -7
  601. package/dist/source/components/dataDisplay/thumbCard/thumbCard.jsx.map +1 -1
  602. package/dist/source/components/dataDisplay/timeline/index.js +8 -0
  603. package/dist/source/components/dataDisplay/timeline/index.js.map +7 -0
  604. package/dist/source/components/dataDisplay/timeline/timeline.jsx +66 -0
  605. package/dist/source/components/dataDisplay/timeline/timeline.jsx.map +1 -0
  606. package/dist/source/components/dataDisplay/treeView/treeView.jsx +1 -0
  607. package/dist/source/components/dataDisplay/treeView/treeView.jsx.map +1 -1
  608. package/dist/source/components/dataDisplay/typography/typography.jsx +18 -3
  609. package/dist/source/components/dataDisplay/typography/typography.jsx.map +1 -1
  610. package/dist/source/components/feedBack/confirmDialog/confirmDialog.jsx +2 -1
  611. package/dist/source/components/feedBack/confirmDialog/confirmDialog.jsx.map +1 -1
  612. package/dist/source/components/feedBack/emptyState/emptyState.jsx +49 -0
  613. package/dist/source/components/feedBack/emptyState/emptyState.jsx.map +1 -0
  614. package/dist/source/components/feedBack/emptyState/index.js +6 -0
  615. package/dist/source/components/feedBack/emptyState/index.js.map +7 -0
  616. package/dist/source/components/feedBack/message/message.jsx +1 -0
  617. package/dist/source/components/feedBack/message/message.jsx.map +1 -1
  618. package/dist/source/components/feedBack/modal/modal.jsx +1 -0
  619. package/dist/source/components/feedBack/modal/modal.jsx.map +1 -1
  620. package/dist/source/components/feedBack/progressIndicator/progressIndicator.jsx +53 -10
  621. package/dist/source/components/feedBack/progressIndicator/progressIndicator.jsx.map +1 -1
  622. package/dist/source/components/feedBack/saveAssetDialog/saveAssetDialog.jsx +5 -2
  623. package/dist/source/components/feedBack/saveAssetDialog/saveAssetDialog.jsx.map +1 -1
  624. package/dist/source/components/feedBack/skeleton/skeleton.jsx +1 -0
  625. package/dist/source/components/feedBack/skeleton/skeleton.jsx.map +1 -1
  626. package/dist/source/components/feedBack/snackbar/snackbar.jsx +1 -0
  627. package/dist/source/components/feedBack/snackbar/snackbar.jsx.map +1 -1
  628. package/dist/source/components/feedBack/tooltip/tooltip.jsx +5 -2
  629. package/dist/source/components/feedBack/tooltip/tooltip.jsx.map +1 -1
  630. package/dist/source/components/inputs/button/button.jsx +8 -3
  631. package/dist/source/components/inputs/button/button.jsx.map +1 -1
  632. package/dist/source/components/inputs/buttonGroups/buttonGroup.jsx +1 -0
  633. package/dist/source/components/inputs/buttonGroups/buttonGroup.jsx.map +1 -1
  634. package/dist/source/components/inputs/checkbox/checkbox.jsx +1 -0
  635. package/dist/source/components/inputs/checkbox/checkbox.jsx.map +1 -1
  636. package/dist/source/components/inputs/datePicker/dataPickerInput.jsx +4 -3
  637. package/dist/source/components/inputs/datePicker/dataPickerInput.jsx.map +1 -1
  638. package/dist/source/components/inputs/datePicker/datePicker.jsx +5 -6
  639. package/dist/source/components/inputs/datePicker/datePicker.jsx.map +1 -1
  640. package/dist/source/components/inputs/fileDrop/fileDrop.jsx +1 -0
  641. package/dist/source/components/inputs/fileDrop/fileDrop.jsx.map +1 -1
  642. package/dist/source/components/inputs/fileInput/fileInput.jsx +1 -0
  643. package/dist/source/components/inputs/fileInput/fileInput.jsx.map +1 -1
  644. package/dist/source/components/inputs/floatingButton/floatingButton.jsx +1 -0
  645. package/dist/source/components/inputs/floatingButton/floatingButton.jsx.map +1 -1
  646. package/dist/source/components/inputs/radioButton/radioButton.jsx +1 -0
  647. package/dist/source/components/inputs/radioButton/radioButton.jsx.map +1 -1
  648. package/dist/source/components/inputs/rating/rating.jsx +5 -3
  649. package/dist/source/components/inputs/rating/rating.jsx.map +1 -1
  650. package/dist/source/components/inputs/selectField/selectField.jsx +9 -2
  651. package/dist/source/components/inputs/selectField/selectField.jsx.map +1 -1
  652. package/dist/source/components/inputs/slider/slider.jsx +1 -0
  653. package/dist/source/components/inputs/slider/slider.jsx.map +1 -1
  654. package/dist/source/components/inputs/textField/textField.jsx +9 -6
  655. package/dist/source/components/inputs/textField/textField.jsx.map +1 -1
  656. package/dist/source/components/inputs/textField/textFieldAdornment.jsx +4 -3
  657. package/dist/source/components/inputs/textField/textFieldAdornment.jsx.map +1 -1
  658. package/dist/source/components/inputs/textField/textFieldWrapper.jsx +9 -6
  659. package/dist/source/components/inputs/textField/textFieldWrapper.jsx.map +1 -1
  660. package/dist/source/components/inputs/timePicker/timePicker.jsx +1 -0
  661. package/dist/source/components/inputs/timePicker/timePicker.jsx.map +1 -1
  662. package/dist/source/components/inputs/toggle/toggle.jsx +1 -0
  663. package/dist/source/components/inputs/toggle/toggle.jsx.map +1 -1
  664. package/dist/source/components/inputs/valueSlider/valueSlider.jsx +5 -3
  665. package/dist/source/components/inputs/valueSlider/valueSlider.jsx.map +1 -1
  666. package/dist/source/components/layout/appLayout/appLayout.jsx +4 -2
  667. package/dist/source/components/layout/appLayout/appLayout.jsx.map +1 -1
  668. package/dist/source/components/layout/divider/divider.jsx +11 -6
  669. package/dist/source/components/layout/divider/divider.jsx.map +1 -1
  670. package/dist/source/components/layout/floatingWindow/floatingWindow.jsx +1 -0
  671. package/dist/source/components/layout/floatingWindow/floatingWindow.jsx.map +1 -1
  672. package/dist/source/components/layout/grid/grid.jsx +1 -0
  673. package/dist/source/components/layout/grid/grid.jsx.map +1 -1
  674. package/dist/source/components/layout/page/page.jsx +1 -0
  675. package/dist/source/components/layout/page/page.jsx.map +1 -1
  676. package/dist/source/components/layout/pageHeader/pageHeader.jsx +15 -10
  677. package/dist/source/components/layout/pageHeader/pageHeader.jsx.map +1 -1
  678. package/dist/source/components/layout/screenDivider/screenDivider.jsx +1 -0
  679. package/dist/source/components/layout/screenDivider/screenDivider.jsx.map +1 -1
  680. package/dist/source/components/layout/sectionHeader/index.js +6 -0
  681. package/dist/source/components/layout/sectionHeader/index.js.map +7 -0
  682. package/dist/source/components/layout/sectionHeader/sectionHeader.jsx +82 -0
  683. package/dist/source/components/layout/sectionHeader/sectionHeader.jsx.map +1 -0
  684. package/dist/source/components/layout/sheet/sheet.jsx +1 -0
  685. package/dist/source/components/layout/sheet/sheet.jsx.map +1 -1
  686. package/dist/source/components/layout/stack/stack.jsx +4 -2
  687. package/dist/source/components/layout/stack/stack.jsx.map +1 -1
  688. package/dist/source/components/navigation/appBar/appBar.jsx +8 -5
  689. package/dist/source/components/navigation/appBar/appBar.jsx.map +1 -1
  690. package/dist/source/components/navigation/bottomBar/bottomBar.jsx +5 -3
  691. package/dist/source/components/navigation/bottomBar/bottomBar.jsx.map +1 -1
  692. package/dist/source/components/navigation/breadcrumbs/breadcrumbs.jsx +1 -0
  693. package/dist/source/components/navigation/breadcrumbs/breadcrumbs.jsx.map +1 -1
  694. package/dist/source/components/navigation/menu/menu.jsx +1 -0
  695. package/dist/source/components/navigation/menu/menu.jsx.map +1 -1
  696. package/dist/source/components/navigation/overflowMenu/overflowMenu.jsx +1 -0
  697. package/dist/source/components/navigation/overflowMenu/overflowMenu.jsx.map +1 -1
  698. package/dist/source/components/navigation/pagination/pagination.jsx +1 -0
  699. package/dist/source/components/navigation/pagination/pagination.jsx.map +1 -1
  700. package/dist/source/components/navigation/sidebar/sidebar.jsx +1 -0
  701. package/dist/source/components/navigation/sidebar/sidebar.jsx.map +1 -1
  702. package/dist/source/components/navigation/stepper/stepper.jsx +15 -7
  703. package/dist/source/components/navigation/stepper/stepper.jsx.map +1 -1
  704. package/dist/source/components/navigation/tabs/tab/tab.jsx +8 -5
  705. package/dist/source/components/navigation/tabs/tab/tab.jsx.map +1 -1
  706. package/dist/source/components/navigation/tabs/tabs.jsx +85 -4
  707. package/dist/source/components/navigation/tabs/tabs.jsx.map +1 -1
  708. package/dist/source/connects/rt/table/table.jsx +9 -1
  709. package/dist/source/connects/rt/table/table.jsx.map +1 -1
  710. package/dist/source/icons/catalog.js +78 -1
  711. package/dist/source/icons/catalog.js.map +2 -2
  712. package/dist/source/icons/svg/accountTree.js +11 -0
  713. package/dist/source/icons/svg/accountTree.js.map +7 -0
  714. package/dist/source/icons/svg/callSplit.js +11 -0
  715. package/dist/source/icons/svg/callSplit.js.map +7 -0
  716. package/dist/source/icons/svg/deviceHub.js +10 -0
  717. package/dist/source/icons/svg/deviceHub.js.map +7 -0
  718. package/dist/source/icons/svg/editNote.js +11 -0
  719. package/dist/source/icons/svg/editNote.js.map +7 -0
  720. package/dist/source/icons/svg/filterList.js +11 -0
  721. package/dist/source/icons/svg/filterList.js.map +7 -0
  722. package/dist/source/icons/svg/forkRight.js +10 -0
  723. package/dist/source/icons/svg/forkRight.js.map +7 -0
  724. package/dist/source/icons/svg/groups.js +11 -0
  725. package/dist/source/icons/svg/groups.js.map +7 -0
  726. package/dist/source/icons/svg/hub.js +10 -0
  727. package/dist/source/icons/svg/hub.js.map +7 -0
  728. package/dist/source/icons/svg/index.js +22 -0
  729. package/dist/source/icons/svg/index.js.map +2 -2
  730. package/dist/source/icons/svg/lan.js +11 -0
  731. package/dist/source/icons/svg/lan.js.map +7 -0
  732. package/dist/source/icons/svg/personOff.js +11 -0
  733. package/dist/source/icons/svg/personOff.js.map +7 -0
  734. package/dist/source/icons/svg/schema.js +11 -0
  735. package/dist/source/icons/svg/schema.js.map +7 -0
  736. package/dist/source/index.js +33 -1
  737. package/dist/source/index.js.map +2 -2
  738. package/package.json +79 -8
@@ -0,0 +1,101 @@
1
+ import "@smwb/ui-styles/less/tokens.entry.less";
2
+ import "@smwb/ui-styles/less/components/kanban/kanban.entry.less";
3
+ import { Show, children, createUniqueId, mergeProps, splitProps } from "solid-js";
4
+ import cn from "clsx";
5
+ import { mergeRefs } from "../../../primitives/mergeRefs";
6
+ const styleObject = (style) => typeof style === "object" && style ? style : {};
7
+ const cssLength = (value) => typeof value === "number" ? `${value}px` : value;
8
+ const present = (value) => value !== void 0 && value !== null && value !== false && value !== true && value !== "";
9
+ function Kanban(props) {
10
+ const [local, rest] = splitProps(props, ["class", "style", "columnWidth", "children", "ref"]);
11
+ return <div
12
+ data-testid="kanban"
13
+ {...rest}
14
+ ref={mergeRefs(local.ref)}
15
+ class={cn("smwb-kanban", local.class)}
16
+ style={{ ...styleObject(local.style), "--smwb-kanban-column-width": cssLength(local.columnWidth) }}
17
+ >
18
+ {local.children}
19
+ </div>;
20
+ }
21
+ function KanbanColumn(props) {
22
+ const [local, rest] = splitProps(props, [
23
+ "class",
24
+ "style",
25
+ "title",
26
+ "count",
27
+ "accent",
28
+ "empty",
29
+ "footer",
30
+ "children",
31
+ "ref"
32
+ ]);
33
+ const titleId = `${createUniqueId()}-title`;
34
+ const cards = children(() => local.children);
35
+ const empty = children(() => local.empty);
36
+ const footer = children(() => local.footer);
37
+ const hasCards = () => cards.toArray().some(present);
38
+ return <div
39
+ data-testid="kanban-column"
40
+ role="group"
41
+ aria-labelledby={titleId}
42
+ {...rest}
43
+ ref={mergeRefs(local.ref)}
44
+ class={cn("smwb-kanban__column", local.class)}
45
+ style={{ ...styleObject(local.style), "--smwb-kanban-accent": local.accent }}
46
+ >
47
+ <div class="smwb-kanban__column-header">
48
+ <div class="smwb-kanban__column-title" id={titleId}>
49
+ {local.title}
50
+ </div>
51
+ <Show when={local.count !== void 0 && local.count !== null}>
52
+ <span class="smwb-kanban__count">{local.count}</span>
53
+ </Show>
54
+ </div>
55
+ <Show
56
+ when={hasCards()}
57
+ fallback={<Show when={present(empty())}>
58
+ <div class="smwb-kanban__empty">{empty()}</div>
59
+ </Show>}
60
+ >
61
+ <ul class="smwb-kanban__cards" role="list">
62
+ {cards()}
63
+ </ul>
64
+ </Show>
65
+ <Show when={present(footer())}>
66
+ <div class="smwb-kanban__column-footer">{footer()}</div>
67
+ </Show>
68
+ </div>;
69
+ }
70
+ function KanbanCard(props) {
71
+ const merged = mergeProps({ titleLines: 3 }, props);
72
+ const [local, rest] = splitProps(merged, ["class", "style", "title", "href", "titleLines", "children", "ref"]);
73
+ const title = children(() => local.title);
74
+ const body = children(() => local.children);
75
+ return <li
76
+ data-testid="kanban-card"
77
+ {...rest}
78
+ ref={mergeRefs(local.ref)}
79
+ class={cn("smwb-kanban__card", { "smwb-kanban__card_link": Boolean(local.href) }, local.class)}
80
+ style={{ ...styleObject(local.style), "--smwb-kanban-title-lines": String(local.titleLines) }}
81
+ >
82
+ <Show when={present(title())}>
83
+ <Show when={local.href} fallback={<div class="smwb-kanban__card-title">{title()}</div>}>
84
+ {(href) => <a class="smwb-kanban__card-title" href={href()}>
85
+ {title()}
86
+ </a>}
87
+ </Show>
88
+ </Show>
89
+ <Show when={present(body())}>
90
+ <div class="smwb-kanban__card-body">{body()}</div>
91
+ </Show>
92
+ </li>;
93
+ }
94
+ var kanban_default = Kanban;
95
+ export {
96
+ Kanban,
97
+ KanbanCard,
98
+ KanbanColumn,
99
+ kanban_default as default
100
+ };
101
+ //# sourceMappingURL=kanban.jsx.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/components/dataDisplay/kanban/kanban.tsx"],"sourcesContent":["import \"@smwb/ui-styles/less/tokens.entry.less\";\nimport \"@smwb/ui-styles/less/components/kanban/kanban.entry.less\";\nimport { type JSX, type ParentProps, Show, children, createUniqueId, mergeProps, splitProps } from \"solid-js\";\nimport cn from \"clsx\";\nimport { mergeRefs, type Ref } from \"../../../primitives/mergeRefs\";\n\nexport interface KanbanProps extends JSX.HTMLAttributes<HTMLDivElement> {\n /**\n * The narrowest a column gets before the board scrolls sideways: a number of\n * pixels or any CSS length. 15.5rem by default.\n */\n columnWidth?: number | string;\n ref?: Ref<HTMLDivElement>;\n}\n\nexport interface KanbanColumnProps extends Omit<JSX.HTMLAttributes<HTMLDivElement>, \"title\"> {\n /** The column's name: text or a badge. It names the column for assistive technology. */\n title: JSX.Element;\n /** How many cards the column holds (it may show fewer), beside the title. Nothing is shown for null. */\n count?: number | string | null;\n /** The column's colour, a stripe along its top: any CSS colour. */\n accent?: string;\n /** Shown in place of the cards when there are none, e.g. \"Empty\". */\n empty?: JSX.Element;\n /** Under the cards, e.g. a link to the rest as a list. */\n footer?: JSX.Element;\n ref?: Ref<HTMLDivElement>;\n}\n\nexport interface KanbanCardProps extends Omit<JSX.HTMLAttributes<HTMLLIElement>, \"title\"> {\n /** The card's title, clamped to `titleLines` lines. */\n title?: JSX.Element;\n /** Makes the title a link, and the whole card open it. */\n href?: string;\n /** Lines the title is clamped to: 3 by default. */\n titleLines?: number;\n ref?: Ref<HTMLLIElement>;\n}\n\ntype Style = JSX.CSSProperties | string | undefined;\n\nconst styleObject = (style: Style): JSX.CSSProperties => (typeof style === \"object\" && style ? style : {});\n\nconst cssLength = (value: number | string | undefined): string | undefined =>\n typeof value === \"number\" ? `${value}px` : value;\n\nconst present = (value: unknown): boolean =>\n value !== undefined && value !== null && value !== false && value !== true && value !== \"\";\n\n/** A board: KanbanColumn children side by side, scrolling sideways when they do not fit. */\nexport function Kanban(props: ParentProps<KanbanProps>): JSX.Element {\n const [local, rest] = splitProps(props, [\"class\", \"style\", \"columnWidth\", \"children\", \"ref\"]);\n return (\n <div\n data-testid=\"kanban\"\n {...rest}\n ref={mergeRefs(local.ref)}\n class={cn(\"smwb-kanban\", local.class)}\n style={{ ...styleObject(local.style), \"--smwb-kanban-column-width\": cssLength(local.columnWidth) }}\n >\n {local.children}\n </div>\n );\n}\n\n/** A column of the board: its title and count, then its KanbanCard children, or `empty` when it has none. */\nexport function KanbanColumn(props: ParentProps<KanbanColumnProps>): JSX.Element {\n const [local, rest] = splitProps(props, [\n \"class\",\n \"style\",\n \"title\",\n \"count\",\n \"accent\",\n \"empty\",\n \"footer\",\n \"children\",\n \"ref\",\n ]);\n const titleId = `${createUniqueId()}-title`;\n\n // Read each slot once: markup passed as a prop is created anew on every read,\n // and during hydration the copy made for a <Show> test has no server DOM node.\n const cards = children(() => local.children);\n const empty = children(() => local.empty);\n const footer = children(() => local.footer);\n const hasCards = (): boolean => cards.toArray().some(present);\n\n return (\n <div\n data-testid=\"kanban-column\"\n role=\"group\"\n aria-labelledby={titleId}\n {...rest}\n ref={mergeRefs(local.ref)}\n class={cn(\"smwb-kanban__column\", local.class)}\n style={{ ...styleObject(local.style), \"--smwb-kanban-accent\": local.accent }}\n >\n <div class=\"smwb-kanban__column-header\">\n <div class=\"smwb-kanban__column-title\" id={titleId}>\n {local.title}\n </div>\n <Show when={local.count !== undefined && local.count !== null}>\n <span class=\"smwb-kanban__count\">{local.count}</span>\n </Show>\n </div>\n <Show\n when={hasCards()}\n fallback={\n <Show when={present(empty())}>\n <div class=\"smwb-kanban__empty\">{empty()}</div>\n </Show>\n }\n >\n <ul class=\"smwb-kanban__cards\" role=\"list\">\n {cards()}\n </ul>\n </Show>\n <Show when={present(footer())}>\n <div class=\"smwb-kanban__column-footer\">{footer()}</div>\n </Show>\n </div>\n );\n}\n\n/**\n * A card on the board: its title (a link with `href`, and then the whole card\n * opens it) and the children under it.\n */\nexport function KanbanCard(props: ParentProps<KanbanCardProps>): JSX.Element {\n const merged = mergeProps({ titleLines: 3 }, props);\n const [local, rest] = splitProps(merged, [\"class\", \"style\", \"title\", \"href\", \"titleLines\", \"children\", \"ref\"]);\n\n const title = children(() => local.title);\n const body = children(() => local.children);\n\n return (\n <li\n data-testid=\"kanban-card\"\n {...rest}\n ref={mergeRefs(local.ref)}\n class={cn(\"smwb-kanban__card\", { \"smwb-kanban__card_link\": Boolean(local.href) }, local.class)}\n style={{ ...styleObject(local.style), \"--smwb-kanban-title-lines\": String(local.titleLines) }}\n >\n <Show when={present(title())}>\n <Show when={local.href} fallback={<div class=\"smwb-kanban__card-title\">{title()}</div>}>\n {(href) => (\n <a class=\"smwb-kanban__card-title\" href={href()}>\n {title()}\n </a>\n )}\n </Show>\n </Show>\n <Show when={present(body())}>\n <div class=\"smwb-kanban__card-body\">{body()}</div>\n </Show>\n </li>\n );\n}\n\nexport default Kanban;\n"],"mappings":"AAAA,OAAO;AACP,OAAO;AACP,SAAqC,MAAM,UAAU,gBAAgB,YAAY,kBAAkB;AACnG,OAAO,QAAQ;AACf,SAAS,iBAA2B;AAqCpC,MAAM,cAAc,CAAC,UAAqC,OAAO,UAAU,YAAY,QAAQ,QAAQ,CAAC;AAExG,MAAM,YAAY,CAAC,UACjB,OAAO,UAAU,WAAW,GAAG,KAAK,OAAO;AAE7C,MAAM,UAAU,CAAC,UACf,UAAU,UAAa,UAAU,QAAQ,UAAU,SAAS,UAAU,QAAQ,UAAU;AAGnF,SAAS,OAAO,OAA8C;AACnE,QAAM,CAAC,OAAO,IAAI,IAAI,WAAW,OAAO,CAAC,SAAS,SAAS,eAAe,YAAY,KAAK,CAAC;AAC5F,SACE,CAAC;AAAA,IACC,YAAY;AAAA,QACR;AAAA,IACJ,KAAK,UAAU,MAAM,GAAG;AAAA,IACxB,OAAO,GAAG,eAAe,MAAM,KAAK;AAAA,IACpC,OAAO,EAAE,GAAG,YAAY,MAAM,KAAK,GAAG,8BAA8B,UAAU,MAAM,WAAW,EAAE;AAAA,GAClG;AAAA,OACE,MAAM,SAAS;AAAA,IAClB,EARC;AAUL;AAGO,SAAS,aAAa,OAAoD;AAC/E,QAAM,CAAC,OAAO,IAAI,IAAI,WAAW,OAAO;AAAA,IACtC;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,CAAC;AACD,QAAM,UAAU,GAAG,eAAe,CAAC;AAInC,QAAM,QAAQ,SAAS,MAAM,MAAM,QAAQ;AAC3C,QAAM,QAAQ,SAAS,MAAM,MAAM,KAAK;AACxC,QAAM,SAAS,SAAS,MAAM,MAAM,MAAM;AAC1C,QAAM,WAAW,MAAe,MAAM,QAAQ,EAAE,KAAK,OAAO;AAE5D,SACE,CAAC;AAAA,IACC,YAAY;AAAA,IACZ,KAAK;AAAA,IACL,iBAAiB;AAAA,QACb;AAAA,IACJ,KAAK,UAAU,MAAM,GAAG;AAAA,IACxB,OAAO,GAAG,uBAAuB,MAAM,KAAK;AAAA,IAC5C,OAAO,EAAE,GAAG,YAAY,MAAM,KAAK,GAAG,wBAAwB,MAAM,OAAO;AAAA,GAC5E;AAAA,MACC,CAAC,IAAI,MAAM,6BAA6B;AAAA,QACtC,CAAC,IAAI,MAAM,4BAA4B,IAAI,SAAS;AAAA,WACjD,MAAM,MAAM;AAAA,QACf,EAFC,IAEK;AAAA,QACN,CAAC,KAAK,MAAM,MAAM,UAAU,UAAa,MAAM,UAAU,MAAM;AAAA,UAC7D,CAAC,KAAK,MAAM,sBAAsB,MAAM,MAAM,EAA7C,KAAoD;AAAA,QACvD,EAFC,KAEM;AAAA,MACT,EAPC,IAOK;AAAA,MACN,CAAC;AAAA,IACC,MAAM,SAAS;AAAA,IACf,UACE,CAAC,KAAK,MAAM,QAAQ,MAAM,CAAC,GAAG;AAAA,YAC5B,CAAC,IAAI,MAAM,sBAAsB,MAAM,EAAE,EAAxC,IAA8C;AAAA,UACjD,EAFC;AAAA,GAIJ;AAAA,QACC,CAAC,GAAG,MAAM,qBAAqB,KAAK,OAAO;AAAA,WACxC,MAAM,EAAE;AAAA,QACX,EAFC,GAEI;AAAA,MACP,EAXC,KAWM;AAAA,MACP,CAAC,KAAK,MAAM,QAAQ,OAAO,CAAC,GAAG;AAAA,QAC7B,CAAC,IAAI,MAAM,8BAA8B,OAAO,EAAE,EAAjD,IAAuD;AAAA,MAC1D,EAFC,KAEM;AAAA,IACT,EAhCC;AAkCL;AAMO,SAAS,WAAW,OAAkD;AAC3E,QAAM,SAAS,WAAW,EAAE,YAAY,EAAE,GAAG,KAAK;AAClD,QAAM,CAAC,OAAO,IAAI,IAAI,WAAW,QAAQ,CAAC,SAAS,SAAS,SAAS,QAAQ,cAAc,YAAY,KAAK,CAAC;AAE7G,QAAM,QAAQ,SAAS,MAAM,MAAM,KAAK;AACxC,QAAM,OAAO,SAAS,MAAM,MAAM,QAAQ;AAE1C,SACE,CAAC;AAAA,IACC,YAAY;AAAA,QACR;AAAA,IACJ,KAAK,UAAU,MAAM,GAAG;AAAA,IACxB,OAAO,GAAG,qBAAqB,EAAE,0BAA0B,QAAQ,MAAM,IAAI,EAAE,GAAG,MAAM,KAAK;AAAA,IAC7F,OAAO,EAAE,GAAG,YAAY,MAAM,KAAK,GAAG,6BAA6B,OAAO,MAAM,UAAU,EAAE;AAAA,GAC7F;AAAA,MACC,CAAC,KAAK,MAAM,QAAQ,MAAM,CAAC,GAAG;AAAA,QAC5B,CAAC,KAAK,MAAM,MAAM,MAAM,UAAU,CAAC,IAAI,MAAM,2BAA2B,MAAM,EAAE,EAA7C,MAAqD;AAAA,WACrF,CAAC,SACA,CAAC,EAAE,MAAM,0BAA0B,MAAM,KAAK,GAAG;AAAA,eAC9C,MAAM,EAAE;AAAA,YACX,EAFC,GAGD;AAAA,QACJ,EANC,KAMM;AAAA,MACT,EARC,KAQM;AAAA,MACP,CAAC,KAAK,MAAM,QAAQ,KAAK,CAAC,GAAG;AAAA,QAC3B,CAAC,IAAI,MAAM,0BAA0B,KAAK,EAAE,EAA3C,IAAiD;AAAA,MACpD,EAFC,KAEM;AAAA,IACT,EAnBC;AAqBL;AAEA,IAAO,iBAAQ;","names":[],"file":"kanban.jsx"}
@@ -1,5 +1,6 @@
1
+ import "@smwb/ui-styles/less/tokens.entry.less";
1
2
  import "@smwb/ui-styles/less/components/lazyImage/lazyImage.entry.less";
2
- import { Show, createSignal, mergeProps, onCleanup, onMount, splitProps } from "solid-js";
3
+ import { Show, children, createSignal, mergeProps, onCleanup, onMount, splitProps } from "solid-js";
3
4
  import cn from "clsx";
4
5
  import { mergeRefs } from "../../../primitives/mergeRefs";
5
6
  function LazyImage(props) {
@@ -38,10 +39,11 @@ function LazyImage(props) {
38
39
  };
39
40
  const showFallback = () => failed() || !local.src;
40
41
  const resolvedSrc = () => visible() ? local.src : void 0;
42
+ const fallback = children(() => showFallback() ? local.fallback : void 0);
41
43
  const style = () => local.aspectRatio != null ? { "aspect-ratio": String(local.aspectRatio) } : void 0;
42
44
  return <span class={cn("smwb-lazy-image", local.class, { "smwb-lazy-image--empty": showFallback() })} style={style()}>
43
- <Show when={showFallback() && local.fallback}>
44
- <span class="smwb-lazy-image__fallback">{local.fallback}</span>
45
+ <Show when={fallback()}>
46
+ <span class="smwb-lazy-image__fallback">{fallback()}</span>
45
47
  </Show>
46
48
  <Show when={!showFallback()}>
47
49
  <img
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/components/dataDisplay/lazyImage/lazyImage.tsx"],"sourcesContent":["import \"@smwb/ui-styles/less/components/lazyImage/lazyImage.entry.less\";\nimport { type JSX, Show, createSignal, mergeProps, onCleanup, onMount, splitProps } from \"solid-js\";\nimport cn from \"clsx\";\nimport { mergeRefs, type Ref } from \"../../../primitives/mergeRefs\";\n\nexport interface LazyImageProps extends Omit<JSX.ImgHTMLAttributes<HTMLImageElement>, \"onError\"> {\n /** Image URL. When absent (or after a load error) the `fallback` is shown. */\n src?: string | undefined;\n alt?: string | undefined;\n /** Rendered in place of the image when it is missing or fails to load. */\n fallback?: JSX.Element | undefined;\n /** Defer loading until the image scrolls into view (IntersectionObserver). Default true. */\n lazy?: boolean;\n /** CSS `aspect-ratio` for the wrapper (e.g. `1`, `\"4 / 3\"`) to reserve space before load. */\n aspectRatio?: string | number;\n /** Fires on a load error (after the fallback is swapped in). */\n onError?: (event: Event) => void;\n ref?: Ref<HTMLImageElement>;\n}\n\n/**\n * An `<img>` with a built-in `onError` fallback and optional in-viewport lazy\n * loading — the `<img decoding=async onError=…>` + `<Show>` dance hand-rolled in\n * every gallery, in one primitive. SSR-safe: renders the image markup on the\n * server; the IntersectionObserver only runs after mount on the client.\n */\nexport function LazyImage(props: LazyImageProps): JSX.Element {\n const merged = mergeProps({ lazy: true }, props);\n const [local, rest] = splitProps(merged, [\n \"src\",\n \"alt\",\n \"fallback\",\n \"lazy\",\n \"aspectRatio\",\n \"class\",\n \"onError\",\n \"ref\",\n ]);\n\n const [failed, setFailed] = createSignal(false);\n // When lazy, hold the real src back until the element scrolls into view.\n const [visible, setVisible] = createSignal(!merged.lazy);\n let imgEl: HTMLImageElement | undefined;\n\n onMount(() => {\n if (!local.lazy || visible() || !imgEl) return;\n if (typeof IntersectionObserver === \"undefined\") {\n setVisible(true);\n return;\n }\n const io = new IntersectionObserver((entries) => {\n if (entries.some((entry) => entry.isIntersecting)) {\n setVisible(true);\n io.disconnect();\n }\n });\n io.observe(imgEl);\n onCleanup(() => io.disconnect());\n });\n\n const onError = (event: Event): void => {\n setFailed(true);\n local.onError?.(event);\n };\n\n const showFallback = (): boolean => failed() || !local.src;\n const resolvedSrc = (): string | undefined => (visible() ? local.src : undefined);\n const style = (): JSX.CSSProperties | undefined =>\n local.aspectRatio != null ? { \"aspect-ratio\": String(local.aspectRatio) } : undefined;\n\n return (\n <span class={cn(\"smwb-lazy-image\", local.class, { \"smwb-lazy-image--empty\": showFallback() })} style={style()}>\n <Show when={showFallback() && local.fallback}>\n <span class=\"smwb-lazy-image__fallback\">{local.fallback}</span>\n </Show>\n <Show when={!showFallback()}>\n <img\n {...rest}\n ref={mergeRefs(local.ref, (el) => (imgEl = el as HTMLImageElement))}\n class=\"smwb-lazy-image__img\"\n src={resolvedSrc()}\n alt={local.alt ?? \"\"}\n loading={local.lazy ? \"lazy\" : undefined}\n decoding=\"async\"\n onError={onError}\n />\n </Show>\n </span>\n );\n}\n\nexport default LazyImage;\n"],"mappings":"AAAA,OAAO;AACP,SAAmB,MAAM,cAAc,YAAY,WAAW,SAAS,kBAAkB;AACzF,OAAO,QAAQ;AACf,SAAS,iBAA2B;AAuB7B,SAAS,UAAU,OAAoC;AAC5D,QAAM,SAAS,WAAW,EAAE,MAAM,KAAK,GAAG,KAAK;AAC/C,QAAM,CAAC,OAAO,IAAI,IAAI,WAAW,QAAQ;AAAA,IACvC;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,CAAC;AAED,QAAM,CAAC,QAAQ,SAAS,IAAI,aAAa,KAAK;AAE9C,QAAM,CAAC,SAAS,UAAU,IAAI,aAAa,CAAC,OAAO,IAAI;AACvD,MAAI;AAEJ,UAAQ,MAAM;AACZ,QAAI,CAAC,MAAM,QAAQ,QAAQ,KAAK,CAAC,MAAO;AACxC,QAAI,OAAO,yBAAyB,aAAa;AAC/C,iBAAW,IAAI;AACf;AAAA,IACF;AACA,UAAM,KAAK,IAAI,qBAAqB,CAAC,YAAY;AAC/C,UAAI,QAAQ,KAAK,CAAC,UAAU,MAAM,cAAc,GAAG;AACjD,mBAAW,IAAI;AACf,WAAG,WAAW;AAAA,MAChB;AAAA,IACF,CAAC;AACD,OAAG,QAAQ,KAAK;AAChB,cAAU,MAAM,GAAG,WAAW,CAAC;AAAA,EACjC,CAAC;AAED,QAAM,UAAU,CAAC,UAAuB;AACtC,cAAU,IAAI;AACd,UAAM,UAAU,KAAK;AAAA,EACvB;AAEA,QAAM,eAAe,MAAe,OAAO,KAAK,CAAC,MAAM;AACvD,QAAM,cAAc,MAA2B,QAAQ,IAAI,MAAM,MAAM;AACvE,QAAM,QAAQ,MACZ,MAAM,eAAe,OAAO,EAAE,gBAAgB,OAAO,MAAM,WAAW,EAAE,IAAI;AAE9E,SACE,CAAC,KAAK,OAAO,GAAG,mBAAmB,MAAM,OAAO,EAAE,0BAA0B,aAAa,EAAE,CAAC,GAAG,OAAO,MAAM,GAAG;AAAA,MAC7G,CAAC,KAAK,MAAM,aAAa,KAAK,MAAM,UAAU;AAAA,QAC5C,CAAC,KAAK,MAAM,6BAA6B,MAAM,SAAS,EAAvD,KAA8D;AAAA,MACjE,EAFC,KAEM;AAAA,MACP,CAAC,KAAK,MAAM,CAAC,aAAa,GAAG;AAAA,QAC3B,CAAC;AAAA,QACK;AAAA,IACJ,KAAK,UAAU,MAAM,KAAK,CAAC,OAAQ,QAAQ,EAAuB;AAAA,IAClE,MAAM;AAAA,IACN,KAAK,YAAY;AAAA,IACjB,KAAK,MAAM,OAAO;AAAA,IAClB,SAAS,MAAM,OAAO,SAAS;AAAA,IAC/B,SAAS;AAAA,IACT,SAAS;AAAA,EACX,EAAE;AAAA,MACJ,EAXC,KAWM;AAAA,IACT,EAhBC;AAkBL;AAEA,IAAO,oBAAQ;","names":[],"file":"lazyImage.jsx"}
1
+ {"version":3,"sources":["../../../../../src/components/dataDisplay/lazyImage/lazyImage.tsx"],"sourcesContent":["import \"@smwb/ui-styles/less/tokens.entry.less\";\nimport \"@smwb/ui-styles/less/components/lazyImage/lazyImage.entry.less\";\nimport { type JSX, Show, children, createSignal, mergeProps, onCleanup, onMount, splitProps } from \"solid-js\";\nimport cn from \"clsx\";\nimport { mergeRefs, type Ref } from \"../../../primitives/mergeRefs\";\n\nexport interface LazyImageProps extends Omit<JSX.ImgHTMLAttributes<HTMLImageElement>, \"onError\"> {\n /** Image URL. When absent (or after a load error) the `fallback` is shown. */\n src?: string | undefined;\n alt?: string | undefined;\n /** Rendered in place of the image when it is missing or fails to load. */\n fallback?: JSX.Element | undefined;\n /** Defer loading until the image scrolls into view (IntersectionObserver). Default true. */\n lazy?: boolean;\n /** CSS `aspect-ratio` for the wrapper (e.g. `1`, `\"4 / 3\"`) to reserve space before load. */\n aspectRatio?: string | number;\n /** Fires on a load error (after the fallback is swapped in). */\n onError?: (event: Event) => void;\n ref?: Ref<HTMLImageElement>;\n}\n\n/**\n * An `<img>` with a built-in `onError` fallback and optional in-viewport lazy\n * loading — the `<img decoding=async onError=…>` + `<Show>` dance hand-rolled in\n * every gallery, in one primitive. SSR-safe: renders the image markup on the\n * server; the IntersectionObserver only runs after mount on the client.\n */\nexport function LazyImage(props: LazyImageProps): JSX.Element {\n const merged = mergeProps({ lazy: true }, props);\n const [local, rest] = splitProps(merged, [\n \"src\",\n \"alt\",\n \"fallback\",\n \"lazy\",\n \"aspectRatio\",\n \"class\",\n \"onError\",\n \"ref\",\n ]);\n\n const [failed, setFailed] = createSignal(false);\n // When lazy, hold the real src back until the element scrolls into view.\n const [visible, setVisible] = createSignal(!merged.lazy);\n let imgEl: HTMLImageElement | undefined;\n\n onMount(() => {\n if (!local.lazy || visible() || !imgEl) return;\n if (typeof IntersectionObserver === \"undefined\") {\n setVisible(true);\n return;\n }\n const io = new IntersectionObserver((entries) => {\n if (entries.some((entry) => entry.isIntersecting)) {\n setVisible(true);\n io.disconnect();\n }\n });\n io.observe(imgEl);\n onCleanup(() => io.disconnect());\n });\n\n const onError = (event: Event): void => {\n setFailed(true);\n local.onError?.(event);\n };\n\n const showFallback = (): boolean => failed() || !local.src;\n const resolvedSrc = (): string | undefined => (visible() ? local.src : undefined);\n // Read the fallback once, and only while it is drawn: markup passed as a prop\n // is created anew on every read, and during hydration a copy the server never\n // rendered has no DOM node.\n const fallback = children(() => (showFallback() ? local.fallback : undefined));\n const style = (): JSX.CSSProperties | undefined =>\n local.aspectRatio != null ? { \"aspect-ratio\": String(local.aspectRatio) } : undefined;\n\n return (\n <span class={cn(\"smwb-lazy-image\", local.class, { \"smwb-lazy-image--empty\": showFallback() })} style={style()}>\n <Show when={fallback()}>\n <span class=\"smwb-lazy-image__fallback\">{fallback()}</span>\n </Show>\n <Show when={!showFallback()}>\n <img\n {...rest}\n ref={mergeRefs(local.ref, (el) => (imgEl = el as HTMLImageElement))}\n class=\"smwb-lazy-image__img\"\n src={resolvedSrc()}\n alt={local.alt ?? \"\"}\n loading={local.lazy ? \"lazy\" : undefined}\n decoding=\"async\"\n onError={onError}\n />\n </Show>\n </span>\n );\n}\n\nexport default LazyImage;\n"],"mappings":"AAAA,OAAO;AACP,OAAO;AACP,SAAmB,MAAM,UAAU,cAAc,YAAY,WAAW,SAAS,kBAAkB;AACnG,OAAO,QAAQ;AACf,SAAS,iBAA2B;AAuB7B,SAAS,UAAU,OAAoC;AAC5D,QAAM,SAAS,WAAW,EAAE,MAAM,KAAK,GAAG,KAAK;AAC/C,QAAM,CAAC,OAAO,IAAI,IAAI,WAAW,QAAQ;AAAA,IACvC;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,CAAC;AAED,QAAM,CAAC,QAAQ,SAAS,IAAI,aAAa,KAAK;AAE9C,QAAM,CAAC,SAAS,UAAU,IAAI,aAAa,CAAC,OAAO,IAAI;AACvD,MAAI;AAEJ,UAAQ,MAAM;AACZ,QAAI,CAAC,MAAM,QAAQ,QAAQ,KAAK,CAAC,MAAO;AACxC,QAAI,OAAO,yBAAyB,aAAa;AAC/C,iBAAW,IAAI;AACf;AAAA,IACF;AACA,UAAM,KAAK,IAAI,qBAAqB,CAAC,YAAY;AAC/C,UAAI,QAAQ,KAAK,CAAC,UAAU,MAAM,cAAc,GAAG;AACjD,mBAAW,IAAI;AACf,WAAG,WAAW;AAAA,MAChB;AAAA,IACF,CAAC;AACD,OAAG,QAAQ,KAAK;AAChB,cAAU,MAAM,GAAG,WAAW,CAAC;AAAA,EACjC,CAAC;AAED,QAAM,UAAU,CAAC,UAAuB;AACtC,cAAU,IAAI;AACd,UAAM,UAAU,KAAK;AAAA,EACvB;AAEA,QAAM,eAAe,MAAe,OAAO,KAAK,CAAC,MAAM;AACvD,QAAM,cAAc,MAA2B,QAAQ,IAAI,MAAM,MAAM;AAIvE,QAAM,WAAW,SAAS,MAAO,aAAa,IAAI,MAAM,WAAW,MAAU;AAC7E,QAAM,QAAQ,MACZ,MAAM,eAAe,OAAO,EAAE,gBAAgB,OAAO,MAAM,WAAW,EAAE,IAAI;AAE9E,SACE,CAAC,KAAK,OAAO,GAAG,mBAAmB,MAAM,OAAO,EAAE,0BAA0B,aAAa,EAAE,CAAC,GAAG,OAAO,MAAM,GAAG;AAAA,MAC7G,CAAC,KAAK,MAAM,SAAS,GAAG;AAAA,QACtB,CAAC,KAAK,MAAM,6BAA6B,SAAS,EAAE,EAAnD,KAA0D;AAAA,MAC7D,EAFC,KAEM;AAAA,MACP,CAAC,KAAK,MAAM,CAAC,aAAa,GAAG;AAAA,QAC3B,CAAC;AAAA,QACK;AAAA,IACJ,KAAK,UAAU,MAAM,KAAK,CAAC,OAAQ,QAAQ,EAAuB;AAAA,IAClE,MAAM;AAAA,IACN,KAAK,YAAY;AAAA,IACjB,KAAK,MAAM,OAAO;AAAA,IAClB,SAAS,MAAM,OAAO,SAAS;AAAA,IAC/B,SAAS;AAAA,IACT,SAAS;AAAA,EACX,EAAE;AAAA,MACJ,EAXC,KAWM;AAAA,IACT,EAhBC;AAkBL;AAEA,IAAO,oBAAQ;","names":[],"file":"lazyImage.jsx"}
@@ -1,9 +1,11 @@
1
+ import "@smwb/ui-styles/less/tokens.entry.less";
1
2
  import "@smwb/ui-styles/less/components/list/list.entry.less";
2
- import { Show, splitProps } from "solid-js";
3
+ import { Show, children, splitProps } from "solid-js";
3
4
  import cn from "clsx";
4
5
  import { mergeRefs } from "../../../primitives/mergeRefs";
5
6
  function List(props) {
6
7
  const [local, rest] = splitProps(props, ["class", "dense", "subheader", "children", "ref"]);
8
+ const subheader = children(() => local.subheader);
7
9
  return <ul
8
10
  {...rest}
9
11
  ref={mergeRefs(local.ref)}
@@ -11,8 +13,8 @@ function List(props) {
11
13
  role="list"
12
14
  class={cn("smwb-list", { "smwb-list_dense": local.dense }, local.class)}
13
15
  >
14
- <Show when={local.subheader}>
15
- <li class="smwb-list__subheader">{local.subheader}</li>
16
+ <Show when={subheader()}>
17
+ <li class="smwb-list__subheader">{subheader()}</li>
16
18
  </Show>
17
19
  {local.children}
18
20
  </ul>;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/components/dataDisplay/list/list.tsx"],"sourcesContent":["import \"@smwb/ui-styles/less/components/list/list.entry.less\";\nimport { type JSX, type ParentProps, Show, splitProps } from \"solid-js\";\nimport cn from \"clsx\";\nimport { mergeRefs, type Ref } from \"../../../primitives/mergeRefs\";\n\nexport interface ListProps extends JSX.HTMLAttributes<HTMLUListElement> {\n /** Compact vertical rhythm. */\n dense?: boolean;\n /** Section subheader rendered before the items. */\n subheader?: JSX.Element;\n ref?: Ref<HTMLUListElement>;\n}\n\nexport function List(props: ParentProps<ListProps>): JSX.Element {\n const [local, rest] = splitProps(props, [\"class\", \"dense\", \"subheader\", \"children\", \"ref\"]);\n return (\n <ul\n {...rest}\n ref={mergeRefs(local.ref)}\n data-testid=\"list\"\n role=\"list\"\n class={cn(\"smwb-list\", { \"smwb-list_dense\": local.dense }, local.class)}\n >\n <Show when={local.subheader}>\n <li class=\"smwb-list__subheader\">{local.subheader}</li>\n </Show>\n {local.children}\n </ul>\n );\n}\n\nexport default List;\n"],"mappings":"AAAA,OAAO;AACP,SAAqC,MAAM,kBAAkB;AAC7D,OAAO,QAAQ;AACf,SAAS,iBAA2B;AAU7B,SAAS,KAAK,OAA4C;AAC/D,QAAM,CAAC,OAAO,IAAI,IAAI,WAAW,OAAO,CAAC,SAAS,SAAS,aAAa,YAAY,KAAK,CAAC;AAC1F,SACE,CAAC;AAAA,QACK;AAAA,IACJ,KAAK,UAAU,MAAM,GAAG;AAAA,IACxB,YAAY;AAAA,IACZ,KAAK;AAAA,IACL,OAAO,GAAG,aAAa,EAAE,mBAAmB,MAAM,MAAM,GAAG,MAAM,KAAK;AAAA,GACvE;AAAA,MACC,CAAC,KAAK,MAAM,MAAM,WAAW;AAAA,QAC3B,CAAC,GAAG,MAAM,wBAAwB,MAAM,UAAU,EAAjD,GAAsD;AAAA,MACzD,EAFC,KAEM;AAAA,OACN,MAAM,SAAS;AAAA,IAClB,EAXC;AAaL;AAEA,IAAO,eAAQ;","names":[],"file":"list.jsx"}
1
+ {"version":3,"sources":["../../../../../src/components/dataDisplay/list/list.tsx"],"sourcesContent":["import \"@smwb/ui-styles/less/tokens.entry.less\";\nimport \"@smwb/ui-styles/less/components/list/list.entry.less\";\nimport { type JSX, type ParentProps, Show, children, splitProps } from \"solid-js\";\nimport cn from \"clsx\";\nimport { mergeRefs, type Ref } from \"../../../primitives/mergeRefs\";\n\nexport interface ListProps extends JSX.HTMLAttributes<HTMLUListElement> {\n /** Compact vertical rhythm. */\n dense?: boolean;\n /** Section subheader rendered before the items. */\n subheader?: JSX.Element;\n ref?: Ref<HTMLUListElement>;\n}\n\nexport function List(props: ParentProps<ListProps>): JSX.Element {\n const [local, rest] = splitProps(props, [\"class\", \"dense\", \"subheader\", \"children\", \"ref\"]);\n // Read the subheader once: markup passed as a prop is created anew on every\n // read, and during hydration a copy the server never rendered has no DOM node.\n const subheader = children(() => local.subheader);\n return (\n <ul\n {...rest}\n ref={mergeRefs(local.ref)}\n data-testid=\"list\"\n role=\"list\"\n class={cn(\"smwb-list\", { \"smwb-list_dense\": local.dense }, local.class)}\n >\n <Show when={subheader()}>\n <li class=\"smwb-list__subheader\">{subheader()}</li>\n </Show>\n {local.children}\n </ul>\n );\n}\n\nexport default List;\n"],"mappings":"AAAA,OAAO;AACP,OAAO;AACP,SAAqC,MAAM,UAAU,kBAAkB;AACvE,OAAO,QAAQ;AACf,SAAS,iBAA2B;AAU7B,SAAS,KAAK,OAA4C;AAC/D,QAAM,CAAC,OAAO,IAAI,IAAI,WAAW,OAAO,CAAC,SAAS,SAAS,aAAa,YAAY,KAAK,CAAC;AAG1F,QAAM,YAAY,SAAS,MAAM,MAAM,SAAS;AAChD,SACE,CAAC;AAAA,QACK;AAAA,IACJ,KAAK,UAAU,MAAM,GAAG;AAAA,IACxB,YAAY;AAAA,IACZ,KAAK;AAAA,IACL,OAAO,GAAG,aAAa,EAAE,mBAAmB,MAAM,MAAM,GAAG,MAAM,KAAK;AAAA,GACvE;AAAA,MACC,CAAC,KAAK,MAAM,UAAU,GAAG;AAAA,QACvB,CAAC,GAAG,MAAM,wBAAwB,UAAU,EAAE,EAA7C,GAAkD;AAAA,MACrD,EAFC,KAEM;AAAA,OACN,MAAM,SAAS;AAAA,IAClB,EAXC;AAaL;AAEA,IAAO,eAAQ;","names":[],"file":"list.jsx"}
@@ -0,0 +1,8 @@
1
+ import { Meter, meterColor, DEFAULT_METER_THRESHOLDS, default as default2 } from "./meter";
2
+ export {
3
+ DEFAULT_METER_THRESHOLDS,
4
+ Meter,
5
+ default2 as default,
6
+ meterColor
7
+ };
8
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../src/components/dataDisplay/meter/index.ts"],
4
+ "sourcesContent": ["export { Meter, meterColor, DEFAULT_METER_THRESHOLDS, default } from \"./meter\";\nexport type { MeterProps, MeterColor, MeterThreshold } from \"./meter\";\n"],
5
+ "mappings": "AAAA,SAAS,OAAO,YAAY,0BAA0B,WAAAA,gBAAe;",
6
+ "names": ["default"]
7
+ }
@@ -0,0 +1,82 @@
1
+ import "@smwb/ui-styles/less/tokens.entry.less";
2
+ import "@smwb/ui-styles/less/components/meter/meter.entry.less";
3
+ import { Show, children, mergeProps, splitProps } from "solid-js";
4
+ import cn from "clsx";
5
+ import { mergeRefs } from "../../../primitives/mergeRefs";
6
+ const DEFAULT_METER_THRESHOLDS = [
7
+ { from: 0, color: "info" },
8
+ { from: 1, color: "success" }
9
+ ];
10
+ function meterColor(share, thresholds) {
11
+ let color = "neutral";
12
+ let from = -Infinity;
13
+ for (const threshold of thresholds) {
14
+ if (share >= threshold.from && threshold.from >= from) {
15
+ color = threshold.color;
16
+ from = threshold.from;
17
+ }
18
+ }
19
+ return color;
20
+ }
21
+ function Meter(props) {
22
+ const merged = mergeProps({ ofLabel: "of", thresholds: DEFAULT_METER_THRESHOLDS }, props);
23
+ const [local, rest] = splitProps(merged, [
24
+ "class",
25
+ "value",
26
+ "max",
27
+ "label",
28
+ "text",
29
+ "ofLabel",
30
+ "thresholds",
31
+ "color",
32
+ "hideText",
33
+ "ref"
34
+ ]);
35
+ const share = () => local.max > 0 ? Math.min(1, Math.max(0, local.value / local.max)) : 0;
36
+ const color = () => local.color ?? meterColor(share(), local.thresholds);
37
+ const custom = children(() => local.text);
38
+ const text = () => {
39
+ const resolved = custom();
40
+ return typeof resolved === "function" ? resolved(local.value, local.max) : resolved;
41
+ };
42
+ return <div
43
+ {...rest}
44
+ ref={mergeRefs(local.ref)}
45
+ role="meter"
46
+ aria-label={local.label}
47
+ aria-valuenow={local.value}
48
+ aria-valuemin={0}
49
+ aria-valuemax={local.max}
50
+ aria-valuetext={`${local.value} ${local.ofLabel} ${local.max}`}
51
+ data-testid="meter"
52
+ class={cn("smwb-meter", `smwb-meter_color-${color()}`, { "smwb-meter_bar-only": local.hideText }, local.class)}
53
+ >
54
+ <span class="smwb-meter__track" aria-hidden="true">
55
+ <span class="smwb-meter__fill" style={{ width: `${share() * 100}%` }} />
56
+ </span>
57
+ <Show when={!local.hideText}>
58
+ <span class="smwb-meter__text" aria-hidden="true">
59
+ <Show
60
+ when={custom() !== void 0}
61
+ fallback={<>
62
+ <b class="smwb-meter__value">{local.value}</b>
63
+ <span class="smwb-meter__of">
64
+ {" "}
65
+ {local.ofLabel} {local.max}
66
+ </span>
67
+ </>}
68
+ >
69
+ {text()}
70
+ </Show>
71
+ </span>
72
+ </Show>
73
+ </div>;
74
+ }
75
+ var meter_default = Meter;
76
+ export {
77
+ DEFAULT_METER_THRESHOLDS,
78
+ Meter,
79
+ meter_default as default,
80
+ meterColor
81
+ };
82
+ //# sourceMappingURL=meter.jsx.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/components/dataDisplay/meter/meter.tsx"],"sourcesContent":["import \"@smwb/ui-styles/less/tokens.entry.less\";\nimport \"@smwb/ui-styles/less/components/meter/meter.entry.less\";\nimport { type JSX, Show, children, mergeProps, splitProps } from \"solid-js\";\nimport cn from \"clsx\";\nimport { mergeRefs, type Ref } from \"../../../primitives/mergeRefs\";\n\nexport type MeterColor = \"neutral\" | \"primary\" | \"info\" | \"success\" | \"warning\" | \"error\";\n\n/** From this share of `max` (0–1) on, the meter takes `color`. */\nexport interface MeterThreshold {\n from: number;\n color: MeterColor;\n}\n\n/** Info while under way, success when complete. */\nexport const DEFAULT_METER_THRESHOLDS: readonly MeterThreshold[] = [\n { from: 0, color: \"info\" },\n { from: 1, color: \"success\" },\n];\n\nexport interface MeterProps extends Omit<JSX.HTMLAttributes<HTMLDivElement>, \"role\"> {\n /** How many are done (X of Y). */\n value: number;\n /** How many there are in all (X of Y). */\n max: number;\n /** What is measured — the accessible name, e.g. \"Requirements accepted\". */\n label: string;\n /** Visible text instead of \"X of Y\": markup, or a function of (value, max). */\n text?: JSX.Element | ((value: number, max: number) => JSX.Element);\n /** The word between the figures in the default text and in aria-valuetext. */\n ofLabel?: string;\n /** Colour by share of `max`: the last threshold the share reaches wins. */\n thresholds?: readonly MeterThreshold[];\n /** A fixed colour, instead of the thresholds. */\n color?: MeterColor;\n /** The bar only; the text stays available to assistive technology. */\n hideText?: boolean;\n ref?: Ref<HTMLDivElement>;\n}\n\n/** The colour for a share of the whole: the last threshold (by `from`) the share reaches. */\nexport function meterColor(share: number, thresholds: readonly MeterThreshold[]): MeterColor {\n let color: MeterColor = \"neutral\";\n let from = -Infinity;\n for (const threshold of thresholds) {\n if (share >= threshold.from && threshold.from >= from) {\n color = threshold.color;\n from = threshold.from;\n }\n }\n return color;\n}\n\n/** A share of a whole, \"X of Y\": a bar and the figures beside it, coloured by thresholds. */\nexport function Meter(props: MeterProps): JSX.Element {\n const merged = mergeProps({ ofLabel: \"of\", thresholds: DEFAULT_METER_THRESHOLDS }, props);\n const [local, rest] = splitProps(merged, [\n \"class\",\n \"value\",\n \"max\",\n \"label\",\n \"text\",\n \"ofLabel\",\n \"thresholds\",\n \"color\",\n \"hideText\",\n \"ref\",\n ]);\n\n const share = (): number => (local.max > 0 ? Math.min(1, Math.max(0, local.value / local.max)) : 0);\n const color = (): MeterColor => local.color ?? meterColor(share(), local.thresholds);\n // Read the text once: markup passed as a prop is created anew on every read,\n // and during hydration a copy made only to test it has no server DOM node. A\n // function of (value, max) is kept as it is and called where the text renders.\n const custom = children(() => local.text as JSX.Element);\n const text = (): JSX.Element => {\n const resolved = custom() as JSX.Element | ((value: number, max: number) => JSX.Element);\n return typeof resolved === \"function\" ? resolved(local.value, local.max) : resolved;\n };\n\n return (\n <div\n {...rest}\n ref={mergeRefs(local.ref)}\n role=\"meter\"\n aria-label={local.label}\n aria-valuenow={local.value}\n aria-valuemin={0}\n aria-valuemax={local.max}\n aria-valuetext={`${local.value} ${local.ofLabel} ${local.max}`}\n data-testid=\"meter\"\n class={cn(\"smwb-meter\", `smwb-meter_color-${color()}`, { \"smwb-meter_bar-only\": local.hideText }, local.class)}\n >\n <span class=\"smwb-meter__track\" aria-hidden=\"true\">\n <span class=\"smwb-meter__fill\" style={{ width: `${share() * 100}%` }} />\n </span>\n <Show when={!local.hideText}>\n <span class=\"smwb-meter__text\" aria-hidden=\"true\">\n <Show\n when={custom() !== undefined}\n fallback={\n <>\n <b class=\"smwb-meter__value\">{local.value}</b>\n <span class=\"smwb-meter__of\">\n {\" \"}\n {local.ofLabel} {local.max}\n </span>\n </>\n }\n >\n {text()}\n </Show>\n </span>\n </Show>\n </div>\n );\n}\n\nexport default Meter;\n"],"mappings":"AAAA,OAAO;AACP,OAAO;AACP,SAAmB,MAAM,UAAU,YAAY,kBAAkB;AACjE,OAAO,QAAQ;AACf,SAAS,iBAA2B;AAW7B,MAAM,2BAAsD;AAAA,EACjE,EAAE,MAAM,GAAG,OAAO,OAAO;AAAA,EACzB,EAAE,MAAM,GAAG,OAAO,UAAU;AAC9B;AAuBO,SAAS,WAAW,OAAe,YAAmD;AAC3F,MAAI,QAAoB;AACxB,MAAI,OAAO;AACX,aAAW,aAAa,YAAY;AAClC,QAAI,SAAS,UAAU,QAAQ,UAAU,QAAQ,MAAM;AACrD,cAAQ,UAAU;AAClB,aAAO,UAAU;AAAA,IACnB;AAAA,EACF;AACA,SAAO;AACT;AAGO,SAAS,MAAM,OAAgC;AACpD,QAAM,SAAS,WAAW,EAAE,SAAS,MAAM,YAAY,yBAAyB,GAAG,KAAK;AACxF,QAAM,CAAC,OAAO,IAAI,IAAI,WAAW,QAAQ;AAAA,IACvC;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,CAAC;AAED,QAAM,QAAQ,MAAe,MAAM,MAAM,IAAI,KAAK,IAAI,GAAG,KAAK,IAAI,GAAG,MAAM,QAAQ,MAAM,GAAG,CAAC,IAAI;AACjG,QAAM,QAAQ,MAAkB,MAAM,SAAS,WAAW,MAAM,GAAG,MAAM,UAAU;AAInF,QAAM,SAAS,SAAS,MAAM,MAAM,IAAmB;AACvD,QAAM,OAAO,MAAmB;AAC9B,UAAM,WAAW,OAAO;AACxB,WAAO,OAAO,aAAa,aAAa,SAAS,MAAM,OAAO,MAAM,GAAG,IAAI;AAAA,EAC7E;AAEA,SACE,CAAC;AAAA,QACK;AAAA,IACJ,KAAK,UAAU,MAAM,GAAG;AAAA,IACxB,KAAK;AAAA,IACL,YAAY,MAAM;AAAA,IAClB,eAAe,MAAM;AAAA,IACrB,eAAe;AAAA,IACf,eAAe,MAAM;AAAA,IACrB,gBAAgB,GAAG,MAAM,KAAK,IAAI,MAAM,OAAO,IAAI,MAAM,GAAG;AAAA,IAC5D,YAAY;AAAA,IACZ,OAAO,GAAG,cAAc,oBAAoB,MAAM,CAAC,IAAI,EAAE,uBAAuB,MAAM,SAAS,GAAG,MAAM,KAAK;AAAA,GAC9G;AAAA,MACC,CAAC,KAAK,MAAM,oBAAoB,YAAY,OAAO;AAAA,QACjD,CAAC,KAAK,MAAM,mBAAmB,OAAO,EAAE,OAAO,GAAG,MAAM,IAAI,GAAG,IAAI,GAAG,EAAE;AAAA,MAC1E,EAFC,KAEM;AAAA,MACP,CAAC,KAAK,MAAM,CAAC,MAAM,UAAU;AAAA,QAC3B,CAAC,KAAK,MAAM,mBAAmB,YAAY,OAAO;AAAA,UAChD,CAAC;AAAA,IACC,MAAM,OAAO,MAAM;AAAA,IACnB,UACE,EAAE;AAAA,gBACA,CAAC,EAAE,MAAM,qBAAqB,MAAM,MAAM,EAAzC,EAA6C;AAAA,gBAC9C,CAAC,KAAK,MAAM,iBAAiB;AAAA,mBAC1B,IAAI;AAAA,mBACJ,MAAM,QAAQ,EAAE,MAAM,IAAI;AAAA,gBAC7B,EAHC,KAGM;AAAA,cACT;AAAA,GAEH;AAAA,aACE,KAAK,EAAE;AAAA,UACV,EAbC,KAaM;AAAA,QACT,EAfC,KAeM;AAAA,MACT,EAjBC,KAiBM;AAAA,IACT,EAjCC;AAmCL;AAEA,IAAO,gBAAQ;","names":[],"file":"meter.jsx"}
@@ -0,0 +1,8 @@
1
+ import { PersonChip, initialsOf, avatarColor, default as default2 } from "./personChip";
2
+ export {
3
+ PersonChip,
4
+ avatarColor,
5
+ default2 as default,
6
+ initialsOf
7
+ };
8
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../src/components/dataDisplay/personChip/index.ts"],
4
+ "sourcesContent": ["export { PersonChip, initialsOf, avatarColor, default } from \"./personChip\";\nexport type { PersonChipProps } from \"./personChip\";\n"],
5
+ "mappings": "AAAA,SAAS,YAAY,YAAY,aAAa,WAAAA,gBAAe;",
6
+ "names": ["default"]
7
+ }
@@ -0,0 +1,73 @@
1
+ import "@smwb/ui-styles/less/tokens.entry.less";
2
+ import "@smwb/ui-styles/less/components/personChip/personChip.entry.less";
3
+ import { Show, children, mergeProps, splitProps } from "solid-js";
4
+ import { Dynamic } from "solid-js/web";
5
+ import cn from "clsx";
6
+ import { Avatar } from "../avatar";
7
+ import { mergeRefs } from "../../../primitives/mergeRefs";
8
+ function initialsOf(name) {
9
+ const words = name.trim().split(/\s+/).filter(Boolean);
10
+ const first = (word) => word ? Array.from(word)[0] ?? "" : "";
11
+ return (first(words[0]) + (words.length > 1 ? first(words[words.length - 1]) : "")).toUpperCase();
12
+ }
13
+ function avatarColor(seed) {
14
+ let hash = 0;
15
+ for (const char of seed) hash = hash * 31 + (char.codePointAt(0) ?? 0) >>> 0;
16
+ return `hsl(${hash % 360} 42% 42%)`;
17
+ }
18
+ function PersonText(props) {
19
+ const meta = children(() => props.meta);
20
+ return <span class="smwb-person-chip__text">
21
+ <span class="smwb-person-chip__name">{props.name}</span>
22
+ <Show when={meta()}>
23
+ <span class="smwb-person-chip__meta">{meta()}</span>
24
+ </Show>
25
+ </span>;
26
+ }
27
+ function PersonChip(props) {
28
+ const merged = mergeProps({ size: 24 }, props);
29
+ const [local, rest] = splitProps(merged, [
30
+ "class",
31
+ "name",
32
+ "src",
33
+ "href",
34
+ "compact",
35
+ "size",
36
+ "colorSeed",
37
+ "color",
38
+ "meta",
39
+ "ref"
40
+ ]);
41
+ return <Dynamic
42
+ component={local.href ? "a" : "span"}
43
+ {...rest}
44
+ ref={mergeRefs(local.ref)}
45
+ href={local.href}
46
+ title={local.compact ? local.name : void 0}
47
+ role={local.compact && !local.href ? "img" : void 0}
48
+ aria-label={local.compact ? local.name : void 0}
49
+ data-testid="person-chip"
50
+ class={cn("smwb-person-chip", { "smwb-person-chip_link": !!local.href, "smwb-person-chip_compact": local.compact }, local.class)}
51
+ >
52
+ <Avatar
53
+ class="smwb-person-chip__avatar"
54
+ size={local.size}
55
+ src={local.src}
56
+ color={local.color ?? avatarColor(local.colorSeed ?? local.name)}
57
+ aria-hidden="true"
58
+ >
59
+ {initialsOf(local.name)}
60
+ </Avatar>
61
+ <Show when={!local.compact}>
62
+ <PersonText name={local.name} meta={local.meta} />
63
+ </Show>
64
+ </Dynamic>;
65
+ }
66
+ var personChip_default = PersonChip;
67
+ export {
68
+ PersonChip,
69
+ avatarColor,
70
+ personChip_default as default,
71
+ initialsOf
72
+ };
73
+ //# sourceMappingURL=personChip.jsx.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/components/dataDisplay/personChip/personChip.tsx"],"sourcesContent":["import \"@smwb/ui-styles/less/tokens.entry.less\";\nimport \"@smwb/ui-styles/less/components/personChip/personChip.entry.less\";\nimport { type JSX, Show, children, mergeProps, splitProps } from \"solid-js\";\nimport { Dynamic } from \"solid-js/web\";\nimport cn from \"clsx\";\nimport { Avatar, type AvatarSize } from \"../avatar\";\nimport { mergeRefs, type Ref } from \"../../../primitives/mergeRefs\";\n\n/** Up to two initials from a name: \"Anna Petrova\" → \"AP\", \"anna\" → \"A\". */\nexport function initialsOf(name: string): string {\n const words = name.trim().split(/\\s+/).filter(Boolean);\n const first = (word: string | undefined): string => (word ? (Array.from(word)[0] ?? \"\") : \"\");\n return (first(words[0]) + (words.length > 1 ? first(words[words.length - 1]) : \"\")).toUpperCase();\n}\n\n/**\n * A steady background colour for a person's avatar, derived from a seed (an id\n * or the name): the same person always gets the same colour, on the server too.\n */\nexport function avatarColor(seed: string): string {\n let hash = 0;\n for (const char of seed) hash = (hash * 31 + (char.codePointAt(0) ?? 0)) >>> 0;\n return `hsl(${hash % 360} 42% 42%)`;\n}\n\nexport interface PersonChipProps extends Omit<JSX.HTMLAttributes<HTMLElement>, \"title\"> {\n /** The person's name: shown beside the avatar, and the source of its initials. */\n name: string;\n /** Avatar image; initials on a colour without it or when it fails. */\n src?: string;\n /** Link to the person's card. */\n href?: string;\n /** The avatar only; the name becomes its tooltip and accessible name. */\n compact?: boolean;\n /** Avatar size: a preset or pixels. 24px by default. */\n size?: AvatarSize | number;\n /** Seed for the avatar colour (an id); the name by default. */\n colorSeed?: string;\n /** A fixed avatar colour instead of the derived one. */\n color?: string;\n /** A second line under the name: a role, a date. */\n meta?: JSX.Element;\n ref?: Ref<HTMLElement>;\n}\n\n/** The name and the meta line. Meta is read here, where it renders: markup\n * created and not rendered (a compact chip) would have no server node. */\nfunction PersonText(props: { name: string; meta: JSX.Element }): JSX.Element {\n const meta = children(() => props.meta);\n return (\n <span class=\"smwb-person-chip__text\">\n <span class=\"smwb-person-chip__name\">{props.name}</span>\n <Show when={meta()}>\n <span class=\"smwb-person-chip__meta\">{meta()}</span>\n </Show>\n </span>\n );\n}\n\n/** A person: avatar and name, a link to their card when `href` is set. */\nexport function PersonChip(props: PersonChipProps): JSX.Element {\n const merged = mergeProps({ size: 24 as AvatarSize | number }, props);\n const [local, rest] = splitProps(merged, [\n \"class\",\n \"name\",\n \"src\",\n \"href\",\n \"compact\",\n \"size\",\n \"colorSeed\",\n \"color\",\n \"meta\",\n \"ref\",\n ]);\n\n return (\n <Dynamic\n component={local.href ? \"a\" : \"span\"}\n {...rest}\n ref={mergeRefs(local.ref)}\n href={local.href}\n title={local.compact ? local.name : undefined}\n role={local.compact && !local.href ? \"img\" : undefined}\n aria-label={local.compact ? local.name : undefined}\n data-testid=\"person-chip\"\n class={cn(\"smwb-person-chip\", { \"smwb-person-chip_link\": !!local.href, \"smwb-person-chip_compact\": local.compact }, local.class)}\n >\n <Avatar\n class=\"smwb-person-chip__avatar\"\n size={local.size}\n src={local.src}\n color={local.color ?? avatarColor(local.colorSeed ?? local.name)}\n aria-hidden=\"true\"\n >\n {initialsOf(local.name)}\n </Avatar>\n <Show when={!local.compact}>\n <PersonText name={local.name} meta={local.meta} />\n </Show>\n </Dynamic>\n );\n}\n\nexport default PersonChip;\n"],"mappings":"AAAA,OAAO;AACP,OAAO;AACP,SAAmB,MAAM,UAAU,YAAY,kBAAkB;AACjE,SAAS,eAAe;AACxB,OAAO,QAAQ;AACf,SAAS,cAA+B;AACxC,SAAS,iBAA2B;AAG7B,SAAS,WAAW,MAAsB;AAC/C,QAAM,QAAQ,KAAK,KAAK,EAAE,MAAM,KAAK,EAAE,OAAO,OAAO;AACrD,QAAM,QAAQ,CAAC,SAAsC,OAAQ,MAAM,KAAK,IAAI,EAAE,CAAC,KAAK,KAAM;AAC1F,UAAQ,MAAM,MAAM,CAAC,CAAC,KAAK,MAAM,SAAS,IAAI,MAAM,MAAM,MAAM,SAAS,CAAC,CAAC,IAAI,KAAK,YAAY;AAClG;AAMO,SAAS,YAAY,MAAsB;AAChD,MAAI,OAAO;AACX,aAAW,QAAQ,KAAM,QAAQ,OAAO,MAAM,KAAK,YAAY,CAAC,KAAK,OAAQ;AAC7E,SAAO,OAAO,OAAO,GAAG;AAC1B;AAwBA,SAAS,WAAW,OAAyD;AAC3E,QAAM,OAAO,SAAS,MAAM,MAAM,IAAI;AACtC,SACE,CAAC,KAAK,MAAM,yBAAyB;AAAA,MACnC,CAAC,KAAK,MAAM,0BAA0B,MAAM,KAAK,EAAhD,KAAuD;AAAA,MACxD,CAAC,KAAK,MAAM,KAAK,GAAG;AAAA,QAClB,CAAC,KAAK,MAAM,0BAA0B,KAAK,EAAE,EAA5C,KAAmD;AAAA,MACtD,EAFC,KAEM;AAAA,IACT,EALC;AAOL;AAGO,SAAS,WAAW,OAAqC;AAC9D,QAAM,SAAS,WAAW,EAAE,MAAM,GAA0B,GAAG,KAAK;AACpE,QAAM,CAAC,OAAO,IAAI,IAAI,WAAW,QAAQ;AAAA,IACvC;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,CAAC;AAED,SACE,CAAC;AAAA,IACC,WAAW,MAAM,OAAO,MAAM;AAAA,QAC1B;AAAA,IACJ,KAAK,UAAU,MAAM,GAAG;AAAA,IACxB,MAAM,MAAM;AAAA,IACZ,OAAO,MAAM,UAAU,MAAM,OAAO;AAAA,IACpC,MAAM,MAAM,WAAW,CAAC,MAAM,OAAO,QAAQ;AAAA,IAC7C,YAAY,MAAM,UAAU,MAAM,OAAO;AAAA,IACzC,YAAY;AAAA,IACZ,OAAO,GAAG,oBAAoB,EAAE,yBAAyB,CAAC,CAAC,MAAM,MAAM,4BAA4B,MAAM,QAAQ,GAAG,MAAM,KAAK;AAAA,GAChI;AAAA,MACC,CAAC;AAAA,IACC,MAAM;AAAA,IACN,MAAM,MAAM;AAAA,IACZ,KAAK,MAAM;AAAA,IACX,OAAO,MAAM,SAAS,YAAY,MAAM,aAAa,MAAM,IAAI;AAAA,IAC/D,YAAY;AAAA,GACb;AAAA,SACE,WAAW,MAAM,IAAI,EAAE;AAAA,MAC1B,EARC,OAQQ;AAAA,MACT,CAAC,KAAK,MAAM,CAAC,MAAM,SAAS;AAAA,QAC1B,CAAC,WAAW,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,EAAE;AAAA,MACpD,EAFC,KAEM;AAAA,IACT,EAvBC;AAyBL;AAEA,IAAO,qBAAQ;","names":[],"file":"personChip.jsx"}
@@ -0,0 +1,7 @@
1
+ import { Stat, StatGroup, default as default2 } from "./stat";
2
+ export {
3
+ Stat,
4
+ StatGroup,
5
+ default2 as default
6
+ };
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../src/components/dataDisplay/stat/index.ts"],
4
+ "sourcesContent": ["export { Stat, StatGroup, default } from \"./stat\";\nexport type { StatProps, StatGroupProps, StatTone } from \"./stat\";\n"],
5
+ "mappings": "AAAA,SAAS,MAAM,WAAW,WAAAA,gBAAe;",
6
+ "names": ["default"]
7
+ }
@@ -0,0 +1,74 @@
1
+ import "@smwb/ui-styles/less/tokens.entry.less";
2
+ import "@smwb/ui-styles/less/components/stat/stat.entry.less";
3
+ import { Show, children, mergeProps, splitProps } from "solid-js";
4
+ import { Dynamic } from "solid-js/web";
5
+ import cn from "clsx";
6
+ import { Icon } from "../../base/icon";
7
+ import { mergeRefs } from "../../../primitives/mergeRefs";
8
+ function Stat(props) {
9
+ const merged = mergeProps({ tone: "neutral", variant: "tile" }, props);
10
+ const [local, rest] = splitProps(merged, [
11
+ "class",
12
+ "label",
13
+ "value",
14
+ "hint",
15
+ "icon",
16
+ "tone",
17
+ "variant",
18
+ "href",
19
+ "children",
20
+ "ref"
21
+ ]);
22
+ const label = children(() => local.label);
23
+ const value = children(() => local.value);
24
+ const hint = children(() => local.hint);
25
+ const icon = children(() => local.icon);
26
+ const extra = children(() => local.children);
27
+ return <Dynamic
28
+ component={local.href ? "a" : "div"}
29
+ {...rest}
30
+ ref={mergeRefs(local.ref)}
31
+ href={local.href}
32
+ data-testid="stat"
33
+ class={cn(
34
+ "smwb-stat",
35
+ `smwb-stat_${local.variant}`,
36
+ `smwb-stat_tone-${local.tone}`,
37
+ { "smwb-stat_link": !!local.href, "smwb-stat_with-icon": !!icon() },
38
+ local.class
39
+ )}
40
+ >
41
+ <Show when={icon()}>
42
+ {(resolved) => <span class="smwb-stat__icon" aria-hidden="true">
43
+ {typeof resolved() === "string" ? <Icon name={resolved()} size={20} /> : resolved()}
44
+ </span>}
45
+ </Show>
46
+ <span class="smwb-stat__label">{label()}</span>
47
+ <span class="smwb-stat__value">{value()}</span>
48
+ <Show when={hint()}>
49
+ <span class="smwb-stat__hint">{hint()}</span>
50
+ </Show>
51
+ <Show when={extra()}>
52
+ <div class="smwb-stat__extra">{extra()}</div>
53
+ </Show>
54
+ </Dynamic>;
55
+ }
56
+ function StatGroup(props) {
57
+ const [local, rest] = splitProps(props, ["class", "style", "minItemWidth", "children", "ref"]);
58
+ const style = () => {
59
+ if (local.minItemWidth === void 0) return local.style;
60
+ const width = typeof local.minItemWidth === "number" ? `${local.minItemWidth}px` : local.minItemWidth;
61
+ if (typeof local.style === "string") return `${local.style};--smwb-stat-min:${width}`;
62
+ return { ...local.style, "--smwb-stat-min": width };
63
+ };
64
+ return <div {...rest} ref={mergeRefs(local.ref)} class={cn("smwb-stat-group", local.class)} style={style()}>
65
+ {local.children}
66
+ </div>;
67
+ }
68
+ var stat_default = Stat;
69
+ export {
70
+ Stat,
71
+ StatGroup,
72
+ stat_default as default
73
+ };
74
+ //# sourceMappingURL=stat.jsx.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/components/dataDisplay/stat/stat.tsx"],"sourcesContent":["import \"@smwb/ui-styles/less/tokens.entry.less\";\nimport \"@smwb/ui-styles/less/components/stat/stat.entry.less\";\nimport { type JSX, type ParentProps, Show, children, mergeProps, splitProps } from \"solid-js\";\nimport { Dynamic } from \"solid-js/web\";\nimport cn from \"clsx\";\nimport { Icon } from \"../../base/icon\";\nimport { mergeRefs, type Ref } from \"../../../primitives/mergeRefs\";\n\nexport type StatTone = \"neutral\" | \"info\" | \"success\" | \"warning\" | \"error\";\n\nexport interface StatProps extends JSX.HTMLAttributes<HTMLElement> {\n /** What the figure counts. */\n label: JSX.Element;\n /** The figure — a number, or a short value such as \"3 / 14\". */\n value: JSX.Element;\n /** A line under the value: a comparison, a period, a caveat. */\n hint?: JSX.Element;\n /** An icon beside the figure: a Material Symbols name or an element. */\n icon?: string | JSX.Element;\n /** Colour of the accent (a tile's edge, the icon). `warning` and `error` colour the figure too. */\n tone?: StatTone;\n /** `tile`: a bordered card with an accent edge, for KPIs. `plain`: text only, for rows of small figures. */\n variant?: \"tile\" | \"plain\";\n /** Make the whole stat a link to what the figure is made of. */\n href?: string;\n ref?: Ref<HTMLElement>;\n}\n\n/**\n * A figure with its label: a KPI tile on a dashboard, or a small stat in a row.\n * Children go under it — a meter, a sparkline, a note.\n */\nexport function Stat(props: ParentProps<StatProps>): JSX.Element {\n const merged = mergeProps({ tone: \"neutral\" as StatTone, variant: \"tile\" as const }, props);\n const [local, rest] = splitProps(merged, [\n \"class\",\n \"label\",\n \"value\",\n \"hint\",\n \"icon\",\n \"tone\",\n \"variant\",\n \"href\",\n \"children\",\n \"ref\",\n ]);\n\n // Read each slot once: markup passed as a prop is created anew on every read,\n // and during hydration the copy made for a <Show> test has no server DOM node.\n const label = children(() => local.label);\n const value = children(() => local.value);\n const hint = children(() => local.hint);\n const icon = children(() => local.icon);\n const extra = children(() => local.children);\n\n return (\n <Dynamic\n component={local.href ? \"a\" : \"div\"}\n {...rest}\n ref={mergeRefs(local.ref)}\n href={local.href}\n data-testid=\"stat\"\n class={cn(\n \"smwb-stat\",\n `smwb-stat_${local.variant}`,\n `smwb-stat_tone-${local.tone}`,\n { \"smwb-stat_link\": !!local.href, \"smwb-stat_with-icon\": !!icon() },\n local.class\n )}\n >\n <Show when={icon()}>\n {(resolved) => (\n <span class=\"smwb-stat__icon\" aria-hidden=\"true\">\n {typeof resolved() === \"string\" ? <Icon name={resolved() as string} size={20} /> : resolved()}\n </span>\n )}\n </Show>\n <span class=\"smwb-stat__label\">{label()}</span>\n <span class=\"smwb-stat__value\">{value()}</span>\n <Show when={hint()}>\n <span class=\"smwb-stat__hint\">{hint()}</span>\n </Show>\n <Show when={extra()}>\n <div class=\"smwb-stat__extra\">{extra()}</div>\n </Show>\n </Dynamic>\n );\n}\n\nexport interface StatGroupProps extends JSX.HTMLAttributes<HTMLDivElement> {\n /** Narrowest a stat may get before the row wraps; a CSS length or px. 9rem by default. */\n minItemWidth?: number | string;\n ref?: Ref<HTMLDivElement>;\n}\n\n/** A responsive row of stats: as many columns as fit, each at least `minItemWidth` wide. */\nexport function StatGroup(props: ParentProps<StatGroupProps>): JSX.Element {\n const [local, rest] = splitProps(props, [\"class\", \"style\", \"minItemWidth\", \"children\", \"ref\"]);\n const style = (): JSX.CSSProperties | string | undefined => {\n if (local.minItemWidth === undefined) return local.style;\n const width = typeof local.minItemWidth === \"number\" ? `${local.minItemWidth}px` : local.minItemWidth;\n if (typeof local.style === \"string\") return `${local.style};--smwb-stat-min:${width}`;\n return { ...local.style, \"--smwb-stat-min\": width };\n };\n return (\n <div {...rest} ref={mergeRefs(local.ref)} class={cn(\"smwb-stat-group\", local.class)} style={style()}>\n {local.children}\n </div>\n );\n}\n\nexport default Stat;\n"],"mappings":"AAAA,OAAO;AACP,OAAO;AACP,SAAqC,MAAM,UAAU,YAAY,kBAAkB;AACnF,SAAS,eAAe;AACxB,OAAO,QAAQ;AACf,SAAS,YAAY;AACrB,SAAS,iBAA2B;AA0B7B,SAAS,KAAK,OAA4C;AAC/D,QAAM,SAAS,WAAW,EAAE,MAAM,WAAuB,SAAS,OAAgB,GAAG,KAAK;AAC1F,QAAM,CAAC,OAAO,IAAI,IAAI,WAAW,QAAQ;AAAA,IACvC;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,CAAC;AAID,QAAM,QAAQ,SAAS,MAAM,MAAM,KAAK;AACxC,QAAM,QAAQ,SAAS,MAAM,MAAM,KAAK;AACxC,QAAM,OAAO,SAAS,MAAM,MAAM,IAAI;AACtC,QAAM,OAAO,SAAS,MAAM,MAAM,IAAI;AACtC,QAAM,QAAQ,SAAS,MAAM,MAAM,QAAQ;AAE3C,SACE,CAAC;AAAA,IACC,WAAW,MAAM,OAAO,MAAM;AAAA,QAC1B;AAAA,IACJ,KAAK,UAAU,MAAM,GAAG;AAAA,IACxB,MAAM,MAAM;AAAA,IACZ,YAAY;AAAA,IACZ,OAAO;AAAA,MACL;AAAA,MACA,aAAa,MAAM,OAAO;AAAA,MAC1B,kBAAkB,MAAM,IAAI;AAAA,MAC5B,EAAE,kBAAkB,CAAC,CAAC,MAAM,MAAM,uBAAuB,CAAC,CAAC,KAAK,EAAE;AAAA,MAClE,MAAM;AAAA,IACR;AAAA,GACD;AAAA,MACC,CAAC,KAAK,MAAM,KAAK,GAAG;AAAA,SACjB,CAAC,aACA,CAAC,KAAK,MAAM,kBAAkB,YAAY,OAAO;AAAA,aAC9C,OAAO,SAAS,MAAM,WAAW,CAAC,KAAK,MAAM,SAAS,GAAa,MAAM,IAAI,KAAK,SAAS,EAAE;AAAA,UAChG,EAFC,MAGD;AAAA,MACJ,EANC,KAMM;AAAA,MACP,CAAC,KAAK,MAAM,oBAAoB,MAAM,EAAE,EAAvC,KAA8C;AAAA,MAC/C,CAAC,KAAK,MAAM,oBAAoB,MAAM,EAAE,EAAvC,KAA8C;AAAA,MAC/C,CAAC,KAAK,MAAM,KAAK,GAAG;AAAA,QAClB,CAAC,KAAK,MAAM,mBAAmB,KAAK,EAAE,EAArC,KAA4C;AAAA,MAC/C,EAFC,KAEM;AAAA,MACP,CAAC,KAAK,MAAM,MAAM,GAAG;AAAA,QACnB,CAAC,IAAI,MAAM,oBAAoB,MAAM,EAAE,EAAtC,IAA4C;AAAA,MAC/C,EAFC,KAEM;AAAA,IACT,EA7BC;AA+BL;AASO,SAAS,UAAU,OAAiD;AACzE,QAAM,CAAC,OAAO,IAAI,IAAI,WAAW,OAAO,CAAC,SAAS,SAAS,gBAAgB,YAAY,KAAK,CAAC;AAC7F,QAAM,QAAQ,MAA8C;AAC1D,QAAI,MAAM,iBAAiB,OAAW,QAAO,MAAM;AACnD,UAAM,QAAQ,OAAO,MAAM,iBAAiB,WAAW,GAAG,MAAM,YAAY,OAAO,MAAM;AACzF,QAAI,OAAO,MAAM,UAAU,SAAU,QAAO,GAAG,MAAM,KAAK,oBAAoB,KAAK;AACnF,WAAO,EAAE,GAAG,MAAM,OAAO,mBAAmB,MAAM;AAAA,EACpD;AACA,SACE,CAAC,QAAQ,MAAM,KAAK,UAAU,MAAM,GAAG,GAAG,OAAO,GAAG,mBAAmB,MAAM,KAAK,GAAG,OAAO,MAAM,GAAG;AAAA,OAClG,MAAM,SAAS;AAAA,IAClB,EAFC;AAIL;AAEA,IAAO,eAAQ;","names":[],"file":"stat.jsx"}
@@ -1,5 +1,6 @@
1
+ import "@smwb/ui-styles/less/tokens.entry.less";
1
2
  import "@smwb/ui-styles/less/components/table/table.entry.less";
2
- import { Show, splitProps } from "solid-js";
3
+ import { Show, children, splitProps } from "solid-js";
3
4
  import cn from "clsx";
4
5
  import { TablePagination } from "./tablePagination/tablePagination";
5
6
  import { mergeRefs } from "../../../primitives/mergeRefs";
@@ -13,12 +14,19 @@ function Table(props) {
13
14
  "isLoading",
14
15
  "stickyHeader",
15
16
  "caption",
17
+ "stackBelow",
16
18
  "ref"
17
19
  ]);
20
+ const caption = children(() => local.caption);
18
21
  return <div
19
22
  {...rest}
20
23
  ref={mergeRefs(local.ref)}
21
- class={cn("smwb-table__wrapper", local.class, { "smwb-table__wrapper_loading": local.isLoading })}
24
+ class={cn(
25
+ "smwb-table__wrapper",
26
+ local.class,
27
+ { "smwb-table__wrapper_loading": local.isLoading },
28
+ local.stackBelow && `smwb-table__wrapper_stack-${local.stackBelow}`
29
+ )}
22
30
  >
23
31
  <div class={cn("smwb-table__container", { "smwb-withPagination": !!local.paginationSettings })}>
24
32
  <table
@@ -28,8 +36,8 @@ function Table(props) {
28
36
  "smwb-table_sticky-header": local.stickyHeader
29
37
  })}
30
38
  >
31
- <Show when={local.caption != null}>
32
- <caption class="smwb-table__caption">{local.caption}</caption>
39
+ <Show when={caption() != null}>
40
+ <caption class="smwb-table__caption">{caption()}</caption>
33
41
  </Show>
34
42
  {local.children}
35
43
  </table>
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/components/dataDisplay/table/table.tsx"],"sourcesContent":["import \"@smwb/ui-styles/less/components/table/table.entry.less\";\nimport { type JSX, type ParentProps, Show, splitProps } from \"solid-js\";\nimport cn from \"clsx\";\nimport { TablePagination, type TablePaginationProps } from \"./tablePagination/tablePagination\";\nimport { mergeRefs, type Ref } from \"../../../primitives/mergeRefs\";\n\nexport interface TableProps extends JSX.HTMLAttributes<HTMLDivElement> {\n dense?: boolean;\n isLoading?: boolean;\n hovered?: boolean;\n /** Pins the table header while the body scrolls. */\n stickyHeader?: boolean;\n /** Optional accessible caption rendered for screen readers. */\n caption?: JSX.Element;\n paginationSettings?: TablePaginationProps;\n ref?: Ref<HTMLDivElement>;\n}\n\nexport function Table(props: ParentProps<TableProps>): JSX.Element {\n const [local, rest] = splitProps(props, [\n \"class\",\n \"dense\",\n \"hovered\",\n \"children\",\n \"paginationSettings\",\n \"isLoading\",\n \"stickyHeader\",\n \"caption\",\n \"ref\",\n ]);\n\n return (\n <div\n {...rest}\n ref={mergeRefs(local.ref)}\n class={cn(\"smwb-table__wrapper\", local.class, { \"smwb-table__wrapper_loading\": local.isLoading })}\n >\n <div class={cn(\"smwb-table__container\", { \"smwb-withPagination\": !!local.paginationSettings })}>\n <table\n class={cn(\"smwb-table\", {\n \"smwb-dense\": local.dense,\n \"smwb-hovered\": local.hovered,\n \"smwb-table_sticky-header\": local.stickyHeader,\n })}\n >\n <Show when={local.caption != null}>\n <caption class=\"smwb-table__caption\">{local.caption}</caption>\n </Show>\n {local.children}\n </table>\n </div>\n <Show when={local.paginationSettings}>\n {(settings) => <TablePagination {...settings()} />}\n </Show>\n </div>\n );\n}\n\nexport default Table;\n"],"mappings":"AAAA,OAAO;AACP,SAAqC,MAAM,kBAAkB;AAC7D,OAAO,QAAQ;AACf,SAAS,uBAAkD;AAC3D,SAAS,iBAA2B;AAc7B,SAAS,MAAM,OAA6C;AACjE,QAAM,CAAC,OAAO,IAAI,IAAI,WAAW,OAAO;AAAA,IACtC;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,CAAC;AAED,SACE,CAAC;AAAA,QACK;AAAA,IACJ,KAAK,UAAU,MAAM,GAAG;AAAA,IACxB,OAAO,GAAG,uBAAuB,MAAM,OAAO,EAAE,+BAA+B,MAAM,UAAU,CAAC;AAAA,GACjG;AAAA,MACC,CAAC,IAAI,OAAO,GAAG,yBAAyB,EAAE,uBAAuB,CAAC,CAAC,MAAM,mBAAmB,CAAC,GAAG;AAAA,QAC9F,CAAC;AAAA,IACC,OAAO,GAAG,cAAc;AAAA,MACtB,cAAc,MAAM;AAAA,MACpB,gBAAgB,MAAM;AAAA,MACtB,4BAA4B,MAAM;AAAA,IACpC,CAAC;AAAA,GACF;AAAA,UACC,CAAC,KAAK,MAAM,MAAM,WAAW,MAAM;AAAA,YACjC,CAAC,QAAQ,MAAM,uBAAuB,MAAM,QAAQ,EAAnD,QAA6D;AAAA,UAChE,EAFC,KAEM;AAAA,WACN,MAAM,SAAS;AAAA,QAClB,EAXC,MAWO;AAAA,MACV,EAbC,IAaK;AAAA,MACN,CAAC,KAAK,MAAM,MAAM,oBAAoB;AAAA,SACnC,CAAC,aAAa,CAAC,oBAAoB,SAAS,GAAG,GAAG;AAAA,MACrD,EAFC,KAEM;AAAA,IACT,EAtBC;AAwBL;AAEA,IAAO,gBAAQ;","names":[],"file":"table.jsx"}
1
+ {"version":3,"sources":["../../../../../src/components/dataDisplay/table/table.tsx"],"sourcesContent":["import \"@smwb/ui-styles/less/tokens.entry.less\";\nimport \"@smwb/ui-styles/less/components/table/table.entry.less\";\nimport { type JSX, type ParentProps, Show, children, splitProps } from \"solid-js\";\nimport cn from \"clsx\";\nimport { TablePagination, type TablePaginationProps } from \"./tablePagination/tablePagination\";\nimport { mergeRefs, type Ref } from \"../../../primitives/mergeRefs\";\n\nexport interface TableProps extends JSX.HTMLAttributes<HTMLDivElement> {\n dense?: boolean;\n isLoading?: boolean;\n hovered?: boolean;\n /** Pins the table header while the body scrolls. */\n stickyHeader?: boolean;\n /** Optional accessible caption rendered for screen readers. */\n caption?: JSX.Element;\n /**\n * Show each row as a card — cells one under another, each with its column's\n * label — while the table's container is narrower than this breakpoint:\n * `sm` (420px), `md` (768px) or `lg` (1024px). A container query: the space\n * the table has decides, not the window. Labels come from `TableCell label`.\n */\n stackBelow?: \"sm\" | \"md\" | \"lg\";\n paginationSettings?: TablePaginationProps;\n ref?: Ref<HTMLDivElement>;\n}\n\nexport function Table(props: ParentProps<TableProps>): JSX.Element {\n const [local, rest] = splitProps(props, [\n \"class\",\n \"dense\",\n \"hovered\",\n \"children\",\n \"paginationSettings\",\n \"isLoading\",\n \"stickyHeader\",\n \"caption\",\n \"stackBelow\",\n \"ref\",\n ]);\n\n // Read the caption once: markup is created anew on every read, and during\n // hydration the copy made for the <Show> test has no server DOM node.\n const caption = children(() => local.caption);\n\n return (\n <div\n {...rest}\n ref={mergeRefs(local.ref)}\n class={cn(\n \"smwb-table__wrapper\",\n local.class,\n { \"smwb-table__wrapper_loading\": local.isLoading },\n local.stackBelow && `smwb-table__wrapper_stack-${local.stackBelow}`\n )}\n >\n <div class={cn(\"smwb-table__container\", { \"smwb-withPagination\": !!local.paginationSettings })}>\n <table\n class={cn(\"smwb-table\", {\n \"smwb-dense\": local.dense,\n \"smwb-hovered\": local.hovered,\n \"smwb-table_sticky-header\": local.stickyHeader,\n })}\n >\n <Show when={caption() != null}>\n <caption class=\"smwb-table__caption\">{caption()}</caption>\n </Show>\n {local.children}\n </table>\n </div>\n <Show when={local.paginationSettings}>\n {(settings) => <TablePagination {...settings()} />}\n </Show>\n </div>\n );\n}\n\nexport default Table;\n"],"mappings":"AAAA,OAAO;AACP,OAAO;AACP,SAAqC,MAAM,UAAU,kBAAkB;AACvE,OAAO,QAAQ;AACf,SAAS,uBAAkD;AAC3D,SAAS,iBAA2B;AAqB7B,SAAS,MAAM,OAA6C;AACjE,QAAM,CAAC,OAAO,IAAI,IAAI,WAAW,OAAO;AAAA,IACtC;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,CAAC;AAID,QAAM,UAAU,SAAS,MAAM,MAAM,OAAO;AAE5C,SACE,CAAC;AAAA,QACK;AAAA,IACJ,KAAK,UAAU,MAAM,GAAG;AAAA,IACxB,OAAO;AAAA,MACL;AAAA,MACA,MAAM;AAAA,MACN,EAAE,+BAA+B,MAAM,UAAU;AAAA,MACjD,MAAM,cAAc,6BAA6B,MAAM,UAAU;AAAA,IACnE;AAAA,GACD;AAAA,MACC,CAAC,IAAI,OAAO,GAAG,yBAAyB,EAAE,uBAAuB,CAAC,CAAC,MAAM,mBAAmB,CAAC,GAAG;AAAA,QAC9F,CAAC;AAAA,IACC,OAAO,GAAG,cAAc;AAAA,MACtB,cAAc,MAAM;AAAA,MACpB,gBAAgB,MAAM;AAAA,MACtB,4BAA4B,MAAM;AAAA,IACpC,CAAC;AAAA,GACF;AAAA,UACC,CAAC,KAAK,MAAM,QAAQ,KAAK,MAAM;AAAA,YAC7B,CAAC,QAAQ,MAAM,uBAAuB,QAAQ,EAAE,EAA/C,QAAyD;AAAA,UAC5D,EAFC,KAEM;AAAA,WACN,MAAM,SAAS;AAAA,QAClB,EAXC,MAWO;AAAA,MACV,EAbC,IAaK;AAAA,MACN,CAAC,KAAK,MAAM,MAAM,oBAAoB;AAAA,SACnC,CAAC,aAAa,CAAC,oBAAoB,SAAS,GAAG,GAAG;AAAA,MACrD,EAFC,KAEM;AAAA,IACT,EA3BC;AA6BL;AAEA,IAAO,gBAAQ;","names":[],"file":"table.jsx"}
@@ -3,8 +3,14 @@ import cn from "clsx";
3
3
  import { mergeRefs } from "../../../primitives/mergeRefs";
4
4
  function TableCell(props) {
5
5
  const merged = mergeProps({ cellAlign: "left" }, props);
6
- const [local, rest] = splitProps(merged, ["children", "cellAlign", "class", "ref"]);
7
- return <td {...rest} ref={mergeRefs(local.ref)} class={cn("smwb-table__cell", local.class)} align={local.cellAlign || "left"}>
6
+ const [local, rest] = splitProps(merged, ["children", "cellAlign", "class", "label", "ref"]);
7
+ return <td
8
+ {...rest}
9
+ ref={mergeRefs(local.ref)}
10
+ class={cn("smwb-table__cell", local.class)}
11
+ align={local.cellAlign || "left"}
12
+ data-label={local.label}
13
+ >
8
14
  {local.children}
9
15
  </td>;
10
16
  }