@sberbusiness/triplex-next 1.37.0 → 1.39.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 (595) hide show
  1. package/chunks/{AlertProcessSpoiler-Bstc4hlG.js → AlertProcessSpoiler-L9aiNxlF.js} +17 -17
  2. package/chunks/{AlertProcessSpoiler-Bstc4hlG.js.map → AlertProcessSpoiler-L9aiNxlF.js.map} +1 -1
  3. package/chunks/{CalendarViewItem-CmLXu5Mh.js → CalendarViewItem-B8TCTMZP.js} +21 -21
  4. package/chunks/{CalendarViewItem-CmLXu5Mh.js.map → CalendarViewItem-B8TCTMZP.js.map} +1 -1
  5. package/chunks/Card.module-14Om16r3.js +30 -0
  6. package/chunks/Card.module-14Om16r3.js.map +1 -0
  7. package/chunks/Carousel.module-DA8j7NC7.js +30 -0
  8. package/chunks/Carousel.module-DA8j7NC7.js.map +1 -0
  9. package/chunks/CheckboxTreeExtended.module-BGaRPBMW.js +24 -0
  10. package/chunks/CheckboxTreeExtended.module-BGaRPBMW.js.map +1 -0
  11. package/chunks/{Chip-id8kIylg.js → Chip-C-q9erC6.js} +17 -17
  12. package/chunks/{Chip-id8kIylg.js.map → Chip-C-q9erC6.js.map} +1 -1
  13. package/chunks/Confirm.module-ZIpignS2.js +24 -0
  14. package/chunks/Confirm.module-ZIpignS2.js.map +1 -0
  15. package/chunks/{DropdownListItem-DlQBVEg0.js → DropdownListItem-CCY0qbiT.js} +11 -11
  16. package/chunks/{DropdownListItem-DlQBVEg0.js.map → DropdownListItem-CCY0qbiT.js.map} +1 -1
  17. package/chunks/DropdownMobile.module-BajwYkh-.js +40 -0
  18. package/chunks/DropdownMobile.module-BajwYkh-.js.map +1 -0
  19. package/chunks/Footer.module-CHk3wlMA.js +12 -0
  20. package/chunks/Footer.module-CHk3wlMA.js.map +1 -0
  21. package/chunks/{HeaderLayoutSidebar.module-C5X_ONmU.js → HeaderLayoutSidebar.module-cfAKCDSx.js} +4 -4
  22. package/chunks/HeaderLayoutSidebar.module-cfAKCDSx.js.map +1 -0
  23. package/chunks/HeaderTabs.module-BoYA4eLZ.js +12 -0
  24. package/chunks/HeaderTabs.module-BoYA4eLZ.js.map +1 -0
  25. package/chunks/{HeaderTitle.module-CnjBkeOG.js → HeaderTitle.module-DpU8I1UD.js} +4 -4
  26. package/chunks/HeaderTitle.module-DpU8I1UD.js.map +1 -0
  27. package/chunks/ImageGalleryExtendedMain.module-kJp5oqGP.js +28 -0
  28. package/chunks/ImageGalleryExtendedMain.module-kJp5oqGP.js.map +1 -0
  29. package/chunks/{ImageGalleryExtendedThumb-Ceuo_i5E.js → ImageGalleryExtendedThumb-CWGYUoLd.js} +6 -6
  30. package/chunks/{ImageGalleryExtendedThumb-Ceuo_i5E.js.map → ImageGalleryExtendedThumb-CWGYUoLd.js.map} +1 -1
  31. package/chunks/IslandAccordion.module-BomGNbMp.js +44 -0
  32. package/chunks/IslandAccordion.module-BomGNbMp.js.map +1 -0
  33. package/chunks/IslandWidgetFooter.module-MkAqOnXQ.js +12 -0
  34. package/chunks/IslandWidgetFooter.module-MkAqOnXQ.js.map +1 -0
  35. package/chunks/IslandWidgetHeader.module-DNkRUJMU.js +20 -0
  36. package/chunks/IslandWidgetHeader.module-DNkRUJMU.js.map +1 -0
  37. package/chunks/{LightBoxContent-W4QNMAOs.js → LightBoxContent-DegsWbol.js} +15 -15
  38. package/chunks/LightBoxContent-DegsWbol.js.map +1 -0
  39. package/chunks/LightBoxControls.module-DNhvkSnJ.js +26 -0
  40. package/chunks/LightBoxControls.module-DNhvkSnJ.js.map +1 -0
  41. package/chunks/{LightBoxSideOverlayClose.module-GYvWYxDz.js → LightBoxSideOverlayClose.module-BW5kBtvi.js} +4 -4
  42. package/chunks/LightBoxSideOverlayClose.module-BW5kBtvi.js.map +1 -0
  43. package/chunks/{ListItemControlsButton-GPMeEvPg.js → ListItemControlsButton-DWsZ9wcF.js} +10 -10
  44. package/chunks/{ListItemControlsButton-GPMeEvPg.js.map → ListItemControlsButton-DWsZ9wcF.js.map} +1 -1
  45. package/chunks/ListItemTail.module-CEG0qMnR.js +18 -0
  46. package/chunks/ListItemTail.module-CEG0qMnR.js.map +1 -0
  47. package/chunks/ListMasterFooter.module-BmOyRNOj.js +14 -0
  48. package/chunks/ListMasterFooter.module-BmOyRNOj.js.map +1 -0
  49. package/chunks/ModalWindow.module-CvUl5MXx.js +28 -0
  50. package/chunks/ModalWindow.module-CvUl5MXx.js.map +1 -0
  51. package/chunks/Notification.module-Bc0ZveBn.js +34 -0
  52. package/chunks/Notification.module-Bc0ZveBn.js.map +1 -0
  53. package/chunks/Overlay.module-XFTg0MN6.js +30 -0
  54. package/chunks/Overlay.module-XFTg0MN6.js.map +1 -0
  55. package/chunks/Page.module-8VHg5Xhh.js +15 -0
  56. package/chunks/Page.module-8VHg5Xhh.js.map +1 -0
  57. package/chunks/SMSField.module-Baz5Uv7V.js +26 -0
  58. package/chunks/SMSField.module-Baz5Uv7V.js.map +1 -0
  59. package/chunks/SliderExtendedMarks.module-UR5zZtMI.js +24 -0
  60. package/chunks/SliderExtendedMarks.module-UR5zZtMI.js.map +1 -0
  61. package/chunks/{SliderExtendedRail-CdU_K-MN.js → SliderExtendedRail-9dN-uLr8.js} +6 -6
  62. package/chunks/{SliderExtendedRail-CdU_K-MN.js.map → SliderExtendedRail-9dN-uLr8.js.map} +1 -1
  63. package/chunks/StatusTracker.module-DItDLU6A.js +42 -0
  64. package/chunks/StatusTracker.module-DItDLU6A.js.map +1 -0
  65. package/chunks/{StepperStepArrowBorder-B1tggGBn.js → StepperStepArrowBorder-CQMOwONP.js} +16 -16
  66. package/chunks/{StepperStepArrowBorder-B1tggGBn.js.map → StepperStepArrowBorder-CQMOwONP.js.map} +1 -1
  67. package/chunks/{SuggestFieldMobileDropdownHint-C0J0aUNQ.js → SuggestFieldMobileDropdownHint-gntyMsB0.js} +3 -3
  68. package/chunks/{SuggestFieldMobileDropdownHint-C0J0aUNQ.js.map → SuggestFieldMobileDropdownHint-gntyMsB0.js.map} +1 -1
  69. package/chunks/TableFooter.module-VxCivCET.js +22 -0
  70. package/chunks/TableFooter.module-VxCivCET.js.map +1 -0
  71. package/chunks/TabsExtended.module-BDMo7ooD.js +26 -0
  72. package/chunks/TabsExtended.module-BDMo7ooD.js.map +1 -0
  73. package/chunks/TabsLine.module-ikp14Q2B.js +36 -0
  74. package/chunks/TabsLine.module-ikp14Q2B.js.map +1 -0
  75. package/chunks/TooltipDesktop.module-DsSC48Zv.js +32 -0
  76. package/chunks/TooltipDesktop.module-DsSC48Zv.js.map +1 -0
  77. package/chunks/TreeView.module-mM9v32zk.js +12 -0
  78. package/chunks/TreeView.module-mM9v32zk.js.map +1 -0
  79. package/chunks/{UploadZoneInput-C4-U97n3.js → UploadZoneInput-D3aOVvsS.js} +6 -6
  80. package/chunks/{UploadZoneInput-C4-U97n3.js.map → UploadZoneInput-D3aOVvsS.js.map} +1 -1
  81. package/chunks/{constants-Cd6Fu1e1.js → constants-Cvk1NtW-.js} +27 -27
  82. package/chunks/{constants-Cd6Fu1e1.js.map → constants-Cvk1NtW-.js.map} +1 -1
  83. package/chunks/{utils-V2rOsh3s.js → utils-BF0o25c7.js} +8 -8
  84. package/chunks/{utils-V2rOsh3s.js.map → utils-BF0o25c7.js.map} +1 -1
  85. package/chunks/{utils-D8gXCvFG.js → utils-BiIfiU3L.js} +6 -6
  86. package/chunks/{utils-D8gXCvFG.js.map → utils-BiIfiU3L.js.map} +1 -1
  87. package/chunks/{utils-CvopAPMI.js → utils-CNegAs3f.js} +27 -27
  88. package/chunks/{utils-CvopAPMI.js.map → utils-CNegAs3f.js.map} +1 -1
  89. package/chunks/{utils-DE6IWjlY.js → utils-DwYYOzEU.js} +11 -11
  90. package/chunks/{utils-DE6IWjlY.js.map → utils-DwYYOzEU.js.map} +1 -1
  91. package/chunks/vendor-1HxVLgKa.js +35852 -0
  92. package/chunks/vendor-1HxVLgKa.js.map +1 -0
  93. package/components/AbstractTree/AbstractTreeNode.js +1 -1
  94. package/components/AccordionBase/protected/AccordionBase.js +1 -1
  95. package/components/Alert/AlertContext/AlertContext.js +17 -29
  96. package/components/Alert/AlertContext/AlertContext.js.map +1 -1
  97. package/components/Alert/AlertProcess/AlertProcess.js +3 -3
  98. package/components/Alert/AlertProcess/components/AlertProcessSpoiler.js +2 -2
  99. package/components/Amount/Amount.js +3 -3
  100. package/components/Avatar/Avatar.js +14 -14
  101. package/components/Badge/Badge.js +5 -5
  102. package/components/Badge/BadgeDot.js +5 -5
  103. package/components/Badge/components/BadgeContent.js +7 -7
  104. package/components/Badge/components/BadgePostfix.js +2 -2
  105. package/components/Badge/components/BadgePrefix.js +2 -2
  106. package/components/Body/Body.js +4 -4
  107. package/components/Button/Button.js +30 -29
  108. package/components/Button/Button.js.map +1 -1
  109. package/components/Button/ButtonBase.js +1 -1
  110. package/components/Button/ButtonDropdown.js +66 -84
  111. package/components/Button/ButtonDropdown.js.map +1 -1
  112. package/components/Button/ButtonDropdownExtended.js +3 -3
  113. package/components/Button/ButtonIcon.js +4 -4
  114. package/components/Button/index.js +0 -2
  115. package/components/Button/index.js.map +1 -1
  116. package/components/Calendar/Calendar.js +5 -5
  117. package/components/Calendar/components/CalendarControls.js +1 -1
  118. package/components/Calendar/components/CalendarFooter.js +1 -1
  119. package/components/Calendar/components/CalendarViewDays.js +2 -2
  120. package/components/Calendar/components/CalendarViewItem.js +2 -2
  121. package/components/Calendar/components/CalendarViewMonths.js +1 -1
  122. package/components/Calendar/components/CalendarViewYears.js +1 -1
  123. package/components/Card/CardAction.js +6 -6
  124. package/components/Card/CardStatic.js +3 -3
  125. package/components/Card/components/CardContent/CardContent.js +2 -2
  126. package/components/Card/components/CardContent/components/CardContentBody.js +2 -2
  127. package/components/Card/components/CardContent/components/CardContentFooter.js +2 -2
  128. package/components/Card/components/CardContent/components/CardContentHeader.js +2 -2
  129. package/components/Card/components/CardMedia.js +2 -2
  130. package/components/Card/utils.js +1 -1
  131. package/components/Carousel/Carousel.js +362 -0
  132. package/components/Carousel/Carousel.js.map +1 -0
  133. package/components/Carousel/CarouselButton.js +78 -0
  134. package/components/Carousel/CarouselButton.js.map +1 -0
  135. package/components/Carousel/CarouselContext.js +30 -0
  136. package/components/Carousel/CarouselContext.js.map +1 -0
  137. package/components/Carousel/CarouselIndicators.js +157 -0
  138. package/components/Carousel/CarouselIndicators.js.map +1 -0
  139. package/components/Carousel/CarouselItem.js +34 -0
  140. package/components/Carousel/CarouselItem.js.map +1 -0
  141. package/components/Carousel/CarouselTrack.js +36 -0
  142. package/components/Carousel/CarouselTrack.js.map +1 -0
  143. package/components/Carousel/CarouselViewport.js +159 -0
  144. package/components/Carousel/CarouselViewport.js.map +1 -0
  145. package/components/Carousel/__tests__/utils.js +92 -0
  146. package/components/Carousel/__tests__/utils.js.map +1 -0
  147. package/components/Carousel/constants.js +9 -0
  148. package/components/Carousel/constants.js.map +1 -0
  149. package/components/Carousel/enums.js +15 -0
  150. package/components/Carousel/enums.js.map +1 -0
  151. package/components/Carousel/index.js +8 -0
  152. package/components/Carousel/index.js.map +1 -0
  153. package/components/Carousel/types.js +2 -0
  154. package/components/Carousel/types.js.map +1 -0
  155. package/components/Carousel/utils.js +71 -0
  156. package/components/Carousel/utils.js.map +1 -0
  157. package/components/CarouselExtended/CarouselExtended.js +2 -2
  158. package/components/Checkbox/Checkbox.js +11 -11
  159. package/components/Checkbox/CheckboxXGroup.js +9 -9
  160. package/components/Checkbox/CheckboxYGroup.js +2 -2
  161. package/components/CheckboxTreeExtended/CheckboxTreeExtended.js +2 -2
  162. package/components/CheckboxTreeExtended/components/CheckboxTreeExtendedArrow.js +1 -1
  163. package/components/CheckboxTreeExtended/components/CheckboxTreeExtendedCheckbox.js +2 -2
  164. package/components/CheckboxTreeExtended/components/CheckboxTreeExtendedNode.js +2 -2
  165. package/components/Chip/Chip.js +2 -2
  166. package/components/Chip/ChipClearButton.js +2 -2
  167. package/components/Chip/ChipDatePicker/ChipDatePicker.js +1 -1
  168. package/components/Chip/ChipDatePicker/ChipDatePickerTarget.js +1 -1
  169. package/components/Chip/ChipDropdownArrow.js +3 -3
  170. package/components/Chip/ChipIcon.js +1 -1
  171. package/components/Chip/ChipMultiselect.js +2 -2
  172. package/components/Chip/ChipOptions.js +2 -2
  173. package/components/Chip/ChipSelect/ChipSelect.js +2 -2
  174. package/components/Chip/ChipSelect/ChipSelectTarget.js +1 -1
  175. package/components/Chip/ChipSort.js +2 -2
  176. package/components/Chip/ChipSuggest/ChipSuggest.js +2 -2
  177. package/components/Chip/ChipSuggest/ChipSuggestDropdown.js +2 -2
  178. package/components/Chip/ChipSuggest/ChipSuggestTarget.js +1 -1
  179. package/components/Chip/ChipSuggest/desktop/ChipSuggestDesktopDropdownField.js +1 -1
  180. package/components/Chip/index.js +1 -1
  181. package/components/ChipGroup/ChipGroup.js +8 -8
  182. package/components/Col/Col.js +181 -178
  183. package/components/Col/Col.js.map +1 -1
  184. package/components/CollapsibleTree/CollapsibleTree.js +2 -2
  185. package/components/CollapsibleTree/components/CollapsibleTreeLeafContent.js +2 -2
  186. package/components/CollapsibleTree/components/CollapsibleTreeLeafNode.js +2 -2
  187. package/components/CollapsibleTree/components/CollapsibleTreeNodeHeader.js +9 -8
  188. package/components/CollapsibleTree/components/CollapsibleTreeNodeHeader.js.map +1 -1
  189. package/components/CollapsibleTreeExtended/components/CollapsibleTreeExtendedNode.js +2 -2
  190. package/components/Confirm/Confirm.js +2 -2
  191. package/components/Confirm/components/ConfirmCloseButton.js +2 -2
  192. package/components/Confirm/components/ConfirmContent.js +2 -2
  193. package/components/Confirm/components/ConfirmContentTitle.js +2 -2
  194. package/components/Confirm/components/ConfirmControls.js +2 -2
  195. package/components/DatePickerExtended/DatePickerExtended.js +2 -2
  196. package/components/DatePickerExtended/DatePickerExtendedDropdown.js +2 -2
  197. package/components/DateRange/DateRange.js +4 -4
  198. package/components/DesignTokens/DesignTokenUtils.js +2 -2
  199. package/components/DesignTokens/DesignTokensComponents.js +2 -0
  200. package/components/DesignTokens/DesignTokensComponents.js.map +1 -1
  201. package/components/DesignTokens/DesignTokensComponentsThemeDark.js +2 -0
  202. package/components/DesignTokens/DesignTokensComponentsThemeDark.js.map +1 -1
  203. package/components/DesignTokens/components/Carousel.js +51 -0
  204. package/components/DesignTokens/components/Carousel.js.map +1 -0
  205. package/components/DesignTokens/components/ListItem.js +3 -0
  206. package/components/DesignTokens/components/ListItem.js.map +1 -1
  207. package/components/DesignTokens/components/index.js +3 -0
  208. package/components/DesignTokens/components/index.js.map +1 -1
  209. package/components/DesignTokens/types/DesignTokensTypes.js.map +1 -1
  210. package/components/Divider/Divider.js +18 -18
  211. package/components/DocumentNumberEdit/DocumentNumberEdit.js +4 -4
  212. package/components/Dropdown/desktop/DropdownDesktop.js +7 -7
  213. package/components/Dropdown/desktop/DropdownList.js +2 -2
  214. package/components/Dropdown/desktop/DropdownListItem.js +2 -2
  215. package/components/Dropdown/desktop/index.js +1 -1
  216. package/components/Dropdown/index.js +1 -1
  217. package/components/Dropdown/mobile/DropdownMobile.js +2 -2
  218. package/components/Dropdown/mobile/DropdownMobileBody.js +2 -2
  219. package/components/Dropdown/mobile/DropdownMobileClose.js +2 -2
  220. package/components/Dropdown/mobile/DropdownMobileFooter.js +2 -2
  221. package/components/Dropdown/mobile/DropdownMobileHeader.js +2 -2
  222. package/components/Dropdown/mobile/DropdownMobileInner.js +2 -2
  223. package/components/Dropdown/mobile/DropdownMobileInput.js +2 -2
  224. package/components/Dropdown/mobile/DropdownMobileList.js +2 -2
  225. package/components/Dropdown/mobile/DropdownMobileListItem.js +2 -2
  226. package/components/Dropdown/mobile/DropdownMobileLoader.js +2 -2
  227. package/components/Dropdown/mobile/DropdownMobileMaskedInput.js +2 -2
  228. package/components/Ellipsis/Ellipsis.js +4 -4
  229. package/components/EmptyView/EmptyView.js +5 -5
  230. package/components/ExpandAnimation/ExpandAnimation.js +2 -2
  231. package/components/FocusTrapExtended/FocusTrapExtended.js +1 -1
  232. package/components/Footer/Footer.js +1 -1
  233. package/components/Footer/components/FooterDescription.js +2 -2
  234. package/components/Footer/components/FooterDescriptionContent.js +2 -2
  235. package/components/Footer/components/FooterDescriptionControls.js +2 -2
  236. package/components/FormField/FormField.js +12 -12
  237. package/components/FormField/components/FormFieldClear.js +2 -2
  238. package/components/FormField/components/FormFieldCounter.js +1 -1
  239. package/components/FormField/components/FormFieldDescription.js +3 -3
  240. package/components/FormField/components/FormFieldInput.js +5 -5
  241. package/components/FormField/components/FormFieldLabel.js +8 -8
  242. package/components/FormField/components/FormFieldMaskedInput.js +7 -7
  243. package/components/FormField/components/FormFieldPostfix.js +2 -2
  244. package/components/FormField/components/FormFieldPrefix.js +2 -2
  245. package/components/FormField/components/FormFieldTarget.js +9 -9
  246. package/components/FormField/components/FormFieldTextarea.js +5 -5
  247. package/components/Gap/Gap.js +9 -9
  248. package/components/Header/Header.js +1 -1
  249. package/components/Header/components/HeaderLayoutSidebar/HeaderLayoutSidebar.js +2 -2
  250. package/components/Header/components/HeaderLayoutSidebar/HeaderLayoutSidebarContent.js +2 -2
  251. package/components/Header/components/HeaderLayoutSidebar/HeaderLayoutSidebarSidebar.js +2 -2
  252. package/components/Header/components/HeaderSubheader/HeaderSubheader.js +3 -3
  253. package/components/Header/components/HeaderTabs/HeaderTabs.js +2 -2
  254. package/components/Header/components/HeaderTabs/HeaderTabsContent.js +2 -2
  255. package/components/Header/components/HeaderTabs/HeaderTabsControls.js +2 -2
  256. package/components/Header/components/HeaderTitle/HeaderTitle.js +2 -2
  257. package/components/Header/components/HeaderTitle/HeaderTitleContent.js +2 -2
  258. package/components/Header/components/HeaderTitle/HeaderTitleControls.js +2 -2
  259. package/components/HelpBox/HelpBox.js +2 -2
  260. package/components/IconWrapper/IconWrapper.js +3 -3
  261. package/components/ImageGallery/ImageGallery.js +1 -1
  262. package/components/ImageGalleryExtended/ImageGalleryExtended.js +3 -3
  263. package/components/ImageGalleryExtended/components/ImageGalleryExtendedArrow.js +2 -2
  264. package/components/ImageGalleryExtended/components/ImageGalleryExtendedDots.js +4 -4
  265. package/components/ImageGalleryExtended/components/ImageGalleryExtendedMain.js +2 -2
  266. package/components/ImageGalleryExtended/components/ImageGalleryExtendedSlide.js +2 -2
  267. package/components/ImageGalleryExtended/components/ImageGalleryExtendedSwipeTrack.js +2 -2
  268. package/components/ImageGalleryExtended/components/ImageGalleryExtendedThumb.js +2 -2
  269. package/components/ImageGalleryExtended/components/ImageGalleryExtendedThumbnails.js +2 -2
  270. package/components/ImageGalleryExtended/components/index.js +1 -1
  271. package/components/ImageGalleryExtended/index.js +1 -1
  272. package/components/Island/Island.js +2 -2
  273. package/components/Island/components/IslandBody.js +2 -2
  274. package/components/Island/components/IslandFooter.js +2 -2
  275. package/components/Island/components/IslandHeader.js +2 -2
  276. package/components/Island/utils.js +1 -1
  277. package/components/IslandAccordion/IslandAccordion.js +3 -3
  278. package/components/IslandAccordion/components/IslandAccordionContent.js +1 -1
  279. package/components/IslandAccordion/components/IslandAccordionFooter.js +2 -2
  280. package/components/IslandAccordion/components/IslandAccordionItem.js +3 -4
  281. package/components/IslandAccordion/components/IslandAccordionItem.js.map +1 -1
  282. package/components/IslandWidget/IslandWidget.js +5 -5
  283. package/components/IslandWidget/components/IslandWidgetBody.js +2 -2
  284. package/components/IslandWidget/components/IslandWidgetExtraFooter.js +2 -2
  285. package/components/IslandWidget/components/IslandWidgetFooter.js +2 -2
  286. package/components/IslandWidget/components/IslandWidgetFooterContent.js +1 -1
  287. package/components/IslandWidget/components/IslandWidgetFooterControls.js +1 -1
  288. package/components/IslandWidget/components/IslandWidgetHeader.js +2 -2
  289. package/components/IslandWidget/components/IslandWidgetHeaderContent.js +2 -2
  290. package/components/IslandWidget/components/IslandWidgetHeaderControls.js +2 -2
  291. package/components/IslandWidget/components/IslandWidgetHeaderDescription.js +2 -2
  292. package/components/IslandWidget/components/IslandWidgetHeaderTitle.js +13 -4
  293. package/components/IslandWidget/components/IslandWidgetHeaderTitle.js.map +1 -1
  294. package/components/IslandWidget/components/IslandWidgetWrapper.js +2 -2
  295. package/components/LightBox/LightBox.js +34 -31
  296. package/components/LightBox/LightBox.js.map +1 -1
  297. package/components/LightBox/LightBoxContent.js +2 -2
  298. package/components/LightBox/LightBoxControls/LightBoxArrow.js +63 -0
  299. package/components/LightBox/LightBoxControls/LightBoxArrow.js.map +1 -0
  300. package/components/LightBox/LightBoxControls/LightBoxClose.js +8 -6
  301. package/components/LightBox/LightBoxControls/LightBoxClose.js.map +1 -1
  302. package/components/LightBox/LightBoxControls/LightBoxControls.js +2 -2
  303. package/components/LightBox/LightBoxControls/LightBoxControls.js.map +1 -1
  304. package/components/LightBox/LightBoxControls/LightBoxNext.js +18 -53
  305. package/components/LightBox/LightBoxControls/LightBoxNext.js.map +1 -1
  306. package/components/LightBox/LightBoxControls/LightBoxPrev.js +18 -53
  307. package/components/LightBox/LightBoxControls/LightBoxPrev.js.map +1 -1
  308. package/components/LightBox/LightBoxSideOverlay/LightBoxSideOverlay.js +15 -15
  309. package/components/LightBox/LightBoxSideOverlay/LightBoxSideOverlay.js.map +1 -1
  310. package/components/LightBox/LightBoxSideOverlay/LightBoxSideOverlayCloseDesktop.js +2 -2
  311. package/components/LightBox/LightBoxSideOverlay/LightBoxSideOverlayCloseMobile.js +2 -2
  312. package/components/LightBox/LightBoxSideOverlay/LightBoxSideOverlayLoader.js +5 -8
  313. package/components/LightBox/LightBoxSideOverlay/LightBoxSideOverlayLoader.js.map +1 -1
  314. package/components/LightBox/LightBoxSidebars/LightBoxLeftSidebar.js +7 -34
  315. package/components/LightBox/LightBoxSidebars/LightBoxLeftSidebar.js.map +1 -1
  316. package/components/LightBox/LightBoxSidebars/LightBoxRightSidebar.js +7 -34
  317. package/components/LightBox/LightBoxSidebars/LightBoxRightSidebar.js.map +1 -1
  318. package/components/LightBox/LightBoxSidebars/useLightBoxSidebarVisibility.js +37 -0
  319. package/components/LightBox/LightBoxSidebars/useLightBoxSidebarVisibility.js.map +1 -0
  320. package/components/LightBox/LightBoxViewManager/LightBoxViewManager.js +32 -30
  321. package/components/LightBox/LightBoxViewManager/LightBoxViewManager.js.map +1 -1
  322. package/components/LightBox/LightBoxViewManager/LightBoxViewManagerConsts.js +0 -11
  323. package/components/LightBox/LightBoxViewManager/LightBoxViewManagerConsts.js.map +1 -1
  324. package/components/LightBox/enums.js.map +1 -1
  325. package/components/Link/Link.js +6 -6
  326. package/components/List/List.js +4 -4
  327. package/components/List/ListSortable.js +1 -1
  328. package/components/List/components/ListActionItem.js +42 -0
  329. package/components/List/components/ListActionItem.js.map +1 -0
  330. package/components/List/components/ListEmptyState.js +2 -2
  331. package/components/List/components/ListItem.js +1 -1
  332. package/components/List/components/ListItemContent.js +5 -5
  333. package/components/List/components/ListItemControls.js +2 -2
  334. package/components/List/components/ListItemControlsButton.js +2 -2
  335. package/components/List/components/ListItemControlsButtonDropdown.js +2 -2
  336. package/components/List/components/ListItemLoading.js +2 -2
  337. package/components/List/components/ListItemSelectable.js +7 -7
  338. package/components/List/components/ListItemTailLeft.js +2 -2
  339. package/components/List/components/ListItemTailRight.js +2 -2
  340. package/components/List/components/ListSortableItem.js +3 -3
  341. package/components/List/components/ListSortableItemControls.js +2 -2
  342. package/components/List/components/ListSortableItemTarget.js +5 -5
  343. package/components/List/components/{ListItemTable.js → ListTableItem.js} +10 -10
  344. package/components/List/components/{ListItemTable.js.map → ListTableItem.js.map} +1 -1
  345. package/components/List/index.js +6 -4
  346. package/components/List/index.js.map +1 -1
  347. package/components/ListMaster/ListMaster.js +1 -1
  348. package/components/ListMaster/components/ListMasterBody.js +1 -1
  349. package/components/ListMaster/components/ListMasterChipGroup.js +2 -2
  350. package/components/ListMaster/components/ListMasterFooter.js +2 -2
  351. package/components/ListMaster/components/ListMasterFooterControls.js +2 -2
  352. package/components/ListMaster/components/ListMasterFooterDescription.js +2 -2
  353. package/components/ListMaster/components/ListMasterHeader.js +3 -3
  354. package/components/ListMaster/components/SelectionControls.js +3 -3
  355. package/components/Loader/LoaderMiddle/LoaderMiddle.js +9 -9
  356. package/components/Loader/LoaderSmall/LoaderSmall.js +11 -11
  357. package/components/LoaderScreen/LoaderScreen.js +6 -6
  358. package/components/Marker/Marker.js +2 -2
  359. package/components/Marker/utils.js +1 -1
  360. package/components/MarkerStatus/MarkerStatus.js +8 -8
  361. package/components/ModalWindow/ModalWindow.js +2 -2
  362. package/components/ModalWindow/components/ModalWindowBody.js +2 -2
  363. package/components/ModalWindow/components/ModalWindowClose.js +1 -1
  364. package/components/ModalWindow/components/ModalWindowContent.js +2 -2
  365. package/components/ModalWindow/components/ModalWindowHeader.js +2 -2
  366. package/components/ModalWindow/components/ModalWindowViewManager.js +2 -2
  367. package/components/MonthYearRange/MonthYearRange.js +4 -4
  368. package/components/MultiselectField/components/MultiselectFieldDropdown.js +2 -2
  369. package/components/MultiselectField/components/MultiselectFieldDropdownContent.js +6 -6
  370. package/components/MultiselectField/components/MultiselectFieldDropdownFooter.js +2 -2
  371. package/components/MultiselectField/components/MultiselectFieldDropdownHeader.js +2 -2
  372. package/components/Notification/Notification.js +3 -3
  373. package/components/Notification/NotificationGrouped.js +1 -1
  374. package/components/Notification/components/NotificationBody.js +1 -1
  375. package/components/Notification/components/NotificationBodyList.js +2 -2
  376. package/components/Notification/components/NotificationClose.js +1 -2
  377. package/components/Notification/components/NotificationClose.js.map +1 -1
  378. package/components/Notification/components/NotificationFooter.js +1 -1
  379. package/components/Notification/components/NotificationGroupedFooter.js +2 -2
  380. package/components/Notification/components/NotificationHeader.js +1 -1
  381. package/components/Notification/components/NotificationIcon.js +1 -1
  382. package/components/Notification/components/NotificationTime.js +1 -1
  383. package/components/OrderedList/OrderedList.js +3 -3
  384. package/components/OrderedList/OrderedListItem.js +3 -3
  385. package/components/Overlay/Overlay.js +2 -2
  386. package/components/Overlay/OverlayMask.js +2 -2
  387. package/components/Overlay/OverlayPanel.js +2 -2
  388. package/components/Page/Page.js +2 -2
  389. package/components/Page/components/BodyPage.js +4 -4
  390. package/components/Page/components/FooterPage.js +2 -2
  391. package/components/Page/components/HeaderPage.js +2 -2
  392. package/components/Pagination/components/PaginationExtended.js +3 -3
  393. package/components/Pagination/components/PaginationNavigationButton.js +2 -2
  394. package/components/Pagination/components/PaginationNavigationExtended.js +2 -2
  395. package/components/Pagination/components/PaginationPageButton.js +3 -7
  396. package/components/Pagination/components/PaginationPageButton.js.map +1 -1
  397. package/components/Pagination/components/PaginationPageEllipsis.js +2 -2
  398. package/components/Pagination/components/PaginationSelect.js +3 -3
  399. package/components/Pagination/utils/paginationUtils.js +1 -1
  400. package/components/Radio/Radio.js +10 -10
  401. package/components/Radio/RadioXGroup.js +9 -9
  402. package/components/Radio/RadioYGroup.js +2 -2
  403. package/components/Row/Row.js +25 -17
  404. package/components/Row/Row.js.map +1 -1
  405. package/components/Row/RowContext.js.map +1 -1
  406. package/components/SMSField/SMSField.js +3 -3
  407. package/components/SMSField/components/RefreshIcon.js +2 -2
  408. package/components/SMSField/components/SMSFieldInput.js +2 -2
  409. package/components/SMSField/components/SMSFieldRefresh.js +2 -3
  410. package/components/SMSField/components/SMSFieldRefresh.js.map +1 -1
  411. package/components/SMSField/components/SMSFieldSubmit.js +2 -3
  412. package/components/SMSField/components/SMSFieldSubmit.js.map +1 -1
  413. package/components/SMSField/components/SMSFieldTooltip.js +1 -1
  414. package/components/SegmentedControl/SegmentedControl.js +10 -10
  415. package/components/SegmentedControl/SegmentedControlSegment.js +4 -4
  416. package/components/SelectExtendedField/SelectExtendedField.js +2 -2
  417. package/components/SelectExtendedField/components/SelectExtendedFieldDropdown.js +1 -1
  418. package/components/SelectExtendedField/components/SelectExtendedFieldDropdownDefault.js +1 -1
  419. package/components/SelectExtendedField/components/SelectExtendedFieldTarget.js +8 -8
  420. package/components/SelectField/SelectField.js +2 -2
  421. package/components/Skeleton/Skeleton.js +5 -5
  422. package/components/SliderExtended/SliderExtended.js +3 -3
  423. package/components/SliderExtended/components/SliderExtendedDot/SliderExtendedDot.js +6 -6
  424. package/components/SliderExtended/components/SliderExtendedMarks/SliderExtendedMark.js +2 -2
  425. package/components/SliderExtended/components/SliderExtendedMarks/SliderExtendedMarks.js +2 -2
  426. package/components/SliderExtended/components/SliderExtendedRail.js +2 -2
  427. package/components/SliderExtended/components/SliderExtendedTooltip/SliderExtendedTooltip.js +5 -5
  428. package/components/SliderExtended/components/SliderExtendedTrack/SliderExtendedTrack.js +7 -7
  429. package/components/SmallInput/SmallInput.js +2 -2
  430. package/components/Spoiler/Spoiler.js +11 -12
  431. package/components/Spoiler/Spoiler.js.map +1 -1
  432. package/components/StatusTracker/StatusTracker.js +3 -3
  433. package/components/StatusTracker/components/StatusTrackerAlert.js +2 -2
  434. package/components/StatusTracker/components/StatusTrackerBody.js +2 -2
  435. package/components/StatusTracker/components/StatusTrackerButton.js +2 -3
  436. package/components/StatusTracker/components/StatusTrackerButton.js.map +1 -1
  437. package/components/StatusTracker/components/StatusTrackerDescription.js +2 -2
  438. package/components/StatusTracker/components/StatusTrackerFooter.js +2 -2
  439. package/components/StatusTracker/components/StatusTrackerHeader.js +2 -2
  440. package/components/StatusTracker/components/StatusTrackerMedia.js +2 -2
  441. package/components/StatusTracker/components/StatusTrackerStatus.js +2 -2
  442. package/components/StatusTracker/components/StatusTrackerStatusGroup.js +2 -2
  443. package/components/StatusTracker/components/StatusTrackerSum.js +2 -2
  444. package/components/StatusTracker/components/StatusTrackerTitle.js +2 -2
  445. package/components/Step/Step.js +11 -11
  446. package/components/Stepper/Stepper.js +9 -9
  447. package/components/Stepper/StepperExtended.js +2 -2
  448. package/components/Stepper/StepperStep.js +3 -3
  449. package/components/Stepper/StepperStepArrowBorder.js +1 -1
  450. package/components/Suggest/SuggestMobileDropdownContent.js +3 -3
  451. package/components/Suggest/useSuggest.js +1 -1
  452. package/components/SuggestField/SuggestField.js +1 -1
  453. package/components/SuggestField/desktop/SuggestFieldDesktop.js +2 -2
  454. package/components/SuggestField/desktop/SuggestFieldDesktopDropdown.js +1 -1
  455. package/components/SuggestField/index.js +1 -1
  456. package/components/SuggestField/mobile/SuggestFieldMobile.js +1 -1
  457. package/components/SuggestField/mobile/SuggestFieldMobileDropdown.js +2 -2
  458. package/components/SuggestField/mobile/SuggestFieldMobileDropdownHint.js +1 -1
  459. package/components/SuggestField/mobile/index.js +1 -1
  460. package/components/SwipeableArea/SwipeableArea.js +9 -9
  461. package/components/Table/ChipPanel.js +2 -2
  462. package/components/Table/ChipPanelLinks.js +2 -2
  463. package/components/Table/FilterPanel.js +3 -3
  464. package/components/Table/MasterTable.js +3 -3
  465. package/components/Table/NoColumns.js +3 -3
  466. package/components/Table/PaginationPanel.js +3 -3
  467. package/components/Table/TableBasic/TableBasic.js +2 -2
  468. package/components/Table/TableBasic/components/TableBasicBody.js +2 -2
  469. package/components/Table/TableBasic/components/TableBasicHeader.js +2 -2
  470. package/components/Table/TableBasic/components/TableBasicRow.js +2 -2
  471. package/components/Table/TableBasicSettings/TableBasicSettings.js +3 -3
  472. package/components/Table/TableBasicSettings/components/ColumnSettingsSortableListItemTarget.js +3 -3
  473. package/components/Table/TableBasicSettings/components/ColumnSettingsStaticListItem.js +2 -2
  474. package/components/Table/TableBasicSettings/components/TableBasicSettingsBody.js +2 -2
  475. package/components/Table/TableBasicSettings/components/TableBasicSettingsFooter.js +2 -2
  476. package/components/Table/TableBasicSettings/components/TableBasicSettingsHeader.js +2 -2
  477. package/components/Table/TableFooter/TableFooter.js +2 -2
  478. package/components/Table/TableFooter/components/TableFooterSummary.js +1 -1
  479. package/components/Table/TableFooter/components/TableFooterSummaryAmount.js +1 -1
  480. package/components/Table/TableFooter/components/TableFooterSummarySelectAllButton.js +1 -1
  481. package/components/Table/TableFooter/components/TableFooterSummarySelectedCount.js +1 -1
  482. package/components/Table/utils.js +1 -1
  483. package/components/Tabs/Tabs.js +6 -7
  484. package/components/Tabs/Tabs.js.map +1 -1
  485. package/components/TabsExtended/TabsExtended.js +3 -3
  486. package/components/TabsExtended/components/TabsExtendedContent.js +2 -2
  487. package/components/TabsExtended/components/TabsExtendedDropdownWrapper.js +2 -2
  488. package/components/TabsExtended/components/TabsExtendedTab.js +2 -2
  489. package/components/TabsExtended/components/TabsExtendedTabButton.js +2 -2
  490. package/components/TabsExtended/components/TabsExtendedTabsWrapper.js +2 -2
  491. package/components/TabsExtended/utils.js +1 -1
  492. package/components/TabsLine/TabsLine.js +2 -2
  493. package/components/TabsLine/components/TabsLineDesktop.js +2 -2
  494. package/components/TabsLine/components/TabsLineDropdown.js +3 -3
  495. package/components/TabsLine/components/TabsLineItem.js +2 -2
  496. package/components/TabsLine/components/TabsLineMobile.js +2 -2
  497. package/components/Tag/Tag.js +6 -6
  498. package/components/TagColor/TagColor.js +11 -11
  499. package/components/TagGroup/TagGroup.js +5 -5
  500. package/components/TextField/TextField.js.map +1 -1
  501. package/components/TextField/TextFieldBase.js.map +1 -1
  502. package/components/ThemeProvider/ThemeProvider.js +1 -1
  503. package/components/ThemeProvider/components/ThemeProviderView.js +1 -1
  504. package/components/Tooltip/components/common/TooltipBody.js +2 -2
  505. package/components/Tooltip/components/common/TooltipLink.js +6 -6
  506. package/components/Tooltip/components/common/TooltipXButton.js +1 -1
  507. package/components/Tooltip/components/desktop/components/TooltipDesktopBase.js +2 -2
  508. package/components/Tooltip/components/desktop/components/TooltipDesktopTip.js +2 -2
  509. package/components/Tooltip/components/mobile/TooltipMobile.js +5 -5
  510. package/components/TopOverlay/TopOverlay.js +7 -7
  511. package/components/TreeView/TreeView.js +2 -2
  512. package/components/TreeView/components/TreeViewGroup.js +1 -1
  513. package/components/TreeView/components/TreeViewNode.js +2 -2
  514. package/components/Typography/Caption.js +10 -13
  515. package/components/Typography/Caption.js.map +1 -1
  516. package/components/Typography/CodeText.js +5 -8
  517. package/components/Typography/CodeText.js.map +1 -1
  518. package/components/Typography/Text.js +12 -15
  519. package/components/Typography/Text.js.map +1 -1
  520. package/components/Typography/Title.js +12 -15
  521. package/components/Typography/Title.js.map +1 -1
  522. package/components/Typography/constants.js +1 -1
  523. package/components/Typography/enums.js.map +1 -1
  524. package/components/Typography/utils.js +16 -0
  525. package/components/Typography/utils.js.map +1 -0
  526. package/components/UnorderedList/UnorderedList.js +3 -3
  527. package/components/UnorderedList/UnorderedListItem.js +3 -3
  528. package/components/UploadZone/UploadZone.js +3 -3
  529. package/components/UploadZone/components/UploadZoneInput.js +2 -2
  530. package/components/UploadZone/index.js +1 -1
  531. package/components/WindowResizeListener/WindowResizeListener.js +1 -1
  532. package/components/index.js +15 -10
  533. package/components/index.js.map +1 -1
  534. package/index.d.ts +235 -62
  535. package/index.js +15 -10
  536. package/index.js.map +1 -1
  537. package/package.json +5 -1
  538. package/styles/triplex-next.css +3105 -2905
  539. package/utils/amountUtils.js +1 -1
  540. package/chunks/Card.module-CLu1m9bk.js +0 -30
  541. package/chunks/Card.module-CLu1m9bk.js.map +0 -1
  542. package/chunks/CheckboxTreeExtended.module-Ca8IIATZ.js +0 -24
  543. package/chunks/CheckboxTreeExtended.module-Ca8IIATZ.js.map +0 -1
  544. package/chunks/Confirm.module-C0lpBDaG.js +0 -24
  545. package/chunks/Confirm.module-C0lpBDaG.js.map +0 -1
  546. package/chunks/DropdownMobile.module-B9iBcFys.js +0 -40
  547. package/chunks/DropdownMobile.module-B9iBcFys.js.map +0 -1
  548. package/chunks/Footer.module-Dh5DGad4.js +0 -12
  549. package/chunks/Footer.module-Dh5DGad4.js.map +0 -1
  550. package/chunks/HeaderLayoutSidebar.module-C5X_ONmU.js.map +0 -1
  551. package/chunks/HeaderTabs.module-BJnr9MEf.js +0 -12
  552. package/chunks/HeaderTabs.module-BJnr9MEf.js.map +0 -1
  553. package/chunks/HeaderTitle.module-CnjBkeOG.js.map +0 -1
  554. package/chunks/ImageGalleryExtendedMain.module-B_xBbn0a.js +0 -28
  555. package/chunks/ImageGalleryExtendedMain.module-B_xBbn0a.js.map +0 -1
  556. package/chunks/IslandAccordion.module-DUpgrikP.js +0 -44
  557. package/chunks/IslandAccordion.module-DUpgrikP.js.map +0 -1
  558. package/chunks/IslandWidgetFooter.module-Df29M7Nl.js +0 -12
  559. package/chunks/IslandWidgetFooter.module-Df29M7Nl.js.map +0 -1
  560. package/chunks/IslandWidgetHeader.module-DQ0x18l9.js +0 -20
  561. package/chunks/IslandWidgetHeader.module-DQ0x18l9.js.map +0 -1
  562. package/chunks/LightBoxContent-W4QNMAOs.js.map +0 -1
  563. package/chunks/LightBoxControls.module-oPcN4Gxu.js +0 -26
  564. package/chunks/LightBoxControls.module-oPcN4Gxu.js.map +0 -1
  565. package/chunks/LightBoxSideOverlayClose.module-GYvWYxDz.js.map +0 -1
  566. package/chunks/ListItemTail.module-CxYWi3hU.js +0 -18
  567. package/chunks/ListItemTail.module-CxYWi3hU.js.map +0 -1
  568. package/chunks/ListMasterFooter.module-D4cCrnyv.js +0 -14
  569. package/chunks/ListMasterFooter.module-D4cCrnyv.js.map +0 -1
  570. package/chunks/ModalWindow.module-CTlJPVK1.js +0 -28
  571. package/chunks/ModalWindow.module-CTlJPVK1.js.map +0 -1
  572. package/chunks/Notification.module-CjhOi6Tq.js +0 -34
  573. package/chunks/Notification.module-CjhOi6Tq.js.map +0 -1
  574. package/chunks/Overlay.module-DhqeO35H.js +0 -30
  575. package/chunks/Overlay.module-DhqeO35H.js.map +0 -1
  576. package/chunks/Page.module-CGt1rmxU.js +0 -15
  577. package/chunks/Page.module-CGt1rmxU.js.map +0 -1
  578. package/chunks/SMSField.module-e8XoqEvJ.js +0 -26
  579. package/chunks/SMSField.module-e8XoqEvJ.js.map +0 -1
  580. package/chunks/SliderExtendedMarks.module-AZEs5z-3.js +0 -24
  581. package/chunks/SliderExtendedMarks.module-AZEs5z-3.js.map +0 -1
  582. package/chunks/StatusTracker.module-DXDAY4Em.js +0 -42
  583. package/chunks/StatusTracker.module-DXDAY4Em.js.map +0 -1
  584. package/chunks/TableFooter.module-wbAjB4tC.js +0 -22
  585. package/chunks/TableFooter.module-wbAjB4tC.js.map +0 -1
  586. package/chunks/TabsExtended.module-iup20rHF.js +0 -26
  587. package/chunks/TabsExtended.module-iup20rHF.js.map +0 -1
  588. package/chunks/TabsLine.module-Caifx7H3.js +0 -36
  589. package/chunks/TabsLine.module-Caifx7H3.js.map +0 -1
  590. package/chunks/TooltipDesktop.module-BSkkFo4C.js +0 -32
  591. package/chunks/TooltipDesktop.module-BSkkFo4C.js.map +0 -1
  592. package/chunks/TreeView.module-UefU342m.js +0 -12
  593. package/chunks/TreeView.module-UefU342m.js.map +0 -1
  594. package/chunks/vendor-Bco_z_Yi.js +0 -17557
  595. package/chunks/vendor-Bco_z_Yi.js.map +0 -1
