urfu-ui-kit-react 2.1.2 → 2.1.4

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 (408) hide show
  1. package/README.md +4 -25
  2. package/dist/components/Accordion/Accordion.js +18 -0
  3. package/dist/components/BreadCrumbs/BreadCrumbs.d.ts +1 -1
  4. package/dist/components/BreadCrumbs/BreadCrumbs.d.ts.map +1 -1
  5. package/dist/components/BreadCrumbs/BreadCrumbs.js +32 -0
  6. package/dist/components/Button/Button.d.ts +1 -0
  7. package/dist/components/Button/Button.d.ts.map +1 -1
  8. package/dist/components/Button/Button.js +88 -0
  9. package/dist/components/Button/Button.types.d.ts +9 -3
  10. package/dist/components/Button/Button.types.d.ts.map +1 -1
  11. package/dist/components/Button/ButtonRefreshIcon.js +35 -0
  12. package/dist/components/Calendar/Calendar.d.ts +1 -5
  13. package/dist/components/Calendar/Calendar.d.ts.map +1 -1
  14. package/dist/components/Calendar/Calendar.js +355 -0
  15. package/dist/components/Calendar/CalendarSelect.js +149 -0
  16. package/dist/components/Calendar/MaskedDateInput.d.ts.map +1 -1
  17. package/dist/components/Calendar/MaskedDateInput.js +191 -0
  18. package/dist/components/Calendar/dateMask.d.ts +0 -1
  19. package/dist/components/Calendar/dateMask.d.ts.map +1 -1
  20. package/dist/components/Card/Card.d.ts +1 -1
  21. package/dist/components/Card/Card.d.ts.map +1 -1
  22. package/dist/components/Card/Card.js +75 -0
  23. package/dist/components/Checkbox/Checkbox.js +30 -0
  24. package/dist/components/ColumnSettings/ColumnSettings.js +216 -0
  25. package/dist/components/ConfirmModal/ConfirmModal.d.ts +1 -0
  26. package/dist/components/ConfirmModal/ConfirmModal.d.ts.map +1 -1
  27. package/dist/components/ConfirmModal/ConfirmModal.js +40 -0
  28. package/dist/components/ErrorScreen/ErrorScreen.d.ts +1 -1
  29. package/dist/components/ErrorScreen/ErrorScreen.d.ts.map +1 -1
  30. package/dist/components/ErrorScreen/ErrorScreen.js +221 -0
  31. package/dist/components/ErrorScreen/ErrorScreenIllustration.js +57 -0
  32. package/dist/components/FormField/FormField.d.ts +1 -1
  33. package/dist/components/FormField/FormField.d.ts.map +1 -1
  34. package/dist/components/FormField/FormField.js +40 -0
  35. package/dist/components/Icon/Icon.d.ts +1 -1
  36. package/dist/components/Icon/Icon.d.ts.map +1 -1
  37. package/dist/components/Icon/Icon.js +32 -0
  38. package/dist/components/Icon/Icon.types.d.ts +3 -1
  39. package/dist/components/Icon/Icon.types.d.ts.map +1 -1
  40. package/dist/components/InputExpandTextarea/InputExpandTextarea.d.ts +1 -1
  41. package/dist/components/InputExpandTextarea/InputExpandTextarea.d.ts.map +1 -1
  42. package/dist/components/InputExpandTextarea/InputExpandTextarea.js +144 -0
  43. package/dist/components/InputFile/InputFile.d.ts +1 -1
  44. package/dist/components/InputFile/InputFile.d.ts.map +1 -1
  45. package/dist/components/InputFile/InputFile.js +203 -0
  46. package/dist/components/InputFile/InputFile.types.d.ts +0 -6
  47. package/dist/components/InputFile/InputFile.types.d.ts.map +1 -1
  48. package/dist/components/InputNumber/InputNumber.d.ts +1 -1
  49. package/dist/components/InputNumber/InputNumber.d.ts.map +1 -1
  50. package/dist/components/InputNumber/InputNumber.js +220 -0
  51. package/dist/components/InputText/InputAffix.d.ts +1 -1
  52. package/dist/components/InputText/InputAffix.js +109 -0
  53. package/dist/components/InputText/InputText.d.ts +2 -1
  54. package/dist/components/InputText/InputText.d.ts.map +1 -1
  55. package/dist/components/InputText/InputText.js +137 -0
  56. package/dist/components/InputTime/InputTime.d.ts +1 -1
  57. package/dist/components/InputTime/InputTime.d.ts.map +1 -1
  58. package/dist/components/InputTime/InputTime.js +335 -0
  59. package/dist/components/InputTime/InputTimeDropdown.js +31 -0
  60. package/dist/components/InputTime/inputTimeKeyDown.js +63 -0
  61. package/dist/components/InputTime/useInputTimeWheel.js +45 -0
  62. package/dist/components/Menu/Menu.d.ts +1 -1
  63. package/dist/components/Menu/Menu.d.ts.map +1 -1
  64. package/dist/components/Menu/Menu.js +113 -0
  65. package/dist/components/Message/Message.js +29 -0
  66. package/dist/components/Modal/Modal.d.ts +1 -0
  67. package/dist/components/Modal/Modal.d.ts.map +1 -1
  68. package/dist/components/Modal/Modal.js +102 -0
  69. package/dist/components/Modal/editorFocus.js +15 -0
  70. package/dist/components/Modal/useModalFocus.js +112 -0
  71. package/dist/components/Modal/useModalTitleClearance.js +48 -0
  72. package/dist/components/Multiselect/Multiselect.d.ts +1 -0
  73. package/dist/components/Multiselect/Multiselect.d.ts.map +1 -1
  74. package/dist/components/Multiselect/Multiselect.js +408 -0
  75. package/dist/components/Notification/Notification.d.ts +1 -1
  76. package/dist/components/Notification/Notification.d.ts.map +1 -1
  77. package/dist/components/Notification/Notification.js +156 -0
  78. package/dist/components/OfflineBanner/OfflineBanner.d.ts +1 -1
  79. package/dist/components/OfflineBanner/OfflineBanner.d.ts.map +1 -1
  80. package/dist/components/OfflineBanner/OfflineBanner.js +40 -0
  81. package/dist/components/Pagination/Pagination.d.ts +1 -1
  82. package/dist/components/Pagination/Pagination.d.ts.map +1 -1
  83. package/dist/components/Pagination/Pagination.js +126 -0
  84. package/dist/components/Preloader/Preloader.d.ts.map +1 -1
  85. package/dist/components/Preloader/Preloader.js +60 -0
  86. package/dist/components/Radio/Radio.js +34 -0
  87. package/dist/components/Search/Search.d.ts +1 -1
  88. package/dist/components/Search/Search.d.ts.map +1 -1
  89. package/dist/components/Search/Search.js +47 -0
  90. package/dist/components/SearchSelect/SearchSelect.js +295 -0
  91. package/dist/components/SearchSelect/SearchSelectOption.js +41 -0
  92. package/dist/components/SearchSelect/useFlippedPlacement.js +25 -0
  93. package/dist/components/Select/MobileOptionSheet.d.ts +1 -1
  94. package/dist/components/Select/MobileOptionSheet.d.ts.map +1 -1
  95. package/dist/components/Select/MobileOptionSheet.js +116 -0
  96. package/dist/components/Select/Select.js +319 -0
  97. package/dist/components/Skeleton/Skeleton.js +38 -0
  98. package/dist/components/Skeleton/Skeleton.types.d.ts +4 -2
  99. package/dist/components/Skeleton/Skeleton.types.d.ts.map +1 -1
  100. package/dist/components/Status/Status.js +43 -0
  101. package/dist/components/StickyActionBar/StickyActionBar.d.ts +1 -1
  102. package/dist/components/StickyActionBar/StickyActionBar.d.ts.map +1 -1
  103. package/dist/components/StickyActionBar/StickyActionBar.js +73 -0
  104. package/dist/components/Switch/Switch.d.ts +1 -1
  105. package/dist/components/Switch/Switch.d.ts.map +1 -1
  106. package/dist/components/Switch/Switch.js +29 -0
  107. package/dist/components/Table/Filter/DefaultInput.d.ts.map +1 -1
  108. package/dist/components/Table/Filter/DefaultInput.js +22 -0
  109. package/dist/components/Table/Filter/Filter.js +233 -0
  110. package/dist/components/Table/Filter/Filter.types.d.ts +17 -13
  111. package/dist/components/Table/Filter/Filter.types.d.ts.map +1 -1
  112. package/dist/components/Table/Filter/FilterBooleanBox.d.ts +1 -0
  113. package/dist/components/Table/Filter/FilterBooleanBox.d.ts.map +1 -1
  114. package/dist/components/Table/Filter/FilterBooleanBox.js +40 -0
  115. package/dist/components/Table/Filter/FilterBoxShell.js +89 -0
  116. package/dist/components/Table/Filter/FilterConditionSelect.js +14 -0
  117. package/dist/components/Table/Filter/FilterDateBox.d.ts +1 -0
  118. package/dist/components/Table/Filter/FilterDateBox.d.ts.map +1 -1
  119. package/dist/components/Table/Filter/FilterDateBox.js +173 -0
  120. package/dist/components/Table/Filter/FilterPanel.js +25 -0
  121. package/dist/components/Table/Filter/FilterSortIndicator.js +24 -0
  122. package/dist/components/Table/Filter/FilterStringBox.js +115 -0
  123. package/dist/components/Table/Filter/Functions.d.ts +0 -6
  124. package/dist/components/Table/Filter/Functions.d.ts.map +1 -1
  125. package/dist/components/Table/Filter/Functions.js +76 -0
  126. package/dist/components/Table/Filter/SelectFilter.js +114 -0
  127. package/dist/components/Table/Filter/SelectOptions.js +21 -0
  128. package/dist/components/Table/Filter/TableFilterOptions.d.ts +1 -0
  129. package/dist/components/Table/Filter/TableFilterOptions.d.ts.map +1 -1
  130. package/dist/components/Table/Filter/TableFilterOptions.js +268 -0
  131. package/dist/components/Table/Filter/TableFilterSortButton.js +17 -0
  132. package/dist/components/Table/Filter/filterBoxHelpers.js +2 -0
  133. package/dist/components/Table/Filter/filterExpression.js +48 -0
  134. package/dist/components/Table/Filter/filterLoading.js +2 -0
  135. package/dist/components/Table/Filter/useFilterDates.js +33 -0
  136. package/dist/components/Table/Filter/useFilterOptionsPreload.js +22 -0
  137. package/dist/components/Table/Filter/useLocalFilterSearch.js +32 -0
  138. package/dist/components/Table/Filter/usePagedFilterOptions.js +71 -0
  139. package/dist/components/Table/Filter/useServerFilterOptions.js +35 -0
  140. package/dist/components/Table/Filter/useVirtualOptionWindow.js +80 -0
  141. package/dist/components/Table/Functions.js +54 -0
  142. package/dist/components/Table/Skeleton/TableSkeleton.js +28 -0
  143. package/dist/components/Table/Skeleton/createSkeletonColumns.js +9 -0
  144. package/dist/components/Table/Table.d.ts +1 -0
  145. package/dist/components/Table/Table.d.ts.map +1 -1
  146. package/dist/components/Table/Table.dataPipeline.d.ts.map +1 -1
  147. package/dist/components/Table/Table.dataPipeline.js +75 -0
  148. package/dist/components/Table/Table.helpers.d.ts +2 -2
  149. package/dist/components/Table/Table.helpers.d.ts.map +1 -1
  150. package/dist/components/Table/Table.helpers.js +72 -0
  151. package/dist/components/Table/Table.js +419 -0
  152. package/dist/components/Table/Table.types.d.ts +6 -2
  153. package/dist/components/Table/Table.types.d.ts.map +1 -1
  154. package/dist/components/Table/TableHead.d.ts.map +1 -1
  155. package/dist/components/Table/TableHead.js +189 -0
  156. package/dist/components/Table/TableMobileCard.js +215 -0
  157. package/dist/components/Table/TableMobileFilters.js +56 -0
  158. package/dist/components/Table/TableMobileView.js +316 -0
  159. package/dist/components/Table/TableRow.js +136 -0
  160. package/dist/components/Table/useColumnResize.d.ts +3 -2
  161. package/dist/components/Table/useColumnResize.d.ts.map +1 -1
  162. package/dist/components/Table/useColumnResize.js +44 -0
  163. package/dist/components/Table/useDelayedSkeleton.d.ts +0 -2
  164. package/dist/components/Table/useDelayedSkeleton.d.ts.map +1 -1
  165. package/dist/components/Table/useDelayedSkeleton.js +32 -0
  166. package/dist/components/Table/useMobileFilterColumns.d.ts +1 -1
  167. package/dist/components/Table/useMobileFilterColumns.d.ts.map +1 -1
  168. package/dist/components/Table/useMobileFilterColumns.js +52 -0
  169. package/dist/components/Table/useStableColumnWidths.js +22 -0
  170. package/dist/components/Table/useTableColumnPinning.d.ts +2 -57
  171. package/dist/components/Table/useTableColumnPinning.d.ts.map +1 -1
  172. package/dist/components/Table/useTableColumnPinning.js +52 -0
  173. package/dist/components/Table/useTableFilters.js +39 -0
  174. package/dist/components/Table/useTableSortState.js +38 -0
  175. package/dist/components/Table/useTableVirtualization.js +145 -0
  176. package/dist/components/Tabs/Tabs.d.ts +1 -0
  177. package/dist/components/Tabs/Tabs.d.ts.map +1 -1
  178. package/dist/components/Tabs/Tabs.js +135 -0
  179. package/dist/components/Tabs/useTabsOverflow.js +49 -0
  180. package/dist/components/Textarea/Textarea.js +102 -0
  181. package/dist/components/Tooltip/Tooltip.d.ts +1 -0
  182. package/dist/components/Tooltip/Tooltip.d.ts.map +1 -1
  183. package/dist/components/Tooltip/Tooltip.js +218 -0
  184. package/dist/components/TreeView/TreeView.d.ts +1 -0
  185. package/dist/components/TreeView/TreeView.d.ts.map +1 -1
  186. package/dist/components/TreeView/TreeView.js +323 -0
  187. package/dist/components/TreeView/TreeView.types.d.ts +0 -4
  188. package/dist/components/TreeView/TreeView.types.d.ts.map +1 -1
  189. package/dist/dev/index.js +336 -336
  190. package/dist/dev/types/vanilla/src/dev/shown.d.ts +0 -2
  191. package/dist/dev/types/vanilla/src/dev/store.d.ts +0 -4
  192. package/dist/fonts/icons/urfu-ui-icon-font.eot +0 -0
  193. package/dist/fonts/icons/urfu-ui-icon-font.svg +3 -0
  194. package/dist/fonts/icons/urfu-ui-icon-font.ttf +0 -0
  195. package/dist/fonts/icons/urfu-ui-icon-font.woff +0 -0
  196. package/dist/fonts/icons/urfu-ui-icon-font.woff2 +0 -0
  197. package/dist/hooks/useActiveOptionScroll.js +20 -0
  198. package/dist/hooks/useAnchoredPosition.d.ts +12 -0
  199. package/dist/hooks/useAnchoredPosition.d.ts.map +1 -1
  200. package/dist/hooks/useAnchoredPosition.js +37 -0
  201. package/dist/hooks/useAutoId.d.ts +0 -1
  202. package/dist/hooks/useAutoId.d.ts.map +1 -1
  203. package/dist/hooks/useAutoId.js +7 -0
  204. package/dist/hooks/useAutoPortal.js +11 -0
  205. package/dist/hooks/useDebounce.js +11 -0
  206. package/dist/hooks/useDismiss.d.ts +1 -1
  207. package/dist/hooks/useDismiss.d.ts.map +1 -1
  208. package/dist/hooks/useDismiss.js +20 -0
  209. package/dist/hooks/useInputOverflow.d.ts +9 -0
  210. package/dist/hooks/useInputOverflow.d.ts.map +1 -0
  211. package/dist/hooks/useInputOverflow.js +16 -0
  212. package/dist/hooks/useMediaQuery.js +21 -0
  213. package/dist/hooks/useMobilePicker.js +7 -0
  214. package/dist/hooks/useMountTransition.d.ts +1 -1
  215. package/dist/hooks/useMountTransition.d.ts.map +1 -1
  216. package/dist/hooks/useMountTransition.js +21 -0
  217. package/dist/hooks/useOnlineStatus.js +11 -0
  218. package/dist/hooks/useOptionKeyboardNavigation.js +63 -0
  219. package/dist/hooks/usePagination.js +31 -0
  220. package/dist/hooks/useSelectEngine.d.ts +3 -3
  221. package/dist/hooks/useSelectEngine.d.ts.map +1 -1
  222. package/dist/hooks/useSelectEngine.js +96 -0
  223. package/dist/hooks/useTableSort.js +13 -0
  224. package/dist/index.d.ts +16 -0
  225. package/dist/index.d.ts.map +1 -1
  226. package/dist/responsive/uiKitResponsive.js +44 -0
  227. package/dist/shared/fieldAccessibility.js +8 -0
  228. package/dist/shared/iconNames.d.ts +5 -0
  229. package/dist/shared/iconNames.d.ts.map +1 -0
  230. package/dist/shared/inputOverflow.d.ts +10 -0
  231. package/dist/shared/inputOverflow.d.ts.map +1 -0
  232. package/dist/shared/kitCopy.js +9 -0
  233. package/dist/shared/optionStateColors.js +5 -0
  234. package/dist/shared/optionValue.d.ts +1 -1
  235. package/dist/shared/optionValue.d.ts.map +1 -1
  236. package/dist/shared/optionValue.js +11 -0
  237. package/dist/shared/popupTransition.js +11 -0
  238. package/dist/shared/size.d.ts +0 -1
  239. package/dist/shared/size.d.ts.map +1 -1
  240. package/dist/shared/size.js +4 -0
  241. package/dist/shared/sortRows.js +24 -0
  242. package/dist/shared/uiKitDefaults.js +25 -0
  243. package/dist/style-no-fonts.css +1 -1
  244. package/dist/style.css +1 -1
  245. package/dist/style.layer.css +9 -9
  246. package/dist/style.shell.css +15 -11
  247. package/dist/urfu-ui-kit-react.js +57 -17502
  248. package/dist/vanilla/core/BoundedOptionPageCache.js +41 -0
  249. package/dist/vanilla/core/dateMask.js +28 -0
  250. package/dist/vanilla/core/describeError.js +243 -0
  251. package/dist/vanilla/core/devLauncherOffset.js +20 -0
  252. package/dist/vanilla/core/distributeTabs.js +25 -0
  253. package/dist/vanilla/core/hasPreviousPage.js +6 -0
  254. package/dist/vanilla/core/inputMode.js +17 -0
  255. package/dist/vanilla/core/inputOverflow.js +34 -0
  256. package/dist/vanilla/core/kitRegistry.js +160 -0
  257. package/dist/vanilla/core/reconcileColumnOrder.js +5 -0
  258. package/dist/vanilla/core/sheetTitle.js +11 -0
  259. package/dist/vanilla/core/validation.js +21 -0
  260. package/dist/vendor/@floating-ui/core/dist/floating-ui.core.js +323 -0
  261. package/dist/vendor/@floating-ui/dom/dist/floating-ui.dom.js +383 -0
  262. package/dist/vendor/@floating-ui/react/dist/floating-ui.react.js +255 -0
  263. package/dist/vendor/@floating-ui/react-dom/dist/floating-ui.react-dom.js +183 -0
  264. package/dist/vendor/@floating-ui/utils/dist/floating-ui.utils.dom.js +110 -0
  265. package/dist/vendor/@floating-ui/utils/dist/floating-ui.utils.js +106 -0
  266. package/dist/vendor/clsx/dist/clsx.js +14 -0
  267. package/dist/vendor/date-fns/_lib/addLeadingZeros.js +5 -0
  268. package/dist/vendor/date-fns/_lib/defaultOptions.js +5 -0
  269. package/dist/vendor/date-fns/_lib/format/formatters.js +547 -0
  270. package/dist/vendor/date-fns/_lib/format/lightFormatters.js +56 -0
  271. package/dist/vendor/date-fns/_lib/format/longFormatters.js +47 -0
  272. package/dist/vendor/date-fns/_lib/getTimezoneOffsetInMilliseconds.js +16 -0
  273. package/dist/vendor/date-fns/_lib/protectedTokens.js +16 -0
  274. package/dist/vendor/date-fns/addDays.js +7 -0
  275. package/dist/vendor/date-fns/addHours.js +6 -0
  276. package/dist/vendor/date-fns/addMilliseconds.js +7 -0
  277. package/dist/vendor/date-fns/addMinutes.js +6 -0
  278. package/dist/vendor/date-fns/addMonths.js +17 -0
  279. package/dist/vendor/date-fns/addQuarters.js +6 -0
  280. package/dist/vendor/date-fns/addSeconds.js +5 -0
  281. package/dist/vendor/date-fns/addWeeks.js +6 -0
  282. package/dist/vendor/date-fns/addYears.js +5 -0
  283. package/dist/vendor/date-fns/constants.js +2 -0
  284. package/dist/vendor/date-fns/constructFrom.js +4 -0
  285. package/dist/vendor/date-fns/differenceInCalendarDays.js +8 -0
  286. package/dist/vendor/date-fns/differenceInCalendarMonths.js +6 -0
  287. package/dist/vendor/date-fns/differenceInCalendarQuarters.js +7 -0
  288. package/dist/vendor/date-fns/differenceInCalendarYears.js +6 -0
  289. package/dist/vendor/date-fns/differenceInDays.js +13 -0
  290. package/dist/vendor/date-fns/endOfDay.js +6 -0
  291. package/dist/vendor/date-fns/endOfMonth.js +6 -0
  292. package/dist/vendor/date-fns/endOfWeek.js +8 -0
  293. package/dist/vendor/date-fns/endOfYear.js +6 -0
  294. package/dist/vendor/date-fns/format.js +53 -0
  295. package/dist/vendor/date-fns/getDate.js +5 -0
  296. package/dist/vendor/date-fns/getDay.js +5 -0
  297. package/dist/vendor/date-fns/getDayOfYear.js +8 -0
  298. package/dist/vendor/date-fns/getDaysInMonth.js +7 -0
  299. package/dist/vendor/date-fns/getDefaultOptions.js +5 -0
  300. package/dist/vendor/date-fns/getHours.js +5 -0
  301. package/dist/vendor/date-fns/getISODay.js +6 -0
  302. package/dist/vendor/date-fns/getISOWeek.js +9 -0
  303. package/dist/vendor/date-fns/getISOWeekYear.js +12 -0
  304. package/dist/vendor/date-fns/getMinutes.js +5 -0
  305. package/dist/vendor/date-fns/getMonth.js +5 -0
  306. package/dist/vendor/date-fns/getQuarter.js +6 -0
  307. package/dist/vendor/date-fns/getSeconds.js +5 -0
  308. package/dist/vendor/date-fns/getTime.js +5 -0
  309. package/dist/vendor/date-fns/getWeek.js +9 -0
  310. package/dist/vendor/date-fns/getWeekYear.js +14 -0
  311. package/dist/vendor/date-fns/getYear.js +5 -0
  312. package/dist/vendor/date-fns/isAfter.js +6 -0
  313. package/dist/vendor/date-fns/isBefore.js +6 -0
  314. package/dist/vendor/date-fns/isDate.js +4 -0
  315. package/dist/vendor/date-fns/isEqual.js +6 -0
  316. package/dist/vendor/date-fns/isSameDay.js +6 -0
  317. package/dist/vendor/date-fns/isSameMonth.js +6 -0
  318. package/dist/vendor/date-fns/isSameQuarter.js +6 -0
  319. package/dist/vendor/date-fns/isSameWeek.js +6 -0
  320. package/dist/vendor/date-fns/isSameYear.js +6 -0
  321. package/dist/vendor/date-fns/isValid.js +9 -0
  322. package/dist/vendor/date-fns/isWithinInterval.js +9 -0
  323. package/dist/vendor/date-fns/locale/_lib/buildFormatLongFn.js +7 -0
  324. package/dist/vendor/date-fns/locale/_lib/buildLocalizeFn.js +16 -0
  325. package/dist/vendor/date-fns/locale/_lib/buildMatchFn.js +29 -0
  326. package/dist/vendor/date-fns/locale/_lib/buildMatchPatternFn.js +13 -0
  327. package/dist/vendor/date-fns/locale/en-US/_lib/formatDistance.js +68 -0
  328. package/dist/vendor/date-fns/locale/en-US/_lib/formatLong.js +31 -0
  329. package/dist/vendor/date-fns/locale/en-US/_lib/formatRelative.js +9 -0
  330. package/dist/vendor/date-fns/locale/en-US/_lib/localize.js +153 -0
  331. package/dist/vendor/date-fns/locale/en-US/_lib/match.js +108 -0
  332. package/dist/vendor/date-fns/locale/en-US.js +18 -0
  333. package/dist/vendor/date-fns/locale/ru/_lib/formatDistance.js +182 -0
  334. package/dist/vendor/date-fns/locale/ru/_lib/formatLong.js +28 -0
  335. package/dist/vendor/date-fns/locale/ru/_lib/formatRelative.js +62 -0
  336. package/dist/vendor/date-fns/locale/ru/_lib/localize.js +177 -0
  337. package/dist/vendor/date-fns/locale/ru/_lib/match.js +109 -0
  338. package/dist/vendor/date-fns/locale/ru.js +18 -0
  339. package/dist/vendor/date-fns/max.js +9 -0
  340. package/dist/vendor/date-fns/min.js +9 -0
  341. package/dist/vendor/date-fns/parse/_lib/Parser.js +20 -0
  342. package/dist/vendor/date-fns/parse/_lib/Setter.js +36 -0
  343. package/dist/vendor/date-fns/parse/_lib/constants.js +46 -0
  344. package/dist/vendor/date-fns/parse/_lib/parsers/AMPMMidnightParser.js +46 -0
  345. package/dist/vendor/date-fns/parse/_lib/parsers/AMPMParser.js +46 -0
  346. package/dist/vendor/date-fns/parse/_lib/parsers/DateParser.js +59 -0
  347. package/dist/vendor/date-fns/parse/_lib/parsers/DayOfYearParser.js +49 -0
  348. package/dist/vendor/date-fns/parse/_lib/parsers/DayParser.js +45 -0
  349. package/dist/vendor/date-fns/parse/_lib/parsers/DayPeriodParser.js +46 -0
  350. package/dist/vendor/date-fns/parse/_lib/parsers/EraParser.js +29 -0
  351. package/dist/vendor/date-fns/parse/_lib/parsers/ExtendedYearParser.js +19 -0
  352. package/dist/vendor/date-fns/parse/_lib/parsers/FractionOfSecondParser.js +20 -0
  353. package/dist/vendor/date-fns/parse/_lib/parsers/Hour0To11Parser.js +30 -0
  354. package/dist/vendor/date-fns/parse/_lib/parsers/Hour0to23Parser.js +30 -0
  355. package/dist/vendor/date-fns/parse/_lib/parsers/Hour1To24Parser.js +31 -0
  356. package/dist/vendor/date-fns/parse/_lib/parsers/Hour1to12Parser.js +31 -0
  357. package/dist/vendor/date-fns/parse/_lib/parsers/ISODayParser.js +101 -0
  358. package/dist/vendor/date-fns/parse/_lib/parsers/ISOTimezoneParser.js +45 -0
  359. package/dist/vendor/date-fns/parse/_lib/parsers/ISOTimezoneWithZParser.js +45 -0
  360. package/dist/vendor/date-fns/parse/_lib/parsers/ISOWeekParser.js +47 -0
  361. package/dist/vendor/date-fns/parse/_lib/parsers/ISOWeekYearParser.js +38 -0
  362. package/dist/vendor/date-fns/parse/_lib/parsers/LocalDayParser.js +76 -0
  363. package/dist/vendor/date-fns/parse/_lib/parsers/LocalWeekParser.js +46 -0
  364. package/dist/vendor/date-fns/parse/_lib/parsers/LocalWeekYearParser.js +67 -0
  365. package/dist/vendor/date-fns/parse/_lib/parsers/MinuteParser.js +30 -0
  366. package/dist/vendor/date-fns/parse/_lib/parsers/MonthParser.js +73 -0
  367. package/dist/vendor/date-fns/parse/_lib/parsers/QuarterParser.js +71 -0
  368. package/dist/vendor/date-fns/parse/_lib/parsers/SecondParser.js +30 -0
  369. package/dist/vendor/date-fns/parse/_lib/parsers/StandAloneLocalDayParser.js +76 -0
  370. package/dist/vendor/date-fns/parse/_lib/parsers/StandAloneMonthParser.js +73 -0
  371. package/dist/vendor/date-fns/parse/_lib/parsers/StandAloneQuarterParser.js +71 -0
  372. package/dist/vendor/date-fns/parse/_lib/parsers/TimestampMillisecondsParser.js +20 -0
  373. package/dist/vendor/date-fns/parse/_lib/parsers/TimestampSecondsParser.js +20 -0
  374. package/dist/vendor/date-fns/parse/_lib/parsers/YearParser.js +47 -0
  375. package/dist/vendor/date-fns/parse/_lib/parsers.js +65 -0
  376. package/dist/vendor/date-fns/parse/_lib/utils.js +90 -0
  377. package/dist/vendor/date-fns/parse.js +85 -0
  378. package/dist/vendor/date-fns/parseISO.js +119 -0
  379. package/dist/vendor/date-fns/set.js +8 -0
  380. package/dist/vendor/date-fns/setDay.js +9 -0
  381. package/dist/vendor/date-fns/setHours.js +6 -0
  382. package/dist/vendor/date-fns/setISODay.js +8 -0
  383. package/dist/vendor/date-fns/setISOWeek.js +7 -0
  384. package/dist/vendor/date-fns/setMinutes.js +6 -0
  385. package/dist/vendor/date-fns/setMonth.js +10 -0
  386. package/dist/vendor/date-fns/setQuarter.js +7 -0
  387. package/dist/vendor/date-fns/setSeconds.js +6 -0
  388. package/dist/vendor/date-fns/setWeek.js +7 -0
  389. package/dist/vendor/date-fns/setYear.js +7 -0
  390. package/dist/vendor/date-fns/startOfDay.js +6 -0
  391. package/dist/vendor/date-fns/startOfISOWeek.js +5 -0
  392. package/dist/vendor/date-fns/startOfISOWeekYear.js +8 -0
  393. package/dist/vendor/date-fns/startOfMonth.js +6 -0
  394. package/dist/vendor/date-fns/startOfQuarter.js +6 -0
  395. package/dist/vendor/date-fns/startOfWeek.js +8 -0
  396. package/dist/vendor/date-fns/startOfWeekYear.js +10 -0
  397. package/dist/vendor/date-fns/startOfYear.js +7 -0
  398. package/dist/vendor/date-fns/subDays.js +5 -0
  399. package/dist/vendor/date-fns/subMonths.js +5 -0
  400. package/dist/vendor/date-fns/subQuarters.js +5 -0
  401. package/dist/vendor/date-fns/subWeeks.js +5 -0
  402. package/dist/vendor/date-fns/subYears.js +5 -0
  403. package/dist/vendor/date-fns/toDate.js +5 -0
  404. package/dist/vendor/date-fns/transpose.js +15 -0
  405. package/dist/vendor/react-datepicker/dist/es/index.js +2696 -0
  406. package/package.json +37 -35
  407. package/dist/hooks/useOutsideAlerter.d.ts +0 -3
  408. package/dist/hooks/useOutsideAlerter.d.ts.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"MobileOptionSheet.d.ts","sourceRoot":"","sources":["../../../src/components/Select/MobileOptionSheet.tsx"],"names":[],"mappings":"AAQA,OAAO,0BAA0B,CAAC;AA4BlC,KAAK,WAAW,GAAG;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAC/B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,KAAK,sBAAsB,CAAC,CAAC,SAAS,WAAW,IAAI;IACjD,MAAM,EAAE,OAAO,CAAC;IAChB,4DAA4D;IAC5D,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,CAAC,EAAE,CAAC;IACb,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,OAAO,CAAC;IACnC,qGAAqG;IACrG,QAAQ,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,IAAI,CAAC;IAC9B,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,+EAA+E;IAC/E,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,6FAA6F;IAC7F,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,OAAO,CAAC,EAAE,OAAO,CAAC;CACrB,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,SAAS,WAAW,EAAE,EACrD,MAAM,EACN,KAAK,EACL,OAAO,EACP,QAAgB,EAChB,UAAU,EACV,QAAQ,EACR,OAAO,EACP,UAAkB,EAClB,cAAc,EACd,OAAe,GAClB,EAAE,sBAAsB,CAAC,CAAC,CAAC,2CAgH3B"}
