@smwb/ui-react 2.6.3 → 2.7.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 (416) hide show
  1. package/AI_LESS_OVERRIDES.md +4 -2
  2. package/AI_THEMING.md +17 -1
  3. package/README.md +84 -35
  4. package/dist/assets/styles/less/components/accordion/accordion.entry.css +1 -1
  5. package/dist/assets/styles/less/components/avatar/avatar.entry.css +1 -1
  6. package/dist/assets/styles/less/components/chart/chart.entry.css +1 -0
  7. package/dist/assets/styles/less/components/descriptionList/descriptionList.entry.css +1 -0
  8. package/dist/assets/styles/less/components/emptyState/emptyState.entry.css +1 -0
  9. package/dist/assets/styles/less/components/kanban/kanban.entry.css +1 -0
  10. package/dist/assets/styles/less/components/meter/meter.entry.css +1 -0
  11. package/dist/assets/styles/less/components/personChip/personChip.entry.css +1 -0
  12. package/dist/assets/styles/less/components/progressIndicator/progressIndicator.entry.css +1 -1
  13. package/dist/assets/styles/less/components/sectionHeader/sectionHeader.entry.css +1 -0
  14. package/dist/assets/styles/less/components/selectField/selectField.entry.css +1 -1
  15. package/dist/assets/styles/less/components/stat/stat.entry.css +1 -0
  16. package/dist/assets/styles/less/components/stepper/stepper.entry.css +1 -1
  17. package/dist/assets/styles/less/components/table/table.entry.css +1 -1
  18. package/dist/assets/styles/less/components/tabs/tab/tab.entry.css +1 -1
  19. package/dist/assets/styles/less/components/tabs/tabs.entry.css +1 -1
  20. package/dist/assets/styles/less/components/textField/textField.entry.css +1 -1
  21. package/dist/assets/styles/less/components/timeline/timeline.entry.css +1 -0
  22. package/dist/assets/styles/less/components/tooltip/tooltip.entry.css +1 -1
  23. package/dist/assets/styles/less/components/typography/typography.entry.css +1 -1
  24. package/dist/assets/styles/less/connects/rt/table.entry.css +1 -0
  25. package/dist/assets/styles/less/tokens.entry.css +1 -0
  26. package/dist/chart.d.ts +2 -0
  27. package/dist/chart.js +8 -0
  28. package/dist/chart.js.map +1 -0
  29. package/dist/components/base/icon/icon.js +8 -7
  30. package/dist/components/base/icon/icon.js.map +1 -1
  31. package/dist/components/base/ripple/ripple.js +11 -10
  32. package/dist/components/base/ripple/ripple.js.map +1 -1
  33. package/dist/components/dataDisplay/accordion/accordion.d.ts +18 -1
  34. package/dist/components/dataDisplay/accordion/accordion.js +77 -54
  35. package/dist/components/dataDisplay/accordion/accordion.js.map +1 -1
  36. package/dist/components/dataDisplay/assetGrid/assetGrid.js +15 -14
  37. package/dist/components/dataDisplay/assetGrid/assetGrid.js.map +1 -1
  38. package/dist/components/dataDisplay/avatar/avatar.d.ts +4 -0
  39. package/dist/components/dataDisplay/avatar/avatar.js +45 -30
  40. package/dist/components/dataDisplay/avatar/avatar.js.map +1 -1
  41. package/dist/components/dataDisplay/badge/badge.js +11 -10
  42. package/dist/components/dataDisplay/badge/badge.js.map +1 -1
  43. package/dist/components/dataDisplay/card/card.js +16 -15
  44. package/dist/components/dataDisplay/card/card.js.map +1 -1
  45. package/dist/components/dataDisplay/carousel/carousel.js +23 -22
  46. package/dist/components/dataDisplay/carousel/carousel.js.map +1 -1
  47. package/dist/components/dataDisplay/chart/chart.d.ts +65 -0
  48. package/dist/components/dataDisplay/chart/chart.js +133 -0
  49. package/dist/components/dataDisplay/chart/chart.js.map +1 -0
  50. package/dist/components/dataDisplay/chart/chartTheme.d.ts +35 -0
  51. package/dist/components/dataDisplay/chart/chartTheme.js +74 -0
  52. package/dist/components/dataDisplay/chart/chartTheme.js.map +1 -0
  53. package/dist/components/dataDisplay/chart/index.d.ts +4 -0
  54. package/dist/components/dataDisplay/chat/chat.js +5 -4
  55. package/dist/components/dataDisplay/chat/chat.js.map +1 -1
  56. package/dist/components/dataDisplay/chip/chip.js +5 -4
  57. package/dist/components/dataDisplay/chip/chip.js.map +1 -1
  58. package/dist/components/dataDisplay/chipGroup/chipGroup.js +10 -9
  59. package/dist/components/dataDisplay/chipGroup/chipGroup.js.map +1 -1
  60. package/dist/components/dataDisplay/descriptionList/descriptionList.d.ts +37 -0
  61. package/dist/components/dataDisplay/descriptionList/descriptionList.js +43 -0
  62. package/dist/components/dataDisplay/descriptionList/descriptionList.js.map +1 -0
  63. package/dist/components/dataDisplay/descriptionList/index.d.ts +2 -0
  64. package/dist/components/dataDisplay/expansionPanel/expansionPanel.js +5 -4
  65. package/dist/components/dataDisplay/expansionPanel/expansionPanel.js.map +1 -1
  66. package/dist/components/dataDisplay/imagesList/imagesList.js +11 -10
  67. package/dist/components/dataDisplay/imagesList/imagesList.js.map +1 -1
  68. package/dist/components/dataDisplay/imagesList/imagesListItem/imagesListItem.js +31 -24
  69. package/dist/components/dataDisplay/imagesList/imagesListItem/imagesListItem.js.map +1 -1
  70. package/dist/components/dataDisplay/imagesList/imagesListItem/imagesListItemModal.d.ts +1 -1
  71. package/dist/components/dataDisplay/imagesList/imagesListItem/imagesListItemModal.js +16 -13
  72. package/dist/components/dataDisplay/imagesList/imagesListItem/imagesListItemModal.js.map +1 -1
  73. package/dist/components/dataDisplay/kanban/index.d.ts +2 -0
  74. package/dist/components/dataDisplay/kanban/kanban.d.ts +47 -0
  75. package/dist/components/dataDisplay/kanban/kanban.js +63 -0
  76. package/dist/components/dataDisplay/kanban/kanban.js.map +1 -0
  77. package/dist/components/dataDisplay/lazyImage/lazyImage.js +9 -8
  78. package/dist/components/dataDisplay/lazyImage/lazyImage.js.map +1 -1
  79. package/dist/components/dataDisplay/list/list.js +11 -10
  80. package/dist/components/dataDisplay/list/list.js.map +1 -1
  81. package/dist/components/dataDisplay/meter/index.d.ts +2 -0
  82. package/dist/components/dataDisplay/meter/meter.d.ts +33 -0
  83. package/dist/components/dataDisplay/meter/meter.js +62 -0
  84. package/dist/components/dataDisplay/meter/meter.js.map +1 -0
  85. package/dist/components/dataDisplay/personChip/index.d.ts +2 -0
  86. package/dist/components/dataDisplay/personChip/personChip.d.ts +31 -0
  87. package/dist/components/dataDisplay/personChip/personChip.js +61 -0
  88. package/dist/components/dataDisplay/personChip/personChip.js.map +1 -0
  89. package/dist/components/dataDisplay/stat/index.d.ts +2 -0
  90. package/dist/components/dataDisplay/stat/stat.d.ts +36 -0
  91. package/dist/components/dataDisplay/stat/stat.js +48 -0
  92. package/dist/components/dataDisplay/stat/stat.js.map +1 -0
  93. package/dist/components/dataDisplay/table/table.d.ts +7 -0
  94. package/dist/components/dataDisplay/table/table.js +21 -15
  95. package/dist/components/dataDisplay/table/table.js.map +1 -1
  96. package/dist/components/dataDisplay/table/tableCell.d.ts +3 -1
  97. package/dist/components/dataDisplay/table/tableCell.js +11 -2
  98. package/dist/components/dataDisplay/table/tableCell.js.map +1 -1
  99. package/dist/components/dataDisplay/table/tableHeadCell.d.ts +11 -1
  100. package/dist/components/dataDisplay/table/tableHeadCell.js +54 -24
  101. package/dist/components/dataDisplay/table/tableHeadCell.js.map +1 -1
  102. package/dist/components/dataDisplay/table/tablePagination/tablePagination.js +10 -9
  103. package/dist/components/dataDisplay/table/tablePagination/tablePagination.js.map +1 -1
  104. package/dist/components/dataDisplay/thumbCard/thumbCard.js +10 -9
  105. package/dist/components/dataDisplay/thumbCard/thumbCard.js.map +1 -1
  106. package/dist/components/dataDisplay/timeline/index.d.ts +2 -0
  107. package/dist/components/dataDisplay/timeline/timeline.d.ts +43 -0
  108. package/dist/components/dataDisplay/timeline/timeline.js +44 -0
  109. package/dist/components/dataDisplay/timeline/timeline.js.map +1 -0
  110. package/dist/components/dataDisplay/treeView/treeView.js +5 -4
  111. package/dist/components/dataDisplay/treeView/treeView.js.map +1 -1
  112. package/dist/components/dataDisplay/typography/typography.d.ts +4 -0
  113. package/dist/components/dataDisplay/typography/typography.js +41 -23
  114. package/dist/components/dataDisplay/typography/typography.js.map +1 -1
  115. package/dist/components/feedBack/confirmDialog/confirmDialog.js +14 -13
  116. package/dist/components/feedBack/confirmDialog/confirmDialog.js.map +1 -1
  117. package/dist/components/feedBack/emptyState/emptyState.d.ts +26 -0
  118. package/dist/components/feedBack/emptyState/emptyState.js +27 -0
  119. package/dist/components/feedBack/emptyState/emptyState.js.map +1 -0
  120. package/dist/components/feedBack/emptyState/index.d.ts +2 -0
  121. package/dist/components/feedBack/message/message.js +8 -7
  122. package/dist/components/feedBack/message/message.js.map +1 -1
  123. package/dist/components/feedBack/modal/modal.js +5 -4
  124. package/dist/components/feedBack/modal/modal.js.map +1 -1
  125. package/dist/components/feedBack/progressIndicator/progressIndicator.d.ts +14 -1
  126. package/dist/components/feedBack/progressIndicator/progressIndicator.js +72 -40
  127. package/dist/components/feedBack/progressIndicator/progressIndicator.js.map +1 -1
  128. package/dist/components/feedBack/saveAssetDialog/saveAssetDialog.js +32 -31
  129. package/dist/components/feedBack/saveAssetDialog/saveAssetDialog.js.map +1 -1
  130. package/dist/components/feedBack/skeleton/skeleton.js +17 -16
  131. package/dist/components/feedBack/skeleton/skeleton.js.map +1 -1
  132. package/dist/components/feedBack/snackbar/snackbar.js +6 -5
  133. package/dist/components/feedBack/snackbar/snackbar.js.map +1 -1
  134. package/dist/components/feedBack/tooltip/tooltip.js +57 -49
  135. package/dist/components/feedBack/tooltip/tooltip.js.map +1 -1
  136. package/dist/components/inputs/button/button.js +16 -15
  137. package/dist/components/inputs/button/button.js.map +1 -1
  138. package/dist/components/inputs/buttonGroups/buttonGroup.js +5 -4
  139. package/dist/components/inputs/buttonGroups/buttonGroup.js.map +1 -1
  140. package/dist/components/inputs/checkbox/checkbox.js +10 -9
  141. package/dist/components/inputs/checkbox/checkbox.js.map +1 -1
  142. package/dist/components/inputs/datePicker/datePicker.js +123 -120
  143. package/dist/components/inputs/datePicker/datePicker.js.map +1 -1
  144. package/dist/components/inputs/dateTimePicker/dateTimePicker.js +121 -119
  145. package/dist/components/inputs/dateTimePicker/dateTimePicker.js.map +1 -1
  146. package/dist/components/inputs/fileDrop/fileDrop.js +13 -12
  147. package/dist/components/inputs/fileDrop/fileDrop.js.map +1 -1
  148. package/dist/components/inputs/fileInput/fileInput.js +4 -3
  149. package/dist/components/inputs/fileInput/fileInput.js.map +1 -1
  150. package/dist/components/inputs/floatingButton/floatingButton.js +17 -16
  151. package/dist/components/inputs/floatingButton/floatingButton.js.map +1 -1
  152. package/dist/components/inputs/radioButton/radioButton.js +11 -10
  153. package/dist/components/inputs/radioButton/radioButton.js.map +1 -1
  154. package/dist/components/inputs/rating/rating.js +18 -17
  155. package/dist/components/inputs/rating/rating.js.map +1 -1
  156. package/dist/components/inputs/selectField/dropdownMenu.d.ts +1 -1
  157. package/dist/components/inputs/selectField/dropdownMenu.js +72 -69
  158. package/dist/components/inputs/selectField/dropdownMenu.js.map +1 -1
  159. package/dist/components/inputs/selectField/selectField.d.ts +2 -0
  160. package/dist/components/inputs/selectField/selectField.js +128 -117
  161. package/dist/components/inputs/selectField/selectField.js.map +1 -1
  162. package/dist/components/inputs/slider/slider.js +4 -3
  163. package/dist/components/inputs/slider/slider.js.map +1 -1
  164. package/dist/components/inputs/textField/textField.js +16 -15
  165. package/dist/components/inputs/textField/textField.js.map +1 -1
  166. package/dist/components/inputs/textField/utils.d.ts +1 -1
  167. package/dist/components/inputs/timePicker/timePicker.js +66 -63
  168. package/dist/components/inputs/timePicker/timePicker.js.map +1 -1
  169. package/dist/components/inputs/toggle/toggle.js +14 -13
  170. package/dist/components/inputs/toggle/toggle.js.map +1 -1
  171. package/dist/components/inputs/valueSlider/valueSlider.js +9 -8
  172. package/dist/components/inputs/valueSlider/valueSlider.js.map +1 -1
  173. package/dist/components/layout/appLayout/appLayout.js +20 -19
  174. package/dist/components/layout/appLayout/appLayout.js.map +1 -1
  175. package/dist/components/layout/divider/divider.js +9 -8
  176. package/dist/components/layout/divider/divider.js.map +1 -1
  177. package/dist/components/layout/floatingWindow/floatingWindow.js +4 -3
  178. package/dist/components/layout/floatingWindow/floatingWindow.js.map +1 -1
  179. package/dist/components/layout/grid/grid.js +17 -16
  180. package/dist/components/layout/grid/grid.js.map +1 -1
  181. package/dist/components/layout/page/page.js +9 -8
  182. package/dist/components/layout/page/page.js.map +1 -1
  183. package/dist/components/layout/pageHeader/pageHeader.js +10 -9
  184. package/dist/components/layout/pageHeader/pageHeader.js.map +1 -1
  185. package/dist/components/layout/screenDivider/screenDivider.js +19 -18
  186. package/dist/components/layout/screenDivider/screenDivider.js.map +1 -1
  187. package/dist/components/layout/sectionHeader/index.d.ts +2 -0
  188. package/dist/components/layout/sectionHeader/sectionHeader.d.ts +31 -0
  189. package/dist/components/layout/sectionHeader/sectionHeader.js +67 -0
  190. package/dist/components/layout/sectionHeader/sectionHeader.js.map +1 -0
  191. package/dist/components/layout/sheet/sheet.js +5 -4
  192. package/dist/components/layout/sheet/sheet.js.map +1 -1
  193. package/dist/components/layout/stack/stack.js +10 -9
  194. package/dist/components/layout/stack/stack.js.map +1 -1
  195. package/dist/components/navigation/appBar/appBar.js +18 -17
  196. package/dist/components/navigation/appBar/appBar.js.map +1 -1
  197. package/dist/components/navigation/bottomBar/bottomBar.js +5 -4
  198. package/dist/components/navigation/bottomBar/bottomBar.js.map +1 -1
  199. package/dist/components/navigation/breadcrumbs/breadcrumbs.js +5 -4
  200. package/dist/components/navigation/breadcrumbs/breadcrumbs.js.map +1 -1
  201. package/dist/components/navigation/menu/menu.js +6 -5
  202. package/dist/components/navigation/menu/menu.js.map +1 -1
  203. package/dist/components/navigation/overflowMenu/overflowMenu.js +16 -15
  204. package/dist/components/navigation/overflowMenu/overflowMenu.js.map +1 -1
  205. package/dist/components/navigation/pagination/pagination.js +5 -4
  206. package/dist/components/navigation/pagination/pagination.js.map +1 -1
  207. package/dist/components/navigation/sidebar/sidebar.js +13 -12
  208. package/dist/components/navigation/sidebar/sidebar.js.map +1 -1
  209. package/dist/components/navigation/stepper/stepper.d.ts +10 -2
  210. package/dist/components/navigation/stepper/stepper.js +33 -30
  211. package/dist/components/navigation/stepper/stepper.js.map +1 -1
  212. package/dist/components/navigation/tabs/tab/tab.d.ts +2 -0
  213. package/dist/components/navigation/tabs/tab/tab.js +14 -13
  214. package/dist/components/navigation/tabs/tab/tab.js.map +1 -1
  215. package/dist/components/navigation/tabs/tabs.d.ts +12 -0
  216. package/dist/components/navigation/tabs/tabs.js +138 -83
  217. package/dist/components/navigation/tabs/tabs.js.map +1 -1
  218. package/dist/connects/rt/table/draggableHeader.d.ts +1 -1
  219. package/dist/connects/rt/table/draggableHeader.js.map +1 -0
  220. package/dist/connects/rt/table/headerCellRenderer.d.ts +6 -0
  221. package/dist/connects/rt/table/headerCellRenderer.js +21 -0
  222. package/dist/connects/rt/table/headerCellRenderer.js.map +1 -0
  223. package/dist/connects/rt/table/table.d.ts +2 -0
  224. package/dist/connects/rt/table/table.js +200 -0
  225. package/dist/connects/rt/table/table.js.map +1 -0
  226. package/dist/connects/rt/table/utils.js.map +1 -0
  227. package/dist/headless/components/dataDisplay/accordion/accordion.js +76 -54
  228. package/dist/headless/components/dataDisplay/accordion/accordion.js.map +1 -1
  229. package/dist/headless/components/dataDisplay/avatar/avatar.js +45 -31
  230. package/dist/headless/components/dataDisplay/avatar/avatar.js.map +1 -1
  231. package/dist/headless/components/dataDisplay/descriptionList/descriptionList.js +41 -0
  232. package/dist/headless/components/dataDisplay/descriptionList/descriptionList.js.map +1 -0
  233. package/dist/headless/components/dataDisplay/imagesList/imagesListItem/imagesListItem.js +29 -23
  234. package/dist/headless/components/dataDisplay/imagesList/imagesListItem/imagesListItem.js.map +1 -1
  235. package/dist/headless/components/dataDisplay/imagesList/imagesListItem/imagesListItemModal.js +16 -13
  236. package/dist/headless/components/dataDisplay/imagesList/imagesListItem/imagesListItemModal.js.map +1 -1
  237. package/dist/headless/components/dataDisplay/kanban/kanban.js +61 -0
  238. package/dist/headless/components/dataDisplay/kanban/kanban.js.map +1 -0
  239. package/dist/headless/components/dataDisplay/meter/meter.js +60 -0
  240. package/dist/headless/components/dataDisplay/meter/meter.js.map +1 -0
  241. package/dist/headless/components/dataDisplay/personChip/personChip.js +59 -0
  242. package/dist/headless/components/dataDisplay/personChip/personChip.js.map +1 -0
  243. package/dist/headless/components/dataDisplay/stat/stat.js +46 -0
  244. package/dist/headless/components/dataDisplay/stat/stat.js.map +1 -0
  245. package/dist/headless/components/dataDisplay/table/table.js +16 -11
  246. package/dist/headless/components/dataDisplay/table/table.js.map +1 -1
  247. package/dist/headless/components/dataDisplay/table/tableCell.js +11 -2
  248. package/dist/headless/components/dataDisplay/table/tableCell.js.map +1 -1
  249. package/dist/headless/components/dataDisplay/table/tableHeadCell.js +54 -24
  250. package/dist/headless/components/dataDisplay/table/tableHeadCell.js.map +1 -1
  251. package/dist/headless/components/dataDisplay/timeline/timeline.js +42 -0
  252. package/dist/headless/components/dataDisplay/timeline/timeline.js.map +1 -0
  253. package/dist/headless/components/dataDisplay/typography/typography.js +39 -22
  254. package/dist/headless/components/dataDisplay/typography/typography.js.map +1 -1
  255. package/dist/headless/components/feedBack/emptyState/emptyState.js +25 -0
  256. package/dist/headless/components/feedBack/emptyState/emptyState.js.map +1 -0
  257. package/dist/headless/components/feedBack/progressIndicator/progressIndicator.js +70 -39
  258. package/dist/headless/components/feedBack/progressIndicator/progressIndicator.js.map +1 -1
  259. package/dist/headless/components/feedBack/saveAssetDialog/saveAssetDialog.js +30 -30
  260. package/dist/headless/components/feedBack/saveAssetDialog/saveAssetDialog.js.map +1 -1
  261. package/dist/headless/components/feedBack/tooltip/tooltip.js +53 -46
  262. package/dist/headless/components/feedBack/tooltip/tooltip.js.map +1 -1
  263. package/dist/headless/components/inputs/datePicker/datePicker.js +112 -110
  264. package/dist/headless/components/inputs/datePicker/datePicker.js.map +1 -1
  265. package/dist/headless/components/inputs/dateTimePicker/dateTimePicker.js +121 -119
  266. package/dist/headless/components/inputs/dateTimePicker/dateTimePicker.js.map +1 -1
  267. package/dist/headless/components/inputs/selectField/dropdownMenu.js +72 -69
  268. package/dist/headless/components/inputs/selectField/dropdownMenu.js.map +1 -1
  269. package/dist/headless/components/inputs/selectField/selectField.js +109 -99
  270. package/dist/headless/components/inputs/selectField/selectField.js.map +1 -1
  271. package/dist/headless/components/inputs/timePicker/timePicker.js +65 -63
  272. package/dist/headless/components/inputs/timePicker/timePicker.js.map +1 -1
  273. package/dist/headless/components/layout/sectionHeader/sectionHeader.js +65 -0
  274. package/dist/headless/components/layout/sectionHeader/sectionHeader.js.map +1 -0
  275. package/dist/headless/components/navigation/stepper/stepper.js +31 -29
  276. package/dist/headless/components/navigation/stepper/stepper.js.map +1 -1
  277. package/dist/headless/components/navigation/tabs/tab/tab.js.map +1 -1
  278. package/dist/headless/components/navigation/tabs/tabs.js +129 -75
  279. package/dist/headless/components/navigation/tabs/tabs.js.map +1 -1
  280. package/dist/headless/hooks/useSafeLayoutEffect.js +4 -2
  281. package/dist/headless/hooks/useSafeLayoutEffect.js.map +1 -1
  282. package/dist/headless/icons/catalog.js +78 -1
  283. package/dist/headless/icons/catalog.js.map +1 -1
  284. package/dist/headless/icons/index.js +596 -574
  285. package/dist/headless/icons/index.js.map +1 -1
  286. package/dist/headless/icons/svg/accountTree.js +9 -0
  287. package/dist/headless/icons/svg/accountTree.js.map +1 -0
  288. package/dist/headless/icons/svg/callSplit.js +9 -0
  289. package/dist/headless/icons/svg/callSplit.js.map +1 -0
  290. package/dist/headless/icons/svg/deviceHub.js +8 -0
  291. package/dist/headless/icons/svg/deviceHub.js.map +1 -0
  292. package/dist/headless/icons/svg/editNote.js +9 -0
  293. package/dist/headless/icons/svg/editNote.js.map +1 -0
  294. package/dist/headless/icons/svg/filterList.js +9 -0
  295. package/dist/headless/icons/svg/filterList.js.map +1 -0
  296. package/dist/headless/icons/svg/forkRight.js +8 -0
  297. package/dist/headless/icons/svg/forkRight.js.map +1 -0
  298. package/dist/headless/icons/svg/groups.js +9 -0
  299. package/dist/headless/icons/svg/groups.js.map +1 -0
  300. package/dist/headless/icons/svg/hub.js +8 -0
  301. package/dist/headless/icons/svg/hub.js.map +1 -0
  302. package/dist/headless/icons/svg/index.js +598 -576
  303. package/dist/headless/icons/svg/index.js.map +1 -1
  304. package/dist/headless/icons/svg/lan.js +9 -0
  305. package/dist/headless/icons/svg/lan.js.map +1 -0
  306. package/dist/headless/icons/svg/personOff.js +9 -0
  307. package/dist/headless/icons/svg/personOff.js.map +1 -0
  308. package/dist/headless/icons/svg/schema.js +9 -0
  309. package/dist/headless/icons/svg/schema.js.map +1 -0
  310. package/dist/headless/index.js +209 -183
  311. package/dist/headless/index.js.map +1 -1
  312. package/dist/hooks/useSafeLayoutEffect.d.ts +7 -1
  313. package/dist/hooks/useSafeLayoutEffect.js +4 -2
  314. package/dist/hooks/useSafeLayoutEffect.js.map +1 -1
  315. package/dist/icons/catalog.d.ts +1 -1
  316. package/dist/icons/catalog.js +78 -1
  317. package/dist/icons/catalog.js.map +1 -1
  318. package/dist/icons/index.js +596 -574
  319. package/dist/icons/index.js.map +1 -1
  320. package/dist/icons/svg/accountTree.d.ts +4 -0
  321. package/dist/icons/svg/accountTree.js +9 -0
  322. package/dist/icons/svg/accountTree.js.map +1 -0
  323. package/dist/icons/svg/callSplit.d.ts +4 -0
  324. package/dist/icons/svg/callSplit.js +9 -0
  325. package/dist/icons/svg/callSplit.js.map +1 -0
  326. package/dist/icons/svg/deviceHub.d.ts +4 -0
  327. package/dist/icons/svg/deviceHub.js +8 -0
  328. package/dist/icons/svg/deviceHub.js.map +1 -0
  329. package/dist/icons/svg/editNote.d.ts +4 -0
  330. package/dist/icons/svg/editNote.js +9 -0
  331. package/dist/icons/svg/editNote.js.map +1 -0
  332. package/dist/icons/svg/filterList.d.ts +4 -0
  333. package/dist/icons/svg/filterList.js +9 -0
  334. package/dist/icons/svg/filterList.js.map +1 -0
  335. package/dist/icons/svg/forkRight.d.ts +4 -0
  336. package/dist/icons/svg/forkRight.js +8 -0
  337. package/dist/icons/svg/forkRight.js.map +1 -0
  338. package/dist/icons/svg/groups.d.ts +4 -0
  339. package/dist/icons/svg/groups.js +9 -0
  340. package/dist/icons/svg/groups.js.map +1 -0
  341. package/dist/icons/svg/hub.d.ts +4 -0
  342. package/dist/icons/svg/hub.js +8 -0
  343. package/dist/icons/svg/hub.js.map +1 -0
  344. package/dist/icons/svg/index.d.ts +11 -0
  345. package/dist/icons/svg/index.js +598 -576
  346. package/dist/icons/svg/index.js.map +1 -1
  347. package/dist/icons/svg/lan.d.ts +4 -0
  348. package/dist/icons/svg/lan.js +9 -0
  349. package/dist/icons/svg/lan.js.map +1 -0
  350. package/dist/icons/svg/personOff.d.ts +4 -0
  351. package/dist/icons/svg/personOff.js +9 -0
  352. package/dist/icons/svg/personOff.js.map +1 -0
  353. package/dist/icons/svg/schema.d.ts +4 -0
  354. package/dist/icons/svg/schema.js +9 -0
  355. package/dist/icons/svg/schema.js.map +1 -0
  356. package/dist/icons.cjs +1 -1
  357. package/dist/icons.cjs.map +1 -1
  358. package/dist/index.cjs +2 -2
  359. package/dist/index.cjs.map +1 -1
  360. package/dist/index.d.ts +16 -0
  361. package/dist/index.js +209 -183
  362. package/dist/index.js.map +1 -1
  363. package/package.json +18 -7
  364. package/dist/react-table/components/base/icon/icon.js +0 -60
  365. package/dist/react-table/components/base/icon/icon.js.map +0 -1
  366. package/dist/react-table/components/base/icon/iconProvider.js +0 -15
  367. package/dist/react-table/components/base/icon/iconProvider.js.map +0 -1
  368. package/dist/react-table/components/dataDisplay/table/table.js +0 -37
  369. package/dist/react-table/components/dataDisplay/table/table.js.map +0 -1
  370. package/dist/react-table/components/dataDisplay/table/tableBody.js +0 -7
  371. package/dist/react-table/components/dataDisplay/table/tableBody.js.map +0 -1
  372. package/dist/react-table/components/dataDisplay/table/tableCell.js +0 -7
  373. package/dist/react-table/components/dataDisplay/table/tableCell.js.map +0 -1
  374. package/dist/react-table/components/dataDisplay/table/tableHead.js +0 -7
  375. package/dist/react-table/components/dataDisplay/table/tableHead.js.map +0 -1
  376. package/dist/react-table/components/dataDisplay/table/tableHeadCell.js +0 -48
  377. package/dist/react-table/components/dataDisplay/table/tableHeadCell.js.map +0 -1
  378. package/dist/react-table/components/dataDisplay/table/tablePagination/tablePagination.js +0 -40
  379. package/dist/react-table/components/dataDisplay/table/tablePagination/tablePagination.js.map +0 -1
  380. package/dist/react-table/components/dataDisplay/table/tableRow.js +0 -20
  381. package/dist/react-table/components/dataDisplay/table/tableRow.js.map +0 -1
  382. package/dist/react-table/components/feedBack/message/message.js +0 -31
  383. package/dist/react-table/components/feedBack/message/message.js.map +0 -1
  384. package/dist/react-table/components/feedBack/progressIndicator/progressIndicator.js +0 -51
  385. package/dist/react-table/components/feedBack/progressIndicator/progressIndicator.js.map +0 -1
  386. package/dist/react-table/components/inputs/textField/textField.js +0 -125
  387. package/dist/react-table/components/inputs/textField/textField.js.map +0 -1
  388. package/dist/react-table/components/inputs/textField/textFieldAdornment.js +0 -25
  389. package/dist/react-table/components/inputs/textField/textFieldAdornment.js.map +0 -1
  390. package/dist/react-table/components/inputs/textField/textFieldWrapper.js +0 -50
  391. package/dist/react-table/components/inputs/textField/textFieldWrapper.js.map +0 -1
  392. package/dist/react-table/components/inputs/textField/utils.js +0 -11
  393. package/dist/react-table/components/inputs/textField/utils.js.map +0 -1
  394. package/dist/react-table/connects/rt/table/draggableHeader.js.map +0 -1
  395. package/dist/react-table/connects/rt/table/headerCellRenderer.js +0 -14
  396. package/dist/react-table/connects/rt/table/headerCellRenderer.js.map +0 -1
  397. package/dist/react-table/connects/rt/table/table.js +0 -180
  398. package/dist/react-table/connects/rt/table/table.js.map +0 -1
  399. package/dist/react-table/connects/rt/table/utils.js.map +0 -1
  400. package/dist/react-table/hooks/useForkRef.js +0 -13
  401. package/dist/react-table/hooks/useForkRef.js.map +0 -1
  402. package/dist/react-table/hooks/useSafeLayoutEffect.js +0 -6
  403. package/dist/react-table/hooks/useSafeLayoutEffect.js.map +0 -1
  404. package/dist/react-table/icons/config.js +0 -9
  405. package/dist/react-table/icons/config.js.map +0 -1
  406. package/dist/react-table/icons/registry.js +0 -12
  407. package/dist/react-table/icons/registry.js.map +0 -1
  408. package/dist/react-table/icons/store.js +0 -10
  409. package/dist/react-table/icons/store.js.map +0 -1
  410. package/dist/react-table/utils/setRef.js +0 -7
  411. package/dist/react-table/utils/setRef.js.map +0 -1
  412. package/dist/storybook/storyPlay.d.ts +0 -28
  413. /package/dist/{react-table/connects → connects}/rt/table/draggableHeader.js +0 -0
  414. /package/dist/{react-table/connects → connects}/rt/table/utils.js +0 -0
  415. /package/dist/{react-table/react-table.js → react-table.js} +0 -0
  416. /package/dist/{react-table/react-table.js.map → react-table.js.map} +0 -0