@@ -0,0 +1,157 @@
1
+ import { jsx } from "react/jsx-runtime";
2
+ import React__default, { useContext, useRef, useCallback, useEffect } from "react";
3
+ import { c as clsx } from "../../chunks/vendor-1HxVLgKa.js";
4
+ import { CarouselContext } from "./CarouselContext.js";
5
+ import { mergeRefs, useLatestRef } from "./utils.js";
6
+ import { ECarouselOrientation, ECarouselScrollMode } from "./enums.js";
7
+ import { ButtonBase } from "../Button/ButtonBase.js";
8
+ import { s as styles } from "../../chunks/Carousel.module-DA8j7NC7.js";
9
+ const ORIENTATION_TO_NAVIGATION_KEYS = {
10
+ [ECarouselOrientation.HORIZONTAL]: ["ArrowRight", "ArrowLeft"],
11
+ [ECarouselOrientation.VERTICAL]: ["ArrowDown", "ArrowUp"]
12
+ };
13
+ const CarouselIndicators = React__default.forwardRef(
14
+ ({ className, onKeyDown, indicatorProps, renderIndicator, ...restProps }, ref) => {
15
+ const { currentIndex, orientation, scrollMode, activeIndices, goToSlide, orientationRef, currentIndexRef } = useContext(CarouselContext);
16
+ const containerRef = useRef(null);
17
+ const combinedRef = mergeRefs(ref, containerRef);
18
+ const buttonRefs = useRef(/* @__PURE__ */ new Map());
19
+ const indicatorRefsCache = useRef(/* @__PURE__ */ new Map());
20
+ const clickHandlersCache = useRef(/* @__PURE__ */ new Map());
21
+ const indicatorPropsRef = useLatestRef(indicatorProps);
22
+ const activeIndicesRef = useLatestRef(activeIndices);
23
+ const totalPages = activeIndices.length;
24
+ const getIndicatorRef = useCallback((slideIndex) => {
25
+ if (!indicatorRefsCache.current.has(slideIndex)) {
26
+ indicatorRefsCache.current.set(slideIndex, (node) => {
27
+ if (node) {
28
+ buttonRefs.current.set(slideIndex, node);
29
+ } else {
30
+ buttonRefs.current.delete(slideIndex);
31
+ }
32
+ });
33
+ }
34
+ return indicatorRefsCache.current.get(slideIndex);
35
+ }, []);
36
+ const getIndicatorClickHandler = useCallback(
37
+ (slideIndex) => {
38
+ if (!clickHandlersCache.current.has(slideIndex)) {
39
+ clickHandlersCache.current.set(slideIndex, (event) => {
40
+ var _a;
41
+ goToSlide(slideIndex);
42
+ const currentPropsInput = indicatorPropsRef.current;
43
+ if (!currentPropsInput) return;
44
+ const latestActiveIndices = activeIndicesRef.current;
45
+ const indexInArray = latestActiveIndices.indexOf(slideIndex);
46
+ if (indexInArray !== -1) {
47
+ const page = indexInArray + 1;
48
+ const selected = currentIndexRef.current === slideIndex;
49
+ const resolvedProps = typeof currentPropsInput === "function" ? currentPropsInput({ index: indexInArray, page, selected }) : currentPropsInput;
50
+ (_a = resolvedProps == null ? void 0 : resolvedProps.onClick) == null ? void 0 : _a.call(resolvedProps, event);
51
+ }
52
+ });
53
+ }
54
+ return clickHandlersCache.current.get(slideIndex);
55
+ },
56
+ [goToSlide]
57
+ );
58
+ const handleKeyDown = useCallback(
59
+ (event) => {
60
+ const [nextKey, prevKey] = ORIENTATION_TO_NAVIGATION_KEYS[orientationRef.current];
61
+ const nextKeyMatched = event.key === nextKey;
62
+ const prevKeyMatched = event.key === prevKey;
63
+ const homeKeyMatched = event.key === "Home";
64
+ const endKeyMatched = event.key === "End";
65
+ if (nextKeyMatched || prevKeyMatched || homeKeyMatched || endKeyMatched) {
66
+ const currentIndexInArray = activeIndices.indexOf(currentIndexRef.current);
67
+ if (currentIndexInArray !== -1) {
68
+ event.preventDefault();
69
+ let nextIndexInArray = currentIndexInArray;
70
+ if (nextKeyMatched) {
71
+ nextIndexInArray = (currentIndexInArray + 1) % totalPages;
72
+ } else if (prevKeyMatched) {
73
+ nextIndexInArray = (currentIndexInArray - 1 + totalPages) % totalPages;
74
+ } else if (homeKeyMatched) {
75
+ nextIndexInArray = 0;
76
+ } else if (endKeyMatched) {
77
+ nextIndexInArray = totalPages - 1;
78
+ }
79
+ const nextSlideIndex = activeIndices[nextIndexInArray];
80
+ goToSlide(nextSlideIndex);
81
+ }
82
+ }
83
+ onKeyDown == null ? void 0 : onKeyDown(event);
84
+ },
85
+ [activeIndices, totalPages, goToSlide, onKeyDown]
86
+ );
87
+ useEffect(() => {
88
+ const activeSet = new Set(activeIndices);
89
+ for (const key of indicatorRefsCache.current.keys()) {
90
+ if (!activeSet.has(key)) {
91
+ indicatorRefsCache.current.delete(key);
92
+ buttonRefs.current.delete(key);
93
+ }
94
+ }
95
+ for (const key of clickHandlersCache.current.keys()) {
96
+ if (!activeSet.has(key)) {
97
+ clickHandlersCache.current.delete(key);
98
+ }
99
+ }
100
+ }, [activeIndices]);
101
+ useEffect(() => {
102
+ const container = containerRef.current;
103
+ if (!(container == null ? void 0 : container.contains(document.activeElement))) return;
104
+ const rafId = requestAnimationFrame(() => {
105
+ const activeButton = buttonRefs.current.get(currentIndexRef.current);
106
+ activeButton == null ? void 0 : activeButton.focus();
107
+ });
108
+ return () => cancelAnimationFrame(rafId);
109
+ }, [currentIndex]);
110
+ if (scrollMode === ECarouselScrollMode.ITEM || totalPages < 1) return null;
111
+ return /* @__PURE__ */ jsx(
112
+ "div",
113
+ {
114
+ ...restProps,
115
+ className: clsx(styles.indicators, className),
116
+ role: "tablist",
117
+ "aria-orientation": orientation,
118
+ onKeyDown: handleKeyDown,
119
+ ref: combinedRef,
120
+ children: activeIndices.map((slideIndex, index) => {
121
+ const selected = currentIndex === slideIndex;
122
+ const page = index + 1;
123
+ const resolvedIndicatorProps = typeof indicatorProps === "function" ? indicatorProps({ index, page, selected }) : indicatorProps;
124
+ const indicatorRef = getIndicatorRef(slideIndex);
125
+ const indicatorClickHandler = getIndicatorClickHandler(slideIndex);
126
+ const providedIndicatorProps = {
127
+ ...resolvedIndicatorProps,
128
+ className: clsx(
129
+ styles.indicator,
130
+ { [styles.active]: selected },
131
+ resolvedIndicatorProps == null ? void 0 : resolvedIndicatorProps.className
132
+ ),
133
+ role: "tab",
134
+ tabIndex: selected ? 0 : -1,
135
+ "aria-selected": selected,
136
+ onClick: indicatorClickHandler
137
+ };
138
+ if (renderIndicator) {
139
+ return /* @__PURE__ */ jsx(React__default.Fragment, { children: renderIndicator({
140
+ index,
141
+ page,
142
+ selected,
143
+ props: providedIndicatorProps,
144
+ ref: indicatorRef
145
+ }) }, slideIndex);
146
+ }
147
+ return /* @__PURE__ */ jsx(ButtonBase, { ...providedIndicatorProps, ref: indicatorRef }, slideIndex);
148
+ })
149
+ }
150
+ );
151
+ }
152
+ );
153
+ CarouselIndicators.displayName = "Carousel.Indicators";
154
+ export {
155
+ CarouselIndicators
156
+ };
157
+ //# sourceMappingURL=CarouselIndicators.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CarouselIndicators.js","sources":["../../../src/components/Carousel/CarouselIndicators.tsx"],"sourcesContent":["import React, { useContext, useRef, useCallback, useEffect } from \"react\";\nimport clsx from \"clsx\";\nimport { ICarouselIndicatorsProps, TCarouselIndicatorProps } from \"./types\";\nimport { CarouselContext } from \"./CarouselContext\";\nimport { mergeRefs, useLatestRef } from \"./utils\";\nimport { ECarouselScrollMode, ECarouselOrientation } from \"./enums\";\nimport { ButtonBase } from \"../Button/ButtonBase\";\nimport styles from \"./styles/Carousel.module.less\";\n\nconst ORIENTATION_TO_NAVIGATION_KEYS = {\n [ECarouselOrientation.HORIZONTAL]: [\"ArrowRight\", \"ArrowLeft\"],\n [ECarouselOrientation.VERTICAL]: [\"ArrowDown\", \"ArrowUp\"],\n} as const;\n\nexport const CarouselIndicators = React.forwardRef<HTMLDivElement, ICarouselIndicatorsProps>(\n ({ className, onKeyDown, indicatorProps, renderIndicator, ...restProps }, ref) => {\n const { currentIndex, orientation, scrollMode, activeIndices, goToSlide, orientationRef, currentIndexRef } =\n useContext(CarouselContext);\n const containerRef = useRef<HTMLDivElement | null>(null);\n const combinedRef = mergeRefs(ref, containerRef);\n\n const buttonRefs = useRef<Map<number, HTMLButtonElement>>(new Map());\n const indicatorRefsCache = useRef<Map<number, React.RefCallback<HTMLButtonElement>>>(new Map());\n const clickHandlersCache = useRef<Map<number, React.MouseEventHandler<HTMLButtonElement>>>(new Map());\n\n // Храним актуальный indicatorProps в рефе для стабильных колбэков клика\n const indicatorPropsRef = useLatestRef(indicatorProps);\n // Защита от устаревшего замыкания activeIndices в кэшированных кликах\n const activeIndicesRef = useLatestRef(activeIndices);\n\n const totalPages = activeIndices.length;\n\n const getIndicatorRef = useCallback((slideIndex: number) => {\n if (!indicatorRefsCache.current.has(slideIndex)) {\n indicatorRefsCache.current.set(slideIndex, (node) => {\n if (node) {\n buttonRefs.current.set(slideIndex, node);\n } else {\n buttonRefs.current.delete(slideIndex);\n }\n });\n }\n // Безопасно: запись выше гарантирует наличие ключа в кэше.\n return indicatorRefsCache.current.get(slideIndex)!;\n }, []);\n\n const getIndicatorClickHandler = useCallback(\n (slideIndex: number) => {\n if (!clickHandlersCache.current.has(slideIndex)) {\n clickHandlersCache.current.set(slideIndex, (event) => {\n goToSlide(slideIndex);\n\n const currentPropsInput = indicatorPropsRef.current;\n if (!currentPropsInput) return;\n\n const latestActiveIndices = activeIndicesRef.current;\n const indexInArray = latestActiveIndices.indexOf(slideIndex);\n\n if (indexInArray !== -1) {\n const page = indexInArray + 1;\n const selected = currentIndexRef.current === slideIndex;\n const resolvedProps =\n typeof currentPropsInput === \"function\"\n ? currentPropsInput({ index: indexInArray, page, selected })\n : currentPropsInput;\n\n resolvedProps?.onClick?.(event);\n }\n });\n }\n // Безопасно: запись выше гарантирует наличие ключа в кэше.\n return clickHandlersCache.current.get(slideIndex)!;\n },\n [goToSlide],\n );\n\n const handleKeyDown = useCallback<React.KeyboardEventHandler<HTMLDivElement>>(\n (event) => {\n const [nextKey, prevKey] = ORIENTATION_TO_NAVIGATION_KEYS[orientationRef.current];\n const nextKeyMatched = event.key === nextKey;\n const prevKeyMatched = event.key === prevKey;\n const homeKeyMatched = event.key === \"Home\";\n const endKeyMatched = event.key === \"End\";\n\n if (nextKeyMatched || prevKeyMatched || homeKeyMatched || endKeyMatched) {\n const currentIndexInArray = activeIndices.indexOf(currentIndexRef.current);\n\n if (currentIndexInArray !== -1) {\n event.preventDefault();\n\n let nextIndexInArray = currentIndexInArray;\n if (nextKeyMatched) {\n nextIndexInArray = (currentIndexInArray + 1) % totalPages;\n } else if (prevKeyMatched) {\n nextIndexInArray = (currentIndexInArray - 1 + totalPages) % totalPages;\n } else if (homeKeyMatched) {\n nextIndexInArray = 0;\n } else if (endKeyMatched) {\n nextIndexInArray = totalPages - 1;\n }\n\n const nextSlideIndex = activeIndices[nextIndexInArray];\n goToSlide(nextSlideIndex);\n }\n }\n\n onKeyDown?.(event);\n },\n [activeIndices, totalPages, goToSlide, onKeyDown],\n );\n\n useEffect(() => {\n const activeSet = new Set(activeIndices);\n\n for (const key of indicatorRefsCache.current.keys()) {\n if (!activeSet.has(key)) {\n indicatorRefsCache.current.delete(key);\n buttonRefs.current.delete(key);\n }\n }\n for (const key of clickHandlersCache.current.keys()) {\n if (!activeSet.has(key)) {\n clickHandlersCache.current.delete(key);\n }\n }\n }, [activeIndices]);\n\n useEffect(() => {\n const container = containerRef.current;\n if (!container?.contains(document.activeElement)) return;\n\n const rafId = requestAnimationFrame(() => {\n const activeButton = buttonRefs.current.get(currentIndexRef.current);\n activeButton?.focus();\n });\n\n return () => cancelAnimationFrame(rafId);\n }, [currentIndex]);\n\n if (scrollMode === ECarouselScrollMode.ITEM || totalPages < 1) return null;\n\n return (\n <div\n {...restProps}\n className={clsx(styles.indicators, className)}\n role=\"tablist\"\n aria-orientation={orientation}\n onKeyDown={handleKeyDown}\n ref={combinedRef}\n >\n {activeIndices.map((slideIndex, index) => {\n const selected = currentIndex === slideIndex;\n const page = index + 1;\n\n const resolvedIndicatorProps =\n typeof indicatorProps === \"function\"\n ? indicatorProps({ index, page, selected })\n : indicatorProps;\n\n const indicatorRef = getIndicatorRef(slideIndex);\n const indicatorClickHandler = getIndicatorClickHandler(slideIndex);\n\n const providedIndicatorProps: TCarouselIndicatorProps = {\n ...resolvedIndicatorProps,\n className: clsx(\n styles.indicator,\n { [styles.active]: selected },\n resolvedIndicatorProps?.className,\n ),\n role: \"tab\",\n tabIndex: selected ? 0 : -1,\n \"aria-selected\": selected,\n onClick: indicatorClickHandler,\n };\n\n if (renderIndicator) {\n return (\n <React.Fragment key={slideIndex}>\n {renderIndicator({\n index,\n page,\n selected,\n props: providedIndicatorProps,\n ref: indicatorRef,\n })}\n </React.Fragment>\n );\n }\n\n return <ButtonBase key={slideIndex} {...providedIndicatorProps} ref={indicatorRef} />;\n })}\n </div>\n );\n },\n);\n\nCarouselIndicators.displayName = \"Carousel.Indicators\";\n"],"names":["React"],"mappings":"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"}
@@ -0,0 +1,34 @@
1
+ import { jsx } from "react/jsx-runtime";
2
+ import React__default, { useContext, useRef, useCallback } from "react";
3
+ import { c as clsx } from "../../chunks/vendor-1HxVLgKa.js";
4
+ import { CarouselContext } from "./CarouselContext.js";
5
+ import { mergeRefs } from "./utils.js";
6
+ import { s as styles } from "../../chunks/Carousel.module-DA8j7NC7.js";
7
+ const CarouselItem = React__default.forwardRef(
8
+ ({ children, className, index, ...restProps }, ref) => {
9
+ const { slideRefs } = useContext(CarouselContext);
10
+ const lastRegisteredIndexRef = useRef(null);
11
+ const registerItemRef = useCallback(
12
+ (node) => {
13
+ if (node) {
14
+ if (lastRegisteredIndexRef.current !== null && lastRegisteredIndexRef.current !== index) {
15
+ slideRefs.current.delete(lastRegisteredIndexRef.current);
16
+ }
17
+ slideRefs.current.set(index, node);
18
+ lastRegisteredIndexRef.current = index;
19
+ } else if (lastRegisteredIndexRef.current !== null) {
20
+ slideRefs.current.delete(lastRegisteredIndexRef.current);
21
+ lastRegisteredIndexRef.current = null;
22
+ }
23
+ },
24
+ [index]
25
+ );
26
+ const combinedRef = mergeRefs(ref, registerItemRef);
27
+ return /* @__PURE__ */ jsx("div", { className: clsx(styles.slide, className), role: "group", ...restProps, ref: combinedRef, children });
28
+ }
29
+ );
30
+ CarouselItem.displayName = "Carousel.Item";
31
+ export {
32
+ CarouselItem
33
+ };
34
+ //# sourceMappingURL=CarouselItem.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CarouselItem.js","sources":["../../../src/components/Carousel/CarouselItem.tsx"],"sourcesContent":["import React, { useContext, useRef, useCallback } from \"react\";\nimport clsx from \"clsx\";\nimport { ICarouselItemProps } from \"./types\";\nimport { CarouselContext } from \"./CarouselContext\";\nimport { mergeRefs } from \"./utils\";\nimport styles from \"./styles/Carousel.module.less\";\n\nexport const CarouselItem = React.forwardRef<HTMLDivElement, ICarouselItemProps>(\n ({ children, className, index, ...restProps }, ref) => {\n const { slideRefs } = useContext(CarouselContext);\n\n const lastRegisteredIndexRef = useRef<number | null>(null);\n\n const registerItemRef = useCallback(\n (node: HTMLDivElement | null) => {\n if (node) {\n if (lastRegisteredIndexRef.current !== null && lastRegisteredIndexRef.current !== index) {\n slideRefs.current.delete(lastRegisteredIndexRef.current);\n }\n slideRefs.current.set(index, node);\n lastRegisteredIndexRef.current = index;\n } else if (lastRegisteredIndexRef.current !== null) {\n slideRefs.current.delete(lastRegisteredIndexRef.current);\n lastRegisteredIndexRef.current = null;\n }\n },\n [index],\n );\n\n const combinedRef = mergeRefs(ref, registerItemRef);\n\n return (\n <div className={clsx(styles.slide, className)} role=\"group\" {...restProps} ref={combinedRef}>\n {children}\n </div>\n );\n },\n);\n\nCarouselItem.displayName = \"Carousel.Item\";\n"],"names":["React"],"mappings":";;;;;;AAOO,MAAM,eAAeA,eAAM;AAAA,EAC9B,CAAC,EAAE,UAAU,WAAW,OAAO,GAAG,UAAA,GAAa,QAAQ;AACnD,UAAM,EAAE,UAAA,IAAc,WAAW,eAAe;AAEhD,UAAM,yBAAyB,OAAsB,IAAI;AAEzD,UAAM,kBAAkB;AAAA,MACpB,CAAC,SAAgC;AAC7B,YAAI,MAAM;AACN,cAAI,uBAAuB,YAAY,QAAQ,uBAAuB,YAAY,OAAO;AACrF,sBAAU,QAAQ,OAAO,uBAAuB,OAAO;AAAA,UAC3D;AACA,oBAAU,QAAQ,IAAI,OAAO,IAAI;AACjC,iCAAuB,UAAU;AAAA,QACrC,WAAW,uBAAuB,YAAY,MAAM;AAChD,oBAAU,QAAQ,OAAO,uBAAuB,OAAO;AACvD,iCAAuB,UAAU;AAAA,QACrC;AAAA,MACJ;AAAA,MACA,CAAC,KAAK;AAAA,IAAA;AAGV,UAAM,cAAc,UAAU,KAAK,eAAe;AAElD,WACI,oBAAC,OAAA,EAAI,WAAW,KAAK,OAAO,OAAO,SAAS,GAAG,MAAK,SAAS,GAAG,WAAW,KAAK,aAC3E,UACL;AAAA,EAER;AACJ;AAEA,aAAa,cAAc;"}
@@ -0,0 +1,36 @@
1
+ import { jsx } from "react/jsx-runtime";
2
+ import React__default, { useContext } from "react";
3
+ import { c as clsx } from "../../chunks/vendor-1HxVLgKa.js";
4
+ import { CarouselContext } from "./CarouselContext.js";
5
+ import { mergeRefs } from "./utils.js";
6
+ import { ORIENTATION_TRANSFORM } from "./constants.js";
7
+ import { s as styles } from "../../chunks/Carousel.module-DA8j7NC7.js";
8
+ const CarouselTrack = React__default.forwardRef(
9
+ ({ children, className, style, ...restProps }, ref) => {
10
+ const { gap, orientation, offset, trackRef } = useContext(CarouselContext);
11
+ const combinedRef = mergeRefs(ref, trackRef);
12
+ const runtimeStyle = {
13
+ "--triplex-next-runtime-carousel-transform": ORIENTATION_TRANSFORM[orientation](-offset),
14
+ "--triplex-next-runtime-carousel-gap": `${gap}px`
15
+ };
16
+ return /* @__PURE__ */ jsx(
17
+ "div",
18
+ {
19
+ className: clsx(styles.track, className),
20
+ role: "presentation",
21
+ ...restProps,
22
+ style: {
23
+ ...style,
24
+ ...runtimeStyle
25
+ },
26
+ ref: combinedRef,
27
+ children
28
+ }
29
+ );
30
+ }
31
+ );
32
+ CarouselTrack.displayName = "Carousel.Track";
33
+ export {
34
+ CarouselTrack
35
+ };
36
+ //# sourceMappingURL=CarouselTrack.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CarouselTrack.js","sources":["../../../src/components/Carousel/CarouselTrack.tsx"],"sourcesContent":["import React, { useContext } from \"react\";\nimport clsx from \"clsx\";\nimport { ICarouselTrackProps } from \"./types\";\nimport { CarouselContext } from \"./CarouselContext\";\nimport { mergeRefs } from \"./utils\";\nimport { ORIENTATION_TRANSFORM } from \"./constants\";\nimport styles from \"./styles/Carousel.module.less\";\n\nexport const CarouselTrack = React.forwardRef<HTMLDivElement, ICarouselTrackProps>(\n ({ children, className, style, ...restProps }, ref) => {\n const { gap, orientation, offset, trackRef } = useContext(CarouselContext);\n const combinedRef = mergeRefs(ref, trackRef);\n\n const runtimeStyle = {\n \"--triplex-next-runtime-carousel-transform\": ORIENTATION_TRANSFORM[orientation](-offset),\n \"--triplex-next-runtime-carousel-gap\": `${gap}px`,\n };\n\n return (\n <div\n className={clsx(styles.track, className)}\n role=\"presentation\"\n {...restProps}\n style={{\n ...style,\n ...runtimeStyle,\n }}\n ref={combinedRef}\n >\n {children}\n </div>\n );\n },\n);\n\nCarouselTrack.displayName = \"Carousel.Track\";\n"],"names":["React"],"mappings":";;;;;;;AAQO,MAAM,gBAAgBA,eAAM;AAAA,EAC/B,CAAC,EAAE,UAAU,WAAW,OAAO,GAAG,UAAA,GAAa,QAAQ;AACnD,UAAM,EAAE,KAAK,aAAa,QAAQ,SAAA,IAAa,WAAW,eAAe;AACzE,UAAM,cAAc,UAAU,KAAK,QAAQ;AAE3C,UAAM,eAAe;AAAA,MACjB,6CAA6C,sBAAsB,WAAW,EAAE,CAAC,MAAM;AAAA,MACvF,uCAAuC,GAAG,GAAG;AAAA,IAAA;AAGjD,WACI;AAAA,MAAC;AAAA,MAAA;AAAA,QACG,WAAW,KAAK,OAAO,OAAO,SAAS;AAAA,QACvC,MAAK;AAAA,QACJ,GAAG;AAAA,QACJ,OAAO;AAAA,UACH,GAAG;AAAA,UACH,GAAG;AAAA,QAAA;AAAA,QAEP,KAAK;AAAA,QAEJ;AAAA,MAAA;AAAA,IAAA;AAAA,EAGb;AACJ;AAEA,cAAc,cAAc;"}
@@ -0,0 +1,159 @@
1
+ import { jsx } from "react/jsx-runtime";
2
+ import React__default, { useContext, useRef, useCallback, useEffect } from "react";
3
+ import { c as clsx } from "../../chunks/vendor-1HxVLgKa.js";
4
+ import { CarouselContext } from "./CarouselContext.js";
5
+ import { mergeRefs } from "./utils.js";
6
+ import { ORIENTATION_TRANSFORM } from "./constants.js";
7
+ import { ECarouselOrientation } from "./enums.js";
8
+ import { s as styles } from "../../chunks/Carousel.module-DA8j7NC7.js";
9
+ const ORIENTATION_TO_TOUCH_KEY = {
10
+ [ECarouselOrientation.HORIZONTAL]: "clientX",
11
+ [ECarouselOrientation.VERTICAL]: "clientY"
12
+ };
13
+ const ORIENTATION_TO_CROSS_TOUCH_KEY = {
14
+ [ECarouselOrientation.HORIZONTAL]: "clientY",
15
+ [ECarouselOrientation.VERTICAL]: "clientX"
16
+ };
17
+ const CarouselViewport = React__default.forwardRef(
18
+ ({ children, className, style, onTouchStart, ...restProps }, ref) => {
19
+ const {
20
+ viewportPaddingStyle,
21
+ nextSlide,
22
+ prevSlide,
23
+ offsetRef,
24
+ maxOffsetRef,
25
+ orientationRef,
26
+ viewportRef,
27
+ trackRef
28
+ } = useContext(CarouselContext);
29
+ const combinedRef = mergeRefs(ref, viewportRef);
30
+ const draggingRef = useRef(false);
31
+ const scrollingRef = useRef(null);
32
+ const startCoordsRef = useRef({ clientX: 0, clientY: 0 });
33
+ const startOffsetRef = useRef(0);
34
+ const dragDistanceRef = useRef(0);
35
+ const touchMoveHandlerRef = useRef(null);
36
+ const touchEndHandlerRef = useRef(null);
37
+ const clearTouchListeners = useCallback(() => {
38
+ if (touchMoveHandlerRef.current) {
39
+ window.removeEventListener("touchmove", touchMoveHandlerRef.current);
40
+ touchMoveHandlerRef.current = null;
41
+ }
42
+ if (touchEndHandlerRef.current) {
43
+ window.removeEventListener("touchend", touchEndHandlerRef.current);
44
+ window.removeEventListener("touchcancel", touchEndHandlerRef.current);
45
+ touchEndHandlerRef.current = null;
46
+ }
47
+ }, []);
48
+ const handleTouchMove = useCallback((event) => {
49
+ if (!draggingRef.current || !trackRef.current) return;
50
+ const touch = event.targetTouches[0];
51
+ if (!touch) return;
52
+ const orientation = orientationRef.current;
53
+ const touchKey = ORIENTATION_TO_TOUCH_KEY[orientation];
54
+ const crossKey = ORIENTATION_TO_CROSS_TOUCH_KEY[orientation];
55
+ const dragDistance = touch[touchKey] - startCoordsRef.current[touchKey];
56
+ const crossDistance = touch[crossKey] - startCoordsRef.current[crossKey];
57
+ if (scrollingRef.current === null) {
58
+ const absMain = Math.abs(dragDistance);
59
+ const absCross = Math.abs(crossDistance);
60
+ if (absMain > 5 || absCross > 5) {
61
+ scrollingRef.current = absCross > absMain;
62
+ }
63
+ }
64
+ if (scrollingRef.current) {
65
+ return;
66
+ }
67
+ if (event.cancelable) {
68
+ event.preventDefault();
69
+ }
70
+ dragDistanceRef.current = dragDistance;
71
+ const maxOffset = maxOffsetRef.current;
72
+ const targetOffset = startOffsetRef.current - dragDistance;
73
+ let currentTranslate = -targetOffset;
74
+ if (targetOffset < 0) {
75
+ currentTranslate = -targetOffset / 3;
76
+ } else if (targetOffset > maxOffset) {
77
+ currentTranslate = -(maxOffset + (targetOffset - maxOffset) / 3);
78
+ }
79
+ trackRef.current.style.transform = ORIENTATION_TRANSFORM[orientation](currentTranslate);
80
+ trackRef.current.style.transition = "none";
81
+ }, []);
82
+ const handleTouchEnd = useCallback(
83
+ (event) => {
84
+ if (!draggingRef.current) return;
85
+ draggingRef.current = false;
86
+ const scrolling = scrollingRef.current;
87
+ scrollingRef.current = null;
88
+ clearTouchListeners();
89
+ if (!trackRef.current) return;
90
+ trackRef.current.style.transition = "";
91
+ if (event.type === "touchcancel" || scrolling) {
92
+ trackRef.current.style.transform = "";
93
+ return;
94
+ }
95
+ const finalDrag = dragDistanceRef.current;
96
+ const threshold = 50;
97
+ if (finalDrag > threshold) {
98
+ prevSlide();
99
+ } else if (finalDrag < -threshold) {
100
+ nextSlide();
101
+ }
102
+ trackRef.current.style.transform = "";
103
+ },
104
+ [nextSlide, prevSlide, clearTouchListeners]
105
+ );
106
+ const handleTouchStart = useCallback(
107
+ (event) => {
108
+ const touch = event.targetTouches[0];
109
+ if (!touch) return;
110
+ draggingRef.current = true;
111
+ scrollingRef.current = null;
112
+ startCoordsRef.current = {
113
+ clientX: touch.clientX,
114
+ clientY: touch.clientY
115
+ };
116
+ startOffsetRef.current = offsetRef.current;
117
+ dragDistanceRef.current = 0;
118
+ if (trackRef.current) {
119
+ trackRef.current.style.transition = "none";
120
+ }
121
+ clearTouchListeners();
122
+ touchMoveHandlerRef.current = handleTouchMove;
123
+ touchEndHandlerRef.current = handleTouchEnd;
124
+ window.addEventListener("touchmove", handleTouchMove, { passive: false });
125
+ window.addEventListener("touchend", handleTouchEnd);
126
+ window.addEventListener("touchcancel", handleTouchEnd);
127
+ onTouchStart == null ? void 0 : onTouchStart(event);
128
+ },
129
+ [handleTouchMove, handleTouchEnd, clearTouchListeners, onTouchStart]
130
+ );
131
+ useEffect(() => {
132
+ return () => {
133
+ clearTouchListeners();
134
+ };
135
+ }, [clearTouchListeners]);
136
+ const runtimeStyle = {
137
+ "--triplex-next-runtime-carousel-viewport-padding": viewportPaddingStyle
138
+ };
139
+ return /* @__PURE__ */ jsx(
140
+ "div",
141
+ {
142
+ className: clsx(styles.viewPort, className),
143
+ ...restProps,
144
+ onTouchStart: handleTouchStart,
145
+ style: {
146
+ ...style,
147
+ ...runtimeStyle
148
+ },
149
+ ref: combinedRef,
150
+ children
151
+ }
152
+ );
153
+ }
154
+ );
155
+ CarouselViewport.displayName = "Carousel.Viewport";
156
+ export {
157
+ CarouselViewport
158
+ };
159
+ //# sourceMappingURL=CarouselViewport.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CarouselViewport.js","sources":["../../../src/components/Carousel/CarouselViewport.tsx"],"sourcesContent":["import React, { useContext, useRef, useCallback, useEffect } from \"react\";\nimport clsx from \"clsx\";\nimport { ICarouselViewportProps } from \"./types\";\nimport { CarouselContext } from \"./CarouselContext\";\nimport { mergeRefs } from \"./utils\";\nimport { ORIENTATION_TRANSFORM } from \"./constants\";\nimport { ECarouselOrientation } from \"./enums\";\nimport styles from \"./styles/Carousel.module.less\";\n\nconst ORIENTATION_TO_TOUCH_KEY = {\n [ECarouselOrientation.HORIZONTAL]: \"clientX\",\n [ECarouselOrientation.VERTICAL]: \"clientY\",\n} as const;\n\nconst ORIENTATION_TO_CROSS_TOUCH_KEY = {\n [ECarouselOrientation.HORIZONTAL]: \"clientY\",\n [ECarouselOrientation.VERTICAL]: \"clientX\",\n} as const;\n\nexport const CarouselViewport = React.forwardRef<HTMLDivElement, ICarouselViewportProps>(\n ({ children, className, style, onTouchStart, ...restProps }, ref) => {\n const {\n viewportPaddingStyle,\n nextSlide,\n prevSlide,\n offsetRef,\n maxOffsetRef,\n orientationRef,\n viewportRef,\n trackRef,\n } = useContext(CarouselContext);\n const combinedRef = mergeRefs(ref, viewportRef);\n\n const draggingRef = useRef(false);\n const scrollingRef = useRef<boolean | null>(null);\n\n const startCoordsRef = useRef({ clientX: 0, clientY: 0 });\n const startOffsetRef = useRef(0);\n const dragDistanceRef = useRef(0);\n\n const touchMoveHandlerRef = useRef<typeof handleTouchMove | null>(null);\n const touchEndHandlerRef = useRef<typeof handleTouchEnd | null>(null);\n\n const clearTouchListeners = useCallback(() => {\n if (touchMoveHandlerRef.current) {\n window.removeEventListener(\"touchmove\", touchMoveHandlerRef.current);\n touchMoveHandlerRef.current = null;\n }\n if (touchEndHandlerRef.current) {\n window.removeEventListener(\"touchend\", touchEndHandlerRef.current);\n window.removeEventListener(\"touchcancel\", touchEndHandlerRef.current);\n touchEndHandlerRef.current = null;\n }\n }, []);\n\n const handleTouchMove = useCallback((event: TouchEvent) => {\n if (!draggingRef.current || !trackRef.current) return;\n\n const touch = event.targetTouches[0];\n if (!touch) return;\n\n const orientation = orientationRef.current;\n const touchKey = ORIENTATION_TO_TOUCH_KEY[orientation];\n const crossKey = ORIENTATION_TO_CROSS_TOUCH_KEY[orientation];\n\n const dragDistance = touch[touchKey] - startCoordsRef.current[touchKey];\n const crossDistance = touch[crossKey] - startCoordsRef.current[crossKey];\n\n if (scrollingRef.current === null) {\n const absMain = Math.abs(dragDistance);\n const absCross = Math.abs(crossDistance);\n\n if (absMain > 5 || absCross > 5) {\n scrollingRef.current = absCross > absMain;\n }\n }\n\n if (scrollingRef.current) {\n return;\n }\n\n if (event.cancelable) {\n event.preventDefault();\n }\n\n dragDistanceRef.current = dragDistance;\n const maxOffset = maxOffsetRef.current;\n const targetOffset = startOffsetRef.current - dragDistance;\n let currentTranslate = -targetOffset;\n\n if (targetOffset < 0) {\n currentTranslate = -targetOffset / 3;\n } else if (targetOffset > maxOffset) {\n currentTranslate = -(maxOffset + (targetOffset - maxOffset) / 3);\n }\n\n trackRef.current.style.transform = ORIENTATION_TRANSFORM[orientation](currentTranslate);\n trackRef.current.style.transition = \"none\";\n }, []);\n\n const handleTouchEnd = useCallback(\n (event: TouchEvent) => {\n if (!draggingRef.current) return;\n\n draggingRef.current = false;\n\n const scrolling = scrollingRef.current;\n scrollingRef.current = null;\n\n clearTouchListeners();\n\n if (!trackRef.current) return;\n\n trackRef.current.style.transition = \"\";\n\n if (event.type === \"touchcancel\" || scrolling) {\n trackRef.current.style.transform = \"\";\n return;\n }\n\n const finalDrag = dragDistanceRef.current;\n const threshold = 50;\n\n if (finalDrag > threshold) {\n prevSlide();\n } else if (finalDrag < -threshold) {\n nextSlide();\n }\n\n trackRef.current.style.transform = \"\";\n },\n [nextSlide, prevSlide, clearTouchListeners],\n );\n\n const handleTouchStart = useCallback<React.TouchEventHandler<HTMLDivElement>>(\n (event) => {\n const touch = event.targetTouches[0];\n if (!touch) return;\n\n draggingRef.current = true;\n scrollingRef.current = null;\n\n startCoordsRef.current = {\n clientX: touch.clientX,\n clientY: touch.clientY,\n };\n\n startOffsetRef.current = offsetRef.current;\n dragDistanceRef.current = 0;\n\n if (trackRef.current) {\n trackRef.current.style.transition = \"none\";\n }\n\n clearTouchListeners();\n\n touchMoveHandlerRef.current = handleTouchMove;\n touchEndHandlerRef.current = handleTouchEnd;\n\n window.addEventListener(\"touchmove\", handleTouchMove, { passive: false });\n window.addEventListener(\"touchend\", handleTouchEnd);\n window.addEventListener(\"touchcancel\", handleTouchEnd);\n\n onTouchStart?.(event);\n },\n [handleTouchMove, handleTouchEnd, clearTouchListeners, onTouchStart],\n );\n\n useEffect(() => {\n return () => {\n clearTouchListeners();\n };\n }, [clearTouchListeners]);\n\n const runtimeStyle = {\n \"--triplex-next-runtime-carousel-viewport-padding\": viewportPaddingStyle,\n };\n\n return (\n <div\n className={clsx(styles.viewPort, className)}\n {...restProps}\n onTouchStart={handleTouchStart}\n style={{\n ...style,\n ...runtimeStyle,\n }}\n ref={combinedRef}\n >\n {children}\n </div>\n );\n },\n);\n\nCarouselViewport.displayName = \"Carousel.Viewport\";\n"],"names":["React"],"mappings":"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"}
@@ -0,0 +1,92 @@
1
+ import { n as vi } from "../../../chunks/vendor-1HxVLgKa.js";
2
+ let resizeObserverCallback = null;
3
+ vi.stubGlobal(
4
+ "ResizeObserver",
5
+ class {
6
+ constructor(cb) {
7
+ resizeObserverCallback = cb;
8
+ }
9
+ observe() {
10
+ }
11
+ unobserve() {
12
+ }
13
+ disconnect() {
14
+ resizeObserverCallback = null;
15
+ }
16
+ }
17
+ );
18
+ function getResizeCallback() {
19
+ return resizeObserverCallback;
20
+ }
21
+ function resetResizeCallback() {
22
+ resizeObserverCallback = null;
23
+ }
24
+ function mockElementSize(element, metrics) {
25
+ if (metrics.width !== void 0 || metrics.height !== void 0) {
26
+ element.getBoundingClientRect = () => ({
27
+ width: metrics.width ?? 0,
28
+ height: metrics.height ?? 0,
29
+ top: 0,
30
+ left: 0,
31
+ right: metrics.width ?? 0,
32
+ bottom: metrics.height ?? 0,
33
+ x: 0,
34
+ y: 0,
35
+ toJSON: () => {
36
+ }
37
+ });
38
+ }
39
+ if (metrics.clientWidth !== void 0) {
40
+ Object.defineProperty(element, "clientWidth", { value: metrics.clientWidth, configurable: true });
41
+ }
42
+ if (metrics.clientHeight !== void 0) {
43
+ Object.defineProperty(element, "clientHeight", { value: metrics.clientHeight, configurable: true });
44
+ }
45
+ }
46
+ function createTouch(target, clientX) {
47
+ return {
48
+ identifier: Date.now(),
49
+ target,
50
+ clientX,
51
+ clientY: 0,
52
+ pageX: clientX,
53
+ pageY: 0,
54
+ screenX: clientX,
55
+ screenY: 0,
56
+ force: 0,
57
+ radiusX: 0,
58
+ radiusY: 0,
59
+ rotationAngle: 0
60
+ };
61
+ }
62
+ function createTouchList(touches) {
63
+ const touchList = Object.create(Object.prototype);
64
+ Object.defineProperty(touchList, "length", {
65
+ value: touches.length,
66
+ configurable: true
67
+ });
68
+ Object.defineProperty(touchList, "item", {
69
+ value: (index) => touches.at(index) || null,
70
+ configurable: true
71
+ });
72
+ Object.defineProperty(touchList, Symbol.iterator, {
73
+ value: () => touches.values(),
74
+ configurable: true
75
+ });
76
+ touches.forEach((touch, index) => {
77
+ Object.defineProperty(touchList, index, {
78
+ value: touch,
79
+ enumerable: true,
80
+ configurable: true
81
+ });
82
+ });
83
+ return touchList;
84
+ }
85
+ export {
86
+ createTouch,
87
+ createTouchList,
88
+ getResizeCallback,
89
+ mockElementSize,
90
+ resetResizeCallback
91
+ };
92
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sources":["../../../../src/components/Carousel/__tests__/utils.ts"],"sourcesContent":["import { vi } from \"vitest\";\n\nlet resizeObserverCallback: (() => void) | null = null;\nvi.stubGlobal(\n \"ResizeObserver\",\n class {\n constructor(cb: () => void) {\n resizeObserverCallback = cb;\n }\n observe() {}\n unobserve() {}\n disconnect() {\n resizeObserverCallback = null;\n }\n },\n);\n\n/** Получить текущий зарегистрированный колбэк ResizeObserver. */\nexport function getResizeCallback(): (() => void) | null {\n return resizeObserverCallback;\n}\n\n/** Сбросить состояние колбэка между тестами. */\nexport function resetResizeCallback(): void {\n resizeObserverCallback = null;\n}\n\n/** Динамическая подмена размеров элементов для JSDOM среды. */\nexport function mockElementSize(\n element: HTMLElement,\n metrics: { width?: number; height?: number; clientWidth?: number; clientHeight?: number },\n): void {\n if (metrics.width !== undefined || metrics.height !== undefined) {\n element.getBoundingClientRect = () => ({\n width: metrics.width ?? 0,\n height: metrics.height ?? 0,\n top: 0,\n left: 0,\n right: metrics.width ?? 0,\n bottom: metrics.height ?? 0,\n x: 0,\n y: 0,\n toJSON: () => {},\n });\n }\n if (metrics.clientWidth !== undefined) {\n Object.defineProperty(element, \"clientWidth\", { value: metrics.clientWidth, configurable: true });\n }\n if (metrics.clientHeight !== undefined) {\n Object.defineProperty(element, \"clientHeight\", { value: metrics.clientHeight, configurable: true });\n }\n}\n\n/** Хелпер для создания фейкового Touch-объекта. */\nexport function createTouch(target: HTMLElement, clientX: number): Touch {\n return {\n identifier: Date.now(),\n target,\n clientX,\n clientY: 0,\n pageX: clientX,\n pageY: 0,\n screenX: clientX,\n screenY: 0,\n force: 0,\n radiusX: 0,\n radiusY: 0,\n rotationAngle: 0,\n };\n}\n\n/** Превращает массив Touch в псевдо-TouchList для JSDOM событий. */\nexport function createTouchList(touches: Touch[]): TouchList & Touch[] {\n const touchList = Object.create(Object.prototype);\n\n Object.defineProperty(touchList, \"length\", {\n value: touches.length,\n configurable: true,\n });\n\n Object.defineProperty(touchList, \"item\", {\n value: (index: number) => touches.at(index) || null,\n configurable: true,\n });\n\n Object.defineProperty(touchList, Symbol.iterator, {\n value: () => touches.values(),\n configurable: true,\n });\n\n touches.forEach((touch, index) => {\n Object.defineProperty(touchList, index, {\n value: touch,\n enumerable: true,\n configurable: true,\n });\n });\n\n return touchList;\n}\n"],"names":[],"mappings":";AAEA,IAAI,yBAA8C;AAClD,GAAG;AAAA,EACC;AAAA,EACA,MAAM;AAAA,IACF,YAAY,IAAgB;AACxB,+BAAyB;AAAA,IAC7B;AAAA,IACA,UAAU;AAAA,IAAC;AAAA,IACX,YAAY;AAAA,IAAC;AAAA,IACb,aAAa;AACT,+BAAyB;AAAA,IAC7B;AAAA,EAAA;AAER;AAGO,SAAS,oBAAyC;AACrD,SAAO;AACX;AAGO,SAAS,sBAA4B;AACxC,2BAAyB;AAC7B;AAGO,SAAS,gBACZ,SACA,SACI;AACJ,MAAI,QAAQ,UAAU,UAAa,QAAQ,WAAW,QAAW;AAC7D,YAAQ,wBAAwB,OAAO;AAAA,MACnC,OAAO,QAAQ,SAAS;AAAA,MACxB,QAAQ,QAAQ,UAAU;AAAA,MAC1B,KAAK;AAAA,MACL,MAAM;AAAA,MACN,OAAO,QAAQ,SAAS;AAAA,MACxB,QAAQ,QAAQ,UAAU;AAAA,MAC1B,GAAG;AAAA,MACH,GAAG;AAAA,MACH,QAAQ,MAAM;AAAA,MAAC;AAAA,IAAA;AAAA,EAEvB;AACA,MAAI,QAAQ,gBAAgB,QAAW;AACnC,WAAO,eAAe,SAAS,eAAe,EAAE,OAAO,QAAQ,aAAa,cAAc,MAAM;AAAA,EACpG;AACA,MAAI,QAAQ,iBAAiB,QAAW;AACpC,WAAO,eAAe,SAAS,gBAAgB,EAAE,OAAO,QAAQ,cAAc,cAAc,MAAM;AAAA,EACtG;AACJ;AAGO,SAAS,YAAY,QAAqB,SAAwB;AACrE,SAAO;AAAA,IACH,YAAY,KAAK,IAAA;AAAA,IACjB;AAAA,IACA;AAAA,IACA,SAAS;AAAA,IACT,OAAO;AAAA,IACP,OAAO;AAAA,IACP,SAAS;AAAA,IACT,SAAS;AAAA,IACT,OAAO;AAAA,IACP,SAAS;AAAA,IACT,SAAS;AAAA,IACT,eAAe;AAAA,EAAA;AAEvB;AAGO,SAAS,gBAAgB,SAAuC;AACnE,QAAM,YAAY,OAAO,OAAO,OAAO,SAAS;AAEhD,SAAO,eAAe,WAAW,UAAU;AAAA,IACvC,OAAO,QAAQ;AAAA,IACf,cAAc;AAAA,EAAA,CACjB;AAED,SAAO,eAAe,WAAW,QAAQ;AAAA,IACrC,OAAO,CAAC,UAAkB,QAAQ,GAAG,KAAK,KAAK;AAAA,IAC/C,cAAc;AAAA,EAAA,CACjB;AAED,SAAO,eAAe,WAAW,OAAO,UAAU;AAAA,IAC9C,OAAO,MAAM,QAAQ,OAAA;AAAA,IACrB,cAAc;AAAA,EAAA,CACjB;AAED,UAAQ,QAAQ,CAAC,OAAO,UAAU;AAC9B,WAAO,eAAe,WAAW,OAAO;AAAA,MACpC,OAAO;AAAA,MACP,YAAY;AAAA,MACZ,cAAc;AAAA,IAAA,CACjB;AAAA,EACL,CAAC;AAED,SAAO;AACX;"}
@@ -0,0 +1,9 @@
1
+ import { ECarouselOrientation } from "./enums.js";
2
+ const ORIENTATION_TRANSFORM = {
3
+ [ECarouselOrientation.HORIZONTAL]: (x) => `translateX(${x}px)`,
4
+ [ECarouselOrientation.VERTICAL]: (y) => `translateY(${y}px)`
5
+ };
6
+ export {
7
+ ORIENTATION_TRANSFORM
8
+ };
9
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sources":["../../../src/components/Carousel/constants.ts"],"sourcesContent":["import { ECarouselOrientation } from \"./enums\";\n\nexport const ORIENTATION_TRANSFORM = {\n [ECarouselOrientation.HORIZONTAL]: (x: number) => `translateX(${x}px)`,\n [ECarouselOrientation.VERTICAL]: (y: number) => `translateY(${y}px)`,\n} as const;\n"],"names":[],"mappings":";AAEO,MAAM,wBAAwB;AAAA,EACjC,CAAC,qBAAqB,UAAU,GAAG,CAAC,MAAc,cAAc,CAAC;AAAA,EACjE,CAAC,qBAAqB,QAAQ,GAAG,CAAC,MAAc,cAAc,CAAC;AACnE;"}
@@ -0,0 +1,15 @@
1
+ var ECarouselOrientation = /* @__PURE__ */ ((ECarouselOrientation2) => {
2
+ ECarouselOrientation2["HORIZONTAL"] = "horizontal";
3
+ ECarouselOrientation2["VERTICAL"] = "vertical";
4
+ return ECarouselOrientation2;
5
+ })(ECarouselOrientation || {});
6
+ var ECarouselScrollMode = /* @__PURE__ */ ((ECarouselScrollMode2) => {
7
+ ECarouselScrollMode2["ITEM"] = "item";
8
+ ECarouselScrollMode2["PAGE"] = "page";
9
+ return ECarouselScrollMode2;
10
+ })(ECarouselScrollMode || {});
11
+ export {
12
+ ECarouselOrientation,
13
+ ECarouselScrollMode
14
+ };
15
+ //# sourceMappingURL=enums.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"enums.js","sources":["../../../src/components/Carousel/enums.ts"],"sourcesContent":["export enum ECarouselOrientation {\n HORIZONTAL = \"horizontal\",\n VERTICAL = \"vertical\",\n}\n\nexport enum ECarouselScrollMode {\n ITEM = \"item\",\n PAGE = \"page\",\n}\n"],"names":["ECarouselOrientation","ECarouselScrollMode"],"mappings":"AAAO,IAAK,yCAAAA,0BAAL;AACHA,wBAAA,YAAA,IAAa;AACbA,wBAAA,UAAA,IAAW;AAFH,SAAAA;AAAA,GAAA,wBAAA,CAAA,CAAA;AAKL,IAAK,wCAAAC,yBAAL;AACHA,uBAAA,MAAA,IAAO;AACPA,uBAAA,MAAA,IAAO;AAFC,SAAAA;AAAA,GAAA,uBAAA,CAAA,CAAA;"}
@@ -0,0 +1,8 @@
1
+ import { Carousel } from "./Carousel.js";
2
+ import { ECarouselOrientation, ECarouselScrollMode } from "./enums.js";
3
+ export {
4
+ Carousel,
5
+ ECarouselOrientation,
6
+ ECarouselScrollMode
7
+ };
8
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;"}
@@ -0,0 +1,2 @@
1
+
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}