@smwb/ui-solid 0.4.0 → 0.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (291) hide show
  1. package/dist/assets/styles/less/components/appBar/appBar.entry.css +1 -1
  2. package/dist/components/layout/appLayout/appLayout.js +43 -43
  3. package/dist/components/layout/appLayout/appLayout.js.map +1 -1
  4. package/dist/components/navigation/bottomBar/bottomBar.js +31 -30
  5. package/dist/components/navigation/bottomBar/bottomBar.js.map +1 -1
  6. package/dist/components/navigation/sidebar/sidebar.js +48 -47
  7. package/dist/components/navigation/sidebar/sidebar.js.map +1 -1
  8. package/dist/headless/components/layout/appLayout/appLayout.js +43 -43
  9. package/dist/headless/components/layout/appLayout/appLayout.js.map +1 -1
  10. package/dist/headless/components/navigation/bottomBar/bottomBar.js +31 -30
  11. package/dist/headless/components/navigation/bottomBar/bottomBar.js.map +1 -1
  12. package/dist/headless/components/navigation/sidebar/sidebar.js +48 -47
  13. package/dist/headless/components/navigation/sidebar/sidebar.js.map +1 -1
  14. package/dist/headless/source/components/base/animateHeight/animateHeight.jsx +1 -1
  15. package/dist/headless/source/components/base/icon/icon.jsx +1 -1
  16. package/dist/headless/source/components/base/ripple/ripple.jsx +1 -1
  17. package/dist/headless/source/components/clickAwayListener/clickAwayListener.jsx +1 -1
  18. package/dist/headless/source/components/dataDisplay/accordion/accordion.jsx +1 -1
  19. package/dist/headless/source/components/dataDisplay/avatar/avatar.jsx +1 -1
  20. package/dist/headless/source/components/dataDisplay/badge/badge.jsx +1 -1
  21. package/dist/headless/source/components/dataDisplay/card/card.jsx +1 -1
  22. package/dist/headless/source/components/dataDisplay/carousel/carousel.jsx +1 -1
  23. package/dist/headless/source/components/dataDisplay/chat/chat.jsx +1 -1
  24. package/dist/headless/source/components/dataDisplay/chat/chatAttachmentImage.jsx +1 -1
  25. package/dist/headless/source/components/dataDisplay/chat/chatAttachments.jsx +1 -1
  26. package/dist/headless/source/components/dataDisplay/chat/chatComposer.jsx +1 -1
  27. package/dist/headless/source/components/dataDisplay/chat/chatHeader.jsx +1 -1
  28. package/dist/headless/source/components/dataDisplay/chat/chatIconButton.jsx +1 -1
  29. package/dist/headless/source/components/dataDisplay/chat/chatLayout.jsx +1 -1
  30. package/dist/headless/source/components/dataDisplay/chat/chatMessageAvatar.jsx +1 -1
  31. package/dist/headless/source/components/dataDisplay/chat/chatMessageBubble.jsx +1 -1
  32. package/dist/headless/source/components/dataDisplay/chat/chatMessageIncoming.jsx +1 -1
  33. package/dist/headless/source/components/dataDisplay/chat/chatMessageItem.jsx +1 -1
  34. package/dist/headless/source/components/dataDisplay/chat/chatMessageOutgoing.jsx +1 -1
  35. package/dist/headless/source/components/dataDisplay/chat/chatMessageSkeleton.jsx +1 -1
  36. package/dist/headless/source/components/dataDisplay/chat/chatMessageStatus.jsx +1 -1
  37. package/dist/headless/source/components/dataDisplay/chat/chatMessageSystem.jsx +1 -1
  38. package/dist/headless/source/components/dataDisplay/chat/chatMessages.jsx +1 -1
  39. package/dist/headless/source/components/dataDisplay/chat/chatOverlayLayout.jsx +1 -1
  40. package/dist/headless/source/components/dataDisplay/chat/chatShell.jsx +1 -1
  41. package/dist/headless/source/components/dataDisplay/chip/chip.jsx +1 -1
  42. package/dist/headless/source/components/dataDisplay/expansionPanel/expansionPanel.jsx +1 -1
  43. package/dist/headless/source/components/dataDisplay/imagesList/imagesList.jsx +1 -1
  44. package/dist/headless/source/components/dataDisplay/imagesList/imagesListItem/imagesListItem.jsx +1 -1
  45. package/dist/headless/source/components/dataDisplay/imagesList/imagesListItem/imagesListItemModal.jsx +1 -1
  46. package/dist/headless/source/components/dataDisplay/list/list.jsx +1 -1
  47. package/dist/headless/source/components/dataDisplay/list/listItem.jsx +1 -1
  48. package/dist/headless/source/components/dataDisplay/table/table.jsx +1 -1
  49. package/dist/headless/source/components/dataDisplay/table/tableBody.jsx +1 -1
  50. package/dist/headless/source/components/dataDisplay/table/tableCell.jsx +1 -1
  51. package/dist/headless/source/components/dataDisplay/table/tableHead.jsx +1 -1
  52. package/dist/headless/source/components/dataDisplay/table/tableHeadCell.jsx +1 -1
  53. package/dist/headless/source/components/dataDisplay/table/tablePagination/tablePagination.jsx +1 -1
  54. package/dist/headless/source/components/dataDisplay/table/tableRow.jsx +1 -1
  55. package/dist/headless/source/components/dataDisplay/treeView/treeView.jsx +1 -1
  56. package/dist/headless/source/components/dataDisplay/typography/typography.jsx +1 -1
  57. package/dist/headless/source/components/feedBack/message/message.jsx +1 -1
  58. package/dist/headless/source/components/feedBack/modal/modal.jsx +1 -1
  59. package/dist/headless/source/components/feedBack/progressIndicator/progressIndicator.jsx +1 -1
  60. package/dist/headless/source/components/feedBack/skeleton/skeleton.jsx +1 -1
  61. package/dist/headless/source/components/feedBack/snackbar/snackbar.jsx +1 -1
  62. package/dist/headless/source/components/feedBack/tooltip/tooltip.jsx +1 -1
  63. package/dist/headless/source/components/inputs/button/button.jsx +1 -1
  64. package/dist/headless/source/components/inputs/buttonGroups/buttonGroup.jsx +1 -1
  65. package/dist/headless/source/components/inputs/checkbox/checkbox.jsx +1 -1
  66. package/dist/headless/source/components/inputs/datePicker/dataPickerDays.jsx +1 -1
  67. package/dist/headless/source/components/inputs/datePicker/dataPickerHeader.jsx +1 -1
  68. package/dist/headless/source/components/inputs/datePicker/dataPickerInput.jsx +1 -1
  69. package/dist/headless/source/components/inputs/datePicker/datePicker.jsx +1 -1
  70. package/dist/headless/source/components/inputs/datePicker/datePickerActionLabel.jsx +1 -1
  71. package/dist/headless/source/components/inputs/datePicker/datePickerDay.jsx +1 -1
  72. package/dist/headless/source/components/inputs/datePicker/datePickerIconButton.jsx +1 -1
  73. package/dist/headless/source/components/inputs/datePicker/datePickerList.jsx +1 -1
  74. package/dist/headless/source/components/inputs/dateTimePicker/dateTimePicker.jsx +1 -1
  75. package/dist/headless/source/components/inputs/dateTimePicker/dateTimePickerInput.jsx +1 -1
  76. package/dist/headless/source/components/inputs/fileDrop/countPreview.jsx +1 -1
  77. package/dist/headless/source/components/inputs/fileDrop/fileDrop.jsx +1 -1
  78. package/dist/headless/source/components/inputs/fileDrop/preview.jsx +1 -1
  79. package/dist/headless/source/components/inputs/fileDrop/previewWrapper.jsx +1 -1
  80. package/dist/headless/source/components/inputs/fileInput/fileInput.jsx +1 -1
  81. package/dist/headless/source/components/inputs/floatingButton/floatingButton.jsx +1 -1
  82. package/dist/headless/source/components/inputs/radioButton/radioButton.jsx +1 -1
  83. package/dist/headless/source/components/inputs/rating/rating.jsx +1 -1
  84. package/dist/headless/source/components/inputs/selectField/dropdownMenu.jsx +1 -1
  85. package/dist/headless/source/components/inputs/selectField/selectField.jsx +1 -1
  86. package/dist/headless/source/components/inputs/slider/slider.jsx +1 -1
  87. package/dist/headless/source/components/inputs/textField/textField.jsx +1 -1
  88. package/dist/headless/source/components/inputs/textField/textFieldAdornment.jsx +1 -1
  89. package/dist/headless/source/components/inputs/textField/textFieldWrapper.jsx +1 -1
  90. package/dist/headless/source/components/inputs/timePicker/timePicker.jsx +1 -1
  91. package/dist/headless/source/components/inputs/timePicker/timePickerColumns.jsx +1 -1
  92. package/dist/headless/source/components/inputs/timePicker/timePickerInput.jsx +1 -1
  93. package/dist/headless/source/components/inputs/timePicker/timePickerList.jsx +1 -1
  94. package/dist/headless/source/components/inputs/toggle/toggle.jsx +1 -1
  95. package/dist/headless/source/components/layout/appLayout/appLayout.jsx +11 -8
  96. package/dist/headless/source/components/layout/appLayout/appLayout.jsx.map +1 -1
  97. package/dist/headless/source/components/layout/divider/divider.jsx +1 -1
  98. package/dist/headless/source/components/layout/grid/grid.jsx +1 -1
  99. package/dist/headless/source/components/layout/page/page.jsx +1 -1
  100. package/dist/headless/source/components/layout/pageHeader/pageHeader.jsx +1 -1
  101. package/dist/headless/source/components/layout/screenDivider/screenDivider.jsx +1 -1
  102. package/dist/headless/source/components/layout/sheet/sheet.jsx +1 -1
  103. package/dist/headless/source/components/layout/stack/stack.jsx +1 -1
  104. package/dist/headless/source/components/navigation/appBar/appBar.jsx +1 -1
  105. package/dist/headless/source/components/navigation/bottomBar/bottomBar.jsx +5 -4
  106. package/dist/headless/source/components/navigation/bottomBar/bottomBar.jsx.map +1 -1
  107. package/dist/headless/source/components/navigation/breadcrumbs/breadcrumbs.jsx +1 -1
  108. package/dist/headless/source/components/navigation/menu/menu.jsx +1 -1
  109. package/dist/headless/source/components/navigation/menu/menuComponent.jsx +1 -1
  110. package/dist/headless/source/components/navigation/menu/menuDivider.jsx +1 -1
  111. package/dist/headless/source/components/navigation/menu/menuFloating.jsx +1 -1
  112. package/dist/headless/source/components/navigation/menu/menuItem.jsx +1 -1
  113. package/dist/headless/source/components/navigation/menu/menuItemIcon.jsx +1 -1
  114. package/dist/headless/source/components/navigation/menu/menuItemText.jsx +1 -1
  115. package/dist/headless/source/components/navigation/menu/menuList.jsx +1 -1
  116. package/dist/headless/source/components/navigation/menu/menuSubmenu.jsx +1 -1
  117. package/dist/headless/source/components/navigation/pagination/pagination.jsx +1 -1
  118. package/dist/headless/source/components/navigation/sidebar/sidebar.jsx +5 -4
  119. package/dist/headless/source/components/navigation/sidebar/sidebar.jsx.map +1 -1
  120. package/dist/headless/source/components/navigation/stepper/stepper.jsx +1 -1
  121. package/dist/headless/source/components/navigation/tabs/tab/tab.jsx +1 -1
  122. package/dist/headless/source/components/navigation/tabs/tabs.jsx +1 -1
  123. package/dist/source/components/base/animateHeight/animateHeight.jsx +1 -1
  124. package/dist/source/components/base/icon/icon.jsx +2 -2
  125. package/dist/source/components/base/icon/icon.jsx.map +1 -1
  126. package/dist/source/components/base/ripple/ripple.jsx +2 -2
  127. package/dist/source/components/base/ripple/ripple.jsx.map +1 -1
  128. package/dist/source/components/clickAwayListener/clickAwayListener.jsx +1 -1
  129. package/dist/source/components/dataDisplay/accordion/accordion.jsx +2 -2
  130. package/dist/source/components/dataDisplay/accordion/accordion.jsx.map +1 -1
  131. package/dist/source/components/dataDisplay/avatar/avatar.jsx +2 -2
  132. package/dist/source/components/dataDisplay/avatar/avatar.jsx.map +1 -1
  133. package/dist/source/components/dataDisplay/badge/badge.jsx +2 -2
  134. package/dist/source/components/dataDisplay/badge/badge.jsx.map +1 -1
  135. package/dist/source/components/dataDisplay/card/card.jsx +2 -2
  136. package/dist/source/components/dataDisplay/card/card.jsx.map +1 -1
  137. package/dist/source/components/dataDisplay/carousel/carousel.jsx +2 -2
  138. package/dist/source/components/dataDisplay/carousel/carousel.jsx.map +1 -1
  139. package/dist/source/components/dataDisplay/chat/chat.jsx +2 -2
  140. package/dist/source/components/dataDisplay/chat/chat.jsx.map +1 -1
  141. package/dist/source/components/dataDisplay/chat/chatAttachmentImage.jsx +1 -1
  142. package/dist/source/components/dataDisplay/chat/chatAttachments.jsx +1 -1
  143. package/dist/source/components/dataDisplay/chat/chatComposer.jsx +1 -1
  144. package/dist/source/components/dataDisplay/chat/chatHeader.jsx +1 -1
  145. package/dist/source/components/dataDisplay/chat/chatIconButton.jsx +1 -1
  146. package/dist/source/components/dataDisplay/chat/chatLayout.jsx +1 -1
  147. package/dist/source/components/dataDisplay/chat/chatMessageAvatar.jsx +1 -1
  148. package/dist/source/components/dataDisplay/chat/chatMessageBubble.jsx +1 -1
  149. package/dist/source/components/dataDisplay/chat/chatMessageIncoming.jsx +1 -1
  150. package/dist/source/components/dataDisplay/chat/chatMessageItem.jsx +1 -1
  151. package/dist/source/components/dataDisplay/chat/chatMessageOutgoing.jsx +1 -1
  152. package/dist/source/components/dataDisplay/chat/chatMessageSkeleton.jsx +1 -1
  153. package/dist/source/components/dataDisplay/chat/chatMessageStatus.jsx +1 -1
  154. package/dist/source/components/dataDisplay/chat/chatMessageSystem.jsx +1 -1
  155. package/dist/source/components/dataDisplay/chat/chatMessages.jsx +1 -1
  156. package/dist/source/components/dataDisplay/chat/chatOverlayLayout.jsx +1 -1
  157. package/dist/source/components/dataDisplay/chat/chatShell.jsx +1 -1
  158. package/dist/source/components/dataDisplay/chip/chip.jsx +2 -2
  159. package/dist/source/components/dataDisplay/chip/chip.jsx.map +1 -1
  160. package/dist/source/components/dataDisplay/expansionPanel/expansionPanel.jsx +2 -2
  161. package/dist/source/components/dataDisplay/expansionPanel/expansionPanel.jsx.map +1 -1
  162. package/dist/source/components/dataDisplay/imagesList/imagesList.jsx +2 -2
  163. package/dist/source/components/dataDisplay/imagesList/imagesList.jsx.map +1 -1
  164. package/dist/source/components/dataDisplay/imagesList/imagesListItem/imagesListItem.jsx +2 -2
  165. package/dist/source/components/dataDisplay/imagesList/imagesListItem/imagesListItem.jsx.map +1 -1
  166. package/dist/source/components/dataDisplay/imagesList/imagesListItem/imagesListItemModal.jsx +1 -1
  167. package/dist/source/components/dataDisplay/list/list.jsx +2 -2
  168. package/dist/source/components/dataDisplay/list/list.jsx.map +1 -1
  169. package/dist/source/components/dataDisplay/list/listItem.jsx +1 -1
  170. package/dist/source/components/dataDisplay/table/table.jsx +2 -2
  171. package/dist/source/components/dataDisplay/table/table.jsx.map +1 -1
  172. package/dist/source/components/dataDisplay/table/tableBody.jsx +1 -1
  173. package/dist/source/components/dataDisplay/table/tableCell.jsx +1 -1
  174. package/dist/source/components/dataDisplay/table/tableHead.jsx +1 -1
  175. package/dist/source/components/dataDisplay/table/tableHeadCell.jsx +1 -1
  176. package/dist/source/components/dataDisplay/table/tablePagination/tablePagination.jsx +2 -2
  177. package/dist/source/components/dataDisplay/table/tablePagination/tablePagination.jsx.map +1 -1
  178. package/dist/source/components/dataDisplay/table/tableRow.jsx +1 -1
  179. package/dist/source/components/dataDisplay/treeView/treeView.jsx +2 -2
  180. package/dist/source/components/dataDisplay/treeView/treeView.jsx.map +1 -1
  181. package/dist/source/components/dataDisplay/typography/typography.jsx +2 -2
  182. package/dist/source/components/dataDisplay/typography/typography.jsx.map +1 -1
  183. package/dist/source/components/feedBack/message/message.jsx +2 -2
  184. package/dist/source/components/feedBack/message/message.jsx.map +1 -1
  185. package/dist/source/components/feedBack/modal/modal.jsx +2 -2
  186. package/dist/source/components/feedBack/modal/modal.jsx.map +1 -1
  187. package/dist/source/components/feedBack/progressIndicator/progressIndicator.jsx +2 -2
  188. package/dist/source/components/feedBack/progressIndicator/progressIndicator.jsx.map +1 -1
  189. package/dist/source/components/feedBack/skeleton/skeleton.jsx +2 -2
  190. package/dist/source/components/feedBack/skeleton/skeleton.jsx.map +1 -1
  191. package/dist/source/components/feedBack/snackbar/snackbar.jsx +2 -2
  192. package/dist/source/components/feedBack/snackbar/snackbar.jsx.map +1 -1
  193. package/dist/source/components/feedBack/tooltip/tooltip.jsx +2 -2
  194. package/dist/source/components/feedBack/tooltip/tooltip.jsx.map +1 -1
  195. package/dist/source/components/inputs/button/button.jsx +2 -2
  196. package/dist/source/components/inputs/button/button.jsx.map +1 -1
  197. package/dist/source/components/inputs/buttonGroups/buttonGroup.jsx +2 -2
  198. package/dist/source/components/inputs/buttonGroups/buttonGroup.jsx.map +1 -1
  199. package/dist/source/components/inputs/checkbox/checkbox.jsx +2 -2
  200. package/dist/source/components/inputs/checkbox/checkbox.jsx.map +1 -1
  201. package/dist/source/components/inputs/datePicker/dataPickerDays.jsx +1 -1
  202. package/dist/source/components/inputs/datePicker/dataPickerHeader.jsx +1 -1
  203. package/dist/source/components/inputs/datePicker/dataPickerInput.jsx +1 -1
  204. package/dist/source/components/inputs/datePicker/datePicker.jsx +2 -2
  205. package/dist/source/components/inputs/datePicker/datePicker.jsx.map +1 -1
  206. package/dist/source/components/inputs/datePicker/datePickerActionLabel.jsx +1 -1
  207. package/dist/source/components/inputs/datePicker/datePickerDay.jsx +1 -1
  208. package/dist/source/components/inputs/datePicker/datePickerIconButton.jsx +1 -1
  209. package/dist/source/components/inputs/datePicker/datePickerList.jsx +1 -1
  210. package/dist/source/components/inputs/dateTimePicker/dateTimePicker.jsx +1 -1
  211. package/dist/source/components/inputs/dateTimePicker/dateTimePickerInput.jsx +1 -1
  212. package/dist/source/components/inputs/fileDrop/countPreview.jsx +1 -1
  213. package/dist/source/components/inputs/fileDrop/fileDrop.jsx +2 -2
  214. package/dist/source/components/inputs/fileDrop/fileDrop.jsx.map +1 -1
  215. package/dist/source/components/inputs/fileDrop/preview.jsx +1 -1
  216. package/dist/source/components/inputs/fileDrop/previewWrapper.jsx +1 -1
  217. package/dist/source/components/inputs/fileInput/fileInput.jsx +2 -2
  218. package/dist/source/components/inputs/fileInput/fileInput.jsx.map +1 -1
  219. package/dist/source/components/inputs/floatingButton/floatingButton.jsx +2 -2
  220. package/dist/source/components/inputs/floatingButton/floatingButton.jsx.map +1 -1
  221. package/dist/source/components/inputs/radioButton/radioButton.jsx +2 -2
  222. package/dist/source/components/inputs/radioButton/radioButton.jsx.map +1 -1
  223. package/dist/source/components/inputs/rating/rating.jsx +2 -2
  224. package/dist/source/components/inputs/rating/rating.jsx.map +1 -1
  225. package/dist/source/components/inputs/selectField/dropdownMenu.jsx +1 -1
  226. package/dist/source/components/inputs/selectField/selectField.jsx +2 -2
  227. package/dist/source/components/inputs/selectField/selectField.jsx.map +1 -1
  228. package/dist/source/components/inputs/slider/slider.jsx +2 -2
  229. package/dist/source/components/inputs/slider/slider.jsx.map +1 -1
  230. package/dist/source/components/inputs/textField/textField.jsx +2 -2
  231. package/dist/source/components/inputs/textField/textField.jsx.map +1 -1
  232. package/dist/source/components/inputs/textField/textFieldAdornment.jsx +1 -1
  233. package/dist/source/components/inputs/textField/textFieldWrapper.jsx +1 -1
  234. package/dist/source/components/inputs/timePicker/timePicker.jsx +2 -2
  235. package/dist/source/components/inputs/timePicker/timePicker.jsx.map +1 -1
  236. package/dist/source/components/inputs/timePicker/timePickerColumns.jsx +1 -1
  237. package/dist/source/components/inputs/timePicker/timePickerInput.jsx +1 -1
  238. package/dist/source/components/inputs/timePicker/timePickerList.jsx +1 -1
  239. package/dist/source/components/inputs/toggle/toggle.jsx +2 -2
  240. package/dist/source/components/inputs/toggle/toggle.jsx.map +1 -1
  241. package/dist/source/components/layout/appLayout/appLayout.jsx +12 -9
  242. package/dist/source/components/layout/appLayout/appLayout.jsx.map +1 -1
  243. package/dist/source/components/layout/divider/divider.jsx +2 -2
  244. package/dist/source/components/layout/divider/divider.jsx.map +1 -1
  245. package/dist/source/components/layout/grid/grid.jsx +2 -2
  246. package/dist/source/components/layout/grid/grid.jsx.map +1 -1
  247. package/dist/source/components/layout/page/page.jsx +2 -2
  248. package/dist/source/components/layout/page/page.jsx.map +1 -1
  249. package/dist/source/components/layout/pageHeader/pageHeader.jsx +2 -2
  250. package/dist/source/components/layout/pageHeader/pageHeader.jsx.map +1 -1
  251. package/dist/source/components/layout/screenDivider/screenDivider.jsx +2 -2
  252. package/dist/source/components/layout/screenDivider/screenDivider.jsx.map +1 -1
  253. package/dist/source/components/layout/sheet/sheet.jsx +2 -2
  254. package/dist/source/components/layout/sheet/sheet.jsx.map +1 -1
  255. package/dist/source/components/layout/stack/stack.jsx +2 -2
  256. package/dist/source/components/layout/stack/stack.jsx.map +1 -1
  257. package/dist/source/components/navigation/appBar/appBar.jsx +2 -2
  258. package/dist/source/components/navigation/appBar/appBar.jsx.map +1 -1
  259. package/dist/source/components/navigation/bottomBar/bottomBar.jsx +6 -5
  260. package/dist/source/components/navigation/bottomBar/bottomBar.jsx.map +1 -1
  261. package/dist/source/components/navigation/breadcrumbs/breadcrumbs.jsx +2 -2
  262. package/dist/source/components/navigation/breadcrumbs/breadcrumbs.jsx.map +1 -1
  263. package/dist/source/components/navigation/menu/menu.jsx +2 -2
  264. package/dist/source/components/navigation/menu/menu.jsx.map +1 -1
  265. package/dist/source/components/navigation/menu/menuComponent.jsx +1 -1
  266. package/dist/source/components/navigation/menu/menuDivider.jsx +1 -1
  267. package/dist/source/components/navigation/menu/menuFloating.jsx +1 -1
  268. package/dist/source/components/navigation/menu/menuItem.jsx +1 -1
  269. package/dist/source/components/navigation/menu/menuItemIcon.jsx +1 -1
  270. package/dist/source/components/navigation/menu/menuItemText.jsx +1 -1
  271. package/dist/source/components/navigation/menu/menuList.jsx +1 -1
  272. package/dist/source/components/navigation/menu/menuSubmenu.jsx +1 -1
  273. package/dist/source/components/navigation/pagination/pagination.jsx +2 -2
  274. package/dist/source/components/navigation/pagination/pagination.jsx.map +1 -1
  275. package/dist/source/components/navigation/sidebar/sidebar.jsx +6 -5
  276. package/dist/source/components/navigation/sidebar/sidebar.jsx.map +1 -1
  277. package/dist/source/components/navigation/stepper/stepper.jsx +2 -2
  278. package/dist/source/components/navigation/stepper/stepper.jsx.map +1 -1
  279. package/dist/source/components/navigation/tabs/tab/tab.jsx +2 -2
  280. package/dist/source/components/navigation/tabs/tab/tab.jsx.map +1 -1
  281. package/dist/source/components/navigation/tabs/tabs.jsx +2 -2
  282. package/dist/source/components/navigation/tabs/tabs.jsx.map +1 -1
  283. package/package.json +5 -3
  284. package/dist/headless/source/ssr-published.ssr-spec.jsx +0 -35
  285. package/dist/headless/source/ssr-published.ssr-spec.jsx.map +0 -1
  286. package/dist/headless/source/ssr.ssr-spec.jsx +0 -113
  287. package/dist/headless/source/ssr.ssr-spec.jsx.map +0 -1
  288. package/dist/source/ssr-published.ssr-spec.jsx +0 -35
  289. package/dist/source/ssr-published.ssr-spec.jsx.map +0 -1
  290. package/dist/source/ssr.ssr-spec.jsx +0 -113
  291. package/dist/source/ssr.ssr-spec.jsx.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"sidebar.js","sources":["../../../../src/components/navigation/sidebar/sidebar.tsx"],"sourcesContent":["import { type JSX, For, Show, mergeProps, splitProps } from \"solid-js\";\nimport { Dynamic } from \"solid-js/web\";\nimport cn from \"clsx\";\nimport { Ripple, type RippleActionsRef } from \"../../base/ripple\";\nimport { Icon } from \"../../base/icon\";\nimport { createControllableState } from \"../../../primitives/createControllableState\";\nimport { mergeRefs, type Ref } from \"../../../primitives/mergeRefs\";\n\nexport type SidebarVariant = \"compact\" | \"default\" | \"compactMini\";\n\nexport interface SidebarMenuItemProps extends Omit<JSX.HTMLAttributes<HTMLDivElement>, \"title\"> {\n icon?: JSX.Element;\n title: string;\n isActive?: boolean;\n onClick?: JSX.EventHandlerUnion<HTMLDivElement, MouseEvent>;\n as?: string | undefined;\n href?: string | undefined;\n variant?: SidebarVariant | undefined;\n}\n\nexport interface SidebarProps extends JSX.HTMLAttributes<HTMLElement> {\n variant?: SidebarVariant;\n menuItems?: SidebarMenuItemProps[];\n /** Controlled index of the active menu item. */\n activeItem?: number | null;\n /** Default active index (uncontrolled). */\n defaultActiveItem?: number | null;\n /** Called with the index of the activated item. */\n onActiveItemChange?: (index: number) => void;\n /** Render a built-in toggle that collapses the rail to an icon-only mini rail. */\n collapsible?: boolean;\n /** Controlled collapsed state. */\n collapsed?: boolean;\n /** Initial collapsed state (uncontrolled). */\n defaultCollapsed?: boolean;\n /** Called whenever the collapsed state changes. */\n onCollapsedChange?: (collapsed: boolean) => void;\n /** Accessible label for the built-in collapse toggle. */\n collapseToggleAriaLabel?: string;\n ref?: Ref<HTMLElement>;\n}\n\nfunction NavItem(props: SidebarMenuItemProps): JSX.Element {\n const [local, rest] = splitProps(props, [\"isActive\", \"icon\", \"title\", \"as\", \"href\", \"variant\"]);\n let rippleActions: RippleActionsRef | undefined;\n\n const onPointerDown = (event: PointerEvent): void => {\n rippleActions?.onRipple(event);\n };\n\n return (\n <Dynamic\n component={local.as ?? \"div\"}\n href={local.href}\n role=\"menuitem\"\n class={cn(\"sidebar__nav__item\", \"smwb-nav-item\", local.variant, { active: local.isActive })}\n onPointerDown={onPointerDown}\n {...rest}\n >\n <Show when={local.icon}>\n <span class=\"smwb-nav-item__icon\">{local.icon}</span>\n </Show>\n <Show when={local.title}>\n <span class=\"smwb-nav-item__title\">{local.title}</span>\n </Show>\n <Ripple actionRef={(actions) => (rippleActions = actions)} />\n </Dynamic>\n );\n}\n\nexport function Sidebar(props: SidebarProps): JSX.Element {\n const merged = mergeProps(\n {\n variant: \"default\" as SidebarVariant,\n defaultActiveItem: null as number | null,\n collapsible: false,\n defaultCollapsed: false,\n collapseToggleAriaLabel: \"Toggle navigation\",\n },\n props\n );\n const [local, rest] = splitProps(merged, [\n \"class\",\n \"variant\",\n \"menuItems\",\n \"activeItem\",\n \"defaultActiveItem\",\n \"onActiveItemChange\",\n \"collapsible\",\n \"collapsed\",\n \"defaultCollapsed\",\n \"onCollapsedChange\",\n \"collapseToggleAriaLabel\",\n \"ref\",\n ]);\n\n const [activeItem, setActiveItem] = createControllableState<number | null>({\n value: () => local.activeItem,\n defaultValue: local.defaultActiveItem,\n onChange: (next) => {\n if (next !== null) local.onActiveItemChange?.(next);\n },\n });\n\n const [collapsed, setCollapsed] = createControllableState<boolean>({\n value: () => local.collapsed,\n defaultValue: local.defaultCollapsed,\n onChange: (next) => local.onCollapsedChange?.(next),\n });\n\n // When collapsed the rail always shows the icon-only mini variant.\n const effectiveVariant = (): SidebarVariant => (local.collapsible && collapsed() ? \"compactMini\" : local.variant);\n\n return (\n <aside\n {...rest}\n ref={mergeRefs(local.ref)}\n class={cn(\"smwb-sidebar\", local.class, `smwb-${effectiveVariant()}`, {\n \"smwb-sidebar_collapsible\": local.collapsible,\n \"smwb-sidebar_collapsed\": local.collapsible && collapsed(),\n })}\n role=\"menubar\"\n >\n <Show when={local.collapsible}>\n <div class=\"smwb-sidebar__collapse\">\n <button\n type=\"button\"\n class=\"smwb-sidebar__collapse-btn\"\n aria-label={local.collapseToggleAriaLabel}\n aria-expanded={!collapsed()}\n onClick={() => setCollapsed(!collapsed())}\n >\n <Icon name={collapsed() ? \"chevron_right\" : \"chevron_left\"} size={20} />\n </button>\n </div>\n </Show>\n <nav class=\"smwb-sidebar__nav\">\n <For each={local.menuItems ?? []}>\n {(item, idx) => (\n <NavItem\n as={item.as}\n isActive={activeItem() === idx()}\n onClick={(event) => {\n setActiveItem(idx());\n if (typeof item.onClick === \"function\") item.onClick(event);\n }}\n icon={item.icon}\n title={item.title}\n href={item.href}\n variant={effectiveVariant()}\n />\n )}\n </For>\n </nav>\n </aside>\n );\n}\n\nexport default Sidebar;\n"],"names":["NavItem","props","local","rest","splitProps","rippleActions","_$createComponent","Dynamic","_$mergeProps","component","as","href","role","cn","variant","active","isActive","onPointerDown","event","onRipple","children","Show","when","icon","_el$","_tmpl$","_$insert","title","_el$2","_tmpl$2","Ripple","actionRef","actions","Sidebar","merged","mergeProps","defaultActiveItem","collapsible","defaultCollapsed","collapseToggleAriaLabel","activeItem","setActiveItem","createControllableState","value","defaultValue","onChange","next","onActiveItemChange","collapsed","setCollapsed","onCollapsedChange","effectiveVariant","_el$3","_tmpl$4","_el$6","firstChild","_ref$","mergeRefs","ref","_$use","_$spread","class","_el$4","_tmpl$3","_el$5","$$click","Icon","name","size","_$effect","_p$","_v$","_v$2","e","_$setAttribute","t","undefined","For","each","menuItems","item","idx","onClick","_$delegateEvents"],"mappings":"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"}
