@smwb/ui-solid 0.11.2 → 0.12.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (740) 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/descriptionList/descriptionList.entry.css +1 -0
  5. package/dist/assets/styles/less/components/emptyState/emptyState.entry.css +1 -0
  6. package/dist/assets/styles/less/components/kanban/kanban.entry.css +1 -0
  7. package/dist/assets/styles/less/components/meter/meter.entry.css +1 -0
  8. package/dist/assets/styles/less/components/personChip/personChip.entry.css +1 -0
  9. package/dist/assets/styles/less/components/progressIndicator/progressIndicator.entry.css +1 -1
  10. package/dist/assets/styles/less/components/sectionHeader/sectionHeader.entry.css +1 -0
  11. package/dist/assets/styles/less/components/selectField/selectField.entry.css +1 -1
  12. package/dist/assets/styles/less/components/stat/stat.entry.css +1 -0
  13. package/dist/assets/styles/less/components/stepper/stepper.entry.css +1 -1
  14. package/dist/assets/styles/less/components/table/table.entry.css +1 -1
  15. package/dist/assets/styles/less/components/tabs/tab/tab.entry.css +1 -1
  16. package/dist/assets/styles/less/components/tabs/tabs.entry.css +1 -1
  17. package/dist/assets/styles/less/components/textField/textField.entry.css +1 -1
  18. package/dist/assets/styles/less/components/timeline/timeline.entry.css +1 -0
  19. package/dist/assets/styles/less/components/tooltip/tooltip.entry.css +1 -1
  20. package/dist/assets/styles/less/components/typography/typography.entry.css +1 -1
  21. package/dist/assets/styles/less/tokens.entry.css +1 -0
  22. package/dist/components/base/icon/icon.js +4 -3
  23. package/dist/components/base/icon/icon.js.map +1 -1
  24. package/dist/components/base/ripple/ripple.js +4 -3
  25. package/dist/components/base/ripple/ripple.js.map +1 -1
  26. package/dist/components/dataDisplay/accordion/accordion.d.ts +18 -1
  27. package/dist/components/dataDisplay/accordion/accordion.js +91 -48
  28. package/dist/components/dataDisplay/accordion/accordion.js.map +1 -1
  29. package/dist/components/dataDisplay/assetGrid/assetGrid.js +14 -13
  30. package/dist/components/dataDisplay/assetGrid/assetGrid.js.map +1 -1
  31. package/dist/components/dataDisplay/avatar/avatar.d.ts +4 -0
  32. package/dist/components/dataDisplay/avatar/avatar.js +56 -40
  33. package/dist/components/dataDisplay/avatar/avatar.js.map +1 -1
  34. package/dist/components/dataDisplay/badge/badge.js +24 -20
  35. package/dist/components/dataDisplay/badge/badge.js.map +1 -1
  36. package/dist/components/dataDisplay/card/card.js +24 -23
  37. package/dist/components/dataDisplay/card/card.js.map +1 -1
  38. package/dist/components/dataDisplay/carousel/carousel.js +4 -3
  39. package/dist/components/dataDisplay/carousel/carousel.js.map +1 -1
  40. package/dist/components/dataDisplay/chart/chart.d.ts +65 -0
  41. package/dist/components/dataDisplay/chart/chartTheme.d.ts +35 -0
  42. package/dist/components/dataDisplay/chart/index.d.ts +4 -0
  43. package/dist/components/dataDisplay/chat/chat.js +52 -51
  44. package/dist/components/dataDisplay/chat/chat.js.map +1 -1
  45. package/dist/components/dataDisplay/chat/chatHeader.js +29 -29
  46. package/dist/components/dataDisplay/chat/chatHeader.js.map +1 -1
  47. package/dist/components/dataDisplay/chat/chatMessageBubble.js +28 -28
  48. package/dist/components/dataDisplay/chat/chatMessageBubble.js.map +1 -1
  49. package/dist/components/dataDisplay/chat/chatShell.js +54 -51
  50. package/dist/components/dataDisplay/chat/chatShell.js.map +1 -1
  51. package/dist/components/dataDisplay/chip/chip.js +79 -70
  52. package/dist/components/dataDisplay/chip/chip.js.map +1 -1
  53. package/dist/components/dataDisplay/chipGroup/chipGroup.js +9 -8
  54. package/dist/components/dataDisplay/chipGroup/chipGroup.js.map +1 -1
  55. package/dist/components/dataDisplay/descriptionList/descriptionList.d.ts +32 -0
  56. package/dist/components/dataDisplay/descriptionList/descriptionList.js +60 -0
  57. package/dist/components/dataDisplay/descriptionList/descriptionList.js.map +1 -0
  58. package/dist/components/dataDisplay/descriptionList/index.d.ts +2 -0
  59. package/dist/components/dataDisplay/expansionPanel/expansionPanel.js +4 -3
  60. package/dist/components/dataDisplay/expansionPanel/expansionPanel.js.map +1 -1
  61. package/dist/components/dataDisplay/imagesList/imagesList.js +8 -7
  62. package/dist/components/dataDisplay/imagesList/imagesList.js.map +1 -1
  63. package/dist/components/dataDisplay/imagesList/imagesListItem/imagesListItem.js +29 -24
  64. package/dist/components/dataDisplay/imagesList/imagesListItem/imagesListItem.js.map +1 -1
  65. package/dist/components/dataDisplay/kanban/index.d.ts +2 -0
  66. package/dist/components/dataDisplay/kanban/kanban.d.ts +42 -0
  67. package/dist/components/dataDisplay/kanban/kanban.js +133 -0
  68. package/dist/components/dataDisplay/kanban/kanban.js.map +1 -0
  69. package/dist/components/dataDisplay/lazyImage/lazyImage.js +30 -29
  70. package/dist/components/dataDisplay/lazyImage/lazyImage.js.map +1 -1
  71. package/dist/components/dataDisplay/list/list.js +17 -16
  72. package/dist/components/dataDisplay/list/list.js.map +1 -1
  73. package/dist/components/dataDisplay/meter/index.d.ts +2 -0
  74. package/dist/components/dataDisplay/meter/meter.d.ts +34 -0
  75. package/dist/components/dataDisplay/meter/meter.js +84 -0
  76. package/dist/components/dataDisplay/meter/meter.js.map +1 -0
  77. package/dist/components/dataDisplay/personChip/index.d.ts +2 -0
  78. package/dist/components/dataDisplay/personChip/personChip.d.ts +32 -0
  79. package/dist/components/dataDisplay/personChip/personChip.js +104 -0
  80. package/dist/components/dataDisplay/personChip/personChip.js.map +1 -0
  81. package/dist/components/dataDisplay/stat/index.d.ts +2 -0
  82. package/dist/components/dataDisplay/stat/stat.d.ts +33 -0
  83. package/dist/components/dataDisplay/stat/stat.js +101 -0
  84. package/dist/components/dataDisplay/stat/stat.js.map +1 -0
  85. package/dist/components/dataDisplay/table/table.d.ts +7 -0
  86. package/dist/components/dataDisplay/table/table.js +22 -21
  87. package/dist/components/dataDisplay/table/table.js.map +1 -1
  88. package/dist/components/dataDisplay/table/tableCell.d.ts +2 -0
  89. package/dist/components/dataDisplay/table/tableCell.js +9 -6
  90. package/dist/components/dataDisplay/table/tableCell.js.map +1 -1
  91. package/dist/components/dataDisplay/table/tableHeadCell.d.ts +11 -1
  92. package/dist/components/dataDisplay/table/tableHeadCell.js +26 -23
  93. package/dist/components/dataDisplay/table/tableHeadCell.js.map +1 -1
  94. package/dist/components/dataDisplay/table/tablePagination/tablePagination.js +4 -3
  95. package/dist/components/dataDisplay/table/tablePagination/tablePagination.js.map +1 -1
  96. package/dist/components/dataDisplay/thumbCard/thumbCard.js +54 -53
  97. package/dist/components/dataDisplay/thumbCard/thumbCard.js.map +1 -1
  98. package/dist/components/dataDisplay/timeline/index.d.ts +2 -0
  99. package/dist/components/dataDisplay/timeline/timeline.d.ts +38 -0
  100. package/dist/components/dataDisplay/timeline/timeline.js +89 -0
  101. package/dist/components/dataDisplay/timeline/timeline.js.map +1 -0
  102. package/dist/components/dataDisplay/treeView/treeView.js +4 -3
  103. package/dist/components/dataDisplay/treeView/treeView.js.map +1 -1
  104. package/dist/components/dataDisplay/typography/typography.d.ts +4 -0
  105. package/dist/components/dataDisplay/typography/typography.js +36 -22
  106. package/dist/components/dataDisplay/typography/typography.js.map +1 -1
  107. package/dist/components/feedBack/confirmDialog/confirmDialog.js +9 -8
  108. package/dist/components/feedBack/confirmDialog/confirmDialog.js.map +1 -1
  109. package/dist/components/feedBack/emptyState/emptyState.d.ts +25 -0
  110. package/dist/components/feedBack/emptyState/emptyState.js +86 -0
  111. package/dist/components/feedBack/emptyState/emptyState.js.map +1 -0
  112. package/dist/components/feedBack/emptyState/index.d.ts +2 -0
  113. package/dist/components/feedBack/message/message.js +4 -3
  114. package/dist/components/feedBack/message/message.js.map +1 -1
  115. package/dist/components/feedBack/modal/modal.js +4 -3
  116. package/dist/components/feedBack/modal/modal.js.map +1 -1
  117. package/dist/components/feedBack/progressIndicator/progressIndicator.d.ts +13 -0
  118. package/dist/components/feedBack/progressIndicator/progressIndicator.js +79 -46
  119. package/dist/components/feedBack/progressIndicator/progressIndicator.js.map +1 -1
  120. package/dist/components/feedBack/saveAssetDialog/saveAssetDialog.js +18 -14
  121. package/dist/components/feedBack/saveAssetDialog/saveAssetDialog.js.map +1 -1
  122. package/dist/components/feedBack/skeleton/skeleton.js +4 -3
  123. package/dist/components/feedBack/skeleton/skeleton.js.map +1 -1
  124. package/dist/components/feedBack/snackbar/snackbar.js +18 -17
  125. package/dist/components/feedBack/snackbar/snackbar.js.map +1 -1
  126. package/dist/components/feedBack/tooltip/tooltip.js +41 -33
  127. package/dist/components/feedBack/tooltip/tooltip.js.map +1 -1
  128. package/dist/components/inputs/button/button.js +32 -30
  129. package/dist/components/inputs/button/button.js.map +1 -1
  130. package/dist/components/inputs/buttonGroups/buttonGroup.js +9 -8
  131. package/dist/components/inputs/buttonGroups/buttonGroup.js.map +1 -1
  132. package/dist/components/inputs/checkbox/checkbox.js +4 -3
  133. package/dist/components/inputs/checkbox/checkbox.js.map +1 -1
  134. package/dist/components/inputs/datePicker/dataPickerInput.js +23 -23
  135. package/dist/components/inputs/datePicker/dataPickerInput.js.map +1 -1
  136. package/dist/components/inputs/datePicker/datePicker.js +84 -83
  137. package/dist/components/inputs/datePicker/datePicker.js.map +1 -1
  138. package/dist/components/inputs/fileDrop/fileDrop.js +4 -3
  139. package/dist/components/inputs/fileDrop/fileDrop.js.map +1 -1
  140. package/dist/components/inputs/fileInput/fileInput.js +11 -10
  141. package/dist/components/inputs/fileInput/fileInput.js.map +1 -1
  142. package/dist/components/inputs/floatingButton/floatingButton.js +9 -8
  143. package/dist/components/inputs/floatingButton/floatingButton.js.map +1 -1
  144. package/dist/components/inputs/radioButton/radioButton.js +9 -8
  145. package/dist/components/inputs/radioButton/radioButton.js.map +1 -1
  146. package/dist/components/inputs/rating/rating.js +41 -40
  147. package/dist/components/inputs/rating/rating.js.map +1 -1
  148. package/dist/components/inputs/selectField/selectField.d.ts +2 -0
  149. package/dist/components/inputs/selectField/selectField.js +55 -51
  150. package/dist/components/inputs/selectField/selectField.js.map +1 -1
  151. package/dist/components/inputs/slider/slider.js +4 -3
  152. package/dist/components/inputs/slider/slider.js.map +1 -1
  153. package/dist/components/inputs/textField/textField.js +38 -37
  154. package/dist/components/inputs/textField/textField.js.map +1 -1
  155. package/dist/components/inputs/textField/textFieldAdornment.js +9 -9
  156. package/dist/components/inputs/textField/textFieldAdornment.js.map +1 -1
  157. package/dist/components/inputs/textField/textFieldWrapper.js +41 -41
  158. package/dist/components/inputs/textField/textFieldWrapper.js.map +1 -1
  159. package/dist/components/inputs/timePicker/timePicker.js +12 -11
  160. package/dist/components/inputs/timePicker/timePicker.js.map +1 -1
  161. package/dist/components/inputs/toggle/toggle.js +4 -3
  162. package/dist/components/inputs/toggle/toggle.js.map +1 -1
  163. package/dist/components/inputs/valueSlider/valueSlider.js +26 -25
  164. package/dist/components/inputs/valueSlider/valueSlider.js.map +1 -1
  165. package/dist/components/layout/appLayout/appLayout.js +39 -38
  166. package/dist/components/layout/appLayout/appLayout.js.map +1 -1
  167. package/dist/components/layout/divider/divider.js +26 -22
  168. package/dist/components/layout/divider/divider.js.map +1 -1
  169. package/dist/components/layout/floatingWindow/floatingWindow.js +74 -73
  170. package/dist/components/layout/floatingWindow/floatingWindow.js.map +1 -1
  171. package/dist/components/layout/grid/grid.js +10 -9
  172. package/dist/components/layout/grid/grid.js.map +1 -1
  173. package/dist/components/layout/page/page.js +4 -3
  174. package/dist/components/layout/page/page.js.map +1 -1
  175. package/dist/components/layout/pageHeader/pageHeader.js +36 -35
  176. package/dist/components/layout/pageHeader/pageHeader.js.map +1 -1
  177. package/dist/components/layout/screenDivider/screenDivider.js +9 -8
  178. package/dist/components/layout/screenDivider/screenDivider.js.map +1 -1
  179. package/dist/components/layout/sectionHeader/index.d.ts +2 -0
  180. package/dist/components/layout/sectionHeader/sectionHeader.d.ts +30 -0
  181. package/dist/components/layout/sectionHeader/sectionHeader.js +100 -0
  182. package/dist/components/layout/sectionHeader/sectionHeader.js.map +1 -0
  183. package/dist/components/layout/sheet/sheet.js +4 -3
  184. package/dist/components/layout/sheet/sheet.js.map +1 -1
  185. package/dist/components/layout/stack/stack.js +31 -27
  186. package/dist/components/layout/stack/stack.js.map +1 -1
  187. package/dist/components/navigation/appBar/appBar.js +24 -23
  188. package/dist/components/navigation/appBar/appBar.js.map +1 -1
  189. package/dist/components/navigation/bottomBar/bottomBar.js +57 -56
  190. package/dist/components/navigation/bottomBar/bottomBar.js.map +1 -1
  191. package/dist/components/navigation/breadcrumbs/breadcrumbs.js +4 -3
  192. package/dist/components/navigation/breadcrumbs/breadcrumbs.js.map +1 -1
  193. package/dist/components/navigation/menu/menu.js +10 -9
  194. package/dist/components/navigation/menu/menu.js.map +1 -1
  195. package/dist/components/navigation/overflowMenu/overflowMenu.js +4 -3
  196. package/dist/components/navigation/overflowMenu/overflowMenu.js.map +1 -1
  197. package/dist/components/navigation/pagination/pagination.js +14 -13
  198. package/dist/components/navigation/pagination/pagination.js.map +1 -1
  199. package/dist/components/navigation/sidebar/sidebar.js +4 -3
  200. package/dist/components/navigation/sidebar/sidebar.js.map +1 -1
  201. package/dist/components/navigation/stepper/stepper.d.ts +10 -2
  202. package/dist/components/navigation/stepper/stepper.js +63 -47
  203. package/dist/components/navigation/stepper/stepper.js.map +1 -1
  204. package/dist/components/navigation/tabs/tab/tab.d.ts +2 -0
  205. package/dist/components/navigation/tabs/tab/tab.js +45 -44
  206. package/dist/components/navigation/tabs/tab/tab.js.map +1 -1
  207. package/dist/components/navigation/tabs/tabs.d.ts +12 -0
  208. package/dist/components/navigation/tabs/tabs.js +142 -86
  209. package/dist/components/navigation/tabs/tabs.js.map +1 -1
  210. package/dist/connects/rt/table/table.d.ts +2 -0
  211. package/dist/headless/components/dataDisplay/accordion/accordion.js +89 -47
  212. package/dist/headless/components/dataDisplay/accordion/accordion.js.map +1 -1
  213. package/dist/headless/components/dataDisplay/avatar/avatar.js +54 -39
  214. package/dist/headless/components/dataDisplay/avatar/avatar.js.map +1 -1
  215. package/dist/headless/components/dataDisplay/badge/badge.js +22 -19
  216. package/dist/headless/components/dataDisplay/badge/badge.js.map +1 -1
  217. package/dist/headless/components/dataDisplay/card/card.js +22 -22
  218. package/dist/headless/components/dataDisplay/card/card.js.map +1 -1
  219. package/dist/headless/components/dataDisplay/chat/chat.js +50 -50
  220. package/dist/headless/components/dataDisplay/chat/chat.js.map +1 -1
  221. package/dist/headless/components/dataDisplay/chat/chatHeader.js +29 -29
  222. package/dist/headless/components/dataDisplay/chat/chatHeader.js.map +1 -1
  223. package/dist/headless/components/dataDisplay/chat/chatMessageBubble.js +28 -28
  224. package/dist/headless/components/dataDisplay/chat/chatMessageBubble.js.map +1 -1
  225. package/dist/headless/components/dataDisplay/chat/chatShell.js +54 -51
  226. package/dist/headless/components/dataDisplay/chat/chatShell.js.map +1 -1
  227. package/dist/headless/components/dataDisplay/chip/chip.js +77 -69
  228. package/dist/headless/components/dataDisplay/chip/chip.js.map +1 -1
  229. package/dist/headless/components/dataDisplay/descriptionList/descriptionList.js +58 -0
  230. package/dist/headless/components/dataDisplay/descriptionList/descriptionList.js.map +1 -0
  231. package/dist/headless/components/dataDisplay/imagesList/imagesListItem/imagesListItem.js +28 -24
  232. package/dist/headless/components/dataDisplay/imagesList/imagesListItem/imagesListItem.js.map +1 -1
  233. package/dist/headless/components/dataDisplay/kanban/kanban.js +131 -0
  234. package/dist/headless/components/dataDisplay/kanban/kanban.js.map +1 -0
  235. package/dist/headless/components/dataDisplay/lazyImage/lazyImage.js +28 -28
  236. package/dist/headless/components/dataDisplay/lazyImage/lazyImage.js.map +1 -1
  237. package/dist/headless/components/dataDisplay/list/list.js +15 -15
  238. package/dist/headless/components/dataDisplay/list/list.js.map +1 -1
  239. package/dist/headless/components/dataDisplay/meter/meter.js +82 -0
  240. package/dist/headless/components/dataDisplay/meter/meter.js.map +1 -0
  241. package/dist/headless/components/dataDisplay/personChip/personChip.js +102 -0
  242. package/dist/headless/components/dataDisplay/personChip/personChip.js.map +1 -0
  243. package/dist/headless/components/dataDisplay/stat/stat.js +99 -0
  244. package/dist/headless/components/dataDisplay/stat/stat.js.map +1 -0
  245. package/dist/headless/components/dataDisplay/table/table.js +20 -20
  246. package/dist/headless/components/dataDisplay/table/table.js.map +1 -1
  247. package/dist/headless/components/dataDisplay/table/tableCell.js +9 -6
  248. package/dist/headless/components/dataDisplay/table/tableCell.js.map +1 -1
  249. package/dist/headless/components/dataDisplay/table/tableHeadCell.js +26 -23
  250. package/dist/headless/components/dataDisplay/table/tableHeadCell.js.map +1 -1
  251. package/dist/headless/components/dataDisplay/thumbCard/thumbCard.js +53 -53
  252. package/dist/headless/components/dataDisplay/thumbCard/thumbCard.js.map +1 -1
  253. package/dist/headless/components/dataDisplay/timeline/timeline.js +87 -0
  254. package/dist/headless/components/dataDisplay/timeline/timeline.js.map +1 -0
  255. package/dist/headless/components/dataDisplay/typography/typography.js +34 -21
  256. package/dist/headless/components/dataDisplay/typography/typography.js.map +1 -1
  257. package/dist/headless/components/feedBack/emptyState/emptyState.js +84 -0
  258. package/dist/headless/components/feedBack/emptyState/emptyState.js.map +1 -0
  259. package/dist/headless/components/feedBack/progressIndicator/progressIndicator.js +77 -45
  260. package/dist/headless/components/feedBack/progressIndicator/progressIndicator.js.map +1 -1
  261. package/dist/headless/components/feedBack/saveAssetDialog/saveAssetDialog.js +16 -13
  262. package/dist/headless/components/feedBack/saveAssetDialog/saveAssetDialog.js.map +1 -1
  263. package/dist/headless/components/feedBack/tooltip/tooltip.js +33 -26
  264. package/dist/headless/components/feedBack/tooltip/tooltip.js.map +1 -1
  265. package/dist/headless/components/inputs/button/button.js +33 -32
  266. package/dist/headless/components/inputs/button/button.js.map +1 -1
  267. package/dist/headless/components/inputs/datePicker/dataPickerInput.js +23 -23
  268. package/dist/headless/components/inputs/datePicker/dataPickerInput.js.map +1 -1
  269. package/dist/headless/components/inputs/datePicker/datePicker.js +79 -79
  270. package/dist/headless/components/inputs/datePicker/datePicker.js.map +1 -1
  271. package/dist/headless/components/inputs/rating/rating.js +39 -39
  272. package/dist/headless/components/inputs/rating/rating.js.map +1 -1
  273. package/dist/headless/components/inputs/selectField/selectField.js +61 -58
  274. package/dist/headless/components/inputs/selectField/selectField.js.map +1 -1
  275. package/dist/headless/components/inputs/textField/textField.js +36 -36
  276. package/dist/headless/components/inputs/textField/textField.js.map +1 -1
  277. package/dist/headless/components/inputs/textField/textFieldAdornment.js +9 -9
  278. package/dist/headless/components/inputs/textField/textFieldAdornment.js.map +1 -1
  279. package/dist/headless/components/inputs/textField/textFieldWrapper.js +41 -41
  280. package/dist/headless/components/inputs/textField/textFieldWrapper.js.map +1 -1
  281. package/dist/headless/components/inputs/valueSlider/valueSlider.js +24 -24
  282. package/dist/headless/components/inputs/valueSlider/valueSlider.js.map +1 -1
  283. package/dist/headless/components/layout/appLayout/appLayout.js +39 -39
  284. package/dist/headless/components/layout/appLayout/appLayout.js.map +1 -1
  285. package/dist/headless/components/layout/divider/divider.js +24 -21
  286. package/dist/headless/components/layout/divider/divider.js.map +1 -1
  287. package/dist/headless/components/layout/pageHeader/pageHeader.js +34 -34
  288. package/dist/headless/components/layout/pageHeader/pageHeader.js.map +1 -1
  289. package/dist/headless/components/layout/sectionHeader/sectionHeader.js +98 -0
  290. package/dist/headless/components/layout/sectionHeader/sectionHeader.js.map +1 -0
  291. package/dist/headless/components/layout/stack/stack.js +29 -26
  292. package/dist/headless/components/layout/stack/stack.js.map +1 -1
  293. package/dist/headless/components/navigation/appBar/appBar.js +22 -22
  294. package/dist/headless/components/navigation/appBar/appBar.js.map +1 -1
  295. package/dist/headless/components/navigation/bottomBar/bottomBar.js +51 -51
  296. package/dist/headless/components/navigation/bottomBar/bottomBar.js.map +1 -1
  297. package/dist/headless/components/navigation/stepper/stepper.js +61 -46
  298. package/dist/headless/components/navigation/stepper/stepper.js.map +1 -1
  299. package/dist/headless/components/navigation/tabs/tab/tab.js +44 -44
  300. package/dist/headless/components/navigation/tabs/tab/tab.js.map +1 -1
  301. package/dist/headless/components/navigation/tabs/tabs.js +140 -85
  302. package/dist/headless/components/navigation/tabs/tabs.js.map +1 -1
  303. package/dist/headless/icons/catalog.js +78 -1
  304. package/dist/headless/icons/catalog.js.map +1 -1
  305. package/dist/headless/icons/index.js +596 -574
  306. package/dist/headless/icons/index.js.map +1 -1
  307. package/dist/headless/icons/svg/accountTree.js +9 -0
  308. package/dist/headless/icons/svg/accountTree.js.map +1 -0
  309. package/dist/headless/icons/svg/callSplit.js +9 -0
  310. package/dist/headless/icons/svg/callSplit.js.map +1 -0
  311. package/dist/headless/icons/svg/deviceHub.js +8 -0
  312. package/dist/headless/icons/svg/deviceHub.js.map +1 -0
  313. package/dist/headless/icons/svg/editNote.js +9 -0
  314. package/dist/headless/icons/svg/editNote.js.map +1 -0
  315. package/dist/headless/icons/svg/filterList.js +9 -0
  316. package/dist/headless/icons/svg/filterList.js.map +1 -0
  317. package/dist/headless/icons/svg/forkRight.js +8 -0
  318. package/dist/headless/icons/svg/forkRight.js.map +1 -0
  319. package/dist/headless/icons/svg/groups.js +9 -0
  320. package/dist/headless/icons/svg/groups.js.map +1 -0
  321. package/dist/headless/icons/svg/hub.js +8 -0
  322. package/dist/headless/icons/svg/hub.js.map +1 -0
  323. package/dist/headless/icons/svg/index.js +598 -576
  324. package/dist/headless/icons/svg/index.js.map +1 -1
  325. package/dist/headless/icons/svg/lan.js +9 -0
  326. package/dist/headless/icons/svg/lan.js.map +1 -0
  327. package/dist/headless/icons/svg/personOff.js +9 -0
  328. package/dist/headless/icons/svg/personOff.js.map +1 -0
  329. package/dist/headless/icons/svg/schema.js +9 -0
  330. package/dist/headless/icons/svg/schema.js.map +1 -0
  331. package/dist/headless/index.js +281 -255
  332. package/dist/headless/index.js.map +1 -1
  333. package/dist/headless/primitives/createCssTransition.js +31 -28
  334. package/dist/headless/primitives/createCssTransition.js.map +1 -1
  335. package/dist/headless/source/components/dataDisplay/accordion/accordion.jsx +60 -18
  336. package/dist/headless/source/components/dataDisplay/accordion/accordion.jsx.map +1 -1
  337. package/dist/headless/source/components/dataDisplay/avatar/avatar.jsx +28 -3
  338. package/dist/headless/source/components/dataDisplay/avatar/avatar.jsx.map +1 -1
  339. package/dist/headless/source/components/dataDisplay/badge/badge.jsx +8 -4
  340. package/dist/headless/source/components/dataDisplay/badge/badge.jsx.map +1 -1
  341. package/dist/headless/source/components/dataDisplay/card/card.jsx +4 -3
  342. package/dist/headless/source/components/dataDisplay/card/card.jsx.map +1 -1
  343. package/dist/headless/source/components/dataDisplay/chart/chart.jsx +168 -0
  344. package/dist/headless/source/components/dataDisplay/chart/chart.jsx.map +1 -0
  345. package/dist/headless/source/components/dataDisplay/chart/chartTheme.js +78 -0
  346. package/dist/headless/source/components/dataDisplay/chart/chartTheme.js.map +7 -0
  347. package/dist/headless/source/components/dataDisplay/chart/index.js +9 -0
  348. package/dist/headless/source/components/dataDisplay/chart/index.js.map +7 -0
  349. package/dist/headless/source/components/dataDisplay/chat/chat.jsx +4 -3
  350. package/dist/headless/source/components/dataDisplay/chat/chat.jsx.map +1 -1
  351. package/dist/headless/source/components/dataDisplay/chat/chatHeader.jsx +7 -5
  352. package/dist/headless/source/components/dataDisplay/chat/chatHeader.jsx.map +1 -1
  353. package/dist/headless/source/components/dataDisplay/chat/chatMessageBubble.jsx +4 -3
  354. package/dist/headless/source/components/dataDisplay/chat/chatMessageBubble.jsx.map +1 -1
  355. package/dist/headless/source/components/dataDisplay/chat/chatShell.jsx +30 -26
  356. package/dist/headless/source/components/dataDisplay/chat/chatShell.jsx.map +1 -1
  357. package/dist/headless/source/components/dataDisplay/chip/chip.jsx +11 -6
  358. package/dist/headless/source/components/dataDisplay/chip/chip.jsx.map +1 -1
  359. package/dist/headless/source/components/dataDisplay/descriptionList/descriptionList.jsx +42 -0
  360. package/dist/headless/source/components/dataDisplay/descriptionList/descriptionList.jsx.map +1 -0
  361. package/dist/headless/source/components/dataDisplay/descriptionList/index.js +7 -0
  362. package/dist/headless/source/components/dataDisplay/descriptionList/index.js.map +7 -0
  363. package/dist/headless/source/components/dataDisplay/imagesList/imagesListItem/imagesListItem.jsx +10 -4
  364. package/dist/headless/source/components/dataDisplay/imagesList/imagesListItem/imagesListItem.jsx.map +1 -1
  365. package/dist/headless/source/components/dataDisplay/kanban/index.js +8 -0
  366. package/dist/headless/source/components/dataDisplay/kanban/index.js.map +7 -0
  367. package/dist/headless/source/components/dataDisplay/kanban/kanban.jsx +99 -0
  368. package/dist/headless/source/components/dataDisplay/kanban/kanban.jsx.map +1 -0
  369. package/dist/headless/source/components/dataDisplay/lazyImage/lazyImage.jsx +4 -3
  370. package/dist/headless/source/components/dataDisplay/lazyImage/lazyImage.jsx.map +1 -1
  371. package/dist/headless/source/components/dataDisplay/list/list.jsx +4 -3
  372. package/dist/headless/source/components/dataDisplay/list/list.jsx.map +1 -1
  373. package/dist/headless/source/components/dataDisplay/meter/index.js +8 -0
  374. package/dist/headless/source/components/dataDisplay/meter/index.js.map +7 -0
  375. package/dist/headless/source/components/dataDisplay/meter/meter.jsx +80 -0
  376. package/dist/headless/source/components/dataDisplay/meter/meter.jsx.map +1 -0
  377. package/dist/headless/source/components/dataDisplay/personChip/index.js +8 -0
  378. package/dist/headless/source/components/dataDisplay/personChip/index.js.map +7 -0
  379. package/dist/headless/source/components/dataDisplay/personChip/personChip.jsx +71 -0
  380. package/dist/headless/source/components/dataDisplay/personChip/personChip.jsx.map +1 -0
  381. package/dist/headless/source/components/dataDisplay/stat/index.js +7 -0
  382. package/dist/headless/source/components/dataDisplay/stat/index.js.map +7 -0
  383. package/dist/headless/source/components/dataDisplay/stat/stat.jsx +72 -0
  384. package/dist/headless/source/components/dataDisplay/stat/stat.jsx.map +1 -0
  385. package/dist/headless/source/components/dataDisplay/table/table.jsx +11 -4
  386. package/dist/headless/source/components/dataDisplay/table/table.jsx.map +1 -1
  387. package/dist/headless/source/components/dataDisplay/table/tableCell.jsx +8 -2
  388. package/dist/headless/source/components/dataDisplay/table/tableCell.jsx.map +1 -1
  389. package/dist/headless/source/components/dataDisplay/table/tableHeadCell.jsx +37 -3
  390. package/dist/headless/source/components/dataDisplay/table/tableHeadCell.jsx.map +1 -1
  391. package/dist/headless/source/components/dataDisplay/thumbCard/thumbCard.jsx +10 -7
  392. package/dist/headless/source/components/dataDisplay/thumbCard/thumbCard.jsx.map +1 -1
  393. package/dist/headless/source/components/dataDisplay/timeline/index.js +8 -0
  394. package/dist/headless/source/components/dataDisplay/timeline/index.js.map +7 -0
  395. package/dist/headless/source/components/dataDisplay/timeline/timeline.jsx +64 -0
  396. package/dist/headless/source/components/dataDisplay/timeline/timeline.jsx.map +1 -0
  397. package/dist/headless/source/components/dataDisplay/typography/typography.jsx +17 -3
  398. package/dist/headless/source/components/dataDisplay/typography/typography.jsx.map +1 -1
  399. package/dist/headless/source/components/feedBack/emptyState/emptyState.jsx +47 -0
  400. package/dist/headless/source/components/feedBack/emptyState/emptyState.jsx.map +1 -0
  401. package/dist/headless/source/components/feedBack/emptyState/index.js +6 -0
  402. package/dist/headless/source/components/feedBack/emptyState/index.js.map +7 -0
  403. package/dist/headless/source/components/feedBack/progressIndicator/progressIndicator.jsx +52 -10
  404. package/dist/headless/source/components/feedBack/progressIndicator/progressIndicator.jsx.map +1 -1
  405. package/dist/headless/source/components/feedBack/saveAssetDialog/saveAssetDialog.jsx +3 -2
  406. package/dist/headless/source/components/feedBack/saveAssetDialog/saveAssetDialog.jsx.map +1 -1
  407. package/dist/headless/source/components/feedBack/tooltip/tooltip.jsx +4 -2
  408. package/dist/headless/source/components/feedBack/tooltip/tooltip.jsx.map +1 -1
  409. package/dist/headless/source/components/inputs/button/button.jsx +7 -3
  410. package/dist/headless/source/components/inputs/button/button.jsx.map +1 -1
  411. package/dist/headless/source/components/inputs/datePicker/dataPickerInput.jsx +4 -3
  412. package/dist/headless/source/components/inputs/datePicker/dataPickerInput.jsx.map +1 -1
  413. package/dist/headless/source/components/inputs/datePicker/datePicker.jsx +4 -6
  414. package/dist/headless/source/components/inputs/datePicker/datePicker.jsx.map +1 -1
  415. package/dist/headless/source/components/inputs/rating/rating.jsx +4 -3
  416. package/dist/headless/source/components/inputs/rating/rating.jsx.map +1 -1
  417. package/dist/headless/source/components/inputs/selectField/selectField.jsx +8 -2
  418. package/dist/headless/source/components/inputs/selectField/selectField.jsx.map +1 -1
  419. package/dist/headless/source/components/inputs/textField/textField.jsx +8 -6
  420. package/dist/headless/source/components/inputs/textField/textField.jsx.map +1 -1
  421. package/dist/headless/source/components/inputs/textField/textFieldAdornment.jsx +4 -3
  422. package/dist/headless/source/components/inputs/textField/textFieldAdornment.jsx.map +1 -1
  423. package/dist/headless/source/components/inputs/textField/textFieldWrapper.jsx +9 -6
  424. package/dist/headless/source/components/inputs/textField/textFieldWrapper.jsx.map +1 -1
  425. package/dist/headless/source/components/inputs/valueSlider/valueSlider.jsx +4 -3
  426. package/dist/headless/source/components/inputs/valueSlider/valueSlider.jsx.map +1 -1
  427. package/dist/headless/source/components/layout/appLayout/appLayout.jsx +3 -2
  428. package/dist/headless/source/components/layout/appLayout/appLayout.jsx.map +1 -1
  429. package/dist/headless/source/components/layout/divider/divider.jsx +10 -6
  430. package/dist/headless/source/components/layout/divider/divider.jsx.map +1 -1
  431. package/dist/headless/source/components/layout/pageHeader/pageHeader.jsx +14 -10
  432. package/dist/headless/source/components/layout/pageHeader/pageHeader.jsx.map +1 -1
  433. package/dist/headless/source/components/layout/sectionHeader/index.js +6 -0
  434. package/dist/headless/source/components/layout/sectionHeader/index.js.map +7 -0
  435. package/dist/headless/source/components/layout/sectionHeader/sectionHeader.jsx +80 -0
  436. package/dist/headless/source/components/layout/sectionHeader/sectionHeader.jsx.map +1 -0
  437. package/dist/headless/source/components/layout/stack/stack.jsx +3 -2
  438. package/dist/headless/source/components/layout/stack/stack.jsx.map +1 -1
  439. package/dist/headless/source/components/navigation/appBar/appBar.jsx +7 -5
  440. package/dist/headless/source/components/navigation/appBar/appBar.jsx.map +1 -1
  441. package/dist/headless/source/components/navigation/bottomBar/bottomBar.jsx +4 -3
  442. package/dist/headless/source/components/navigation/bottomBar/bottomBar.jsx.map +1 -1
  443. package/dist/headless/source/components/navigation/stepper/stepper.jsx +14 -7
  444. package/dist/headless/source/components/navigation/stepper/stepper.jsx.map +1 -1
  445. package/dist/headless/source/components/navigation/tabs/tab/tab.jsx +7 -5
  446. package/dist/headless/source/components/navigation/tabs/tab/tab.jsx.map +1 -1
  447. package/dist/headless/source/components/navigation/tabs/tabs.jsx +84 -4
  448. package/dist/headless/source/components/navigation/tabs/tabs.jsx.map +1 -1
  449. package/dist/headless/source/connects/rt/table/table.jsx +9 -1
  450. package/dist/headless/source/connects/rt/table/table.jsx.map +1 -1
  451. package/dist/headless/source/icons/catalog.js +78 -1
  452. package/dist/headless/source/icons/catalog.js.map +2 -2
  453. package/dist/headless/source/icons/svg/accountTree.js +11 -0
  454. package/dist/headless/source/icons/svg/accountTree.js.map +7 -0
  455. package/dist/headless/source/icons/svg/callSplit.js +11 -0
  456. package/dist/headless/source/icons/svg/callSplit.js.map +7 -0
  457. package/dist/headless/source/icons/svg/deviceHub.js +10 -0
  458. package/dist/headless/source/icons/svg/deviceHub.js.map +7 -0
  459. package/dist/headless/source/icons/svg/editNote.js +11 -0
  460. package/dist/headless/source/icons/svg/editNote.js.map +7 -0
  461. package/dist/headless/source/icons/svg/filterList.js +11 -0
  462. package/dist/headless/source/icons/svg/filterList.js.map +7 -0
  463. package/dist/headless/source/icons/svg/forkRight.js +10 -0
  464. package/dist/headless/source/icons/svg/forkRight.js.map +7 -0
  465. package/dist/headless/source/icons/svg/groups.js +11 -0
  466. package/dist/headless/source/icons/svg/groups.js.map +7 -0
  467. package/dist/headless/source/icons/svg/hub.js +10 -0
  468. package/dist/headless/source/icons/svg/hub.js.map +7 -0
  469. package/dist/headless/source/icons/svg/index.js +22 -0
  470. package/dist/headless/source/icons/svg/index.js.map +2 -2
  471. package/dist/headless/source/icons/svg/lan.js +11 -0
  472. package/dist/headless/source/icons/svg/lan.js.map +7 -0
  473. package/dist/headless/source/icons/svg/personOff.js +11 -0
  474. package/dist/headless/source/icons/svg/personOff.js.map +7 -0
  475. package/dist/headless/source/icons/svg/schema.js +11 -0
  476. package/dist/headless/source/icons/svg/schema.js.map +7 -0
  477. package/dist/headless/source/index.js +33 -1
  478. package/dist/headless/source/index.js.map +2 -2
  479. package/dist/headless/source/primitives/createCssTransition.js +10 -1
  480. package/dist/headless/source/primitives/createCssTransition.js.map +2 -2
  481. package/dist/icons/catalog.d.ts +1 -1
  482. package/dist/icons/catalog.js +78 -1
  483. package/dist/icons/catalog.js.map +1 -1
  484. package/dist/icons/index.js +596 -574
  485. package/dist/icons/index.js.map +1 -1
  486. package/dist/icons/svg/accountTree.d.ts +4 -0
  487. package/dist/icons/svg/accountTree.js +9 -0
  488. package/dist/icons/svg/accountTree.js.map +1 -0
  489. package/dist/icons/svg/callSplit.d.ts +4 -0
  490. package/dist/icons/svg/callSplit.js +9 -0
  491. package/dist/icons/svg/callSplit.js.map +1 -0
  492. package/dist/icons/svg/deviceHub.d.ts +4 -0
  493. package/dist/icons/svg/deviceHub.js +8 -0
  494. package/dist/icons/svg/deviceHub.js.map +1 -0
  495. package/dist/icons/svg/editNote.d.ts +4 -0
  496. package/dist/icons/svg/editNote.js +9 -0
  497. package/dist/icons/svg/editNote.js.map +1 -0
  498. package/dist/icons/svg/filterList.d.ts +4 -0
  499. package/dist/icons/svg/filterList.js +9 -0
  500. package/dist/icons/svg/filterList.js.map +1 -0
  501. package/dist/icons/svg/forkRight.d.ts +4 -0
  502. package/dist/icons/svg/forkRight.js +8 -0
  503. package/dist/icons/svg/forkRight.js.map +1 -0
  504. package/dist/icons/svg/groups.d.ts +4 -0
  505. package/dist/icons/svg/groups.js +9 -0
  506. package/dist/icons/svg/groups.js.map +1 -0
  507. package/dist/icons/svg/hub.d.ts +4 -0
  508. package/dist/icons/svg/hub.js +8 -0
  509. package/dist/icons/svg/hub.js.map +1 -0
  510. package/dist/icons/svg/index.d.ts +11 -0
  511. package/dist/icons/svg/index.js +598 -576
  512. package/dist/icons/svg/index.js.map +1 -1
  513. package/dist/icons/svg/lan.d.ts +4 -0
  514. package/dist/icons/svg/lan.js +9 -0
  515. package/dist/icons/svg/lan.js.map +1 -0
  516. package/dist/icons/svg/personOff.d.ts +4 -0
  517. package/dist/icons/svg/personOff.js +9 -0
  518. package/dist/icons/svg/personOff.js.map +1 -0
  519. package/dist/icons/svg/schema.d.ts +4 -0
  520. package/dist/icons/svg/schema.js +9 -0
  521. package/dist/icons/svg/schema.js.map +1 -0
  522. package/dist/index.d.ts +21 -5
  523. package/dist/index.js +281 -255
  524. package/dist/index.js.map +1 -1
  525. package/dist/primitives/createCssTransition.d.ts +6 -0
  526. package/dist/primitives/createCssTransition.js +31 -28
  527. package/dist/primitives/createCssTransition.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 +1 -0
  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 +4 -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/dist/source/primitives/createCssTransition.js +10 -1
  739. package/dist/source/primitives/createCssTransition.js.map +2 -2
  740. package/package.json +79 -8
