@smwb/ui-solid 0.12.1 → 0.13.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (841) hide show
  1. package/README.md +74 -0
  2. package/dist/assets/styles/less/components/avatar/avatar.entry.css +1 -1
  3. package/dist/assets/styles/less/components/card/card.entry.css +1 -1
  4. package/dist/assets/styles/less/components/checkbox/checkbox.entry.css +1 -1
  5. package/dist/assets/styles/less/components/chip/chip.entry.css +1 -1
  6. package/dist/assets/styles/less/components/dagView/dagView.entry.css +1 -0
  7. package/dist/assets/styles/less/components/menu/menu.entry.css +1 -1
  8. package/dist/assets/styles/less/components/personChip/personChip.entry.css +1 -1
  9. package/dist/assets/styles/less/components/radioButton/radioButton.entry.css +1 -1
  10. package/dist/assets/styles/less/components/rating/rating.entry.css +1 -1
  11. package/dist/assets/styles/less/components/selectField/selectField.entry.css +1 -1
  12. package/dist/assets/styles/less/components/table/table.entry.css +1 -1
  13. package/dist/assets/styles/less/components/thumbCard/thumbCard.entry.css +1 -1
  14. package/dist/assets/styles/less/components/toggle/toggle.entry.css +1 -1
  15. package/dist/assets/styles/less/components/typography/typography.entry.css +1 -1
  16. package/dist/components/base/animateHeight/animateHeight.js +41 -42
  17. package/dist/components/base/animateHeight/animateHeight.js.map +1 -1
  18. package/dist/components/base/icon/icon.d.ts +6 -2
  19. package/dist/components/base/icon/icon.js +41 -41
  20. package/dist/components/base/icon/icon.js.map +1 -1
  21. package/dist/components/base/ripple/ripple.d.ts +3 -0
  22. package/dist/components/base/ripple/ripple.js +46 -34
  23. package/dist/components/base/ripple/ripple.js.map +1 -1
  24. package/dist/components/dataDisplay/avatar/avatar.d.ts +4 -0
  25. package/dist/components/dataDisplay/avatar/avatar.js +37 -33
  26. package/dist/components/dataDisplay/avatar/avatar.js.map +1 -1
  27. package/dist/components/dataDisplay/card/card.d.ts +32 -1
  28. package/dist/components/dataDisplay/card/card.js +47 -34
  29. package/dist/components/dataDisplay/card/card.js.map +1 -1
  30. package/dist/components/dataDisplay/carousel/carousel.js +92 -88
  31. package/dist/components/dataDisplay/carousel/carousel.js.map +1 -1
  32. package/dist/components/dataDisplay/chart/chart.d.ts +2 -0
  33. package/dist/components/dataDisplay/chat/chatIconButton.js +23 -13
  34. package/dist/components/dataDisplay/chat/chatIconButton.js.map +1 -1
  35. package/dist/components/dataDisplay/chat/chatLayout.d.ts +2 -0
  36. package/dist/components/dataDisplay/chat/chatLayout.js +33 -29
  37. package/dist/components/dataDisplay/chat/chatLayout.js.map +1 -1
  38. package/dist/components/dataDisplay/chat/chatOverlayLayout.d.ts +2 -0
  39. package/dist/components/dataDisplay/chat/chatOverlayLayout.js +19 -17
  40. package/dist/components/dataDisplay/chat/chatOverlayLayout.js.map +1 -1
  41. package/dist/components/dataDisplay/chip/chip.d.ts +32 -0
  42. package/dist/components/dataDisplay/chip/chip.js +104 -63
  43. package/dist/components/dataDisplay/chip/chip.js.map +1 -1
  44. package/dist/components/dataDisplay/chipGroup/chipGroup.js +44 -39
  45. package/dist/components/dataDisplay/chipGroup/chipGroup.js.map +1 -1
  46. package/dist/components/dataDisplay/dagView/dagLayout.d.ts +74 -0
  47. package/dist/components/dataDisplay/dagView/dagLayout.js +284 -0
  48. package/dist/components/dataDisplay/dagView/dagLayout.js.map +1 -0
  49. package/dist/components/dataDisplay/dagView/dagView.d.ts +151 -0
  50. package/dist/components/dataDisplay/dagView/dagView.js +488 -0
  51. package/dist/components/dataDisplay/dagView/dagView.js.map +1 -0
  52. package/dist/components/dataDisplay/dagView/index.d.ts +4 -0
  53. package/dist/components/dataDisplay/dagView/panZoom.d.ts +75 -0
  54. package/dist/components/dataDisplay/dagView/panZoom.js +161 -0
  55. package/dist/components/dataDisplay/dagView/panZoom.js.map +1 -0
  56. package/dist/components/dataDisplay/descriptionList/descriptionList.d.ts +11 -3
  57. package/dist/components/dataDisplay/descriptionList/descriptionList.js +20 -24
  58. package/dist/components/dataDisplay/descriptionList/descriptionList.js.map +1 -1
  59. package/dist/components/dataDisplay/expansionPanel/expansionPanel.js +114 -81
  60. package/dist/components/dataDisplay/expansionPanel/expansionPanel.js.map +1 -1
  61. package/dist/components/dataDisplay/kanban/kanban.d.ts +6 -0
  62. package/dist/components/dataDisplay/kanban/kanban.js +71 -61
  63. package/dist/components/dataDisplay/kanban/kanban.js.map +1 -1
  64. package/dist/components/dataDisplay/lazyImage/lazyImage.js +14 -12
  65. package/dist/components/dataDisplay/lazyImage/lazyImage.js.map +1 -1
  66. package/dist/components/dataDisplay/list/list.d.ts +2 -0
  67. package/dist/components/dataDisplay/list/list.js +16 -12
  68. package/dist/components/dataDisplay/list/list.js.map +1 -1
  69. package/dist/components/dataDisplay/list/listItem.js +20 -18
  70. package/dist/components/dataDisplay/list/listItem.js.map +1 -1
  71. package/dist/components/dataDisplay/meter/meter.d.ts +2 -0
  72. package/dist/components/dataDisplay/meter/meter.js +15 -13
  73. package/dist/components/dataDisplay/meter/meter.js.map +1 -1
  74. package/dist/components/dataDisplay/personChip/personChip.d.ts +2 -0
  75. package/dist/components/dataDisplay/personChip/personChip.js +12 -10
  76. package/dist/components/dataDisplay/personChip/personChip.js.map +1 -1
  77. package/dist/components/dataDisplay/stat/stat.d.ts +2 -0
  78. package/dist/components/dataDisplay/stat/stat.js +41 -43
  79. package/dist/components/dataDisplay/stat/stat.js.map +1 -1
  80. package/dist/components/dataDisplay/table/table.d.ts +10 -1
  81. package/dist/components/dataDisplay/table/table.js +46 -22
  82. package/dist/components/dataDisplay/table/table.js.map +1 -1
  83. package/dist/components/dataDisplay/table/tableBody.js +25 -12
  84. package/dist/components/dataDisplay/table/tableBody.js.map +1 -1
  85. package/dist/components/dataDisplay/table/tableCell.d.ts +10 -2
  86. package/dist/components/dataDisplay/table/tableCell.js +15 -14
  87. package/dist/components/dataDisplay/table/tableCell.js.map +1 -1
  88. package/dist/components/dataDisplay/table/tableColumns.d.ts +146 -0
  89. package/dist/components/dataDisplay/table/tableColumns.js +254 -0
  90. package/dist/components/dataDisplay/table/tableColumns.js.map +1 -0
  91. package/dist/components/dataDisplay/table/tableEntities.d.ts +4 -0
  92. package/dist/components/dataDisplay/table/tableEntities.js +6 -0
  93. package/dist/components/dataDisplay/table/tableEntities.js.map +1 -0
  94. package/dist/components/dataDisplay/table/tableHead.js +29 -11
  95. package/dist/components/dataDisplay/table/tableHead.js.map +1 -1
  96. package/dist/components/dataDisplay/table/tableHeadCell.d.ts +23 -1
  97. package/dist/components/dataDisplay/table/tableHeadCell.js +51 -26
  98. package/dist/components/dataDisplay/table/tableHeadCell.js.map +1 -1
  99. package/dist/components/dataDisplay/table/tableHtmlText.d.ts +8 -0
  100. package/dist/components/dataDisplay/table/tableHtmlText.js +121 -0
  101. package/dist/components/dataDisplay/table/tableHtmlText.js.map +1 -0
  102. package/dist/components/dataDisplay/table/tableRow.d.ts +2 -0
  103. package/dist/components/dataDisplay/table/tableRow.js +28 -13
  104. package/dist/components/dataDisplay/table/tableRow.js.map +1 -1
  105. package/dist/components/dataDisplay/thumbCard/thumbCard.d.ts +44 -3
  106. package/dist/components/dataDisplay/thumbCard/thumbCard.js +86 -58
  107. package/dist/components/dataDisplay/thumbCard/thumbCard.js.map +1 -1
  108. package/dist/components/dataDisplay/treeView/treeView.d.ts +2 -0
  109. package/dist/components/dataDisplay/treeView/treeView.js +4 -2
  110. package/dist/components/dataDisplay/treeView/treeView.js.map +1 -1
  111. package/dist/components/dataDisplay/typography/typography.js +22 -26
  112. package/dist/components/dataDisplay/typography/typography.js.map +1 -1
  113. package/dist/components/feedBack/emptyState/emptyState.d.ts +2 -0
  114. package/dist/components/feedBack/emptyState/emptyState.js +20 -16
  115. package/dist/components/feedBack/emptyState/emptyState.js.map +1 -1
  116. package/dist/components/feedBack/message/message.d.ts +2 -0
  117. package/dist/components/feedBack/message/message.js +17 -13
  118. package/dist/components/feedBack/message/message.js.map +1 -1
  119. package/dist/components/feedBack/modal/modal.js +20 -16
  120. package/dist/components/feedBack/modal/modal.js.map +1 -1
  121. package/dist/components/feedBack/skeleton/skeleton.d.ts +10 -2
  122. package/dist/components/feedBack/skeleton/skeleton.js +43 -35
  123. package/dist/components/feedBack/skeleton/skeleton.js.map +1 -1
  124. package/dist/components/feedBack/snackbar/snackbar.js +24 -20
  125. package/dist/components/feedBack/snackbar/snackbar.js.map +1 -1
  126. package/dist/components/feedBack/tooltip/tooltip.d.ts +9 -1
  127. package/dist/components/feedBack/tooltip/tooltip.js +65 -41
  128. package/dist/components/feedBack/tooltip/tooltip.js.map +1 -1
  129. package/dist/components/inputs/button/button.d.ts +2 -0
  130. package/dist/components/inputs/button/button.js +48 -20
  131. package/dist/components/inputs/button/button.js.map +1 -1
  132. package/dist/components/inputs/buttonGroups/buttonGroup.d.ts +2 -0
  133. package/dist/components/inputs/buttonGroups/buttonGroup.js +14 -10
  134. package/dist/components/inputs/buttonGroups/buttonGroup.js.map +1 -1
  135. package/dist/components/inputs/checkbox/checkbox.d.ts +10 -0
  136. package/dist/components/inputs/checkbox/checkbox.js +59 -36
  137. package/dist/components/inputs/checkbox/checkbox.js.map +1 -1
  138. package/dist/components/inputs/datePicker/datePicker.js +108 -97
  139. package/dist/components/inputs/datePicker/datePicker.js.map +1 -1
  140. package/dist/components/inputs/datePicker/datePickerActionLabel.js +19 -17
  141. package/dist/components/inputs/datePicker/datePickerActionLabel.js.map +1 -1
  142. package/dist/components/inputs/datePicker/datePickerDay.js +41 -25
  143. package/dist/components/inputs/datePicker/datePickerDay.js.map +1 -1
  144. package/dist/components/inputs/datePicker/datePickerIconButton.js +24 -14
  145. package/dist/components/inputs/datePicker/datePickerIconButton.js.map +1 -1
  146. package/dist/components/inputs/dateTimePicker/dateTimePicker.js +90 -79
  147. package/dist/components/inputs/dateTimePicker/dateTimePicker.js.map +1 -1
  148. package/dist/components/inputs/floatingButton/floatingButton.js +26 -16
  149. package/dist/components/inputs/floatingButton/floatingButton.js.map +1 -1
  150. package/dist/components/inputs/radioButton/radioButton.d.ts +9 -0
  151. package/dist/components/inputs/radioButton/radioButton.js +48 -34
  152. package/dist/components/inputs/radioButton/radioButton.js.map +1 -1
  153. package/dist/components/inputs/rating/rating.d.ts +9 -0
  154. package/dist/components/inputs/rating/rating.js +74 -53
  155. package/dist/components/inputs/rating/rating.js.map +1 -1
  156. package/dist/components/inputs/selectField/dropdownMenu.d.ts +21 -1
  157. package/dist/components/inputs/selectField/dropdownMenu.js +268 -143
  158. package/dist/components/inputs/selectField/dropdownMenu.js.map +1 -1
  159. package/dist/components/inputs/selectField/optionNavigation.d.ts +17 -0
  160. package/dist/components/inputs/selectField/optionNavigation.js +37 -0
  161. package/dist/components/inputs/selectField/optionNavigation.js.map +1 -0
  162. package/dist/components/inputs/selectField/selectField.d.ts +32 -1
  163. package/dist/components/inputs/selectField/selectField.js +297 -126
  164. package/dist/components/inputs/selectField/selectField.js.map +1 -1
  165. package/dist/components/inputs/slider/slider.d.ts +25 -3
  166. package/dist/components/inputs/slider/slider.js +320 -197
  167. package/dist/components/inputs/slider/slider.js.map +1 -1
  168. package/dist/components/inputs/textField/textField.d.ts +9 -1
  169. package/dist/components/inputs/textField/textField.js +104 -51
  170. package/dist/components/inputs/textField/textField.js.map +1 -1
  171. package/dist/components/inputs/textField/textFieldWrapper.d.ts +14 -0
  172. package/dist/components/inputs/textField/textFieldWrapper.js +52 -45
  173. package/dist/components/inputs/textField/textFieldWrapper.js.map +1 -1
  174. package/dist/components/inputs/timePicker/timePicker.js +73 -62
  175. package/dist/components/inputs/timePicker/timePicker.js.map +1 -1
  176. package/dist/components/inputs/toggle/toggle.d.ts +4 -0
  177. package/dist/components/inputs/toggle/toggle.js +43 -31
  178. package/dist/components/inputs/toggle/toggle.js.map +1 -1
  179. package/dist/components/inputs/valueSlider/valueSlider.d.ts +12 -0
  180. package/dist/components/inputs/valueSlider/valueSlider.js +32 -27
  181. package/dist/components/inputs/valueSlider/valueSlider.js.map +1 -1
  182. package/dist/components/layout/appLayout/appLayout.d.ts +2 -0
  183. package/dist/components/layout/appLayout/appLayout.js +32 -30
  184. package/dist/components/layout/appLayout/appLayout.js.map +1 -1
  185. package/dist/components/layout/divider/divider.d.ts +2 -0
  186. package/dist/components/layout/divider/divider.js +22 -20
  187. package/dist/components/layout/divider/divider.js.map +1 -1
  188. package/dist/components/layout/floatingWindow/floatingWindow.d.ts +2 -0
  189. package/dist/components/layout/floatingWindow/floatingWindow.js +171 -168
  190. package/dist/components/layout/floatingWindow/floatingWindow.js.map +1 -1
  191. package/dist/components/layout/grid/grid.d.ts +8 -0
  192. package/dist/components/layout/grid/grid.js +52 -44
  193. package/dist/components/layout/grid/grid.js.map +1 -1
  194. package/dist/components/layout/page/page.d.ts +2 -0
  195. package/dist/components/layout/page/page.js +14 -12
  196. package/dist/components/layout/page/page.js.map +1 -1
  197. package/dist/components/layout/pageHeader/pageHeader.d.ts +2 -0
  198. package/dist/components/layout/pageHeader/pageHeader.js +23 -21
  199. package/dist/components/layout/pageHeader/pageHeader.js.map +1 -1
  200. package/dist/components/layout/sectionHeader/sectionHeader.d.ts +2 -0
  201. package/dist/components/layout/sectionHeader/sectionHeader.js +38 -36
  202. package/dist/components/layout/sectionHeader/sectionHeader.js.map +1 -1
  203. package/dist/components/layout/sheet/sheet.d.ts +2 -0
  204. package/dist/components/layout/sheet/sheet.js +50 -48
  205. package/dist/components/layout/sheet/sheet.js.map +1 -1
  206. package/dist/components/layout/stack/stack.d.ts +2 -0
  207. package/dist/components/layout/stack/stack.js +26 -24
  208. package/dist/components/layout/stack/stack.js.map +1 -1
  209. package/dist/components/navigation/appBar/appBar.d.ts +2 -0
  210. package/dist/components/navigation/appBar/appBar.js +18 -16
  211. package/dist/components/navigation/appBar/appBar.js.map +1 -1
  212. package/dist/components/navigation/bottomBar/bottomBar.js +125 -120
  213. package/dist/components/navigation/bottomBar/bottomBar.js.map +1 -1
  214. package/dist/components/navigation/breadcrumbs/breadcrumbs.d.ts +2 -0
  215. package/dist/components/navigation/breadcrumbs/breadcrumbs.js +18 -14
  216. package/dist/components/navigation/breadcrumbs/breadcrumbs.js.map +1 -1
  217. package/dist/components/navigation/menu/menu.d.ts +6 -0
  218. package/dist/components/navigation/menu/menu.js.map +1 -1
  219. package/dist/components/navigation/menu/menuComponent.js +12 -23
  220. package/dist/components/navigation/menu/menuComponent.js.map +1 -1
  221. package/dist/components/navigation/menu/menuContext.d.ts +2 -0
  222. package/dist/components/navigation/menu/menuContext.js.map +1 -1
  223. package/dist/components/navigation/menu/menuFloating.js +54 -46
  224. package/dist/components/navigation/menu/menuFloating.js.map +1 -1
  225. package/dist/components/navigation/menu/menuItem.d.ts +4 -0
  226. package/dist/components/navigation/menu/menuItem.js +58 -33
  227. package/dist/components/navigation/menu/menuItem.js.map +1 -1
  228. package/dist/components/navigation/menu/menuList.d.ts +4 -0
  229. package/dist/components/navigation/menu/menuList.js +34 -16
  230. package/dist/components/navigation/menu/menuList.js.map +1 -1
  231. package/dist/components/navigation/menu/menuSubmenu.d.ts +8 -1
  232. package/dist/components/navigation/menu/menuSubmenu.js +58 -38
  233. package/dist/components/navigation/menu/menuSubmenu.js.map +1 -1
  234. package/dist/components/navigation/pagination/pagination.d.ts +2 -0
  235. package/dist/components/navigation/pagination/pagination.js +28 -24
  236. package/dist/components/navigation/pagination/pagination.js.map +1 -1
  237. package/dist/components/navigation/sidebar/sidebar.js +27 -25
  238. package/dist/components/navigation/sidebar/sidebar.js.map +1 -1
  239. package/dist/components/navigation/stepper/stepper.d.ts +2 -0
  240. package/dist/components/navigation/stepper/stepper.js +46 -42
  241. package/dist/components/navigation/stepper/stepper.js.map +1 -1
  242. package/dist/components/navigation/tabs/tab/tab.js +46 -35
  243. package/dist/components/navigation/tabs/tab/tab.js.map +1 -1
  244. package/dist/components/navigation/tabs/tabs.d.ts +7 -0
  245. package/dist/components/navigation/tabs/tabs.js +90 -75
  246. package/dist/components/navigation/tabs/tabs.js.map +1 -1
  247. package/dist/components/navigation/tabs/tabsContext.d.ts +6 -4
  248. package/dist/components/navigation/tabs/tabsContext.js.map +1 -1
  249. package/dist/connects/rt/table/table.d.ts +16 -1
  250. package/dist/headless/components/base/animateHeight/animateHeight.js +41 -42
  251. package/dist/headless/components/base/animateHeight/animateHeight.js.map +1 -1
  252. package/dist/headless/components/base/icon/icon.js +40 -40
  253. package/dist/headless/components/base/icon/icon.js.map +1 -1
  254. package/dist/headless/components/base/ripple/ripple.js +46 -34
  255. package/dist/headless/components/base/ripple/ripple.js.map +1 -1
  256. package/dist/headless/components/dataDisplay/avatar/avatar.js +37 -33
  257. package/dist/headless/components/dataDisplay/avatar/avatar.js.map +1 -1
  258. package/dist/headless/components/dataDisplay/card/card.js +44 -31
  259. package/dist/headless/components/dataDisplay/card/card.js.map +1 -1
  260. package/dist/headless/components/dataDisplay/carousel/carousel.js +102 -98
  261. package/dist/headless/components/dataDisplay/carousel/carousel.js.map +1 -1
  262. package/dist/headless/components/dataDisplay/chat/chatIconButton.js +23 -13
  263. package/dist/headless/components/dataDisplay/chat/chatIconButton.js.map +1 -1
  264. package/dist/headless/components/dataDisplay/chat/chatLayout.js +33 -29
  265. package/dist/headless/components/dataDisplay/chat/chatLayout.js.map +1 -1
  266. package/dist/headless/components/dataDisplay/chat/chatOverlayLayout.js +19 -17
  267. package/dist/headless/components/dataDisplay/chat/chatOverlayLayout.js.map +1 -1
  268. package/dist/headless/components/dataDisplay/chip/chip.js +104 -63
  269. package/dist/headless/components/dataDisplay/chip/chip.js.map +1 -1
  270. package/dist/headless/components/dataDisplay/chipGroup/chipGroup.js +44 -39
  271. package/dist/headless/components/dataDisplay/chipGroup/chipGroup.js.map +1 -1
  272. package/dist/headless/components/dataDisplay/dagView/dagLayout.js +284 -0
  273. package/dist/headless/components/dataDisplay/dagView/dagLayout.js.map +1 -0
  274. package/dist/headless/components/dataDisplay/dagView/dagView.js +486 -0
  275. package/dist/headless/components/dataDisplay/dagView/dagView.js.map +1 -0
  276. package/dist/headless/components/dataDisplay/dagView/panZoom.js +161 -0
  277. package/dist/headless/components/dataDisplay/dagView/panZoom.js.map +1 -0
  278. package/dist/headless/components/dataDisplay/descriptionList/descriptionList.js +15 -19
  279. package/dist/headless/components/dataDisplay/descriptionList/descriptionList.js.map +1 -1
  280. package/dist/headless/components/dataDisplay/expansionPanel/expansionPanel.js +114 -81
  281. package/dist/headless/components/dataDisplay/expansionPanel/expansionPanel.js.map +1 -1
  282. package/dist/headless/components/dataDisplay/kanban/kanban.js +71 -61
  283. package/dist/headless/components/dataDisplay/kanban/kanban.js.map +1 -1
  284. package/dist/headless/components/dataDisplay/lazyImage/lazyImage.js +14 -12
  285. package/dist/headless/components/dataDisplay/lazyImage/lazyImage.js.map +1 -1
  286. package/dist/headless/components/dataDisplay/list/list.js +16 -12
  287. package/dist/headless/components/dataDisplay/list/list.js.map +1 -1
  288. package/dist/headless/components/dataDisplay/list/listItem.js +20 -18
  289. package/dist/headless/components/dataDisplay/list/listItem.js.map +1 -1
  290. package/dist/headless/components/dataDisplay/meter/meter.js +14 -12
  291. package/dist/headless/components/dataDisplay/meter/meter.js.map +1 -1
  292. package/dist/headless/components/dataDisplay/personChip/personChip.js +12 -10
  293. package/dist/headless/components/dataDisplay/personChip/personChip.js.map +1 -1
  294. package/dist/headless/components/dataDisplay/stat/stat.js +43 -45
  295. package/dist/headless/components/dataDisplay/stat/stat.js.map +1 -1
  296. package/dist/headless/components/dataDisplay/table/table.js +47 -23
  297. package/dist/headless/components/dataDisplay/table/table.js.map +1 -1
  298. package/dist/headless/components/dataDisplay/table/tableBody.js +25 -12
  299. package/dist/headless/components/dataDisplay/table/tableBody.js.map +1 -1
  300. package/dist/headless/components/dataDisplay/table/tableCell.js +15 -14
  301. package/dist/headless/components/dataDisplay/table/tableCell.js.map +1 -1
  302. package/dist/headless/components/dataDisplay/table/tableColumns.js +254 -0
  303. package/dist/headless/components/dataDisplay/table/tableColumns.js.map +1 -0
  304. package/dist/headless/components/dataDisplay/table/tableEntities.js +6 -0
  305. package/dist/headless/components/dataDisplay/table/tableEntities.js.map +1 -0
  306. package/dist/headless/components/dataDisplay/table/tableHead.js +29 -11
  307. package/dist/headless/components/dataDisplay/table/tableHead.js.map +1 -1
  308. package/dist/headless/components/dataDisplay/table/tableHeadCell.js +51 -26
  309. package/dist/headless/components/dataDisplay/table/tableHeadCell.js.map +1 -1
  310. package/dist/headless/components/dataDisplay/table/tableHtmlText.js +121 -0
  311. package/dist/headless/components/dataDisplay/table/tableHtmlText.js.map +1 -0
  312. package/dist/headless/components/dataDisplay/table/tableRow.js +28 -13
  313. package/dist/headless/components/dataDisplay/table/tableRow.js.map +1 -1
  314. package/dist/headless/components/dataDisplay/thumbCard/thumbCard.js +86 -58
  315. package/dist/headless/components/dataDisplay/thumbCard/thumbCard.js.map +1 -1
  316. package/dist/headless/components/dataDisplay/treeView/treeView.js +4 -2
  317. package/dist/headless/components/dataDisplay/treeView/treeView.js.map +1 -1
  318. package/dist/headless/components/dataDisplay/typography/typography.js +21 -25
  319. package/dist/headless/components/dataDisplay/typography/typography.js.map +1 -1
  320. package/dist/headless/components/feedBack/emptyState/emptyState.js +9 -5
  321. package/dist/headless/components/feedBack/emptyState/emptyState.js.map +1 -1
  322. package/dist/headless/components/feedBack/message/message.js +17 -13
  323. package/dist/headless/components/feedBack/message/message.js.map +1 -1
  324. package/dist/headless/components/feedBack/modal/modal.js +20 -16
  325. package/dist/headless/components/feedBack/modal/modal.js.map +1 -1
  326. package/dist/headless/components/feedBack/skeleton/skeleton.js +43 -35
  327. package/dist/headless/components/feedBack/skeleton/skeleton.js.map +1 -1
  328. package/dist/headless/components/feedBack/snackbar/snackbar.js +30 -26
  329. package/dist/headless/components/feedBack/snackbar/snackbar.js.map +1 -1
  330. package/dist/headless/components/feedBack/tooltip/tooltip.js +63 -39
  331. package/dist/headless/components/feedBack/tooltip/tooltip.js.map +1 -1
  332. package/dist/headless/components/inputs/button/button.js +51 -23
  333. package/dist/headless/components/inputs/button/button.js.map +1 -1
  334. package/dist/headless/components/inputs/buttonGroups/buttonGroup.js +22 -18
  335. package/dist/headless/components/inputs/buttonGroups/buttonGroup.js.map +1 -1
  336. package/dist/headless/components/inputs/checkbox/checkbox.js +59 -36
  337. package/dist/headless/components/inputs/checkbox/checkbox.js.map +1 -1
  338. package/dist/headless/components/inputs/datePicker/datePicker.js +106 -95
  339. package/dist/headless/components/inputs/datePicker/datePicker.js.map +1 -1
  340. package/dist/headless/components/inputs/datePicker/datePickerActionLabel.js +19 -17
  341. package/dist/headless/components/inputs/datePicker/datePickerActionLabel.js.map +1 -1
  342. package/dist/headless/components/inputs/datePicker/datePickerDay.js +41 -25
  343. package/dist/headless/components/inputs/datePicker/datePickerDay.js.map +1 -1
  344. package/dist/headless/components/inputs/datePicker/datePickerIconButton.js +24 -14
  345. package/dist/headless/components/inputs/datePicker/datePickerIconButton.js.map +1 -1
  346. package/dist/headless/components/inputs/dateTimePicker/dateTimePicker.js +90 -79
  347. package/dist/headless/components/inputs/dateTimePicker/dateTimePicker.js.map +1 -1
  348. package/dist/headless/components/inputs/floatingButton/floatingButton.js +25 -15
  349. package/dist/headless/components/inputs/floatingButton/floatingButton.js.map +1 -1
  350. package/dist/headless/components/inputs/radioButton/radioButton.js +48 -34
  351. package/dist/headless/components/inputs/radioButton/radioButton.js.map +1 -1
  352. package/dist/headless/components/inputs/rating/rating.js +74 -53
  353. package/dist/headless/components/inputs/rating/rating.js.map +1 -1
  354. package/dist/headless/components/inputs/selectField/dropdownMenu.js +268 -143
  355. package/dist/headless/components/inputs/selectField/dropdownMenu.js.map +1 -1
  356. package/dist/headless/components/inputs/selectField/optionNavigation.js +37 -0
  357. package/dist/headless/components/inputs/selectField/optionNavigation.js.map +1 -0
  358. package/dist/headless/components/inputs/selectField/selectField.js +297 -126
  359. package/dist/headless/components/inputs/selectField/selectField.js.map +1 -1
  360. package/dist/headless/components/inputs/slider/slider.js +320 -197
  361. package/dist/headless/components/inputs/slider/slider.js.map +1 -1
  362. package/dist/headless/components/inputs/textField/textField.js +104 -51
  363. package/dist/headless/components/inputs/textField/textField.js.map +1 -1
  364. package/dist/headless/components/inputs/textField/textFieldWrapper.js +52 -45
  365. package/dist/headless/components/inputs/textField/textFieldWrapper.js.map +1 -1
  366. package/dist/headless/components/inputs/timePicker/timePicker.js +74 -63
  367. package/dist/headless/components/inputs/timePicker/timePicker.js.map +1 -1
  368. package/dist/headless/components/inputs/toggle/toggle.js +42 -30
  369. package/dist/headless/components/inputs/toggle/toggle.js.map +1 -1
  370. package/dist/headless/components/inputs/valueSlider/valueSlider.js +33 -28
  371. package/dist/headless/components/inputs/valueSlider/valueSlider.js.map +1 -1
  372. package/dist/headless/components/layout/appLayout/appLayout.js +29 -27
  373. package/dist/headless/components/layout/appLayout/appLayout.js.map +1 -1
  374. package/dist/headless/components/layout/divider/divider.js +19 -17
  375. package/dist/headless/components/layout/divider/divider.js.map +1 -1
  376. package/dist/headless/components/layout/floatingWindow/floatingWindow.js +185 -182
  377. package/dist/headless/components/layout/floatingWindow/floatingWindow.js.map +1 -1
  378. package/dist/headless/components/layout/grid/grid.js +54 -46
  379. package/dist/headless/components/layout/grid/grid.js.map +1 -1
  380. package/dist/headless/components/layout/page/page.js +12 -10
  381. package/dist/headless/components/layout/page/page.js.map +1 -1
  382. package/dist/headless/components/layout/pageHeader/pageHeader.js +22 -20
  383. package/dist/headless/components/layout/pageHeader/pageHeader.js.map +1 -1
  384. package/dist/headless/components/layout/sectionHeader/sectionHeader.js +39 -37
  385. package/dist/headless/components/layout/sectionHeader/sectionHeader.js.map +1 -1
  386. package/dist/headless/components/layout/sheet/sheet.js +50 -48
  387. package/dist/headless/components/layout/sheet/sheet.js.map +1 -1
  388. package/dist/headless/components/layout/stack/stack.js +23 -21
  389. package/dist/headless/components/layout/stack/stack.js.map +1 -1
  390. package/dist/headless/components/navigation/appBar/appBar.js +15 -13
  391. package/dist/headless/components/navigation/appBar/appBar.js.map +1 -1
  392. package/dist/headless/components/navigation/bottomBar/bottomBar.js +125 -120
  393. package/dist/headless/components/navigation/bottomBar/bottomBar.js.map +1 -1
  394. package/dist/headless/components/navigation/breadcrumbs/breadcrumbs.js +13 -9
  395. package/dist/headless/components/navigation/breadcrumbs/breadcrumbs.js.map +1 -1
  396. package/dist/headless/components/navigation/menu/menu.js.map +1 -1
  397. package/dist/headless/components/navigation/menu/menuComponent.js +12 -23
  398. package/dist/headless/components/navigation/menu/menuComponent.js.map +1 -1
  399. package/dist/headless/components/navigation/menu/menuContext.js.map +1 -1
  400. package/dist/headless/components/navigation/menu/menuFloating.js +54 -46
  401. package/dist/headless/components/navigation/menu/menuFloating.js.map +1 -1
  402. package/dist/headless/components/navigation/menu/menuItem.js +58 -33
  403. package/dist/headless/components/navigation/menu/menuItem.js.map +1 -1
  404. package/dist/headless/components/navigation/menu/menuList.js +34 -16
  405. package/dist/headless/components/navigation/menu/menuList.js.map +1 -1
  406. package/dist/headless/components/navigation/menu/menuSubmenu.js +58 -38
  407. package/dist/headless/components/navigation/menu/menuSubmenu.js.map +1 -1
  408. package/dist/headless/components/navigation/pagination/pagination.js +23 -19
  409. package/dist/headless/components/navigation/pagination/pagination.js.map +1 -1
  410. package/dist/headless/components/navigation/sidebar/sidebar.js +14 -12
  411. package/dist/headless/components/navigation/sidebar/sidebar.js.map +1 -1
  412. package/dist/headless/components/navigation/stepper/stepper.js +38 -34
  413. package/dist/headless/components/navigation/stepper/stepper.js.map +1 -1
  414. package/dist/headless/components/navigation/tabs/tab/tab.js +48 -37
  415. package/dist/headless/components/navigation/tabs/tab/tab.js.map +1 -1
  416. package/dist/headless/components/navigation/tabs/tabs.js +91 -76
  417. package/dist/headless/components/navigation/tabs/tabs.js.map +1 -1
  418. package/dist/headless/components/navigation/tabs/tabsContext.js.map +1 -1
  419. package/dist/headless/index.js +224 -220
  420. package/dist/headless/index.js.map +1 -1
  421. package/dist/headless/primitives/createDismissOnEscape.js +14 -0
  422. package/dist/headless/primitives/createDismissOnEscape.js.map +1 -0
  423. package/dist/headless/primitives/createFocusTrap.js +1 -0
  424. package/dist/headless/primitives/createFocusTrap.js.map +1 -1
  425. package/dist/headless/primitives/createHelperText.js +14 -0
  426. package/dist/headless/primitives/createHelperText.js.map +1 -0
  427. package/dist/headless/primitives/mergeStyle.js +9 -0
  428. package/dist/headless/primitives/mergeStyle.js.map +1 -0
  429. package/dist/headless/primitives/overlayLayer.js +14 -7
  430. package/dist/headless/primitives/overlayLayer.js.map +1 -1
  431. package/dist/headless/source/components/base/animateHeight/animateHeight.jsx +7 -11
  432. package/dist/headless/source/components/base/animateHeight/animateHeight.jsx.map +1 -1
  433. package/dist/headless/source/components/base/icon/icon.jsx +10 -12
  434. package/dist/headless/source/components/base/icon/icon.jsx.map +1 -1
  435. package/dist/headless/source/components/base/ripple/ripple.jsx +16 -4
  436. package/dist/headless/source/components/base/ripple/ripple.jsx.map +1 -1
  437. package/dist/headless/source/components/dataDisplay/avatar/avatar.jsx +14 -7
  438. package/dist/headless/source/components/dataDisplay/avatar/avatar.jsx.map +1 -1
  439. package/dist/headless/source/components/dataDisplay/card/card.jsx +31 -12
  440. package/dist/headless/source/components/dataDisplay/card/card.jsx.map +1 -1
  441. package/dist/headless/source/components/dataDisplay/carousel/carousel.jsx +9 -3
  442. package/dist/headless/source/components/dataDisplay/carousel/carousel.jsx.map +1 -1
  443. package/dist/headless/source/components/dataDisplay/chart/chart.jsx +5 -4
  444. package/dist/headless/source/components/dataDisplay/chart/chart.jsx.map +1 -1
  445. package/dist/headless/source/components/dataDisplay/chat/chatIconButton.jsx +13 -3
  446. package/dist/headless/source/components/dataDisplay/chat/chatIconButton.jsx.map +1 -1
  447. package/dist/headless/source/components/dataDisplay/chat/chatLayout.jsx +6 -7
  448. package/dist/headless/source/components/dataDisplay/chat/chatLayout.jsx.map +1 -1
  449. package/dist/headless/source/components/dataDisplay/chat/chatOverlayLayout.jsx +5 -6
  450. package/dist/headless/source/components/dataDisplay/chat/chatOverlayLayout.jsx.map +1 -1
  451. package/dist/headless/source/components/dataDisplay/chip/chip.jsx +55 -19
  452. package/dist/headless/source/components/dataDisplay/chip/chip.jsx.map +1 -1
  453. package/dist/headless/source/components/dataDisplay/chipGroup/chipGroup.jsx +14 -11
  454. package/dist/headless/source/components/dataDisplay/chipGroup/chipGroup.jsx.map +1 -1
  455. package/dist/headless/source/components/dataDisplay/dagView/dagLayout.js +383 -0
  456. package/dist/headless/source/components/dataDisplay/dagView/dagLayout.js.map +7 -0
  457. package/dist/headless/source/components/dataDisplay/dagView/dagView.jsx +639 -0
  458. package/dist/headless/source/components/dataDisplay/dagView/dagView.jsx.map +1 -0
  459. package/dist/headless/source/components/dataDisplay/dagView/index.js +10 -0
  460. package/dist/headless/source/components/dataDisplay/dagView/index.js.map +7 -0
  461. package/dist/headless/source/components/dataDisplay/dagView/panZoom.js +247 -0
  462. package/dist/headless/source/components/dataDisplay/dagView/panZoom.js.map +7 -0
  463. package/dist/headless/source/components/dataDisplay/descriptionList/descriptionList.jsx +4 -6
  464. package/dist/headless/source/components/dataDisplay/descriptionList/descriptionList.jsx.map +1 -1
  465. package/dist/headless/source/components/dataDisplay/expansionPanel/expansionPanel.jsx +83 -9
  466. package/dist/headless/source/components/dataDisplay/expansionPanel/expansionPanel.jsx.map +1 -1
  467. package/dist/headless/source/components/dataDisplay/kanban/kanban.jsx +20 -10
  468. package/dist/headless/source/components/dataDisplay/kanban/kanban.jsx.map +1 -1
  469. package/dist/headless/source/components/dataDisplay/lazyImage/lazyImage.jsx +1 -1
  470. package/dist/headless/source/components/dataDisplay/lazyImage/lazyImage.jsx.map +1 -1
  471. package/dist/headless/source/components/dataDisplay/list/list.jsx +3 -3
  472. package/dist/headless/source/components/dataDisplay/list/list.jsx.map +1 -1
  473. package/dist/headless/source/components/dataDisplay/list/listItem.jsx +11 -10
  474. package/dist/headless/source/components/dataDisplay/list/listItem.jsx.map +1 -1
  475. package/dist/headless/source/components/dataDisplay/meter/meter.jsx +3 -2
  476. package/dist/headless/source/components/dataDisplay/meter/meter.jsx.map +1 -1
  477. package/dist/headless/source/components/dataDisplay/personChip/personChip.jsx +3 -2
  478. package/dist/headless/source/components/dataDisplay/personChip/personChip.jsx.map +1 -1
  479. package/dist/headless/source/components/dataDisplay/stat/stat.jsx +7 -8
  480. package/dist/headless/source/components/dataDisplay/stat/stat.jsx.map +1 -1
  481. package/dist/headless/source/components/dataDisplay/table/table.jsx +18 -1
  482. package/dist/headless/source/components/dataDisplay/table/table.jsx.map +1 -1
  483. package/dist/headless/source/components/dataDisplay/table/tableBody.jsx +6 -1
  484. package/dist/headless/source/components/dataDisplay/table/tableBody.jsx.map +1 -1
  485. package/dist/headless/source/components/dataDisplay/table/tableCell.jsx +13 -4
  486. package/dist/headless/source/components/dataDisplay/table/tableCell.jsx.map +1 -1
  487. package/dist/headless/source/components/dataDisplay/table/tableColumns.jsx +311 -0
  488. package/dist/headless/source/components/dataDisplay/table/tableColumns.jsx.map +1 -0
  489. package/dist/headless/source/components/dataDisplay/table/tableEntities.js +7 -0
  490. package/dist/headless/source/components/dataDisplay/table/tableEntities.js.map +7 -0
  491. package/dist/headless/source/components/dataDisplay/table/tableHead.jsx +14 -1
  492. package/dist/headless/source/components/dataDisplay/table/tableHead.jsx.map +1 -1
  493. package/dist/headless/source/components/dataDisplay/table/tableHeadCell.jsx +51 -33
  494. package/dist/headless/source/components/dataDisplay/table/tableHeadCell.jsx.map +1 -1
  495. package/dist/headless/source/components/dataDisplay/table/tableHtmlText.js +140 -0
  496. package/dist/headless/source/components/dataDisplay/table/tableHtmlText.js.map +7 -0
  497. package/dist/headless/source/components/dataDisplay/table/tableRow.jsx +11 -5
  498. package/dist/headless/source/components/dataDisplay/table/tableRow.jsx.map +1 -1
  499. package/dist/headless/source/components/dataDisplay/thumbCard/thumbCard.jsx +48 -19
  500. package/dist/headless/source/components/dataDisplay/thumbCard/thumbCard.jsx.map +1 -1
  501. package/dist/headless/source/components/dataDisplay/treeView/treeView.jsx +9 -2
  502. package/dist/headless/source/components/dataDisplay/treeView/treeView.jsx.map +1 -1
  503. package/dist/headless/source/components/dataDisplay/typography/typography.jsx +2 -6
  504. package/dist/headless/source/components/dataDisplay/typography/typography.jsx.map +1 -1
  505. package/dist/headless/source/components/feedBack/emptyState/emptyState.jsx +12 -2
  506. package/dist/headless/source/components/feedBack/emptyState/emptyState.jsx.map +1 -1
  507. package/dist/headless/source/components/feedBack/message/message.jsx +5 -4
  508. package/dist/headless/source/components/feedBack/message/message.jsx.map +1 -1
  509. package/dist/headless/source/components/feedBack/modal/modal.jsx +5 -2
  510. package/dist/headless/source/components/feedBack/modal/modal.jsx.map +1 -1
  511. package/dist/headless/source/components/feedBack/skeleton/skeleton.jsx +12 -5
  512. package/dist/headless/source/components/feedBack/skeleton/skeleton.jsx.map +1 -1
  513. package/dist/headless/source/components/feedBack/snackbar/snackbar.jsx +3 -3
  514. package/dist/headless/source/components/feedBack/snackbar/snackbar.jsx.map +1 -1
  515. package/dist/headless/source/components/feedBack/tooltip/tooltip.jsx +52 -5
  516. package/dist/headless/source/components/feedBack/tooltip/tooltip.jsx.map +1 -1
  517. package/dist/headless/source/components/inputs/button/button.jsx +8 -3
  518. package/dist/headless/source/components/inputs/button/button.jsx.map +1 -1
  519. package/dist/headless/source/components/inputs/buttonGroups/buttonGroup.jsx +4 -3
  520. package/dist/headless/source/components/inputs/buttonGroups/buttonGroup.jsx.map +1 -1
  521. package/dist/headless/source/components/inputs/checkbox/checkbox.jsx +27 -4
  522. package/dist/headless/source/components/inputs/checkbox/checkbox.jsx.map +1 -1
  523. package/dist/headless/source/components/inputs/datePicker/datePicker.jsx +13 -0
  524. package/dist/headless/source/components/inputs/datePicker/datePicker.jsx.map +1 -1
  525. package/dist/headless/source/components/inputs/datePicker/datePickerActionLabel.jsx +4 -1
  526. package/dist/headless/source/components/inputs/datePicker/datePickerActionLabel.jsx.map +1 -1
  527. package/dist/headless/source/components/inputs/datePicker/datePickerDay.jsx +12 -12
  528. package/dist/headless/source/components/inputs/datePicker/datePickerDay.jsx.map +1 -1
  529. package/dist/headless/source/components/inputs/datePicker/datePickerIconButton.jsx +13 -3
  530. package/dist/headless/source/components/inputs/datePicker/datePickerIconButton.jsx.map +1 -1
  531. package/dist/headless/source/components/inputs/dateTimePicker/dateTimePicker.jsx +13 -0
  532. package/dist/headless/source/components/inputs/dateTimePicker/dateTimePicker.jsx.map +1 -1
  533. package/dist/headless/source/components/inputs/floatingButton/floatingButton.jsx +12 -1
  534. package/dist/headless/source/components/inputs/floatingButton/floatingButton.jsx.map +1 -1
  535. package/dist/headless/source/components/inputs/radioButton/radioButton.jsx +16 -4
  536. package/dist/headless/source/components/inputs/radioButton/radioButton.jsx.map +1 -1
  537. package/dist/headless/source/components/inputs/rating/rating.jsx +49 -20
  538. package/dist/headless/source/components/inputs/rating/rating.jsx.map +1 -1
  539. package/dist/headless/source/components/inputs/selectField/dropdownMenu.jsx +222 -61
  540. package/dist/headless/source/components/inputs/selectField/dropdownMenu.jsx.map +1 -1
  541. package/dist/headless/source/components/inputs/selectField/optionNavigation.js +51 -0
  542. package/dist/headless/source/components/inputs/selectField/optionNavigation.js.map +7 -0
  543. package/dist/headless/source/components/inputs/selectField/selectField.jsx +318 -92
  544. package/dist/headless/source/components/inputs/selectField/selectField.jsx.map +1 -1
  545. package/dist/headless/source/components/inputs/slider/slider.jsx +89 -18
  546. package/dist/headless/source/components/inputs/slider/slider.jsx.map +1 -1
  547. package/dist/headless/source/components/inputs/textField/textField.jsx +47 -9
  548. package/dist/headless/source/components/inputs/textField/textField.jsx.map +1 -1
  549. package/dist/headless/source/components/inputs/textField/textFieldWrapper.jsx +20 -6
  550. package/dist/headless/source/components/inputs/textField/textFieldWrapper.jsx.map +1 -1
  551. package/dist/headless/source/components/inputs/timePicker/timePicker.jsx +13 -0
  552. package/dist/headless/source/components/inputs/timePicker/timePicker.jsx.map +1 -1
  553. package/dist/headless/source/components/inputs/toggle/toggle.jsx +14 -2
  554. package/dist/headless/source/components/inputs/toggle/toggle.jsx.map +1 -1
  555. package/dist/headless/source/components/inputs/valueSlider/valueSlider.jsx +7 -2
  556. package/dist/headless/source/components/inputs/valueSlider/valueSlider.jsx.map +1 -1
  557. package/dist/headless/source/components/layout/appLayout/appLayout.jsx +8 -6
  558. package/dist/headless/source/components/layout/appLayout/appLayout.jsx.map +1 -1
  559. package/dist/headless/source/components/layout/divider/divider.jsx +6 -5
  560. package/dist/headless/source/components/layout/divider/divider.jsx.map +1 -1
  561. package/dist/headless/source/components/layout/floatingWindow/floatingWindow.jsx +17 -11
  562. package/dist/headless/source/components/layout/floatingWindow/floatingWindow.jsx.map +1 -1
  563. package/dist/headless/source/components/layout/grid/grid.jsx +20 -8
  564. package/dist/headless/source/components/layout/grid/grid.jsx.map +1 -1
  565. package/dist/headless/source/components/layout/page/page.jsx +10 -2
  566. package/dist/headless/source/components/layout/page/page.jsx.map +1 -1
  567. package/dist/headless/source/components/layout/pageHeader/pageHeader.jsx +3 -2
  568. package/dist/headless/source/components/layout/pageHeader/pageHeader.jsx.map +1 -1
  569. package/dist/headless/source/components/layout/sectionHeader/sectionHeader.jsx +5 -5
  570. package/dist/headless/source/components/layout/sectionHeader/sectionHeader.jsx.map +1 -1
  571. package/dist/headless/source/components/layout/sheet/sheet.jsx +6 -8
  572. package/dist/headless/source/components/layout/sheet/sheet.jsx.map +1 -1
  573. package/dist/headless/source/components/layout/stack/stack.jsx +15 -11
  574. package/dist/headless/source/components/layout/stack/stack.jsx.map +1 -1
  575. package/dist/headless/source/components/navigation/appBar/appBar.jsx +3 -2
  576. package/dist/headless/source/components/navigation/appBar/appBar.jsx.map +1 -1
  577. package/dist/headless/source/components/navigation/bottomBar/bottomBar.jsx +48 -40
  578. package/dist/headless/source/components/navigation/bottomBar/bottomBar.jsx.map +1 -1
  579. package/dist/headless/source/components/navigation/breadcrumbs/breadcrumbs.jsx +9 -2
  580. package/dist/headless/source/components/navigation/breadcrumbs/breadcrumbs.jsx.map +1 -1
  581. package/dist/headless/source/components/navigation/menu/menu.jsx.map +1 -1
  582. package/dist/headless/source/components/navigation/menu/menuComponent.jsx +3 -4
  583. package/dist/headless/source/components/navigation/menu/menuComponent.jsx.map +1 -1
  584. package/dist/headless/source/components/navigation/menu/menuContext.js.map +2 -2
  585. package/dist/headless/source/components/navigation/menu/menuFloating.jsx +26 -4
  586. package/dist/headless/source/components/navigation/menu/menuFloating.jsx.map +1 -1
  587. package/dist/headless/source/components/navigation/menu/menuItem.jsx +22 -2
  588. package/dist/headless/source/components/navigation/menu/menuItem.jsx.map +1 -1
  589. package/dist/headless/source/components/navigation/menu/menuList.jsx +19 -7
  590. package/dist/headless/source/components/navigation/menu/menuList.jsx.map +1 -1
  591. package/dist/headless/source/components/navigation/menu/menuSubmenu.jsx +36 -4
  592. package/dist/headless/source/components/navigation/menu/menuSubmenu.jsx.map +1 -1
  593. package/dist/headless/source/components/navigation/pagination/pagination.jsx +4 -3
  594. package/dist/headless/source/components/navigation/pagination/pagination.jsx.map +1 -1
  595. package/dist/headless/source/components/navigation/sidebar/sidebar.jsx +1 -1
  596. package/dist/headless/source/components/navigation/sidebar/sidebar.jsx.map +1 -1
  597. package/dist/headless/source/components/navigation/stepper/stepper.jsx +14 -9
  598. package/dist/headless/source/components/navigation/stepper/stepper.jsx.map +1 -1
  599. package/dist/headless/source/components/navigation/tabs/tab/tab.jsx +12 -16
  600. package/dist/headless/source/components/navigation/tabs/tab/tab.jsx.map +1 -1
  601. package/dist/headless/source/components/navigation/tabs/tabs.jsx +34 -10
  602. package/dist/headless/source/components/navigation/tabs/tabs.jsx.map +1 -1
  603. package/dist/headless/source/components/navigation/tabs/tabsContext.js.map +2 -2
  604. package/dist/headless/source/connects/rt/table/table.jsx +7 -2
  605. package/dist/headless/source/connects/rt/table/table.jsx.map +1 -1
  606. package/dist/headless/source/index.js +3 -0
  607. package/dist/headless/source/index.js.map +2 -2
  608. package/dist/headless/source/primitives/createDismissOnEscape.js +17 -0
  609. package/dist/headless/source/primitives/createDismissOnEscape.js.map +7 -0
  610. package/dist/headless/source/primitives/createFocusTrap.js +1 -0
  611. package/dist/headless/source/primitives/createFocusTrap.js.map +2 -2
  612. package/dist/headless/source/primitives/createHelperText.js +16 -0
  613. package/dist/headless/source/primitives/createHelperText.js.map +7 -0
  614. package/dist/headless/source/primitives/mergeStyle.js +15 -0
  615. package/dist/headless/source/primitives/mergeStyle.js.map +7 -0
  616. package/dist/headless/source/primitives/overlayLayer.js +10 -2
  617. package/dist/headless/source/primitives/overlayLayer.js.map +2 -2
  618. package/dist/headless/source/utils/controlProps.js +22 -0
  619. package/dist/headless/source/utils/controlProps.js.map +7 -0
  620. package/dist/headless/source/utils/ownClick.js +41 -0
  621. package/dist/headless/source/utils/ownClick.js.map +7 -0
  622. package/dist/headless/utils/controlProps.js +20 -0
  623. package/dist/headless/utils/controlProps.js.map +1 -0
  624. package/dist/headless/utils/ownClick.js +39 -0
  625. package/dist/headless/utils/ownClick.js.map +1 -0
  626. package/dist/index.d.ts +2 -0
  627. package/dist/index.js +224 -220
  628. package/dist/index.js.map +1 -1
  629. package/dist/primitives/createDismissOnEscape.d.ts +12 -0
  630. package/dist/primitives/createDismissOnEscape.js +14 -0
  631. package/dist/primitives/createDismissOnEscape.js.map +1 -0
  632. package/dist/primitives/createFocusTrap.d.ts +2 -0
  633. package/dist/primitives/createFocusTrap.js +1 -0
  634. package/dist/primitives/createFocusTrap.js.map +1 -1
  635. package/dist/primitives/createHelperText.d.ts +26 -0
  636. package/dist/primitives/createHelperText.js +14 -0
  637. package/dist/primitives/createHelperText.js.map +1 -0
  638. package/dist/primitives/mergeStyle.d.ts +19 -0
  639. package/dist/primitives/mergeStyle.js +9 -0
  640. package/dist/primitives/mergeStyle.js.map +1 -0
  641. package/dist/primitives/overlayLayer.d.ts +15 -3
  642. package/dist/primitives/overlayLayer.js +14 -7
  643. package/dist/primitives/overlayLayer.js.map +1 -1
  644. package/dist/source/components/base/animateHeight/animateHeight.jsx +7 -11
  645. package/dist/source/components/base/animateHeight/animateHeight.jsx.map +1 -1
  646. package/dist/source/components/base/icon/icon.jsx +10 -12
  647. package/dist/source/components/base/icon/icon.jsx.map +1 -1
  648. package/dist/source/components/base/ripple/ripple.jsx +16 -4
  649. package/dist/source/components/base/ripple/ripple.jsx.map +1 -1
  650. package/dist/source/components/dataDisplay/avatar/avatar.jsx +14 -7
  651. package/dist/source/components/dataDisplay/avatar/avatar.jsx.map +1 -1
  652. package/dist/source/components/dataDisplay/card/card.jsx +31 -12
  653. package/dist/source/components/dataDisplay/card/card.jsx.map +1 -1
  654. package/dist/source/components/dataDisplay/carousel/carousel.jsx +9 -3
  655. package/dist/source/components/dataDisplay/carousel/carousel.jsx.map +1 -1
  656. package/dist/source/components/dataDisplay/chart/chart.jsx +5 -4
  657. package/dist/source/components/dataDisplay/chart/chart.jsx.map +1 -1
  658. package/dist/source/components/dataDisplay/chat/chatIconButton.jsx +13 -3
  659. package/dist/source/components/dataDisplay/chat/chatIconButton.jsx.map +1 -1
  660. package/dist/source/components/dataDisplay/chat/chatLayout.jsx +6 -7
  661. package/dist/source/components/dataDisplay/chat/chatLayout.jsx.map +1 -1
  662. package/dist/source/components/dataDisplay/chat/chatOverlayLayout.jsx +5 -6
  663. package/dist/source/components/dataDisplay/chat/chatOverlayLayout.jsx.map +1 -1
  664. package/dist/source/components/dataDisplay/chip/chip.jsx +55 -19
  665. package/dist/source/components/dataDisplay/chip/chip.jsx.map +1 -1
  666. package/dist/source/components/dataDisplay/chipGroup/chipGroup.jsx +14 -11
  667. package/dist/source/components/dataDisplay/chipGroup/chipGroup.jsx.map +1 -1
  668. package/dist/source/components/dataDisplay/dagView/dagLayout.js +383 -0
  669. package/dist/source/components/dataDisplay/dagView/dagLayout.js.map +7 -0
  670. package/dist/source/components/dataDisplay/dagView/dagView.jsx +641 -0
  671. package/dist/source/components/dataDisplay/dagView/dagView.jsx.map +1 -0
  672. package/dist/source/components/dataDisplay/dagView/index.js +10 -0
  673. package/dist/source/components/dataDisplay/dagView/index.js.map +7 -0
  674. package/dist/source/components/dataDisplay/dagView/panZoom.js +247 -0
  675. package/dist/source/components/dataDisplay/dagView/panZoom.js.map +7 -0
  676. package/dist/source/components/dataDisplay/descriptionList/descriptionList.jsx +4 -6
  677. package/dist/source/components/dataDisplay/descriptionList/descriptionList.jsx.map +1 -1
  678. package/dist/source/components/dataDisplay/expansionPanel/expansionPanel.jsx +83 -9
  679. package/dist/source/components/dataDisplay/expansionPanel/expansionPanel.jsx.map +1 -1
  680. package/dist/source/components/dataDisplay/kanban/kanban.jsx +20 -10
  681. package/dist/source/components/dataDisplay/kanban/kanban.jsx.map +1 -1
  682. package/dist/source/components/dataDisplay/lazyImage/lazyImage.jsx +1 -1
  683. package/dist/source/components/dataDisplay/lazyImage/lazyImage.jsx.map +1 -1
  684. package/dist/source/components/dataDisplay/list/list.jsx +3 -3
  685. package/dist/source/components/dataDisplay/list/list.jsx.map +1 -1
  686. package/dist/source/components/dataDisplay/list/listItem.jsx +11 -10
  687. package/dist/source/components/dataDisplay/list/listItem.jsx.map +1 -1
  688. package/dist/source/components/dataDisplay/meter/meter.jsx +3 -2
  689. package/dist/source/components/dataDisplay/meter/meter.jsx.map +1 -1
  690. package/dist/source/components/dataDisplay/personChip/personChip.jsx +3 -2
  691. package/dist/source/components/dataDisplay/personChip/personChip.jsx.map +1 -1
  692. package/dist/source/components/dataDisplay/stat/stat.jsx +7 -8
  693. package/dist/source/components/dataDisplay/stat/stat.jsx.map +1 -1
  694. package/dist/source/components/dataDisplay/table/table.jsx +18 -1
  695. package/dist/source/components/dataDisplay/table/table.jsx.map +1 -1
  696. package/dist/source/components/dataDisplay/table/tableBody.jsx +6 -1
  697. package/dist/source/components/dataDisplay/table/tableBody.jsx.map +1 -1
  698. package/dist/source/components/dataDisplay/table/tableCell.jsx +13 -4
  699. package/dist/source/components/dataDisplay/table/tableCell.jsx.map +1 -1
  700. package/dist/source/components/dataDisplay/table/tableColumns.jsx +311 -0
  701. package/dist/source/components/dataDisplay/table/tableColumns.jsx.map +1 -0
  702. package/dist/source/components/dataDisplay/table/tableEntities.js +7 -0
  703. package/dist/source/components/dataDisplay/table/tableEntities.js.map +7 -0
  704. package/dist/source/components/dataDisplay/table/tableHead.jsx +14 -1
  705. package/dist/source/components/dataDisplay/table/tableHead.jsx.map +1 -1
  706. package/dist/source/components/dataDisplay/table/tableHeadCell.jsx +51 -33
  707. package/dist/source/components/dataDisplay/table/tableHeadCell.jsx.map +1 -1
  708. package/dist/source/components/dataDisplay/table/tableHtmlText.js +140 -0
  709. package/dist/source/components/dataDisplay/table/tableHtmlText.js.map +7 -0
  710. package/dist/source/components/dataDisplay/table/tableRow.jsx +11 -5
  711. package/dist/source/components/dataDisplay/table/tableRow.jsx.map +1 -1
  712. package/dist/source/components/dataDisplay/thumbCard/thumbCard.jsx +48 -19
  713. package/dist/source/components/dataDisplay/thumbCard/thumbCard.jsx.map +1 -1
  714. package/dist/source/components/dataDisplay/treeView/treeView.jsx +9 -2
  715. package/dist/source/components/dataDisplay/treeView/treeView.jsx.map +1 -1
  716. package/dist/source/components/dataDisplay/typography/typography.jsx +2 -6
  717. package/dist/source/components/dataDisplay/typography/typography.jsx.map +1 -1
  718. package/dist/source/components/feedBack/emptyState/emptyState.jsx +12 -2
  719. package/dist/source/components/feedBack/emptyState/emptyState.jsx.map +1 -1
  720. package/dist/source/components/feedBack/message/message.jsx +5 -4
  721. package/dist/source/components/feedBack/message/message.jsx.map +1 -1
  722. package/dist/source/components/feedBack/modal/modal.jsx +5 -2
  723. package/dist/source/components/feedBack/modal/modal.jsx.map +1 -1
  724. package/dist/source/components/feedBack/skeleton/skeleton.jsx +12 -5
  725. package/dist/source/components/feedBack/skeleton/skeleton.jsx.map +1 -1
  726. package/dist/source/components/feedBack/snackbar/snackbar.jsx +3 -3
  727. package/dist/source/components/feedBack/snackbar/snackbar.jsx.map +1 -1
  728. package/dist/source/components/feedBack/tooltip/tooltip.jsx +52 -5
  729. package/dist/source/components/feedBack/tooltip/tooltip.jsx.map +1 -1
  730. package/dist/source/components/inputs/button/button.jsx +8 -3
  731. package/dist/source/components/inputs/button/button.jsx.map +1 -1
  732. package/dist/source/components/inputs/buttonGroups/buttonGroup.jsx +4 -3
  733. package/dist/source/components/inputs/buttonGroups/buttonGroup.jsx.map +1 -1
  734. package/dist/source/components/inputs/checkbox/checkbox.jsx +27 -4
  735. package/dist/source/components/inputs/checkbox/checkbox.jsx.map +1 -1
  736. package/dist/source/components/inputs/datePicker/datePicker.jsx +13 -0
  737. package/dist/source/components/inputs/datePicker/datePicker.jsx.map +1 -1
  738. package/dist/source/components/inputs/datePicker/datePickerActionLabel.jsx +4 -1
  739. package/dist/source/components/inputs/datePicker/datePickerActionLabel.jsx.map +1 -1
  740. package/dist/source/components/inputs/datePicker/datePickerDay.jsx +12 -12
  741. package/dist/source/components/inputs/datePicker/datePickerDay.jsx.map +1 -1
  742. package/dist/source/components/inputs/datePicker/datePickerIconButton.jsx +13 -3
  743. package/dist/source/components/inputs/datePicker/datePickerIconButton.jsx.map +1 -1
  744. package/dist/source/components/inputs/dateTimePicker/dateTimePicker.jsx +13 -0
  745. package/dist/source/components/inputs/dateTimePicker/dateTimePicker.jsx.map +1 -1
  746. package/dist/source/components/inputs/floatingButton/floatingButton.jsx +12 -1
  747. package/dist/source/components/inputs/floatingButton/floatingButton.jsx.map +1 -1
  748. package/dist/source/components/inputs/radioButton/radioButton.jsx +16 -4
  749. package/dist/source/components/inputs/radioButton/radioButton.jsx.map +1 -1
  750. package/dist/source/components/inputs/rating/rating.jsx +49 -20
  751. package/dist/source/components/inputs/rating/rating.jsx.map +1 -1
  752. package/dist/source/components/inputs/selectField/dropdownMenu.jsx +222 -61
  753. package/dist/source/components/inputs/selectField/dropdownMenu.jsx.map +1 -1
  754. package/dist/source/components/inputs/selectField/optionNavigation.js +51 -0
  755. package/dist/source/components/inputs/selectField/optionNavigation.js.map +7 -0
  756. package/dist/source/components/inputs/selectField/selectField.jsx +318 -92
  757. package/dist/source/components/inputs/selectField/selectField.jsx.map +1 -1
  758. package/dist/source/components/inputs/slider/slider.jsx +89 -18
  759. package/dist/source/components/inputs/slider/slider.jsx.map +1 -1
  760. package/dist/source/components/inputs/textField/textField.jsx +47 -9
  761. package/dist/source/components/inputs/textField/textField.jsx.map +1 -1
  762. package/dist/source/components/inputs/textField/textFieldWrapper.jsx +20 -6
  763. package/dist/source/components/inputs/textField/textFieldWrapper.jsx.map +1 -1
  764. package/dist/source/components/inputs/timePicker/timePicker.jsx +13 -0
  765. package/dist/source/components/inputs/timePicker/timePicker.jsx.map +1 -1
  766. package/dist/source/components/inputs/toggle/toggle.jsx +14 -2
  767. package/dist/source/components/inputs/toggle/toggle.jsx.map +1 -1
  768. package/dist/source/components/inputs/valueSlider/valueSlider.jsx +7 -2
  769. package/dist/source/components/inputs/valueSlider/valueSlider.jsx.map +1 -1
  770. package/dist/source/components/layout/appLayout/appLayout.jsx +8 -6
  771. package/dist/source/components/layout/appLayout/appLayout.jsx.map +1 -1
  772. package/dist/source/components/layout/divider/divider.jsx +6 -5
  773. package/dist/source/components/layout/divider/divider.jsx.map +1 -1
  774. package/dist/source/components/layout/floatingWindow/floatingWindow.jsx +17 -11
  775. package/dist/source/components/layout/floatingWindow/floatingWindow.jsx.map +1 -1
  776. package/dist/source/components/layout/grid/grid.jsx +20 -8
  777. package/dist/source/components/layout/grid/grid.jsx.map +1 -1
  778. package/dist/source/components/layout/page/page.jsx +10 -2
  779. package/dist/source/components/layout/page/page.jsx.map +1 -1
  780. package/dist/source/components/layout/pageHeader/pageHeader.jsx +3 -2
  781. package/dist/source/components/layout/pageHeader/pageHeader.jsx.map +1 -1
  782. package/dist/source/components/layout/sectionHeader/sectionHeader.jsx +5 -5
  783. package/dist/source/components/layout/sectionHeader/sectionHeader.jsx.map +1 -1
  784. package/dist/source/components/layout/sheet/sheet.jsx +6 -8
  785. package/dist/source/components/layout/sheet/sheet.jsx.map +1 -1
  786. package/dist/source/components/layout/stack/stack.jsx +15 -11
  787. package/dist/source/components/layout/stack/stack.jsx.map +1 -1
  788. package/dist/source/components/navigation/appBar/appBar.jsx +3 -2
  789. package/dist/source/components/navigation/appBar/appBar.jsx.map +1 -1
  790. package/dist/source/components/navigation/bottomBar/bottomBar.jsx +48 -40
  791. package/dist/source/components/navigation/bottomBar/bottomBar.jsx.map +1 -1
  792. package/dist/source/components/navigation/breadcrumbs/breadcrumbs.jsx +9 -2
  793. package/dist/source/components/navigation/breadcrumbs/breadcrumbs.jsx.map +1 -1
  794. package/dist/source/components/navigation/menu/menu.jsx.map +1 -1
  795. package/dist/source/components/navigation/menu/menuComponent.jsx +3 -4
  796. package/dist/source/components/navigation/menu/menuComponent.jsx.map +1 -1
  797. package/dist/source/components/navigation/menu/menuContext.js.map +2 -2
  798. package/dist/source/components/navigation/menu/menuFloating.jsx +26 -4
  799. package/dist/source/components/navigation/menu/menuFloating.jsx.map +1 -1
  800. package/dist/source/components/navigation/menu/menuItem.jsx +22 -2
  801. package/dist/source/components/navigation/menu/menuItem.jsx.map +1 -1
  802. package/dist/source/components/navigation/menu/menuList.jsx +19 -7
  803. package/dist/source/components/navigation/menu/menuList.jsx.map +1 -1
  804. package/dist/source/components/navigation/menu/menuSubmenu.jsx +36 -4
  805. package/dist/source/components/navigation/menu/menuSubmenu.jsx.map +1 -1
  806. package/dist/source/components/navigation/pagination/pagination.jsx +4 -3
  807. package/dist/source/components/navigation/pagination/pagination.jsx.map +1 -1
  808. package/dist/source/components/navigation/sidebar/sidebar.jsx +1 -1
  809. package/dist/source/components/navigation/sidebar/sidebar.jsx.map +1 -1
  810. package/dist/source/components/navigation/stepper/stepper.jsx +14 -9
  811. package/dist/source/components/navigation/stepper/stepper.jsx.map +1 -1
  812. package/dist/source/components/navigation/tabs/tab/tab.jsx +12 -16
  813. package/dist/source/components/navigation/tabs/tab/tab.jsx.map +1 -1
  814. package/dist/source/components/navigation/tabs/tabs.jsx +34 -10
  815. package/dist/source/components/navigation/tabs/tabs.jsx.map +1 -1
  816. package/dist/source/components/navigation/tabs/tabsContext.js.map +2 -2
  817. package/dist/source/connects/rt/table/table.jsx +7 -2
  818. package/dist/source/connects/rt/table/table.jsx.map +1 -1
  819. package/dist/source/index.js +3 -0
  820. package/dist/source/index.js.map +2 -2
  821. package/dist/source/primitives/createDismissOnEscape.js +17 -0
  822. package/dist/source/primitives/createDismissOnEscape.js.map +7 -0
  823. package/dist/source/primitives/createFocusTrap.js +1 -0
  824. package/dist/source/primitives/createFocusTrap.js.map +2 -2
  825. package/dist/source/primitives/createHelperText.js +16 -0
  826. package/dist/source/primitives/createHelperText.js.map +7 -0
  827. package/dist/source/primitives/mergeStyle.js +15 -0
  828. package/dist/source/primitives/mergeStyle.js.map +7 -0
  829. package/dist/source/primitives/overlayLayer.js +10 -2
  830. package/dist/source/primitives/overlayLayer.js.map +2 -2
  831. package/dist/source/utils/controlProps.js +22 -0
  832. package/dist/source/utils/controlProps.js.map +7 -0
  833. package/dist/source/utils/ownClick.js +41 -0
  834. package/dist/source/utils/ownClick.js.map +7 -0
  835. package/dist/utils/controlProps.d.ts +17 -0
  836. package/dist/utils/controlProps.js +20 -0
  837. package/dist/utils/controlProps.js.map +1 -0
  838. package/dist/utils/ownClick.d.ts +16 -0
  839. package/dist/utils/ownClick.js +39 -0
  840. package/dist/utils/ownClick.js.map +1 -0
  841. package/package.json +9 -3