@@ -1,163 +1,174 @@
1
- import { jsx as r, jsxs as b, Fragment as Ce } from "react/jsx-runtime";
2
- import '../../../assets/styles/less/components/selectField/selectField.entry.css';/* empty css */
3
- import { forwardRef as Ne, useState as D, useRef as S, useMemo as Fe, useEffect as U } from "react";
4
- import V from "clsx";
5
- import { useSafeLayoutEffect as Me } from "../../../hooks/useSafeLayoutEffect.js";
6
- import { useForkRef as Re } from "../../../hooks/useForkRef.js";
7
- import { DropdownMenu as Ve } from "./dropdownMenu.js";
8
- import { Chip as Ee } from "../../dataDisplay/chip/chip.js";
9
- import { Icon as q } from "../../base/icon/icon.js";
10
- import { TextFieldWrapper as Le } from "../textField/textFieldWrapper.js";
11
- const ke = (i) => /* @__PURE__ */ r(q, { name: "arrow_drop_down", ...i }), Pe = (i) => /* @__PURE__ */ r(q, { name: "close", size: 20, ...i });
12
- function $(i) {
1
+ import { jsx as a, jsxs as b, Fragment as Ne } from "react/jsx-runtime";
2
+ import '../../../assets/styles/less/components/selectField/selectField.entry.css';import '../../../assets/styles/less/tokens.entry.css';/* empty css */
3
+ /* empty css */
4
+ import { forwardRef as Fe, useState as D, useRef as S, useMemo as Me, useEffect as U } from "react";
5
+ import C from "clsx";
6
+ import { useSafeLayoutEffect as Re } from "../../../hooks/useSafeLayoutEffect.js";
7
+ import { useForkRef as Ve } from "../../../hooks/useForkRef.js";
8
+ import { DropdownMenu as Ee } from "./dropdownMenu.js";
9
+ import { Chip as Le } from "../../dataDisplay/chip/chip.js";
10
+ import { Icon as G } from "../../base/icon/icon.js";
11
+ import { TextFieldWrapper as ke } from "../textField/textFieldWrapper.js";
12
+ const ze = (i) => /* @__PURE__ */ a(G, { name: "arrow_drop_down", ...i }), Pe = (i) => /* @__PURE__ */ a(G, { name: "close", size: 20, ...i });
13
+ function q(i) {
13
14
  i.preventDefault(), i.stopPropagation();
14
15
  }
15
- const qe = Ne(function(E, G) {
16
+ const Je = Fe(function(L, J) {
16
17
  const {
17
- className: L,
18
+ className: k,
18
19
  value: _,
19
- defaultValue: k,
20
- onChange: C,
20
+ defaultValue: z,
21
+ onChange: N,
21
22
  disabled: f,
22
- readOnly: N,
23
- name: J,
23
+ readOnly: F,
24
+ name: Q,
24
25
  multiple: P,
25
- menuMaxHeight: Q,
26
- menuMiddleware: X,
27
- menuNoItemsMessage: Y,
28
- menuContainer: Z,
26
+ menuMaxHeight: X,
27
+ menuMiddleware: Y,
28
+ menuNoItemsMessage: Z,
29
+ menuContainer: ee,
29
30
  search: c,
30
- chips: ee,
31
+ chips: se,
31
32
  isFocused: K,
32
33
  error: O,
33
- items: a,
34
+ items: r,
34
35
  label: W,
35
36
  variant: j = "outlined",
36
- fullWidth: se,
37
+ size: M = "medium",
38
+ fullWidth: le,
37
39
  helperText: te,
38
40
  onSearch: v,
39
41
  resetSearch: y,
40
- isLoading: le,
41
- inline: z,
42
- endAdornment: ne,
43
- hideSelectArrowIcon: oe,
42
+ isLoading: ne,
43
+ inline: H,
44
+ endAdornment: oe,
45
+ hideSelectArrowIcon: ae,
44
46
  optionRenderer: re,
45
- clearable: ae,
46
- creatable: ie,
47
- onCreate: F,
48
- virtualized: ce,
49
- itemHeight: ue,
50
- "aria-label": de,
51
- id: fe,
52
- ...me
53
- } = E, [o, u] = D(!1), [pe, we] = D(k), [m, p] = D(() => {
54
- const e = _ != null ? _ : k;
47
+ clearable: ie,
48
+ creatable: ce,
49
+ onCreate: R,
50
+ virtualized: ue,
51
+ itemHeight: de,
52
+ "aria-label": fe,
53
+ id: me,
54
+ ...pe
55
+ } = L, [o, u] = D(!1), [we, he] = D(z), [m, p] = D(() => {
56
+ const e = _ != null ? _ : z;
55
57
  if (Array.isArray(e))
56
- return a.filter((l) => e.includes(l.value));
57
- const s = e == null ? void 0 : a.find((l) => l.value === e);
58
+ return r.filter((t) => e.includes(t.value));
59
+ const s = e == null ? void 0 : r.find((t) => t.value === e);
58
60
  return s ? [s] : [];
59
- }), [n, x] = D(""), { current: he } = S(_ != null), h = S(null), be = Re(G, h), A = S(null), H = S(null), t = he ? _ : pe, g = Fe(() => K || o, [K, o]), _e = (e) => {
61
+ }), [n, x] = D(""), { current: be } = S(_ != null), h = S(null), _e = Ve(J, h), A = S(null), T = S(null), l = be ? _ : we, g = Me(() => K || o, [K, o]), ve = (e) => {
60
62
  var s;
61
63
  e.button === 0 && (e.preventDefault(), (s = h.current) == null || s.focus(), u(!o));
62
- }, ve = () => {
64
+ }, ye = () => {
63
65
  var e;
64
66
  u(!1), (e = h.current) == null || e.focus();
65
- }, ye = () => {
67
+ }, xe = () => {
66
68
  var e;
67
- c === !0 && ((e = H.current) == null || e.focus());
68
- }, xe = (e) => {
69
- N || [" ", "ArrowUp", "ArrowDown", "Enter"].includes(e.key) && (e.preventDefault(), u(!o));
69
+ c === !0 && ((e = T.current) == null || e.focus());
70
+ }, Ae = (e) => {
71
+ F || [" ", "ArrowUp", "ArrowDown", "Enter"].includes(e.key) && (e.preventDefault(), u(!o));
70
72
  };
71
73
  U(() => {
72
74
  (!g || c === "menu" && !o) && (x(""), y == null || y());
73
75
  }, [g, c, o, y]), U(() => {
74
- if (Array.isArray(t))
75
- p(a.filter((e) => t.includes(e.value)));
76
- else if (t == null || t === "")
76
+ if (Array.isArray(l))
77
+ p(r.filter((e) => l.includes(e.value)));
78
+ else if (l == null || l === "")
77
79
  p([]);
78
80
  else {
79
- const e = a.find((s) => s.value === t);
81
+ const e = r.find((s) => s.value === l);
80
82
  p(e ? [e] : []);
81
83
  }
82
- }, [t, a]), Me(() => {
84
+ }, [l, r]), Re(() => {
83
85
  A.current && (A.current.scrollLeft = A.current.scrollWidth);
84
- }, [t]);
85
- const M = (e, s) => {
86
- C == null || C(e, { ...E, value: s, name: J || void 0 }), we(s);
87
- }, Ae = (e, s) => {
86
+ }, [l]);
87
+ const V = (e, s) => {
88
+ N == null || N(e, { ...L, value: s, name: Q || void 0 }), he(s);
89
+ }, ge = (e, s) => {
88
90
  var w;
89
- let l, d;
91
+ let t, d;
90
92
  if (P) {
91
- const B = Array.isArray(t) ? t : [t].filter(Boolean);
92
- l = B.slice(), d = m.slice();
93
- const R = B.findIndex((Se) => Se === s.value);
94
- R === -1 ? (l.push(s.value), d.push(s)) : (l.splice(R, 1), d.splice(R, 1));
93
+ const B = Array.isArray(l) ? l : [l].filter(Boolean);
94
+ t = B.slice(), d = m.slice();
95
+ const E = B.findIndex((Ce) => Ce === s.value);
96
+ E === -1 ? (t.push(s.value), d.push(s)) : (t.splice(E, 1), d.splice(E, 1));
95
97
  } else
96
- l = t === s.value ? "" : s.value, d = [s];
97
- n && x(""), P || (u(!1), (w = h.current) == null || w.focus()), p(d), M(e, l);
98
- }, T = (e) => {
98
+ t = l === s.value ? "" : s.value, d = [s];
99
+ n && x(""), P || (u(!1), (w = h.current) == null || w.focus()), p(d), V(e, t);
100
+ }, $ = (e) => {
99
101
  x(e.target.value), v == null || v(e), o || u(!0);
100
- }, ge = (e) => (s) => {
101
- if (Array.isArray(t)) {
102
- const l = t.filter((w) => e !== w);
103
- M(s, l);
102
+ }, Ie = (e) => (s) => {
103
+ if (Array.isArray(l)) {
104
+ const t = l.filter((w) => e !== w);
105
+ V(s, t);
104
106
  const d = m.filter((w) => w.value !== e);
105
107
  p(d);
106
108
  }
107
- }, Ie = (e) => {
108
- M(e, []), p([]);
109
+ }, De = (e) => {
110
+ V(e, []), p([]);
109
111
  };
110
112
  let I;
111
- const De = V("smwb-select-field", L, {
113
+ const Se = C("smwb-select-field", k, {
112
114
  "smwb-select-field--filled": j === "filled" && W,
113
115
  "smwb-select-field--disabled": f,
114
116
  "smwb-select-field--search": c,
115
- "smwb-select-field--inline": z
117
+ "smwb-select-field--inline": H
116
118
  });
117
- return ee ? I = m.map(({ key: e, value: s, text: l }) => /* @__PURE__ */ r(Ee, { label: l, onDelete: ge(s), onDeleteMouseDown: $ }, e || s)) : I = m.map((e) => e.text).join(", "), /* @__PURE__ */ b(Ce, { children: [
118
- /* @__PURE__ */ r(
119
- Le,
119
+ return se ? I = m.map(({ key: e, value: s, text: t }) => /* @__PURE__ */ a(
120
+ Le,
121
+ {
122
+ label: t,
123
+ size: M === "small" ? "small" : "medium",
124
+ onDelete: Ie(s),
125
+ onDeleteMouseDown: q
126
+ },
127
+ e || s
128
+ )) : I = m.map((e) => e.text).join(", "), /* @__PURE__ */ b(Ne, { children: [
129
+ /* @__PURE__ */ a(
130
+ ke,
120
131
  {
121
132
  label: W,
122
133
  helperText: te,
123
134
  variant: j,
124
135
  disabled: f,
125
- className: L,
136
+ className: C(k, M !== "medium" && `smwb-text-field_size-${M}`),
126
137
  error: O,
127
- fullWidth: se,
138
+ fullWidth: le,
128
139
  isFilledState: !!m.length || !!n,
129
140
  isFocused: g,
130
- inline: z,
131
- ...me,
141
+ inline: H,
142
+ ...pe,
132
143
  children: /* @__PURE__ */ b(
133
144
  "span",
134
145
  {
135
- ref: be,
136
- id: fe,
137
- className: De,
146
+ ref: _e,
147
+ id: me,
148
+ className: Se,
138
149
  tabIndex: f ? void 0 : 0,
139
150
  role: "button",
140
151
  "aria-haspopup": "listbox",
141
152
  "aria-expanded": o,
142
153
  "aria-disabled": f || void 0,
143
- "aria-label": de,
144
- onMouseDown: f || N ? void 0 : _e,
145
- onFocus: ye,
146
- onKeyDown: xe,
154
+ "aria-label": fe,
155
+ onMouseDown: f || F ? void 0 : ve,
156
+ onFocus: xe,
157
+ onKeyDown: Ae,
147
158
  "data-testid": "select-field",
148
159
  children: [
149
160
  /* @__PURE__ */ b("span", { className: "smwb-select-field__search-wrapper", ref: A, children: [
150
- I && /* @__PURE__ */ r("span", { className: "smwb-select-field__values", children: I }),
151
- c && typeof c == "boolean" && !N && /* @__PURE__ */ b("span", { className: "smwb-select-field__search", children: [
152
- /* @__PURE__ */ r("span", { className: "smwb-select-field__search-text", children: n }),
153
- /* @__PURE__ */ r(
161
+ I && /* @__PURE__ */ a("span", { className: "smwb-select-field__values", children: I }),
162
+ c && typeof c == "boolean" && !F && /* @__PURE__ */ b("span", { className: "smwb-select-field__search", children: [
163
+ /* @__PURE__ */ a("span", { className: "smwb-select-field__search-text", children: n }),
164
+ /* @__PURE__ */ a(
154
165
  "input",
155
166
  {
156
167
  className: "smwb-select-field__search-input",
157
- ref: H,
168
+ ref: T,
158
169
  type: "text",
159
170
  value: n,
160
- onChange: T,
171
+ onChange: $,
161
172
  onMouseDown: (e) => {
162
173
  e.stopPropagation(), u(!0);
163
174
  },
@@ -170,21 +181,21 @@ const qe = Ne(function(E, G) {
170
181
  ] })
171
182
  ] }),
172
183
  /* @__PURE__ */ b("span", { className: "smwb-select-field__actions", children: [
173
- (Array.isArray(t) && t.length > 0 || ae && m.length > 0) && !f && /* @__PURE__ */ r(
184
+ (Array.isArray(l) && l.length > 0 || ie && m.length > 0) && !f && /* @__PURE__ */ a(
174
185
  Pe,
175
186
  {
176
- onClick: Ie,
177
- onMouseDown: $,
178
- className: V("smwb-select-field__icon", "smwb-select-field__icon--close"),
187
+ onClick: De,
188
+ onMouseDown: q,
189
+ className: C("smwb-select-field__icon", "smwb-select-field__icon--close"),
179
190
  "aria-label": "Clear selection",
180
191
  role: "button"
181
192
  }
182
193
  ),
183
- ne,
184
- !oe && /* @__PURE__ */ r(
185
- ke,
194
+ oe,
195
+ !ae && /* @__PURE__ */ a(
196
+ ze,
186
197
  {
187
- className: V("smwb-select-field__icon", "smwb-select-field__icon--arrow", {
198
+ className: C("smwb-select-field__icon", "smwb-select-field__icon--arrow", {
188
199
  "smwb-select-field__icon--opened": o,
189
200
  "smwb-select-field__icon--focused": g,
190
201
  "smwb-select-field__icon--error": O
@@ -197,30 +208,30 @@ const qe = Ne(function(E, G) {
197
208
  )
198
209
  }
199
210
  ),
200
- /* @__PURE__ */ r(
201
- Ve,
211
+ /* @__PURE__ */ a(
212
+ Ee,
202
213
  {
203
214
  anchorElementRef: h,
204
- menuMaxHeight: Q,
205
- menuMiddleware: X,
215
+ menuMaxHeight: X,
216
+ menuMiddleware: Y,
206
217
  search: c === "menu",
207
- onSearchInputChange: T,
218
+ onSearchInputChange: $,
208
219
  optionRenderer: re,
209
- items: v ? a : n ? a.filter((e) => e.text.search(new RegExp(n, "i")) !== -1) : a,
220
+ items: v ? r : n ? r.filter((e) => e.text.search(new RegExp(n, "i")) !== -1) : r,
210
221
  searchValue: n,
211
222
  isOpen: o,
212
- onClose: ve,
213
- onItemClick: Ae,
214
- value: t,
215
- isLoading: le,
216
- menuNoItemsMessage: Y,
217
- container: Z,
218
- virtualized: ce,
219
- itemHeight: ue,
220
- createOption: ie && n && !a.some((e) => e.text.toLowerCase() === String(n).toLowerCase()) ? {
223
+ onClose: ye,
224
+ onItemClick: ge,
225
+ value: l,
226
+ isLoading: ne,
227
+ menuNoItemsMessage: Z,
228
+ container: ee,
229
+ virtualized: ue,
230
+ itemHeight: de,
231
+ createOption: ce && n && !r.some((e) => e.text.toLowerCase() === String(n).toLowerCase()) ? {
221
232
  text: `Создать "${n}"`,
222
233
  onCreate: (e) => {
223
- F == null || F(String(n), e), x(""), u(!1);
234
+ R == null || R(String(n), e), x(""), u(!1);
224
235
  }
225
236
  } : void 0
226
237
  }
@@ -228,6 +239,6 @@ const qe = Ne(function(E, G) {
228
239
  ] });
229
240
  });
230
241
  export {
231
- qe as SelectField
242
+ Je as SelectField
232
243
  };
233
244
  //# sourceMappingURL=selectField.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"selectField.js","sources":["../../../../src/components/inputs/selectField/selectField.tsx"],"sourcesContent":["import type { HTMLAttributes, SyntheticEvent } from \"react\";\nimport React, { useState, useRef, useEffect, useMemo, forwardRef } from \"react\";\nimport cn from \"clsx\";\nimport { useSafeLayoutEffect } from \"../../../hooks/useSafeLayoutEffect\";\nimport { useForkRef } from \"../../../hooks/useForkRef\";\nimport { DropdownMenu, DropdownItem, DropdownItemProps } from \"./dropdownMenu\";\nimport Chip from \"../../dataDisplay/chip/chip\";\nimport { TextFieldWrapper } from \"../textField\";\nimport Icon from \"../../base/icon/icon\";\nimport { MenuItemProps } from \"../../navigation/menu\";\n\nconst SelectArrowIcon = (props: HTMLAttributes<HTMLSpanElement>) => <Icon name=\"arrow_drop_down\" {...props} />;\n\nconst ClearIcon = (props: HTMLAttributes<HTMLSpanElement>) => <Icon name=\"close\" size={20} {...props} />;\n\nfunction stopEvent(event: React.SyntheticEvent) {\n event.preventDefault();\n event.stopPropagation();\n}\n\nexport type OnSelectChange = (e: SyntheticEvent, data: SelectFieldProps) => void;\n\nexport interface SelectFieldProps {\n className?: string;\n value?: null | string | number | (string | number | undefined | null)[];\n defaultValue?: null | string | number | (string | number)[];\n onChange?: OnSelectChange;\n disabled?: boolean;\n readOnly?: boolean;\n name?: string;\n multiple?: boolean;\n menuMaxHeight?: number;\n menuMiddleware?: DropdownItemProps[\"menuMiddleware\"];\n menuNoItemsMessage?: React.ReactNode;\n menuContainer?: HTMLElement;\n search?: true | false | \"menu\";\n chips?: boolean;\n isFocused?: boolean;\n error?: boolean;\n items: DropdownItem[];\n label?: string;\n variant?: \"outlined\" | \"filled\";\n fullWidth?: boolean;\n helperText?: React.ReactNode;\n onSearch?: (e: React.ChangeEvent<HTMLInputElement>) => void;\n isLoading?: boolean;\n resetSearch?: () => void;\n inline?: boolean;\n endAdornment?: React.ReactNode;\n hideSelectArrowIcon?: boolean;\n optionRenderer?: (args: MenuItemProps) => React.ReactNode;\n /** Shows a clear button to reset the selection. */\n clearable?: boolean;\n /** Allows creating a new option from the current search text. */\n creatable?: boolean;\n /** Invoked with the typed text when the user creates a new option. */\n onCreate?: (inputValue: string, event: React.SyntheticEvent) => void;\n /** Windows long option lists for performance (fixed row height). */\n virtualized?: boolean;\n /** Row height (px) used when `virtualized`. */\n itemHeight?: number;\n /** Accessible label for the combobox control. */\n \"aria-label\"?: string;\n id?: string;\n}\n\nexport const SelectField = forwardRef<HTMLSpanElement, SelectFieldProps>(function SelectField(props, ref) {\n const {\n className,\n value: valueProp,\n defaultValue,\n onChange,\n disabled,\n readOnly,\n name,\n multiple,\n menuMaxHeight,\n menuMiddleware,\n menuNoItemsMessage,\n menuContainer,\n search,\n chips,\n isFocused: isFocusedProp,\n error,\n items,\n label,\n variant = \"outlined\",\n fullWidth,\n helperText,\n onSearch,\n resetSearch,\n isLoading,\n inline,\n endAdornment,\n hideSelectArrowIcon,\n optionRenderer,\n clearable,\n creatable,\n onCreate,\n virtualized,\n itemHeight,\n \"aria-label\": ariaLabel,\n id,\n ...rest\n } = props;\n const [isOpen, setIsOpen] = useState<boolean>(false);\n const [valueState, setValueState] = useState<typeof valueProp>(defaultValue);\n const [selectedItems, setSelectedItems] = useState<typeof items>(() => {\n // Seed from the effective initial value so an uncontrolled `defaultValue`\n // shows its selection (and floats the label) before any interaction.\n const initialValue = valueProp != null ? valueProp : defaultValue;\n\n if (Array.isArray(initialValue)) {\n return items.filter((item) => initialValue.includes(item.value));\n }\n\n const item = initialValue == null ? undefined : items.find((i) => i.value === initialValue);\n\n return item ? [item] : [];\n });\n const [searchValue, setSearchValue] = useState(\"\");\n const { current: isControlled } = useRef(valueProp != null);\n const anchorElementRef = useRef<HTMLSpanElement>(null);\n const forkedAnchorRef = useForkRef<HTMLSpanElement>(ref, anchorElementRef);\n const searchWrapperRef = useRef<HTMLSpanElement>(null);\n const searchInputRef = useRef<HTMLInputElement>(null);\n const value = isControlled ? valueProp : valueState;\n\n const isFocused = useMemo(() => isFocusedProp || isOpen, [isFocusedProp, isOpen]);\n\n const onMouseDown = (event: React.MouseEvent<HTMLDivElement>) => {\n // Только для левой клавиши мышки.\n if (event.button !== 0) {\n return;\n }\n event.preventDefault();\n anchorElementRef.current?.focus();\n setIsOpen(!isOpen);\n };\n\n const onClose = () => {\n setIsOpen(false);\n anchorElementRef.current?.focus();\n };\n\n const onFocus = () => {\n if (search === true) {\n searchInputRef.current?.focus();\n }\n };\n\n const onKeyDown = (event: React.KeyboardEvent<HTMLDivElement>) => {\n if (!readOnly) {\n const validKeys = [\" \", \"ArrowUp\", \"ArrowDown\", \"Enter\"];\n\n if (validKeys.includes(event.key)) {\n event.preventDefault();\n setIsOpen(!isOpen);\n }\n }\n };\n\n useEffect(() => {\n if (!isFocused || (search === \"menu\" && !isOpen)) {\n setSearchValue(\"\");\n resetSearch?.();\n }\n }, [isFocused, search, isOpen, resetSearch]);\n\n // Keep the displayed selection in sync with the effective value (controlled\n // `value` or uncontrolled `defaultValue`/internal state), so the label floats\n // whenever there is a value — including the initial default, without focus.\n useEffect(() => {\n if (Array.isArray(value)) {\n setSelectedItems(items.filter((item) => value.includes(item.value)));\n } else if (value == null || value === \"\") {\n setSelectedItems([]);\n } else {\n const item = items.find((item) => item.value === value);\n setSelectedItems(item ? [item] : []);\n }\n }, [value, items]);\n\n useSafeLayoutEffect(() => {\n if (searchWrapperRef.current) {\n searchWrapperRef.current.scrollLeft = searchWrapperRef.current.scrollWidth;\n }\n }, [value]);\n\n const updateValue = (event: React.SyntheticEvent, value: typeof valueProp) => {\n onChange?.(event, { ...props, value, name: name || undefined });\n setValueState(value);\n };\n\n const onItemClick = (event: React.SyntheticEvent, item: DropdownItem) => {\n let newValue: typeof valueProp;\n let newSelectedItem: typeof selectedItems;\n if (multiple) {\n const valueArray = Array.isArray(value) ? value : [value].filter(Boolean);\n newValue = valueArray.slice();\n newSelectedItem = selectedItems.slice();\n const itemIndex = valueArray.findIndex((el) => el === item.value);\n\n if (itemIndex === -1) {\n newValue.push(item.value);\n newSelectedItem.push(item);\n } else {\n newValue.splice(itemIndex, 1);\n newSelectedItem.splice(itemIndex, 1);\n }\n } else {\n newValue = value === item.value ? \"\" : item.value;\n newSelectedItem = [item];\n }\n\n if (searchValue) {\n setSearchValue(\"\");\n }\n\n if (!multiple) {\n setIsOpen(false);\n anchorElementRef.current?.focus();\n }\n setSelectedItems(newSelectedItem);\n updateValue(event, newValue);\n };\n\n const onSearchInputChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n setSearchValue(event.target.value);\n onSearch?.(event);\n if (!isOpen) {\n setIsOpen(true);\n }\n };\n\n const onDeleteChip = (currentValue: typeof valueProp) => (event: React.SyntheticEvent) => {\n if (Array.isArray(value)) {\n const newValue = value.filter((value) => currentValue !== value);\n updateValue(event, newValue);\n const newSelectedItems = selectedItems.filter((el) => el.value !== currentValue);\n setSelectedItems(newSelectedItems);\n }\n };\n\n const onResetSelected = (event: React.MouseEvent) => {\n updateValue(event, []);\n setSelectedItems([]);\n };\n\n let displayValues: string | React.ReactNode[];\n\n const classes = cn(\"smwb-select-field\", className, {\n \"smwb-select-field--filled\": variant === \"filled\" && label,\n \"smwb-select-field--disabled\": disabled,\n \"smwb-select-field--search\": search,\n \"smwb-select-field--inline\": inline,\n });\n\n if (chips) {\n displayValues = selectedItems.map(({ key, value, text }) => (\n <Chip key={key || value} label={text} onDelete={onDeleteChip(value)} onDeleteMouseDown={stopEvent} />\n ));\n } else {\n displayValues = selectedItems.map((el) => el.text).join(\", \");\n }\n\n return (\n <>\n <TextFieldWrapper\n label={label}\n helperText={helperText}\n variant={variant}\n disabled={disabled}\n className={className}\n error={error}\n fullWidth={fullWidth}\n isFilledState={!!selectedItems.length || !!searchValue}\n isFocused={isFocused}\n inline={inline}\n {...rest}\n >\n <span\n ref={forkedAnchorRef}\n id={id}\n className={classes}\n tabIndex={disabled ? undefined : 0}\n role=\"button\"\n aria-haspopup=\"listbox\"\n aria-expanded={isOpen}\n aria-disabled={disabled || undefined}\n aria-label={ariaLabel}\n onMouseDown={disabled || readOnly ? undefined : onMouseDown}\n onFocus={onFocus}\n onKeyDown={onKeyDown}\n data-testid=\"select-field\"\n >\n <span className=\"smwb-select-field__search-wrapper\" ref={searchWrapperRef}>\n {displayValues && <span className=\"smwb-select-field__values\">{displayValues}</span>}\n {search && typeof search === \"boolean\" && !readOnly && (\n <span className=\"smwb-select-field__search\">\n <span className=\"smwb-select-field__search-text\">{searchValue}</span>\n <input\n className=\"smwb-select-field__search-input\"\n ref={searchInputRef}\n type=\"text\"\n value={searchValue}\n onChange={onSearchInputChange}\n onMouseDown={(event: React.MouseEvent<HTMLInputElement>) => {\n event.stopPropagation();\n setIsOpen(true);\n }}\n onKeyDown={(event) => {\n event.stopPropagation();\n }}\n data-testid=\"search-input\"\n />\n </span>\n )}\n </span>\n <span className=\"smwb-select-field__actions\">\n {((Array.isArray(value) && value.length > 0) || (clearable && selectedItems.length > 0)) && !disabled && (\n <ClearIcon\n onClick={onResetSelected}\n onMouseDown={stopEvent}\n className={cn(\"smwb-select-field__icon\", \"smwb-select-field__icon--close\")}\n aria-label=\"Clear selection\"\n role=\"button\"\n />\n )}\n {endAdornment}\n {!hideSelectArrowIcon && (\n <SelectArrowIcon\n className={cn(\"smwb-select-field__icon\", \"smwb-select-field__icon--arrow\", {\n \"smwb-select-field__icon--opened\": isOpen,\n \"smwb-select-field__icon--focused\": isFocused,\n \"smwb-select-field__icon--error\": error,\n })}\n />\n )}\n </span>\n </span>\n </TextFieldWrapper>\n <DropdownMenu\n anchorElementRef={anchorElementRef}\n menuMaxHeight={menuMaxHeight}\n menuMiddleware={menuMiddleware}\n search={search === \"menu\"}\n onSearchInputChange={onSearchInputChange}\n optionRenderer={optionRenderer}\n items={\n onSearch\n ? items\n : searchValue\n ? items.filter((el) => el.text.search(new RegExp(searchValue, \"i\")) !== -1)\n : items\n }\n searchValue={searchValue}\n isOpen={isOpen}\n onClose={onClose}\n onItemClick={onItemClick}\n value={value}\n isLoading={isLoading}\n menuNoItemsMessage={menuNoItemsMessage}\n container={menuContainer}\n virtualized={virtualized}\n itemHeight={itemHeight}\n createOption={\n creatable && searchValue && !items.some((i) => i.text.toLowerCase() === String(searchValue).toLowerCase())\n ? {\n text: `Создать \"${searchValue}\"`,\n onCreate: (event: React.SyntheticEvent) => {\n onCreate?.(String(searchValue), event);\n setSearchValue(\"\");\n setIsOpen(false);\n },\n }\n : undefined\n }\n />\n </>\n );\n});\n\nexport default SelectField;\n"],"names":["SelectArrowIcon","props","jsx","Icon","ClearIcon","stopEvent","event","SelectField","forwardRef","ref","className","valueProp","defaultValue","onChange","disabled","readOnly","name","multiple","menuMaxHeight","menuMiddleware","menuNoItemsMessage","menuContainer","search","chips","isFocusedProp","error","items","label","variant","fullWidth","helperText","onSearch","resetSearch","isLoading","inline","endAdornment","hideSelectArrowIcon","optionRenderer","clearable","creatable","onCreate","virtualized","itemHeight","ariaLabel","id","rest","isOpen","setIsOpen","useState","valueState","setValueState","selectedItems","setSelectedItems","initialValue","item","i","searchValue","setSearchValue","isControlled","useRef","anchorElementRef","forkedAnchorRef","useForkRef","searchWrapperRef","searchInputRef","value","isFocused","useMemo","onMouseDown","_a","onClose","onFocus","onKeyDown","useEffect","useSafeLayoutEffect","updateValue","onItemClick","newValue","newSelectedItem","valueArray","itemIndex","el","onSearchInputChange","onDeleteChip","currentValue","newSelectedItems","onResetSelected","displayValues","classes","cn","key","text","Chip","jsxs","Fragment","TextFieldWrapper","DropdownMenu"],"mappings":"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"}
1
+ {"version":3,"file":"selectField.js","sources":["../../../../src/components/inputs/selectField/selectField.tsx"],"sourcesContent":["import type { HTMLAttributes, SyntheticEvent } from \"react\";\nimport React, { useState, useRef, useEffect, useMemo, forwardRef } from \"react\";\nimport cn from \"clsx\";\nimport { useSafeLayoutEffect } from \"../../../hooks/useSafeLayoutEffect\";\nimport { useForkRef } from \"../../../hooks/useForkRef\";\nimport { DropdownMenu, DropdownItem, DropdownItemProps } from \"./dropdownMenu\";\nimport Chip from \"../../dataDisplay/chip/chip\";\nimport { TextFieldWrapper } from \"../textField\";\nimport Icon from \"../../base/icon/icon\";\nimport { MenuItemProps } from \"../../navigation/menu\";\n\nconst SelectArrowIcon = (props: HTMLAttributes<HTMLSpanElement>) => <Icon name=\"arrow_drop_down\" {...props} />;\n\nconst ClearIcon = (props: HTMLAttributes<HTMLSpanElement>) => <Icon name=\"close\" size={20} {...props} />;\n\nfunction stopEvent(event: React.SyntheticEvent) {\n event.preventDefault();\n event.stopPropagation();\n}\n\nexport type OnSelectChange = (e: SyntheticEvent, data: SelectFieldProps) => void;\n\nexport interface SelectFieldProps {\n className?: string;\n value?: null | string | number | (string | number | undefined | null)[];\n defaultValue?: null | string | number | (string | number)[];\n onChange?: OnSelectChange;\n disabled?: boolean;\n readOnly?: boolean;\n name?: string;\n multiple?: boolean;\n menuMaxHeight?: number;\n menuMiddleware?: DropdownItemProps[\"menuMiddleware\"];\n menuNoItemsMessage?: React.ReactNode;\n menuContainer?: HTMLElement;\n search?: true | false | \"menu\";\n chips?: boolean;\n isFocused?: boolean;\n error?: boolean;\n items: DropdownItem[];\n label?: string;\n variant?: \"outlined\" | \"filled\";\n /** Height of the field, as for TextField: `small` (40px, for toolbars), `medium` (default) or `large`. */\n size?: \"small\" | \"medium\" | \"large\";\n fullWidth?: boolean;\n helperText?: React.ReactNode;\n onSearch?: (e: React.ChangeEvent<HTMLInputElement>) => void;\n isLoading?: boolean;\n resetSearch?: () => void;\n inline?: boolean;\n endAdornment?: React.ReactNode;\n hideSelectArrowIcon?: boolean;\n optionRenderer?: (args: MenuItemProps) => React.ReactNode;\n /** Shows a clear button to reset the selection. */\n clearable?: boolean;\n /** Allows creating a new option from the current search text. */\n creatable?: boolean;\n /** Invoked with the typed text when the user creates a new option. */\n onCreate?: (inputValue: string, event: React.SyntheticEvent) => void;\n /** Windows long option lists for performance (fixed row height). */\n virtualized?: boolean;\n /** Row height (px) used when `virtualized`. */\n itemHeight?: number;\n /** Accessible label for the combobox control. */\n \"aria-label\"?: string;\n id?: string;\n}\n\nexport const SelectField = forwardRef<HTMLSpanElement, SelectFieldProps>(function SelectField(props, ref) {\n const {\n className,\n value: valueProp,\n defaultValue,\n onChange,\n disabled,\n readOnly,\n name,\n multiple,\n menuMaxHeight,\n menuMiddleware,\n menuNoItemsMessage,\n menuContainer,\n search,\n chips,\n isFocused: isFocusedProp,\n error,\n items,\n label,\n variant = \"outlined\",\n size = \"medium\",\n fullWidth,\n helperText,\n onSearch,\n resetSearch,\n isLoading,\n inline,\n endAdornment,\n hideSelectArrowIcon,\n optionRenderer,\n clearable,\n creatable,\n onCreate,\n virtualized,\n itemHeight,\n \"aria-label\": ariaLabel,\n id,\n ...rest\n } = props;\n const [isOpen, setIsOpen] = useState<boolean>(false);\n const [valueState, setValueState] = useState<typeof valueProp>(defaultValue);\n const [selectedItems, setSelectedItems] = useState<typeof items>(() => {\n // Seed from the effective initial value so an uncontrolled `defaultValue`\n // shows its selection (and floats the label) before any interaction.\n const initialValue = valueProp != null ? valueProp : defaultValue;\n\n if (Array.isArray(initialValue)) {\n return items.filter((item) => initialValue.includes(item.value));\n }\n\n const item = initialValue == null ? undefined : items.find((i) => i.value === initialValue);\n\n return item ? [item] : [];\n });\n const [searchValue, setSearchValue] = useState(\"\");\n const { current: isControlled } = useRef(valueProp != null);\n const anchorElementRef = useRef<HTMLSpanElement>(null);\n const forkedAnchorRef = useForkRef<HTMLSpanElement>(ref, anchorElementRef);\n const searchWrapperRef = useRef<HTMLSpanElement>(null);\n const searchInputRef = useRef<HTMLInputElement>(null);\n const value = isControlled ? valueProp : valueState;\n\n const isFocused = useMemo(() => isFocusedProp || isOpen, [isFocusedProp, isOpen]);\n\n const onMouseDown = (event: React.MouseEvent<HTMLDivElement>) => {\n // Только для левой клавиши мышки.\n if (event.button !== 0) {\n return;\n }\n event.preventDefault();\n anchorElementRef.current?.focus();\n setIsOpen(!isOpen);\n };\n\n const onClose = () => {\n setIsOpen(false);\n anchorElementRef.current?.focus();\n };\n\n const onFocus = () => {\n if (search === true) {\n searchInputRef.current?.focus();\n }\n };\n\n const onKeyDown = (event: React.KeyboardEvent<HTMLDivElement>) => {\n if (!readOnly) {\n const validKeys = [\" \", \"ArrowUp\", \"ArrowDown\", \"Enter\"];\n\n if (validKeys.includes(event.key)) {\n event.preventDefault();\n setIsOpen(!isOpen);\n }\n }\n };\n\n useEffect(() => {\n if (!isFocused || (search === \"menu\" && !isOpen)) {\n setSearchValue(\"\");\n resetSearch?.();\n }\n }, [isFocused, search, isOpen, resetSearch]);\n\n // Keep the displayed selection in sync with the effective value (controlled\n // `value` or uncontrolled `defaultValue`/internal state), so the label floats\n // whenever there is a value — including the initial default, without focus.\n useEffect(() => {\n if (Array.isArray(value)) {\n setSelectedItems(items.filter((item) => value.includes(item.value)));\n } else if (value == null || value === \"\") {\n setSelectedItems([]);\n } else {\n const item = items.find((item) => item.value === value);\n setSelectedItems(item ? [item] : []);\n }\n }, [value, items]);\n\n useSafeLayoutEffect(() => {\n if (searchWrapperRef.current) {\n searchWrapperRef.current.scrollLeft = searchWrapperRef.current.scrollWidth;\n }\n }, [value]);\n\n const updateValue = (event: React.SyntheticEvent, value: typeof valueProp) => {\n onChange?.(event, { ...props, value, name: name || undefined });\n setValueState(value);\n };\n\n const onItemClick = (event: React.SyntheticEvent, item: DropdownItem) => {\n let newValue: typeof valueProp;\n let newSelectedItem: typeof selectedItems;\n if (multiple) {\n const valueArray = Array.isArray(value) ? value : [value].filter(Boolean);\n newValue = valueArray.slice();\n newSelectedItem = selectedItems.slice();\n const itemIndex = valueArray.findIndex((el) => el === item.value);\n\n if (itemIndex === -1) {\n newValue.push(item.value);\n newSelectedItem.push(item);\n } else {\n newValue.splice(itemIndex, 1);\n newSelectedItem.splice(itemIndex, 1);\n }\n } else {\n newValue = value === item.value ? \"\" : item.value;\n newSelectedItem = [item];\n }\n\n if (searchValue) {\n setSearchValue(\"\");\n }\n\n if (!multiple) {\n setIsOpen(false);\n anchorElementRef.current?.focus();\n }\n setSelectedItems(newSelectedItem);\n updateValue(event, newValue);\n };\n\n const onSearchInputChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n setSearchValue(event.target.value);\n onSearch?.(event);\n if (!isOpen) {\n setIsOpen(true);\n }\n };\n\n const onDeleteChip = (currentValue: typeof valueProp) => (event: React.SyntheticEvent) => {\n if (Array.isArray(value)) {\n const newValue = value.filter((value) => currentValue !== value);\n updateValue(event, newValue);\n const newSelectedItems = selectedItems.filter((el) => el.value !== currentValue);\n setSelectedItems(newSelectedItems);\n }\n };\n\n const onResetSelected = (event: React.MouseEvent) => {\n updateValue(event, []);\n setSelectedItems([]);\n };\n\n let displayValues: string | React.ReactNode[];\n\n const classes = cn(\"smwb-select-field\", className, {\n \"smwb-select-field--filled\": variant === \"filled\" && label,\n \"smwb-select-field--disabled\": disabled,\n \"smwb-select-field--search\": search,\n \"smwb-select-field--inline\": inline,\n });\n\n if (chips) {\n displayValues = selectedItems.map(({ key, value, text }) => (\n <Chip\n key={key || value}\n label={text}\n size={size === \"small\" ? \"small\" : \"medium\"}\n onDelete={onDeleteChip(value)}\n onDeleteMouseDown={stopEvent}\n />\n ));\n } else {\n displayValues = selectedItems.map((el) => el.text).join(\", \");\n }\n\n return (\n <>\n <TextFieldWrapper\n label={label}\n helperText={helperText}\n variant={variant}\n disabled={disabled}\n className={cn(className, size !== \"medium\" && `smwb-text-field_size-${size}`)}\n error={error}\n fullWidth={fullWidth}\n isFilledState={!!selectedItems.length || !!searchValue}\n isFocused={isFocused}\n inline={inline}\n {...rest}\n >\n <span\n ref={forkedAnchorRef}\n id={id}\n className={classes}\n tabIndex={disabled ? undefined : 0}\n role=\"button\"\n aria-haspopup=\"listbox\"\n aria-expanded={isOpen}\n aria-disabled={disabled || undefined}\n aria-label={ariaLabel}\n onMouseDown={disabled || readOnly ? undefined : onMouseDown}\n onFocus={onFocus}\n onKeyDown={onKeyDown}\n data-testid=\"select-field\"\n >\n <span className=\"smwb-select-field__search-wrapper\" ref={searchWrapperRef}>\n {displayValues && <span className=\"smwb-select-field__values\">{displayValues}</span>}\n {search && typeof search === \"boolean\" && !readOnly && (\n <span className=\"smwb-select-field__search\">\n <span className=\"smwb-select-field__search-text\">{searchValue}</span>\n <input\n className=\"smwb-select-field__search-input\"\n ref={searchInputRef}\n type=\"text\"\n value={searchValue}\n onChange={onSearchInputChange}\n onMouseDown={(event: React.MouseEvent<HTMLInputElement>) => {\n event.stopPropagation();\n setIsOpen(true);\n }}\n onKeyDown={(event) => {\n event.stopPropagation();\n }}\n data-testid=\"search-input\"\n />\n </span>\n )}\n </span>\n <span className=\"smwb-select-field__actions\">\n {((Array.isArray(value) && value.length > 0) || (clearable && selectedItems.length > 0)) && !disabled && (\n <ClearIcon\n onClick={onResetSelected}\n onMouseDown={stopEvent}\n className={cn(\"smwb-select-field__icon\", \"smwb-select-field__icon--close\")}\n aria-label=\"Clear selection\"\n role=\"button\"\n />\n )}\n {endAdornment}\n {!hideSelectArrowIcon && (\n <SelectArrowIcon\n className={cn(\"smwb-select-field__icon\", \"smwb-select-field__icon--arrow\", {\n \"smwb-select-field__icon--opened\": isOpen,\n \"smwb-select-field__icon--focused\": isFocused,\n \"smwb-select-field__icon--error\": error,\n })}\n />\n )}\n </span>\n </span>\n </TextFieldWrapper>\n <DropdownMenu\n anchorElementRef={anchorElementRef}\n menuMaxHeight={menuMaxHeight}\n menuMiddleware={menuMiddleware}\n search={search === \"menu\"}\n onSearchInputChange={onSearchInputChange}\n optionRenderer={optionRenderer}\n items={\n onSearch\n ? items\n : searchValue\n ? items.filter((el) => el.text.search(new RegExp(searchValue, \"i\")) !== -1)\n : items\n }\n searchValue={searchValue}\n isOpen={isOpen}\n onClose={onClose}\n onItemClick={onItemClick}\n value={value}\n isLoading={isLoading}\n menuNoItemsMessage={menuNoItemsMessage}\n container={menuContainer}\n virtualized={virtualized}\n itemHeight={itemHeight}\n createOption={\n creatable && searchValue && !items.some((i) => i.text.toLowerCase() === String(searchValue).toLowerCase())\n ? {\n text: `Создать \"${searchValue}\"`,\n onCreate: (event: React.SyntheticEvent) => {\n onCreate?.(String(searchValue), event);\n setSearchValue(\"\");\n setIsOpen(false);\n },\n }\n : undefined\n }\n />\n </>\n );\n});\n\nexport default SelectField;\n"],"names":["SelectArrowIcon","props","jsx","Icon","ClearIcon","stopEvent","event","SelectField","forwardRef","ref","className","valueProp","defaultValue","onChange","disabled","readOnly","name","multiple","menuMaxHeight","menuMiddleware","menuNoItemsMessage","menuContainer","search","chips","isFocusedProp","error","items","label","variant","size","fullWidth","helperText","onSearch","resetSearch","isLoading","inline","endAdornment","hideSelectArrowIcon","optionRenderer","clearable","creatable","onCreate","virtualized","itemHeight","ariaLabel","id","rest","isOpen","setIsOpen","useState","valueState","setValueState","selectedItems","setSelectedItems","initialValue","item","i","searchValue","setSearchValue","isControlled","useRef","anchorElementRef","forkedAnchorRef","useForkRef","searchWrapperRef","searchInputRef","value","isFocused","useMemo","onMouseDown","_a","onClose","onFocus","onKeyDown","useEffect","useSafeLayoutEffect","updateValue","onItemClick","newValue","newSelectedItem","valueArray","itemIndex","el","onSearchInputChange","onDeleteChip","currentValue","newSelectedItems","onResetSelected","displayValues","classes","cn","key","text","Chip","jsxs","Fragment","TextFieldWrapper","DropdownMenu"],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import { jsx as i, jsxs as Q } from "react/jsx-runtime";
2
- import '../../../assets/styles/less/components/slider/slider.entry.css';/* empty css */
2
+ import '../../../assets/styles/less/components/slider/slider.entry.css';import '../../../assets/styles/less/tokens.entry.css';/* empty css */
3
+ /* empty css */
3
4
  import b from "react";
4
5
  import Z from "clsx";
5
6
  import { useForkRef as we } from "../../../hooks/useForkRef.js";
@@ -305,10 +306,10 @@ const Me = b.forwardRef(function(m, _) {
305
306
  }
306
307
  )
307
308
  ] }) });
308
- }), Fe = b.forwardRef(function(m, _) {
309
+ }), ze = b.forwardRef(function(m, _) {
309
310
  return m.range === !0 || Array.isArray(m.value) || Array.isArray(m.defaultValue) ? /* @__PURE__ */ i(Me, { ref: _, ...m }) : /* @__PURE__ */ i(Ne, { ref: _, ...m });
310
311
  });
311
312
  export {
312
- Fe as Slider
313
+ ze as Slider
313
314
  };
314
315
  //# sourceMappingURL=slider.js.map