@@ -1 +1 @@
1
- {"version":3,"file":"imagesListItem.js","sources":["../../../../../../src/components/dataDisplay/imagesList/imagesListItem/imagesListItem.tsx"],"sourcesContent":["import { type JSX, Show, createEffect, createSignal, mergeProps, splitProps } from \"solid-js\";\nimport cn from \"clsx\";\nimport { ImagesListItemModal } from \"./imagesListItemModal\";\nimport { useImagesListContext } from \"../imagesListContext\";\n\nexport interface ImagesListItemProps {\n class?: string;\n src: string;\n rowsHeight?: number;\n cols: number;\n rows: number;\n rounded?: boolean;\n itemBarPlacement?: \"top\" | \"bottom\" | \"under\";\n itemBarContent?: JSX.Element;\n alt?: string;\n}\n\nexport function ImagesListItem(props: ImagesListItemProps): JSX.Element {\n const merged = mergeProps({ cols: 1, rows: 1, itemBarPlacement: \"bottom\" as const, alt: \"image\" }, props);\n const [local] = splitProps(merged, [\n \"class\",\n \"src\",\n \"rounded\",\n \"itemBarContent\",\n \"cols\",\n \"rows\",\n \"itemBarPlacement\",\n \"alt\",\n ]);\n\n const ctx = useImagesListContext();\n const [isOpen, setIsOpen] = createSignal(false);\n\n createEffect(() => {\n document.body.style.overflow = isOpen() ? \"hidden\" : \"auto\";\n });\n\n const style = (): JSX.CSSProperties => ({\n height: ctx.rowsHeight ? `${ctx.rowsHeight * local.rows}px` : \"\",\n \"grid-row-end\": `span ${local.rows}`,\n \"grid-column-end\": `span ${local.cols}`,\n });\n\n return (\n <>\n <li\n data-testid=\"images-list-item\"\n class={cn(\"smwb-gallery__list__item\", local.class, \"smwb-gallery-item\", `smwb-${ctx.variant}`)}\n onClick={() => setIsOpen(true)}\n style={style()}\n >\n <div class=\"smwb-gallery-item__inner\">\n <div class=\"smwb-gallery-item__img-wrapper\">\n <img src={local.src} alt={local.alt || \"image\"} class={cn(\"smwb-gallery-item__img\", { \"smwb-rounded\": local.rounded })} />\n </div>\n <Show when={local.itemBarContent}>\n <div\n class={cn(\"smwb-gallery-item__bar\", local.class, `smwb-${local.itemBarPlacement}`, { \"smwb-rounded\": local.rounded })}\n >\n {local.itemBarContent}\n </div>\n </Show>\n </div>\n </li>\n <ImagesListItemModal src={local.src} onClose={() => setIsOpen(false)} isOpen={isOpen()} />\n </>\n );\n}\n\nexport default ImagesListItem;\n"],"names":["ImagesListItem","props","merged","mergeProps","cols","rows","itemBarPlacement","alt","local","splitProps","ctx","useImagesListContext","isOpen","setIsOpen","createSignal","createEffect","document","body","style","overflow","height","rowsHeight","_el$","_tmpl$2","_el$2","firstChild","_el$3","_el$4","$$click","_$insert","_$createComponent","Show","when","itemBarContent","children","_el$5","_tmpl$","_$effect","_$className","cn","class","rounded","_p$","_v$","variant","_v$2","_v$3","src","_v$4","_v$5","e","t","_$style","a","_$setAttribute","o","i","undefined","ImagesListItemModal","onClose","_$delegateEvents"],"mappings":";;;;;;AAiBO,SAASA,EAAeC,GAAyC;AACtE,QAAMC,IAASC,EAAW;AAAA,IAAEC,MAAM;AAAA,IAAGC,MAAM;AAAA,IAAGC,kBAAkB;AAAA,IAAmBC,KAAK;AAAA,EAAA,GAAWN,CAAK,GAClG,CAACO,CAAK,IAAIC,EAAWP,GAAQ,CACjC,SACA,OACA,WACA,kBACA,QACA,QACA,oBACA,KAAK,CACN,GAEKQ,IAAMC,EAAAA,GACN,CAACC,GAAQC,CAAS,IAAIC,EAAa,EAAK;AAE9CC,EAAAA,EAAa,MAAM;AACjBC,aAASC,KAAKC,MAAMC,WAAWP,EAAAA,IAAW,WAAW;AAAA,EACvD,CAAC;AAED,QAAMM,IAAQA,OAA0B;AAAA,IACtCE,QAAQV,EAAIW,aAAa,GAAGX,EAAIW,aAAab,EAAMH,IAAI,OAAO;AAAA,IAC9D,gBAAgB,QAAQG,EAAMH,IAAI;AAAA,IAClC,mBAAmB,QAAQG,EAAMJ,IAAI;AAAA,EAAA;AAGvC,SAAA,EAAA,MAAA;AAAA,QAAAkB,IAAAC,KAAAC,IAAAF,EAAAG,YAAAC,IAAAF,EAAAC,YAAAE,IAAAD,EAAAD;AAAAH,WAAAA,EAAAM,UAKe,MAAMf,EAAU,EAAI,GAACgB,EAAAL,GAAAM,EAO3BC,GAAI;AAAA,MAAA,IAACC,OAAI;AAAA,eAAExB,EAAMyB;AAAAA,MAAc;AAAA,MAAA,IAAAC,WAAA;AAAA,YAAAC,IAAAC,EAAAA;AAAAP,eAAAA,EAAAM,GAAA,MAI3B3B,EAAMyB,cAAc,GAAAI,QAAAC,EAAAH,GAFdI,EAAG,0BAA0B/B,EAAMgC,OAAO,QAAQhC,EAAMF,gBAAgB,IAAI;AAAA,UAAE,gBAAgBE,EAAMiC;AAAAA,QAAAA,CAAS,CAAC,CAAA,GAAAN;AAAAA,MAAA;AAAA,IAAA,CAAA,GAAA,IAAA,GAAAE,EAAAK,CAAAA,MAAA;AAAA,UAAAC,IAVpHJ,EAAG,4BAA4B/B,EAAMgC,OAAO,qBAAqB,QAAQ9B,EAAIkC,OAAO,EAAE,GAACC,IAEvF3B,KAAO4B,IAIAtC,EAAMuC,KAAGC,IAAOxC,EAAMD,OAAO,SAAO0C,IAASV,EAAG,0BAA0B;AAAA,QAAE,gBAAgB/B,EAAMiC;AAAAA,MAAAA,CAAS;AAACE,aAAAA,MAAAD,EAAAQ,KAAAZ,EAAAhB,GAAAoB,EAAAQ,IAAAP,CAAA,GAAAD,EAAAS,IAAAC,EAAA9B,GAAAuB,GAAAH,EAAAS,CAAA,GAAAL,MAAAJ,EAAAW,KAAAC,EAAA3B,GAAA,OAAAe,EAAAW,IAAAP,CAAA,GAAAE,MAAAN,EAAAa,KAAAD,EAAA3B,GAAA,OAAAe,EAAAa,IAAAP,CAAA,GAAAC,MAAAP,EAAAc,KAAAlB,EAAAX,GAAAe,EAAAc,IAAAP,CAAA,GAAAP;AAAAA,IAAA,GAAA;AAAA,MAAAQ,GAAAO;AAAAA,MAAAN,GAAAM;AAAAA,MAAAJ,GAAAI;AAAAA,MAAAF,GAAAE;AAAAA,MAAAD,GAAAC;AAAAA,IAAAA,CAAA,GAAAnC;AAAAA,EAAA,GAAA,GAAAQ,EAW3H4B,GAAmB;AAAA,IAAA,IAACX,MAAG;AAAA,aAAEvC,EAAMuC;AAAAA,IAAG;AAAA,IAAEY,SAASA,MAAM9C,EAAU,EAAK;AAAA,IAAC,IAAED,SAAM;AAAA,aAAEA,EAAAA;AAAAA,IAAQ;AAAA,EAAA,CAAA,CAAA;AAG5F;AAE8BgD,EAAA,CAAA,OAAA,CAAA;"}
1
+ {"version":3,"file":"imagesListItem.js","sources":["../../../../../../src/components/dataDisplay/imagesList/imagesListItem/imagesListItem.tsx"],"sourcesContent":["import { type JSX, Show, children, createEffect, createSignal, mergeProps, onCleanup, splitProps } from \"solid-js\";\nimport cn from \"clsx\";\nimport { ImagesListItemModal } from \"./imagesListItemModal\";\nimport { useImagesListContext } from \"../imagesListContext\";\n\nexport interface ImagesListItemProps {\n class?: string;\n src: string;\n rowsHeight?: number;\n cols: number;\n rows: number;\n rounded?: boolean;\n itemBarPlacement?: \"top\" | \"bottom\" | \"under\";\n itemBarContent?: JSX.Element;\n alt?: string;\n}\n\nexport function ImagesListItem(props: ImagesListItemProps): JSX.Element {\n const merged = mergeProps({ cols: 1, rows: 1, itemBarPlacement: \"bottom\" as const, alt: \"image\" }, props);\n const [local] = splitProps(merged, [\n \"class\",\n \"src\",\n \"rounded\",\n \"itemBarContent\",\n \"cols\",\n \"rows\",\n \"itemBarPlacement\",\n \"alt\",\n ]);\n // Read once: markup passed as a prop is created anew on every read, and\n // during hydration a copy the server never rendered has no DOM node.\n const itemBar = children(() => local.itemBarContent);\n\n const ctx = useImagesListContext();\n const [isOpen, setIsOpen] = createSignal(false);\n\n // Lock the page's scroll while the viewer is open, and give it back as it was.\n // (Every item used to set it to \"auto\" when it mounted, undoing another lock.)\n createEffect(() => {\n if (!isOpen()) return;\n const previous = document.body.style.overflow;\n document.body.style.overflow = \"hidden\";\n onCleanup(() => {\n document.body.style.overflow = previous;\n });\n });\n\n const style = (): JSX.CSSProperties => ({\n height: ctx.rowsHeight ? `${ctx.rowsHeight * local.rows}px` : \"\",\n \"grid-row-end\": `span ${local.rows}`,\n \"grid-column-end\": `span ${local.cols}`,\n });\n\n return (\n <>\n <li\n data-testid=\"images-list-item\"\n class={cn(\"smwb-gallery__list__item\", local.class, \"smwb-gallery-item\", `smwb-${ctx.variant}`)}\n onClick={() => setIsOpen(true)}\n style={style()}\n >\n <div class=\"smwb-gallery-item__inner\">\n <div class=\"smwb-gallery-item__img-wrapper\">\n <img src={local.src} alt={local.alt || \"image\"} class={cn(\"smwb-gallery-item__img\", { \"smwb-rounded\": local.rounded })} />\n </div>\n <Show when={itemBar()}>\n <div\n class={cn(\"smwb-gallery-item__bar\", local.class, `smwb-${local.itemBarPlacement}`, { \"smwb-rounded\": local.rounded })}\n >\n {itemBar()}\n </div>\n </Show>\n </div>\n </li>\n <ImagesListItemModal src={local.src} onClose={() => setIsOpen(false)} isOpen={isOpen()} />\n </>\n );\n}\n\nexport default ImagesListItem;\n"],"names":["ImagesListItem","props","merged","mergeProps","cols","rows","itemBarPlacement","alt","local","splitProps","itemBar","children","itemBarContent","ctx","useImagesListContext","isOpen","setIsOpen","createSignal","createEffect","previous","document","body","style","overflow","onCleanup","height","rowsHeight","_el$","_tmpl$2","_el$2","firstChild","_el$3","_el$4","$$click","_$insert","_$createComponent","Show","when","_el$5","_tmpl$","_$effect","_$className","cn","class","rounded","_p$","_v$","variant","_v$2","_v$3","src","_v$4","_v$5","e","t","_$style","a","_$setAttribute","o","i","undefined","ImagesListItemModal","onClose","_$delegateEvents"],"mappings":"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"}
@@ -0,0 +1,131 @@
1
+ import { use as g, spread as $, mergeProps as w, insert as r, createComponent as u, effect as K, setAttribute as h, memo as j, template as s } from "solid-js/web";
2
+ import { splitProps as k, mergeProps as x, children as b, Show as m, createUniqueId as A } from "solid-js";
3
+ import y from "clsx";
4
+ import { mergeRefs as v } from "../../../primitives/mergeRefs.js";
5
+ var I = /* @__PURE__ */ s("<div data-testid=kanban>"), S = /* @__PURE__ */ s("<span class=smwb-kanban__count>"), W = /* @__PURE__ */ s("<ul class=smwb-kanban__cards role=list>"), q = /* @__PURE__ */ s("<div class=smwb-kanban__column-footer>"), B = /* @__PURE__ */ s("<div data-testid=kanban-column role=group><div class=smwb-kanban__column-header><div class=smwb-kanban__column-title>"), O = /* @__PURE__ */ s("<div class=smwb-kanban__empty>"), R = /* @__PURE__ */ s("<div class=smwb-kanban__card-body>"), U = /* @__PURE__ */ s("<li data-testid=kanban-card>"), z = /* @__PURE__ */ s("<div class=smwb-kanban__card-title>"), D = /* @__PURE__ */ s("<a class=smwb-kanban__card-title>");
6
+ const C = (e) => typeof e == "object" && e ? e : {}, E = (e) => typeof e == "number" ? `${e}px` : e, f = (e) => e != null && e !== !1 && e !== !0 && e !== "";
7
+ function M(e) {
8
+ const [t, l] = k(e, ["class", "style", "columnWidth", "children", "ref"]);
9
+ return (() => {
10
+ var c = I(), o = v(t.ref);
11
+ return typeof o == "function" && g(o, c), $(c, w(l, {
12
+ get class() {
13
+ return y("smwb-kanban", t.class);
14
+ },
15
+ get style() {
16
+ return {
17
+ ...C(t.style),
18
+ "--smwb-kanban-column-width": E(t.columnWidth)
19
+ };
20
+ }
21
+ }), !1, !0), r(c, () => t.children), c;
22
+ })();
23
+ }
24
+ function N(e) {
25
+ const [t, l] = k(e, ["class", "style", "title", "count", "accent", "empty", "footer", "children", "ref"]), c = `${A()}-title`, o = b(() => t.children), _ = b(() => t.empty), i = b(() => t.footer), p = () => o.toArray().some(f);
26
+ return (() => {
27
+ var n = B(), d = n.firstChild, L = d.firstChild, P = v(t.ref);
28
+ return typeof P == "function" && g(P, n), h(n, "aria-labelledby", c), $(n, w(l, {
29
+ get class() {
30
+ return y("smwb-kanban__column", t.class);
31
+ },
32
+ get style() {
33
+ return {
34
+ ...C(t.style),
35
+ "--smwb-kanban-accent": t.accent
36
+ };
37
+ }
38
+ }), !1, !0), h(L, "id", c), r(L, () => t.title), r(d, u(m, {
39
+ get when() {
40
+ return j(() => t.count !== void 0)() && t.count !== null;
41
+ },
42
+ get children() {
43
+ var a = S();
44
+ return r(a, () => t.count), a;
45
+ }
46
+ }), null), r(n, u(m, {
47
+ get when() {
48
+ return p();
49
+ },
50
+ get fallback() {
51
+ return u(m, {
52
+ get when() {
53
+ return f(_());
54
+ },
55
+ get children() {
56
+ var a = O();
57
+ return r(a, _), a;
58
+ }
59
+ });
60
+ },
61
+ get children() {
62
+ var a = W();
63
+ return r(a, o), a;
64
+ }
65
+ }), null), r(n, u(m, {
66
+ get when() {
67
+ return f(i());
68
+ },
69
+ get children() {
70
+ var a = q();
71
+ return r(a, i), a;
72
+ }
73
+ }), null), n;
74
+ })();
75
+ }
76
+ function Q(e) {
77
+ const t = x({
78
+ titleLines: 3
79
+ }, e), [l, c] = k(t, ["class", "style", "title", "href", "titleLines", "children", "ref"]), o = b(() => l.title), _ = b(() => l.children);
80
+ return (() => {
81
+ var i = U(), p = v(l.ref);
82
+ return typeof p == "function" && g(p, i), $(i, w(c, {
83
+ get class() {
84
+ return y("smwb-kanban__card", {
85
+ "smwb-kanban__card_link": !!l.href
86
+ }, l.class);
87
+ },
88
+ get style() {
89
+ return {
90
+ ...C(l.style),
91
+ "--smwb-kanban-title-lines": String(l.titleLines)
92
+ };
93
+ }
94
+ }), !1, !0), r(i, u(m, {
95
+ get when() {
96
+ return f(o());
97
+ },
98
+ get children() {
99
+ return u(m, {
100
+ get when() {
101
+ return l.href;
102
+ },
103
+ get fallback() {
104
+ return (() => {
105
+ var n = z();
106
+ return r(n, o), n;
107
+ })();
108
+ },
109
+ children: (n) => (() => {
110
+ var d = D();
111
+ return r(d, o), K(() => h(d, "href", n())), d;
112
+ })()
113
+ });
114
+ }
115
+ }), null), r(i, u(m, {
116
+ get when() {
117
+ return f(_());
118
+ },
119
+ get children() {
120
+ var n = R();
121
+ return r(n, _), n;
122
+ }
123
+ }), null), i;
124
+ })();
125
+ }
126
+ export {
127
+ M as Kanban,
128
+ Q as KanbanCard,
129
+ N as KanbanColumn
130
+ };
131
+ //# sourceMappingURL=kanban.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"kanban.js","sources":["../../../../../src/components/dataDisplay/kanban/kanban.tsx"],"sourcesContent":["import { 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"],"names":["styleObject","style","cssLength","value","present","Kanban","props","local","rest","splitProps","_el$","_tmpl$","_ref$","mergeRefs","ref","_$use","_$spread","_$mergeProps","cn","class","columnWidth","_$insert","children","KanbanColumn","titleId","createUniqueId","cards","empty","footer","hasCards","toArray","some","_el$2","_tmpl$5","_el$3","firstChild","_el$4","_ref$2","_$setAttribute","accent","title","_$createComponent","Show","when","_$memo","count","undefined","_el$5","_tmpl$2","fallback","_el$8","_tmpl$6","_el$6","_tmpl$3","_el$7","_tmpl$4","KanbanCard","merged","mergeProps","titleLines","body","_el$9","_tmpl$8","_ref$3","Boolean","href","String","_el$1","_tmpl$9","_el$10","_tmpl$0","_$effect","_el$0","_tmpl$7"],"mappings":"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"}
@@ -1,49 +1,49 @@
1
- import { insert as o, createComponent as u, memo as $, use as h, spread as k, mergeProps as E, effect as I, className as P, style as R, template as i } from "solid-js/web";
2
- import { mergeProps as S, splitProps as C, createSignal as g, onMount as F, Show as p, onCleanup as O } from "solid-js";
3
- import x from "clsx";
4
- import { mergeRefs as L } from "../../../primitives/mergeRefs.js";
5
- var M = /* @__PURE__ */ i("<span class=smwb-lazy-image__fallback>"), N = /* @__PURE__ */ i("<img>", !0, !1, !1), V = /* @__PURE__ */ i("<span>");
6
- function D(d) {
1
+ import { insert as o, createComponent as g, use as $, spread as k, mergeProps as E, effect as I, className as P, style as R, template as i } from "solid-js/web";
2
+ import { mergeProps as S, splitProps as C, createSignal as p, onMount as F, children as O, Show as d, onCleanup as x } from "solid-js";
3
+ import L from "clsx";
4
+ import { mergeRefs as M } from "../../../primitives/mergeRefs.js";
5
+ var N = /* @__PURE__ */ i("<span class=smwb-lazy-image__fallback>"), V = /* @__PURE__ */ i("<img>", !0, !1, !1), j = /* @__PURE__ */ i("<span>");
6
+ function G(v) {
7
7
  const c = S({
8
8
  lazy: !0
9
- }, d), [r, v] = C(c, ["src", "alt", "fallback", "lazy", "aspectRatio", "class", "onError", "ref"]), [y, b] = g(!1), [m, f] = g(!c.lazy);
10
- let s;
9
+ }, v), [r, y] = C(c, ["src", "alt", "fallback", "lazy", "aspectRatio", "class", "onError", "ref"]), [b, z] = p(!1), [m, f] = p(!c.lazy);
10
+ let a;
11
11
  F(() => {
12
- if (!r.lazy || m() || !s) return;
12
+ if (!r.lazy || m() || !a) return;
13
13
  if (typeof IntersectionObserver > "u") {
14
14
  f(!0);
15
15
  return;
16
16
  }
17
17
  const t = new IntersectionObserver((e) => {
18
- e.some((a) => a.isIntersecting) && (f(!0), t.disconnect());
18
+ e.some((s) => s.isIntersecting) && (f(!0), t.disconnect());
19
19
  });
20
- t.observe(s), O(() => t.disconnect());
20
+ t.observe(a), x(() => t.disconnect());
21
21
  });