@@ -0,0 +1,75 @@
1
+ /** What the world is moved and scaled by: `translate(x, y) scale(zoom)`, origin top left. */
2
+ export interface Viewport {
3
+ x: number;
4
+ y: number;
5
+ zoom: number;
6
+ }
7
+ export interface Point {
8
+ x: number;
9
+ y: number;
10
+ }
11
+ export interface Bounds {
12
+ x: number;
13
+ y: number;
14
+ width: number;
15
+ height: number;
16
+ }
17
+ export declare const clamp: (value: number, min: number, max: number) => number;
18
+ /** The viewport scaled by `factor` (clamped to min…max), keeping the world point under `point` in place. */
19
+ export declare function zoomAt(viewport: Viewport, point: Point, factor: number, min: number, max: number): Viewport;
20
+ /** The viewport that shows `bounds` (world units) whole and centred in a box of `size`, `padding` from its edges. */
21
+ export declare function fitBounds(bounds: Bounds, size: {
22
+ width: number;
23
+ height: number;
24
+ }, padding: number, min: number, max: number): Viewport;
25
+ /** The viewport, at its zoom, that puts the world point `point` in the middle of a box of `size`. */
26
+ export declare function centerOn(viewport: Viewport, point: Point, size: {
27
+ width: number;
28
+ height: number;
29
+ }): Viewport;
30
+ /** Whether the world rectangle lies inside the box of `size` at `viewport`, `margin` from its edges. */
31
+ export declare function isVisible(viewport: Viewport, rect: Bounds, size: {
32
+ width: number;
33
+ height: number;
34
+ }, margin?: number): boolean;
35
+ /** The zoom factor for a wheel turn: lines and pages count as many pixels, a pinch (ctrl) zooms faster. */
36
+ export declare function wheelZoomFactor(deltaY: number, deltaMode: number, pinch: boolean): number;
37
+ /** Rounded translation, so text is not blurred at rest by subpixel offsets. */
38
+ export declare const viewportTransform: (viewport: Viewport) => string;
39
+ export declare const sameViewport: (a: Viewport, b: Viewport) => boolean;
40
+ /**
41
+ * Coalesces writes to one per animation frame: `schedule` keeps the latest
42
+ * value, and `write` gets it on the next frame. `pending()` is that latest value
43
+ * until it is written, so a gesture builds on what it asked for, not on what was
44
+ * drawn last.
45
+ */
46
+ export declare function createFrameWriter<T>(write: (value: T) => void, frame?: {
47
+ request: (callback: () => void) => number;
48
+ cancel: (id: number) => void;
49
+ }): {
50
+ schedule(value: T): void;
51
+ pending(): T | undefined;
52
+ flush(): void;
53
+ cancel(): void;
54
+ };
55
+ export type WheelMode = "zoom" | "pan" | "none";
56
+ export interface PanZoomOptions {
57
+ /** The viewport as drawn now. */
58
+ viewport: () => Viewport;
59
+ /** Gets the new viewport, at most once per frame. */
60
+ write: (viewport: Viewport) => void;
61
+ minZoom: () => number;
62
+ maxZoom: () => number;
63
+ /** Plain wheel: zoom (default), pan, or leave it to the page. Ctrl+wheel (a trackpad pinch) always zooms. */
64
+ wheel: () => WheelMode;
65
+ /** True while a drag or pinch is under way. */
66
+ onInteracting?: (interacting: boolean) => void;
67
+ /** Pixels a press moves before it pans rather than clicks; 3 by default. */
68
+ threshold?: number;
69
+ }
70
+ /**
71
+ * Pan and zoom on `el`: drag with a mouse or one finger, pinch with two, wheel,
72
+ * and a Safari trackpad pinch. A drag that moved past the threshold swallows
73
+ * the click that follows it. Returns the function that removes it all.
74
+ */
75
+ export declare function createPanZoom(el: HTMLElement, options: PanZoomOptions): () => void;
@@ -0,0 +1,161 @@
1
+ const I = (e, n, o) => Math.min(o, Math.max(n, e));
2
+ function M(e, n, o, r, c) {
3
+ const a = I(e.zoom * o, r, c), l = a / e.zoom;
4
+ return { x: n.x - (n.x - e.x) * l, y: n.y - (n.y - e.y) * l, zoom: a };
5
+ }
6
+ function $(e, n, o, r, c) {
7
+ const a = { width: Math.max(1, n.width - o * 2), height: Math.max(1, n.height - o * 2) }, l = Math.min(a.width / Math.max(1, e.width), a.height / Math.max(1, e.height)), s = I(l, r, c);
8
+ return {
9
+ x: (n.width - e.width * s) / 2 - e.x * s,
10
+ y: (n.height - e.height * s) / 2 - e.y * s,
11
+ zoom: s
12
+ };
13
+ }
14
+ function S(e, n, o) {
15
+ return {
16
+ x: o.width / 2 - n.x * e.zoom,
17
+ y: o.height / 2 - n.y * e.zoom,
18
+ zoom: e.zoom
19
+ };
20
+ }
21
+ function W(e, n, o, r = 0) {
22
+ const c = e.x + n.x * e.zoom, a = e.y + n.y * e.zoom;
23
+ return c >= r && a >= r && c + n.width * e.zoom <= o.width - r && a + n.height * e.zoom <= o.height - r;
24
+ }
25
+ function K(e, n, o) {
26
+ const r = n === 1 ? e * 16 : n === 2 ? e * 400 : e, c = I(r, -100, 100) * (o ? 0.01 : 2e-3);
27
+ return Math.exp(-c);
28
+ }
29
+ const N = (e) => `translate(${Math.round(e.x)}px, ${Math.round(e.y)}px) scale(${Math.round(e.zoom * 1e4) / 1e4})`, B = (e, n) => e.x === n.x && e.y === n.y && e.zoom === n.zoom;
30
+ function R(e, n = {
31
+ request: (o) => typeof requestAnimationFrame == "function" ? requestAnimationFrame(o) : window.setTimeout(o, 16),
32
+ cancel: (o) => typeof cancelAnimationFrame == "function" ? cancelAnimationFrame(o) : window.clearTimeout(o)
33
+ }) {
34
+ let o, r;
35
+ const c = () => {
36
+ r !== void 0 && n.cancel(r), r = void 0;
37
+ const a = o;
38
+ o = void 0, a && e(a.current);
39
+ };
40
+ return {
41
+ schedule(a) {
42
+ o = { current: a }, r === void 0 && (r = n.request(() => {
43
+ r = void 0, c();
44
+ }));
45
+ },
46
+ pending: () => o?.current,
47
+ flush: c,
48
+ cancel() {
49
+ r !== void 0 && n.cancel(r), r = void 0, o = void 0;
50
+ }
51
+ };
52
+ }
53
+ const V = "a[href], button, input, select, textarea, label, summary, [contenteditable], [data-dag-no-pan]";
54
+ function O(e, n) {
55
+ const o = n.threshold ?? 3, r = R(n.write), c = () => r.pending() ?? n.viewport(), a = (t) => {
56
+ B(t, c()) || r.schedule(t);
57
+ }, l = (t, i) => {
58
+ const d = e.getBoundingClientRect();
59
+ return { x: t - d.left, y: i - d.top };
60
+ }, s = /* @__PURE__ */ new Map(), f = e.ownerDocument;
61
+ let X = !1;
62
+ const v = (t) => {
63
+ t !== X && (X = t, t ? (f.addEventListener("pointermove", A, !0), f.addEventListener("pointerup", E, !0), f.addEventListener("pointercancel", E, !0)) : (f.removeEventListener("pointermove", A, !0), f.removeEventListener("pointerup", E, !0), f.removeEventListener("pointercancel", E, !0)));
64
+ };
65
+ let u, m, p = !1, z = !1, Z = !1;
66
+ const L = (t) => {
67
+ t !== Z && (Z = t, n.onInteracting?.(t));
68
+ }, C = () => {
69
+ const [t, i] = [...s.values()];
70
+ return { distance: Math.hypot(t.x - i.x, t.y - i.y), mid: { x: (t.x + i.x) / 2, y: (t.y + i.y) / 2 } };
71
+ }, D = (t) => {
72
+ if (!(t.button !== 0 && t.pointerType === "mouse" || t.target?.closest?.(V))) {
73
+ if (s.set(t.pointerId, l(t.clientX, t.clientY)), v(!0), s.size === 1)
74
+ u = { point: s.get(t.pointerId), viewport: c(), id: t.pointerId }, p = !1;
75
+ else if (s.size === 2) {
76
+ const { distance: d, mid: x } = C();
77
+ m = { distance: d, mid: x, viewport: c() }, u = void 0;
78
+ for (const h of s.keys()) T(h);
79
+ L(!0);
80
+ }
81
+ }
82
+ }, T = (t) => {
83
+ try {
84
+ e.setPointerCapture?.(t);
85
+ } catch {
86
+ }
87
+ }, A = (t) => {
88
+ if (!s.has(t.pointerId)) return;
89
+ const i = l(t.clientX, t.clientY);
90
+ if (s.set(t.pointerId, i), m && s.size >= 2) {
91
+ const { distance: h, mid: g } = C(), w = M(
92
+ m.viewport,
93
+ m.mid,
94
+ h / Math.max(1, m.distance),
95
+ n.minZoom(),
96
+ n.maxZoom()
97
+ );
98
+ a({ ...w, x: w.x + g.x - m.mid.x, y: w.y + g.y - m.mid.y });
99
+ return;
100
+ }
101
+ if (!u || u.id !== t.pointerId) return;
102
+ const d = i.x - u.point.x, x = i.y - u.point.y;
103
+ if (!p) {
104
+ if (Math.hypot(d, x) < o) return;
105
+ p = !0, T(t.pointerId), L(!0);
106
+ }
107
+ a({ x: u.viewport.x + d, y: u.viewport.y + x, zoom: u.viewport.zoom });
108
+ }, E = (t) => {
109
+ if (s.delete(t.pointerId)) {
110
+ if ((p || m) && (z = !0), s.size < 2 && (m = void 0), s.size === 0)
111
+ v(!1), u = void 0, p = !1, L(!1), r.flush(), setTimeout(() => z = !1, 0);
112
+ else if (s.size === 1) {
113
+ const [[i, d]] = [...s.entries()];
114
+ u = { point: d, viewport: c(), id: i }, p = !0;
115
+ }
116
+ }
117
+ }, F = (t) => {
118
+ z && (z = !1, t.stopPropagation(), t.preventDefault());
119
+ }, P = (t) => {
120
+ const i = t.ctrlKey || t.metaKey, d = n.wheel();
121
+ if (!i && d === "none") return;
122
+ if (t.preventDefault(), !i && d === "pan") {
123
+ const h = c(), g = t.deltaMode === 1 ? 16 : t.deltaMode === 2 ? 400 : 1, w = t.shiftKey && !t.deltaX ? t.deltaY : t.deltaX, G = t.shiftKey && !t.deltaX ? 0 : t.deltaY;
124
+ a({ x: h.x - w * g, y: h.y - G * g, zoom: h.zoom });
125
+ return;
126
+ }
127
+ const x = K(t.deltaY, t.deltaMode, i);
128
+ a(M(c(), l(t.clientX, t.clientY), x, n.minZoom(), n.maxZoom()));
129
+ };
130
+ let y;
131
+ const k = (t) => {
132
+ t.preventDefault();
133
+ const i = t, d = e.getBoundingClientRect();
134
+ y = {
135
+ viewport: c(),
136
+ point: i.clientX === void 0 ? { x: d.width / 2, y: d.height / 2 } : l(i.clientX, i.clientY ?? 0)
137
+ };
138
+ }, Y = (t) => {
139
+ t.preventDefault();
140
+ const i = t.scale;
141
+ !y || typeof i != "number" || a(M(y.viewport, y.point, i, n.minZoom(), n.maxZoom()));
142
+ }, q = (t) => {
143
+ t.preventDefault(), y = void 0;
144
+ };
145
+ return e.addEventListener("pointerdown", D), e.addEventListener("click", F, !0), e.addEventListener("wheel", P, { passive: !1 }), e.addEventListener("gesturestart", k), e.addEventListener("gesturechange", Y), e.addEventListener("gestureend", q), () => {
146
+ r.cancel(), v(!1), e.removeEventListener("pointerdown", D), e.removeEventListener("click", F, !0), e.removeEventListener("wheel", P), e.removeEventListener("gesturestart", k), e.removeEventListener("gesturechange", Y), e.removeEventListener("gestureend", q);
147
+ };
148
+ }
149
+ export {
150
+ S as centerOn,
151
+ I as clamp,
152
+ R as createFrameWriter,
153
+ O as createPanZoom,
154
+ $ as fitBounds,
155
+ W as isVisible,
156
+ B as sameViewport,
157
+ N as viewportTransform,
158
+ K as wheelZoomFactor,
159
+ M as zoomAt
160
+ };
161
+ //# sourceMappingURL=panZoom.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"panZoom.js","sources":["../../../../src/components/dataDisplay/dagView/panZoom.ts"],"sourcesContent":["// Pan and zoom for a transformed \"world\" inside a viewport element: pure math\n// (unit-tested) and plain DOM glue, with no Solid imports, so a React port can\n// copy the file. The glue reads gestures and hands at most one new viewport per\n// animation frame to `write`.\n\n/** What the world is moved and scaled by: `translate(x, y) scale(zoom)`, origin top left. */\nexport interface Viewport {\n x: number;\n y: number;\n zoom: number;\n}\n\nexport interface Point {\n x: number;\n y: number;\n}\n\nexport interface Bounds {\n x: number;\n y: number;\n width: number;\n height: number;\n}\n\nexport const clamp = (value: number, min: number, max: number): number => Math.min(max, Math.max(min, value));\n\n/** The viewport scaled by `factor` (clamped to min…max), keeping the world point under `point` in place. */\nexport function zoomAt(viewport: Viewport, point: Point, factor: number, min: number, max: number): Viewport {\n const zoom = clamp(viewport.zoom * factor, min, max);\n const k = zoom / viewport.zoom;\n return { x: point.x - (point.x - viewport.x) * k, y: point.y - (point.y - viewport.y) * k, zoom };\n}\n\n/** The viewport that shows `bounds` (world units) whole and centred in a box of `size`, `padding` from its edges. */\nexport function fitBounds(\n bounds: Bounds,\n size: { width: number; height: number },\n padding: number,\n min: number,\n max: number\n): Viewport {\n const room = { width: Math.max(1, size.width - padding * 2), height: Math.max(1, size.height - padding * 2) };\n const fit = Math.min(room.width / Math.max(1, bounds.width), room.height / Math.max(1, bounds.height));\n const zoom = clamp(fit, min, max);\n return {\n x: (size.width - bounds.width * zoom) / 2 - bounds.x * zoom,\n y: (size.height - bounds.height * zoom) / 2 - bounds.y * zoom,\n zoom,\n };\n}\n\n/** The viewport, at its zoom, that puts the world point `point` in the middle of a box of `size`. */\nexport function centerOn(viewport: Viewport, point: Point, size: { width: number; height: number }): Viewport {\n return {\n x: size.width / 2 - point.x * viewport.zoom,\n y: size.height / 2 - point.y * viewport.zoom,\n zoom: viewport.zoom,\n };\n}\n\n/** Whether the world rectangle lies inside the box of `size` at `viewport`, `margin` from its edges. */\nexport function isVisible(\n viewport: Viewport,\n rect: Bounds,\n size: { width: number; height: number },\n margin = 0\n): boolean {\n const left = viewport.x + rect.x * viewport.zoom;\n const top = viewport.y + rect.y * viewport.zoom;\n return (\n left >= margin &&\n top >= margin &&\n left + rect.width * viewport.zoom <= size.width - margin &&\n top + rect.height * viewport.zoom <= size.height - margin\n );\n}\n\n/** The zoom factor for a wheel turn: lines and pages count as many pixels, a pinch (ctrl) zooms faster. */\nexport function wheelZoomFactor(deltaY: number, deltaMode: number, pinch: boolean): number {\n const pixels = deltaMode === 1 ? deltaY * 16 : deltaMode === 2 ? deltaY * 400 : deltaY;\n const step = clamp(pixels, -100, 100) * (pinch ? 0.01 : 0.002);\n return Math.exp(-step);\n}\n\n/** Rounded translation, so text is not blurred at rest by subpixel offsets. */\nexport const viewportTransform = (viewport: Viewport): string =>\n `translate(${Math.round(viewport.x)}px, ${Math.round(viewport.y)}px) scale(${Math.round(viewport.zoom * 10000) / 10000})`;\n\nexport const sameViewport = (a: Viewport, b: Viewport): boolean => a.x === b.x && a.y === b.y && a.zoom === b.zoom;\n\n/**\n * Coalesces writes to one per animation frame: `schedule` keeps the latest\n * value, and `write` gets it on the next frame. `pending()` is that latest value\n * until it is written, so a gesture builds on what it asked for, not on what was\n * drawn last.\n */\nexport function createFrameWriter<T>(\n write: (value: T) => void,\n frame: { request: (callback: () => void) => number; cancel: (id: number) => void } = {\n request: (callback) =>\n typeof requestAnimationFrame === \"function\" ? requestAnimationFrame(callback) : window.setTimeout(callback, 16),\n cancel: (id) => (typeof cancelAnimationFrame === \"function\" ? cancelAnimationFrame(id) : window.clearTimeout(id)),\n }\n): { schedule(value: T): void; pending(): T | undefined; flush(): void; cancel(): void } {\n let value: { current: T } | undefined;\n let id: number | undefined;\n const flush = (): void => {\n if (id !== undefined) frame.cancel(id);\n id = undefined;\n const next = value;\n value = undefined;\n if (next) write(next.current);\n };\n return {\n schedule(next) {\n value = { current: next };\n if (id === undefined)\n id = frame.request(() => {\n id = undefined;\n flush();\n });\n },\n pending: () => value?.current,\n flush,\n cancel() {\n if (id !== undefined) frame.cancel(id);\n id = undefined;\n value = undefined;\n },\n };\n}\n\nexport type WheelMode = \"zoom\" | \"pan\" | \"none\";\n\nexport interface PanZoomOptions {\n /** The viewport as drawn now. */\n viewport: () => Viewport;\n /** Gets the new viewport, at most once per frame. */\n write: (viewport: Viewport) => void;\n minZoom: () => number;\n maxZoom: () => number;\n /** Plain wheel: zoom (default), pan, or leave it to the page. Ctrl+wheel (a trackpad pinch) always zooms. */\n wheel: () => WheelMode;\n /** True while a drag or pinch is under way. */\n onInteracting?: (interacting: boolean) => void;\n /** Pixels a press moves before it pans rather than clicks; 3 by default. */\n threshold?: number;\n}\n\n/** Targets where a press keeps its own meaning and does not pan: controls, links, fields. */\nconst INTERACTIVE = \"a[href], button, input, select, textarea, label, summary, [contenteditable], [data-dag-no-pan]\";\n\n/**\n * Pan and zoom on `el`: drag with a mouse or one finger, pinch with two, wheel,\n * and a Safari trackpad pinch. A drag that moved past the threshold swallows\n * the click that follows it. Returns the function that removes it all.\n */\nexport function createPanZoom(el: HTMLElement, options: PanZoomOptions): () => void {\n const threshold = options.threshold ?? 3;\n const writer = createFrameWriter<Viewport>(options.write);\n const current = (): Viewport => writer.pending() ?? options.viewport();\n const set = (next: Viewport): void => {\n if (!sameViewport(next, current())) writer.schedule(next);\n };\n const local = (clientX: number, clientY: number): Point => {\n const rect = el.getBoundingClientRect();\n return { x: clientX - rect.left, y: clientY - rect.top };\n };\n\n const pointers = new Map<number, Point>();\n // While a press is held, its moves and release are read on the document: a\n // quick drag can leave the box before the threshold, when the pointer is\n // captured, and the box would see nothing more of it. A captured pointer's\n // events still reach the document, through the box.\n const doc = el.ownerDocument;\n let following = false;\n const follow = (on: boolean): void => {\n if (on === following) return;\n following = on;\n if (on) {\n doc.addEventListener(\"pointermove\", onPointerMove, true);\n doc.addEventListener(\"pointerup\", onPointerUp, true);\n doc.addEventListener(\"pointercancel\", onPointerUp, true);\n } else {\n doc.removeEventListener(\"pointermove\", onPointerMove, true);\n doc.removeEventListener(\"pointerup\", onPointerUp, true);\n doc.removeEventListener(\"pointercancel\", onPointerUp, true);\n }\n };\n let start: { point: Point; viewport: Viewport; id: number } | undefined;\n let pinch: { distance: number; mid: Point; viewport: Viewport } | undefined;\n let panning = false;\n let swallowClick = false;\n let interacting = false;\n const setInteracting = (value: boolean): void => {\n if (value === interacting) return;\n interacting = value;\n options.onInteracting?.(value);\n };\n\n const pinchState = (): { distance: number; mid: Point } => {\n const [a, b] = [...pointers.values()] as [Point, Point];\n return { distance: Math.hypot(a.x - b.x, a.y - b.y), mid: { x: (a.x + b.x) / 2, y: (a.y + b.y) / 2 } };\n };\n\n const onPointerDown = (event: PointerEvent): void => {\n if (event.button !== 0 && event.pointerType === \"mouse\") return;\n const target = event.target as Element | null;\n if (target?.closest?.(INTERACTIVE)) return;\n pointers.set(event.pointerId, local(event.clientX, event.clientY));\n follow(true);\n if (pointers.size === 1) {\n start = { point: pointers.get(event.pointerId)!, viewport: current(), id: event.pointerId };\n panning = false;\n } else if (pointers.size === 2) {\n const { distance, mid } = pinchState();\n pinch = { distance, mid, viewport: current() };\n start = undefined;\n // A second finger makes it a gesture: take both pointers.\n for (const id of pointers.keys()) capture(id);\n setInteracting(true);\n }\n };\n\n const capture = (id: number): void => {\n try {\n el.setPointerCapture?.(id);\n } catch {\n // The pointer is gone already.\n }\n };\n\n const onPointerMove = (event: PointerEvent): void => {\n if (!pointers.has(event.pointerId)) return;\n const point = local(event.clientX, event.clientY);\n pointers.set(event.pointerId, point);\n if (pinch && pointers.size >= 2) {\n const { distance, mid } = pinchState();\n const scaled = zoomAt(\n pinch.viewport,\n pinch.mid,\n distance / Math.max(1, pinch.distance),\n options.minZoom(),\n options.maxZoom()\n );\n set({ ...scaled, x: scaled.x + mid.x - pinch.mid.x, y: scaled.y + mid.y - pinch.mid.y });\n return;\n }\n if (!start || start.id !== event.pointerId) return;\n const dx = point.x - start.point.x;\n const dy = point.y - start.point.y;\n if (!panning) {\n if (Math.hypot(dx, dy) < threshold) return;\n // Captured only now: a capture from the press would take the click from the node under it.\n panning = true;\n capture(event.pointerId);\n setInteracting(true);\n }\n set({ x: start.viewport.x + dx, y: start.viewport.y + dy, zoom: start.viewport.zoom });\n };\n\n const onPointerUp = (event: PointerEvent): void => {\n if (!pointers.delete(event.pointerId)) return;\n if (panning || pinch) swallowClick = true;\n if (pointers.size < 2) pinch = undefined;\n if (pointers.size === 0) {\n follow(false);\n start = undefined;\n panning = false;\n setInteracting(false);\n writer.flush();\n // A click comes right after the release, or not at all.\n setTimeout(() => (swallowClick = false), 0);\n } else if (pointers.size === 1) {\n // One finger left after a pinch: it pans from here.\n const [[id, point]] = [...pointers.entries()] as [[number, Point]];\n start = { point, viewport: current(), id };\n panning = true;\n }\n };\n\n const onClick = (event: MouseEvent): void => {\n if (!swallowClick) return;\n swallowClick = false;\n event.stopPropagation();\n event.preventDefault();\n };\n\n const onWheel = (event: WheelEvent): void => {\n const pinchGesture = event.ctrlKey || event.metaKey;\n const mode = options.wheel();\n if (!pinchGesture && mode === \"none\") return;\n event.preventDefault();\n if (!pinchGesture && mode === \"pan\") {\n const v = current();\n const scale = event.deltaMode === 1 ? 16 : event.deltaMode === 2 ? 400 : 1;\n const dx = event.shiftKey && !event.deltaX ? event.deltaY : event.deltaX;\n const dy = event.shiftKey && !event.deltaX ? 0 : event.deltaY;\n set({ x: v.x - dx * scale, y: v.y - dy * scale, zoom: v.zoom });\n return;\n }\n const factor = wheelZoomFactor(event.deltaY, event.deltaMode, pinchGesture);\n set(zoomAt(current(), local(event.clientX, event.clientY), factor, options.minZoom(), options.maxZoom()));\n };\n\n // Safari reports a trackpad pinch as gesture events, with the scale since the gesture began.\n let gesture: { viewport: Viewport; point: Point } | undefined;\n const onGestureStart = (event: Event): void => {\n event.preventDefault();\n const e = event as Event & { clientX?: number; clientY?: number };\n const rect = el.getBoundingClientRect();\n gesture = {\n viewport: current(),\n point: e.clientX === undefined ? { x: rect.width / 2, y: rect.height / 2 } : local(e.clientX, e.clientY ?? 0),\n };\n };\n const onGestureChange = (event: Event): void => {\n event.preventDefault();\n const scale = (event as Event & { scale?: number }).scale;\n if (!gesture || typeof scale !== \"number\") return;\n set(zoomAt(gesture.viewport, gesture.point, scale, options.minZoom(), options.maxZoom()));\n };\n const onGestureEnd = (event: Event): void => {\n event.preventDefault();\n gesture = undefined;\n };\n\n el.addEventListener(\"pointerdown\", onPointerDown);\n el.addEventListener(\"click\", onClick, true);\n el.addEventListener(\"wheel\", onWheel, { passive: false });\n el.addEventListener(\"gesturestart\", onGestureStart);\n el.addEventListener(\"gesturechange\", onGestureChange);\n el.addEventListener(\"gestureend\", onGestureEnd);\n\n return () => {\n writer.cancel();\n follow(false);\n el.removeEventListener(\"pointerdown\", onPointerDown);\n el.removeEventListener(\"click\", onClick, true);\n el.removeEventListener(\"wheel\", onWheel);\n el.removeEventListener(\"gesturestart\", onGestureStart);\n el.removeEventListener(\"gesturechange\", onGestureChange);\n el.removeEventListener(\"gestureend\", onGestureEnd);\n };\n}\n"],"names":["clamp","value","min","max","zoomAt","viewport","point","factor","zoom","k","fitBounds","bounds","size","padding","room","fit","centerOn","isVisible","rect","margin","left","top","wheelZoomFactor","deltaY","deltaMode","pinch","pixels","step","viewportTransform","sameViewport","a","b","createFrameWriter","write","frame","callback","id","flush","next","INTERACTIVE","createPanZoom","el","options","threshold","writer","current","set","local","clientX","clientY","pointers","doc","following","follow","on","onPointerMove","onPointerUp","start","panning","swallowClick","interacting","setInteracting","pinchState","onPointerDown","event","distance","mid","capture","scaled","dx","dy","onClick","onWheel","pinchGesture","mode","v","scale","gesture","onGestureStart","e","onGestureChange","onGestureEnd"],"mappings":"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"}
@@ -5,14 +5,22 @@ export interface DescriptionListEntry {
5
5
  description: JSX.Element;
6
6
  }