1
+ {"version":3,"file":"MobileOptionSheet.d.ts","sourceRoot":"","sources":["../../../src/components/Select/MobileOptionSheet.tsx"],"names":[],"mappings":"AAQA,OAAO,kEAAkE,CAAC;AA4B1E,KAAK,WAAW,GAAG;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAC/B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,KAAK,sBAAsB,CAAC,CAAC,SAAS,WAAW,IAAI;IACjD,MAAM,EAAE,OAAO,CAAC;IAChB,4DAA4D;IAC5D,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,CAAC,EAAE,CAAC;IACb,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,OAAO,CAAC;IACnC,qGAAqG;IACrG,QAAQ,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,IAAI,CAAC;IAC9B,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,+EAA+E;IAC/E,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,6FAA6F;IAC7F,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,OAAO,CAAC,EAAE,OAAO,CAAC;CACrB,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,SAAS,WAAW,EAAE,EACrD,MAAM,EACN,KAAK,EACL,OAAO,EACP,QAAgB,EAChB,UAAU,EACV,QAAQ,EACR,OAAO,EACP,UAAkB,EAClB,cAAc,EACd,OAAe,GAClB,EAAE,sBAAsB,CAAC,CAAC,CAAC,2CAgH3B"}
@@ -0,0 +1,116 @@
1
+ import { jsxs as _, jsx as t, Fragment as I } from "react/jsx-runtime";
2
+ import { useState as x, useEffect as D, useMemo as O } from "react";
3
+ import { useAutoId$u as f } from "../../hooks/useAutoId.js";
4
+ import { getOptionKeys$u as B } from "../../shared/optionValue.js";
5
+ import { Button$u as C } from "../Button/Button.js";
6
+ import { Checkbox$u as E } from "../Checkbox/Checkbox.js";
7
+ import { Icon$u as g } from "../Icon/Icon.js";
8
+ import { Modal$u as K } from "../Modal/Modal.js";
9
+ import { Search$u as M } from "../Search/Search.js";
10
+ /* empty css */
11
+ const S = 8, T = /* @__PURE__ */ new Set(["ArrowDown", "ArrowRight"]), W = /* @__PURE__ */ new Set(["ArrowUp", "ArrowLeft"]), j = (o, m) => {
12
+ var c;
13
+ if (o.key === "Enter") {
14
+ o.preventDefault(), m();
15
+ return;
16
+ }
17
+ const r = T.has(o.key);
18
+ if (!r && !W.has(o.key)) return;
19
+ o.preventDefault();
20
+ const s = o.currentTarget.closest('[role="radiogroup"]'), l = [...(s == null ? void 0 : s.querySelectorAll('input[type="radio"]')) ?? []], a = l.indexOf(o.currentTarget);
21
+ (c = l[(a + (r ? 1 : -1) + l.length) % l.length]) == null || c.focus();
22
+ };
23
+ function X({
24
+ active: o,
25
+ title: m,
26
+ options: r,
27
+ multiple: s = !1,
28
+ isSelected: l,
29
+ onSelect: a,
30
+ onClose: c,
31
+ searchable: k = !1,
32
+ onSearchChange: i,
33
+ loading: A = !1
34
+ }) {
35
+ const p = f(void 0, "u-option-sheet-title"), R = f(void 0, "u-option-sheet"), b = f(void 0, "u-option-sheet-search"), [n, y] = x(""), v = k || r.length > S;
36
+ D(() => {
37
+ o && y("");
38
+ }, [o]);
39
+ const u = O(() => {
40
+ const e = n.trim().toLowerCase();
41
+ return e ? r.filter((d) => (d.label ?? "").toLowerCase().includes(e)) : r;
42
+ }, [r, n]), N = O(() => B(u), [u]), L = (e) => {
43
+ y(e.target.value), i == null || i(e.target.value);
44
+ }, w = () => {
45
+ n && (i == null || i("")), c();
46
+ };
47
+ return /* @__PURE__ */ _(
48
+ K,
49
+ {
50
+ active: o,
51
+ onCancel: w,
52
+ ariaLabelledBy: p,
53
+ className: "u-react-option-sheet",
54
+ mobileSheet: !0,
55
+ initialFocus: "dialog",
56
+ closeOnEscape: !0,
57
+ closeButtonInside: !0,
58
+ lockScroll: !0,
59
+ unmountOnClose: !0,
60
+ children: [
61
+ /* @__PURE__ */ t("h2", { id: p, className: "u-react-option-sheet__title", children: m }),
62
+ v ? /* @__PURE__ */ _(I, { children: [
63
+ /* @__PURE__ */ t("label", { className: "u-react-option-sheet__sr-only", htmlFor: b, children: "Поиск по вариантам" }),
64
+ /* @__PURE__ */ t(
65
+ M,
66
+ {
67
+ id: b,
68
+ className: "u-react-option-sheet__search",
69
+ placeholder: "Поиск",
70
+ value: n,
71
+ onChange: L
72
+ }
73
+ )
74
+ ] }) : null,
75
+ /* @__PURE__ */ t(
76
+ "div",
77
+ {
78
+ className: "u-react-option-sheet__list",
79
+ role: s ? "group" : "radiogroup",
80
+ "aria-labelledby": p,
81
+ children: A ? /* @__PURE__ */ t("div", { className: "u-react-option-sheet__empty", children: "Загрузка…" }) : u.length === 0 ? /* @__PURE__ */ t("div", { className: "u-react-option-sheet__empty", children: "Ничего не найдено" }) : u.map((e, d) => {
82
+ const h = l(e);
83
+ return s ? /* @__PURE__ */ t("div", { className: "u-react-option-sheet__option", children: /* @__PURE__ */ t(E, { checked: h, onChange: () => a(e), children: e.label }) }, N[d]) : /* @__PURE__ */ _(
84
+ "label",
85
+ {
86
+ className: `u-react-option-sheet__option u-react-option-sheet__option--single${h ? " is-selected" : ""}`,
87
+ children: [
88
+ /* @__PURE__ */ t(
89
+ "input",
90
+ {
91
+ className: "u-react-option-sheet__sr-only",
92
+ type: "radio",
93
+ name: R,
94
+ checked: h,
95
+ onChange: () => {
96
+ },
97
+ onClick: () => a(e),
98
+ onKeyDown: (F) => j(F, () => a(e))
99
+ }
100
+ ),
101
+ /* @__PURE__ */ t("span", { className: "u-react-option-sheet__label", children: e.label }),
102
+ e.icon ? /* @__PURE__ */ t("span", { role: e.iconLabel ? "img" : void 0, "aria-label": e.iconLabel, "aria-hidden": e.iconLabel ? void 0 : !0, children: /* @__PURE__ */ t(g, { name: e.icon, size: 16 }) }) : null,
103
+ h ? /* @__PURE__ */ t("span", { className: "u-react-option-sheet__check", "aria-hidden": !0, children: /* @__PURE__ */ t(g, { name: "check", size: 20 }) }) : null
104
+ ]
105
+ },
106
+ N[d]
107
+ );
108
+ })
109
+ }
110
+ ),
111
+ s ? /* @__PURE__ */ t("div", { className: "u-react-option-sheet__footer", children: /* @__PURE__ */ t(C, { type: "button", onClick: w, children: "Готово" }) }) : null
112
+ ]
113
+ }
114
+ );
115
+ }
116
+ export { X as MobileOptionSheet$u };
@@ -0,0 +1,319 @@
1
+ import { jsxs as u, jsx as o, Fragment as Ne } from "react/jsx-runtime";
2
+ import { getFieldAccessibility$u as we } from "../../shared/fieldAccessibility.js";
3
+ import { useRef as $e, useMemo as je, useState as F, useEffect as Pe } from "react";
4
+ /* empty css */
5
+ /* empty css */
6
+ /* empty css */
7
+ /* empty css */
8
+ import { createPortal as ze } from "react-dom";
9
+ import { useSelectEngine$u as Te } from "../../hooks/useSelectEngine.js";
10
+ import { OPTION_STATE_COLORS$u as G } from "../../shared/optionStateColors.js";
11
+ import { isSameOptionValue$u as k, getOptionKeys$u as Re } from "../../shared/optionValue.js";
12
+ import { getPopupTransitionStyle$u as _ } from "../../shared/popupTransition.js";
13
+ import { sizeClassName$u as De, isCompact$u as Ee } from "../../shared/size.js";
14
+ import { Icon$u as He } from "../Icon/Icon.js";
15
+ import { useMobilePicker$u as Ce } from "../../hooks/useMobilePicker.js";
16
+ import { MobileOptionSheet$u as Ae } from "./MobileOptionSheet.js";
17
+ import { getPortalScopeProps$u as Ke } from "../../shared/uiKitDefaults.js";
18
+ import { resolveValidation$u as Le } from "../../vanilla/core/validation.js";
19
+ import { resolveSheetTitle$u as Me } from "../../vanilla/core/sheetTitle.js";
20
+ const it = ({
21
+ "aria-label": N,
22
+ "aria-labelledby": w,
23
+ "aria-describedby": Y,
24
+ title: p = "",
25
+ required: $ = !1,
26
+ options: s,
27
+ styleSelectContainer: q,
28
+ styleTitle: J,
29
+ styleSelect: j,
30
+ lineUp: y = !1,
31
+ rowGap: Q = 4,
32
+ columnGap: X = 20,
33
+ placeholder: P = "Не выбрано",
34
+ value: t,
35
+ isClearable: z,
36
+ onChange: m,
37
+ className: Z,
38
+ tableView: h = !1,
39
+ size: T,
40
+ validationText: V = "Заполните поле",
41
+ validationOn: U,
42
+ error: ee,
43
+ absoluteValidationText: te,
44
+ disabled: n,
45
+ portalOn: oe,
46
+ noScroll: v,
47
+ variant: ce = "field",
48
+ id: re,
49
+ mobilePicker: se
50
+ }) => {
51
+ const d = Ee(T, h), R = De(T, h), b = ce === "button", f = Le({ error: ee, validationOn: U, validationText: V }), S = s.findIndex((e) => k(e == null ? void 0 : e.value, t == null ? void 0 : t.value)), i = Te({
52
+ optionsLength: s.length,
53
+ initialIndex: S >= 0 ? S : 0,
54
+ selectedIndex: S,
55
+ disabled: n,
56
+ portalOn: oe,
57
+ id: re,
58
+ idPrefix: "u-select",
59
+ // Список встаёт под полем: прежняя постоянная в 90 была подогнана под
60
+ // компактное поле в 30 пикселей и на обычном поле накрывала его край.
61
+ getPortalPosition: (e) => ({ x: e.x, y: e.y + 60 + e.height + e.scrollY }),
62
+ onSelectByIndex: (e) => {
63
+ var g;
64
+ const c = s[e];
65
+ c && (m(c), (g = O.current) == null || g.close());
66
+ }
67
+ }), O = $e(i);
68
+ O.current = i;
69
+ const {
70
+ isOpen: I,
71
+ blockRef: D,
72
+ portalOptionsRef: ie,
73
+ optionsListRef: le,
74
+ listboxId: l,
75
+ activeDescendantId: ae,
76
+ activeIndex: ne,
77
+ hoveredIndex: de,
78
+ setHoveredIndex: E,
79
+ handleKeyDown: ue,
80
+ shouldRenderPortal: pe,
81
+ portalStatus: me,
82
+ shouldRenderLocal: he,
83
+ localStatus: be,
84
+ isAnimated: H,
85
+ portalWidth: fe,
86
+ usePortal: xe
87
+ } = i, a = i.portalPosition, ge = we(l, p, $, f, {
88
+ "aria-label": N,
89
+ "aria-labelledby": w,
90
+ "aria-describedby": Y
91
+ }), C = i.close, A = (e) => typeof e == "number" ? `calc(${e} * var(--u-preset-unit, 1px))` : String(e), ye = je(() => Re(s), [s]), r = Ce(se) && !b, [K, x] = F(!1), [ve, Se] = F("");
92
+ Pe(() => {
93
+ var e;
94
+ r ? (e = O.current) == null || e.close() : x(!1);
95
+ }, [r]);
96
+ const L = () => {
97
+ n || (Se(Me(D.current, { title: p, ariaLabel: N, ariaLabelledBy: w, placeholder: P })), x(!0));
98
+ }, Oe = (e) => {
99
+ e.key !== "Enter" && e.key !== " " && e.key !== "ArrowDown" || (e.preventDefault(), L());
100
+ }, M = (e) => e.icon ? /* @__PURE__ */ u("span", { className: "u-react-select-option-content", children: [
101
+ /* @__PURE__ */ o("span", { className: "u-react-select-option-label", children: e.label }),
102
+ /* @__PURE__ */ o("span", { role: e.iconLabel ? "img" : void 0, "aria-label": e.iconLabel, "aria-hidden": e.iconLabel ? void 0 : !0, children: /* @__PURE__ */ o(He, { name: e.icon, size: 16 }) })
103
+ ] }) : e.label, B = (e, c, g) => {
104
+ const W = k(t == null ? void 0 : t.value, e == null ? void 0 : e.value), Ie = de === c || ne === c;
105
+ return /* @__PURE__ */ o(
106
+ "div",
107
+ {
108
+ className: "u-selectbox-option",
109
+ "data-option-index": c,
110
+ id: `${l}-option-${c}`,
111
+ role: "option",
112
+ "aria-selected": W,
113
+ onClick: (ke) => {
114
+ ke.stopPropagation(), m(e), C();
115
+ },
116
+ style: Object.assign(
117
+ {
118
+ wordBreak: "break-word"
119
+ },
120
+ d ? {
121
+ minHeight: "var(--u-compact-height)",
122
+ fontSize: "var(--u-compact-font-size)",
123
+ lineHeight: 1,
124
+ padding: "var(--u-compact-padding)"
125
+ } : null,
126
+ W ? { backgroundColor: G.selectedBackground } : Ie ? { backgroundColor: G.hoveredBackground } : null,
127
+ g && v ? {
128
+ maxHeight: "none"
129
+ } : null,
130
+ j
131
+ ),
132
+ onMouseEnter: () => E(c),
133
+ onMouseLeave: () => E(null),
134
+ children: M(e)
135
+ },
136
+ ye[c]
137
+ );
138
+ };
139
+ return /* @__PURE__ */ u("div", { className: `u-react-select-container${h && d ? " u-react-select-container--table" : ""}${R ? ` ${R}` : ""} ${Z ?? ""}`, style: { position: "relative" }, children: [
140
+ /* @__PURE__ */ u(
141
+ "div",
142
+ {
143
+ style: Object.assign(
144
+ {
145
+ display: "flex",
146
+ flexDirection: y ? "row" : "column",
147
+ rowGap: y ? null : A(Q),
148
+ columnGap: y ? A(X) : null
149
+ },
150
+ q
151
+ ),
152
+ children: [
153
+ p && /* @__PURE__ */ o(
154
+ "div",
155
+ {
156
+ id: `${l}-label`,
157
+ className: `${$ ? "u-required" : ""} u-react-select-title`,
158
+ style: Object.assign(
159
+ {
160
+ color: "var(--u-field-title-color, #545454)",
161
+ fontSize: "var(--u-field-label-size-main, calc(14 * var(--u-unit, 1px)))"
162
+ },
163
+ J
164
+ ),
165
+ children: p
166
+ }
167
+ ),
168
+ /* @__PURE__ */ u(
169
+ "div",
170
+ {
171
+ className: `u-selectbox${n ? " u-selectbox-disabled" : ""} u-react-select${b ? " u-react-select--button" : ""}`,
172
+ ref: D,
173
+ style: Object.assign(
174
+ {
175
+ width: "100%"
176
+ },
177
+ j
178
+ ),
179
+ children: [
180
+ /* @__PURE__ */ u(
181
+ "div",
182
+ {
183
+ className: I ? "u-selectbox-select u-selectbox-select-open" : "u-selectbox-select",
184
+ tabIndex: n ? -1 : 0,
185
+ role: "combobox",
186
+ ...ge,
187
+ "aria-expanded": r ? K : I,
188
+ "aria-haspopup": r ? "dialog" : "listbox",
189
+ "aria-controls": r ? void 0 : l,
190
+ "aria-disabled": n || void 0,
191
+ "aria-activedescendant": r ? void 0 : ae,
192
+ onKeyDown: r ? Oe : ue,
193
+ onClick: (e) => r ? L() : i.toggle(e.currentTarget),
194
+ style: Object.assign(
195
+ d ? {
196
+ height: "var(--u-compact-height)",
197
+ fontSize: "var(--u-compact-font-size)",
198
+ lineHeight: 1,
199
+ padding: "var(--u-compact-padding)",
200
+ borderRadius: "calc(8 * var(--u-unit, 1px))"
201
+ } : {},
202
+ f.hasError && { border: "1px solid var(--u-color-error, #EF302B)" }
203
+ ),
204
+ children: [
205
+ t != null && t.value && !b ? /* @__PURE__ */ o("span", { style: { maxWidth: h && d ? "none" : z ? "calc(100% - calc(40 * var(--u-unit, 1px)))" : "calc(100% - calc(18 * var(--u-unit, 1px)))" }, className: "u-selectbox-select-title", children: M(t) }) : /* @__PURE__ */ o("span", { style: { color: "var(--u-field-title-color, #545454)" }, className: "u-selectbox-select-title", children: P }),
206
+ t != null && t.value && z && !b ? /* @__PURE__ */ o(
207
+ "i",
208
+ {
209
+ className: "u-selectbox-select-icon-cross",
210
+ role: "button",
211
+ "aria-label": "Очистить",
212
+ style: Object.assign(
213
+ d ? {
214
+ right: "calc(28 * var(--u-unit, 1px))"
215
+ } : {},
216
+ n && { pointerEvents: "none" }
217
+ ),
218
+ onClick: (e) => {
219
+ e.stopPropagation(), m({}), C();
220
+ }
221
+ }
222
+ ) : /* @__PURE__ */ o(Ne, {}),
223
+ /* @__PURE__ */ o(
224
+ "i",
225
+ {
226
+ className: "u-selectbox-select-icon-arrow",
227
+ style: Object.assign(
228
+ I ? {
229
+ transform: "rotate(180deg)",
230
+ top: "calc(50% - calc(4 * var(--u-unit, 1px)))"
231
+ } : {},
232
+ d ? {
233
+ width: "calc(12 * var(--u-unit, 1px)) !important",
234
+ right: "calc(8 * var(--u-unit, 1px))",
235
+ maxWidth: "calc(100% - calc(18 * var(--u-unit, 1px)))"
236
+ } : {}
237
+ )
238
+ }
239
+ )
240
+ ]
241
+ }
242
+ ),
243
+ xe ? pe && a && ze(
244
+ /* @__PURE__ */ o(
245
+ "div",
246
+ {
247
+ ref: ie,
248
+ ...Ke(),
249
+ id: l,
250
+ role: "listbox",
251
+ className: "u-selectbox-options u-react-select-options",
252
+ style: Object.assign(
253
+ {
254
+ width: fe,
255
+ left: a == null ? void 0 : a.x,
256
+ top: (a == null ? void 0 : a.y) - 60,
257
+ opacity: 1,
258
+ height: "fit-content",
259
+ // Переменная, чтобы список внутри модалки можно было
260
+ // поднять над ней, не трогая код потребителя.
261
+ zIndex: "var(--u-select-popup-z, 10010)",
262
+ display: "block"
263
+ },
264
+ v ? {
265
+ maxHeight: "none"
266
+ } : {},
267
+ i.optionsStyle,
268
+ _(me, H)
269
+ ),
270
+ children: s.map((e, c) => B(e, c, !1))
271
+ }
272
+ ),
273
+ document.body
274
+ ) : he && /* @__PURE__ */ o(
275
+ "div",
276
+ {
277
+ ref: le,
278
+ id: l,
279
+ role: "listbox",
280
+ className: "u-selectbox-options u-react-select-options",
281
+ style: Object.assign(
282
+ v ? { maxHeight: "none" } : {},
283
+ /**
284
+ * `display` держим сами всё время, пока узел в разметке.
285
+ * Иначе при закрытии снимается класс `…-select-open`,
286
+ * список на один кадр получает `display: none` от vanilla,
287
+ * и браузер сбрасывает переход — прозрачность прыгала в ноль
288
+ * вместо плавного угасания.
289
+ */
290
+ { display: "block" },
291
+ i.optionsStyle,
292
+ _(be, H)
293
+ ),
294
+ children: s.map((e, c) => B(e, c, !0))
295
+ }
296
+ )
297
+ ]
298
+ }
299
+ )
300
+ ]
301
+ }
302
+ ),
303
+ f.showText && /* @__PURE__ */ o("h5", { id: `${l}-error`, className: "h5 clr-red-main", style: te ? { position: "absolute", bottom: "calc(-20 * var(--u-unit, 1px))" } : { position: "relative", marginTop: "calc(4 * var(--u-unit, 1px))" }, children: f.text }),
304
+ r ? /* @__PURE__ */ o(
305
+ Ae,
306
+ {
307
+ active: K,
308
+ title: ve,
309
+ options: s,
310
+ isSelected: (e) => k(t == null ? void 0 : t.value, e == null ? void 0 : e.value),
311
+ onSelect: (e) => {
312
+ m(e), x(!1);
313
+ },
314
+ onClose: () => x(!1)
315
+ }
316
+ ) : null
317
+ ] });
318
+ };
319
+ export { it as Select$u };
@@ -0,0 +1,38 @@
1
+ import { jsx as l } from "react/jsx-runtime";
2
+ /* empty css */
3
+ /* empty css */
4
+ const t = (e) => typeof e == "number" ? `calc(${Math.max(0, e)} * var(--u-unit, 1px))` : e;
5
+ function w({
6
+ variant: e = "text",
7
+ width: r,
8
+ height: u,
9
+ count: n = 1,
10
+ gap: a,
11
+ lastLineWidth: m = "70%",
12
+ animation: i = "wave",
13
+ label: o,
14
+ className: h = "",
15
+ style: k
16
+ }) {
17
+ const s = Number.isFinite(n) ? Math.max(0, Math.floor(n)) : 1;
18
+ if (!s) return null;
19
+ const p = {
20
+ "--u-skeleton-width": t(r),
21
+ "--u-skeleton-height": t(u),
22
+ "--u-skeleton-gap": t(a),
23
+ "--u-skeleton-last-line-width": t(m),
24
+ ...k
25
+ };
26
+ return /* @__PURE__ */ l(
27
+ "span",
28
+ {
29
+ className: `u-skeleton u-skeleton--${e}${i ? ` u-skeleton--${i}` : ""}${e === "text" && s > 1 ? " u-skeleton--multiline" : ""} ${h}`.trim(),
30
+ style: p,
31
+ role: o ? "status" : void 0,
32
+ "aria-label": o || void 0,
33
+ "aria-hidden": o ? void 0 : !0,
34
+ children: Array.from({ length: s }, (c, d) => /* @__PURE__ */ l("span", { className: "u-skeleton__shape" }, d))
35
+ }
36
+ );
37
+ }
38
+ export { w as Skeleton$u };
@@ -1,7 +1,9 @@
1
1
  import type { CSSProperties } from 'react';