22
- const z = (t) => {
23
- b(!0), r.onError?.(t);
24
- }, n = () => y() || !r.src, w = () => m() ? r.src : void 0, _ = () => r.aspectRatio != null ? {
22
+ const w = (t) => {
23
+ z(!0), r.onError?.(t);
24
+ }, n = () => b() || !r.src, _ = () => m() ? r.src : void 0, u = O(() => n() ? r.fallback : void 0), h = () => r.aspectRatio != null ? {
25
25
  "aspect-ratio": String(r.aspectRatio)
26
26
  } : void 0;
27
27
  return (() => {
28
- var t = V();
29
- return o(t, u(p, {
28
+ var t = j();
29
+ return o(t, g(d, {
30
30
  get when() {
31
- return $(() => !!n())() && r.fallback;
31
+ return u();
32
32
  },
33
33
  get children() {
34
- var e = M();
35
- return o(e, () => r.fallback), e;
34
+ var e = N();
35
+ return o(e, u), e;
36
36
  }
37
- }), null), o(t, u(p, {
37
+ }), null), o(t, g(d, {
38
38
  get when() {
39
39
  return !n();
40
40
  },
41
41
  get children() {
42
- var e = N(), a = L(r.ref, (l) => s = l);
43
- return typeof a == "function" && h(a, e), k(e, E(v, {
42
+ var e = V(), s = M(r.ref, (l) => a = l);
43
+ return typeof s == "function" && $(s, e), k(e, E(y, {
44
44
  class: "smwb-lazy-image__img",
45
45
  get src() {
46
- return w();
46
+ return _();
47
47
  },
48
48
  get alt() {
49
49
  return r.alt ?? "";
@@ -52,14 +52,14 @@ function D(d) {
52
52
  return r.lazy ? "lazy" : void 0;
53
53
  },
54
54
  decoding: "async",
55
- onError: z
55
+ onError: w
56
56
  }), !1, !1), e;
57
57
  }
58
58
  }), null), I((e) => {
59
- var a = x("smwb-lazy-image", r.class, {
59
+ var s = L("smwb-lazy-image", r.class, {
60
60
  "smwb-lazy-image--empty": n()
61
- }), l = _();
62
- return a !== e.e && P(t, e.e = a), e.t = R(t, l, e.t), e;
61
+ }), l = h();
62
+ return s !== e.e && P(t, e.e = s), e.t = R(t, l, e.t), e;
63
63
  }, {
64
64
  e: void 0,
65
65
  t: void 0
@@ -67,6 +67,6 @@ function D(d) {
67
67
  })();
68
68
  }
69
69
  export {
70
- D as LazyImage
70
+ G as LazyImage
71
71
  };
72
72
  //# sourceMappingURL=lazyImage.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"lazyImage.js","sources":["../../../../../src/components/dataDisplay/lazyImage/lazyImage.tsx"],"sourcesContent":["import { 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"],"names":["LazyImage","props","merged","mergeProps","lazy","local","rest","splitProps","failed","setFailed","createSignal","visible","setVisible","imgEl","onMount","IntersectionObserver","io","entries","some","entry","isIntersecting","disconnect","observe","onCleanup","onError","event","showFallback","src","resolvedSrc","undefined","style","aspectRatio","String","_el$","_tmpl$3","_$insert","_$createComponent","Show","when","_$memo","fallback","children","_el$2","_tmpl$","_el$3","_tmpl$2","_ref$","mergeRefs","ref","el","_$use","_$spread","_$mergeProps","alt","loading","_$effect","_p$","_v$","cn","class","_v$2","e","_$className","t","_$style"],"mappings":"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"}
1
+ {"version":3,"file":"lazyImage.js","sources":["../../../../../src/components/dataDisplay/lazyImage/lazyImage.tsx"],"sourcesContent":["import { 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"],"names":["LazyImage","props","merged","mergeProps","lazy","local","rest","splitProps","failed","setFailed","createSignal","visible","setVisible","imgEl","onMount","IntersectionObserver","io","entries","some","entry","isIntersecting","disconnect","observe","onCleanup","onError","event","showFallback","src","resolvedSrc","undefined","fallback","children","style","aspectRatio","String","_el$","_tmpl$3","_$insert","_$createComponent","Show","when","_el$2","_tmpl$","_el$3","_tmpl$2","_ref$","mergeRefs","ref","el","_$use","_$spread","_$mergeProps","alt","loading","_$effect","_p$","_v$","cn","class","_v$2","e","_$className","t","_$style"],"mappings":"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"}
@@ -1,32 +1,32 @@
1
- import { use as i, spread as m, mergeProps as u, insert as t, createComponent as p, template as n } from "solid-js/web";
2
- import { splitProps as c, Show as d } from "solid-js";
3
- import f from "clsx";
4
- import { mergeRefs as h } from "../../../primitives/mergeRefs.js";
5
- var _ = /* @__PURE__ */ n("<li class=smwb-list__subheader>"), b = /* @__PURE__ */ n("<ul>");
6
- function P(o) {
7
- const [e, a] = c(o, ["class", "dense", "subheader", "children", "ref"]);
1
+ import { use as m, spread as u, mergeProps as c, insert as t, createComponent as d, template as o } from "solid-js/web";
2
+ import { splitProps as p, children as f, Show as h } from "solid-js";
3
+ import _ from "clsx";
4
+ import { mergeRefs as b } from "../../../primitives/mergeRefs.js";
5
+ var g = /* @__PURE__ */ o("<li class=smwb-list__subheader>"), w = /* @__PURE__ */ o("<ul>");
6
+ function y(i) {
7
+ const [e, a] = p(i, ["class", "dense", "subheader", "children", "ref"]), s = f(() => e.subheader);
8
8
  return (() => {
9
- var r = b(), s = h(e.ref);
10
- return typeof s == "function" && i(s, r), m(r, u(a, {
9
+ var r = w(), l = b(e.ref);
10
+ return typeof l == "function" && m(l, r), u(r, c(a, {
11
11
  "data-testid": "list",
12
12
  role: "list",
13
13
  get class() {
14
- return f("smwb-list", {
14
+ return _("smwb-list", {
15
15
  "smwb-list_dense": e.dense
16
16
  }, e.class);
17
17
  }
18
- }), !1, !0), t(r, p(d, {
18
+ }), !1, !0), t(r, d(h, {
19
19
  get when() {
20
- return e.subheader;
20
+ return s();
21
21
  },
22
22
  get children() {
23
- var l = _();
24
- return t(l, () => e.subheader), l;
23
+ var n = g();
24
+ return t(n, s), n;
25
25
  }
26
26
  }), null), t(r, () => e.children, null), r;
27
27
  })();
28
28
  }
29
29
  export {
30
- P as List
30
+ y as List
31
31
  };
32
32
  //# sourceMappingURL=list.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"list.js","sources":["../../../../../src/components/dataDisplay/list/list.tsx"],"sourcesContent":["import { 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"],"names":["List","props","local","rest","splitProps","_el$","_tmpl$2","_ref$","mergeRefs","ref","_$use","_$spread","_$mergeProps","cn","dense","class","_$insert","_$createComponent","Show","when","subheader","children","_el$2","_tmpl$"],"mappings":";;;;;AAYO,SAASA,EAAKC,GAA4C;AAC/D,QAAM,CAACC,GAAOC,CAAI,IAAIC,EAAWH,GAAO,CAAC,SAAS,SAAS,aAAa,YAAY,KAAK,CAAC;AAC1F,UAAA,MAAA;AAAA,QAAAI,IAAAC,EAAAA,GAAAC,IAGSC,EAAUN,EAAMO,GAAG;AAAC,kBAAAF,KAAA,cAAAG,EAAAH,GAAAF,CAAA,GAAAM,EAAAN,GAAAO,EADrBT,GAAI;AAAA,MAAA,eAEI;AAAA,MAAM,MACb;AAAA,MAAM,IAAA,QAAA;AAAA,eACJU,EAAG,aAAa;AAAA,UAAE,mBAAmBX,EAAMY;AAAAA,QAAAA,GAASZ,EAAMa,KAAK;AAAA,MAAC;AAAA,IAAA,CAAA,GAAA,IAAA,EAAA,GAAAC,EAAAX,GAAAY,EAEtEC,GAAI;AAAA,MAAA,IAACC,OAAI;AAAA,eAAEjB,EAAMkB;AAAAA,MAAS;AAAA,MAAA,IAAAC,WAAA;AAAA,YAAAC,IAAAC,EAAAA;AAAAP,eAAAA,EAAAM,GAAA,MACSpB,EAAMkB,SAAS,GAAAE;AAAAA,MAAA;AAAA,IAAA,CAAA,GAAA,IAAA,GAAAN,EAAAX,GAAA,MAElDH,EAAMmB,UAAQ,IAAA,GAAAhB;AAAAA,EAAA,GAAA;AAGrB;"}
1
+ {"version":3,"file":"list.js","sources":["../../../../../src/components/dataDisplay/list/list.tsx"],"sourcesContent":["import { 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"],"names":["List","props","local","rest","splitProps","subheader","children","_el$","_tmpl$2","_ref$","mergeRefs","ref","_$use","_$spread","_$mergeProps","cn","dense","class","_$insert","_$createComponent","Show","when","_el$2","_tmpl$"],"mappings":";;;;;AAYO,SAASA,EAAKC,GAA4C;AAC/D,QAAM,CAACC,GAAOC,CAAI,IAAIC,EAAWH,GAAO,CAAC,SAAS,SAAS,aAAa,YAAY,KAAK,CAAC,GAGpFI,IAAYC,EAAS,MAAMJ,EAAMG,SAAS;AAChD,UAAA,MAAA;AAAA,QAAAE,IAAAC,EAAAA,GAAAC,IAGSC,EAAUR,EAAMS,GAAG;AAAC,kBAAAF,KAAA,cAAAG,EAAAH,GAAAF,CAAA,GAAAM,EAAAN,GAAAO,EADrBX,GAAI;AAAA,MAAA,eAEI;AAAA,MAAM,MACb;AAAA,MAAM,IAAA,QAAA;AAAA,eACJY,EAAG,aAAa;AAAA,UAAE,mBAAmBb,EAAMc;AAAAA,QAAAA,GAASd,EAAMe,KAAK;AAAA,MAAC;AAAA,IAAA,CAAA,GAAA,IAAA,EAAA,GAAAC,EAAAX,GAAAY,EAEtEC,GAAI;AAAA,MAAA,IAACC,OAAI;AAAA,eAAEhB,EAAAA;AAAAA,MAAW;AAAA,MAAA,IAAAC,WAAA;AAAA,YAAAgB,IAAAC,EAAAA;AAAAL,eAAAA,EAAAI,GACajB,CAAS,GAAAiB;AAAAA,MAAA;AAAA,IAAA,CAAA,GAAA,IAAA,GAAAJ,EAAAX,GAAA,MAE5CL,EAAMI,UAAQ,IAAA,GAAAC;AAAAA,EAAA,GAAA;AAGrB;"}
@@ -0,0 +1,82 @@
1
+ import { use as $, spread as g, mergeProps as w, insert as o, createComponent as _, effect as y, setStyleProperty as L, template as s } from "solid-js/web";
2
+ import { mergeProps as S, splitProps as T, children as C, Show as h } from "solid-js";
3
+ import P from "clsx";
4
+ import { mergeRefs as E } from "../../../primitives/mergeRefs.js";
5
+ var M = /* @__PURE__ */ s("<span class=smwb-meter__text aria-hidden=true>"), R = /* @__PURE__ */ s("<div><span class=smwb-meter__track aria-hidden=true><span class=smwb-meter__fill>"), k = /* @__PURE__ */ s("<b class=smwb-meter__value>"), D = /* @__PURE__ */ s("<span class=smwb-meter__of> <!> ");
6
+ const H = [{
7
+ from: 0,
8
+ color: "info"
9
+ }, {
10
+ from: 1,
11
+ color: "success"
12
+ }];
13
+ function A(n, m) {
14
+ let e = "neutral", a = -1 / 0;
15
+ for (const t of m)
16
+ n >= t.from && t.from >= a && (e = t.color, a = t.from);
17
+ return e;
18
+ }
19
+ function j(n) {
20
+ const m = S({
21
+ ofLabel: "of",
22
+ thresholds: H
23
+ }, n), [e, a] = T(m, ["class", "value", "max", "label", "text", "ofLabel", "thresholds", "color", "hideText", "ref"]), t = () => e.max > 0 ? Math.min(1, Math.max(0, e.value / e.max)) : 0, d = () => e.color ?? A(t(), e.thresholds), c = C(() => e.text), p = () => {
24
+ const r = c();
25
+ return typeof r == "function" ? r(e.value, e.max) : r;
26
+ };
27
+ return (() => {
28
+ var r = R(), b = r.firstChild, v = b.firstChild, u = E(e.ref);
29
+ return typeof u == "function" && $(u, r), g(r, w(a, {
30
+ role: "meter",
31
+ get "aria-label"() {
32
+ return e.label;
33
+ },
34
+ get "aria-valuenow"() {
35
+ return e.value;
36
+ },
37
+ "aria-valuemin": 0,
38
+ get "aria-valuemax"() {
39
+ return e.max;
40
+ },
41
+ get "aria-valuetext"() {
42
+ return `${e.value} ${e.ofLabel} ${e.max}`;
43
+ },
44
+ "data-testid": "meter",
45
+ get class() {
46
+ return P("smwb-meter", `smwb-meter_color-${d()}`, {
47
+ "smwb-meter_bar-only": e.hideText
48
+ }, e.class);
49
+ }
50
+ }), !1, !0), o(r, _(h, {
51
+ get when() {
52
+ return !e.hideText;
53
+ },
54
+ get children() {
55
+ var i = M();
56
+ return o(i, _(h, {
57
+ get when() {
58
+ return c() !== void 0;
59
+ },
60
+ get fallback() {
61
+ return [(() => {
62
+ var l = k();
63
+ return o(l, () => e.value), l;
64
+ })(), (() => {
65
+ var l = D(), x = l.firstChild, f = x.nextSibling;
66
+ return f.nextSibling, o(l, () => e.ofLabel, f), o(l, () => e.max, null), l;
67
+ })()];
68
+ },
69
+ get children() {
70
+ return p();
71
+ }
72
+ })), i;
73
+ }
74
+ }), null), y((i) => L(v, "width", `${t() * 100}%`)), r;
75
+ })();
76
+ }
77
+ export {
78
+ H as DEFAULT_METER_THRESHOLDS,
79
+ j as Meter,
80
+ A as meterColor
81
+ };
82
+ //# sourceMappingURL=meter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"meter.js","sources":["../../../../../src/components/dataDisplay/meter/meter.tsx"],"sourcesContent":["import { 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"],"names":["DEFAULT_METER_THRESHOLDS","from","color","meterColor","share","thresholds","threshold","Meter","props","merged","mergeProps","ofLabel","local","rest","splitProps","max","Math","min","value","custom","children","text","resolved","_el$","_tmpl$2","_el$2","firstChild","_el$3","_ref$","mergeRefs","ref","_$use","_$spread","_$mergeProps","label","cn","hideText","class","_$insert","_$createComponent","Show","when","_el$4","_tmpl$","undefined","fallback","_el$5","_tmpl$3","_el$6","_tmpl$4","_el$7","_el$9","nextSibling","_$effect","_$p","_$setStyleProperty"],"mappings":"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"}
@@ -0,0 +1,102 @@
1
+ import { createComponent as o, Dynamic as l, mergeProps as h, memo as m, insert as a, template as i } from "solid-js/web";
2
+ import { mergeProps as f, splitProps as u, Show as p, children as g } from "solid-js";
3
+ import d from "clsx";
4
+ import { mergeRefs as _ } from "../../../primitives/mergeRefs.js";
5
+ import { Avatar as v } from "../avatar/avatar.js";
6
+ var w = /* @__PURE__ */ i("<span class=smwb-person-chip__meta>"), b = /* @__PURE__ */ i("<span class=smwb-person-chip__text><span class=smwb-person-chip__name>");
7
+ function $(t) {
8
+ const r = t.trim().split(/\s+/).filter(Boolean), e = (n) => n ? Array.from(n)[0] ?? "" : "";
9
+ return (e(r[0]) + (r.length > 1 ? e(r[r.length - 1]) : "")).toUpperCase();
10
+ }
11
+ function P(t) {
12
+ let r = 0;
13
+ for (const e of t) r = r * 31 + (e.codePointAt(0) ?? 0) >>> 0;
14
+ return `hsl(${r % 360} 42% 42%)`;
15
+ }
16
+ function C(t) {
17
+ const r = g(() => t.meta);
18
+ return (() => {
19
+ var e = b(), n = e.firstChild;
20
+ return a(n, () => t.name), a(e, o(p, {
21
+ get when() {
22
+ return r();
23
+ },
24
+ get children() {
25
+ var s = w();
26
+ return a(s, r), s;
27
+ }
28
+ }), null), e;
29
+ })();
30
+ }
31
+ function k(t) {
32
+ const r = f({
33
+ size: 24
34
+ }, t), [e, n] = u(r, ["class", "name", "src", "href", "compact", "size", "colorSeed", "color", "meta", "ref"]);
35
+ return o(l, h({
36
+ get component() {
37
+ return e.href ? "a" : "span";
38
+ }
39
+ }, n, {
40
+ ref(s) {
41
+ var c = _(e.ref);
42
+ typeof c == "function" && c(s);
43
+ },
44
+ get href() {
45
+ return e.href;
46
+ },
47
+ get title() {
48
+ return m(() => !!e.compact)() ? e.name : void 0;
49
+ },
50
+ get role() {
51
+ return e.compact && !e.href ? "img" : void 0;
52
+ },
53
+ get "aria-label"() {
54
+ return m(() => !!e.compact)() ? e.name : void 0;
55
+ },
56
+ "data-testid": "person-chip",
57
+ get class() {
58
+ return d("smwb-person-chip", {
59
+ "smwb-person-chip_link": !!e.href,
60
+ "smwb-person-chip_compact": e.compact
61
+ }, e.class);
62
+ },
63
+ get children() {
64
+ return [o(v, {
65
+ class: "smwb-person-chip__avatar",
66
+ get size() {
67
+ return e.size;
68
+ },
69
+ get src() {
70
+ return e.src;
71
+ },
72
+ get color() {
73
+ return e.color ?? P(e.colorSeed ?? e.name);
74
+ },
75
+ "aria-hidden": "true",
76
+ get children() {
77
+ return $(e.name);
78
+ }
79
+ }), o(p, {
80
+ get when() {
81
+ return !e.compact;
82
+ },
83
+ get children() {
84
+ return o(C, {
85
+ get name() {
86
+ return e.name;
87
+ },
88
+ get meta() {
89
+ return e.meta;
90
+ }
91
+ });
92
+ }
93
+ })];
94
+ }
95
+ }));
96
+ }
97
+ export {
98
+ k as PersonChip,
99
+ P as avatarColor,
100
+ $ as initialsOf
101
+ };
102
+ //# sourceMappingURL=personChip.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"personChip.js","sources":["../../../../../src/components/dataDisplay/personChip/personChip.tsx"],"sourcesContent":["import { 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"],"names":["initialsOf","name","words","trim","split","filter","Boolean","first","word","Array","from","length","toUpperCase","avatarColor","seed","hash","char","codePointAt","PersonText","props","meta","children","_el$","_tmpl$2","_el$2","firstChild","_$insert","_$createComponent","Show","when","_el$3","_tmpl$","PersonChip","merged","mergeProps","size","local","rest","splitProps","Dynamic","_$mergeProps","component","href","ref","r$","_ref$","mergeRefs","title","_$memo","compact","undefined","role","cn","class","Avatar","src","color","colorSeed"],"mappings":";;;;;;AAOO,SAASA,EAAWC,GAAsB;AAC/C,QAAMC,IAAQD,EAAKE,KAAAA,EAAOC,MAAM,KAAK,EAAEC,OAAOC,OAAO,GAC/CC,IAAQA,CAACC,MAAsCA,IAAQC,MAAMC,KAAKF,CAAI,EAAE,CAAC,KAAK,KAAM;AAC1F,UAAQD,EAAML,EAAM,CAAC,CAAC,KAAKA,EAAMS,SAAS,IAAIJ,EAAML,EAAMA,EAAMS,SAAS,CAAC,CAAC,IAAI,KAAKC,YAAAA;AACtF;AAMO,SAASC,EAAYC,GAAsB;AAChD,MAAIC,IAAO;AACX,aAAWC,KAAQF,EAAMC,CAAAA,IAAQA,IAAO,MAAMC,EAAKC,YAAY,CAAC,KAAK,OAAQ;AAC7E,SAAO,OAAOF,IAAO,GAAG;AAC1B;AAwBA,SAASG,EAAWC,GAAyD;AAC3E,QAAMC,IAAOC,EAAS,MAAMF,EAAMC,IAAI;AACtC,UAAA,MAAA;AAAA,QAAAE,IAAAC,EAAAA,GAAAC,IAAAF,EAAAG;AAAAC,WAAAA,EAAAF,GAAA,MAE0CL,EAAMlB,IAAI,GAAAyB,EAAAJ,GAAAK,EAC/CC,GAAI;AAAA,MAAA,IAACC,OAAI;AAAA,eAAET,EAAAA;AAAAA,MAAM;AAAA,MAAA,IAAAC,WAAA;AAAA,YAAAS,IAAAC,EAAAA;AAAAL,eAAAA,EAAAI,GACsBV,CAAI,GAAAU;AAAAA,MAAA;AAAA,IAAA,CAAA,GAAA,IAAA,GAAAR;AAAAA,EAAA,GAAA;AAIlD;AAGO,SAASU,EAAWb,GAAqC;AAC9D,QAAMc,IAASC,EAAW;AAAA,IAAEC,MAAM;AAAA,EAAA,GAA6BhB,CAAK,GAC9D,CAACiB,GAAOC,CAAI,IAAIC,EAAWL,GAAQ,CACvC,SACA,QACA,OACA,QACA,WACA,QACA,aACA,SACA,QACA,KAAK,CACN;AAED,SAAAN,EACGY,GAAOC,EAAA;AAAA,IAAA,IACNC,YAAS;AAAA,aAAEL,EAAMM,OAAO,MAAM;AAAA,IAAM;AAAA,EAAA,GAChCL,GAAI;AAAA,IAAAM,IAAAC,GAAA;AAAA,UAAAC,IACHC,EAAUV,EAAMO,GAAG;AAAC,aAAAE,KAAA,cAAAA,EAAAD,CAAA;AAAA,IAAA;AAAA,IAAA,IACzBF,OAAI;AAAA,aAAEN,EAAMM;AAAAA,IAAI;AAAA,IAAA,IAChBK,QAAK;AAAA,aAAEC,EAAA,MAAA,CAAA,CAAAZ,EAAMa,OAAO,MAAGb,EAAMnC,OAAOiD;AAAAA,IAAS;AAAA,IAAA,IAC7CC,OAAI;AAAA,aAAEf,EAAMa,WAAW,CAACb,EAAMM,OAAO,QAAQQ;AAAAA,IAAS;AAAA,IAAA,IAAA,eAAA;AAAA,aAC1CF,EAAA,MAAA,CAAA,CAAAZ,EAAMa,OAAO,MAAGb,EAAMnC,OAAOiD;AAAAA,IAAS;AAAA,IAAA,eAAA;AAAA,IAAA,IAAA,QAAA;AAAA,aAE3CE,EAAG,oBAAoB;AAAA,QAAE,yBAAyB,CAAC,CAAChB,EAAMM;AAAAA,QAAM,4BAA4BN,EAAMa;AAAAA,MAAAA,GAAWb,EAAMiB,KAAK;AAAA,IAAC;AAAA,IAAA,IAAAhC,WAAA;AAAA,aAAA,CAAAM,EAE/H2B,GAAM;AAAA,QAAA,OAAA;AAAA,QAAA,IAELnB,OAAI;AAAA,iBAAEC,EAAMD;AAAAA,QAAI;AAAA,QAAA,IAChBoB,MAAG;AAAA,iBAAEnB,EAAMmB;AAAAA,QAAG;AAAA,QAAA,IACdC,QAAK;AAAA,iBAAEpB,EAAMoB,SAAS3C,EAAYuB,EAAMqB,aAAarB,EAAMnC,IAAI;AAAA,QAAC;AAAA,QAAA,eAAA;AAAA,QAAA,IAAAoB,WAAA;AAAA,iBAG/DrB,EAAWoC,EAAMnC,IAAI;AAAA,QAAC;AAAA,MAAA,CAAA,GAAA0B,EAExBC,GAAI;AAAA,QAAA,IAACC,OAAI;AAAA,iBAAE,CAACO,EAAMa;AAAAA,QAAO;AAAA,QAAA,IAAA5B,WAAA;AAAA,iBAAAM,EACvBT,GAAU;AAAA,YAAA,IAACjB,OAAI;AAAA,qBAAEmC,EAAMnC;AAAAA,YAAI;AAAA,YAAA,IAAEmB,OAAI;AAAA,qBAAEgB,EAAMhB;AAAAA,YAAI;AAAA,UAAA,CAAA;AAAA,QAAA;AAAA,MAAA,CAAA,CAAA;AAAA,IAAA;AAAA,EAAA,CAAA,CAAA;AAItD;"}