1
+ {"version":3,"file":"sidebar.js","sources":["../../../../src/components/navigation/sidebar/sidebar.tsx"],"sourcesContent":["import { type JSX, For, Show, children, mergeProps, splitProps } from \"solid-js\";\nimport { Dynamic } from \"solid-js/web\";\nimport cn from \"clsx\";\nimport { Ripple, type RippleActionsRef } from \"../../base/ripple\";\nimport { Icon } from \"../../base/icon\";\nimport { createControllableState } from \"../../../primitives/createControllableState\";\nimport { mergeRefs, type Ref } from \"../../../primitives/mergeRefs\";\n\nexport type SidebarVariant = \"compact\" | \"default\" | \"compactMini\";\n\nexport interface SidebarMenuItemProps extends Omit<JSX.HTMLAttributes<HTMLDivElement>, \"title\"> {\n icon?: JSX.Element;\n title: string;\n isActive?: boolean;\n onClick?: JSX.EventHandlerUnion<HTMLDivElement, MouseEvent>;\n as?: string | undefined;\n href?: string | undefined;\n variant?: SidebarVariant | undefined;\n}\n\nexport interface SidebarProps extends JSX.HTMLAttributes<HTMLElement> {\n variant?: SidebarVariant;\n menuItems?: SidebarMenuItemProps[];\n /** Controlled index of the active menu item. */\n activeItem?: number | null;\n /** Default active index (uncontrolled). */\n defaultActiveItem?: number | null;\n /** Called with the index of the activated item. */\n onActiveItemChange?: (index: number) => void;\n /** Render a built-in toggle that collapses the rail to an icon-only mini rail. */\n collapsible?: boolean;\n /** Controlled collapsed state. */\n collapsed?: boolean;\n /** Initial collapsed state (uncontrolled). */\n defaultCollapsed?: boolean;\n /** Called whenever the collapsed state changes. */\n onCollapsedChange?: (collapsed: boolean) => void;\n /** Accessible label for the built-in collapse toggle. */\n collapseToggleAriaLabel?: string;\n ref?: Ref<HTMLElement>;\n}\n\nfunction NavItem(props: SidebarMenuItemProps): JSX.Element {\n const [local, rest] = splitProps(props, [\"isActive\", \"icon\", \"title\", \"as\", \"href\", \"variant\"]);\n let rippleActions: RippleActionsRef | undefined;\n\n // Resolve the icon in THIS item's context. A pre-created element passed via\n // menuItems is keyed at the consumer's position but rendered here, so under\n // SSR the hydration walk can't find it; children() realigns the key sequence.\n const icon = children(() => local.icon);\n\n const onPointerDown = (event: PointerEvent): void => {\n rippleActions?.onRipple(event);\n };\n\n return (\n <Dynamic\n component={local.as ?? \"div\"}\n href={local.href}\n role=\"menuitem\"\n class={cn(\"sidebar__nav__item\", \"smwb-nav-item\", local.variant, { active: local.isActive })}\n onPointerDown={onPointerDown}\n {...rest}\n >\n <Show when={icon()}>\n <span class=\"smwb-nav-item__icon\">{icon()}</span>\n </Show>\n <Show when={local.title}>\n <span class=\"smwb-nav-item__title\">{local.title}</span>\n </Show>\n <Ripple actionRef={(actions) => (rippleActions = actions)} />\n </Dynamic>\n );\n}\n\nexport function Sidebar(props: SidebarProps): JSX.Element {\n const merged = mergeProps(\n {\n variant: \"default\" as SidebarVariant,\n defaultActiveItem: null as number | null,\n collapsible: false,\n defaultCollapsed: false,\n collapseToggleAriaLabel: \"Toggle navigation\",\n },\n props\n );\n const [local, rest] = splitProps(merged, [\n \"class\",\n \"variant\",\n \"menuItems\",\n \"activeItem\",\n \"defaultActiveItem\",\n \"onActiveItemChange\",\n \"collapsible\",\n \"collapsed\",\n \"defaultCollapsed\",\n \"onCollapsedChange\",\n \"collapseToggleAriaLabel\",\n \"ref\",\n ]);\n\n const [activeItem, setActiveItem] = createControllableState<number | null>({\n value: () => local.activeItem,\n defaultValue: local.defaultActiveItem,\n onChange: (next) => {\n if (next !== null) local.onActiveItemChange?.(next);\n },\n });\n\n const [collapsed, setCollapsed] = createControllableState<boolean>({\n value: () => local.collapsed,\n defaultValue: local.defaultCollapsed,\n onChange: (next) => local.onCollapsedChange?.(next),\n });\n\n // When collapsed the rail always shows the icon-only mini variant.\n const effectiveVariant = (): SidebarVariant => (local.collapsible && collapsed() ? \"compactMini\" : local.variant);\n\n return (\n <aside\n {...rest}\n ref={mergeRefs(local.ref)}\n class={cn(\"smwb-sidebar\", local.class, `smwb-${effectiveVariant()}`, {\n \"smwb-sidebar_collapsible\": local.collapsible,\n \"smwb-sidebar_collapsed\": local.collapsible && collapsed(),\n })}\n role=\"menubar\"\n >\n <Show when={local.collapsible}>\n <div class=\"smwb-sidebar__collapse\">\n <button\n type=\"button\"\n class=\"smwb-sidebar__collapse-btn\"\n aria-label={local.collapseToggleAriaLabel}\n aria-expanded={!collapsed()}\n onClick={() => setCollapsed(!collapsed())}\n >\n <Icon name={collapsed() ? \"chevron_right\" : \"chevron_left\"} size={20} />\n </button>\n </div>\n </Show>\n <nav class=\"smwb-sidebar__nav\">\n <For each={local.menuItems ?? []}>\n {(item, idx) => (\n <NavItem\n as={item.as}\n isActive={activeItem() === idx()}\n onClick={(event) => {\n setActiveItem(idx());\n if (typeof item.onClick === \"function\") item.onClick(event);\n }}\n icon={item.icon}\n title={item.title}\n href={item.href}\n variant={effectiveVariant()}\n />\n )}\n </For>\n </nav>\n </aside>\n );\n}\n\nexport default Sidebar;\n"],"names":["NavItem","props","local","rest","splitProps","rippleActions","icon","children","_$createComponent","Dynamic","_$mergeProps","component","as","href","role","cn","variant","active","isActive","onPointerDown","event","onRipple","Show","when","_el$","_tmpl$","_$insert","title","_el$2","_tmpl$2","Ripple","actionRef","actions","Sidebar","merged","mergeProps","defaultActiveItem","collapsible","defaultCollapsed","collapseToggleAriaLabel","activeItem","setActiveItem","createControllableState","value","defaultValue","onChange","next","onActiveItemChange","collapsed","setCollapsed","onCollapsedChange","effectiveVariant","_el$3","_tmpl$4","_el$6","firstChild","_ref$","mergeRefs","ref","_$use","_$spread","class","_el$4","_tmpl$3","_el$5","$$click","Icon","name","size","_$effect","_p$","_v$","_v$2","e","_$setAttribute","t","undefined","For","each","menuItems","item","idx","onClick","_$delegateEvents"],"mappings":"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"}
@@ -1,76 +1,76 @@
1
- import { use as k, spread as S, mergeProps as T, insert as a, createComponent as s, setAttribute as c, effect as W, template as o, delegateEvents as A } from "solid-js/web";
2
- import { mergeProps as L, splitProps as P, Show as n } from "solid-js";
3
- import x from "clsx";
4
- import { createControllableState as H } from "../../../primitives/createControllableState.js";
5
- import { createId as I } from "../../../primitives/createId.js";
6
- import { mergeRefs as j } from "../../../primitives/mergeRefs.js";
7
- import { Icon as z } from "../../base/icon/icon.js";
8
- var E = /* @__PURE__ */ o("<div class=smwb-app-layout__header>"), R = /* @__PURE__ */ o("<div class=smwb-app-layout__collapse>"), V = /* @__PURE__ */ o("<aside class=smwb-app-layout__sidebar>"), q = /* @__PURE__ */ o("<div class=smwb-app-layout__footer>"), B = /* @__PURE__ */ o("<div><div class=smwb-app-layout__body><div class=smwb-app-layout__content>"), D = /* @__PURE__ */ o("<button type=button class=smwb-app-layout__collapse-btn>");
9
- const y = (d) => typeof d == "number" ? `${d}px` : d;
10
- function Q(d) {
11
- const v = L({
1
+ import { use as A, spread as L, mergeProps as P, insert as t, createComponent as s, setAttribute as c, effect as x, template as o, delegateEvents as H } from "solid-js/web";
2
+ import { mergeProps as I, splitProps as j, children as m, Show as p } from "solid-js";
3
+ import z from "clsx";
4
+ import { createControllableState as E } from "../../../primitives/createControllableState.js";
5
+ import { createId as R } from "../../../primitives/createId.js";
6
+ import { mergeRefs as V } from "../../../primitives/mergeRefs.js";
7
+ import { Icon as q } from "../../base/icon/icon.js";
8
+ var B = /* @__PURE__ */ o("<div class=smwb-app-layout__header>"), D = /* @__PURE__ */ o("<div class=smwb-app-layout__collapse>"), F = /* @__PURE__ */ o("<aside class=smwb-app-layout__sidebar>"), G = /* @__PURE__ */ o("<div class=smwb-app-layout__footer>"), J = /* @__PURE__ */ o("<div><div class=smwb-app-layout__body><div class=smwb-app-layout__content>"), K = /* @__PURE__ */ o("<button type=button class=smwb-app-layout__collapse-btn>");
9
+ const $ = (d) => typeof d == "number" ? `${d}px` : d;
10
+ function Z(d) {
11
+ const S = I({
12
12
  sidebarWidth: 260,
13
13
  defaultSidebarCollapsed: !1,
14
14
  collapsible: !1,
15
15
  collapseToggleAriaLabel: "Toggle navigation",
16
16
  sidebarCollapsedWidth: 72,
17
17
  stickyHeader: !0
18
- }, d), [e, C] = P(v, ["header", "sidebar", "footer", "sidebarWidth", "sidebarCollapsed", "defaultSidebarCollapsed", "onSidebarCollapsedChange", "collapsible", "collapseToggle", "collapseToggleAriaLabel", "sidebarCollapsedWidth", "stickyHeader", "class", "style", "children", "ref"]), [i, w] = H({
18
+ }, d), [e, k] = j(S, ["header", "sidebar", "footer", "sidebarWidth", "sidebarCollapsed", "defaultSidebarCollapsed", "onSidebarCollapsedChange", "collapsible", "collapseToggle", "collapseToggleAriaLabel", "sidebarCollapsedWidth", "stickyHeader", "class", "style", "children", "ref"]), [i, T] = E({
19
19
  value: () => e.sidebarCollapsed,
20
20
  defaultValue: e.defaultSidebarCollapsed,
21
- onChange: (t) => e.onSidebarCollapsedChange?.(t)
22
- }), m = I(), $ = () => ({
23
- "--smui-app-sidebar-w": i() ? y(e.sidebarCollapsedWidth) : y(e.sidebarWidth),
21
+ onChange: (a) => e.onSidebarCollapsedChange?.(a)
22
+ }), g = R(), f = m(() => e.header), h = m(() => e.sidebar), _ = m(() => e.footer), W = () => ({
23
+ "--smui-app-sidebar-w": i() ? $(e.sidebarCollapsedWidth) : $(e.sidebarWidth),
24
24
  ...typeof e.style == "object" && e.style ? e.style : {}
25
25
  });
26
26
  return (() => {
27
- var t = B(), u = t.firstChild, b = u.firstChild, g = j(e.ref);
28
- return typeof g == "function" && k(g, t), S(t, T(C, {
27
+ var a = J(), u = a.firstChild, b = u.firstChild, y = V(e.ref);
28
+ return typeof y == "function" && A(y, a), L(a, P(k, {
29
29
  "data-testid": "app-layout",
30
30
  get class() {
31
- return x("smwb-app-layout", {
31
+ return z("smwb-app-layout", {
32
32
  "smwb-app-layout_sticky-header": e.stickyHeader,
33
33
  "smwb-app-layout_collapsed": i()
34
34
  }, e.class);
35
35
  },
36
36
  get style() {
37
- return $();
37
+ return W();
38
38
  }
39
- }), !1, !0), a(t, s(n, {
39
+ }), !1, !0), t(a, s(p, {
40
40
  get when() {
41
- return e.header;
41
+ return f();
42
42
  },
43
43
  get children() {
44
- var l = E();
45
- return a(l, () => e.header), l;
44
+ var l = B();
45
+ return t(l, f), l;
46
46
  }
47
- }), u), a(u, s(n, {
47
+ }), u), t(u, s(p, {
48
48
  get when() {
49
- return e.sidebar;
49
+ return h();
50
50
  },
51
51
  get children() {
52
- var l = V();
53
- return c(l, "id", m), a(l, s(n, {
52
+ var l = F();
53
+ return c(l, "id", g), t(l, s(p, {
54
54
  get when() {
55
55
  return e.collapsible;
56
56
  },
57
57
  get children() {
58
- var f = R();
59
- return a(f, s(n, {
58
+ var v = D();
59
+ return t(v, s(p, {
60
60
  get when() {
61
61
  return e.collapseToggle;
62
62
  },
63
63
  get fallback() {
64
64
  return (() => {
65
- var r = D();
66
- return r.$$click = () => w(!i()), c(r, "aria-controls", m), a(r, s(z, {
65
+ var r = K();
66
+ return r.$$click = () => T(!i()), c(r, "aria-controls", g), t(r, s(q, {
67
67
  get name() {
68
68
  return i() ? "chevron_right" : "chevron_left";
69
69
  },
70
70
  size: 20
71
- })), W((p) => {
72
- var h = e.collapseToggleAriaLabel, _ = !i();
73
- return h !== p.e && c(r, "aria-label", p.e = h), _ !== p.t && c(r, "aria-expanded", p.t = _), p;
71
+ })), x((n) => {
72
+ var C = e.collapseToggleAriaLabel, w = !i();
73
+ return C !== n.e && c(r, "aria-label", n.e = C), w !== n.t && c(r, "aria-expanded", n.t = w), n;
74
74
  }, {
75
75
  e: void 0,
76
76
  t: void 0
@@ -80,23 +80,23 @@ function Q(d) {
80
80
  get children() {
81
81
  return e.collapseToggle;
82
82
  }
83
- })), f;
83
+ })), v;
84
84
  }
85
- }), null), a(l, () => e.sidebar, null), l;
85
+ }), null), t(l, h, null), l;
86
86
  }
87
- }), b), a(b, () => e.children, null), a(b, s(n, {
87
+ }), b), t(b, () => e.children, null), t(b, s(p, {
88
88
  get when() {
89
- return e.footer;
89
+ return _();
90
90
  },
91
91
  get children() {
92
- var l = q();
93
- return a(l, () => e.footer), l;
92
+ var l = G();
93
+ return t(l, _), l;
94
94
  }
95
- }), null), t;
95
+ }), null), a;
96
96
  })();
97
97
  }
98
- A(["click"]);
98
+ H(["click"]);
99
99
  export {
100
- Q as AppLayout
100
+ Z as AppLayout
101
101
  };
102
102
  //# sourceMappingURL=appLayout.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"appLayout.js","sources":["../../../../../src/components/layout/appLayout/appLayout.tsx"],"sourcesContent":["import { type JSX, type ParentProps, Show, mergeProps, splitProps } from \"solid-js\";\nimport cn from \"clsx\";\nimport { Icon } from \"../../base/icon\";\nimport { createControllableState } from \"../../../primitives/createControllableState\";\nimport { createId } from \"../../../primitives/createId\";\nimport { mergeRefs, type Ref } from \"../../../primitives/mergeRefs\";\n\nexport interface AppLayoutProps extends JSX.HTMLAttributes<HTMLDivElement> {\n /** Top bar slot (e.g. <AppBar />). Spans full width. */\n header?: JSX.Element;\n /** Side navigation slot (e.g. <Sidebar />). */\n sidebar?: JSX.Element;\n /** Footer slot, below the content. */\n footer?: JSX.Element;\n /** Sidebar width (px or any CSS length). */\n sidebarWidth?: number | string;\n /** Controlled collapsed state of the sidebar rail. */\n sidebarCollapsed?: boolean;\n /** Initial collapsed state (uncontrolled). */\n defaultSidebarCollapsed?: boolean;\n /** Called whenever the collapsed state changes. */\n onSidebarCollapsedChange?: (collapsed: boolean) => void;\n /** Renders a built-in toggle button to collapse/expand the sidebar. */\n collapsible?: boolean;\n /** Custom toggle node replacing the default icon button. */\n collapseToggle?: JSX.Element;\n /** Accessible label for the default toggle button. */\n collapseToggleAriaLabel?: string;\n /** Sidebar collapsed width. */\n sidebarCollapsedWidth?: number | string;\n /** Keep the header pinned while content scrolls. */\n stickyHeader?: boolean;\n ref?: Ref<HTMLDivElement>;\n}\n\nconst len = (v: number | string): string => (typeof v === \"number\" ? `${v}px` : v);\n\nexport function AppLayout(props: ParentProps<AppLayoutProps>): JSX.Element {\n const merged = mergeProps(\n {\n sidebarWidth: 260 as number | string,\n defaultSidebarCollapsed: false,\n collapsible: false,\n collapseToggleAriaLabel: \"Toggle navigation\",\n sidebarCollapsedWidth: 72 as number | string,\n stickyHeader: true,\n },\n props\n );\n const [local, rest] = splitProps(merged, [\n \"header\",\n \"sidebar\",\n \"footer\",\n \"sidebarWidth\",\n \"sidebarCollapsed\",\n \"defaultSidebarCollapsed\",\n \"onSidebarCollapsedChange\",\n \"collapsible\",\n \"collapseToggle\",\n \"collapseToggleAriaLabel\",\n \"sidebarCollapsedWidth\",\n \"stickyHeader\",\n \"class\",\n \"style\",\n \"children\",\n \"ref\",\n ]);\n\n const [collapsed, setCollapsed] = createControllableState<boolean>({\n value: () => local.sidebarCollapsed,\n defaultValue: local.defaultSidebarCollapsed,\n onChange: (next) => local.onSidebarCollapsedChange?.(next),\n });\n\n const sidebarId = createId();\n\n const style = (): JSX.CSSProperties => ({\n \"--smui-app-sidebar-w\": collapsed() ? len(local.sidebarCollapsedWidth) : len(local.sidebarWidth),\n ...(typeof local.style === \"object\" && local.style ? local.style : {}),\n });\n\n return (\n <div\n {...rest}\n ref={mergeRefs(local.ref)}\n data-testid=\"app-layout\"\n class={cn(\n \"smwb-app-layout\",\n { \"smwb-app-layout_sticky-header\": local.stickyHeader, \"smwb-app-layout_collapsed\": collapsed() },\n local.class\n )}\n style={style()}\n >\n <Show when={local.header}>\n <div class=\"smwb-app-layout__header\">{local.header}</div>\n </Show>\n <div class=\"smwb-app-layout__body\">\n <Show when={local.sidebar}>\n <aside id={sidebarId} class=\"smwb-app-layout__sidebar\">\n <Show when={local.collapsible}>\n <div class=\"smwb-app-layout__collapse\">\n <Show\n when={local.collapseToggle}\n fallback={\n <button\n type=\"button\"\n class=\"smwb-app-layout__collapse-btn\"\n aria-label={local.collapseToggleAriaLabel}\n aria-expanded={!collapsed()}\n aria-controls={sidebarId}\n onClick={() => setCollapsed(!collapsed())}\n >\n <Icon name={collapsed() ? \"chevron_right\" : \"chevron_left\"} size={20} />\n </button>\n }\n >\n {local.collapseToggle}\n </Show>\n </div>\n </Show>\n {local.sidebar}\n </aside>\n </Show>\n <div class=\"smwb-app-layout__content\">\n {local.children}\n <Show when={local.footer}>\n <div class=\"smwb-app-layout__footer\">{local.footer}</div>\n </Show>\n </div>\n </div>\n </div>\n );\n}\n\nexport default AppLayout;\n"],"names":["len","v","AppLayout","props","merged","mergeProps","sidebarWidth","defaultSidebarCollapsed","collapsible","collapseToggleAriaLabel","sidebarCollapsedWidth","stickyHeader","local","rest","splitProps","collapsed","setCollapsed","createControllableState","value","sidebarCollapsed","defaultValue","onChange","next","onSidebarCollapsedChange","sidebarId","createId","style","_el$","_tmpl$5","_el$3","firstChild","_el$6","_ref$","mergeRefs","ref","_$use","_$spread","_$mergeProps","cn","class","_$insert","_$createComponent","Show","when","header","children","_el$2","_tmpl$","sidebar","_el$4","_tmpl$3","_$setAttribute","_el$5","_tmpl$2","collapseToggle","fallback","_el$8","_tmpl$6","$$click","Icon","name","size","_$effect","_p$","_v$","_v$2","e","t","undefined","footer","_el$7","_tmpl$4","_$delegateEvents"],"mappings":"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"}
1
+ {"version":3,"file":"appLayout.js","sources":["../../../../../src/components/layout/appLayout/appLayout.tsx"],"sourcesContent":["import { type JSX, type ParentProps, Show, children, mergeProps, splitProps } from \"solid-js\";\nimport cn from \"clsx\";\nimport { Icon } from \"../../base/icon\";\nimport { createControllableState } from \"../../../primitives/createControllableState\";\nimport { createId } from \"../../../primitives/createId\";\nimport { mergeRefs, type Ref } from \"../../../primitives/mergeRefs\";\n\nexport interface AppLayoutProps extends JSX.HTMLAttributes<HTMLDivElement> {\n /** Top bar slot (e.g. <AppBar />). Spans full width. */\n header?: JSX.Element;\n /** Side navigation slot (e.g. <Sidebar />). */\n sidebar?: JSX.Element;\n /** Footer slot, below the content. */\n footer?: JSX.Element;\n /** Sidebar width (px or any CSS length). */\n sidebarWidth?: number | string;\n /** Controlled collapsed state of the sidebar rail. */\n sidebarCollapsed?: boolean;\n /** Initial collapsed state (uncontrolled). */\n defaultSidebarCollapsed?: boolean;\n /** Called whenever the collapsed state changes. */\n onSidebarCollapsedChange?: (collapsed: boolean) => void;\n /** Renders a built-in toggle button to collapse/expand the sidebar. */\n collapsible?: boolean;\n /** Custom toggle node replacing the default icon button. */\n collapseToggle?: JSX.Element;\n /** Accessible label for the default toggle button. */\n collapseToggleAriaLabel?: string;\n /** Sidebar collapsed width. */\n sidebarCollapsedWidth?: number | string;\n /** Keep the header pinned while content scrolls. */\n stickyHeader?: boolean;\n ref?: Ref<HTMLDivElement>;\n}\n\nconst len = (v: number | string): string => (typeof v === \"number\" ? `${v}px` : v);\n\nexport function AppLayout(props: ParentProps<AppLayoutProps>): JSX.Element {\n const merged = mergeProps(\n {\n sidebarWidth: 260 as number | string,\n defaultSidebarCollapsed: false,\n collapsible: false,\n collapseToggleAriaLabel: \"Toggle navigation\",\n sidebarCollapsedWidth: 72 as number | string,\n stickyHeader: true,\n },\n props\n );\n const [local, rest] = splitProps(merged, [\n \"header\",\n \"sidebar\",\n \"footer\",\n \"sidebarWidth\",\n \"sidebarCollapsed\",\n \"defaultSidebarCollapsed\",\n \"onSidebarCollapsedChange\",\n \"collapsible\",\n \"collapseToggle\",\n \"collapseToggleAriaLabel\",\n \"sidebarCollapsedWidth\",\n \"stickyHeader\",\n \"class\",\n \"style\",\n \"children\",\n \"ref\",\n ]);\n\n const [collapsed, setCollapsed] = createControllableState<boolean>({\n value: () => local.sidebarCollapsed,\n defaultValue: local.defaultSidebarCollapsed,\n onChange: (next) => local.onSidebarCollapsedChange?.(next),\n });\n\n const sidebarId = createId();\n\n // Resolve slot props through `children()` so each is created once, in THIS\n // component's reactive context. A pre-created element passed straight into a\n // <Show> gets its hydration key at the caller's position but renders at the\n // Show's, so the hydration walk can't find it (\"Unable to find DOM nodes for\n // key\"). Resolving here keeps the key sequence aligned on server and client.\n const headerSlot = children(() => local.header);\n const sidebarSlot = children(() => local.sidebar);\n const footerSlot = children(() => local.footer);\n\n const style = (): JSX.CSSProperties => ({\n \"--smui-app-sidebar-w\": collapsed() ? len(local.sidebarCollapsedWidth) : len(local.sidebarWidth),\n ...(typeof local.style === \"object\" && local.style ? local.style : {}),\n });\n\n return (\n <div\n {...rest}\n ref={mergeRefs(local.ref)}\n data-testid=\"app-layout\"\n class={cn(\n \"smwb-app-layout\",\n { \"smwb-app-layout_sticky-header\": local.stickyHeader, \"smwb-app-layout_collapsed\": collapsed() },\n local.class\n )}\n style={style()}\n >\n <Show when={headerSlot()}>\n <div class=\"smwb-app-layout__header\">{headerSlot()}</div>\n </Show>\n <div class=\"smwb-app-layout__body\">\n <Show when={sidebarSlot()}>\n <aside id={sidebarId} class=\"smwb-app-layout__sidebar\">\n <Show when={local.collapsible}>\n <div class=\"smwb-app-layout__collapse\">\n <Show\n when={local.collapseToggle}\n fallback={\n <button\n type=\"button\"\n class=\"smwb-app-layout__collapse-btn\"\n aria-label={local.collapseToggleAriaLabel}\n aria-expanded={!collapsed()}\n aria-controls={sidebarId}\n onClick={() => setCollapsed(!collapsed())}\n >\n <Icon name={collapsed() ? \"chevron_right\" : \"chevron_left\"} size={20} />\n </button>\n }\n >\n {local.collapseToggle}\n </Show>\n </div>\n </Show>\n {sidebarSlot()}\n </aside>\n </Show>\n <div class=\"smwb-app-layout__content\">\n {local.children}\n <Show when={footerSlot()}>\n <div class=\"smwb-app-layout__footer\">{footerSlot()}</div>\n </Show>\n </div>\n </div>\n </div>\n );\n}\n\nexport default AppLayout;\n"],"names":["len","v","AppLayout","props","merged","mergeProps","sidebarWidth","defaultSidebarCollapsed","collapsible","collapseToggleAriaLabel","sidebarCollapsedWidth","stickyHeader","local","rest","splitProps","collapsed","setCollapsed","createControllableState","value","sidebarCollapsed","defaultValue","onChange","next","onSidebarCollapsedChange","sidebarId","createId","headerSlot","children","header","sidebarSlot","sidebar","footerSlot","footer","style","_el$","_tmpl$5","_el$3","firstChild","_el$6","_ref$","mergeRefs","ref","_$use","_$spread","_$mergeProps","cn","class","_$insert","_$createComponent","Show","when","_el$2","_tmpl$","_el$4","_tmpl$3","_$setAttribute","_el$5","_tmpl$2","collapseToggle","fallback","_el$8","_tmpl$6","$$click","Icon","name","size","_$effect","_p$","_v$","_v$2","e","t","undefined","_el$7","_tmpl$4","_$delegateEvents"],"mappings":"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"}
@@ -1,19 +1,20 @@
1
1
  import { use as L, spread as S, mergeProps as M, insert as c, createComponent as t, template as b, Dynamic as V } from "solid-js/web";
2
- import { mergeProps as z, splitProps as O, createSignal as _, For as A, Show as s } from "solid-js";
2
+ import { mergeProps as z, splitProps as O, createSignal as _, For as A, Show as s, children as E } from "solid-js";
3
3
  import P from "clsx";
4
- import { createControllableState as E } from "../../../primitives/createControllableState.js";
4
+ import { createControllableState as F } from "../../../primitives/createControllableState.js";
5
5
  import { mergeRefs as k } from "../../../primitives/mergeRefs.js";
6
6
  import { callHandler as C } from "../../../primitives/callHandler.js";
7
- import { Icon as F } from "../../base/icon/icon.js";
8
- import { Menu as H } from "../menu/menu.js";
9
- import { MenuItem as T } from "../menu/menuItem.js";
10
- import { MenuItemIcon as j } from "../menu/menuItemIcon.js";
11
- import { MenuItemText as q } from "../menu/menuItemText.js";
12
- import { Ripple as G } from "../../base/ripple/ripple.js";
13
- var J = /* @__PURE__ */ b("<span class=smwb-bottom-bar__item-icon>"), K = /* @__PURE__ */ b("<span class=smwb-bottom-bar__item-title>"), N = /* @__PURE__ */ b("<nav><div class=smwb-bottom-bar__nav role=menubar>");
7
+ import { Icon as H } from "../../base/icon/icon.js";
8
+ import { Menu as T } from "../menu/menu.js";
9
+ import { MenuItem as j } from "../menu/menuItem.js";
10
+ import { MenuItemIcon as q } from "../menu/menuItemIcon.js";
11
+ import { MenuItemText as G } from "../menu/menuItemText.js";
12
+ import { Ripple as J } from "../../base/ripple/ripple.js";
13
+ var K = /* @__PURE__ */ b("<span class=smwb-bottom-bar__item-icon>"), N = /* @__PURE__ */ b("<span class=smwb-bottom-bar__item-title>"), Q = /* @__PURE__ */ b("<nav><div class=smwb-bottom-bar__nav role=menubar>");
14
14
  function $(p) {
15
15
  const [o, n] = O(p, ["isActive", "icon", "title", "as", "href", "ref"]);
16
16
  let u;
17
+ const i = E(() => o.icon);
17
18
  return t(V, M({
18
19
  get component() {
19
20
  return o.as ?? "div";
@@ -38,41 +39,41 @@ function $(p) {
38
39
  get children() {
39
40
  return [t(s, {
40
41
  get when() {
41
- return o.icon;
42
+ return i();
42
43
  },
43
44
  get children() {
44
- var r = J();
45
- return c(r, () => o.icon), r;
45
+ var r = K();
46
+ return c(r, i), r;
46
47
  }
47
48
  }), t(s, {
48
49
  get when() {
49
50
  return o.title;
50
51
  },
51
52
  get children() {
52
- var r = K();
53
+ var r = N();
53
54
  return c(r, () => o.title), r;
54
55
  }
55
- }), t(G, {
56
+ }), t(J, {
56
57
  actionRef: (r) => u = r
57
58
  })];
58
59
  }
59
60
  }));
60
61
  }
61
- function ie(p) {
62
+ function ae(p) {
62
63
  const o = z({
63
64
  menuItems: [],
64
65
  visibleCount: 4,
65
66
  defaultActiveItem: null,
66
67
  overflowMenuAriaLabel: "More navigation"
67
- }, p), [n, u] = O(o, ["class", "menuItems", "visibleCount", "activeItem", "defaultActiveItem", "onActiveItemChange", "overflowMenuAriaLabel", "ref"]), [i, r] = E({
68
+ }, p), [n, u] = O(o, ["class", "menuItems", "visibleCount", "activeItem", "defaultActiveItem", "onActiveItemChange", "overflowMenuAriaLabel", "ref"]), [i, v] = F({
68
69
  value: () => n.activeItem,
69
70
  defaultValue: n.defaultActiveItem,
70
71
  onChange: (l) => {
71
72
  l !== null && n.onActiveItemChange?.(l);
72
73
  }
73
- }), [a, v] = _(!1), [R, x] = _(null), m = () => Math.max(0, n.visibleCount), y = () => n.menuItems.slice(0, m()), d = () => n.menuItems.slice(m()), h = () => d().length > 0, B = () => h() && i() !== null && i() >= m();
74
+ }), [r, a] = _(!1), [R, x] = _(null), m = () => Math.max(0, n.visibleCount), y = () => n.menuItems.slice(0, m()), d = () => n.menuItems.slice(m()), h = () => d().length > 0, B = () => h() && i() !== null && i() >= m();
74
75
  return (() => {
75
- var l = N(), w = l.firstChild, I = k(n.ref);
76
+ var l = Q(), w = l.firstChild, I = k(n.ref);
76
77
  return typeof I == "function" && L(I, l), S(l, M(u, {
77
78
  get class() {
78
79
  return P("smwb-bottom-bar", n.class);
@@ -90,7 +91,7 @@ function ie(p) {
90
91
  return i() === f();
91
92
  },
92
93
  onClick: (g) => {
93
- r(f()), C(e.onClick, g);
94
+ v(f()), C(e.onClick, g);
94
95
  },
95
96
  get icon() {
96
97
  return e.icon;
@@ -112,9 +113,9 @@ function ie(p) {
112
113
  get isActive() {
113
114
  return B();
114
115
  },
115
- onClick: () => v((e) => !e),
116
+ onClick: () => a((e) => !e),
116
117
  get icon() {
117
- return t(F, {
118
+ return t(H, {
118
119
  name: "menu",
119
120
  size: 24
120
121
  });
@@ -124,7 +125,7 @@ function ie(p) {
124
125
  },
125
126
  "aria-haspopup": "menu",
126
127
  get "aria-expanded"() {
127
- return a();
128
+ return r();
128
129
  }
129
130
  });
130
131
  }
@@ -133,11 +134,11 @@ function ie(p) {
133
134
  return h();
134
135
  },
135
136
  get children() {
136
- return t(H, {
137
+ return t(T, {
137
138
  get isOpen() {
138
- return a();
139
+ return r();
139
140
  },
140
- onClose: () => v(!1),
141
+ onClose: () => a(!1),
141
142
  get anchorElement() {
142
143
  return R();
143
144
  },
@@ -150,7 +151,7 @@ function ie(p) {
150
151
  },
151
152
  children: (e, f) => {
152
153
  const g = () => m() + f();
153
- return t(T, {
154
+ return t(j, {
154
155
  get selected() {
155
156
  return i() === g();
156
157
  },
@@ -158,7 +159,7 @@ function ie(p) {
158
159
  return e.href;
159
160
  },
160
161
  onClick: (D) => {
161
- r(g()), C(e.onClick, D), v(!1);
162
+ v(g()), C(e.onClick, D), a(!1);
162
163
  },
163
164
  get children() {
164
165
  return [t(s, {
@@ -166,13 +167,13 @@ function ie(p) {
166
167
  return e.icon;
167
168
  },
168
169
  get children() {
169
- return t(j, {
170
+ return t(q, {
170
171
  get children() {
171
172
  return e.icon;
172
173
  }
173
174
  });
174
175
  }
175
- }), t(q, {
176
+ }), t(G, {
176
177
  get inset() {
177
178
  return !e.icon;
178
179
  },
@@ -191,6 +192,6 @@ function ie(p) {
191
192
  })();
192
193
  }
193
194
  export {
194
- ie as BottomBar
195
+ ae as BottomBar
195
196
  };
196
197
  //# sourceMappingURL=bottomBar.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"bottomBar.js","sources":["../../../../../src/components/navigation/bottomBar/bottomBar.tsx"],"sourcesContent":["import { type JSX, For, Show, createSignal, mergeProps, splitProps } from \"solid-js\";\nimport { Dynamic } from \"solid-js/web\";\nimport cn from \"clsx\";\nimport { Icon } from \"../../base/icon\";\nimport { Ripple, type RippleActionsRef } from \"../../base/ripple\";\nimport { Menu, MenuItem, MenuItemIcon, MenuItemText } from \"../menu\";\nimport { createControllableState } from \"../../../primitives/createControllableState\";\nimport { mergeRefs, type Ref } from \"../../../primitives/mergeRefs\";\nimport { callHandler } from \"../../../primitives/callHandler\";\nimport type { SidebarMenuItemProps } from \"../sidebar/sidebar\";\n\nexport type BottomBarMenuItemProps = SidebarMenuItemProps;\n\nexport interface BottomBarProps extends JSX.HTMLAttributes<HTMLElement> {\n menuItems?: SidebarMenuItemProps[];\n visibleCount?: number;\n activeItem?: number | null;\n defaultActiveItem?: number | null;\n onActiveItemChange?: (index: number) => void;\n overflowMenuAriaLabel?: string;\n ref?: Ref<HTMLElement>;\n}\n\ninterface BarItemProps extends Omit<JSX.HTMLAttributes<HTMLDivElement>, \"title\"> {\n icon?: JSX.Element;\n title?: string;\n isActive?: boolean;\n as?: string | undefined;\n href?: string | undefined;\n ref?: Ref<HTMLDivElement>;\n}\n\nfunction BarItem(props: BarItemProps): JSX.Element {\n const [local, rest] = splitProps(props, [\"isActive\", \"icon\", \"title\", \"as\", \"href\", \"ref\"]);\n let rippleActions: RippleActionsRef | undefined;\n const onPointerDown = (event: PointerEvent): void => {\n rippleActions?.onRipple(event);\n };\n return (\n <Dynamic\n component={local.as ?? \"div\"}\n ref={mergeRefs(local.ref)}\n href={local.href}\n role=\"menuitem\"\n class={cn(\"smwb-bottom-bar__item\", { \"smwb-bottom-bar__item_active\": local.isActive })}\n onPointerDown={onPointerDown}\n {...rest}\n >\n <Show when={local.icon}>\n <span class=\"smwb-bottom-bar__item-icon\">{local.icon}</span>\n </Show>\n <Show when={local.title}>\n <span class=\"smwb-bottom-bar__item-title\">{local.title}</span>\n </Show>\n <Ripple actionRef={(actions) => (rippleActions = actions)} />\n </Dynamic>\n );\n}\n\nexport function BottomBar(props: BottomBarProps): JSX.Element {\n const merged = mergeProps(\n {\n menuItems: [] as SidebarMenuItemProps[],\n visibleCount: 4,\n defaultActiveItem: null as number | null,\n overflowMenuAriaLabel: \"More navigation\",\n },\n props\n );\n const [local, rest] = splitProps(merged, [\n \"class\",\n \"menuItems\",\n \"visibleCount\",\n \"activeItem\",\n \"defaultActiveItem\",\n \"onActiveItemChange\",\n \"overflowMenuAriaLabel\",\n \"ref\",\n ]);\n\n const [activeItem, setActiveItem] = createControllableState<number | null>({\n value: () => local.activeItem,\n defaultValue: local.defaultActiveItem,\n onChange: (next) => {\n if (next !== null) local.onActiveItemChange?.(next);\n },\n });\n const [overflowOpen, setOverflowOpen] = createSignal(false);\n const [overflowAnchor, setOverflowAnchor] = createSignal<HTMLElement | null>(null);\n\n const safeVisibleCount = (): number => Math.max(0, local.visibleCount);\n const visibleItems = (): SidebarMenuItemProps[] => local.menuItems.slice(0, safeVisibleCount());\n const overflowItems = (): SidebarMenuItemProps[] => local.menuItems.slice(safeVisibleCount());\n const hasOverflow = (): boolean => overflowItems().length > 0;\n const overflowActive = (): boolean =>\n hasOverflow() && activeItem() !== null && (activeItem() as number) >= safeVisibleCount();\n\n return (\n <nav {...rest} ref={mergeRefs(local.ref)} class={cn(\"smwb-bottom-bar\", local.class)} role=\"navigation\">\n <div class=\"smwb-bottom-bar__nav\" role=\"menubar\">\n <For each={visibleItems()}>\n {(item, idx) => (\n <BarItem\n as={item.as}\n isActive={activeItem() === idx()}\n onClick={(event) => {\n setActiveItem(idx());\n callHandler(item.onClick, event);\n }}\n icon={item.icon}\n title={item.title}\n href={item.href}\n />\n )}\n </For>\n <Show when={hasOverflow()}>\n <BarItem\n ref={(el) => setOverflowAnchor(el as HTMLElement)}\n isActive={overflowActive()}\n onClick={() => setOverflowOpen((prev) => !prev)}\n icon={<Icon name=\"menu\" size={24} />}\n aria-label={local.overflowMenuAriaLabel}\n aria-haspopup=\"menu\"\n aria-expanded={overflowOpen()}\n />\n </Show>\n </div>\n <Show when={hasOverflow()}>\n <Menu\n isOpen={overflowOpen()}\n onClose={() => setOverflowOpen(false)}\n anchorElement={overflowAnchor()}\n placement=\"top\"\n dense\n >\n <For each={overflowItems()}>\n {(item, idx) => {\n const itemIndex = (): number => safeVisibleCount() + idx();\n return (\n <MenuItem\n selected={activeItem() === itemIndex()}\n href={item.href}\n onClick={(event) => {\n setActiveItem(itemIndex());\n callHandler(\n item.onClick,\n event as unknown as MouseEvent & { currentTarget: HTMLDivElement; target: Element }\n );\n setOverflowOpen(false);\n }}\n >\n <Show when={item.icon}>\n <MenuItemIcon>{item.icon}</MenuItemIcon>\n </Show>\n <MenuItemText inset={!item.icon}>{item.title}</MenuItemText>\n </MenuItem>\n );\n }}\n </For>\n </Menu>\n </Show>\n </nav>\n );\n}\n\nexport default BottomBar;\n"],"names":["BarItem","props","local","rest","splitProps","rippleActions","_$createComponent","Dynamic","_$mergeProps","component","as","ref","r$","_ref$","mergeRefs","href","role","cn","isActive","onPointerDown","event","onRipple","children","Show","when","icon","_el$","_tmpl$","_$insert","title","_el$2","_tmpl$2","Ripple","actionRef","actions","BottomBar","merged","mergeProps","menuItems","visibleCount","defaultActiveItem","overflowMenuAriaLabel","activeItem","setActiveItem","createControllableState","value","defaultValue","onChange","next","onActiveItemChange","overflowOpen","setOverflowOpen","createSignal","overflowAnchor","setOverflowAnchor","safeVisibleCount","Math","max","visibleItems","slice","overflowItems","hasOverflow","length","overflowActive","_el$3","_tmpl$3","_el$4","firstChild","_ref$2","_$use","_$spread","class","For","each","item","idx","onClick","callHandler","el","prev","Icon","name","size","Menu","isOpen","onClose","anchorElement","placement","dense","itemIndex","MenuItem","selected","MenuItemIcon","MenuItemText","inset"],"mappings":"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"}
1
+ {"version":3,"file":"bottomBar.js","sources":["../../../../../src/components/navigation/bottomBar/bottomBar.tsx"],"sourcesContent":["import { type JSX, For, Show, children, createSignal, mergeProps, splitProps } from \"solid-js\";\nimport { Dynamic } from \"solid-js/web\";\nimport cn from \"clsx\";\nimport { Icon } from \"../../base/icon\";\nimport { Ripple, type RippleActionsRef } from \"../../base/ripple\";\nimport { Menu, MenuItem, MenuItemIcon, MenuItemText } from \"../menu\";\nimport { createControllableState } from \"../../../primitives/createControllableState\";\nimport { mergeRefs, type Ref } from \"../../../primitives/mergeRefs\";\nimport { callHandler } from \"../../../primitives/callHandler\";\nimport type { SidebarMenuItemProps } from \"../sidebar/sidebar\";\n\nexport type BottomBarMenuItemProps = SidebarMenuItemProps;\n\nexport interface BottomBarProps extends JSX.HTMLAttributes<HTMLElement> {\n menuItems?: SidebarMenuItemProps[];\n visibleCount?: number;\n activeItem?: number | null;\n defaultActiveItem?: number | null;\n onActiveItemChange?: (index: number) => void;\n overflowMenuAriaLabel?: string;\n ref?: Ref<HTMLElement>;\n}\n\ninterface BarItemProps extends Omit<JSX.HTMLAttributes<HTMLDivElement>, \"title\"> {\n icon?: JSX.Element;\n title?: string;\n isActive?: boolean;\n as?: string | undefined;\n href?: string | undefined;\n ref?: Ref<HTMLDivElement>;\n}\n\nfunction BarItem(props: BarItemProps): JSX.Element {\n const [local, rest] = splitProps(props, [\"isActive\", \"icon\", \"title\", \"as\", \"href\", \"ref\"]);\n let rippleActions: RippleActionsRef | undefined;\n // Resolve the icon in this item's context so a pre-created element passed via\n // menuItems hydrates (see the same fix in Sidebar/AppLayout).\n const icon = children(() => local.icon);\n const onPointerDown = (event: PointerEvent): void => {\n rippleActions?.onRipple(event);\n };\n return (\n <Dynamic\n component={local.as ?? \"div\"}\n ref={mergeRefs(local.ref)}\n href={local.href}\n role=\"menuitem\"\n class={cn(\"smwb-bottom-bar__item\", { \"smwb-bottom-bar__item_active\": local.isActive })}\n onPointerDown={onPointerDown}\n {...rest}\n >\n <Show when={icon()}>\n <span class=\"smwb-bottom-bar__item-icon\">{icon()}</span>\n </Show>\n <Show when={local.title}>\n <span class=\"smwb-bottom-bar__item-title\">{local.title}</span>\n </Show>\n <Ripple actionRef={(actions) => (rippleActions = actions)} />\n </Dynamic>\n );\n}\n\nexport function BottomBar(props: BottomBarProps): JSX.Element {\n const merged = mergeProps(\n {\n menuItems: [] as SidebarMenuItemProps[],\n visibleCount: 4,\n defaultActiveItem: null as number | null,\n overflowMenuAriaLabel: \"More navigation\",\n },\n props\n );\n const [local, rest] = splitProps(merged, [\n \"class\",\n \"menuItems\",\n \"visibleCount\",\n \"activeItem\",\n \"defaultActiveItem\",\n \"onActiveItemChange\",\n \"overflowMenuAriaLabel\",\n \"ref\",\n ]);\n\n const [activeItem, setActiveItem] = createControllableState<number | null>({\n value: () => local.activeItem,\n defaultValue: local.defaultActiveItem,\n onChange: (next) => {\n if (next !== null) local.onActiveItemChange?.(next);\n },\n });\n const [overflowOpen, setOverflowOpen] = createSignal(false);\n const [overflowAnchor, setOverflowAnchor] = createSignal<HTMLElement | null>(null);\n\n const safeVisibleCount = (): number => Math.max(0, local.visibleCount);\n const visibleItems = (): SidebarMenuItemProps[] => local.menuItems.slice(0, safeVisibleCount());\n const overflowItems = (): SidebarMenuItemProps[] => local.menuItems.slice(safeVisibleCount());\n const hasOverflow = (): boolean => overflowItems().length > 0;\n const overflowActive = (): boolean =>\n hasOverflow() && activeItem() !== null && (activeItem() as number) >= safeVisibleCount();\n\n return (\n <nav {...rest} ref={mergeRefs(local.ref)} class={cn(\"smwb-bottom-bar\", local.class)} role=\"navigation\">\n <div class=\"smwb-bottom-bar__nav\" role=\"menubar\">\n <For each={visibleItems()}>\n {(item, idx) => (\n <BarItem\n as={item.as}\n isActive={activeItem() === idx()}\n onClick={(event) => {\n setActiveItem(idx());\n callHandler(item.onClick, event);\n }}\n icon={item.icon}\n title={item.title}\n href={item.href}\n />\n )}\n </For>\n <Show when={hasOverflow()}>\n <BarItem\n ref={(el) => setOverflowAnchor(el as HTMLElement)}\n isActive={overflowActive()}\n onClick={() => setOverflowOpen((prev) => !prev)}\n icon={<Icon name=\"menu\" size={24} />}\n aria-label={local.overflowMenuAriaLabel}\n aria-haspopup=\"menu\"\n aria-expanded={overflowOpen()}\n />\n </Show>\n </div>\n <Show when={hasOverflow()}>\n <Menu\n isOpen={overflowOpen()}\n onClose={() => setOverflowOpen(false)}\n anchorElement={overflowAnchor()}\n placement=\"top\"\n dense\n >\n <For each={overflowItems()}>\n {(item, idx) => {\n const itemIndex = (): number => safeVisibleCount() + idx();\n return (\n <MenuItem\n selected={activeItem() === itemIndex()}\n href={item.href}\n onClick={(event) => {\n setActiveItem(itemIndex());\n callHandler(\n item.onClick,\n event as unknown as MouseEvent & { currentTarget: HTMLDivElement; target: Element }\n );\n setOverflowOpen(false);\n }}\n >\n <Show when={item.icon}>\n <MenuItemIcon>{item.icon}</MenuItemIcon>\n </Show>\n <MenuItemText inset={!item.icon}>{item.title}</MenuItemText>\n </MenuItem>\n );\n }}\n </For>\n </Menu>\n </Show>\n </nav>\n );\n}\n\nexport default BottomBar;\n"],"names":["BarItem","props","local","rest","splitProps","rippleActions","icon","children","_$createComponent","Dynamic","_$mergeProps","component","as","ref","r$","_ref$","mergeRefs","href","role","cn","isActive","onPointerDown","event","onRipple","Show","when","_el$","_tmpl$","_$insert","title","_el$2","_tmpl$2","Ripple","actionRef","actions","BottomBar","merged","mergeProps","menuItems","visibleCount","defaultActiveItem","overflowMenuAriaLabel","activeItem","setActiveItem","createControllableState","value","defaultValue","onChange","next","onActiveItemChange","overflowOpen","setOverflowOpen","createSignal","overflowAnchor","setOverflowAnchor","safeVisibleCount","Math","max","visibleItems","slice","overflowItems","hasOverflow","length","overflowActive","_el$3","_tmpl$3","_el$4","firstChild","_ref$2","_$use","_$spread","class","For","each","item","idx","onClick","callHandler","el","prev","Icon","name","size","Menu","isOpen","onClose","anchorElement","placement","dense","itemIndex","MenuItem","selected","MenuItemIcon","MenuItemText","inset"],"mappings":"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"}