2
+ export type SkeletonVariant = 'text' | 'rectangular' | 'rounded' | 'circular';
3
+ export type SkeletonAnimation = 'wave' | 'pulse' | false;
2
4
  export interface SkeletonProps {
3
5
  /** Геометрия загружаемого содержимого; раскладку задаёт потребитель. */
4
- variant?: 'text' | 'rectangular' | 'rounded' | 'circular';
6
+ variant?: SkeletonVariant;
5
7
  /** Числа масштабируются через --u-unit; строки принимают CSS-единицы. */
6
8
  width?: CSSProperties['width'];
7
9
  height?: CSSProperties['height'];
@@ -9,7 +11,7 @@ export interface SkeletonProps {
9
11
  gap?: CSSProperties['gap'];
10
12
  /** Короткая последняя строка многострочного текста. */
11
13
  lastLineWidth?: CSSProperties['width'];
12
- animation?: 'wave' | 'pulse' | false;
14
+ animation?: SkeletonAnimation;
13
15
  /** Одна подпись для самостоятельного скелетона. В группах задайте её снаружи. */
14
16
  label?: string;
15
17
  className?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"Skeleton.types.d.ts","sourceRoot":"","sources":["../../../src/components/Skeleton/Skeleton.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAE3C,MAAM,WAAW,aAAa;IAC5B,wEAAwE;IACxE,OAAO,CAAC,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS,GAAG,UAAU,CAAC;IAC1D,yEAAyE;IACzE,KAAK,CAAC,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;IAC/B,MAAM,CAAC,EAAE,aAAa,CAAC,QAAQ,CAAC,CAAC;IACjC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,aAAa,CAAC,KAAK,CAAC,CAAC;IAC3B,uDAAuD;IACvD,aAAa,CAAC,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;IACvC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,KAAK,CAAC;IACrC,iFAAiF;IACjF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,aAAa,CAAC;CACvB"}
1
+ {"version":3,"file":"Skeleton.types.d.ts","sourceRoot":"","sources":["../../../src/components/Skeleton/Skeleton.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAE3C,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,aAAa,GAAG,SAAS,GAAG,UAAU,CAAC;AAE9E,MAAM,MAAM,iBAAiB,GAAG,MAAM,GAAG,OAAO,GAAG,KAAK,CAAC;AAEzD,MAAM,WAAW,aAAa;IAC5B,wEAAwE;IACxE,OAAO,CAAC,EAAE,eAAe,CAAC;IAC1B,yEAAyE;IACzE,KAAK,CAAC,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;IAC/B,MAAM,CAAC,EAAE,aAAa,CAAC,QAAQ,CAAC,CAAC;IACjC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,aAAa,CAAC,KAAK,CAAC,CAAC;IAC3B,uDAAuD;IACvD,aAAa,CAAC,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;IACvC,SAAS,CAAC,EAAE,iBAAiB,CAAC;IAC9B,iFAAiF;IACjF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,aAAa,CAAC;CACvB"}
@@ -0,0 +1,43 @@
1
+ import { jsx as a } from "react/jsx-runtime";
2
+ /* empty css */
3
+ import { useAutoId$u as m } from "../../hooks/useAutoId.js";
4
+ /* empty css */
5
+ const w = ({
6
+ size: e = "medium",
7
+ variant: u = "",
8
+ children: t,
9
+ truncate: s = !1,
10
+ className: r = "",
11
+ id: n,
12
+ props: i
13
+ }) => {
14
+ const o = m(n, "u-status");
15
+ return /* @__PURE__ */ a(
16
+ "div",
17
+ {
18
+ id: o,
19
+ className: `u-status${e === "large" ? " u-status-large" : ""}${s ? " u-status-truncate" : ""} ${((c) => {
20
+ switch (c) {
21
+ case "warning":
22
+ return " u-status-warning";
23
+ case "info":
24
+ return " u-status-info";
25
+ case "neutral":
26
+ return " u-status-neutral";
27
+ case "success":
28
+ return " u-status-success";
29
+ case "danger":
30
+ return " u-status-danger";
31
+ case "intermediate":
32
+ return " u-status-intermediate";
33
+ case "prepared":
34
+ return " u-status-prepared";
35
+ }
36
+ })(u)} ${r}`,
37
+ title: s && (typeof t == "string" || typeof t == "number") ? String(t) : void 0,
38
+ ...i,
39
+ children: s ? /* @__PURE__ */ a("span", { className: "u-status__text", children: t }) : t
40
+ }
41
+ );
42
+ };
43
+ export { w as Status$u };
@@ -1,6 +1,6 @@
1
1
  import { type PropsWithChildren } from 'react';
2
2
 
3
- import './StickyActionBar.less';
3
+
4
4
  export type StickyActionBarProps = PropsWithChildren<{
5
5
  className?: string;
6
6
  /** На мобильном экране всегда у нижнего края; на десктопе — обычная группа действий. */
@@ -1 +1 @@
1
- {"version":3,"file":"StickyActionBar.d.ts","sourceRoot":"","sources":["../../../src/components/StickyActionBar/StickyActionBar.tsx"],"names":[],"mappings":"AAAA,OAAO,EAA+B,KAAK,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAC5E,OAAO,kCAAkC,CAAC;AAC1C,OAAO,wBAAwB,CAAC;AAGhC,MAAM,MAAM,oBAAoB,GAAG,iBAAiB,CAAC;IACnD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,wFAAwF;IACxF,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB,CAAC,CAAC;AAEH,eAAO,MAAM,eAAe,GAAI,sCAAmD,oBAAoB,4CAyHtG,CAAC"}
1
+ {"version":3,"file":"StickyActionBar.d.ts","sourceRoot":"","sources":["../../../src/components/StickyActionBar/StickyActionBar.tsx"],"names":[],"mappings":"AAAA,OAAO,EAA+B,KAAK,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAC5E,OAAO,kCAAkC,CAAC;AAC1C,OAAO,gEAAgE,CAAC;AAGxE,MAAM,MAAM,oBAAoB,GAAG,iBAAiB,CAAC;IACnD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,wFAAwF;IACxF,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB,CAAC,CAAC;AAEH,eAAO,MAAM,eAAe,GAAI,sCAAmD,oBAAoB,4CAyHtG,CAAC"}
@@ -0,0 +1,73 @@
1
+ import { jsx as A } from "react/jsx-runtime";
2
+ import { useRef as N, useState as H, useEffect as k } from "react";
3
+ /* empty css */
4
+ /* empty css */
5
+ import { setDevLauncherOffset$u as E, occupiedFromBottom$u as I } from "../../vanilla/core/devLauncherOffset.js";
6
+ const Y = ({ children: R, className: S = "", mobileFixed: c = !1 }) => {
7
+ const p = N(null), [m, v] = H(!1);
8
+ return k(() => {
9
+ const t = p.current;
10
+ if (!t) return;
11
+ if (c) {
12
+ v(!1);
13
+ return;
14
+ }
15
+ const i = window.matchMedia("(max-width: 576px)");
16
+ let o;
17
+ const n = () => {
18
+ o == null || o(), o = void 0;
19
+ const r = "--u-sticky-action-bar-scroll-padding", d = "--u-sticky-action-bar-left-inset", g = "--u-sticky-action-bar-right-inset", B = [r, d, g].map((e) => [e, t.style.getPropertyValue(e)]), h = (e, s) => {
20
+ const u = String(s) + "px";
21
+ t.style.getPropertyValue(e) !== u && t.style.setProperty(e, u);
22
+ };
23
+ let a = null;
24
+ const b = () => {
25
+ let e = t.parentElement;
26
+ for (; e && !/(auto|scroll|hidden|overlay)/.test(getComputedStyle(e).overflowY); )
27
+ e = e.parentElement;
28
+ const s = i.matches && e && Number.parseFloat(getComputedStyle(e).paddingBottom) || 0, u = String(s) + "px";
29
+ t.style.getPropertyValue(r) !== u && t.style.setProperty(r, u);
30
+ const x = e ? e.getBoundingClientRect().top + e.clientTop + e.clientHeight : window.innerHeight, P = t.style.getPropertyValue("position"), z = t.style.getPropertyPriority("position");
31
+ t.style.setProperty("position", "static", "important");
32
+ const f = "u-react-sticky-action-bar-stuck", C = t.classList.contains(f);
33
+ t.classList.remove(f);
34
+ const w = t.getBoundingClientRect();
35
+ C && t.classList.add(f);
36
+ const L = e ? e.getBoundingClientRect().left + e.clientLeft : 0, V = e ? e.clientWidth : window.innerWidth;
37
+ h(d, Math.max(0, w.left - L)), h(g, Math.max(0, L + V - w.right));
38
+ const M = w.bottom;
39
+ P ? t.style.setProperty("position", P, z) : t.style.removeProperty("position");
40
+ const O = (Number.parseFloat(getComputedStyle(t).bottom) || 0) + s;
41
+ v(M > x - O + 1);
42
+ }, l = () => {
43
+ a === null && (a = window.requestAnimationFrame(() => {
44
+ a = null, b();
45
+ }));
46
+ };
47
+ b(), window.addEventListener("scroll", l, { capture: !0, passive: !0 }), window.addEventListener("resize", l);
48
+ const y = new ResizeObserver(l);
49
+ y.observe(t), t.parentElement && y.observe(t.parentElement), o = () => {
50
+ window.removeEventListener("scroll", l, !0), window.removeEventListener("resize", l), y.disconnect();
51
+ for (const [e, s] of B)
52
+ s ? t.style.setProperty(e, s) : t.style.removeProperty(e);
53
+ a !== null && window.cancelAnimationFrame(a);
54
+ };
55
+ };
56
+ return n(), i.addEventListener("change", n), () => {
57
+ i.removeEventListener("change", n), o == null || o();
58
+ };
59
+ }, [c]), k(() => {
60
+ const t = p.current;
61
+ if (!t) return;
62
+ const i = {}, o = window.matchMedia("(max-width: 576px)"), n = () => {
63
+ const d = m || c && o.matches;
64
+ E(i, d ? I(t) : null);
65
+ };
66
+ n();
67
+ const r = typeof ResizeObserver < "u" ? new ResizeObserver(n) : void 0;
68
+ return r == null || r.observe(t), window.addEventListener("resize", n), o.addEventListener("change", n), () => {
69
+ r == null || r.disconnect(), window.removeEventListener("resize", n), o.removeEventListener("change", n), E(i, null);
70
+ };
71
+ }, [m, c]), /* @__PURE__ */ A("footer", { ref: p, className: "u-react-sticky-action-bar " + (m ? "u-react-sticky-action-bar-stuck u-react-sticky-action-bar-shadow " : "") + (c ? "u-react-sticky-action-bar-mobile-fixed " : "") + S, children: R });
72
+ };
73
+ export { Y as StickyActionBar$u };
@@ -1,6 +1,6 @@
1
1
 
2
2
  import type { SwitchProps } from './Switch.types';
3
- import './Switch.less';
3
+
4
4
  /**
5
5
  * Переключатель в стиле UI-kit (классы `u-switch` из vanilla-кита).
6
6
  *
@@ -1 +1 @@
1
- {"version":3,"file":"Switch.d.ts","sourceRoot":"","sources":["../../../src/components/Switch/Switch.tsx"],"names":[],"mappings":"AACA,OAAO,kCAAkC,CAAC;AAC1C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,eAAe,CAAC;AAEvB;;;;GAIG;AACH,wBAAgB,MAAM,CAAC,EACrB,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,EAAE,EACF,SAAS,GACV,EAAE,WAAW,2CAoBb"}
1
+ {"version":3,"file":"Switch.d.ts","sourceRoot":"","sources":["../../../src/components/Switch/Switch.tsx"],"names":[],"mappings":"AACA,OAAO,kCAAkC,CAAC;AAC1C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,qDAAqD,CAAC;AAE7D;;;;GAIG;AACH,wBAAgB,MAAM,CAAC,EACrB,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,EAAE,EACF,SAAS,GACV,EAAE,WAAW,2CAoBb"}