@smwb/ui-react 2.0.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 (872) hide show
  1. package/AI_LESS_OVERRIDES.md +192 -0
  2. package/AI_THEMING.md +155 -0
  3. package/LICENSE +21 -0
  4. package/README.md +209 -0
  5. package/dist/assets/styles/less/components/accordion/accordion.entry.css +1 -0
  6. package/dist/assets/styles/less/components/appBar/appBar.entry.css +1 -0
  7. package/dist/assets/styles/less/components/appLayout/appLayout.entry.css +1 -0
  8. package/dist/assets/styles/less/components/avatar/avatar.entry.css +1 -0
  9. package/dist/assets/styles/less/components/badge/badge.entry.css +1 -0
  10. package/dist/assets/styles/less/components/bottomBar/bottomBar.entry.css +1 -0
  11. package/dist/assets/styles/less/components/breadcrumbs/breadcrumbs.entry.css +1 -0
  12. package/dist/assets/styles/less/components/button/button.entry.css +1 -0
  13. package/dist/assets/styles/less/components/buttonGroup/buttonGroup.entry.css +1 -0
  14. package/dist/assets/styles/less/components/card/card.entry.css +1 -0
  15. package/dist/assets/styles/less/components/carousel/carousel.entry.css +1 -0
  16. package/dist/assets/styles/less/components/chat/chat.entry.css +1 -0
  17. package/dist/assets/styles/less/components/checkbox/checkbox.entry.css +1 -0
  18. package/dist/assets/styles/less/components/chip/chip.entry.css +1 -0
  19. package/dist/assets/styles/less/components/datePicker/dataPicker.entry.css +1 -0
  20. package/dist/assets/styles/less/components/divider/divider.entry.css +1 -0
  21. package/dist/assets/styles/less/components/expansionPanel/expansionPanel.entry.css +1 -0
  22. package/dist/assets/styles/less/components/floatingButton/floatingButton.entry.css +1 -0
  23. package/dist/assets/styles/less/components/grid/grid.entry.css +1 -0
  24. package/dist/assets/styles/less/components/icon/icon.entry.css +1 -0
  25. package/dist/assets/styles/less/components/imagesList/imagesList.entry.css +1 -0
  26. package/dist/assets/styles/less/components/imagesList/imagesListItem/imagesListItem.entry.css +1 -0
  27. package/dist/assets/styles/less/components/list/list.entry.css +1 -0
  28. package/dist/assets/styles/less/components/menu/menu.entry.css +1 -0
  29. package/dist/assets/styles/less/components/message/message.entry.css +1 -0
  30. package/dist/assets/styles/less/components/modal/modal.entry.css +1 -0
  31. package/dist/assets/styles/less/components/page/page.entry.css +1 -0
  32. package/dist/assets/styles/less/components/pageHeader/pageHeader.entry.css +1 -0
  33. package/dist/assets/styles/less/components/pagination/pagination.entry.css +1 -0
  34. package/dist/assets/styles/less/components/progressIndicator/progressIndicator.entry.css +1 -0
  35. package/dist/assets/styles/less/components/radioButton/radioButton.entry.css +1 -0
  36. package/dist/assets/styles/less/components/rating/rating.entry.css +1 -0
  37. package/dist/assets/styles/less/components/ripple/ripple.entry.css +1 -0
  38. package/dist/assets/styles/less/components/screenDivider/screenDivider.entry.css +1 -0
  39. package/dist/assets/styles/less/components/selectField/selectField.entry.css +1 -0
  40. package/dist/assets/styles/less/components/sheet/sheet.entry.css +1 -0
  41. package/dist/assets/styles/less/components/sidebar/sidebar.entry.css +1 -0
  42. package/dist/assets/styles/less/components/skeleton/skeleton.entry.css +1 -0
  43. package/dist/assets/styles/less/components/slider/slider.entry.css +1 -0
  44. package/dist/assets/styles/less/components/snackbar/snackbar.entry.css +1 -0
  45. package/dist/assets/styles/less/components/stack/stack.entry.css +1 -0
  46. package/dist/assets/styles/less/components/stepper/stepper.entry.css +1 -0
  47. package/dist/assets/styles/less/components/table/table.entry.css +1 -0
  48. package/dist/assets/styles/less/components/table/tablePagination/tablePagination.entry.css +1 -0
  49. package/dist/assets/styles/less/components/tabs/tab/tab.entry.css +1 -0
  50. package/dist/assets/styles/less/components/tabs/tabs.entry.css +1 -0
  51. package/dist/assets/styles/less/components/textField/textField.entry.css +1 -0
  52. package/dist/assets/styles/less/components/timePicker/timePicker.entry.css +1 -0
  53. package/dist/assets/styles/less/components/toggle/toggle.entry.css +1 -0
  54. package/dist/assets/styles/less/components/tooltip/tooltip.entry.css +1 -0
  55. package/dist/assets/styles/less/components/treeView/treeView.entry.css +1 -0
  56. package/dist/assets/styles/less/components/typography/typography.entry.css +1 -0
  57. package/dist/components/base/animateHeight/animateHeight.d.ts +30 -0
  58. package/dist/components/base/animateHeight/animateHeight.js +118 -0
  59. package/dist/components/base/animateHeight/animateHeight.js.map +1 -0
  60. package/dist/components/base/animateHeight/index.d.ts +1 -0
  61. package/dist/components/base/icon/icon.d.ts +28 -0
  62. package/dist/components/base/icon/icon.js +27 -0
  63. package/dist/components/base/icon/icon.js.map +1 -0
  64. package/dist/components/base/icon/index.d.ts +2 -0
  65. package/dist/components/base/ripple/index.d.ts +2 -0
  66. package/dist/components/base/ripple/ripple.d.ts +21 -0
  67. package/dist/components/base/ripple/ripple.js +42 -0
  68. package/dist/components/base/ripple/ripple.js.map +1 -0
  69. package/dist/components/clickAwayListener/clickAwayListener.d.ts +14 -0
  70. package/dist/components/clickAwayListener/clickAwayListener.js +67 -0
  71. package/dist/components/clickAwayListener/clickAwayListener.js.map +1 -0
  72. package/dist/components/clickAwayListener/index.d.ts +2 -0
  73. package/dist/components/dataDisplay/accordion/accordion.d.ts +21 -0
  74. package/dist/components/dataDisplay/accordion/accordion.js +62 -0
  75. package/dist/components/dataDisplay/accordion/accordion.js.map +1 -0
  76. package/dist/components/dataDisplay/accordion/index.d.ts +2 -0
  77. package/dist/components/dataDisplay/avatar/avatar.d.ts +31 -0
  78. package/dist/components/dataDisplay/avatar/avatar.js +49 -0
  79. package/dist/components/dataDisplay/avatar/avatar.js.map +1 -0
  80. package/dist/components/dataDisplay/avatar/index.d.ts +2 -0
  81. package/dist/components/dataDisplay/badge/badge.d.ts +19 -0
  82. package/dist/components/dataDisplay/badge/badge.js +39 -0
  83. package/dist/components/dataDisplay/badge/badge.js.map +1 -0
  84. package/dist/components/dataDisplay/badge/index.d.ts +2 -0
  85. package/dist/components/dataDisplay/card/card.d.ts +15 -0
  86. package/dist/components/dataDisplay/card/card.js +36 -0
  87. package/dist/components/dataDisplay/card/card.js.map +1 -0
  88. package/dist/components/dataDisplay/card/index.d.ts +2 -0
  89. package/dist/components/dataDisplay/carousel/carousel.d.ts +22 -0
  90. package/dist/components/dataDisplay/carousel/carousel.js +179 -0
  91. package/dist/components/dataDisplay/carousel/carousel.js.map +1 -0
  92. package/dist/components/dataDisplay/carousel/index.d.ts +2 -0
  93. package/dist/components/dataDisplay/carousel/utils.d.ts +13 -0
  94. package/dist/components/dataDisplay/carousel/utils.js +57 -0
  95. package/dist/components/dataDisplay/carousel/utils.js.map +1 -0
  96. package/dist/components/dataDisplay/chat/chat.d.ts +50 -0
  97. package/dist/components/dataDisplay/chat/chat.js +183 -0
  98. package/dist/components/dataDisplay/chat/chat.js.map +1 -0
  99. package/dist/components/dataDisplay/chat/chatAttachmentImage.d.ts +7 -0
  100. package/dist/components/dataDisplay/chat/chatAttachmentImage.js +67 -0
  101. package/dist/components/dataDisplay/chat/chatAttachmentImage.js.map +1 -0
  102. package/dist/components/dataDisplay/chat/chatAttachments.d.ts +8 -0
  103. package/dist/components/dataDisplay/chat/chatAttachments.js +26 -0
  104. package/dist/components/dataDisplay/chat/chatAttachments.js.map +1 -0
  105. package/dist/components/dataDisplay/chat/chatComposer.d.ts +15 -0
  106. package/dist/components/dataDisplay/chat/chatComposer.js +154 -0
  107. package/dist/components/dataDisplay/chat/chatComposer.js.map +1 -0
  108. package/dist/components/dataDisplay/chat/chatHeader.d.ts +14 -0
  109. package/dist/components/dataDisplay/chat/chatHeader.js +52 -0
  110. package/dist/components/dataDisplay/chat/chatHeader.js.map +1 -0
  111. package/dist/components/dataDisplay/chat/chatIconButton.d.ts +8 -0
  112. package/dist/components/dataDisplay/chat/chatIconButton.js +47 -0
  113. package/dist/components/dataDisplay/chat/chatIconButton.js.map +1 -0
  114. package/dist/components/dataDisplay/chat/chatLayout.d.ts +20 -0
  115. package/dist/components/dataDisplay/chat/chatLayout.js +102 -0
  116. package/dist/components/dataDisplay/chat/chatLayout.js.map +1 -0
  117. package/dist/components/dataDisplay/chat/chatMessageAvatar.d.ts +8 -0
  118. package/dist/components/dataDisplay/chat/chatMessageAvatar.js +12 -0
  119. package/dist/components/dataDisplay/chat/chatMessageAvatar.js.map +1 -0
  120. package/dist/components/dataDisplay/chat/chatMessageBubble.d.ts +20 -0
  121. package/dist/components/dataDisplay/chat/chatMessageBubble.js +60 -0
  122. package/dist/components/dataDisplay/chat/chatMessageBubble.js.map +1 -0
  123. package/dist/components/dataDisplay/chat/chatMessageIncoming.d.ts +7 -0
  124. package/dist/components/dataDisplay/chat/chatMessageIncoming.js +24 -0
  125. package/dist/components/dataDisplay/chat/chatMessageIncoming.js.map +1 -0
  126. package/dist/components/dataDisplay/chat/chatMessageItem.d.ts +9 -0
  127. package/dist/components/dataDisplay/chat/chatMessageItem.js +62 -0
  128. package/dist/components/dataDisplay/chat/chatMessageItem.js.map +1 -0
  129. package/dist/components/dataDisplay/chat/chatMessageOutgoing.d.ts +7 -0
  130. package/dist/components/dataDisplay/chat/chatMessageOutgoing.js +36 -0
  131. package/dist/components/dataDisplay/chat/chatMessageOutgoing.js.map +1 -0
  132. package/dist/components/dataDisplay/chat/chatMessageSkeleton.d.ts +8 -0
  133. package/dist/components/dataDisplay/chat/chatMessageSkeleton.js +32 -0
  134. package/dist/components/dataDisplay/chat/chatMessageSkeleton.js.map +1 -0
  135. package/dist/components/dataDisplay/chat/chatMessageStatus.d.ts +11 -0
  136. package/dist/components/dataDisplay/chat/chatMessageStatus.js +37 -0
  137. package/dist/components/dataDisplay/chat/chatMessageStatus.js.map +1 -0
  138. package/dist/components/dataDisplay/chat/chatMessageSystem.d.ts +7 -0
  139. package/dist/components/dataDisplay/chat/chatMessageSystem.js +13 -0
  140. package/dist/components/dataDisplay/chat/chatMessageSystem.js.map +1 -0
  141. package/dist/components/dataDisplay/chat/chatMessages.d.ts +14 -0
  142. package/dist/components/dataDisplay/chat/chatMessages.js +73 -0
  143. package/dist/components/dataDisplay/chat/chatMessages.js.map +1 -0
  144. package/dist/components/dataDisplay/chat/chatOverlayLayout.d.ts +17 -0
  145. package/dist/components/dataDisplay/chat/chatShell.d.ts +16 -0
  146. package/dist/components/dataDisplay/chat/chatShell.js +63 -0
  147. package/dist/components/dataDisplay/chat/chatShell.js.map +1 -0
  148. package/dist/components/dataDisplay/chat/index.d.ts +44 -0
  149. package/dist/components/dataDisplay/chat/types.d.ts +53 -0
  150. package/dist/components/dataDisplay/chat/types.js +19 -0
  151. package/dist/components/dataDisplay/chat/types.js.map +1 -0
  152. package/dist/components/dataDisplay/chat/useChatFileUpload.d.ts +19 -0
  153. package/dist/components/dataDisplay/chat/useChatFileUpload.js +42 -0
  154. package/dist/components/dataDisplay/chat/useChatFileUpload.js.map +1 -0
  155. package/dist/components/dataDisplay/chat/useChatInfiniteScroll.d.ts +11 -0
  156. package/dist/components/dataDisplay/chat/useChatInfiniteScroll.js +26 -0
  157. package/dist/components/dataDisplay/chat/useChatInfiniteScroll.js.map +1 -0
  158. package/dist/components/dataDisplay/chat/useChatStickToBottom.d.ts +11 -0
  159. package/dist/components/dataDisplay/chat/useChatStickToBottom.js +38 -0
  160. package/dist/components/dataDisplay/chat/useChatStickToBottom.js.map +1 -0
  161. package/dist/components/dataDisplay/chat/utils.d.ts +26 -0
  162. package/dist/components/dataDisplay/chat/utils.js +61 -0
  163. package/dist/components/dataDisplay/chat/utils.js.map +1 -0
  164. package/dist/components/dataDisplay/chip/chip.d.ts +24 -0
  165. package/dist/components/dataDisplay/chip/chip.js +99 -0
  166. package/dist/components/dataDisplay/chip/chip.js.map +1 -0
  167. package/dist/components/dataDisplay/chip/index.d.ts +2 -0
  168. package/dist/components/dataDisplay/expansionPanel/expansionPanel.d.ts +56 -0
  169. package/dist/components/dataDisplay/expansionPanel/expansionPanel.js +174 -0
  170. package/dist/components/dataDisplay/expansionPanel/expansionPanel.js.map +1 -0
  171. package/dist/components/dataDisplay/expansionPanel/index.d.ts +2 -0
  172. package/dist/components/dataDisplay/imagesList/imagesList.d.ts +15 -0
  173. package/dist/components/dataDisplay/imagesList/imagesList.js +21 -0
  174. package/dist/components/dataDisplay/imagesList/imagesList.js.map +1 -0
  175. package/dist/components/dataDisplay/imagesList/imagesList.types.d.ts +6 -0
  176. package/dist/components/dataDisplay/imagesList/imagesListContext.d.ts +5 -0
  177. package/dist/components/dataDisplay/imagesList/imagesListContext.js +8 -0
  178. package/dist/components/dataDisplay/imagesList/imagesListContext.js.map +1 -0
  179. package/dist/components/dataDisplay/imagesList/imagesListItem/imagesListItem.d.ts +14 -0
  180. package/dist/components/dataDisplay/imagesList/imagesListItem/imagesListItem.js +55 -0
  181. package/dist/components/dataDisplay/imagesList/imagesListItem/imagesListItem.js.map +1 -0
  182. package/dist/components/dataDisplay/imagesList/imagesListItem/imagesListItemModal.d.ts +7 -0
  183. package/dist/components/dataDisplay/imagesList/imagesListItem/imagesListItemModal.js +29 -0
  184. package/dist/components/dataDisplay/imagesList/imagesListItem/imagesListItemModal.js.map +1 -0
  185. package/dist/components/dataDisplay/imagesList/index.d.ts +6 -0
  186. package/dist/components/dataDisplay/list/index.d.ts +4 -0
  187. package/dist/components/dataDisplay/list/list.d.ts +12 -0
  188. package/dist/components/dataDisplay/list/list.js +25 -0
  189. package/dist/components/dataDisplay/list/list.js.map +1 -0
  190. package/dist/components/dataDisplay/list/listItem.d.ts +17 -0
  191. package/dist/components/dataDisplay/list/listItem.js +37 -0
  192. package/dist/components/dataDisplay/list/listItem.js.map +1 -0
  193. package/dist/components/dataDisplay/table/index.d.ts +14 -0
  194. package/dist/components/dataDisplay/table/table.d.ts +17 -0
  195. package/dist/components/dataDisplay/table/table.js +38 -0
  196. package/dist/components/dataDisplay/table/table.js.map +1 -0
  197. package/dist/components/dataDisplay/table/tableBody.d.ts +6 -0
  198. package/dist/components/dataDisplay/table/tableBody.js +7 -0
  199. package/dist/components/dataDisplay/table/tableBody.js.map +1 -0
  200. package/dist/components/dataDisplay/table/tableCell.d.ts +7 -0
  201. package/dist/components/dataDisplay/table/tableCell.js +7 -0
  202. package/dist/components/dataDisplay/table/tableCell.js.map +1 -0
  203. package/dist/components/dataDisplay/table/tableHead.d.ts +6 -0
  204. package/dist/components/dataDisplay/table/tableHead.js +7 -0
  205. package/dist/components/dataDisplay/table/tableHead.js.map +1 -0
  206. package/dist/components/dataDisplay/table/tableHeadCell.d.ts +18 -0
  207. package/dist/components/dataDisplay/table/tableHeadCell.js +47 -0
  208. package/dist/components/dataDisplay/table/tableHeadCell.js.map +1 -0
  209. package/dist/components/dataDisplay/table/tablePagination/tablePagination.d.ts +19 -0
  210. package/dist/components/dataDisplay/table/tablePagination/tablePagination.js +41 -0
  211. package/dist/components/dataDisplay/table/tablePagination/tablePagination.js.map +1 -0
  212. package/dist/components/dataDisplay/table/tableRow.d.ts +10 -0
  213. package/dist/components/dataDisplay/table/tableRow.js +20 -0
  214. package/dist/components/dataDisplay/table/tableRow.js.map +1 -0
  215. package/dist/components/dataDisplay/treeView/index.d.ts +2 -0
  216. package/dist/components/dataDisplay/treeView/treeView.d.ts +39 -0
  217. package/dist/components/dataDisplay/treeView/treeView.js +116 -0
  218. package/dist/components/dataDisplay/treeView/treeView.js.map +1 -0
  219. package/dist/components/dataDisplay/typography/index.d.ts +2 -0
  220. package/dist/components/dataDisplay/typography/typography.d.ts +19 -0
  221. package/dist/components/dataDisplay/typography/typography.js +45 -0
  222. package/dist/components/dataDisplay/typography/typography.js.map +1 -0
  223. package/dist/components/feedBack/message/index.d.ts +2 -0
  224. package/dist/components/feedBack/message/message.d.ts +22 -0
  225. package/dist/components/feedBack/message/message.js +32 -0
  226. package/dist/components/feedBack/message/message.js.map +1 -0
  227. package/dist/components/feedBack/modal/index.d.ts +2 -0
  228. package/dist/components/feedBack/modal/modal.d.ts +39 -0
  229. package/dist/components/feedBack/modal/modal.js +107 -0
  230. package/dist/components/feedBack/modal/modal.js.map +1 -0
  231. package/dist/components/feedBack/progressIndicator/index.d.ts +2 -0
  232. package/dist/components/feedBack/progressIndicator/progressIndicator.d.ts +21 -0
  233. package/dist/components/feedBack/progressIndicator/progressIndicator.js +52 -0
  234. package/dist/components/feedBack/progressIndicator/progressIndicator.js.map +1 -0
  235. package/dist/components/feedBack/skeleton/index.d.ts +2 -0
  236. package/dist/components/feedBack/skeleton/skeleton.d.ts +20 -0
  237. package/dist/components/feedBack/skeleton/skeleton.js +48 -0
  238. package/dist/components/feedBack/skeleton/skeleton.js.map +1 -0
  239. package/dist/components/feedBack/snackbar/index.d.ts +2 -0
  240. package/dist/components/feedBack/snackbar/snackbar.d.ts +40 -0
  241. package/dist/components/feedBack/snackbar/snackbar.js +195 -0
  242. package/dist/components/feedBack/snackbar/snackbar.js.map +1 -0
  243. package/dist/components/feedBack/snackbar/useSnackbarsPortal.d.ts +3 -0
  244. package/dist/components/feedBack/snackbar/useSnackbarsPortal.js +16 -0
  245. package/dist/components/feedBack/snackbar/useSnackbarsPortal.js.map +1 -0
  246. package/dist/components/feedBack/tooltip/index.d.ts +2 -0
  247. package/dist/components/feedBack/tooltip/tooltip.d.ts +22 -0
  248. package/dist/components/feedBack/tooltip/tooltip.js +64 -0
  249. package/dist/components/feedBack/tooltip/tooltip.js.map +1 -0
  250. package/dist/components/inputs/button/button.d.ts +60 -0
  251. package/dist/components/inputs/button/button.js +83 -0
  252. package/dist/components/inputs/button/button.js.map +1 -0
  253. package/dist/components/inputs/button/index.d.ts +2 -0
  254. package/dist/components/inputs/buttonGroups/buttonGroup.d.ts +14 -0
  255. package/dist/components/inputs/buttonGroups/buttonGroup.js +53 -0
  256. package/dist/components/inputs/buttonGroups/buttonGroup.js.map +1 -0
  257. package/dist/components/inputs/buttonGroups/index.d.ts +2 -0
  258. package/dist/components/inputs/checkbox/checkbox.d.ts +21 -0
  259. package/dist/components/inputs/checkbox/checkbox.js +74 -0
  260. package/dist/components/inputs/checkbox/checkbox.js.map +1 -0
  261. package/dist/components/inputs/checkbox/index.d.ts +2 -0
  262. package/dist/components/inputs/datePicker/dataPickerDays.d.ts +9 -0
  263. package/dist/components/inputs/datePicker/dataPickerDays.js +59 -0
  264. package/dist/components/inputs/datePicker/dataPickerDays.js.map +1 -0
  265. package/dist/components/inputs/datePicker/dataPickerHeader.d.ts +11 -0
  266. package/dist/components/inputs/datePicker/dataPickerHeader.js +57 -0
  267. package/dist/components/inputs/datePicker/dataPickerHeader.js.map +1 -0
  268. package/dist/components/inputs/datePicker/dataPickerInput.d.ts +6 -0
  269. package/dist/components/inputs/datePicker/dataPickerInput.js +37 -0
  270. package/dist/components/inputs/datePicker/dataPickerInput.js.map +1 -0
  271. package/dist/components/inputs/datePicker/dateFormat.d.ts +3 -0
  272. package/dist/components/inputs/datePicker/dateFormat.js +58 -0
  273. package/dist/components/inputs/datePicker/dateFormat.js.map +1 -0
  274. package/dist/components/inputs/datePicker/datePicker.d.ts +42 -0
  275. package/dist/components/inputs/datePicker/datePicker.js +229 -0
  276. package/dist/components/inputs/datePicker/datePicker.js.map +1 -0
  277. package/dist/components/inputs/datePicker/datePickerActionLabel.d.ts +12 -0
  278. package/dist/components/inputs/datePicker/datePickerActionLabel.js +42 -0
  279. package/dist/components/inputs/datePicker/datePickerActionLabel.js.map +1 -0
  280. package/dist/components/inputs/datePicker/datePickerDay.d.ts +13 -0
  281. package/dist/components/inputs/datePicker/datePickerDay.js +62 -0
  282. package/dist/components/inputs/datePicker/datePickerDay.js.map +1 -0
  283. package/dist/components/inputs/datePicker/datePickerIconButton.d.ts +6 -0
  284. package/dist/components/inputs/datePicker/datePickerIconButton.js +44 -0
  285. package/dist/components/inputs/datePicker/datePickerIconButton.js.map +1 -0
  286. package/dist/components/inputs/datePicker/datePickerList.d.ts +11 -0
  287. package/dist/components/inputs/datePicker/datePickerList.js +38 -0
  288. package/dist/components/inputs/datePicker/datePickerList.js.map +1 -0
  289. package/dist/components/inputs/datePicker/index.d.ts +16 -0
  290. package/dist/components/inputs/datePicker/useDateInput.d.ts +14 -0
  291. package/dist/components/inputs/datePicker/useDateInput.js +35 -0
  292. package/dist/components/inputs/datePicker/useDateInput.js.map +1 -0
  293. package/dist/components/inputs/datePicker/utils.d.ts +37 -0
  294. package/dist/components/inputs/datePicker/utils.js +179 -0
  295. package/dist/components/inputs/datePicker/utils.js.map +1 -0
  296. package/dist/components/inputs/dateTimePicker/dateTimeFormat.d.ts +3 -0
  297. package/dist/components/inputs/dateTimePicker/dateTimeFormat.js +73 -0
  298. package/dist/components/inputs/dateTimePicker/dateTimeFormat.js.map +1 -0
  299. package/dist/components/inputs/dateTimePicker/dateTimePicker.d.ts +28 -0
  300. package/dist/components/inputs/dateTimePicker/dateTimePicker.js +194 -0
  301. package/dist/components/inputs/dateTimePicker/dateTimePicker.js.map +1 -0
  302. package/dist/components/inputs/dateTimePicker/dateTimePickerInput.d.ts +6 -0
  303. package/dist/components/inputs/dateTimePicker/dateTimePickerInput.js +37 -0
  304. package/dist/components/inputs/dateTimePicker/dateTimePickerInput.js.map +1 -0
  305. package/dist/components/inputs/dateTimePicker/index.d.ts +6 -0
  306. package/dist/components/inputs/dateTimePicker/useDateTimeInput.d.ts +15 -0
  307. package/dist/components/inputs/dateTimePicker/useDateTimeInput.js +60 -0
  308. package/dist/components/inputs/dateTimePicker/useDateTimeInput.js.map +1 -0
  309. package/dist/components/inputs/fileDrop/countPreview.d.ts +7 -0
  310. package/dist/components/inputs/fileDrop/fileDrop.d.ts +16 -0
  311. package/dist/components/inputs/fileDrop/preview.d.ts +8 -0
  312. package/dist/components/inputs/fileDrop/previewWrapper.d.ts +9 -0
  313. package/dist/components/inputs/fileDrop/utils.d.ts +1 -0
  314. package/dist/components/inputs/fileInput/fileInput.d.ts +16 -0
  315. package/dist/components/inputs/floatingButton/floatingButton.d.ts +11 -0
  316. package/dist/components/inputs/floatingButton/floatingButton.js +42 -0
  317. package/dist/components/inputs/floatingButton/floatingButton.js.map +1 -0
  318. package/dist/components/inputs/floatingButton/index.d.ts +2 -0
  319. package/dist/components/inputs/radioButton/index.d.ts +2 -0
  320. package/dist/components/inputs/radioButton/radioButton.d.ts +19 -0
  321. package/dist/components/inputs/radioButton/radioButton.js +69 -0
  322. package/dist/components/inputs/radioButton/radioButton.js.map +1 -0
  323. package/dist/components/inputs/rating/index.d.ts +2 -0
  324. package/dist/components/inputs/rating/rating.d.ts +31 -0
  325. package/dist/components/inputs/rating/rating.js +85 -0
  326. package/dist/components/inputs/rating/rating.js.map +1 -0
  327. package/dist/components/inputs/selectField/dropdownMenu.d.ts +40 -0
  328. package/dist/components/inputs/selectField/dropdownMenu.js +134 -0
  329. package/dist/components/inputs/selectField/dropdownMenu.js.map +1 -0
  330. package/dist/components/inputs/selectField/index.d.ts +2 -0
  331. package/dist/components/inputs/selectField/selectField.d.ts +50 -0
  332. package/dist/components/inputs/selectField/selectField.js +232 -0
  333. package/dist/components/inputs/selectField/selectField.js.map +1 -0
  334. package/dist/components/inputs/slider/index.d.ts +2 -0
  335. package/dist/components/inputs/slider/slider.d.ts +35 -0
  336. package/dist/components/inputs/slider/slider.js +314 -0
  337. package/dist/components/inputs/slider/slider.js.map +1 -0
  338. package/dist/components/inputs/slider/utils.d.ts +11 -0
  339. package/dist/components/inputs/slider/utils.js +40 -0
  340. package/dist/components/inputs/slider/utils.js.map +1 -0
  341. package/dist/components/inputs/textField/index.d.ts +6 -0
  342. package/dist/components/inputs/textField/textField.d.ts +26 -0
  343. package/dist/components/inputs/textField/textField.js +126 -0
  344. package/dist/components/inputs/textField/textField.js.map +1 -0
  345. package/dist/components/inputs/textField/textFieldAdornment.d.ts +8 -0
  346. package/dist/components/inputs/textField/textFieldAdornment.js +25 -0
  347. package/dist/components/inputs/textField/textFieldAdornment.js.map +1 -0
  348. package/dist/components/inputs/textField/textFieldWrapper.d.ts +20 -0
  349. package/dist/components/inputs/textField/textFieldWrapper.js +50 -0
  350. package/dist/components/inputs/textField/textFieldWrapper.js.map +1 -0
  351. package/dist/components/inputs/textField/utils.d.ts +7 -0
  352. package/dist/components/inputs/textField/utils.js +11 -0
  353. package/dist/components/inputs/textField/utils.js.map +1 -0
  354. package/dist/components/inputs/timePicker/index.d.ts +11 -0
  355. package/dist/components/inputs/timePicker/timeFormat.d.ts +4 -0
  356. package/dist/components/inputs/timePicker/timeFormat.js +61 -0
  357. package/dist/components/inputs/timePicker/timeFormat.js.map +1 -0
  358. package/dist/components/inputs/timePicker/timePicker.d.ts +18 -0
  359. package/dist/components/inputs/timePicker/timePicker.js +114 -0
  360. package/dist/components/inputs/timePicker/timePicker.js.map +1 -0
  361. package/dist/components/inputs/timePicker/timePickerColumns.d.ts +7 -0
  362. package/dist/components/inputs/timePicker/timePickerColumns.js +32 -0
  363. package/dist/components/inputs/timePicker/timePickerColumns.js.map +1 -0
  364. package/dist/components/inputs/timePicker/timePickerInput.d.ts +6 -0
  365. package/dist/components/inputs/timePicker/timePickerInput.js +37 -0
  366. package/dist/components/inputs/timePicker/timePickerInput.js.map +1 -0
  367. package/dist/components/inputs/timePicker/timePickerList.d.ts +11 -0
  368. package/dist/components/inputs/timePicker/timePickerList.js +43 -0
  369. package/dist/components/inputs/timePicker/timePickerList.js.map +1 -0
  370. package/dist/components/inputs/timePicker/timeUtils.d.ts +23 -0
  371. package/dist/components/inputs/timePicker/timeUtils.js +93 -0
  372. package/dist/components/inputs/timePicker/timeUtils.js.map +1 -0
  373. package/dist/components/inputs/timePicker/useTimeInput.d.ts +13 -0
  374. package/dist/components/inputs/timePicker/useTimeInput.js +37 -0
  375. package/dist/components/inputs/timePicker/useTimeInput.js.map +1 -0
  376. package/dist/components/inputs/toggle/index.d.ts +2 -0
  377. package/dist/components/inputs/toggle/toggle.d.ts +20 -0
  378. package/dist/components/inputs/toggle/toggle.js +70 -0
  379. package/dist/components/inputs/toggle/toggle.js.map +1 -0
  380. package/dist/components/layout/appLayout/appLayout.d.ts +32 -0
  381. package/dist/components/layout/appLayout/appLayout.js +75 -0
  382. package/dist/components/layout/appLayout/appLayout.js.map +1 -0
  383. package/dist/components/layout/appLayout/index.d.ts +2 -0
  384. package/dist/components/layout/divider/divider.d.ts +21 -0
  385. package/dist/components/layout/divider/divider.js +58 -0
  386. package/dist/components/layout/divider/divider.js.map +1 -0
  387. package/dist/components/layout/divider/index.d.ts +2 -0
  388. package/dist/components/layout/grid/grid.d.ts +61 -0
  389. package/dist/components/layout/grid/grid.js +59 -0
  390. package/dist/components/layout/grid/grid.js.map +1 -0
  391. package/dist/components/layout/grid/index.d.ts +2 -0
  392. package/dist/components/layout/page/index.d.ts +2 -0
  393. package/dist/components/layout/page/page.d.ts +15 -0
  394. package/dist/components/layout/page/page.js +22 -0
  395. package/dist/components/layout/page/page.js.map +1 -0
  396. package/dist/components/layout/pageHeader/index.d.ts +2 -0
  397. package/dist/components/layout/pageHeader/pageHeader.d.ts +14 -0
  398. package/dist/components/layout/pageHeader/pageHeader.js +31 -0
  399. package/dist/components/layout/pageHeader/pageHeader.js.map +1 -0
  400. package/dist/components/layout/screenDivider/index.d.ts +2 -0
  401. package/dist/components/layout/screenDivider/screenDivider.d.ts +17 -0
  402. package/dist/components/layout/screenDivider/screenDivider.js +89 -0
  403. package/dist/components/layout/screenDivider/screenDivider.js.map +1 -0
  404. package/dist/components/layout/sheet/index.d.ts +2 -0
  405. package/dist/components/layout/sheet/sheet.d.ts +36 -0
  406. package/dist/components/layout/sheet/sheet.js +218 -0
  407. package/dist/components/layout/sheet/sheet.js.map +1 -0
  408. package/dist/components/layout/stack/index.d.ts +2 -0
  409. package/dist/components/layout/stack/stack.d.ts +17 -0
  410. package/dist/components/layout/stack/stack.js +34 -0
  411. package/dist/components/layout/stack/stack.js.map +1 -0
  412. package/dist/components/navigation/appBar/appBar.d.ts +18 -0
  413. package/dist/components/navigation/appBar/appBar.js +48 -0
  414. package/dist/components/navigation/appBar/appBar.js.map +1 -0
  415. package/dist/components/navigation/appBar/index.d.ts +2 -0
  416. package/dist/components/navigation/bottomBar/bottomBar.d.ts +14 -0
  417. package/dist/components/navigation/bottomBar/bottomBar.js +106 -0
  418. package/dist/components/navigation/bottomBar/bottomBar.js.map +1 -0
  419. package/dist/components/navigation/bottomBar/index.d.ts +2 -0
  420. package/dist/components/navigation/breadcrumbs/breadcrumbs.d.ts +22 -0
  421. package/dist/components/navigation/breadcrumbs/breadcrumbs.js +53 -0
  422. package/dist/components/navigation/breadcrumbs/breadcrumbs.js.map +1 -0
  423. package/dist/components/navigation/breadcrumbs/index.d.ts +2 -0
  424. package/dist/components/navigation/menu/index.d.ts +6 -0
  425. package/dist/components/navigation/menu/menu.d.ts +10 -0
  426. package/dist/components/navigation/menu/menu.js +15 -0
  427. package/dist/components/navigation/menu/menu.js.map +1 -0
  428. package/dist/components/navigation/menu/menuComponent.d.ts +3 -0
  429. package/dist/components/navigation/menu/menuComponent.js +13 -0
  430. package/dist/components/navigation/menu/menuComponent.js.map +1 -0
  431. package/dist/components/navigation/menu/menuContext.d.ts +8 -0
  432. package/dist/components/navigation/menu/menuContext.js +14 -0
  433. package/dist/components/navigation/menu/menuContext.js.map +1 -0
  434. package/dist/components/navigation/menu/menuDivider.d.ts +3 -0
  435. package/dist/components/navigation/menu/menuDivider.js +19 -0
  436. package/dist/components/navigation/menu/menuDivider.js.map +1 -0
  437. package/dist/components/navigation/menu/menuFloating.d.ts +12 -0
  438. package/dist/components/navigation/menu/menuFloating.js +50 -0
  439. package/dist/components/navigation/menu/menuFloating.js.map +1 -0
  440. package/dist/components/navigation/menu/menuItem.d.ts +16 -0
  441. package/dist/components/navigation/menu/menuItem.js +68 -0
  442. package/dist/components/navigation/menu/menuItem.js.map +1 -0
  443. package/dist/components/navigation/menu/menuItemIcon.d.ts +5 -0
  444. package/dist/components/navigation/menu/menuItemIcon.js +16 -0
  445. package/dist/components/navigation/menu/menuItemIcon.js.map +1 -0
  446. package/dist/components/navigation/menu/menuItemText.d.ts +7 -0
  447. package/dist/components/navigation/menu/menuItemText.js +15 -0
  448. package/dist/components/navigation/menu/menuItemText.js.map +1 -0
  449. package/dist/components/navigation/menu/menuList.d.ts +3 -0
  450. package/dist/components/navigation/menu/menuList.js +30 -0
  451. package/dist/components/navigation/menu/menuList.js.map +1 -0
  452. package/dist/components/navigation/menu/menuSubmenu.d.ts +16 -0
  453. package/dist/components/navigation/menu/menuSubmenu.js +70 -0
  454. package/dist/components/navigation/menu/menuSubmenu.js.map +1 -0
  455. package/dist/components/navigation/pagination/index.d.ts +2 -0
  456. package/dist/components/navigation/pagination/pagination.d.ts +27 -0
  457. package/dist/components/navigation/pagination/pagination.js +107 -0
  458. package/dist/components/navigation/pagination/pagination.js.map +1 -0
  459. package/dist/components/navigation/sidebar/index.d.ts +2 -0
  460. package/dist/components/navigation/sidebar/sidebar.d.ts +33 -0
  461. package/dist/components/navigation/sidebar/sidebar.js +106 -0
  462. package/dist/components/navigation/sidebar/sidebar.js.map +1 -0
  463. package/dist/components/navigation/stepper/index.d.ts +2 -0
  464. package/dist/components/navigation/stepper/stepper.d.ts +25 -0
  465. package/dist/components/navigation/stepper/stepper.js +61 -0
  466. package/dist/components/navigation/stepper/stepper.js.map +1 -0
  467. package/dist/components/navigation/tabs/index.d.ts +4 -0
  468. package/dist/components/navigation/tabs/tab/tab.d.ts +11 -0
  469. package/dist/components/navigation/tabs/tab/tab.js +54 -0
  470. package/dist/components/navigation/tabs/tab/tab.js.map +1 -0
  471. package/dist/components/navigation/tabs/tabs.d.ts +15 -0
  472. package/dist/components/navigation/tabs/tabs.js +137 -0
  473. package/dist/components/navigation/tabs/tabs.js.map +1 -0
  474. package/dist/connects/rt/index.d.ts +2 -0
  475. package/dist/connects/rt/table/draggableHeader.d.ts +13 -0
  476. package/dist/connects/rt/table/headerCellRenderer.d.ts +8 -0
  477. package/dist/connects/rt/table/index.d.ts +3 -0
  478. package/dist/connects/rt/table/table.d.ts +39 -0
  479. package/dist/connects/rt/table/utils.d.ts +7 -0
  480. package/dist/headless/components/base/animateHeight/animateHeight.js +118 -0
  481. package/dist/headless/components/base/animateHeight/animateHeight.js.map +1 -0
  482. package/dist/headless/components/base/icon/icon.js +26 -0
  483. package/dist/headless/components/base/icon/icon.js.map +1 -0
  484. package/dist/headless/components/base/ripple/ripple.js +41 -0
  485. package/dist/headless/components/base/ripple/ripple.js.map +1 -0
  486. package/dist/headless/components/clickAwayListener/clickAwayListener.js +67 -0
  487. package/dist/headless/components/clickAwayListener/clickAwayListener.js.map +1 -0
  488. package/dist/headless/components/dataDisplay/accordion/accordion.js +61 -0
  489. package/dist/headless/components/dataDisplay/accordion/accordion.js.map +1 -0
  490. package/dist/headless/components/dataDisplay/avatar/avatar.js +48 -0
  491. package/dist/headless/components/dataDisplay/avatar/avatar.js.map +1 -0
  492. package/dist/headless/components/dataDisplay/badge/badge.js +38 -0
  493. package/dist/headless/components/dataDisplay/badge/badge.js.map +1 -0
  494. package/dist/headless/components/dataDisplay/card/card.js +35 -0
  495. package/dist/headless/components/dataDisplay/card/card.js.map +1 -0
  496. package/dist/headless/components/dataDisplay/carousel/carousel.js +178 -0
  497. package/dist/headless/components/dataDisplay/carousel/carousel.js.map +1 -0
  498. package/dist/headless/components/dataDisplay/carousel/utils.js +57 -0
  499. package/dist/headless/components/dataDisplay/carousel/utils.js.map +1 -0
  500. package/dist/headless/components/dataDisplay/chat/chat.js +182 -0
  501. package/dist/headless/components/dataDisplay/chat/chat.js.map +1 -0
  502. package/dist/headless/components/dataDisplay/chat/chatAttachmentImage.js +67 -0
  503. package/dist/headless/components/dataDisplay/chat/chatAttachmentImage.js.map +1 -0
  504. package/dist/headless/components/dataDisplay/chat/chatAttachments.js +26 -0
  505. package/dist/headless/components/dataDisplay/chat/chatAttachments.js.map +1 -0
  506. package/dist/headless/components/dataDisplay/chat/chatComposer.js +154 -0
  507. package/dist/headless/components/dataDisplay/chat/chatComposer.js.map +1 -0
  508. package/dist/headless/components/dataDisplay/chat/chatHeader.js +52 -0
  509. package/dist/headless/components/dataDisplay/chat/chatHeader.js.map +1 -0
  510. package/dist/headless/components/dataDisplay/chat/chatIconButton.js +47 -0
  511. package/dist/headless/components/dataDisplay/chat/chatIconButton.js.map +1 -0
  512. package/dist/headless/components/dataDisplay/chat/chatLayout.js +102 -0
  513. package/dist/headless/components/dataDisplay/chat/chatLayout.js.map +1 -0
  514. package/dist/headless/components/dataDisplay/chat/chatMessageAvatar.js +12 -0
  515. package/dist/headless/components/dataDisplay/chat/chatMessageAvatar.js.map +1 -0
  516. package/dist/headless/components/dataDisplay/chat/chatMessageBubble.js +60 -0
  517. package/dist/headless/components/dataDisplay/chat/chatMessageBubble.js.map +1 -0
  518. package/dist/headless/components/dataDisplay/chat/chatMessageIncoming.js +24 -0
  519. package/dist/headless/components/dataDisplay/chat/chatMessageIncoming.js.map +1 -0
  520. package/dist/headless/components/dataDisplay/chat/chatMessageItem.js +62 -0
  521. package/dist/headless/components/dataDisplay/chat/chatMessageItem.js.map +1 -0
  522. package/dist/headless/components/dataDisplay/chat/chatMessageOutgoing.js +36 -0
  523. package/dist/headless/components/dataDisplay/chat/chatMessageOutgoing.js.map +1 -0
  524. package/dist/headless/components/dataDisplay/chat/chatMessageSkeleton.js +32 -0
  525. package/dist/headless/components/dataDisplay/chat/chatMessageSkeleton.js.map +1 -0
  526. package/dist/headless/components/dataDisplay/chat/chatMessageStatus.js +37 -0
  527. package/dist/headless/components/dataDisplay/chat/chatMessageStatus.js.map +1 -0
  528. package/dist/headless/components/dataDisplay/chat/chatMessageSystem.js +13 -0
  529. package/dist/headless/components/dataDisplay/chat/chatMessageSystem.js.map +1 -0
  530. package/dist/headless/components/dataDisplay/chat/chatMessages.js +73 -0
  531. package/dist/headless/components/dataDisplay/chat/chatMessages.js.map +1 -0
  532. package/dist/headless/components/dataDisplay/chat/chatShell.js +63 -0
  533. package/dist/headless/components/dataDisplay/chat/chatShell.js.map +1 -0
  534. package/dist/headless/components/dataDisplay/chat/types.js +19 -0
  535. package/dist/headless/components/dataDisplay/chat/types.js.map +1 -0
  536. package/dist/headless/components/dataDisplay/chat/useChatFileUpload.js +42 -0
  537. package/dist/headless/components/dataDisplay/chat/useChatFileUpload.js.map +1 -0
  538. package/dist/headless/components/dataDisplay/chat/useChatInfiniteScroll.js +26 -0
  539. package/dist/headless/components/dataDisplay/chat/useChatInfiniteScroll.js.map +1 -0
  540. package/dist/headless/components/dataDisplay/chat/useChatStickToBottom.js +38 -0
  541. package/dist/headless/components/dataDisplay/chat/useChatStickToBottom.js.map +1 -0
  542. package/dist/headless/components/dataDisplay/chat/utils.js +61 -0
  543. package/dist/headless/components/dataDisplay/chat/utils.js.map +1 -0
  544. package/dist/headless/components/dataDisplay/chip/chip.js +98 -0
  545. package/dist/headless/components/dataDisplay/chip/chip.js.map +1 -0
  546. package/dist/headless/components/dataDisplay/expansionPanel/expansionPanel.js +173 -0
  547. package/dist/headless/components/dataDisplay/expansionPanel/expansionPanel.js.map +1 -0
  548. package/dist/headless/components/dataDisplay/imagesList/imagesList.js +20 -0
  549. package/dist/headless/components/dataDisplay/imagesList/imagesList.js.map +1 -0
  550. package/dist/headless/components/dataDisplay/imagesList/imagesListContext.js +8 -0
  551. package/dist/headless/components/dataDisplay/imagesList/imagesListContext.js.map +1 -0
  552. package/dist/headless/components/dataDisplay/imagesList/imagesListItem/imagesListItem.js +54 -0
  553. package/dist/headless/components/dataDisplay/imagesList/imagesListItem/imagesListItem.js.map +1 -0
  554. package/dist/headless/components/dataDisplay/imagesList/imagesListItem/imagesListItemModal.js +29 -0
  555. package/dist/headless/components/dataDisplay/imagesList/imagesListItem/imagesListItemModal.js.map +1 -0
  556. package/dist/headless/components/dataDisplay/list/list.js +24 -0
  557. package/dist/headless/components/dataDisplay/list/list.js.map +1 -0
  558. package/dist/headless/components/dataDisplay/list/listItem.js +37 -0
  559. package/dist/headless/components/dataDisplay/list/listItem.js.map +1 -0
  560. package/dist/headless/components/dataDisplay/table/table.js +37 -0
  561. package/dist/headless/components/dataDisplay/table/table.js.map +1 -0
  562. package/dist/headless/components/dataDisplay/table/tableBody.js +7 -0
  563. package/dist/headless/components/dataDisplay/table/tableBody.js.map +1 -0
  564. package/dist/headless/components/dataDisplay/table/tableCell.js +7 -0
  565. package/dist/headless/components/dataDisplay/table/tableCell.js.map +1 -0
  566. package/dist/headless/components/dataDisplay/table/tableHead.js +7 -0
  567. package/dist/headless/components/dataDisplay/table/tableHead.js.map +1 -0
  568. package/dist/headless/components/dataDisplay/table/tableHeadCell.js +47 -0
  569. package/dist/headless/components/dataDisplay/table/tableHeadCell.js.map +1 -0
  570. package/dist/headless/components/dataDisplay/table/tablePagination/tablePagination.js +40 -0
  571. package/dist/headless/components/dataDisplay/table/tablePagination/tablePagination.js.map +1 -0
  572. package/dist/headless/components/dataDisplay/table/tableRow.js +20 -0
  573. package/dist/headless/components/dataDisplay/table/tableRow.js.map +1 -0
  574. package/dist/headless/components/dataDisplay/treeView/treeView.js +115 -0
  575. package/dist/headless/components/dataDisplay/treeView/treeView.js.map +1 -0
  576. package/dist/headless/components/dataDisplay/typography/typography.js +44 -0
  577. package/dist/headless/components/dataDisplay/typography/typography.js.map +1 -0
  578. package/dist/headless/components/feedBack/message/message.js +31 -0
  579. package/dist/headless/components/feedBack/message/message.js.map +1 -0
  580. package/dist/headless/components/feedBack/modal/modal.js +106 -0
  581. package/dist/headless/components/feedBack/modal/modal.js.map +1 -0
  582. package/dist/headless/components/feedBack/progressIndicator/progressIndicator.js +51 -0
  583. package/dist/headless/components/feedBack/progressIndicator/progressIndicator.js.map +1 -0
  584. package/dist/headless/components/feedBack/skeleton/skeleton.js +47 -0
  585. package/dist/headless/components/feedBack/skeleton/skeleton.js.map +1 -0
  586. package/dist/headless/components/feedBack/snackbar/snackbar.js +194 -0
  587. package/dist/headless/components/feedBack/snackbar/snackbar.js.map +1 -0
  588. package/dist/headless/components/feedBack/snackbar/useSnackbarsPortal.js +16 -0
  589. package/dist/headless/components/feedBack/snackbar/useSnackbarsPortal.js.map +1 -0
  590. package/dist/headless/components/feedBack/tooltip/tooltip.js +63 -0
  591. package/dist/headless/components/feedBack/tooltip/tooltip.js.map +1 -0
  592. package/dist/headless/components/inputs/button/button.js +82 -0
  593. package/dist/headless/components/inputs/button/button.js.map +1 -0
  594. package/dist/headless/components/inputs/buttonGroups/buttonGroup.js +52 -0
  595. package/dist/headless/components/inputs/buttonGroups/buttonGroup.js.map +1 -0
  596. package/dist/headless/components/inputs/checkbox/checkbox.js +73 -0
  597. package/dist/headless/components/inputs/checkbox/checkbox.js.map +1 -0
  598. package/dist/headless/components/inputs/datePicker/dataPickerDays.js +59 -0
  599. package/dist/headless/components/inputs/datePicker/dataPickerDays.js.map +1 -0
  600. package/dist/headless/components/inputs/datePicker/dataPickerHeader.js +57 -0
  601. package/dist/headless/components/inputs/datePicker/dataPickerHeader.js.map +1 -0
  602. package/dist/headless/components/inputs/datePicker/dataPickerInput.js +37 -0
  603. package/dist/headless/components/inputs/datePicker/dataPickerInput.js.map +1 -0
  604. package/dist/headless/components/inputs/datePicker/dateFormat.js +58 -0
  605. package/dist/headless/components/inputs/datePicker/dateFormat.js.map +1 -0
  606. package/dist/headless/components/inputs/datePicker/datePicker.js +228 -0
  607. package/dist/headless/components/inputs/datePicker/datePicker.js.map +1 -0
  608. package/dist/headless/components/inputs/datePicker/datePickerActionLabel.js +42 -0
  609. package/dist/headless/components/inputs/datePicker/datePickerActionLabel.js.map +1 -0
  610. package/dist/headless/components/inputs/datePicker/datePickerDay.js +62 -0
  611. package/dist/headless/components/inputs/datePicker/datePickerDay.js.map +1 -0
  612. package/dist/headless/components/inputs/datePicker/datePickerIconButton.js +44 -0
  613. package/dist/headless/components/inputs/datePicker/datePickerIconButton.js.map +1 -0
  614. package/dist/headless/components/inputs/datePicker/datePickerList.js +38 -0
  615. package/dist/headless/components/inputs/datePicker/datePickerList.js.map +1 -0
  616. package/dist/headless/components/inputs/datePicker/useDateInput.js +35 -0
  617. package/dist/headless/components/inputs/datePicker/useDateInput.js.map +1 -0
  618. package/dist/headless/components/inputs/datePicker/utils.js +179 -0
  619. package/dist/headless/components/inputs/datePicker/utils.js.map +1 -0
  620. package/dist/headless/components/inputs/dateTimePicker/dateTimeFormat.js +73 -0
  621. package/dist/headless/components/inputs/dateTimePicker/dateTimeFormat.js.map +1 -0
  622. package/dist/headless/components/inputs/dateTimePicker/dateTimePicker.js +194 -0
  623. package/dist/headless/components/inputs/dateTimePicker/dateTimePicker.js.map +1 -0
  624. package/dist/headless/components/inputs/dateTimePicker/dateTimePickerInput.js +37 -0
  625. package/dist/headless/components/inputs/dateTimePicker/dateTimePickerInput.js.map +1 -0
  626. package/dist/headless/components/inputs/dateTimePicker/useDateTimeInput.js +60 -0
  627. package/dist/headless/components/inputs/dateTimePicker/useDateTimeInput.js.map +1 -0
  628. package/dist/headless/components/inputs/floatingButton/floatingButton.js +41 -0
  629. package/dist/headless/components/inputs/floatingButton/floatingButton.js.map +1 -0
  630. package/dist/headless/components/inputs/radioButton/radioButton.js +68 -0
  631. package/dist/headless/components/inputs/radioButton/radioButton.js.map +1 -0
  632. package/dist/headless/components/inputs/rating/rating.js +84 -0
  633. package/dist/headless/components/inputs/rating/rating.js.map +1 -0
  634. package/dist/headless/components/inputs/selectField/dropdownMenu.js +134 -0
  635. package/dist/headless/components/inputs/selectField/dropdownMenu.js.map +1 -0
  636. package/dist/headless/components/inputs/selectField/selectField.js +231 -0
  637. package/dist/headless/components/inputs/selectField/selectField.js.map +1 -0
  638. package/dist/headless/components/inputs/slider/slider.js +313 -0
  639. package/dist/headless/components/inputs/slider/slider.js.map +1 -0
  640. package/dist/headless/components/inputs/slider/utils.js +40 -0
  641. package/dist/headless/components/inputs/slider/utils.js.map +1 -0
  642. package/dist/headless/components/inputs/textField/textField.js +125 -0
  643. package/dist/headless/components/inputs/textField/textField.js.map +1 -0
  644. package/dist/headless/components/inputs/textField/textFieldAdornment.js +25 -0
  645. package/dist/headless/components/inputs/textField/textFieldAdornment.js.map +1 -0
  646. package/dist/headless/components/inputs/textField/textFieldWrapper.js +50 -0
  647. package/dist/headless/components/inputs/textField/textFieldWrapper.js.map +1 -0
  648. package/dist/headless/components/inputs/textField/utils.js +11 -0
  649. package/dist/headless/components/inputs/textField/utils.js.map +1 -0
  650. package/dist/headless/components/inputs/timePicker/timeFormat.js +61 -0
  651. package/dist/headless/components/inputs/timePicker/timeFormat.js.map +1 -0
  652. package/dist/headless/components/inputs/timePicker/timePicker.js +113 -0
  653. package/dist/headless/components/inputs/timePicker/timePicker.js.map +1 -0
  654. package/dist/headless/components/inputs/timePicker/timePickerColumns.js +32 -0
  655. package/dist/headless/components/inputs/timePicker/timePickerColumns.js.map +1 -0
  656. package/dist/headless/components/inputs/timePicker/timePickerInput.js +37 -0
  657. package/dist/headless/components/inputs/timePicker/timePickerInput.js.map +1 -0
  658. package/dist/headless/components/inputs/timePicker/timePickerList.js +43 -0
  659. package/dist/headless/components/inputs/timePicker/timePickerList.js.map +1 -0
  660. package/dist/headless/components/inputs/timePicker/timeUtils.js +93 -0
  661. package/dist/headless/components/inputs/timePicker/timeUtils.js.map +1 -0
  662. package/dist/headless/components/inputs/timePicker/useTimeInput.js +37 -0
  663. package/dist/headless/components/inputs/timePicker/useTimeInput.js.map +1 -0
  664. package/dist/headless/components/inputs/toggle/toggle.js +69 -0
  665. package/dist/headless/components/inputs/toggle/toggle.js.map +1 -0
  666. package/dist/headless/components/layout/appLayout/appLayout.js +74 -0
  667. package/dist/headless/components/layout/appLayout/appLayout.js.map +1 -0
  668. package/dist/headless/components/layout/divider/divider.js +57 -0
  669. package/dist/headless/components/layout/divider/divider.js.map +1 -0
  670. package/dist/headless/components/layout/grid/grid.js +58 -0
  671. package/dist/headless/components/layout/grid/grid.js.map +1 -0
  672. package/dist/headless/components/layout/page/page.js +21 -0
  673. package/dist/headless/components/layout/page/page.js.map +1 -0
  674. package/dist/headless/components/layout/pageHeader/pageHeader.js +30 -0
  675. package/dist/headless/components/layout/pageHeader/pageHeader.js.map +1 -0
  676. package/dist/headless/components/layout/screenDivider/screenDivider.js +88 -0
  677. package/dist/headless/components/layout/screenDivider/screenDivider.js.map +1 -0
  678. package/dist/headless/components/layout/sheet/sheet.js +217 -0
  679. package/dist/headless/components/layout/sheet/sheet.js.map +1 -0
  680. package/dist/headless/components/layout/stack/stack.js +33 -0
  681. package/dist/headless/components/layout/stack/stack.js.map +1 -0
  682. package/dist/headless/components/navigation/appBar/appBar.js +47 -0
  683. package/dist/headless/components/navigation/appBar/appBar.js.map +1 -0
  684. package/dist/headless/components/navigation/bottomBar/bottomBar.js +105 -0
  685. package/dist/headless/components/navigation/bottomBar/bottomBar.js.map +1 -0
  686. package/dist/headless/components/navigation/breadcrumbs/breadcrumbs.js +52 -0
  687. package/dist/headless/components/navigation/breadcrumbs/breadcrumbs.js.map +1 -0
  688. package/dist/headless/components/navigation/menu/menu.js +14 -0
  689. package/dist/headless/components/navigation/menu/menu.js.map +1 -0
  690. package/dist/headless/components/navigation/menu/menuComponent.js +13 -0
  691. package/dist/headless/components/navigation/menu/menuComponent.js.map +1 -0
  692. package/dist/headless/components/navigation/menu/menuContext.js +14 -0
  693. package/dist/headless/components/navigation/menu/menuContext.js.map +1 -0
  694. package/dist/headless/components/navigation/menu/menuDivider.js +19 -0
  695. package/dist/headless/components/navigation/menu/menuDivider.js.map +1 -0
  696. package/dist/headless/components/navigation/menu/menuFloating.js +50 -0
  697. package/dist/headless/components/navigation/menu/menuFloating.js.map +1 -0
  698. package/dist/headless/components/navigation/menu/menuItem.js +68 -0
  699. package/dist/headless/components/navigation/menu/menuItem.js.map +1 -0
  700. package/dist/headless/components/navigation/menu/menuItemIcon.js +16 -0
  701. package/dist/headless/components/navigation/menu/menuItemIcon.js.map +1 -0
  702. package/dist/headless/components/navigation/menu/menuItemText.js +15 -0
  703. package/dist/headless/components/navigation/menu/menuItemText.js.map +1 -0
  704. package/dist/headless/components/navigation/menu/menuList.js +30 -0
  705. package/dist/headless/components/navigation/menu/menuList.js.map +1 -0
  706. package/dist/headless/components/navigation/menu/menuSubmenu.js +70 -0
  707. package/dist/headless/components/navigation/menu/menuSubmenu.js.map +1 -0
  708. package/dist/headless/components/navigation/pagination/pagination.js +106 -0
  709. package/dist/headless/components/navigation/pagination/pagination.js.map +1 -0
  710. package/dist/headless/components/navigation/sidebar/sidebar.js +105 -0
  711. package/dist/headless/components/navigation/sidebar/sidebar.js.map +1 -0
  712. package/dist/headless/components/navigation/stepper/stepper.js +60 -0
  713. package/dist/headless/components/navigation/stepper/stepper.js.map +1 -0
  714. package/dist/headless/components/navigation/tabs/tab/tab.js +53 -0
  715. package/dist/headless/components/navigation/tabs/tab/tab.js.map +1 -0
  716. package/dist/headless/components/navigation/tabs/tabs.js +136 -0
  717. package/dist/headless/components/navigation/tabs/tabs.js.map +1 -0
  718. package/dist/headless/hooks/useControllableState.js +24 -0
  719. package/dist/headless/hooks/useControllableState.js.map +1 -0
  720. package/dist/headless/hooks/useEventCallback.js +11 -0
  721. package/dist/headless/hooks/useEventCallback.js.map +1 -0
  722. package/dist/headless/hooks/useFocusTrap.js +38 -0
  723. package/dist/headless/hooks/useFocusTrap.js.map +1 -0
  724. package/dist/headless/hooks/useForkRef.js +13 -0
  725. package/dist/headless/hooks/useForkRef.js.map +1 -0
  726. package/dist/headless/hooks/useId.js +9 -0
  727. package/dist/headless/hooks/useId.js.map +1 -0
  728. package/dist/headless/hooks/useModalState.js +13 -0
  729. package/dist/headless/hooks/useModalState.js.map +1 -0
  730. package/dist/headless/hooks/useObservable.js +9 -0
  731. package/dist/headless/hooks/useObservable.js.map +1 -0
  732. package/dist/headless/hooks/useRovingTabIndex.js +35 -0
  733. package/dist/headless/hooks/useRovingTabIndex.js.map +1 -0
  734. package/dist/headless/hooks/useSafeLayoutEffect.js +6 -0
  735. package/dist/headless/hooks/useSafeLayoutEffect.js.map +1 -0
  736. package/dist/headless/hooks/useTheme.js +37 -0
  737. package/dist/headless/hooks/useTheme.js.map +1 -0
  738. package/dist/headless/hooks/useVirtualList.js +25 -0
  739. package/dist/headless/hooks/useVirtualList.js.map +1 -0
  740. package/dist/headless/index.js +242 -0
  741. package/dist/headless/index.js.map +1 -0
  742. package/dist/headless/utils/animate.js +30 -0
  743. package/dist/headless/utils/animate.js.map +1 -0
  744. package/dist/headless/utils/debounce.js +15 -0
  745. package/dist/headless/utils/debounce.js.map +1 -0
  746. package/dist/headless/utils/floating.js +13 -0
  747. package/dist/headless/utils/floating.js.map +1 -0
  748. package/dist/headless/utils/observable.js +24 -0
  749. package/dist/headless/utils/observable.js.map +1 -0
  750. package/dist/headless/utils/setRef.js +7 -0
  751. package/dist/headless/utils/setRef.js.map +1 -0
  752. package/dist/headless/utils/throttle.js +18 -0
  753. package/dist/headless/utils/throttle.js.map +1 -0
  754. package/dist/hooks/useControllableState.d.ts +21 -0
  755. package/dist/hooks/useControllableState.js +24 -0
  756. package/dist/hooks/useControllableState.js.map +1 -0
  757. package/dist/hooks/useEventCallback.d.ts +4 -0
  758. package/dist/hooks/useEventCallback.js +11 -0
  759. package/dist/hooks/useEventCallback.js.map +1 -0
  760. package/dist/hooks/useFocusTrap.d.ts +15 -0
  761. package/dist/hooks/useFocusTrap.js +38 -0
  762. package/dist/hooks/useFocusTrap.js.map +1 -0
  763. package/dist/hooks/useForkRef.d.ts +2 -0
  764. package/dist/hooks/useForkRef.js +13 -0
  765. package/dist/hooks/useForkRef.js.map +1 -0
  766. package/dist/hooks/useId.d.ts +9 -0
  767. package/dist/hooks/useId.js +9 -0
  768. package/dist/hooks/useId.js.map +1 -0
  769. package/dist/hooks/useMediaQuery.d.ts +1 -0
  770. package/dist/hooks/useModalState.d.ts +5 -0
  771. package/dist/hooks/useModalState.js +13 -0
  772. package/dist/hooks/useModalState.js.map +1 -0
  773. package/dist/hooks/useObservable.d.ts +2 -0
  774. package/dist/hooks/useObservable.js +9 -0
  775. package/dist/hooks/useObservable.js.map +1 -0
  776. package/dist/hooks/useRovingTabIndex.d.ts +22 -0
  777. package/dist/hooks/useRovingTabIndex.js +35 -0
  778. package/dist/hooks/useRovingTabIndex.js.map +1 -0
  779. package/dist/hooks/useSafeLayoutEffect.d.ts +2 -0
  780. package/dist/hooks/useSafeLayoutEffect.js +6 -0
  781. package/dist/hooks/useSafeLayoutEffect.js.map +1 -0
  782. package/dist/hooks/useTheme.d.ts +9 -0
  783. package/dist/hooks/useTheme.js +37 -0
  784. package/dist/hooks/useTheme.js.map +1 -0
  785. package/dist/hooks/useThrottleCallback.d.ts +1 -0
  786. package/dist/hooks/useVirtualList.d.ts +34 -0
  787. package/dist/hooks/useVirtualList.js +25 -0
  788. package/dist/hooks/useVirtualList.js.map +1 -0
  789. package/dist/index.cjs +3 -0
  790. package/dist/index.cjs.map +1 -0
  791. package/dist/index.d.ts +113 -0
  792. package/dist/index.js +242 -0
  793. package/dist/index.js.map +1 -0
  794. package/dist/react-table/components/base/icon/icon.js +26 -0
  795. package/dist/react-table/components/base/icon/icon.js.map +1 -0
  796. package/dist/react-table/components/dataDisplay/table/table.js +37 -0
  797. package/dist/react-table/components/dataDisplay/table/table.js.map +1 -0
  798. package/dist/react-table/components/dataDisplay/table/tableBody.js +7 -0
  799. package/dist/react-table/components/dataDisplay/table/tableBody.js.map +1 -0
  800. package/dist/react-table/components/dataDisplay/table/tableCell.js +7 -0
  801. package/dist/react-table/components/dataDisplay/table/tableCell.js.map +1 -0
  802. package/dist/react-table/components/dataDisplay/table/tableHead.js +7 -0
  803. package/dist/react-table/components/dataDisplay/table/tableHead.js.map +1 -0
  804. package/dist/react-table/components/dataDisplay/table/tableHeadCell.js +47 -0
  805. package/dist/react-table/components/dataDisplay/table/tableHeadCell.js.map +1 -0
  806. package/dist/react-table/components/dataDisplay/table/tablePagination/tablePagination.js +40 -0
  807. package/dist/react-table/components/dataDisplay/table/tablePagination/tablePagination.js.map +1 -0
  808. package/dist/react-table/components/dataDisplay/table/tableRow.js +20 -0
  809. package/dist/react-table/components/dataDisplay/table/tableRow.js.map +1 -0
  810. package/dist/react-table/components/feedBack/message/message.js +31 -0
  811. package/dist/react-table/components/feedBack/message/message.js.map +1 -0
  812. package/dist/react-table/components/feedBack/progressIndicator/progressIndicator.js +51 -0
  813. package/dist/react-table/components/feedBack/progressIndicator/progressIndicator.js.map +1 -0
  814. package/dist/react-table/components/inputs/textField/textField.js +125 -0
  815. package/dist/react-table/components/inputs/textField/textField.js.map +1 -0
  816. package/dist/react-table/components/inputs/textField/textFieldAdornment.js +25 -0
  817. package/dist/react-table/components/inputs/textField/textFieldAdornment.js.map +1 -0
  818. package/dist/react-table/components/inputs/textField/textFieldWrapper.js +50 -0
  819. package/dist/react-table/components/inputs/textField/textFieldWrapper.js.map +1 -0
  820. package/dist/react-table/components/inputs/textField/utils.js +11 -0
  821. package/dist/react-table/components/inputs/textField/utils.js.map +1 -0
  822. package/dist/react-table/connects/rt/table/draggableHeader.js +44 -0
  823. package/dist/react-table/connects/rt/table/draggableHeader.js.map +1 -0
  824. package/dist/react-table/connects/rt/table/headerCellRenderer.js +14 -0
  825. package/dist/react-table/connects/rt/table/headerCellRenderer.js.map +1 -0
  826. package/dist/react-table/connects/rt/table/table.js +180 -0
  827. package/dist/react-table/connects/rt/table/table.js.map +1 -0
  828. package/dist/react-table/connects/rt/table/utils.js +22 -0
  829. package/dist/react-table/connects/rt/table/utils.js.map +1 -0
  830. package/dist/react-table/hooks/useForkRef.js +13 -0
  831. package/dist/react-table/hooks/useForkRef.js.map +1 -0
  832. package/dist/react-table/hooks/useSafeLayoutEffect.js +6 -0
  833. package/dist/react-table/hooks/useSafeLayoutEffect.js.map +1 -0
  834. package/dist/react-table/react-table.js +7 -0
  835. package/dist/react-table/react-table.js.map +1 -0
  836. package/dist/react-table/utils/setRef.js +7 -0
  837. package/dist/react-table/utils/setRef.js.map +1 -0
  838. package/dist/react-table.d.ts +3 -0
  839. package/dist/storybook/storyPlay.d.ts +19 -0
  840. package/dist/templates/summer-ui/components/authCard/authCard.d.ts +8 -0
  841. package/dist/templates/summer-ui/components/authCard/index.d.ts +2 -0
  842. package/dist/templates/summer-ui/components/authLayout/authLayout.d.ts +3 -0
  843. package/dist/templates/summer-ui/components/authLayout/index.d.ts +2 -0
  844. package/dist/templates/summer-ui/components/authProvider/authProvider.d.ts +8 -0
  845. package/dist/templates/summer-ui/components/authProvider/index.d.ts +2 -0
  846. package/dist/templates/summer-ui/components/link/index.d.ts +2 -0
  847. package/dist/templates/summer-ui/components/link/link.d.ts +7 -0
  848. package/dist/templates/summer-ui/index.d.ts +1 -0
  849. package/dist/templates/summer-ui/messages/en.d.ts +30 -0
  850. package/dist/templates/summer-ui/messages/index.d.ts +31 -0
  851. package/dist/utils/animate.d.ts +8 -0
  852. package/dist/utils/animate.js +30 -0
  853. package/dist/utils/animate.js.map +1 -0
  854. package/dist/utils/debounce.d.ts +5 -0
  855. package/dist/utils/debounce.js +15 -0
  856. package/dist/utils/debounce.js.map +1 -0
  857. package/dist/utils/floating.d.ts +9 -0
  858. package/dist/utils/floating.js +13 -0
  859. package/dist/utils/floating.js.map +1 -0
  860. package/dist/utils/observable.d.ts +10 -0
  861. package/dist/utils/observable.js +24 -0
  862. package/dist/utils/observable.js.map +1 -0
  863. package/dist/utils/setRef.d.ts +2 -0
  864. package/dist/utils/setRef.js +7 -0
  865. package/dist/utils/setRef.js.map +1 -0
  866. package/dist/utils/throttle.d.ts +5 -0
  867. package/dist/utils/throttle.js +18 -0
  868. package/dist/utils/throttle.js.map +1 -0
  869. package/dist/utils/types/extractPropertyNamesByType.d.ts +3 -0
  870. package/dist/utils/types/ifEquals.d.ts +1 -0
  871. package/dist/utils/types/writableKeys.d.ts +8 -0
  872. package/package.json +146 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tabs.js","sources":["../../../../src/components/navigation/tabs/tabs.tsx"],"sourcesContent":["import React from \"react\";\nimport cn from \"clsx\";\nimport { debounce } from \"../../../utils/debounce\";\nimport { Tab, TabProps } from \"./tab/tab\";\nimport { useEventCallback } from \"../../../hooks/useEventCallback\";\nimport { setRef } from \"../../../utils/setRef\";\nimport { animate } from \"../../../utils/animate\";\n\nexport interface TabsProps {\n value: number;\n onChange: (e: React.MouseEvent<HTMLButtonElement>, index: number) => void;\n indicatorContent?: boolean;\n scrollable?: boolean;\n className?: string;\n children?: React.ReactNode;\n /** Accessible label for the tab list. */\n \"aria-label\"?: string;\n}\n\ninterface IndicatorStyle {\n root: {\n left: number;\n width: number;\n };\n content?: {\n width: number;\n };\n}\n\nconst defaultIndicatorStyle = {\n root: {},\n content: {},\n} as IndicatorStyle;\n\nexport const Tabs = React.forwardRef<HTMLDivElement, TabsProps>(function Tabs(props, ref) {\n const {\n className,\n children,\n onChange,\n value,\n indicatorContent = false,\n scrollable = false,\n \"aria-label\": ariaLabel,\n ...rest\n } = props;\n const [mounted, setMounted] = React.useState(false);\n const [indicatorStyle, setIndicatorStyle] = React.useState<IndicatorStyle>(defaultIndicatorStyle);\n\n const tabsRef = React.useRef<HTMLDivElement>(null);\n const tabListRef = React.useRef<HTMLDivElement>(null);\n const contentTabsRef = React.useRef<HTMLSpanElement[]>([]);\n\n // Видимость следующего таба в пикселях\n const viewNextTabInPixels = 40;\n\n const getTabsMeta = () => {\n const tabsNode = tabsRef.current;\n\n let tabsMeta;\n\n if (tabsNode) {\n const rect = tabsNode.getBoundingClientRect();\n\n tabsMeta = {\n clientWidth: tabsNode.clientWidth,\n scrollLeft: tabsNode.scrollLeft,\n scrollTop: tabsNode.scrollTop,\n scrollWidth: tabsNode.scrollWidth,\n top: rect.top,\n bottom: rect.bottom,\n left: rect.left,\n right: rect.right,\n };\n }\n\n let tabMeta: DOMRect | null = null;\n let tabContentMeta: DOMRect | null = null;\n\n if (!tabListRef.current) {\n console.error(\"tabListRef.current is undefined\");\n }\n if (tabsNode && tabListRef.current) {\n const children = tabListRef.current.children;\n\n if (children.length > 0) {\n const tab = children[value];\n\n tabMeta = tab ? tab.getBoundingClientRect() : null;\n\n if (indicatorContent) {\n tabContentMeta = contentTabsRef.current[value] ? contentTabsRef.current[value].getBoundingClientRect() : null;\n }\n }\n }\n return { tabsMeta, tabMeta, tabContentMeta };\n };\n\n const updateIndicatorState = useEventCallback(() => {\n const { tabsMeta, tabMeta, tabContentMeta } = getTabsMeta();\n let startValue = 0;\n\n if (tabMeta && tabsMeta) {\n startValue = 1 * (tabMeta.left - tabsMeta.left + tabsMeta.scrollLeft);\n }\n\n const newIndicatorStyle: IndicatorStyle = {\n root: {\n left: startValue,\n width: tabMeta ? tabMeta.width : 0,\n },\n };\n\n if (indicatorContent && tabContentMeta) {\n newIndicatorStyle.content = {\n width: tabContentMeta.width,\n };\n }\n\n if (isNaN(indicatorStyle.root.left) || isNaN(indicatorStyle.root.width)) {\n setIndicatorStyle(newIndicatorStyle);\n } else {\n const dStart = Math.abs(indicatorStyle.root.left - newIndicatorStyle.root.left);\n const dSize = Math.abs(indicatorStyle.root.width - newIndicatorStyle.root.width);\n\n if (dStart >= 1 || dSize >= 1) {\n setIndicatorStyle(newIndicatorStyle);\n }\n }\n });\n\n const scroll = (scrollValue: number, { animation = true } = {}) => {\n if (!tabsRef.current) {\n return;\n }\n if (animation) {\n animate(tabsRef.current, \"scrollLeft\", scrollValue, {\n duration: 300,\n });\n } else {\n tabsRef.current.scrollLeft = scrollValue;\n }\n };\n\n const scrollSelectedIntoView = useEventCallback((animation: boolean) => {\n const { tabsMeta, tabMeta } = getTabsMeta();\n\n if (!tabMeta || !tabsMeta) {\n return;\n }\n\n if (tabMeta.left < tabsMeta.left) {\n // Левая сторона таба не видна.\n const nextScrollStart = tabsMeta.scrollLeft + (tabMeta.left - tabsMeta.left);\n scroll(nextScrollStart - viewNextTabInPixels, { animation });\n } else if (tabMeta.right > tabsMeta.right) {\n // Правая сторона таба не видна.\n const nextScrollStart = tabsMeta.scrollLeft + (tabMeta.right - tabsMeta.right);\n scroll(nextScrollStart + viewNextTabInPixels, { animation });\n }\n });\n\n React.useEffect(() => {\n setMounted(true);\n }, []);\n\n React.useEffect(() => {\n updateIndicatorState();\n });\n\n React.useEffect(() => {\n const onResize = debounce(() => {\n if (tabsRef.current) {\n updateIndicatorState();\n }\n }, 166);\n if (!tabsRef.current || !tabsRef.current.ownerDocument.defaultView) {\n console.error(`tabsRef.current.ownerDocument.defaultView is undefined`);\n return;\n }\n const window: Window & typeof globalThis = tabsRef.current.ownerDocument.defaultView;\n\n window.addEventListener(\"resize\", onResize);\n\n let resizeObserver: ResizeObserver;\n\n if (typeof ResizeObserver !== \"undefined\") {\n resizeObserver = new ResizeObserver(onResize);\n\n Array.from(tabListRef.current?.children ?? []).forEach((child) => {\n resizeObserver.observe(child);\n });\n }\n\n return () => {\n onResize.cancel();\n\n window.removeEventListener(\"resize\", onResize);\n\n if (resizeObserver) {\n resizeObserver.disconnect();\n }\n };\n }, [updateIndicatorState]);\n\n React.useEffect(() => {\n // Не анимировать при первом рендере\n scrollSelectedIntoView(defaultIndicatorStyle !== indicatorStyle);\n }, [scrollSelectedIntoView, indicatorStyle]);\n\n const tabs = React.Children.map(\n children as React.ReactElement<TabProps>[],\n (child: React.ReactElement<TabProps>, index) =>\n React.cloneElement(child, {\n isActive: value === index,\n onClick: (event: React.MouseEvent<HTMLButtonElement>) => {\n onChange(event, index);\n },\n ...(indicatorContent && {\n contentRef: (ref: HTMLSpanElement) => {\n const { contentRef } = child.props;\n\n contentTabsRef.current.push(ref);\n\n if (contentRef) {\n setRef(contentRef as React.Ref<unknown>, ref);\n }\n },\n }),\n } as TabProps)\n );\n\n return (\n <div className={cn(\"smwb-tabs\", className)} role={\"tabpanel\"} ref={ref} {...rest}>\n <div\n className={cn(\"smwb-tabs__scroller\", {\n \"smwb-tabs__scroller--scrollable\": scrollable,\n })}\n ref={tabsRef}\n >\n <div className=\"smwb-tabs__scroll-area\" ref={tabListRef} role=\"tablist\" aria-label={ariaLabel}>\n {tabs}\n </div>\n {mounted && (\n <span className=\"smwb-tabs__indicator\" style={indicatorStyle.root}>\n <span className=\"smwb-tabs__indicator-content\" style={indicatorStyle.content} />\n </span>\n )}\n </div>\n </div>\n );\n});\n\nexport { Tab };\nexport type { TabProps };\n"],"names":["defaultIndicatorStyle","Tabs","React","props","ref","className","children","onChange","value","indicatorContent","scrollable","ariaLabel","rest","mounted","setMounted","indicatorStyle","setIndicatorStyle","tabsRef","tabListRef","contentTabsRef","viewNextTabInPixels","getTabsMeta","tabsNode","tabsMeta","rect","tabMeta","tabContentMeta","tab","updateIndicatorState","useEventCallback","startValue","newIndicatorStyle","dStart","dSize","scroll","scrollValue","animation","animate","scrollSelectedIntoView","nextScrollStart","onResize","debounce","window","resizeObserver","_b","_a","child","tabs","index","event","contentRef","setRef","jsx","cn","jsxs"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export { Table, HeaderCellRenderer } from "./table";
2
+ export type { HeaderCellRendererProps } from "./table";
@@ -0,0 +1,13 @@
1
+ import { Table, Header, ColumnOrderState } from "@tanstack/react-table";
2
+ import { ReactNode } from "react";
3
+ export interface DraggableColumnHeaderProps<T> {
4
+ onColumnOrderChange?: (oldValue: ColumnOrderState, newValue: ColumnOrderState) => void;
5
+ header: Header<T, unknown>;
6
+ table: Table<T>;
7
+ children: ReactNode;
8
+ }
9
+ export declare function DraggableColumnHeader<T>({ header, table, children, onColumnOrderChange, }: DraggableColumnHeaderProps<T>): import("react/jsx-runtime").JSX.Element;
10
+ export type DraggableColumnHeaderWrapperProps<T> = DraggableColumnHeaderProps<T> & {
11
+ draggableColumn?: boolean | null;
12
+ };
13
+ export declare function DraggableColumnHeaderWrapper<T>({ onColumnOrderChange, header, table, children, draggableColumn, }: DraggableColumnHeaderWrapperProps<T>): string | number | boolean | import("react/jsx-runtime").JSX.Element | Iterable<ReactNode> | null | undefined;
@@ -0,0 +1,8 @@
1
+ import { Header } from "@tanstack/react-table";
2
+ import React from "react";
3
+ export interface HeaderCellRendererProps<T extends object> {
4
+ header?: Header<T, unknown>;
5
+ onChange?: (e: React.ChangeEvent<HTMLInputElement>, header: Header<T, unknown>) => void;
6
+ }
7
+ declare const HeaderCellRenderer: <T extends object>({ header, onChange }: HeaderCellRendererProps<T>) => import("react/jsx-runtime").JSX.Element;
8
+ export default HeaderCellRenderer;
@@ -0,0 +1,3 @@
1
+ export { default as Table } from "./table";
2
+ export { default as HeaderCellRenderer } from "./headerCellRenderer";
3
+ export type { HeaderCellRendererProps } from "./headerCellRenderer";
@@ -0,0 +1,39 @@
1
+ import React, { TdHTMLAttributes } from "react";
2
+ import { ColumnDef, RowData, Row, ColumnResizeMode, ColumnSizingState, ColumnOrderState } from "@tanstack/react-table";
3
+ declare module "@tanstack/table-core" {
4
+ interface ColumnMeta<TData extends RowData, TValue> {
5
+ cellProps?: TdHTMLAttributes<HTMLTableCellElement>;
6
+ draggableColumn?: boolean;
7
+ }
8
+ }
9
+ import { TableProps as SMWBTableProps } from "../../../components/dataDisplay/table";
10
+ export type TableProps<TData extends RowData, TValue = unknown> = SMWBTableProps & {
11
+ withPagination?: boolean;
12
+ isInfinite?: boolean;
13
+ dense?: boolean;
14
+ limit?: number;
15
+ limitOptions?: number[];
16
+ sortable?: boolean;
17
+ expandable?: boolean;
18
+ draggableColumns?: boolean;
19
+ enableColumnResizing?: boolean;
20
+ onColumnSizingChange?: (oldValue: ColumnSizingState, newValue: ColumnSizingState) => void;
21
+ onColumnOrderChange?: (oldValue: ColumnOrderState, newValue: ColumnOrderState) => void;
22
+ getRowCanExpand?: (row: Row<TData>) => boolean;
23
+ renderSubComponent?: (props: {
24
+ row: Row<TData>;
25
+ }) => React.ReactElement;
26
+ cellAlign?: "left" | "right" | "center";
27
+ isLoading?: boolean;
28
+ onNextPage?: () => void;
29
+ onPrevPage?: () => void;
30
+ error?: string;
31
+ onHeadCellClick?: (colDef?: ColumnDef<TData, TValue>) => void;
32
+ headerCellInnerRenderer?: React.ReactElement;
33
+ onBodyRowClick?: (row: Row<TData>, event: React.MouseEvent<HTMLTableRowElement>) => void;
34
+ data: TData[];
35
+ columns: ColumnDef<TData, TValue>[];
36
+ columnResizeMode?: ColumnResizeMode;
37
+ };
38
+ export declare const TableWrapper: <TData extends RowData, TValue = unknown>({ data, columns, withPagination, isInfinite, limit, limitOptions, dense, sortable, expandable, draggableColumns, columnResizeMode, enableColumnResizing, onColumnSizingChange, onColumnOrderChange, getRowCanExpand, renderSubComponent, cellAlign, isLoading, onNextPage, onPrevPage, error, onHeadCellClick, headerCellInnerRenderer, onBodyRowClick, ...props }: TableProps<TData, TValue>) => import("react/jsx-runtime").JSX.Element;
39
+ export default TableWrapper;
@@ -0,0 +1,7 @@
1
+ import { ColumnDef, ColumnSizingState } from "@tanstack/react-table";
2
+ export declare function columnSizingStateReducer(sum: ColumnSizingState, el: {
3
+ name: string;
4
+ size?: number;
5
+ }): ColumnSizingState;
6
+ export declare function getDefaultColumnSizingState<T, K>(columnDef: ColumnDef<T, K>[]): ColumnSizingState;
7
+ export declare function getColumnName<T, K>(column: ColumnDef<T, K>): string;
@@ -0,0 +1,118 @@
1
+ import { jsx as x } from "react/jsx-runtime";
2
+ import { forwardRef as rt, useRef as m, useState as v, useEffect as z } from "react";
3
+ import j from "clsx";
4
+ import { useForkRef as et } from "../../../hooks/useForkRef.js";
5
+ function it(t) {
6
+ const i = parseFloat(t);
7
+ return !isNaN(i) && isFinite(i);
8
+ }
9
+ function W(t) {
10
+ return typeof t == "string" && t[t.length - 1] === "%" && it(t.substring(0, t.length - 1));
11
+ }
12
+ function I(t, i) {
13
+ i === 0 && (t != null && t.style) && (t.style.display = "none");
14
+ }
15
+ function nt(t, i) {
16
+ i === 0 && (t != null && t.style) && (t.style.display = "");
17
+ }
18
+ const st = {
19
+ animating: "rah-animating",
20
+ animatingUp: "rah-animating--up",
21
+ animatingDown: "rah-animating--down",
22
+ animatingToHeightZero: "rah-animating--to-height-zero",
23
+ animatingToHeightAuto: "rah-animating--to-height-auto",
24
+ animatingToHeightSpecific: "rah-animating--to-height-specific",
25
+ static: "rah-static",
26
+ staticHeightZero: "rah-static--height-zero",
27
+ staticHeightAuto: "rah-static--height-auto",
28
+ staticHeightSpecific: "rah-static--height-specific"
29
+ };
30
+ function _(t, i) {
31
+ return j({
32
+ [t.static]: !0,
33
+ [t.staticHeightZero]: i === 0,
34
+ [t.staticHeightSpecific]: typeof i == "number" && i > 0,
35
+ [t.staticHeightAuto]: i === "auto"
36
+ });
37
+ }
38
+ const lt = rt(function({
39
+ animateOpacity: i = !1,
40
+ animationStateClasses: L = {},
41
+ applyInlineTransitions: M = !0,
42
+ children: q,
43
+ className: B = "",
44
+ contentClassName: G,
45
+ delay: J = 0,
46
+ duration: K = 300,
47
+ easing: O = "ease",
48
+ height: r,
49
+ onHeightAnimationEnd: u,
50
+ onHeightAnimationStart: f,
51
+ style: a,
52
+ ...y
53
+ }, Q) {
54
+ const c = m(r), s = m(null), V = m(null), X = et(Q, V), b = m(), T = m(), o = m({
55
+ ...st,
56
+ ...L
57
+ }), N = J, $ = K;
58
+ let d = r, C = "visible";
59
+ typeof d == "number" ? (d = typeof r != "number" || r < 0 ? 0 : r, C = "hidden") : W(d) && (d = r === "0%" ? 0 : r, C = "hidden");
60
+ const [g, H] = v(d), [Y, D] = v(C), [A, w] = v(!1), [E, R] = v(
61
+ _(o.current, r)
62
+ );
63
+ z(() => {
64
+ I(s.current, g);
65
+ }, []), z(() => {
66
+ if (r !== c.current && s.current) {
67
+ nt(s.current, c.current), s.current.style.overflow = "hidden";
68
+ const U = s.current.offsetHeight;
69
+ s.current.style.overflow = "";
70
+ const Z = $ + N;
71
+ let n, e, S = "hidden", F;
72
+ const k = c.current === "auto";
73
+ typeof r == "number" ? (n = r < 0 ? 0 : r, e = n) : W(r) ? (n = r === "0%" ? 0 : r, e = n) : (n = U, e = "auto", S = void 0), k && (e = n, n = U);
74
+ const tt = j({
75
+ [o.current.animating]: !0,
76
+ [o.current.animatingUp]: c.current === "auto" || r < c.current,
77
+ [o.current.animatingDown]: r === "auto" || r > c.current,
78
+ [o.current.animatingToHeightZero]: e === 0,
79
+ [o.current.animatingToHeightAuto]: e === "auto",
80
+ [o.current.animatingToHeightSpecific]: typeof e == "number" && e > 0
81
+ }), P = _(o.current, e);
82
+ H(n), D("hidden"), w(!k), R(tt), clearTimeout(T.current), clearTimeout(b.current), k ? (F = !0, T.current = setTimeout(() => {
83
+ H(e), D(S), w(F), f == null || f(e);
84
+ }, 50), b.current = setTimeout(() => {
85
+ w(!1), R(P), I(s.current, e), u == null || u(e);
86
+ }, Z)) : (f == null || f(n), T.current = setTimeout(() => {
87
+ H(e), D(S), w(!1), R(P), r !== "auto" && I(s.current, n), u == null || u(n);
88
+ }, Z));
89
+ }
90
+ return c.current = r, () => {
91
+ clearTimeout(T.current), clearTimeout(b.current);
92
+ };
93
+ }, [r]);
94
+ const l = {
95
+ ...a,
96
+ height: g,
97
+ overflow: Y || (a == null ? void 0 : a.overflow)
98
+ };
99
+ A && M && (l.transition = `height ${$}ms ${O} ${N}ms`, a != null && a.transition && (l.transition = `${a.transition}, ${l.transition}`), l.WebkitTransition = l.transition);
100
+ const p = {};
101
+ i && (p.transition = `opacity ${$}ms ${O} ${N}ms`, p.WebkitTransition = p.transition, g === 0 && (p.opacity = 0));
102
+ const h = typeof y["aria-hidden"] != "undefined" ? y["aria-hidden"] : r === 0;
103
+ return /* @__PURE__ */ x(
104
+ "div",
105
+ {
106
+ ...y,
107
+ ref: X,
108
+ "aria-hidden": h,
109
+ className: `${E} ${B}`,
110
+ style: l,
111
+ children: /* @__PURE__ */ x("div", { className: G, style: p, ref: s, children: q })
112
+ }
113
+ );
114
+ });
115
+ export {
116
+ lt as default
117
+ };
118
+ //# sourceMappingURL=animateHeight.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"animateHeight.js","sources":["../../../../../src/components/base/animateHeight/animateHeight.tsx"],"sourcesContent":["// https://github.com/Stanko/react-animate-height/blob/v3/src/index.tsx\n// MIT License\n//\n// Copyright (c) 2017 - today Stanko Tadić\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in all\n// copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n// SOFTWARE.\n//\n\nimport React, { CSSProperties, forwardRef, useEffect, useRef, useState } from \"react\";\nimport classNames from \"clsx\";\nimport { useForkRef } from \"../../../hooks/useForkRef\";\n\n// ------------------ Types\n\nexport type Height = \"auto\" | number | `${number}%`;\ntype Timeout = ReturnType<typeof setTimeout>;\ntype Overflow = \"auto\" | \"visible\" | \"hidden\" | undefined;\ntype AnimationStateClasses = {\n animating: string;\n animatingUp: string;\n animatingDown: string;\n animatingToHeightZero: string;\n animatingToHeightAuto: string;\n animatingToHeightSpecific: string;\n static: string;\n staticHeightZero: string;\n staticHeightAuto: string;\n staticHeightSpecific: string;\n};\n\n// ------------------ Helpers\n\nfunction isNumber(n: string) {\n const number = parseFloat(n);\n return !isNaN(number) && isFinite(number);\n}\n\nfunction isPercentage(height: Height) {\n // Percentage height\n return (\n typeof height === \"string\" && height[height.length - 1] === \"%\" && isNumber(height.substring(0, height.length - 1))\n );\n}\n\nfunction hideContent(element: HTMLDivElement | null, height: Height) {\n // Check for element?.style is added cause this would fail in tests (react-test-renderer)\n // Read more here: https://github.com/Stanko/react-animate-height/issues/17\n if (height === 0 && element?.style) {\n element.style.display = \"none\";\n }\n}\n\nfunction showContent(element: HTMLDivElement | null, height: Height) {\n // Check for element?.style is added cause this would fail in tests (react-test-renderer)\n // Read more here: https://github.com/Stanko/react-animate-height/issues/17\n if (height === 0 && element?.style) {\n element.style.display = \"\";\n }\n}\n\nconst ANIMATION_STATE_CLASSES: AnimationStateClasses = {\n animating: \"rah-animating\",\n animatingUp: \"rah-animating--up\",\n animatingDown: \"rah-animating--down\",\n animatingToHeightZero: \"rah-animating--to-height-zero\",\n animatingToHeightAuto: \"rah-animating--to-height-auto\",\n animatingToHeightSpecific: \"rah-animating--to-height-specific\",\n static: \"rah-static\",\n staticHeightZero: \"rah-static--height-zero\",\n staticHeightAuto: \"rah-static--height-auto\",\n staticHeightSpecific: \"rah-static--height-specific\",\n};\n\nfunction getStaticStateClasses(animationStateClasses: AnimationStateClasses, height: Height) {\n return classNames({\n [animationStateClasses.static]: true,\n [animationStateClasses.staticHeightZero]: height === 0,\n [animationStateClasses.staticHeightSpecific]: typeof height === \"number\" && height > 0,\n [animationStateClasses.staticHeightAuto]: height === \"auto\",\n });\n}\n\n// ------------------ Component\n\n// display and height are set by the component itself, therefore ignored\ntype OmitCSSProperties = \"display\" | \"height\";\n\ninterface AnimateHeightProps extends React.HTMLAttributes<HTMLDivElement> {\n animateOpacity?: boolean;\n animationStateClasses?: AnimationStateClasses;\n applyInlineTransitions?: boolean;\n contentClassName?: string;\n delay?: number;\n duration?: number;\n easing?: string;\n height: Height;\n onHeightAnimationEnd?: (newHeight: Height) => void;\n onHeightAnimationStart?: (newHeight: Height) => void;\n style?: Omit<CSSProperties, OmitCSSProperties>;\n}\n\nconst AnimateHeight = forwardRef<HTMLDivElement, AnimateHeightProps>(function AnimateHeight(\n {\n animateOpacity = false,\n animationStateClasses = {},\n applyInlineTransitions = true,\n children,\n className = \"\",\n contentClassName,\n delay: userDelay = 0,\n duration: userDuration = 300,\n easing = \"ease\",\n height,\n onHeightAnimationEnd,\n onHeightAnimationStart,\n style,\n ...props\n },\n ref\n) {\n // ------------------ Initialization\n const prevHeight = useRef<Height>(height);\n const contentElement = useRef<HTMLDivElement>(null);\n const rootElement = useRef<HTMLDivElement>(null);\n const forkedRootRef = useForkRef<HTMLDivElement>(ref, rootElement);\n\n const animationClassesTimeoutID = useRef<Timeout>();\n const timeoutID = useRef<Timeout>();\n\n const stateClasses = useRef<AnimationStateClasses>({\n ...ANIMATION_STATE_CLASSES,\n ...animationStateClasses,\n });\n\n const delay = userDelay;\n const duration = userDuration;\n\n let initHeight: Height = height;\n let initOverflow: Overflow = \"visible\";\n\n if (typeof initHeight === \"number\") {\n // Reset negative height to 0\n initHeight = typeof height !== \"number\" || height < 0 ? 0 : height;\n initOverflow = \"hidden\";\n } else if (isPercentage(initHeight)) {\n // If value is string \"0%\" make sure we convert it to number 0\n initHeight = height === \"0%\" ? 0 : height;\n initOverflow = \"hidden\";\n }\n\n const [currentHeight, setCurrentHeight] = useState<Height>(initHeight);\n const [overflow, setOverflow] = useState<Overflow>(initOverflow);\n const [useTransitions, setUseTransitions] = useState<boolean>(false);\n const [animationStateClassNames, setAnimationStateClassNames] = useState<string>(\n getStaticStateClasses(stateClasses.current, height)\n );\n\n // ------------------ Did mount\n useEffect(() => {\n // Hide content if height is 0 (to prevent tabbing into it)\n hideContent(contentElement.current, currentHeight);\n\n // This should be explicitly run only on mount\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n // ------------------ Height update\n useEffect(() => {\n if (height !== prevHeight.current && contentElement.current) {\n showContent(contentElement.current, prevHeight.current);\n\n // Cache content height\n contentElement.current.style.overflow = \"hidden\";\n const contentHeight = contentElement.current.offsetHeight;\n contentElement.current.style.overflow = \"\";\n\n // set total animation time\n const totalDuration = duration + delay;\n\n let newHeight: Height;\n let timeoutHeight: Height;\n let timeoutOverflow: Overflow = \"hidden\";\n let timeoutUseTransitions: boolean;\n\n const isCurrentHeightAuto = prevHeight.current === \"auto\";\n\n if (typeof height === \"number\") {\n // Reset negative height to 0\n newHeight = height < 0 ? 0 : height;\n timeoutHeight = newHeight;\n } else if (isPercentage(height)) {\n // If value is string \"0%\" make sure we convert it to number 0\n newHeight = height === \"0%\" ? 0 : height;\n timeoutHeight = newHeight;\n } else {\n // If not, animate to content height\n // and then reset to auto\n newHeight = contentHeight; // TODO solve contentHeight = 0\n timeoutHeight = \"auto\";\n timeoutOverflow = undefined;\n }\n\n if (isCurrentHeightAuto) {\n // This is the height to be animated to\n timeoutHeight = newHeight;\n\n // If previous height was 'auto'\n // set starting height explicitly to be able to use transition\n newHeight = contentHeight;\n }\n\n // Animation classes\n const newAnimationStateClassNames = classNames({\n [stateClasses.current.animating]: true,\n [stateClasses.current.animatingUp]: prevHeight.current === \"auto\" || height < prevHeight.current,\n [stateClasses.current.animatingDown]: height === \"auto\" || height > prevHeight.current,\n [stateClasses.current.animatingToHeightZero]: timeoutHeight === 0,\n [stateClasses.current.animatingToHeightAuto]: timeoutHeight === \"auto\",\n [stateClasses.current.animatingToHeightSpecific]: typeof timeoutHeight === \"number\" && timeoutHeight > 0,\n });\n\n // Animation classes to be put after animation is complete\n const timeoutAnimationStateClasses = getStaticStateClasses(stateClasses.current, timeoutHeight);\n\n // Set starting height and animating classes\n // When animating from 'auto' we first need to set fixed height\n // that change should be animated\n setCurrentHeight(newHeight);\n setOverflow(\"hidden\");\n setUseTransitions(!isCurrentHeightAuto);\n setAnimationStateClassNames(newAnimationStateClassNames);\n\n // Clear timeouts\n clearTimeout(timeoutID.current);\n clearTimeout(animationClassesTimeoutID.current);\n\n if (isCurrentHeightAuto) {\n // When animating from 'auto' we use a short timeout to start animation\n // after setting fixed height above\n timeoutUseTransitions = true;\n\n // Short timeout to allow rendering of the initial animation state first\n timeoutID.current = setTimeout(() => {\n setCurrentHeight(timeoutHeight);\n setOverflow(timeoutOverflow);\n setUseTransitions(timeoutUseTransitions);\n\n // ANIMATION STARTS, run a callback if it exists\n onHeightAnimationStart?.(timeoutHeight);\n }, 50);\n\n // Set static classes and remove transitions when animation ends\n animationClassesTimeoutID.current = setTimeout(() => {\n setUseTransitions(false);\n setAnimationStateClassNames(timeoutAnimationStateClasses);\n\n // ANIMATION ENDS\n // Hide content if height is 0 (to prevent tabbing into it)\n hideContent(contentElement.current, timeoutHeight);\n // Run a callback if it exists\n onHeightAnimationEnd?.(timeoutHeight);\n }, totalDuration);\n } else {\n // ANIMATION STARTS, run a callback if it exists\n onHeightAnimationStart?.(newHeight);\n\n // Set end height, classes and remove transitions when animation is complete\n timeoutID.current = setTimeout(() => {\n setCurrentHeight(timeoutHeight);\n setOverflow(timeoutOverflow);\n setUseTransitions(false);\n setAnimationStateClassNames(timeoutAnimationStateClasses);\n\n // ANIMATION ENDS\n // If height is auto, don't hide the content\n // (case when element is empty, therefore height is 0)\n if (height !== \"auto\") {\n // Hide content if height is 0 (to prevent tabbing into it)\n hideContent(contentElement.current, newHeight); // TODO solve newHeight = 0\n }\n // Run a callback if it exists\n onHeightAnimationEnd?.(newHeight);\n }, totalDuration);\n }\n }\n\n prevHeight.current = height;\n\n return () => {\n clearTimeout(timeoutID.current);\n clearTimeout(animationClassesTimeoutID.current);\n };\n\n // This should be explicitly run only on height change\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [height]);\n\n // ------------------ Render\n\n const componentStyle: CSSProperties = {\n ...style,\n height: currentHeight,\n overflow: overflow || style?.overflow,\n };\n\n if (useTransitions && applyInlineTransitions) {\n componentStyle.transition = `height ${duration}ms ${easing} ${delay}ms`;\n\n // Include transition passed through styles\n if (style?.transition) {\n componentStyle.transition = `${style.transition}, ${componentStyle.transition}`;\n }\n\n // Add webkit vendor prefix still used by opera, blackberry...\n componentStyle.WebkitTransition = componentStyle.transition;\n }\n\n const contentStyle: CSSProperties = {};\n\n if (animateOpacity) {\n contentStyle.transition = `opacity ${duration}ms ${easing} ${delay}ms`;\n // Add webkit vendor prefix still used by opera, blackberry...\n contentStyle.WebkitTransition = contentStyle.transition;\n\n if (currentHeight === 0) {\n contentStyle.opacity = 0;\n }\n }\n\n // Check if user passed aria-hidden prop\n const hasAriaHiddenProp = typeof props[\"aria-hidden\"] !== \"undefined\";\n const ariaHidden = hasAriaHiddenProp ? props[\"aria-hidden\"] : height === 0;\n\n return (\n <div\n {...props}\n ref={forkedRootRef}\n aria-hidden={ariaHidden}\n className={`${animationStateClassNames} ${className}`}\n style={componentStyle}\n >\n <div className={contentClassName} style={contentStyle} ref={contentElement}>\n {children}\n </div>\n </div>\n );\n});\n\nexport default AnimateHeight;\n"],"names":["isNumber","n","number","isPercentage","height","hideContent","element","showContent","ANIMATION_STATE_CLASSES","getStaticStateClasses","animationStateClasses","classNames","AnimateHeight","forwardRef","animateOpacity","applyInlineTransitions","children","className","contentClassName","userDelay","userDuration","easing","onHeightAnimationEnd","onHeightAnimationStart","style","props","ref","prevHeight","useRef","contentElement","rootElement","forkedRootRef","useForkRef","animationClassesTimeoutID","timeoutID","stateClasses","delay","duration","initHeight","initOverflow","currentHeight","setCurrentHeight","useState","overflow","setOverflow","useTransitions","setUseTransitions","animationStateClassNames","setAnimationStateClassNames","useEffect","contentHeight","totalDuration","newHeight","timeoutHeight","timeoutOverflow","timeoutUseTransitions","isCurrentHeightAuto","newAnimationStateClassNames","timeoutAnimationStateClasses","componentStyle","contentStyle","ariaHidden","jsx"],"mappings":"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"}
@@ -0,0 +1,26 @@
1
+ import { jsx as i } from "react/jsx-runtime";
2
+ import { forwardRef as p } from "react";
3
+ import u from "clsx";
4
+ const $ = p(function({ className: s, weight: t = 400, fill: c = 0, size: o = 20, grade: d = 100, name: l, color: n = "inherit", title: r, ...a }, m) {
5
+ const e = r === void 0, f = n && ["primary", "secondary", "error", "success", "warning", "info", "disabled"].includes(n) ? `smwb-icon_color-${n}` : null;
6
+ return /* @__PURE__ */ i(
7
+ "span",
8
+ {
9
+ ...a,
10
+ ref: m,
11
+ "data-testid": "icon",
12
+ role: e ? void 0 : "img",
13
+ "aria-hidden": e ? !0 : void 0,
14
+ "aria-label": r,
15
+ title: r,
16
+ style: { ...a.style, fontVariationSettings: `'FILL' ${c}, 'wght' ${t}, 'GRAD' ${d}, 'opsz' 48` },
17
+ className: u("smwb-icon__wrapper", f, s),
18
+ children: /* @__PURE__ */ i("span", { className: "material-symbols-outlined", style: { fontSize: typeof o == "number" ? `${o}px` : o }, children: l })
19
+ }
20
+ );
21
+ });
22
+ export {
23
+ $ as Icon,
24
+ $ as default
25
+ };
26
+ //# sourceMappingURL=icon.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"icon.js","sources":["../../../../../src/components/base/icon/icon.tsx"],"sourcesContent":["import { forwardRef, HTMLAttributes } from \"react\";\nimport cn from \"clsx\";\n\nexport type IconColor = \"inherit\" | \"primary\" | \"secondary\" | \"error\" | \"success\" | \"warning\" | \"info\" | \"disabled\";\n\nexport interface IconProps extends HTMLAttributes<HTMLSpanElement> {\n /**\n * Icon name from https://fonts.google.com/icons\n * Пример: name={\"arrow_right_alt\"}\n */\n name: string;\n className?: string;\n weight?: number;\n fill?: 0 | 1;\n /** Pixel number or any CSS length (e.g. \"1.5rem\"). */\n size?: number | string;\n grade?: number;\n /**\n * Semantic color token; `inherit` (default) keeps the text color.\n * Any string is accepted for backward compatibility, but only known\n * {@link IconColor} tokens emit a color class.\n */\n color?: IconColor | (string & {});\n /**\n * Accessible name. When provided the icon is exposed as\n * `role=\"img\"`; otherwise it is `aria-hidden` (decorative).\n */\n title?: string;\n}\n\nexport const Icon = forwardRef<HTMLSpanElement, IconProps>(function Icon(\n { className, weight = 400, fill = 0, size = 20, grade = 100, name, color = \"inherit\", title, ...props },\n ref\n) {\n const decorative = title === undefined;\n const colorClass =\n color && [\"primary\", \"secondary\", \"error\", \"success\", \"warning\", \"info\", \"disabled\"].includes(color)\n ? `smwb-icon_color-${color}`\n : null;\n return (\n <span\n {...props}\n ref={ref}\n data-testid=\"icon\"\n role={decorative ? undefined : \"img\"}\n aria-hidden={decorative ? true : undefined}\n aria-label={title}\n title={title}\n style={{ ...props.style, fontVariationSettings: `'FILL' ${fill}, 'wght' ${weight}, 'GRAD' ${grade}, 'opsz' 48` }}\n className={cn(\"smwb-icon__wrapper\", colorClass, className)}\n >\n <span className=\"material-symbols-outlined\" style={{ fontSize: typeof size === \"number\" ? `${size}px` : size }}>\n {name}\n </span>\n </span>\n );\n});\n\nexport default Icon;\n"],"names":["Icon","forwardRef","className","weight","fill","size","grade","name","color","title","props","ref","decorative","colorClass","jsx","cn"],"mappings":";;;AA8BO,MAAMA,IAAOC,EAAuC,SACzD,EAAE,WAAAC,GAAW,QAAAC,IAAS,KAAK,MAAAC,IAAO,GAAG,MAAAC,IAAO,IAAI,OAAAC,IAAQ,KAAK,MAAAC,GAAM,OAAAC,IAAQ,WAAW,OAAAC,GAAO,GAAGC,EAAA,GAChGC,GACA;AACA,QAAMC,IAAaH,MAAU,QACvBI,IACJL,KAAS,CAAC,WAAW,aAAa,SAAS,WAAW,WAAW,QAAQ,UAAU,EAAE,SAASA,CAAK,IAC/F,mBAAmBA,CAAK,KACxB;AACN,SACE,gBAAAM;AAAA,IAAC;AAAA,IAAA;AAAA,MACE,GAAGJ;AAAA,MACJ,KAAAC;AAAA,MACA,eAAY;AAAA,MACZ,MAAMC,IAAa,SAAY;AAAA,MAC/B,eAAaA,IAAa,KAAO;AAAA,MACjC,cAAYH;AAAA,MACZ,OAAAA;AAAA,MACA,OAAO,EAAE,GAAGC,EAAM,OAAO,uBAAuB,UAAUN,CAAI,YAAYD,CAAM,YAAYG,CAAK,cAAA;AAAA,MACjG,WAAWS,EAAG,sBAAsBF,GAAYX,CAAS;AAAA,MAEzD,UAAA,gBAAAY,EAAC,QAAA,EAAK,WAAU,6BAA4B,OAAO,EAAE,UAAU,OAAOT,KAAS,WAAW,GAAGA,CAAI,OAAOA,EAAA,GACrG,UAAAE,EAAA,CACH;AAAA,IAAA;AAAA,EAAA;AAGN,CAAC;"}
@@ -0,0 +1,41 @@
1
+ import { jsx as R } from "react/jsx-runtime";
2
+ import u, { forwardRef as N } from "react";
3
+ import b from "clsx";
4
+ const B = N(function({ actionRef: x, className: l, classes: i, center: g, style: e, duration: f = 600, color: r, ...a }, C) {
5
+ const [n, c] = u.useState([]), w = u.useRef(0);
6
+ return u.useImperativeHandle(
7
+ x,
8
+ () => ({
9
+ onRipple(d) {
10
+ const t = d.currentTarget.getBoundingClientRect(), h = Math.max(t.width, t.height), p = h / 2;
11
+ let o, m;
12
+ g ? (o = t.width > t.height ? 0 : t.width / 2 - p, m = t.height > t.width ? 0 : t.height / 2 - p) : (o = d.clientX - t.left - p, m = d.clientY - t.top - p), c([
13
+ ...n,
14
+ /* @__PURE__ */ R(
15
+ "span",
16
+ {
17
+ className: b("smwb-ripple__child", i == null ? void 0 : i.child),
18
+ style: {
19
+ ...e,
20
+ left: o,
21
+ top: m,
22
+ width: h,
23
+ height: h,
24
+ backgroundColor: r != null ? r : e == null ? void 0 : e.backgroundColor
25
+ },
26
+ ...a
27
+ },
28
+ w.current
29
+ )
30
+ ]), w.current += 1, setTimeout(() => {
31
+ c((k) => k.slice(1));
32
+ }, f);
33
+ }
34
+ }),
35
+ [a, g, n, i == null ? void 0 : i.child, e, f, r]
36
+ ), /* @__PURE__ */ R("span", { ref: C, className: b("smwb-ripple", l, i == null ? void 0 : i.ripple), "data-testid": "ripple", "aria-hidden": "true", children: n });
37
+ });
38
+ export {
39
+ B as Ripple
40
+ };
41
+ //# sourceMappingURL=ripple.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ripple.js","sources":["../../../../../src/components/base/ripple/ripple.tsx"],"sourcesContent":["import React, { forwardRef } from \"react\";\nimport cn from \"clsx\";\n\nexport interface RippleActionsRef {\n onRipple: (event: React.MouseEvent) => void;\n}\n\nexport interface RippleClasses {\n ripple?: string;\n child?: string;\n}\n\nexport interface RippleProps extends React.HTMLAttributes<HTMLSpanElement> {\n actionRef: React.Ref<RippleActionsRef>;\n classes?: RippleClasses;\n center?: boolean;\n /** Ripple lifetime in ms. */\n duration?: number;\n /** Ripple color (any CSS color). Defaults to inherited currentColor. */\n color?: string;\n}\n\n/**\n * ⚠️ Для правильной работы этого эффекта, установите у компонента родителя CSS: **position: relative;**\n */\n\nexport const Ripple = forwardRef<HTMLSpanElement, RippleProps>(function Ripple(\n { actionRef, className, classes, center, style, duration = 600, color, ...rest },\n ref\n) {\n const [ripples, setRipples] = React.useState<React.ReactNode[]>([]);\n const nextKey = React.useRef<number>(0);\n\n React.useImperativeHandle(\n actionRef,\n () => ({\n onRipple(event: React.MouseEvent) {\n const target = event.currentTarget as HTMLElement;\n const rect = target.getBoundingClientRect();\n const diameter = Math.max(rect.width, rect.height);\n const radius = diameter / 2;\n\n let coordX;\n let coordY;\n\n if (center) {\n coordX = rect.width > rect.height ? 0 : rect.width / 2 - radius;\n coordY = rect.height > rect.width ? 0 : rect.height / 2 - radius;\n } else {\n coordX = event.clientX - rect.left - radius;\n coordY = event.clientY - rect.top - radius;\n }\n\n setRipples([\n ...ripples,\n <span\n key={nextKey.current}\n className={cn(\"smwb-ripple__child\", classes?.child)}\n style={{\n ...style,\n left: coordX,\n top: coordY,\n width: diameter,\n height: diameter,\n backgroundColor: color ?? style?.backgroundColor,\n }}\n {...rest}\n />,\n ]);\n\n nextKey.current += 1;\n\n setTimeout(() => {\n setRipples((prevRipples) => prevRipples.slice(1));\n }, duration);\n },\n }),\n [rest, center, ripples, classes?.child, style, duration, color]\n );\n\n return (\n <span ref={ref} className={cn(\"smwb-ripple\", className, classes?.ripple)} data-testid=\"ripple\" aria-hidden=\"true\">\n {ripples}\n </span>\n );\n});\n"],"names":["Ripple","forwardRef","actionRef","className","classes","center","style","duration","color","rest","ref","ripples","setRipples","React","nextKey","event","rect","diameter","radius","coordX","coordY","jsx","cn","prevRipples"],"mappings":";;;AA0BO,MAAMA,IAASC,EAAyC,SAC7D,EAAE,WAAAC,GAAW,WAAAC,GAAW,SAAAC,GAAS,QAAAC,GAAQ,OAAAC,GAAO,UAAAC,IAAW,KAAK,OAAAC,GAAO,GAAGC,EAAA,GAC1EC,GACA;AACA,QAAM,CAACC,GAASC,CAAU,IAAIC,EAAM,SAA4B,CAAA,CAAE,GAC5DC,IAAUD,EAAM,OAAe,CAAC;AAEtC,SAAAA,EAAM;AAAA,IACJX;AAAA,IACA,OAAO;AAAA,MACL,SAASa,GAAyB;AAEhC,cAAMC,IADSD,EAAM,cACD,sBAAA,GACdE,IAAW,KAAK,IAAID,EAAK,OAAOA,EAAK,MAAM,GAC3CE,IAASD,IAAW;AAE1B,YAAIE,GACAC;AAEJ,QAAIf,KACFc,IAASH,EAAK,QAAQA,EAAK,SAAS,IAAIA,EAAK,QAAQ,IAAIE,GACzDE,IAASJ,EAAK,SAASA,EAAK,QAAQ,IAAIA,EAAK,SAAS,IAAIE,MAE1DC,IAASJ,EAAM,UAAUC,EAAK,OAAOE,GACrCE,IAASL,EAAM,UAAUC,EAAK,MAAME,IAGtCN,EAAW;AAAA,UACT,GAAGD;AAAA,UACH,gBAAAU;AAAA,YAAC;AAAA,YAAA;AAAA,cAEC,WAAWC,EAAG,sBAAsBlB,KAAA,gBAAAA,EAAS,KAAK;AAAA,cAClD,OAAO;AAAA,gBACL,GAAGE;AAAA,gBACH,MAAMa;AAAA,gBACN,KAAKC;AAAA,gBACL,OAAOH;AAAA,gBACP,QAAQA;AAAA,gBACR,iBAAiBT,KAAA,OAAAA,IAASF,KAAA,gBAAAA,EAAO;AAAA,cAAA;AAAA,cAElC,GAAGG;AAAA,YAAA;AAAA,YAVCK,EAAQ;AAAA,UAAA;AAAA,QAWf,CACD,GAEDA,EAAQ,WAAW,GAEnB,WAAW,MAAM;AACf,UAAAF,EAAW,CAACW,MAAgBA,EAAY,MAAM,CAAC,CAAC;AAAA,QAClD,GAAGhB,CAAQ;AAAA,MACb;AAAA,IAAA;AAAA,IAEF,CAACE,GAAMJ,GAAQM,GAASP,KAAA,gBAAAA,EAAS,OAAOE,GAAOC,GAAUC,CAAK;AAAA,EAAA,GAI9D,gBAAAa,EAAC,QAAA,EAAK,KAAAX,GAAU,WAAWY,EAAG,eAAenB,GAAWC,KAAA,gBAAAA,EAAS,MAAM,GAAG,eAAY,UAAS,eAAY,QACxG,UAAAO,GACH;AAEJ,CAAC;"}
@@ -0,0 +1,67 @@
1
+ import { jsx as g, Fragment as k } from "react/jsx-runtime";
2
+ import P, { useRef as a, useEffect as p } from "react";
3
+ import { useForkRef as y } from "../../hooks/useForkRef.js";
4
+ import { useEventCallback as C } from "../../hooks/useEventCallback.js";
5
+ function E(t) {
6
+ return t.substring(2).toLowerCase();
7
+ }
8
+ function M(t, s) {
9
+ return s.documentElement.clientWidth < t.clientX || s.documentElement.clientHeight < t.clientY;
10
+ }
11
+ function A({
12
+ children: t,
13
+ disableReactTree: s = !1,
14
+ mouseEvent: n = "onMouseUp",
15
+ onClickAway: L,
16
+ touchEvent: r = "onTouchEnd",
17
+ enabled: v = !0
18
+ }) {
19
+ const f = a(!1), u = a(null), l = a(!1), d = a(!1);
20
+ p(() => (setTimeout(() => {
21
+ l.current = !0;
22
+ }, 0), () => {
23
+ l.current = !1;
24
+ }), []);
25
+ const T = y(t.ref, u), o = C((e) => {
26
+ const c = d.current;
27
+ if (d.current = !1, !v || !l.current || !u.current || "clientX" in e && M(e, document))
28
+ return;
29
+ if (f.current) {
30
+ f.current = !1;
31
+ return;
32
+ }
33
+ let i;
34
+ if (e.composedPath)
35
+ i = e.composedPath().indexOf(u.current) > -1;
36
+ else {
37
+ const R = e.target;
38
+ i = !document.documentElement.contains(R) || u.current.contains(R);
39
+ }
40
+ !i && (s || !c) && L(e);
41
+ }), h = (e) => (c) => {
42
+ d.current = !0;
43
+ const i = t.props[e];
44
+ i && i(c);
45
+ }, m = { ref: T };
46
+ return r !== !1 && (m[r] = h(r)), p(() => {
47
+ if (r !== !1) {
48
+ const e = E(r), c = () => {
49
+ f.current = !0;
50
+ };
51
+ return document.addEventListener(e, o), document.addEventListener("touchmove", c), () => {
52
+ document.removeEventListener(e, o), document.removeEventListener("touchmove", c);
53
+ };
54
+ }
55
+ }, [o, r]), n !== !1 && (m[n] = h(n)), p(() => {
56
+ if (n !== !1) {
57
+ const e = E(n);
58
+ return document.addEventListener(e, o), () => {
59
+ document.removeEventListener(e, o);
60
+ };
61
+ }
62
+ }, [o, n]), /* @__PURE__ */ g(k, { children: P.cloneElement(t, m) });
63
+ }
64
+ export {
65
+ A as ClickAwayListener
66
+ };
67
+ //# sourceMappingURL=clickAwayListener.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"clickAwayListener.js","sources":["../../../../src/components/clickAwayListener/clickAwayListener.tsx"],"sourcesContent":["import React, { useEffect, useRef } from \"react\";\nimport { useForkRef } from \"../../hooks/useForkRef\";\nimport { useEventCallback } from \"../../hooks/useEventCallback\";\n\ntype ClickAwayMouseEventHandler = \"onClick\" | \"onMouseDown\" | \"onMouseUp\" | \"onPointerDown\" | \"onPointerUp\";\ntype ClickAwayTouchEventHandler = \"onTouchStart\" | \"onTouchEnd\";\n\nfunction mapEventPropToEvent(eventProp: ClickAwayMouseEventHandler | ClickAwayTouchEventHandler) {\n return eventProp.substring(2).toLowerCase() as\n | \"click\"\n | \"mousedown\"\n | \"mouseup\"\n | \"touchstart\"\n | \"touchend\"\n | \"pointerdown\"\n | \"pointerup\";\n}\n\nfunction clickedRootScrollbar(event: MouseEvent, doc: Document) {\n return doc.documentElement.clientWidth < event.clientX || doc.documentElement.clientHeight < event.clientY;\n}\n\nexport interface ClickAwayListenerProps {\n children: React.ReactElement;\n disableReactTree?: boolean;\n mouseEvent?: ClickAwayMouseEventHandler | false;\n onClickAway: (event: MouseEvent | TouchEvent) => void;\n touchEvent?: ClickAwayTouchEventHandler | false;\n /** When false, the listener is inert without unmounting the child. */\n enabled?: boolean;\n}\n\nexport function ClickAwayListener({\n children,\n disableReactTree = false,\n mouseEvent = \"onMouseUp\",\n onClickAway,\n touchEvent = \"onTouchEnd\",\n enabled = true,\n}: ClickAwayListenerProps) {\n const movedRef = useRef(false);\n const nodeRef = useRef<Element>(null);\n const activatedRef = useRef(false);\n const syntheticEventRef = useRef(false);\n\n useEffect(() => {\n // https://github.com/facebook/react/issues/20074\n setTimeout(() => {\n activatedRef.current = true;\n }, 0);\n return () => {\n activatedRef.current = false;\n };\n }, []);\n\n const handleRef = useForkRef((children as React.ReactElement & { ref: React.Ref<Element> }).ref, nodeRef);\n\n const handleClickAway = useEventCallback((event: MouseEvent | TouchEvent) => {\n const insideReactTree = syntheticEventRef.current;\n syntheticEventRef.current = false;\n\n if (\n !enabled ||\n !activatedRef.current ||\n !nodeRef.current ||\n (\"clientX\" in event && clickedRootScrollbar(event, document))\n ) {\n return;\n }\n\n if (movedRef.current) {\n movedRef.current = false;\n return;\n }\n\n let insideDOM;\n\n if (event.composedPath) {\n insideDOM = event.composedPath().indexOf(nodeRef.current) > -1;\n } else {\n const target = event.target as HTMLElement;\n\n insideDOM = !document.documentElement.contains(target) || nodeRef.current.contains(target);\n }\n\n if (!insideDOM && (disableReactTree || !insideReactTree)) {\n onClickAway(event);\n }\n });\n\n const createHandleSynthetic = (handlerName: string) => (event: React.SyntheticEvent) => {\n syntheticEventRef.current = true;\n\n // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment,@typescript-eslint/no-unsafe-member-access\n const childrenPropsHandler = children.props[handlerName];\n\n if (childrenPropsHandler) {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-call\n childrenPropsHandler(event);\n }\n };\n\n const childrenProps: { ref: React.Ref<Element> } & Pick<\n React.DOMAttributes<Element>,\n ClickAwayMouseEventHandler | ClickAwayTouchEventHandler\n > = { ref: handleRef };\n\n if (touchEvent !== false) {\n childrenProps[touchEvent] = createHandleSynthetic(touchEvent);\n }\n\n useEffect(() => {\n if (touchEvent !== false) {\n const mappedTouchEvent = mapEventPropToEvent(touchEvent);\n\n const handleTouchMove = () => {\n movedRef.current = true;\n };\n\n document.addEventListener(mappedTouchEvent, handleClickAway);\n document.addEventListener(\"touchmove\", handleTouchMove);\n\n return () => {\n document.removeEventListener(mappedTouchEvent, handleClickAway);\n document.removeEventListener(\"touchmove\", handleTouchMove);\n };\n }\n\n return undefined;\n }, [handleClickAway, touchEvent]);\n\n if (mouseEvent !== false) {\n childrenProps[mouseEvent] = createHandleSynthetic(mouseEvent);\n }\n\n useEffect(() => {\n if (mouseEvent !== false) {\n const mappedMouseEvent = mapEventPropToEvent(mouseEvent);\n\n document.addEventListener(mappedMouseEvent, handleClickAway);\n\n return () => {\n document.removeEventListener(mappedMouseEvent, handleClickAway);\n };\n }\n\n return undefined;\n }, [handleClickAway, mouseEvent]);\n\n return <>{React.cloneElement(children, childrenProps)}</>;\n}\n"],"names":["mapEventPropToEvent","eventProp","clickedRootScrollbar","event","doc","ClickAwayListener","children","disableReactTree","mouseEvent","onClickAway","touchEvent","enabled","movedRef","useRef","nodeRef","activatedRef","syntheticEventRef","useEffect","handleRef","useForkRef","handleClickAway","useEventCallback","insideReactTree","insideDOM","target","createHandleSynthetic","handlerName","childrenPropsHandler","childrenProps","mappedTouchEvent","handleTouchMove","mappedMouseEvent","jsx","Fragment","React"],"mappings":";;;;AAOA,SAASA,EAAoBC,GAAoE;AAC/F,SAAOA,EAAU,UAAU,CAAC,EAAE,YAAA;AAQhC;AAEA,SAASC,EAAqBC,GAAmBC,GAAe;AAC9D,SAAOA,EAAI,gBAAgB,cAAcD,EAAM,WAAWC,EAAI,gBAAgB,eAAeD,EAAM;AACrG;AAYO,SAASE,EAAkB;AAAA,EAChC,UAAAC;AAAA,EACA,kBAAAC,IAAmB;AAAA,EACnB,YAAAC,IAAa;AAAA,EACb,aAAAC;AAAA,EACA,YAAAC,IAAa;AAAA,EACb,SAAAC,IAAU;AACZ,GAA2B;AACzB,QAAMC,IAAWC,EAAO,EAAK,GACvBC,IAAUD,EAAgB,IAAI,GAC9BE,IAAeF,EAAO,EAAK,GAC3BG,IAAoBH,EAAO,EAAK;AAEtC,EAAAI,EAAU,OAER,WAAW,MAAM;AACf,IAAAF,EAAa,UAAU;AAAA,EACzB,GAAG,CAAC,GACG,MAAM;AACX,IAAAA,EAAa,UAAU;AAAA,EACzB,IACC,CAAA,CAAE;AAEL,QAAMG,IAAYC,EAAYb,EAA8D,KAAKQ,CAAO,GAElGM,IAAkBC,EAAiB,CAAClB,MAAmC;AAC3E,UAAMmB,IAAkBN,EAAkB;AAG1C,QAFAA,EAAkB,UAAU,IAG1B,CAACL,KACD,CAACI,EAAa,WACd,CAACD,EAAQ,WACR,aAAaX,KAASD,EAAqBC,GAAO,QAAQ;AAE3D;AAGF,QAAIS,EAAS,SAAS;AACpB,MAAAA,EAAS,UAAU;AACnB;AAAA,IACF;AAEA,QAAIW;AAEJ,QAAIpB,EAAM;AACR,MAAAoB,IAAYpB,EAAM,aAAA,EAAe,QAAQW,EAAQ,OAAO,IAAI;AAAA,SACvD;AACL,YAAMU,IAASrB,EAAM;AAErB,MAAAoB,IAAY,CAAC,SAAS,gBAAgB,SAASC,CAAM,KAAKV,EAAQ,QAAQ,SAASU,CAAM;AAAA,IAC3F;AAEA,IAAI,CAACD,MAAchB,KAAoB,CAACe,MACtCb,EAAYN,CAAK;AAAA,EAErB,CAAC,GAEKsB,IAAwB,CAACC,MAAwB,CAACvB,MAAgC;AACtF,IAAAa,EAAkB,UAAU;AAG5B,UAAMW,IAAuBrB,EAAS,MAAMoB,CAAW;AAEvD,IAAIC,KAEFA,EAAqBxB,CAAK;AAAA,EAE9B,GAEMyB,IAGF,EAAE,KAAKV,EAAA;AAEX,SAAIR,MAAe,OACjBkB,EAAclB,CAAU,IAAIe,EAAsBf,CAAU,IAG9DO,EAAU,MAAM;AACd,QAAIP,MAAe,IAAO;AACxB,YAAMmB,IAAmB7B,EAAoBU,CAAU,GAEjDoB,IAAkB,MAAM;AAC5B,QAAAlB,EAAS,UAAU;AAAA,MACrB;AAEA,sBAAS,iBAAiBiB,GAAkBT,CAAe,GAC3D,SAAS,iBAAiB,aAAaU,CAAe,GAE/C,MAAM;AACX,iBAAS,oBAAoBD,GAAkBT,CAAe,GAC9D,SAAS,oBAAoB,aAAaU,CAAe;AAAA,MAC3D;AAAA,IACF;AAAA,EAGF,GAAG,CAACV,GAAiBV,CAAU,CAAC,GAE5BF,MAAe,OACjBoB,EAAcpB,CAAU,IAAIiB,EAAsBjB,CAAU,IAG9DS,EAAU,MAAM;AACd,QAAIT,MAAe,IAAO;AACxB,YAAMuB,IAAmB/B,EAAoBQ,CAAU;AAEvD,sBAAS,iBAAiBuB,GAAkBX,CAAe,GAEpD,MAAM;AACX,iBAAS,oBAAoBW,GAAkBX,CAAe;AAAA,MAChE;AAAA,IACF;AAAA,EAGF,GAAG,CAACA,GAAiBZ,CAAU,CAAC,GAEzB,gBAAAwB,EAAAC,GAAA,EAAG,UAAAC,EAAM,aAAa5B,GAAUsB,CAAa,GAAE;AACxD;"}
@@ -0,0 +1,61 @@
1
+ import { jsxs as _, jsx as r } from "react/jsx-runtime";
2
+ import { forwardRef as z, useState as H } from "react";
3
+ import b from "clsx";
4
+ import R from "../../base/animateHeight/animateHeight.js";
5
+ import { Icon as S } from "../../base/icon/icon.js";
6
+ import { useId as q } from "../../../hooks/useId.js";
7
+ const L = z(function({
8
+ className: u,
9
+ title: w,
10
+ isOpenByDefault: I = !1,
11
+ open: n,
12
+ disabled: a,
13
+ icon: e,
14
+ id: x,
15
+ children: t,
16
+ startAdornment: s,
17
+ noIcon: N,
18
+ onToggleClick: c,
19
+ onChange: i
20
+ }, h) {
21
+ const d = n !== void 0, [v, O] = H(I), o = d ? !!n : v, m = q(x), p = `${m}-content`, f = `${m}-header`, y = b("smwb-accordion__arrow-icon", { "smwb-accordion__arrow-icon_opened": o }), j = ($) => {
22
+ if (a)
23
+ return;
24
+ const l = !o;
25
+ d || O(l), i == null || i(l), c == null || c($);
26
+ };
27
+ return /* @__PURE__ */ _("div", { ref: h, className: b("smwb-accordion", { "smwb-disabled": a }, u), "data-testid": "accordion", children: [
28
+ /* @__PURE__ */ _(
29
+ "button",
30
+ {
31
+ id: f,
32
+ className: "smwb-accordion__header",
33
+ onClick: j,
34
+ type: "button",
35
+ disabled: a,
36
+ "aria-expanded": o,
37
+ "aria-controls": t ? p : void 0,
38
+ children: [
39
+ s == null ? void 0 : s(o),
40
+ /* @__PURE__ */ r("span", { className: "smwb-accordion__title", children: w }),
41
+ !N && (e != null ? e : /* @__PURE__ */ r(S, { className: y, name: "expand_more", size: 24 }))
42
+ ]
43
+ }
44
+ ),
45
+ t && /* @__PURE__ */ r("div", { id: p, role: "region", "aria-labelledby": f, children: /* @__PURE__ */ r(
46
+ R,
47
+ {
48
+ height: o ? "auto" : 0,
49
+ animateOpacity: !0,
50
+ duration: 300,
51
+ className: "smwb-accordion__content",
52
+ children: t
53
+ }
54
+ ) })
55
+ ] });
56
+ });
57
+ export {
58
+ L as Accordion,
59
+ L as default
60
+ };
61
+ //# sourceMappingURL=accordion.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"accordion.js","sources":["../../../../../src/components/dataDisplay/accordion/accordion.tsx"],"sourcesContent":["import React, { forwardRef, ReactNode, useState } from \"react\";\nimport cn from \"clsx\";\nimport AnimateHeight from \"../../base/animateHeight/animateHeight\";\nimport Icon from \"../../base/icon/icon\";\nimport { useId } from \"../../../hooks/useId\";\n\nexport interface AccordionProps {\n className?: string;\n title?: string;\n isOpenByDefault?: boolean;\n /** Controlled open state. When set, the component is controlled. */\n open?: boolean;\n /** Disable toggling. */\n disabled?: boolean;\n /** Custom expand icon (replaces the default chevron). */\n icon?: ReactNode;\n id?: string;\n children?: React.ReactNode;\n startAdornment?: (isOpen: boolean) => React.ReactNode;\n noIcon?: boolean;\n onToggleClick?: (e: React.MouseEvent<HTMLButtonElement, MouseEvent>) => void;\n /** Fired with the next open state on toggle. */\n onChange?: (open: boolean) => void;\n}\n\nexport const Accordion = forwardRef<HTMLDivElement, AccordionProps>(function Accordion(\n {\n className,\n title,\n isOpenByDefault = false,\n open,\n disabled,\n icon,\n id: idProp,\n children,\n startAdornment,\n noIcon,\n onToggleClick,\n onChange,\n },\n ref\n) {\n const isControlled = open !== undefined;\n const [internalOpen, setInternalOpen] = useState<boolean>(isOpenByDefault);\n const isOpen = isControlled ? !!open : internalOpen;\n const baseId = useId(idProp);\n const contentId = `${baseId}-content`;\n const headerId = `${baseId}-header`;\n\n const arrowIconClasses = cn(\"smwb-accordion__arrow-icon\", { \"smwb-accordion__arrow-icon_opened\": isOpen });\n\n const toggle = (e: React.MouseEvent<HTMLButtonElement, MouseEvent>) => {\n if (disabled) {\n return;\n }\n const next = !isOpen;\n if (!isControlled) {\n setInternalOpen(next);\n }\n onChange?.(next);\n onToggleClick?.(e);\n };\n\n return (\n <div ref={ref} className={cn(\"smwb-accordion\", { \"smwb-disabled\": disabled }, className)} data-testid=\"accordion\">\n <button\n id={headerId}\n className=\"smwb-accordion__header\"\n onClick={toggle}\n type=\"button\"\n disabled={disabled}\n aria-expanded={isOpen}\n aria-controls={children ? contentId : undefined}\n >\n {startAdornment?.(isOpen)}\n <span className=\"smwb-accordion__title\">{title}</span>\n {!noIcon && (icon ?? <Icon className={arrowIconClasses} name=\"expand_more\" size={24} />)}\n </button>\n\n {children && (\n <div id={contentId} role=\"region\" aria-labelledby={headerId}>\n <AnimateHeight\n height={isOpen ? \"auto\" : 0}\n animateOpacity={true}\n duration={300}\n className=\"smwb-accordion__content\"\n >\n {children}\n </AnimateHeight>\n </div>\n )}\n </div>\n );\n});\n\nexport default Accordion;\n"],"names":["Accordion","forwardRef","className","title","isOpenByDefault","open","disabled","icon","idProp","children","startAdornment","noIcon","onToggleClick","onChange","ref","isControlled","internalOpen","setInternalOpen","useState","isOpen","baseId","useId","contentId","headerId","arrowIconClasses","cn","toggle","e","next","jsxs","jsx","Icon","AnimateHeight"],"mappings":";;;;;;AAyBO,MAAMA,IAAYC,EAA2C,SAClE;AAAA,EACE,WAAAC;AAAA,EACA,OAAAC;AAAA,EACA,iBAAAC,IAAkB;AAAA,EAClB,MAAAC;AAAA,EACA,UAAAC;AAAA,EACA,MAAAC;AAAA,EACA,IAAIC;AAAA,EACJ,UAAAC;AAAA,EACA,gBAAAC;AAAA,EACA,QAAAC;AAAA,EACA,eAAAC;AAAA,EACA,UAAAC;AACF,GACAC,GACA;AACA,QAAMC,IAAeV,MAAS,QACxB,CAACW,GAAcC,CAAe,IAAIC,EAAkBd,CAAe,GACnEe,IAASJ,IAAe,CAAC,CAACV,IAAOW,GACjCI,IAASC,EAAMb,CAAM,GACrBc,IAAY,GAAGF,CAAM,YACrBG,IAAW,GAAGH,CAAM,WAEpBI,IAAmBC,EAAG,8BAA8B,EAAE,qCAAqCN,GAAQ,GAEnGO,IAAS,CAACC,MAAuD;AACrE,QAAIrB;AACF;AAEF,UAAMsB,IAAO,CAACT;AACd,IAAKJ,KACHE,EAAgBW,CAAI,GAEtBf,KAAA,QAAAA,EAAWe,IACXhB,KAAA,QAAAA,EAAgBe;AAAA,EAClB;AAEA,SACE,gBAAAE,EAAC,OAAA,EAAI,KAAAf,GAAU,WAAWW,EAAG,kBAAkB,EAAE,iBAAiBnB,EAAA,GAAYJ,CAAS,GAAG,eAAY,aACpG,UAAA;AAAA,IAAA,gBAAA2B;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,IAAIN;AAAA,QACJ,WAAU;AAAA,QACV,SAASG;AAAA,QACT,MAAK;AAAA,QACL,UAAApB;AAAA,QACA,iBAAea;AAAA,QACf,iBAAeV,IAAWa,IAAY;AAAA,QAErC,UAAA;AAAA,UAAAZ,KAAA,gBAAAA,EAAiBS;AAAA,UAClB,gBAAAW,EAAC,QAAA,EAAK,WAAU,yBAAyB,UAAA3B,GAAM;AAAA,UAC9C,CAACQ,MAAWJ,KAAA,OAAAA,IAAQ,gBAAAuB,EAACC,GAAA,EAAK,WAAWP,GAAkB,MAAK,eAAc,MAAM,GAAA,CAAI;AAAA,QAAA;AAAA,MAAA;AAAA,IAAA;AAAA,IAGtFf,uBACE,OAAA,EAAI,IAAIa,GAAW,MAAK,UAAS,mBAAiBC,GACjD,UAAA,gBAAAO;AAAA,MAACE;AAAA,MAAA;AAAA,QACC,QAAQb,IAAS,SAAS;AAAA,QAC1B,gBAAgB;AAAA,QAChB,UAAU;AAAA,QACV,WAAU;AAAA,QAET,UAAAV;AAAA,MAAA;AAAA,IAAA,EACH,CACF;AAAA,EAAA,GAEJ;AAEJ,CAAC;"}
@@ -0,0 +1,48 @@
1
+ import { jsx as c, jsxs as C } from "react/jsx-runtime";
2
+ import { forwardRef as _, useState as E, Children as S, isValidElement as $ } from "react";
3
+ import f from "clsx";
4
+ const w = (o) => typeof o == "string", j = _(function({ className: u, src: r, alt: e, size: t = "medium", variant: d = "circular", color: n, style: i, imgProps: a, children: m, ...v }, s) {
5
+ const [l, N] = E(!1), b = !!r && !l, x = f(
6
+ "smwb-avatar",
7
+ `smwb-avatar_${d}`,
8
+ w(t) ? `smwb-avatar_${t}` : null,
9
+ u
10
+ ), y = {
11
+ ...i,
12
+ ...w(t) ? {} : { width: t, height: t, fontSize: t / 2.5 },
13
+ ...n && !b ? { backgroundColor: n } : {}
14
+ };
15
+ return /* @__PURE__ */ c("div", { ref: s, ...v, "data-testid": "avatar", className: x, style: y, children: b ? /* @__PURE__ */ c(
16
+ "img",
17
+ {
18
+ ...a,
19
+ className: f("smwb-avatar__img", a == null ? void 0 : a.className),
20
+ src: r,
21
+ alt: e,
22
+ onError: (A) => {
23
+ var h;
24
+ N(!0), (h = a == null ? void 0 : a.onError) == null || h.call(a, A);
25
+ }
26
+ }
27
+ ) : /* @__PURE__ */ c("span", { className: "smwb-avatar__fallback", role: "img", "aria-label": e, children: m }) });
28
+ }), I = _(function({ className: u, max: r = 5, total: e, onSurplusClick: t, children: d, ...n }, i) {
29
+ const a = S.toArray(d).filter($), m = e != null ? e : a.length, v = Math.max(r, 1), s = a.slice(0, v), l = m - s.length;
30
+ return /* @__PURE__ */ C("div", { ref: i, ...n, "data-testid": "avatar-group", className: f("smwb-avatar-group", u), children: [
31
+ l > 0 ? /* @__PURE__ */ c(
32
+ j,
33
+ {
34
+ className: "smwb-avatar-group__surplus",
35
+ onClick: t,
36
+ style: t ? { cursor: "pointer" } : void 0,
37
+ children: `+${l}`
38
+ }
39
+ ) : null,
40
+ s
41
+ ] });
42
+ });
43
+ export {
44
+ j as Avatar,
45
+ I as AvatarGroup,
46
+ j as default
47
+ };
48
+ //# sourceMappingURL=avatar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"avatar.js","sources":["../../../../../src/components/dataDisplay/avatar/avatar.tsx"],"sourcesContent":["import {\n Children,\n CSSProperties,\n forwardRef,\n HTMLAttributes,\n ImgHTMLAttributes,\n isValidElement,\n PropsWithChildren,\n ReactNode,\n useState,\n} from \"react\";\nimport cn from \"clsx\";\n\nexport type AvatarSize = \"small\" | \"medium\" | \"large\";\n\nexport interface AvatarProps extends HTMLAttributes<HTMLDivElement> {\n className?: string;\n /** Image source. Falls back to children (initials / icon) on error or when absent. */\n src?: string;\n alt?: string;\n /** Preset size or an explicit pixel value. */\n size?: AvatarSize | number;\n variant?: \"circular\" | \"rounded\" | \"square\";\n /** Background color for the fallback (initials / icon). */\n color?: string;\n /** Extra attributes forwarded to the underlying <img> (srcSet, loading…). */\n imgProps?: ImgHTMLAttributes<HTMLImageElement>;\n}\n\nconst isPresetSize = (size: AvatarSize | number): size is AvatarSize => typeof size === \"string\";\n\nexport const Avatar = forwardRef<HTMLDivElement, PropsWithChildren<AvatarProps>>(function Avatar(\n { className, src, alt, size = \"medium\", variant = \"circular\", color, style, imgProps, children, ...props },\n ref\n) {\n const [imgFailed, setImgFailed] = useState(false);\n const showImage = Boolean(src) && !imgFailed;\n\n const avatarClassName = cn(\n \"smwb-avatar\",\n `smwb-avatar_${variant}`,\n isPresetSize(size) ? `smwb-avatar_${size}` : null,\n className\n );\n\n const inlineStyle: CSSProperties = {\n ...style,\n ...(isPresetSize(size) ? {} : { width: size, height: size, fontSize: size / 2.5 }),\n ...(color && !showImage ? { backgroundColor: color } : {}),\n };\n\n return (\n <div ref={ref} {...props} data-testid=\"avatar\" className={avatarClassName} style={inlineStyle}>\n {showImage ? (\n <img\n {...imgProps}\n className={cn(\"smwb-avatar__img\", imgProps?.className)}\n src={src}\n alt={alt}\n onError={(e) => {\n setImgFailed(true);\n imgProps?.onError?.(e);\n }}\n />\n ) : (\n <span className=\"smwb-avatar__fallback\" role=\"img\" aria-label={alt}>\n {children}\n </span>\n )}\n </div>\n );\n});\n\nexport interface AvatarGroupProps extends HTMLAttributes<HTMLDivElement> {\n className?: string;\n /** Maximum avatars to show before collapsing the rest into a \"+N\" surplus. */\n max?: number;\n /** Override the total count used for the surplus label (defaults to children count). */\n total?: number;\n /** Click handler for the \"+N\" surplus chip. */\n onSurplusClick?: () => void;\n}\n\nexport const AvatarGroup = forwardRef<HTMLDivElement, PropsWithChildren<AvatarGroupProps>>(function AvatarGroup(\n { className, max = 5, total, onSurplusClick, children, ...props },\n ref\n) {\n const items = Children.toArray(children).filter(isValidElement);\n const totalCount = total ?? items.length;\n const clampedMax = Math.max(max, 1);\n const visible: ReactNode[] = items.slice(0, clampedMax);\n const surplus = totalCount - visible.length;\n\n return (\n <div ref={ref} {...props} data-testid=\"avatar-group\" className={cn(\"smwb-avatar-group\", className)}>\n {surplus > 0 ? (\n <Avatar\n className=\"smwb-avatar-group__surplus\"\n onClick={onSurplusClick}\n style={onSurplusClick ? { cursor: \"pointer\" } : undefined}\n >\n {`+${surplus}`}\n </Avatar>\n ) : null}\n {visible}\n </div>\n );\n});\n\nexport default Avatar;\n"],"names":["isPresetSize","size","Avatar","forwardRef","className","src","alt","variant","color","style","imgProps","children","props","ref","imgFailed","setImgFailed","useState","showImage","avatarClassName","cn","inlineStyle","jsx","e","_a","AvatarGroup","max","total","onSurplusClick","items","Children","isValidElement","totalCount","clampedMax","visible","surplus","jsxs"],"mappings":";;;AA6BA,MAAMA,IAAe,CAACC,MAAkD,OAAOA,KAAS,UAE3EC,IAASC,EAA2D,SAC/E,EAAE,WAAAC,GAAW,KAAAC,GAAK,KAAAC,GAAK,MAAAL,IAAO,UAAU,SAAAM,IAAU,YAAY,OAAAC,GAAO,OAAAC,GAAO,UAAAC,GAAU,UAAAC,GAAU,GAAGC,EAAA,GACnGC,GACA;AACA,QAAM,CAACC,GAAWC,CAAY,IAAIC,EAAS,EAAK,GAC1CC,IAAY,EAAQZ,KAAQ,CAACS,GAE7BI,IAAkBC;AAAA,IACtB;AAAA,IACA,eAAeZ,CAAO;AAAA,IACtBP,EAAaC,CAAI,IAAI,eAAeA,CAAI,KAAK;AAAA,IAC7CG;AAAA,EAAA,GAGIgB,IAA6B;AAAA,IACjC,GAAGX;AAAA,IACH,GAAIT,EAAaC,CAAI,IAAI,CAAA,IAAK,EAAE,OAAOA,GAAM,QAAQA,GAAM,UAAUA,IAAO,IAAA;AAAA,IAC5E,GAAIO,KAAS,CAACS,IAAY,EAAE,iBAAiBT,EAAA,IAAU,CAAA;AAAA,EAAC;AAG1D,SACE,gBAAAa,EAAC,OAAA,EAAI,KAAAR,GAAW,GAAGD,GAAO,eAAY,UAAS,WAAWM,GAAiB,OAAOE,GAC/E,UAAAH,IACC,gBAAAI;AAAA,IAAC;AAAA,IAAA;AAAA,MACE,GAAGX;AAAA,MACJ,WAAWS,EAAG,oBAAoBT,KAAA,gBAAAA,EAAU,SAAS;AAAA,MACrD,KAAAL;AAAA,MACA,KAAAC;AAAA,MACA,SAAS,CAACgB,MAAM;;AACd,QAAAP,EAAa,EAAI,IACjBQ,IAAAb,KAAA,gBAAAA,EAAU,YAAV,QAAAa,EAAA,KAAAb,GAAoBY;AAAA,MACtB;AAAA,IAAA;AAAA,EAAA,IAGF,gBAAAD,EAAC,QAAA,EAAK,WAAU,yBAAwB,MAAK,OAAM,cAAYf,GAC5D,UAAAK,EAAA,CACH,EAAA,CAEJ;AAEJ,CAAC,GAYYa,IAAcrB,EAAgE,SACzF,EAAE,WAAAC,GAAW,KAAAqB,IAAM,GAAG,OAAAC,GAAO,gBAAAC,GAAgB,UAAAhB,GAAU,GAAGC,EAAA,GAC1DC,GACA;AACA,QAAMe,IAAQC,EAAS,QAAQlB,CAAQ,EAAE,OAAOmB,CAAc,GACxDC,IAAaL,KAAA,OAAAA,IAASE,EAAM,QAC5BI,IAAa,KAAK,IAAIP,GAAK,CAAC,GAC5BQ,IAAuBL,EAAM,MAAM,GAAGI,CAAU,GAChDE,IAAUH,IAAaE,EAAQ;AAErC,SACE,gBAAAE,EAAC,OAAA,EAAI,KAAAtB,GAAW,GAAGD,GAAO,eAAY,gBAAe,WAAWO,EAAG,qBAAqBf,CAAS,GAC9F,UAAA;AAAA,IAAA8B,IAAU,IACT,gBAAAb;AAAA,MAACnB;AAAA,MAAA;AAAA,QACC,WAAU;AAAA,QACV,SAASyB;AAAA,QACT,OAAOA,IAAiB,EAAE,QAAQ,cAAc;AAAA,QAE/C,cAAIO,CAAO;AAAA,MAAA;AAAA,IAAA,IAEZ;AAAA,IACHD;AAAA,EAAA,GACH;AAEJ,CAAC;"}