7
7
  /**
8
- * `auto`: the term beside its description while the list's container is at
9
- * least 420px wide, above it when narrower (a container query). `row` and
10
- * `stacked` fix one layout.
8
+ * `auto`: the term beside its description while the list is at least 420px
9
+ * wide, above it when narrower (a container query on the list itself). `row`
10
+ * and `stacked` fix one layout.
11
11
  */
12
12
  export type DescriptionListLayout = "auto" | "row" | "stacked";
13
13
  export interface DescriptionListProps extends JSX.HTMLAttributes<HTMLDListElement> {
14
14
  /** The pairs as data; `DescriptionItem` children work too, and come after them. */
15
15
  items?: DescriptionListEntry[];
16
+ /**
17
+ * "auto" (default): each term beside its value while the list is at least
18
+ * 420px wide, above it when narrower — the list's own width decides. So its
19
+ * content does not widen it: where the parent takes its width from its
20
+ * content (a flex item that does not grow, a popover, a table cell) the list
21
+ * has no width; give it one there, or use "row" / "stacked", which fix one
22
+ * layout and take their width from their content.
23
+ */
16
24
  layout?: DescriptionListLayout;
17
25
  /** Width of the term column in the row layout: px or any CSS track size. 30% of the list, at least 6rem, by default. */
18
26
  termWidth?: number | string;
@@ -1,48 +1,44 @@
1
- import { use as p, spread as a, mergeProps as u, insert as n, createComponent as d, template as f } from "solid-js/web";
1
+ import { use as d, spread as a, mergeProps as u, insert as n, createComponent as p, template as f } from "solid-js/web";
2
2
  import '../../../assets/styles/less/components/descriptionList/descriptionList.entry.css';import '../../../assets/styles/less/tokens.entry.css';/* empty css */
3
3
  /* empty css */
4
- import { splitProps as _, mergeProps as g, createMemo as $, For as b } from "solid-js";
5
- import h from "clsx";
6
- import { mergeRefs as y } from "../../../primitives/mergeRefs.js";
7
- var w = /* @__PURE__ */ f("<div><dt class=smwb-description-list__term></dt><dd class=smwb-description-list__details>"), v = /* @__PURE__ */ f("<dl>");
4
+ import { splitProps as _, mergeProps as y, createMemo as $, For as b } from "solid-js";
5
+ import g from "clsx";
6
+ import { mergeRefs as h } from "../../../primitives/mergeRefs.js";
7
+ import { mergeStyle as w } from "../../../primitives/mergeStyle.js";
8
+ var v = /* @__PURE__ */ f("<div><dt class=smwb-description-list__term></dt><dd class=smwb-description-list__details>"), P = /* @__PURE__ */ f("<dl>");
8
9
  function W(l) {
9
10
  const [r, e] = _(l, ["class", "term", "children", "ref"]);
10
11
  return (() => {
11
- var s = w(), i = s.firstChild, o = i.nextSibling, t = y(r.ref);
12
- return typeof t == "function" && p(t, s), a(s, u(e, {
12
+ var s = v(), i = s.firstChild, o = i.nextSibling, t = h(r.ref);
13
+ return typeof t == "function" && d(t, s), a(s, u(e, {
13
14
  get class() {
14
- return h("smwb-description-list__item", r.class);
15
+ return g("smwb-description-list__item", r.class);
15
16
  }
16
17
  }), !1, !0), n(i, () => r.term), n(o, () => r.children), s;
17
18
  })();
18
19
  }
19
- function L(l) {
20
- const r = g({
20
+ function M(l) {
21
+ const r = y({
21
22
  layout: "auto"
22
- }, l), [e, s] = _(r, ["class", "style", "items", "layout", "termWidth", "dense", "children", "ref"]), i = $(() => e.items ?? []), o = () => {
23
- if (e.termWidth === void 0) return e.style;
24
- const t = typeof e.termWidth == "number" ? `${e.termWidth}px` : e.termWidth;
25
- return typeof e.style == "string" ? `${e.style};--smwb-description-term:${t}` : {
26
- ...e.style,
27
- "--smwb-description-term": t
28
- };
29
- };
23
+ }, l), [e, s] = _(r, ["class", "style", "items", "layout", "termWidth", "dense", "children", "ref"]), i = $(() => e.items ?? []), o = () => w(e.style, {
24
+ "--smwb-description-term": typeof e.termWidth == "number" ? `${e.termWidth}px` : e.termWidth
25
+ });
30
26
  return (() => {
31
- var t = v(), m = y(e.ref);
32
- return typeof m == "function" && p(m, t), a(t, u(s, {
27
+ var t = P(), m = h(e.ref);
28
+ return typeof m == "function" && d(m, t), a(t, u(s, {
33
29
  get class() {
34
- return h("smwb-description-list", `smwb-description-list_${e.layout}`, {
30
+ return g("smwb-description-list", `smwb-description-list_${e.layout}`, {
35
31
  "smwb-description-list_dense": e.dense
36
32
  }, e.class);
37
33
  },
38
34
  get style() {
39
35
  return o();
40
36
  }
41
- }), !1, !0), n(t, d(b, {
37
+ }), !1, !0), n(t, p(b, {
42
38
  get each() {
43
39
  return i();
44
40
  },
45
- children: (c) => d(W, {
41
+ children: (c) => p(W, {
46
42
  get term() {
47
43
  return c.term;
48
44
  },
@@ -55,6 +51,6 @@ function L(l) {
55
51
  }
56
52
  export {
57
53
  W as DescriptionItem,
58
- L as DescriptionList
54
+ M as DescriptionList
59
55
  };
60
56
  //# sourceMappingURL=descriptionList.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"descriptionList.js","sources":["../../../../src/components/dataDisplay/descriptionList/descriptionList.tsx"],"sourcesContent":["import { type JSX, type ParentProps, For, createMemo, mergeProps, splitProps } from \"solid-js\";\nimport cn from \"clsx\";\nimport { mergeRefs, type Ref } from \"../../../primitives/mergeRefs\";\n\nexport interface DescriptionListEntry {\n term: JSX.Element;\n description: JSX.Element;\n}\n\n/**\n * `auto`: the term beside its description while the list's container is at\n * least 420px wide, above it when narrower (a container query). `row` and\n * `stacked` fix one layout.\n */\nexport type DescriptionListLayout = \"auto\" | \"row\" | \"stacked\";\n\nexport interface DescriptionListProps extends JSX.HTMLAttributes<HTMLDListElement> {\n /** The pairs as data; `DescriptionItem` children work too, and come after them. */\n items?: DescriptionListEntry[];\n layout?: DescriptionListLayout;\n /** Width of the term column in the row layout: px or any CSS track size. 30% of the list, at least 6rem, by default. */\n termWidth?: number | string;\n /** Tighter spacing, for side panels. */\n dense?: boolean;\n ref?: Ref<HTMLDListElement>;\n}\n\nexport interface DescriptionItemProps extends JSX.HTMLAttributes<HTMLDivElement> {\n /** The field's name. */\n term: JSX.Element;\n ref?: Ref<HTMLDivElement>;\n}\n\n/** One pair: the term and, as children, its description. */\nexport function DescriptionItem(props: ParentProps<DescriptionItemProps>): JSX.Element {\n const [local, rest] = splitProps(props, [\"class\", \"term\", \"children\", \"ref\"]);\n return (\n <div {...rest} ref={mergeRefs(local.ref)} class={cn(\"smwb-description-list__item\", local.class)}>\n <dt class=\"smwb-description-list__term\">{local.term}</dt>\n <dd class=\"smwb-description-list__details\">{local.children}</dd>\n </div>\n );\n}\n\n/** Field–value pairs (a `<dl>`): side by side, stacking on a narrow container. */\nexport function DescriptionList(props: ParentProps<DescriptionListProps>): JSX.Element {\n const merged = mergeProps({ layout: \"auto\" as DescriptionListLayout }, props);\n const [local, rest] = splitProps(merged, [\"class\", \"style\", \"items\", \"layout\", \"termWidth\", \"dense\", \"children\", \"ref\"]);\n\n // Read the items once: an inline array is re-evaluated on every read, creating\n // the markup in it again, and during hydration the extra copies have no server\n // DOM nodes to adopt.\n const items = createMemo(() => local.items ?? []);\n\n const style = (): JSX.CSSProperties | string | undefined => {\n if (local.termWidth === undefined) return local.style;\n const width = typeof local.termWidth === \"number\" ? `${local.termWidth}px` : local.termWidth;\n if (typeof local.style === \"string\") return `${local.style};--smwb-description-term:${width}`;\n return { ...local.style, \"--smwb-description-term\": width };\n };\n\n return (\n <dl\n {...rest}\n ref={mergeRefs(local.ref)}\n class={cn(\n \"smwb-description-list\",\n `smwb-description-list_${local.layout}`,\n { \"smwb-description-list_dense\": local.dense },\n local.class\n )}\n style={style()}\n >\n <For each={items()}>{(item) => <DescriptionItem term={item.term}>{item.description}</DescriptionItem>}</For>\n {local.children}\n </dl>\n );\n}\n\nexport default DescriptionList;\n"],"names":["DescriptionItem","props","local","rest","splitProps","_el$","_tmpl$","_el$2","firstChild","_el$3","nextSibling","_ref$","mergeRefs","ref","_$use","_$spread","_$mergeProps","cn","class","_$insert","term","children","DescriptionList","merged","mergeProps","layout","items","createMemo","style","termWidth","undefined","width","_el$4","_tmpl$2","_ref$2","dense","_$createComponent","For","each","item","description"],"mappings":";;;;;;;AAoCO,SAASA,EAAgBC,GAAuD;AACrF,QAAM,CAACC,GAAOC,CAAI,IAAIC,EAAWH,GAAO,CAAC,SAAS,QAAQ,YAAY,KAAK,CAAC;AAC5E,UAAA,MAAA;AAAA,QAAAI,IAAAC,EAAAA,GAAAC,IAAAF,EAAAG,YAAAC,IAAAF,EAAAG,aAAAC,IACsBC,EAAUV,EAAMW,GAAG;AAAC,kBAAAF,KAAA,cAAAG,EAAAH,GAAAN,CAAA,GAAAU,EAAAV,GAAAW,EAA/Bb,GAAI;AAAA,MAAA,IAAA,QAAA;AAAA,eAAoCc,EAAG,+BAA+Bf,EAAMgB,KAAK;AAAA,MAAC;AAAA,IAAA,CAAA,GAAA,IAAA,EAAA,GAAAC,EAAAZ,GAAA,MACpDL,EAAMkB,IAAI,GAAAD,EAAAV,GAAA,MACPP,EAAMmB,QAAQ,GAAAhB;AAAAA,EAAA,GAAA;AAGhE;AAGO,SAASiB,EAAgBrB,GAAuD;AACrF,QAAMsB,IAASC,EAAW;AAAA,IAAEC,QAAQ;AAAA,EAAA,GAAmCxB,CAAK,GACtE,CAACC,GAAOC,CAAI,IAAIC,EAAWmB,GAAQ,CAAC,SAAS,SAAS,SAAS,UAAU,aAAa,SAAS,YAAY,KAAK,CAAC,GAKjHG,IAAQC,EAAW,MAAMzB,EAAMwB,SAAS,CAAA,CAAE,GAE1CE,IAAQA,MAA8C;AAC1D,QAAI1B,EAAM2B,cAAcC,OAAW,QAAO5B,EAAM0B;AAChD,UAAMG,IAAQ,OAAO7B,EAAM2B,aAAc,WAAW,GAAG3B,EAAM2B,SAAS,OAAO3B,EAAM2B;AACnF,WAAI,OAAO3B,EAAM0B,SAAU,WAAiB,GAAG1B,EAAM0B,KAAK,4BAA4BG,CAAK,KACpF;AAAA,MAAE,GAAG7B,EAAM0B;AAAAA,MAAO,2BAA2BG;AAAAA,IAAAA;AAAAA,EACtD;AAEA,UAAA,MAAA;AAAA,QAAAC,IAAAC,EAAAA,GAAAC,IAGStB,EAAUV,EAAMW,GAAG;AAAC,kBAAAqB,KAAA,cAAApB,EAAAoB,GAAAF,CAAA,GAAAjB,EAAAiB,GAAAhB,EADrBb,GAAI;AAAA,MAAA,IAAA,QAAA;AAAA,eAEDc,EACL,yBACA,yBAAyBf,EAAMuB,MAAM,IACrC;AAAA,UAAE,+BAA+BvB,EAAMiC;AAAAA,QAAAA,GACvCjC,EAAMgB,KACR;AAAA,MAAC;AAAA,MAAA,IACDU,QAAK;AAAA,eAAEA,EAAAA;AAAAA,MAAO;AAAA,IAAA,CAAA,GAAA,IAAA,EAAA,GAAAT,EAAAa,GAAAI,EAEbC,GAAG;AAAA,MAAA,IAACC,OAAI;AAAA,eAAEZ,EAAAA;AAAAA,MAAO;AAAA,MAAAL,UAAIkB,CAAAA,MAAIH,EAAMpC,GAAe;AAAA,QAAA,IAACoB,OAAI;AAAA,iBAAEmB,EAAKnB;AAAAA,QAAI;AAAA,QAAA,IAAAC,WAAA;AAAA,iBAAGkB,EAAKC;AAAAA,QAAW;AAAA,MAAA,CAAA;AAAA,IAAA,CAAmB,GAAA,IAAA,GAAArB,EAAAa,GAAA,MACpG9B,EAAMmB,UAAQ,IAAA,GAAAW;AAAAA,EAAA,GAAA;AAGrB;"}
1
+ {"version":3,"file":"descriptionList.js","sources":["../../../../src/components/dataDisplay/descriptionList/descriptionList.tsx"],"sourcesContent":["import { type JSX, type ParentProps, For, createMemo, mergeProps, splitProps } from \"solid-js\";\nimport cn from \"clsx\";\nimport { mergeRefs, type Ref } from \"../../../primitives/mergeRefs\";\nimport { mergeStyle } from \"../../../primitives/mergeStyle\";\n\nexport interface DescriptionListEntry {\n term: JSX.Element;\n description: JSX.Element;\n}\n\n/**\n * `auto`: the term beside its description while the list is at least 420px\n * wide, above it when narrower (a container query on the list itself). `row`\n * and `stacked` fix one layout.\n */\nexport type DescriptionListLayout = \"auto\" | \"row\" | \"stacked\";\n\nexport interface DescriptionListProps extends JSX.HTMLAttributes<HTMLDListElement> {\n /** The pairs as data; `DescriptionItem` children work too, and come after them. */\n items?: DescriptionListEntry[];\n /**\n * \"auto\" (default): each term beside its value while the list is at least\n * 420px wide, above it when narrower — the list's own width decides. So its\n * content does not widen it: where the parent takes its width from its\n * content (a flex item that does not grow, a popover, a table cell) the list\n * has no width; give it one there, or use \"row\" / \"stacked\", which fix one\n * layout and take their width from their content.\n */\n layout?: DescriptionListLayout;\n /** Width of the term column in the row layout: px or any CSS track size. 30% of the list, at least 6rem, by default. */\n termWidth?: number | string;\n /** Tighter spacing, for side panels. */\n dense?: boolean;\n ref?: Ref<HTMLDListElement>;\n}\n\nexport interface DescriptionItemProps extends JSX.HTMLAttributes<HTMLDivElement> {\n /** The field's name. */\n term: JSX.Element;\n ref?: Ref<HTMLDivElement>;\n}\n\n/** One pair: the term and, as children, its description. */\nexport function DescriptionItem(props: ParentProps<DescriptionItemProps>): JSX.Element {\n const [local, rest] = splitProps(props, [\"class\", \"term\", \"children\", \"ref\"]);\n return (\n <div {...rest} ref={mergeRefs(local.ref)} class={cn(\"smwb-description-list__item\", local.class)}>\n <dt class=\"smwb-description-list__term\">{local.term}</dt>\n <dd class=\"smwb-description-list__details\">{local.children}</dd>\n </div>\n );\n}\n\n/** Field–value pairs (a `<dl>`): side by side, stacking on a narrow container. */\nexport function DescriptionList(props: ParentProps<DescriptionListProps>): JSX.Element {\n const merged = mergeProps({ layout: \"auto\" as DescriptionListLayout }, props);\n const [local, rest] = splitProps(merged, [\"class\", \"style\", \"items\", \"layout\", \"termWidth\", \"dense\", \"children\", \"ref\"]);\n\n // Read the items once: an inline array is re-evaluated on every read, creating\n // the markup in it again, and during hydration the extra copies have no server\n // DOM nodes to adopt.\n const items = createMemo(() => local.items ?? []);\n\n const style = (): JSX.CSSProperties | string | undefined =>\n mergeStyle(local.style, {\n \"--smwb-description-term\": typeof local.termWidth === \"number\" ? `${local.termWidth}px` : local.termWidth,\n });\n\n return (\n <dl\n {...rest}\n ref={mergeRefs(local.ref)}\n class={cn(\n \"smwb-description-list\",\n `smwb-description-list_${local.layout}`,\n { \"smwb-description-list_dense\": local.dense },\n local.class\n )}\n style={style()}\n >\n <For each={items()}>{(item) => <DescriptionItem term={item.term}>{item.description}</DescriptionItem>}</For>\n {local.children}\n </dl>\n );\n}\n\nexport default DescriptionList;\n"],"names":["DescriptionItem","props","local","rest","splitProps","_el$","_tmpl$","_el$2","firstChild","_el$3","nextSibling","_ref$","mergeRefs","ref","_$use","_$spread","_$mergeProps","cn","class","_$insert","term","children","DescriptionList","merged","mergeProps","layout","items","createMemo","style","mergeStyle","termWidth","_el$4","_tmpl$2","_ref$2","dense","_$createComponent","For","each","item","description"],"mappings":";;;;;;;;AA6CO,SAASA,EAAgBC,GAAuD;AACrF,QAAM,CAACC,GAAOC,CAAI,IAAIC,EAAWH,GAAO,CAAC,SAAS,QAAQ,YAAY,KAAK,CAAC;AAC5E,UAAA,MAAA;AAAA,QAAAI,IAAAC,EAAAA,GAAAC,IAAAF,EAAAG,YAAAC,IAAAF,EAAAG,aAAAC,IACsBC,EAAUV,EAAMW,GAAG;AAAC,kBAAAF,KAAA,cAAAG,EAAAH,GAAAN,CAAA,GAAAU,EAAAV,GAAAW,EAA/Bb,GAAI;AAAA,MAAA,IAAA,QAAA;AAAA,eAAoCc,EAAG,+BAA+Bf,EAAMgB,KAAK;AAAA,MAAC;AAAA,IAAA,CAAA,GAAA,IAAA,EAAA,GAAAC,EAAAZ,GAAA,MACpDL,EAAMkB,IAAI,GAAAD,EAAAV,GAAA,MACPP,EAAMmB,QAAQ,GAAAhB;AAAAA,EAAA,GAAA;AAGhE;AAGO,SAASiB,EAAgBrB,GAAuD;AACrF,QAAMsB,IAASC,EAAW;AAAA,IAAEC,QAAQ;AAAA,EAAA,GAAmCxB,CAAK,GACtE,CAACC,GAAOC,CAAI,IAAIC,EAAWmB,GAAQ,CAAC,SAAS,SAAS,SAAS,UAAU,aAAa,SAAS,YAAY,KAAK,CAAC,GAKjHG,IAAQC,EAAW,MAAMzB,EAAMwB,SAAS,CAAA,CAAE,GAE1CE,IAAQA,MACZC,EAAW3B,EAAM0B,OAAO;AAAA,IACtB,2BAA2B,OAAO1B,EAAM4B,aAAc,WAAW,GAAG5B,EAAM4B,SAAS,OAAO5B,EAAM4B;AAAAA,EAAAA,CACjG;AAEH,UAAA,MAAA;AAAA,QAAAC,IAAAC,EAAAA,GAAAC,IAGSrB,EAAUV,EAAMW,GAAG;AAAC,kBAAAoB,KAAA,cAAAnB,EAAAmB,GAAAF,CAAA,GAAAhB,EAAAgB,GAAAf,EADrBb,GAAI;AAAA,MAAA,IAAA,QAAA;AAAA,eAEDc,EACL,yBACA,yBAAyBf,EAAMuB,MAAM,IACrC;AAAA,UAAE,+BAA+BvB,EAAMgC;AAAAA,QAAAA,GACvChC,EAAMgB,KACR;AAAA,MAAC;AAAA,MAAA,IACDU,QAAK;AAAA,eAAEA,EAAAA;AAAAA,MAAO;AAAA,IAAA,CAAA,GAAA,IAAA,EAAA,GAAAT,EAAAY,GAAAI,EAEbC,GAAG;AAAA,MAAA,IAACC,OAAI;AAAA,eAAEX,EAAAA;AAAAA,MAAO;AAAA,MAAAL,UAAIiB,CAAAA,MAAIH,EAAMnC,GAAe;AAAA,QAAA,IAACoB,OAAI;AAAA,iBAAEkB,EAAKlB;AAAAA,QAAI;AAAA,QAAA,IAAAC,WAAA;AAAA,iBAAGiB,EAAKC;AAAAA,QAAW;AAAA,MAAA,CAAA;AAAA,IAAA,CAAmB,GAAA,IAAA,GAAApB,EAAAY,GAAA,MACpG7B,EAAMmB,UAAQ,IAAA,GAAAU;AAAAA,EAAA,GAAA;AAGrB;"}