@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
@@ -1,9 +1,9 @@
1
1
  import { jsxs, Fragment, jsx } from "react/jsx-runtime";
2
- import { useRef, useEffect } from "react";
3
- import { c as clsx } from "../../chunks/vendor-Bco_z_Yi.js";
2
+ import { useRef, useState, useEffect } from "react";
3
+ import { c as clsx } from "../../chunks/vendor-1HxVLgKa.js";
4
4
  import { Portal } from "../Portal/Portal.js";
5
5
  import { FocusTrapExtended } from "../FocusTrapExtended/FocusTrapExtended.js";
6
- import { L as LightBoxContent, s as styles } from "../../chunks/LightBoxContent-W4QNMAOs.js";
6
+ import { L as LightBoxContent, s as styles } from "../../chunks/LightBoxContent-DegsWbol.js";
7
7
  import { LightBoxControls } from "./LightBoxControls/LightBoxControls.js";
8
8
  import { LightBoxSideOverlay } from "./LightBoxSideOverlay/LightBoxSideOverlay.js";
9
9
  import { addClassNameWithScrollbarWidth } from "../../utils/scroll/scrollbar.js";
@@ -15,14 +15,21 @@ import { LightBoxLeftSidebar } from "./LightBoxSidebars/LightBoxLeftSidebar.js";
15
15
  import { LightBoxRightSidebar } from "./LightBoxSidebars/LightBoxRightSidebar.js";
16
16
  import { ELightBoxSize } from "./enums.js";
17
17
  const scrollStyles = {
18
- "scroll-0": "scroll-0__edafcb57",
19
- "scroll-15": "scroll-15__ee8f49f6",
20
- "scroll-16": "scroll-16__a002320b",
21
- "scroll-17": "scroll-17__61dcecf3"
18
+ "scroll-0": "scroll-0__78aa424a",
19
+ "scroll-15": "scroll-15__a5c31e2c",
20
+ "scroll-16": "scroll-16__ffb584e6",
21
+ "scroll-17": "scroll-17__44377de7"
22
22
  };
23
23
  const lightBoxMountNodeIdDefault = "LightBox-next-mount-node";
24
24
  const lightBoxViewManagerNodeIdDefault = "LightBox-next-view-manager-node";
25
25
  const bodyClassNamesIsLightBoxOpen = [styles.bodyOverflowHidden];
26
+ const addClassNamesToDocumentElement = () => {
27
+ bodyClassNamesIsLightBoxOpen.forEach((className) => document.documentElement.classList.add(className));
28
+ };
29
+ const removeClassNamesFromDocumentElement = () => {
30
+ bodyClassNamesIsLightBoxOpen.forEach((className) => document.documentElement.classList.remove(className));
31
+ };
32
+ let mountedLightBoxCount = 0;
26
33
  const LightBoxBase = ({
27
34
  children,
28
35
  className,
@@ -40,16 +47,14 @@ const LightBoxBase = ({
40
47
  const containerRef = useRef(null);
41
48
  const { scopeClassName } = useToken();
42
49
  const getLightBoxMountNode = () => {
43
- let lightBoxMountNode2 = null;
44
50
  if (mountNode) {
45
- lightBoxMountNode2 = mountNode;
46
- } else {
47
- lightBoxMountNode2 = document.querySelector(`#${lightBoxMountNodeIdDefault}`);
48
- if (!lightBoxMountNode2) {
49
- lightBoxMountNode2 = document.createElement("div");
50
- lightBoxMountNode2.setAttribute("id", lightBoxMountNodeIdDefault);
51
- document.body.appendChild(lightBoxMountNode2);
52
- }
51
+ return mountNode;
52
+ }
53
+ let lightBoxMountNode2 = document.querySelector(`#${lightBoxMountNodeIdDefault}`);
54
+ if (!lightBoxMountNode2) {
55
+ lightBoxMountNode2 = document.createElement("div");
56
+ lightBoxMountNode2.setAttribute("id", lightBoxMountNodeIdDefault);
57
+ document.body.appendChild(lightBoxMountNode2);
53
58
  }
54
59
  return lightBoxMountNode2;
55
60
  };
@@ -65,16 +70,18 @@ const LightBoxBase = ({
65
70
  }
66
71
  return lightBoxViewManagerMountNode;
67
72
  };
68
- const lightBoxMountNode = useRef(getLightBoxMountNode());
69
- const lightBoxViewManagerNode = useRef(getLightBoxViewManagerMountNode());
70
- const addClassNamesToDocumentElement = () => {
71
- bodyClassNamesIsLightBoxOpen.forEach((className2) => document.documentElement.classList.add(className2));
72
- };
73
+ const [lightBoxMountNode] = useState(getLightBoxMountNode);
74
+ const [lightBoxViewManagerNode] = useState(getLightBoxViewManagerMountNode);
73
75
  useEffect(() => {
74
76
  addClassNameWithScrollbarWidth(scrollStyles);
77
+ mountedLightBoxCount += 1;
75
78
  addClassNamesToDocumentElement();
76
- setTimeout(addClassNamesToDocumentElement, 100);
77
- return () => bodyClassNamesIsLightBoxOpen.forEach((className2) => document.documentElement.classList.remove(className2));
79
+ return () => {
80
+ mountedLightBoxCount -= 1;
81
+ if (mountedLightBoxCount === 0) {
82
+ removeClassNamesFromDocumentElement();
83
+ }
84
+ };
78
85
  }, []);
79
86
  useEffect(() => {
80
87
  if (!isSideOverlayOpened && tempButtonRef.current) {
@@ -82,9 +89,6 @@ const LightBoxBase = ({
82
89
  tempButtonRef.current.style.zIndex = nextZIndex.toString();
83
90
  }
84
91
  }, [isSideOverlayOpened]);
85
- if (!lightBoxMountNode.current) {
86
- return null;
87
- }
88
92
  const setRef = (instance) => {
89
93
  containerRef.current = instance;
90
94
  if (forwardRef) {
@@ -96,14 +100,13 @@ const LightBoxBase = ({
96
100
  styles.lightBox,
97
101
  styles[size],
98
102
  {
99
- [styles.isLoading]: Boolean(isLoading),
100
103
  [styles.lightBoxSideOverlayActive]: Boolean(isSideOverlayOpened),
101
104
  [styles.lightBoxTopOverlayActive]: Boolean(isTopOverlayOpened)
102
105
  },
103
106
  className
104
107
  );
105
108
  return /* @__PURE__ */ jsxs(Fragment, { children: [
106
- /* @__PURE__ */ jsx(Portal, { container: lightBoxMountNode.current, children: /* @__PURE__ */ jsx(
109
+ /* @__PURE__ */ jsx(Portal, { container: lightBoxMountNode, children: /* @__PURE__ */ jsx(
107
110
  FocusTrapExtended,
108
111
  {
109
112
  active: !isLoading,
@@ -120,11 +123,11 @@ const LightBoxBase = ({
120
123
  ] })
121
124
  }
122
125
  ) }),
123
- lightBoxViewManagerNode.current && /* @__PURE__ */ jsx(
126
+ /* @__PURE__ */ jsx(
124
127
  LightBoxViewManager,
125
128
  {
126
- lightBoxViewManagerNode: lightBoxViewManagerNode.current,
127
- lightBoxMountNode: lightBoxMountNode.current
129
+ lightBoxViewManagerNode,
130
+ lightBoxMountNode
128
131
  }
129
132
  )
130
133
  ] });
@@ -1 +1 @@
1
- {"version":3,"file":"LightBox.js","sources":["../../../src/components/LightBox/LightBox.tsx"],"sourcesContent":["import React, { useEffect, useRef } from \"react\";\nimport clsx from \"clsx\";\nimport { Portal } from \"../Portal\";\nimport { FocusTrapExtended, IFocusTrapExtendedProps } from \"../FocusTrapExtended\";\nimport { LightBoxContent } from \"./LightBoxContent\";\nimport { LightBoxControls } from \"./LightBoxControls/LightBoxControls\";\nimport { LightBoxSideOverlay } from \"./LightBoxSideOverlay/LightBoxSideOverlay\";\nimport { addClassNameWithScrollbarWidth } from \"../../utils/scroll/scrollbar\";\nimport { TopOverlay } from \"../TopOverlay/TopOverlay\";\nimport { LightBoxViewManager } from \"./LightBoxViewManager/LightBoxViewManager\";\nimport { FocusTrapUtils } from \"../../utils/focus/FocusTrapUtils\";\nimport { useToken } from \"../ThemeProvider/useToken\";\nimport { LightBoxLeftSidebar } from \"./LightBoxSidebars/LightBoxLeftSidebar\";\nimport { LightBoxRightSidebar } from \"./LightBoxSidebars/LightBoxRightSidebar\";\nimport { ELightBoxSize } from \"./enums\";\nimport styles from \"./styles/LightBox.module.less\";\nimport scrollStyles from \"./styles/LightBoxScroll.module.less\";\n\n// Идентификатор DOM-элемента, в который рендерится лайтбокс. При отсутствии элемента в DOM – создается в body.\nexport const lightBoxMountNodeIdDefault = \"LightBox-next-mount-node\";\n\n// Идентификатор DOM-элемента, в визуальных границах (левая и правая координата) которого рендерится лайтбокс.\nexport const lightBoxViewManagerNodeIdDefault = \"LightBox-next-view-manager-node\";\n\n/** Свойства компонента LightBox. */\nexport interface ILightBoxProps extends React.HTMLAttributes<HTMLDivElement> {\n children: React.ReactElement[];\n /** Свойства компонента FocusTrapExtended. */\n focusTrapProps?: IFocusTrapExtendedProps;\n /** Ref на контейнер LightBox. */\n forwardRef?: React.MutableRefObject<HTMLElement | null>;\n /** DOM-нода в которую будет рендерится лайтбокс. */\n mountNode?: HTMLDivElement;\n /** Идентификатор DOM-элемента, в визуальных границах (левая и правая координата) которого рендерится лайтбокс. */\n lightBoxViewManagerNodeId?: string;\n /** Флаг состояния загрузки. */\n isLoading?: boolean;\n /** Флаг открытия боковой панели. */\n isSideOverlayOpened?: boolean;\n /** Флаг открытия верхней панели. */\n isTopOverlayOpened?: boolean;\n /** Размер контента LightBox. */\n size?: ELightBoxSize;\n}\n\nconst bodyClassNamesIsLightBoxOpen = [styles.bodyOverflowHidden];\n\nconst LightBoxBase: React.FC<ILightBoxProps> = ({\n children,\n className,\n focusTrapProps,\n forwardRef,\n mountNode,\n lightBoxViewManagerNodeId = lightBoxViewManagerNodeIdDefault,\n isLoading,\n isSideOverlayOpened,\n isTopOverlayOpened,\n size = ELightBoxSize.MD,\n ...htmlDivAttributes\n}) => {\n // Скрытый элемент для вызова ререндера при закрытии оверлея, фикс бага в Safari - DCBSWT-2866.\n const tempButtonRef = useRef<HTMLSpanElement>(null);\n const containerRef = useRef<HTMLDivElement | null>(null);\n\n const { scopeClassName } = useToken();\n\n const getLightBoxMountNode = () => {\n let lightBoxMountNode: HTMLDivElement | null = null;\n if (mountNode) {\n lightBoxMountNode = mountNode;\n } else {\n lightBoxMountNode = document.querySelector(`#${lightBoxMountNodeIdDefault}`);\n\n if (!lightBoxMountNode) {\n lightBoxMountNode = document.createElement(\"div\");\n lightBoxMountNode.setAttribute(\"id\", lightBoxMountNodeIdDefault);\n document.body.appendChild(lightBoxMountNode);\n }\n }\n\n return lightBoxMountNode;\n };\n\n const getLightBoxViewManagerMountNode = () => {\n let lightBoxViewManagerMountNode: HTMLDivElement | null = null;\n if (lightBoxViewManagerNodeId) {\n lightBoxViewManagerMountNode = document.querySelector(`#${lightBoxViewManagerNodeId}`);\n }\n\n if (!lightBoxViewManagerMountNode) {\n lightBoxViewManagerMountNode = document.createElement(\"div\");\n lightBoxViewManagerMountNode.setAttribute(\"id\", lightBoxViewManagerNodeIdDefault);\n document.body.appendChild(lightBoxViewManagerMountNode);\n }\n\n return lightBoxViewManagerMountNode;\n };\n\n /** DOM node, в которую рендерится лайтбокс. */\n const lightBoxMountNode = useRef<HTMLDivElement | null>(getLightBoxMountNode());\n /**\n * DOM node, в визуальных границах которой рендерится лайтбокс.\n * Левая и правая граница LightBox будут соответствовать левой и правой границе lightBoxViewManagerNode.\n */\n const lightBoxViewManagerNode = useRef<HTMLDivElement | null>(getLightBoxViewManagerMountNode());\n\n const addClassNamesToDocumentElement = () => {\n bodyClassNamesIsLightBoxOpen.forEach((className) => document.documentElement.classList.add(className));\n };\n\n useEffect(() => {\n addClassNameWithScrollbarWidth(scrollStyles);\n addClassNamesToDocumentElement();\n // Фикс бага в роутере - при переключении между лайтбоксами иногда сначала происходит componentDidMount 2го и затем componentWillUnmount первого, css классы удаляются.\n setTimeout(addClassNamesToDocumentElement, 100);\n\n return () =>\n bodyClassNamesIsLightBoxOpen.forEach((className) => document.documentElement.classList.remove(className));\n }, []);\n\n useEffect(() => {\n if (!isSideOverlayOpened && tempButtonRef.current) {\n // Изменение z-index у скрытого элемента вызывает repaint. Фикс бага в Safari - DCBSWT-2866.\n const nextZIndex = Math.round(Math.random() * 100);\n tempButtonRef.current.style.zIndex = nextZIndex.toString();\n }\n }, [isSideOverlayOpened]);\n\n if (!lightBoxMountNode.current) {\n return null;\n }\n\n /** Функция для хранения ссылки. */\n const setRef = (instance: HTMLDivElement | null) => {\n containerRef.current = instance;\n\n if (forwardRef) {\n forwardRef.current = instance;\n }\n };\n\n const classNames = clsx(\n scopeClassName,\n styles.lightBox,\n styles[size],\n {\n [styles.isLoading]: Boolean(isLoading),\n [styles.lightBoxSideOverlayActive]: Boolean(isSideOverlayOpened),\n [styles.lightBoxTopOverlayActive]: Boolean(isTopOverlayOpened),\n },\n className,\n );\n\n return (\n <>\n <Portal container={lightBoxMountNode.current}>\n <FocusTrapExtended\n active={!isLoading}\n {...focusTrapProps}\n focusTrapOptions={{\n initialFocus: () => FocusTrapUtils.getFirstInteractionElementByDataAttr(containerRef.current),\n preventScroll: true,\n ...focusTrapProps?.focusTrapOptions,\n }}\n >\n <div className={classNames} role=\"dialog\" aria-modal=\"true\" {...htmlDivAttributes} ref={setRef}>\n <div className={styles.lightBoxBackdrop} />\n {children}\n <span ref={tempButtonRef} className={styles.tempElSafariBug} />\n </div>\n </FocusTrapExtended>\n </Portal>\n\n {lightBoxViewManagerNode.current && (\n <LightBoxViewManager\n lightBoxViewManagerNode={lightBoxViewManagerNode.current}\n lightBoxMountNode={lightBoxMountNode.current}\n />\n )}\n </>\n );\n};\n\nLightBoxBase.displayName = \"LightBoxBase\";\n\nexport const LightBox = Object.assign(LightBoxBase, {\n Content: LightBoxContent,\n SideOverlay: LightBoxSideOverlay,\n TopOverlay,\n Controls: LightBoxControls,\n LeftSidebar: LightBoxLeftSidebar,\n RightSidebar: LightBoxRightSidebar,\n});\n"],"names":["lightBoxMountNode","className"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAmBO,MAAM,6BAA6B;AAGnC,MAAM,mCAAmC;AAuBhD,MAAM,+BAA+B,CAAC,OAAO,kBAAkB;AAE/D,MAAM,eAAyC,CAAC;AAAA,EAC5C;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,4BAA4B;AAAA,EAC5B;AAAA,EACA;AAAA,EACA;AAAA,EACA,OAAO,cAAc;AAAA,EACrB,GAAG;AACP,MAAM;AAEF,QAAM,gBAAgB,OAAwB,IAAI;AAClD,QAAM,eAAe,OAA8B,IAAI;AAEvD,QAAM,EAAE,eAAA,IAAmB,SAAA;AAE3B,QAAM,uBAAuB,MAAM;AAC/B,QAAIA,qBAA2C;AAC/C,QAAI,WAAW;AACXA,2BAAoB;AAAA,IACxB,OAAO;AACHA,2BAAoB,SAAS,cAAc,IAAI,0BAA0B,EAAE;AAE3E,UAAI,CAACA,oBAAmB;AACpBA,6BAAoB,SAAS,cAAc,KAAK;AAChDA,2BAAkB,aAAa,MAAM,0BAA0B;AAC/D,iBAAS,KAAK,YAAYA,kBAAiB;AAAA,MAC/C;AAAA,IACJ;AAEA,WAAOA;AAAAA,EACX;AAEA,QAAM,kCAAkC,MAAM;AAC1C,QAAI,+BAAsD;AAC1D,QAAI,2BAA2B;AAC3B,qCAA+B,SAAS,cAAc,IAAI,yBAAyB,EAAE;AAAA,IACzF;AAEA,QAAI,CAAC,8BAA8B;AAC/B,qCAA+B,SAAS,cAAc,KAAK;AAC3D,mCAA6B,aAAa,MAAM,gCAAgC;AAChF,eAAS,KAAK,YAAY,4BAA4B;AAAA,IAC1D;AAEA,WAAO;AAAA,EACX;AAGA,QAAM,oBAAoB,OAA8B,sBAAsB;AAK9E,QAAM,0BAA0B,OAA8B,iCAAiC;AAE/F,QAAM,iCAAiC,MAAM;AACzC,iCAA6B,QAAQ,CAACC,eAAc,SAAS,gBAAgB,UAAU,IAAIA,UAAS,CAAC;AAAA,EACzG;AAEA,YAAU,MAAM;AACZ,mCAA+B,YAAY;AAC3C,mCAAA;AAEA,eAAW,gCAAgC,GAAG;AAE9C,WAAO,MACH,6BAA6B,QAAQ,CAACA,eAAc,SAAS,gBAAgB,UAAU,OAAOA,UAAS,CAAC;AAAA,EAChH,GAAG,CAAA,CAAE;AAEL,YAAU,MAAM;AACZ,QAAI,CAAC,uBAAuB,cAAc,SAAS;AAE/C,YAAM,aAAa,KAAK,MAAM,KAAK,OAAA,IAAW,GAAG;AACjD,oBAAc,QAAQ,MAAM,SAAS,WAAW,SAAA;AAAA,IACpD;AAAA,EACJ,GAAG,CAAC,mBAAmB,CAAC;AAExB,MAAI,CAAC,kBAAkB,SAAS;AAC5B,WAAO;AAAA,EACX;AAGA,QAAM,SAAS,CAAC,aAAoC;AAChD,iBAAa,UAAU;AAEvB,QAAI,YAAY;AACZ,iBAAW,UAAU;AAAA,IACzB;AAAA,EACJ;AAEA,QAAM,aAAa;AAAA,IACf;AAAA,IACA,OAAO;AAAA,IACP,OAAO,IAAI;AAAA,IACX;AAAA,MACI,CAAC,OAAO,SAAS,GAAG,QAAQ,SAAS;AAAA,MACrC,CAAC,OAAO,yBAAyB,GAAG,QAAQ,mBAAmB;AAAA,MAC/D,CAAC,OAAO,wBAAwB,GAAG,QAAQ,kBAAkB;AAAA,IAAA;AAAA,IAEjE;AAAA,EAAA;AAGJ,SACI,qBAAA,UAAA,EACI,UAAA;AAAA,IAAA,oBAAC,QAAA,EAAO,WAAW,kBAAkB,SACjC,UAAA;AAAA,MAAC;AAAA,MAAA;AAAA,QACG,QAAQ,CAAC;AAAA,QACR,GAAG;AAAA,QACJ,kBAAkB;AAAA,UACd,cAAc,MAAM,eAAe,qCAAqC,aAAa,OAAO;AAAA,UAC5F,eAAe;AAAA,UACf,GAAG,iDAAgB;AAAA,QAAA;AAAA,QAGvB,UAAA,qBAAC,OAAA,EAAI,WAAW,YAAY,MAAK,UAAS,cAAW,QAAQ,GAAG,mBAAmB,KAAK,QACpF,UAAA;AAAA,UAAA,oBAAC,OAAA,EAAI,WAAW,OAAO,iBAAA,CAAkB;AAAA,UACxC;AAAA,8BACA,QAAA,EAAK,KAAK,eAAe,WAAW,OAAO,gBAAA,CAAiB;AAAA,QAAA,EAAA,CACjE;AAAA,MAAA;AAAA,IAAA,GAER;AAAA,IAEC,wBAAwB,WACrB;AAAA,MAAC;AAAA,MAAA;AAAA,QACG,yBAAyB,wBAAwB;AAAA,QACjD,mBAAmB,kBAAkB;AAAA,MAAA;AAAA,IAAA;AAAA,EACzC,GAER;AAER;AAEA,aAAa,cAAc;AAEpB,MAAM,WAAW,OAAO,OAAO,cAAc;AAAA,EAChD,SAAS;AAAA,EACT,aAAa;AAAA,EACb;AAAA,EACA,UAAU;AAAA,EACV,aAAa;AAAA,EACb,cAAc;AAClB,CAAC;"}
1
+ {"version":3,"file":"LightBox.js","sources":["../../../src/components/LightBox/LightBox.tsx"],"sourcesContent":["import React, { useEffect, useRef, useState } from \"react\";\nimport clsx from \"clsx\";\nimport { Portal } from \"../Portal\";\nimport { FocusTrapExtended, IFocusTrapExtendedProps } from \"../FocusTrapExtended\";\nimport { LightBoxContent } from \"./LightBoxContent\";\nimport { LightBoxControls } from \"./LightBoxControls/LightBoxControls\";\nimport { LightBoxSideOverlay } from \"./LightBoxSideOverlay/LightBoxSideOverlay\";\nimport { addClassNameWithScrollbarWidth } from \"../../utils/scroll/scrollbar\";\nimport { TopOverlay } from \"../TopOverlay/TopOverlay\";\nimport { LightBoxViewManager } from \"./LightBoxViewManager/LightBoxViewManager\";\nimport { FocusTrapUtils } from \"../../utils/focus/FocusTrapUtils\";\nimport { useToken } from \"../ThemeProvider/useToken\";\nimport { LightBoxLeftSidebar } from \"./LightBoxSidebars/LightBoxLeftSidebar\";\nimport { LightBoxRightSidebar } from \"./LightBoxSidebars/LightBoxRightSidebar\";\nimport { ELightBoxSize } from \"./enums\";\nimport styles from \"./styles/LightBox.module.less\";\nimport scrollStyles from \"./styles/LightBoxScroll.module.less\";\n\n/** Идентификатор DOM-элемента, в который рендерится лайтбокс. При отсутствии элемента в DOM – создается в body. */\nexport const lightBoxMountNodeIdDefault = \"LightBox-next-mount-node\";\n\n/** Идентификатор DOM-элемента, в визуальных границах (левая и правая координата) которого рендерится лайтбокс. */\nexport const lightBoxViewManagerNodeIdDefault = \"LightBox-next-view-manager-node\";\n\n/** Свойства компонента LightBox. */\nexport interface ILightBoxProps extends React.HTMLAttributes<HTMLDivElement> {\n /** Содержимое лайтбокса. */\n children: React.ReactElement[];\n /** Свойства компонента FocusTrapExtended. */\n focusTrapProps?: IFocusTrapExtendedProps;\n /** Ref на контейнер LightBox. */\n forwardRef?: React.MutableRefObject<HTMLElement | null>;\n /** DOM-нода в которую будет рендерится лайтбокс. */\n mountNode?: HTMLDivElement;\n /** Идентификатор DOM-элемента, в визуальных границах (левая и правая координата) которого рендерится лайтбокс. */\n lightBoxViewManagerNodeId?: string;\n /** Флаг состояния загрузки. */\n isLoading?: boolean;\n /** Флаг открытия боковой панели. */\n isSideOverlayOpened?: boolean;\n /** Флаг открытия верхней панели. */\n isTopOverlayOpened?: boolean;\n /** Размер контента LightBox. */\n size?: ELightBoxSize;\n}\n\n/** CSS-классы, добавляемые на корневой элемент документа, пока лайтбокс открыт. */\nconst bodyClassNamesIsLightBoxOpen = [styles.bodyOverflowHidden];\n\n/** Добавляет CSS-классы открытого лайтбокса на корневой элемент документа. */\nconst addClassNamesToDocumentElement = () => {\n bodyClassNamesIsLightBoxOpen.forEach((className) => document.documentElement.classList.add(className));\n};\n\n/** Удаляет CSS-классы открытого лайтбокса с корневого элемента документа. */\nconst removeClassNamesFromDocumentElement = () => {\n bodyClassNamesIsLightBoxOpen.forEach((className) => document.documentElement.classList.remove(className));\n};\n\n/**\n * Количество смонтированных лайтбоксов. При переключении между лайтбоксами через роутер второй может\n * смонтироваться раньше, чем размонтируется первый, поэтому классы с documentElement снимаются только\n * при размонтировании последнего лайтбокса.\n */\nlet mountedLightBoxCount = 0;\n\nconst LightBoxBase: React.FC<ILightBoxProps> = ({\n children,\n className,\n focusTrapProps,\n forwardRef,\n mountNode,\n lightBoxViewManagerNodeId = lightBoxViewManagerNodeIdDefault,\n isLoading,\n isSideOverlayOpened,\n isTopOverlayOpened,\n size = ELightBoxSize.MD,\n ...htmlDivAttributes\n}) => {\n // Скрытый элемент для вызова ререндера при закрытии оверлея, фикс бага в Safari - DCBSWT-2866.\n const tempButtonRef = useRef<HTMLSpanElement>(null);\n const containerRef = useRef<HTMLDivElement | null>(null);\n\n const { scopeClassName } = useToken();\n\n const getLightBoxMountNode = (): HTMLDivElement => {\n if (mountNode) {\n return mountNode;\n }\n\n let lightBoxMountNode = document.querySelector<HTMLDivElement>(`#${lightBoxMountNodeIdDefault}`);\n\n if (!lightBoxMountNode) {\n lightBoxMountNode = document.createElement(\"div\");\n lightBoxMountNode.setAttribute(\"id\", lightBoxMountNodeIdDefault);\n document.body.appendChild(lightBoxMountNode);\n }\n\n return lightBoxMountNode;\n };\n\n const getLightBoxViewManagerMountNode = (): HTMLDivElement => {\n let lightBoxViewManagerMountNode: HTMLDivElement | null = null;\n\n if (lightBoxViewManagerNodeId) {\n lightBoxViewManagerMountNode = document.querySelector<HTMLDivElement>(`#${lightBoxViewManagerNodeId}`);\n }\n\n if (!lightBoxViewManagerMountNode) {\n lightBoxViewManagerMountNode = document.createElement(\"div\");\n lightBoxViewManagerMountNode.setAttribute(\"id\", lightBoxViewManagerNodeIdDefault);\n document.body.appendChild(lightBoxViewManagerMountNode);\n }\n\n return lightBoxViewManagerMountNode;\n };\n\n /** DOM node, в которую рендерится лайтбокс. */\n const [lightBoxMountNode] = useState<HTMLDivElement>(getLightBoxMountNode);\n /**\n * DOM node, в визуальных границах которой рендерится лайтбокс.\n * Левая и правая граница LightBox будут соответствовать левой и правой границе lightBoxViewManagerNode.\n */\n const [lightBoxViewManagerNode] = useState<HTMLDivElement>(getLightBoxViewManagerMountNode);\n\n useEffect(() => {\n addClassNameWithScrollbarWidth(scrollStyles);\n mountedLightBoxCount += 1;\n addClassNamesToDocumentElement();\n\n return () => {\n mountedLightBoxCount -= 1;\n\n if (mountedLightBoxCount === 0) {\n removeClassNamesFromDocumentElement();\n }\n };\n }, []);\n\n useEffect(() => {\n if (!isSideOverlayOpened && tempButtonRef.current) {\n // Изменение z-index у скрытого элемента вызывает repaint. Фикс бага в Safari - DCBSWT-2866.\n const nextZIndex = Math.round(Math.random() * 100);\n tempButtonRef.current.style.zIndex = nextZIndex.toString();\n }\n }, [isSideOverlayOpened]);\n\n const setRef = (instance: HTMLDivElement | null) => {\n containerRef.current = instance;\n\n if (forwardRef) {\n forwardRef.current = instance;\n }\n };\n\n const classNames = clsx(\n scopeClassName,\n styles.lightBox,\n styles[size],\n {\n [styles.lightBoxSideOverlayActive]: Boolean(isSideOverlayOpened),\n [styles.lightBoxTopOverlayActive]: Boolean(isTopOverlayOpened),\n },\n className,\n );\n\n return (\n <>\n <Portal container={lightBoxMountNode}>\n <FocusTrapExtended\n active={!isLoading}\n {...focusTrapProps}\n focusTrapOptions={{\n initialFocus: () => FocusTrapUtils.getFirstInteractionElementByDataAttr(containerRef.current),\n preventScroll: true,\n ...focusTrapProps?.focusTrapOptions,\n }}\n >\n <div className={classNames} role=\"dialog\" aria-modal=\"true\" {...htmlDivAttributes} ref={setRef}>\n <div className={styles.lightBoxBackdrop} />\n {children}\n <span ref={tempButtonRef} className={styles.tempElSafariBug} />\n </div>\n </FocusTrapExtended>\n </Portal>\n\n <LightBoxViewManager\n lightBoxViewManagerNode={lightBoxViewManagerNode}\n lightBoxMountNode={lightBoxMountNode}\n />\n </>\n );\n};\n\nLightBoxBase.displayName = \"LightBoxBase\";\n\n/** Лайтбокс — полноэкранный диалог поверх страницы с контентом, кнопками управления и боковыми панелями. */\nexport const LightBox = Object.assign(LightBoxBase, {\n Content: LightBoxContent,\n SideOverlay: LightBoxSideOverlay,\n TopOverlay,\n Controls: LightBoxControls,\n LeftSidebar: LightBoxLeftSidebar,\n RightSidebar: LightBoxRightSidebar,\n});\n"],"names":["lightBoxMountNode"],"mappings":"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"}
@@ -1,9 +1,9 @@
1
1
  import "react/jsx-runtime";
2
2
  import "react";
3
3
  import "../WindowResizeListener/WindowResizeListener.js";
4
- import "../../chunks/vendor-Bco_z_Yi.js";
4
+ import "../../chunks/vendor-1HxVLgKa.js";
5
5
  import "../LoaderScreen/LoaderScreen.js";
6
- import { L } from "../../chunks/LightBoxContent-W4QNMAOs.js";
6
+ import { L } from "../../chunks/LightBoxContent-DegsWbol.js";
7
7
  export {
8
8
  L as LightBoxContent
9
9
  };
@@ -0,0 +1,63 @@
1
+ import { jsx, jsxs, Fragment } from "react/jsx-runtime";
2
+ import { useRef } from "react";
3
+ import { c as clsx } from "../../../chunks/vendor-1HxVLgKa.js";
4
+ import { TriggerClickOnKeyDownEvent } from "../../Triggers/TriggerClickOnKeyDownEvent.js";
5
+ import { EButtonTheme } from "../../Button/enums.js";
6
+ import { Button } from "../../Button/Button.js";
7
+ import { EComponentSize } from "../../../enums/EComponentSize.js";
8
+ import { s as styles } from "../../../chunks/LightBoxControls.module-DNhvkSnJ.js";
9
+ const LightBoxArrow = ({
10
+ buttonClassName,
11
+ className,
12
+ clickByArrowKey,
13
+ dataTestId,
14
+ dataTutorialId,
15
+ eventKeyCode,
16
+ iconDesktop,
17
+ iconMobile,
18
+ onClick,
19
+ title,
20
+ ...htmlDivAttributes
21
+ }) => {
22
+ const desktopButtonRef = useRef(null);
23
+ const mobileButtonRef = useRef(null);
24
+ const renderButton = (params) => /* @__PURE__ */ jsxs(Fragment, { children: [
25
+ /* @__PURE__ */ jsx(
26
+ Button,
27
+ {
28
+ className: clsx(styles.lightBoxControlsDesktop, buttonClassName),
29
+ "data-test-id": (params == null ? void 0 : params.addDataTestId) ? dataTestId : void 0,
30
+ "data-tutorial-id": dataTutorialId,
31
+ onClick,
32
+ title,
33
+ ref: params == null ? void 0 : params.desktopButtonRef,
34
+ icon: iconDesktop,
35
+ size: EComponentSize.LG,
36
+ theme: EButtonTheme.SECONDARY_LIGHT
37
+ }
38
+ ),
39
+ /* @__PURE__ */ jsx(
40
+ Button,
41
+ {
42
+ className: clsx(styles.lightBoxControlsMobile, buttonClassName),
43
+ "data-test-id": (params == null ? void 0 : params.addDataTestId) ? dataTestId : void 0,
44
+ "data-tutorial-id": dataTutorialId,
45
+ onClick,
46
+ title,
47
+ ref: params == null ? void 0 : params.mobileButtonRef,
48
+ icon: iconMobile,
49
+ size: EComponentSize.MD,
50
+ theme: EButtonTheme.SECONDARY_LIGHT
51
+ }
52
+ )
53
+ ] });
54
+ return /* @__PURE__ */ jsx("div", { className, ...htmlDivAttributes, children: clickByArrowKey ? /* @__PURE__ */ jsxs("span", { children: [
55
+ /* @__PURE__ */ jsx("span", { className: styles.withKeyboardEvent, children: /* @__PURE__ */ jsx(TriggerClickOnKeyDownEvent, { targetRef: desktopButtonRef, eventKeyCode, children: /* @__PURE__ */ jsx(TriggerClickOnKeyDownEvent, { targetRef: mobileButtonRef, eventKeyCode, children: renderButton({ addDataTestId: true, desktopButtonRef, mobileButtonRef }) }) }) }),
56
+ /* @__PURE__ */ jsx("span", { className: styles.withoutKeyboardEvent, children: renderButton() })
57
+ ] }) : renderButton({ addDataTestId: true }) });
58
+ };
59
+ LightBoxArrow.displayName = "LightBoxArrow";
60
+ export {
61
+ LightBoxArrow
62
+ };
63
+ //# sourceMappingURL=LightBoxArrow.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LightBoxArrow.js","sources":["../../../../src/components/LightBox/LightBoxControls/LightBoxArrow.tsx"],"sourcesContent":["import React, { Ref, useRef } from \"react\";\nimport clsx from \"clsx\";\nimport { TriggerClickOnKeyDownEvent } from \"../../Triggers/TriggerClickOnKeyDownEvent\";\nimport { EButtonTheme } from \"../../Button/enums\";\nimport { Button } from \"../../Button/Button\";\nimport { EComponentSize } from \"@sberbusiness/triplex-next/enums/EComponentSize\";\nimport styles from \"../styles/LightBoxControls.module.less\";\n\n/** Свойства LightBoxArrow. */\ninterface ILightBoxArrowProps extends React.HTMLAttributes<HTMLDivElement> {\n /** CSS-класс кнопки (десктопной и мобильной). */\n buttonClassName: string;\n /** Кликнуть по кнопке при нажатии соответствующей стрелки на клавиатуре. */\n clickByArrowKey?: boolean;\n /** Значение data-test-id кнопки. */\n dataTestId: string;\n /** Идентификатор для обучающего тура. */\n dataTutorialId?: string;\n /** Код клавиши, при нажатии которой происходит клик по кнопке. */\n eventKeyCode: number;\n /** Иконка кнопки для экранов шире 1024px. */\n iconDesktop: React.ReactElement;\n /** Иконка кнопки для экранов менее 1024px. */\n iconMobile: React.ReactElement;\n /** Обработчик клика по кнопке. */\n onClick: () => void;\n}\n\ninterface IRenderButtonParams {\n /** Флаг, добавляющий data-test-id. Нужен, чтобы data-test-id не дублировался несколько раз на странице. */\n addDataTestId: boolean;\n /** Установка ссылки на десктопную кнопку. */\n desktopButtonRef?: Ref<HTMLButtonElement>;\n /** Установка ссылки на мобильную кнопку. */\n mobileButtonRef?: Ref<HTMLButtonElement>;\n}\n\n/** Внутренний компонент стрелки лайтбокса (общая реализация для LightBoxPrev и LightBoxNext). */\nexport const LightBoxArrow: React.FC<ILightBoxArrowProps> = ({\n buttonClassName,\n className,\n clickByArrowKey,\n dataTestId,\n dataTutorialId,\n eventKeyCode,\n iconDesktop,\n iconMobile,\n onClick,\n title,\n ...htmlDivAttributes\n}) => {\n // Отдельные ссылки на десктопную и мобильную кнопки: видимой в каждый момент является только одна,\n // а TriggerClickOnKeyDownEvent кликает только по видимой (offsetParent !== null).\n const desktopButtonRef = useRef<HTMLButtonElement>(null);\n const mobileButtonRef = useRef<HTMLButtonElement>(null);\n\n /**\n * Отображение кнопки.\n */\n const renderButton = (params?: IRenderButtonParams) => (\n <>\n {/* Кнопка для экранов шире 1024px */}\n <Button\n className={clsx(styles.lightBoxControlsDesktop, buttonClassName)}\n data-test-id={params?.addDataTestId ? dataTestId : undefined}\n data-tutorial-id={dataTutorialId}\n onClick={onClick}\n title={title}\n ref={params?.desktopButtonRef}\n icon={iconDesktop}\n size={EComponentSize.LG}\n theme={EButtonTheme.SECONDARY_LIGHT}\n />\n {/* Кнопка для экранов менее 1024px */}\n <Button\n className={clsx(styles.lightBoxControlsMobile, buttonClassName)}\n data-test-id={params?.addDataTestId ? dataTestId : undefined}\n data-tutorial-id={dataTutorialId}\n onClick={onClick}\n title={title}\n ref={params?.mobileButtonRef}\n icon={iconMobile}\n size={EComponentSize.MD}\n theme={EButtonTheme.SECONDARY_LIGHT}\n />\n </>\n );\n\n return (\n <div className={className} {...htmlDivAttributes}>\n {clickByArrowKey ? (\n <span>\n {/* Кнопка с триггером при нажатии стрелки на клавиатуре. */}\n <span className={styles.withKeyboardEvent}>\n <TriggerClickOnKeyDownEvent targetRef={desktopButtonRef} eventKeyCode={eventKeyCode}>\n <TriggerClickOnKeyDownEvent targetRef={mobileButtonRef} eventKeyCode={eventKeyCode}>\n {renderButton({ addDataTestId: true, desktopButtonRef, mobileButtonRef })}\n </TriggerClickOnKeyDownEvent>\n </TriggerClickOnKeyDownEvent>\n </span>\n {/* Кнопка без триггера при нажатии стрелки на клавиатуре. Нельзя нажать, когда открыт SideOverlay. */}\n <span className={styles.withoutKeyboardEvent}>{renderButton()}</span>\n </span>\n ) : (\n renderButton({ addDataTestId: true })\n )}\n </div>\n );\n};\n\nLightBoxArrow.displayName = \"LightBoxArrow\";\n"],"names":[],"mappings":";;;;;;;;AAsCO,MAAM,gBAA+C,CAAC;AAAA,EACzD;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACP,MAAM;AAGF,QAAM,mBAAmB,OAA0B,IAAI;AACvD,QAAM,kBAAkB,OAA0B,IAAI;AAKtD,QAAM,eAAe,CAAC,WAClB,qBAAA,UAAA,EAEI,UAAA;AAAA,IAAA;AAAA,MAAC;AAAA,MAAA;AAAA,QACG,WAAW,KAAK,OAAO,yBAAyB,eAAe;AAAA,QAC/D,iBAAc,iCAAQ,iBAAgB,aAAa;AAAA,QACnD,oBAAkB;AAAA,QAClB;AAAA,QACA;AAAA,QACA,KAAK,iCAAQ;AAAA,QACb,MAAM;AAAA,QACN,MAAM,eAAe;AAAA,QACrB,OAAO,aAAa;AAAA,MAAA;AAAA,IAAA;AAAA,IAGxB;AAAA,MAAC;AAAA,MAAA;AAAA,QACG,WAAW,KAAK,OAAO,wBAAwB,eAAe;AAAA,QAC9D,iBAAc,iCAAQ,iBAAgB,aAAa;AAAA,QACnD,oBAAkB;AAAA,QAClB;AAAA,QACA;AAAA,QACA,KAAK,iCAAQ;AAAA,QACb,MAAM;AAAA,QACN,MAAM,eAAe;AAAA,QACrB,OAAO,aAAa;AAAA,MAAA;AAAA,IAAA;AAAA,EACxB,GACJ;AAGJ,6BACK,OAAA,EAAI,WAAuB,GAAG,mBAC1B,UAAA,uCACI,QAAA,EAEG,UAAA;AAAA,IAAA,oBAAC,QAAA,EAAK,WAAW,OAAO,mBACpB,8BAAC,4BAAA,EAA2B,WAAW,kBAAkB,cACrD,UAAA,oBAAC,4BAAA,EAA2B,WAAW,iBAAiB,cACnD,UAAA,aAAa,EAAE,eAAe,MAAM,kBAAkB,gBAAA,CAAiB,EAAA,CAC5E,EAAA,CACJ,EAAA,CACJ;AAAA,wBAEC,QAAA,EAAK,WAAW,OAAO,sBAAuB,yBAAa,CAAE;AAAA,EAAA,EAAA,CAClE,IAEA,aAAa,EAAE,eAAe,KAAA,CAAM,EAAA,CAE5C;AAER;AAEA,cAAc,cAAc;"}
@@ -1,21 +1,22 @@
1
1
  import { jsxs, jsx, Fragment } from "react/jsx-runtime";
2
2
  import { useRef } from "react";
3
- import { c as clsx } from "../../../chunks/vendor-Bco_z_Yi.js";
3
+ import { c as clsx } from "../../../chunks/vendor-1HxVLgKa.js";
4
4
  import { CrossStrokeSrvIcon32, CrossStrokeSrvIcon20 } from "@sberbusiness/icons-next";
5
5
  import { TriggerClickOnKeyDownEvent } from "../../Triggers/TriggerClickOnKeyDownEvent.js";
6
6
  import { EVENT_KEY_CODES } from "../../../utils/keyboard.js";
7
7
  import { EButtonTheme } from "../../Button/enums.js";
8
8
  import { Button } from "../../Button/Button.js";
9
9
  import { EComponentSize } from "../../../enums/EComponentSize.js";
10
- import { s as styles } from "../../../chunks/LightBoxControls.module-oPcN4Gxu.js";
10
+ import { s as styles } from "../../../chunks/LightBoxControls.module-DNhvkSnJ.js";
11
11
  const LightBoxClose = ({
12
12
  className,
13
13
  onClick,
14
14
  title = "Закрыть",
15
15
  ...htmlDivAttributes
16
16
  }) => {
17
- const ref = useRef(null);
18
- const renderButton = (buttonRef) => /* @__PURE__ */ jsxs(Fragment, { children: [
17
+ const desktopButtonRef = useRef(null);
18
+ const mobileButtonRef = useRef(null);
19
+ const renderButton = (desktopRef, mobileRef) => /* @__PURE__ */ jsxs(Fragment, { children: [
19
20
  /* @__PURE__ */ jsx(
20
21
  Button,
21
22
  {
@@ -23,7 +24,7 @@ const LightBoxClose = ({
23
24
  onClick,
24
25
  title,
25
26
  "data-exclude-modal-focus": true,
26
- ref: buttonRef,
27
+ ref: desktopRef,
27
28
  icon: /* @__PURE__ */ jsx(CrossStrokeSrvIcon32, { paletteIndex: 0 }),
28
29
  size: EComponentSize.LG,
29
30
  theme: EButtonTheme.SECONDARY_LIGHT
@@ -36,6 +37,7 @@ const LightBoxClose = ({
36
37
  onClick,
37
38
  title,
38
39
  "data-exclude-modal-focus": true,
40
+ ref: mobileRef,
39
41
  icon: /* @__PURE__ */ jsx(CrossStrokeSrvIcon20, { paletteIndex: 0 }),
40
42
  size: EComponentSize.MD,
41
43
  theme: EButtonTheme.SECONDARY_LIGHT
@@ -43,7 +45,7 @@ const LightBoxClose = ({
43
45
  )
44
46
  ] });
45
47
  return /* @__PURE__ */ jsxs("div", { className: clsx(className, styles.lightBoxClose), ...htmlDivAttributes, children: [
46
- /* @__PURE__ */ jsx("span", { className: styles.withKeyboardEvent, children: /* @__PURE__ */ jsx(TriggerClickOnKeyDownEvent, { eventKeyCode: EVENT_KEY_CODES.ESCAPE, targetRef: ref, children: renderButton(ref) }) }),
48
+ /* @__PURE__ */ jsx("span", { className: styles.withKeyboardEvent, children: /* @__PURE__ */ jsx(TriggerClickOnKeyDownEvent, { eventKeyCode: EVENT_KEY_CODES.ESCAPE, targetRef: desktopButtonRef, children: /* @__PURE__ */ jsx(TriggerClickOnKeyDownEvent, { eventKeyCode: EVENT_KEY_CODES.ESCAPE, targetRef: mobileButtonRef, children: renderButton(desktopButtonRef, mobileButtonRef) }) }) }),
47
49
  /* @__PURE__ */ jsx("span", { className: styles.withoutKeyboardEvent, children: renderButton() })
48
50
  ] });
49
51
  };
@@ -1 +1 @@
1
- {"version":3,"file":"LightBoxClose.js","sources":["../../../../src/components/LightBox/LightBoxControls/LightBoxClose.tsx"],"sourcesContent":["import React, { Ref, useRef } from \"react\";\nimport clsx from \"clsx\";\nimport { CrossStrokeSrvIcon32, CrossStrokeSrvIcon20 } from \"@sberbusiness/icons-next\";\nimport { TriggerClickOnKeyDownEvent } from \"../../Triggers/TriggerClickOnKeyDownEvent\";\nimport { EVENT_KEY_CODES } from \"../../../utils/keyboard\";\nimport { EButtonTheme } from \"../../Button/enums\";\nimport { Button } from \"../../Button/Button\";\nimport { EComponentSize } from \"@sberbusiness/triplex-next/enums/EComponentSize\";\nimport styles from \"../styles/LightBoxControls.module.less\";\n\n/** Свойства LightBoxClose. */\ninterface ILightBoxCloseProps extends React.HTMLAttributes<HTMLDivElement> {\n /** Обработчик закрытия лайтбокса. */\n onClick: () => void;\n}\n\n/** Кнопка закрытия лайтбокса. */\nexport const LightBoxClose: React.FC<ILightBoxCloseProps> = ({\n className,\n onClick,\n title = \"Закрыть\",\n ...htmlDivAttributes\n}) => {\n const ref = useRef<HTMLButtonElement>(null);\n\n const renderButton = (buttonRef?: Ref<HTMLButtonElement>) => (\n <>\n {/* Кнопка для экранов шире 1024px */}\n <Button\n className={styles.lightBoxControlsDesktop}\n onClick={onClick}\n title={title}\n data-exclude-modal-focus\n ref={buttonRef}\n icon={<CrossStrokeSrvIcon32 paletteIndex={0} />}\n size={EComponentSize.LG}\n theme={EButtonTheme.SECONDARY_LIGHT}\n />\n {/* Кнопка для экранов менее 1024px */}\n <Button\n className={styles.lightBoxControlsMobile}\n onClick={onClick}\n title={title}\n data-exclude-modal-focus\n icon={<CrossStrokeSrvIcon20 paletteIndex={0} />}\n size={EComponentSize.MD}\n theme={EButtonTheme.SECONDARY_LIGHT}\n />\n </>\n );\n\n return (\n <div className={clsx(className, styles.lightBoxClose)} {...htmlDivAttributes}>\n {/* Кнопка с триггером по Esc. */}\n <span className={styles.withKeyboardEvent}>\n <TriggerClickOnKeyDownEvent eventKeyCode={EVENT_KEY_CODES.ESCAPE} targetRef={ref}>\n {renderButton(ref)}\n </TriggerClickOnKeyDownEvent>\n </span>\n\n {/* Кнопка без триггера по Esc. Отображается, когда открыт SideOverlay. */}\n <span className={styles.withoutKeyboardEvent}>{renderButton()}</span>\n </div>\n );\n};\n\nLightBoxClose.displayName = \"LightBoxClose\";\n"],"names":[],"mappings":";;;;;;;;;;AAiBO,MAAM,gBAA+C,CAAC;AAAA,EACzD;AAAA,EACA;AAAA,EACA,QAAQ;AAAA,EACR,GAAG;AACP,MAAM;AACF,QAAM,MAAM,OAA0B,IAAI;AAE1C,QAAM,eAAe,CAAC,cAClB,qBAAA,UAAA,EAEI,UAAA;AAAA,IAAA;AAAA,MAAC;AAAA,MAAA;AAAA,QACG,WAAW,OAAO;AAAA,QAClB;AAAA,QACA;AAAA,QACA,4BAAwB;AAAA,QACxB,KAAK;AAAA,QACL,MAAM,oBAAC,sBAAA,EAAqB,cAAc,EAAA,CAAG;AAAA,QAC7C,MAAM,eAAe;AAAA,QACrB,OAAO,aAAa;AAAA,MAAA;AAAA,IAAA;AAAA,IAGxB;AAAA,MAAC;AAAA,MAAA;AAAA,QACG,WAAW,OAAO;AAAA,QAClB;AAAA,QACA;AAAA,QACA,4BAAwB;AAAA,QACxB,MAAM,oBAAC,sBAAA,EAAqB,cAAc,EAAA,CAAG;AAAA,QAC7C,MAAM,eAAe;AAAA,QACrB,OAAO,aAAa;AAAA,MAAA;AAAA,IAAA;AAAA,EACxB,GACJ;AAGJ,SACI,qBAAC,SAAI,WAAW,KAAK,WAAW,OAAO,aAAa,GAAI,GAAG,mBAEvD,UAAA;AAAA,IAAA,oBAAC,QAAA,EAAK,WAAW,OAAO,mBACpB,8BAAC,4BAAA,EAA2B,cAAc,gBAAgB,QAAQ,WAAW,KACxE,UAAA,aAAa,GAAG,GACrB,GACJ;AAAA,wBAGC,QAAA,EAAK,WAAW,OAAO,sBAAuB,yBAAa,CAAE;AAAA,EAAA,GAClE;AAER;AAEA,cAAc,cAAc;"}
1
+ {"version":3,"file":"LightBoxClose.js","sources":["../../../../src/components/LightBox/LightBoxControls/LightBoxClose.tsx"],"sourcesContent":["import React, { Ref, useRef } from \"react\";\nimport clsx from \"clsx\";\nimport { CrossStrokeSrvIcon32, CrossStrokeSrvIcon20 } from \"@sberbusiness/icons-next\";\nimport { TriggerClickOnKeyDownEvent } from \"../../Triggers/TriggerClickOnKeyDownEvent\";\nimport { EVENT_KEY_CODES } from \"../../../utils/keyboard\";\nimport { EButtonTheme } from \"../../Button/enums\";\nimport { Button } from \"../../Button/Button\";\nimport { EComponentSize } from \"@sberbusiness/triplex-next/enums/EComponentSize\";\nimport styles from \"../styles/LightBoxControls.module.less\";\n\n/** Свойства LightBoxClose. */\nexport interface ILightBoxCloseProps extends React.HTMLAttributes<HTMLDivElement> {\n /** Обработчик закрытия лайтбокса. */\n onClick: () => void;\n}\n\n/** Кнопка закрытия лайтбокса. */\nexport const LightBoxClose: React.FC<ILightBoxCloseProps> = ({\n className,\n onClick,\n title = \"Закрыть\",\n ...htmlDivAttributes\n}) => {\n // Отдельные ссылки на десктопную и мобильную кнопки: видимой в каждый момент является только одна,\n // а TriggerClickOnKeyDownEvent кликает только по видимой (offsetParent !== null).\n const desktopButtonRef = useRef<HTMLButtonElement>(null);\n const mobileButtonRef = useRef<HTMLButtonElement>(null);\n\n const renderButton = (desktopRef?: Ref<HTMLButtonElement>, mobileRef?: Ref<HTMLButtonElement>) => (\n <>\n {/* Кнопка для экранов шире 1024px */}\n <Button\n className={styles.lightBoxControlsDesktop}\n onClick={onClick}\n title={title}\n data-exclude-modal-focus\n ref={desktopRef}\n icon={<CrossStrokeSrvIcon32 paletteIndex={0} />}\n size={EComponentSize.LG}\n theme={EButtonTheme.SECONDARY_LIGHT}\n />\n {/* Кнопка для экранов менее 1024px */}\n <Button\n className={styles.lightBoxControlsMobile}\n onClick={onClick}\n title={title}\n data-exclude-modal-focus\n ref={mobileRef}\n icon={<CrossStrokeSrvIcon20 paletteIndex={0} />}\n size={EComponentSize.MD}\n theme={EButtonTheme.SECONDARY_LIGHT}\n />\n </>\n );\n\n return (\n <div className={clsx(className, styles.lightBoxClose)} {...htmlDivAttributes}>\n {/* Кнопка с триггером по Esc. */}\n <span className={styles.withKeyboardEvent}>\n <TriggerClickOnKeyDownEvent eventKeyCode={EVENT_KEY_CODES.ESCAPE} targetRef={desktopButtonRef}>\n <TriggerClickOnKeyDownEvent eventKeyCode={EVENT_KEY_CODES.ESCAPE} targetRef={mobileButtonRef}>\n {renderButton(desktopButtonRef, mobileButtonRef)}\n </TriggerClickOnKeyDownEvent>\n </TriggerClickOnKeyDownEvent>\n </span>\n\n {/* Кнопка без триггера по Esc. Отображается, когда открыт SideOverlay. */}\n <span className={styles.withoutKeyboardEvent}>{renderButton()}</span>\n </div>\n );\n};\n\nLightBoxClose.displayName = \"LightBoxClose\";\n"],"names":[],"mappings":";;;;;;;;;;AAiBO,MAAM,gBAA+C,CAAC;AAAA,EACzD;AAAA,EACA;AAAA,EACA,QAAQ;AAAA,EACR,GAAG;AACP,MAAM;AAGF,QAAM,mBAAmB,OAA0B,IAAI;AACvD,QAAM,kBAAkB,OAA0B,IAAI;AAEtD,QAAM,eAAe,CAAC,YAAqC,cACvD,qBAAA,UAAA,EAEI,UAAA;AAAA,IAAA;AAAA,MAAC;AAAA,MAAA;AAAA,QACG,WAAW,OAAO;AAAA,QAClB;AAAA,QACA;AAAA,QACA,4BAAwB;AAAA,QACxB,KAAK;AAAA,QACL,MAAM,oBAAC,sBAAA,EAAqB,cAAc,EAAA,CAAG;AAAA,QAC7C,MAAM,eAAe;AAAA,QACrB,OAAO,aAAa;AAAA,MAAA;AAAA,IAAA;AAAA,IAGxB;AAAA,MAAC;AAAA,MAAA;AAAA,QACG,WAAW,OAAO;AAAA,QAClB;AAAA,QACA;AAAA,QACA,4BAAwB;AAAA,QACxB,KAAK;AAAA,QACL,MAAM,oBAAC,sBAAA,EAAqB,cAAc,EAAA,CAAG;AAAA,QAC7C,MAAM,eAAe;AAAA,QACrB,OAAO,aAAa;AAAA,MAAA;AAAA,IAAA;AAAA,EACxB,GACJ;AAGJ,SACI,qBAAC,SAAI,WAAW,KAAK,WAAW,OAAO,aAAa,GAAI,GAAG,mBAEvD,UAAA;AAAA,IAAA,oBAAC,QAAA,EAAK,WAAW,OAAO,mBACpB,8BAAC,4BAAA,EAA2B,cAAc,gBAAgB,QAAQ,WAAW,kBACzE,8BAAC,4BAAA,EAA2B,cAAc,gBAAgB,QAAQ,WAAW,iBACxE,uBAAa,kBAAkB,eAAe,EAAA,CACnD,EAAA,CACJ,EAAA,CACJ;AAAA,wBAGC,QAAA,EAAK,WAAW,OAAO,sBAAuB,yBAAa,CAAE;AAAA,EAAA,GAClE;AAER;AAEA,cAAc,cAAc;"}
@@ -2,8 +2,8 @@ import { jsx } from "react/jsx-runtime";
2
2
  import { LightBoxClose } from "./LightBoxClose.js";
3
3
  import { LightBoxNext } from "./LightBoxNext.js";
4
4
  import { LightBoxPrev } from "./LightBoxPrev.js";
5
- import { c as clsx } from "../../../chunks/vendor-Bco_z_Yi.js";
6
- import { s as styles } from "../../../chunks/LightBoxControls.module-oPcN4Gxu.js";
5
+ import { c as clsx } from "../../../chunks/vendor-1HxVLgKa.js";
6
+ import { s as styles } from "../../../chunks/LightBoxControls.module-DNhvkSnJ.js";
7
7
  const LightBoxControls = ({ children, className, ...htmlDivAttributes }) => /* @__PURE__ */ jsx("div", { className: clsx(className, styles.lightBoxControls), ...htmlDivAttributes, "data-lightbox-component": "controls", children });
8
8
  LightBoxControls.displayName = "LightBoxControls";
9
9
  LightBoxControls.Close = LightBoxClose;
@@ -1 +1 @@
1
- {"version":3,"file":"LightBoxControls.js","sources":["../../../../src/components/LightBox/LightBoxControls/LightBoxControls.tsx"],"sourcesContent":["import React from \"react\";\nimport { LightBoxClose } from \"./LightBoxClose\";\nimport { LightBoxNext } from \"./LightBoxNext\";\nimport { LightBoxPrev } from \"./LightBoxPrev\";\nimport clsx from \"clsx\";\nimport styles from \"../styles/LightBoxControls.module.less\";\n\n/** Свойства компонента LightBoxControls. */\ninterface ILightBoxControlsProps extends React.HTMLAttributes<HTMLDivElement> {}\n\nexport interface ILightBoxControlsFC extends React.FC<ILightBoxControlsProps> {\n Close: typeof LightBoxClose;\n Next: typeof LightBoxNext;\n Prev: typeof LightBoxPrev;\n}\n\n/** Контейнер кнопок-действий (закрыть/вперед/назад). */\nexport const LightBoxControls: ILightBoxControlsFC = ({ children, className, ...htmlDivAttributes }) => (\n <div className={clsx(className, styles.lightBoxControls)} {...htmlDivAttributes} data-lightbox-component=\"controls\">\n {children}\n </div>\n);\n\nLightBoxControls.displayName = \"LightBoxControls\";\nLightBoxControls.Close = LightBoxClose;\nLightBoxControls.Next = LightBoxNext;\nLightBoxControls.Prev = LightBoxPrev;\n"],"names":[],"mappings":";;;;;;AAiBO,MAAM,mBAAwC,CAAC,EAAE,UAAU,WAAW,GAAG,wBAC5E,oBAAC,OAAA,EAAI,WAAW,KAAK,WAAW,OAAO,gBAAgB,GAAI,GAAG,mBAAmB,2BAAwB,YACpG,SAAA,CACL;AAGJ,iBAAiB,cAAc;AAC/B,iBAAiB,QAAQ;AACzB,iBAAiB,OAAO;AACxB,iBAAiB,OAAO;"}
1
+ {"version":3,"file":"LightBoxControls.js","sources":["../../../../src/components/LightBox/LightBoxControls/LightBoxControls.tsx"],"sourcesContent":["import React from \"react\";\nimport { LightBoxClose } from \"./LightBoxClose\";\nimport { LightBoxNext } from \"./LightBoxNext\";\nimport { LightBoxPrev } from \"./LightBoxPrev\";\nimport clsx from \"clsx\";\nimport styles from \"../styles/LightBoxControls.module.less\";\n\n/** Свойства компонента LightBoxControls. */\nexport interface ILightBoxControlsProps extends React.HTMLAttributes<HTMLDivElement> {}\n\nexport interface ILightBoxControlsFC extends React.FC<ILightBoxControlsProps> {\n Close: typeof LightBoxClose;\n Next: typeof LightBoxNext;\n Prev: typeof LightBoxPrev;\n}\n\n/** Контейнер кнопок-действий (закрыть/вперед/назад). */\nexport const LightBoxControls: ILightBoxControlsFC = ({ children, className, ...htmlDivAttributes }) => (\n <div className={clsx(className, styles.lightBoxControls)} {...htmlDivAttributes} data-lightbox-component=\"controls\">\n {children}\n </div>\n);\n\nLightBoxControls.displayName = \"LightBoxControls\";\nLightBoxControls.Close = LightBoxClose;\nLightBoxControls.Next = LightBoxNext;\nLightBoxControls.Prev = LightBoxPrev;\n"],"names":[],"mappings":";;;;;;AAiBO,MAAM,mBAAwC,CAAC,EAAE,UAAU,WAAW,GAAG,wBAC5E,oBAAC,OAAA,EAAI,WAAW,KAAK,WAAW,OAAO,gBAAgB,GAAI,GAAG,mBAAmB,2BAAwB,YACpG,SAAA,CACL;AAGJ,iBAAiB,cAAc;AAC/B,iBAAiB,QAAQ;AACzB,iBAAiB,OAAO;AACxB,iBAAiB,OAAO;"}
@@ -1,57 +1,22 @@
1
- import { jsx, jsxs, Fragment } from "react/jsx-runtime";
2
- import { useRef } from "react";
3
- import { c as clsx } from "../../../chunks/vendor-Bco_z_Yi.js";
4
- import { CaretrightStrokeSrvIcon32, CaretrightStrokeSrvIcon20 } from "@sberbusiness/icons-next";
5
- import { TriggerClickOnKeyDownEvent } from "../../Triggers/TriggerClickOnKeyDownEvent.js";
1
+ import { jsx } from "react/jsx-runtime";
2
+ import { c as clsx } from "../../../chunks/vendor-1HxVLgKa.js";
3
+ import { CaretrightStrokeSrvIcon20, CaretrightStrokeSrvIcon32 } from "@sberbusiness/icons-next";
6
4
  import { EVENT_KEY_CODES } from "../../../utils/keyboard.js";
7
- import { Button } from "../../Button/Button.js";
8
- import { EButtonTheme } from "../../Button/enums.js";
9
- import { EComponentSize } from "../../../enums/EComponentSize.js";
10
- import { s as styles } from "../../../chunks/LightBoxControls.module-oPcN4Gxu.js";
11
- const LightBoxNext = ({
12
- className,
13
- clickByArrowRight,
14
- dataTutorialId,
15
- onClick,
16
- title,
17
- ...htmlDivAttributes
18
- }) => {
19
- const ref = useRef(null);
20
- const renderButton = (params) => /* @__PURE__ */ jsxs(Fragment, { children: [
21
- /* @__PURE__ */ jsx(
22
- Button,
23
- {
24
- className: clsx(styles.lightBoxControlsDesktop, styles.lightBoxNextButton),
25
- "data-test-id": (params == null ? void 0 : params.addDataTestId) ? "lightBox-next" : void 0,
26
- "data-tutorial-id": dataTutorialId,
27
- onClick,
28
- title,
29
- ref: params == null ? void 0 : params.buttonRef,
30
- icon: /* @__PURE__ */ jsx(CaretrightStrokeSrvIcon32, { paletteIndex: 0 }),
31
- size: EComponentSize.LG,
32
- theme: EButtonTheme.SECONDARY_LIGHT
33
- }
34
- ),
35
- /* @__PURE__ */ jsx(
36
- Button,
37
- {
38
- className: clsx(styles.lightBoxControlsMobile, styles.lightBoxNextButton),
39
- "data-test-id": (params == null ? void 0 : params.addDataTestId) ? "lightBox-next" : void 0,
40
- "data-tutorial-id": dataTutorialId,
41
- onClick,
42
- title,
43
- ref: params == null ? void 0 : params.buttonRef,
44
- icon: /* @__PURE__ */ jsx(CaretrightStrokeSrvIcon20, { paletteIndex: 0 }),
45
- size: EComponentSize.MD,
46
- theme: EButtonTheme.SECONDARY_LIGHT
47
- }
48
- )
49
- ] });
50
- return /* @__PURE__ */ jsx("div", { className: clsx(className, styles.lightBoxNext), ...htmlDivAttributes, children: clickByArrowRight ? /* @__PURE__ */ jsxs("span", { children: [
51
- /* @__PURE__ */ jsx("span", { className: styles.withKeyboardEvent, children: /* @__PURE__ */ jsx(TriggerClickOnKeyDownEvent, { targetRef: ref, eventKeyCode: EVENT_KEY_CODES.ARROW_RIGHT, children: renderButton({ addDataTestId: true, buttonRef: ref }) }) }),
52
- /* @__PURE__ */ jsx("span", { className: styles.withoutKeyboardEvent, children: renderButton() })
53
- ] }) : renderButton({ addDataTestId: true }) });
54
- };
5
+ import { LightBoxArrow } from "./LightBoxArrow.js";
6
+ import { s as styles } from "../../../chunks/LightBoxControls.module-DNhvkSnJ.js";
7
+ const LightBoxNext = ({ className, clickByArrowRight, ...rest }) => /* @__PURE__ */ jsx(
8
+ LightBoxArrow,
9
+ {
10
+ ...rest,
11
+ buttonClassName: styles.lightBoxNextButton,
12
+ className: clsx(className, styles.lightBoxNext),
13
+ clickByArrowKey: clickByArrowRight,
14
+ dataTestId: "lightBox-next",
15
+ eventKeyCode: EVENT_KEY_CODES.ARROW_RIGHT,
16
+ iconDesktop: /* @__PURE__ */ jsx(CaretrightStrokeSrvIcon32, { paletteIndex: 0 }),
17
+ iconMobile: /* @__PURE__ */ jsx(CaretrightStrokeSrvIcon20, { paletteIndex: 0 })
18
+ }
19
+ );
55
20
  LightBoxNext.displayName = "LightBoxNext";
56
21
  export {
57
22
  LightBoxNext
@@ -1 +1 @@
1
- {"version":3,"file":"LightBoxNext.js","sources":["../../../../src/components/LightBox/LightBoxControls/LightBoxNext.tsx"],"sourcesContent":["import React, { Ref, useRef } from \"react\";\nimport clsx from \"clsx\";\nimport { CaretrightStrokeSrvIcon20, CaretrightStrokeSrvIcon32 } from \"@sberbusiness/icons-next\";\nimport { TriggerClickOnKeyDownEvent } from \"../../Triggers/TriggerClickOnKeyDownEvent\";\nimport { EVENT_KEY_CODES } from \"../../../utils/keyboard\";\nimport { Button } from \"../../Button/Button\";\nimport { EButtonTheme } from \"../../Button/enums\";\nimport { EComponentSize } from \"@sberbusiness/triplex-next/enums/EComponentSize\";\nimport styles from \"../styles/LightBoxControls.module.less\";\n\n/** Свойства LightBoxNext. */\ninterface ILightBoxNextProps extends React.HTMLAttributes<HTMLDivElement> {\n /** Кликнуть по кнопке при нажатии стрелки вправо на клавиатуре. */\n clickByArrowRight?: boolean;\n /** Обработчик клика по кнопке. */\n onClick: () => void;\n /** Идентификатор для обучающего тура. */\n dataTutorialId?: string;\n}\n\ninterface IRenderButtonParams {\n /** Флаг, добавляющий data-test-id. Нужен, чтобы data-test-id не дублировался несколько раз на странице. */\n addDataTestId: boolean;\n /** Установка ссылки на кнопку. */\n buttonRef?: Ref<HTMLButtonElement>;\n}\n\n/** Стрелка лайтбокса \"Вперёд\". */\nexport const LightBoxNext: React.FC<ILightBoxNextProps> = ({\n className,\n clickByArrowRight,\n dataTutorialId,\n onClick,\n title,\n ...htmlDivAttributes\n}) => {\n const ref = useRef<HTMLButtonElement>(null);\n\n /**\n * Отображение кнопки.\n */\n const renderButton = (params?: IRenderButtonParams) => (\n <>\n {/* Кнопка для экранов шире 1024px */}\n <Button\n className={clsx(styles.lightBoxControlsDesktop, styles.lightBoxNextButton)}\n data-test-id={params?.addDataTestId ? \"lightBox-next\" : undefined}\n data-tutorial-id={dataTutorialId}\n onClick={onClick}\n title={title}\n ref={params?.buttonRef}\n icon={<CaretrightStrokeSrvIcon32 paletteIndex={0} />}\n size={EComponentSize.LG}\n theme={EButtonTheme.SECONDARY_LIGHT}\n />\n {/* Кнопка для экранов менее 1024px */}\n <Button\n className={clsx(styles.lightBoxControlsMobile, styles.lightBoxNextButton)}\n data-test-id={params?.addDataTestId ? \"lightBox-next\" : undefined}\n data-tutorial-id={dataTutorialId}\n onClick={onClick}\n title={title}\n ref={params?.buttonRef}\n icon={<CaretrightStrokeSrvIcon20 paletteIndex={0} />}\n size={EComponentSize.MD}\n theme={EButtonTheme.SECONDARY_LIGHT}\n />\n </>\n );\n\n return (\n <div className={clsx(className, styles.lightBoxNext)} {...htmlDivAttributes}>\n {clickByArrowRight ? (\n <span>\n {/* Кнопка с триггером при нажатии стрелки на клавиатуре. */}\n <span className={styles.withKeyboardEvent}>\n <TriggerClickOnKeyDownEvent targetRef={ref} eventKeyCode={EVENT_KEY_CODES.ARROW_RIGHT}>\n {renderButton({ addDataTestId: true, buttonRef: ref })}\n </TriggerClickOnKeyDownEvent>\n </span>\n {/* Кнопка без триггера при нажатии стрелки на клавиатуре. Нельзя нажать, когда открыт SideOverlay. */}\n <span className={styles.withoutKeyboardEvent}>{renderButton()}</span>\n </span>\n ) : (\n renderButton({ addDataTestId: true })\n )}\n </div>\n );\n};\n\nLightBoxNext.displayName = \"LightBoxNext\";\n"],"names":[],"mappings":";;;;;;;;;;AA4BO,MAAM,eAA6C,CAAC;AAAA,EACvD;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACP,MAAM;AACF,QAAM,MAAM,OAA0B,IAAI;AAK1C,QAAM,eAAe,CAAC,WAClB,qBAAA,UAAA,EAEI,UAAA;AAAA,IAAA;AAAA,MAAC;AAAA,MAAA;AAAA,QACG,WAAW,KAAK,OAAO,yBAAyB,OAAO,kBAAkB;AAAA,QACzE,iBAAc,iCAAQ,iBAAgB,kBAAkB;AAAA,QACxD,oBAAkB;AAAA,QAClB;AAAA,QACA;AAAA,QACA,KAAK,iCAAQ;AAAA,QACb,MAAM,oBAAC,2BAAA,EAA0B,cAAc,EAAA,CAAG;AAAA,QAClD,MAAM,eAAe;AAAA,QACrB,OAAO,aAAa;AAAA,MAAA;AAAA,IAAA;AAAA,IAGxB;AAAA,MAAC;AAAA,MAAA;AAAA,QACG,WAAW,KAAK,OAAO,wBAAwB,OAAO,kBAAkB;AAAA,QACxE,iBAAc,iCAAQ,iBAAgB,kBAAkB;AAAA,QACxD,oBAAkB;AAAA,QAClB;AAAA,QACA;AAAA,QACA,KAAK,iCAAQ;AAAA,QACb,MAAM,oBAAC,2BAAA,EAA0B,cAAc,EAAA,CAAG;AAAA,QAClD,MAAM,eAAe;AAAA,QACrB,OAAO,aAAa;AAAA,MAAA;AAAA,IAAA;AAAA,EACxB,GACJ;AAGJ,SACI,oBAAC,OAAA,EAAI,WAAW,KAAK,WAAW,OAAO,YAAY,GAAI,GAAG,mBACrD,UAAA,oBACG,qBAAC,QAAA,EAEG,UAAA;AAAA,IAAA,oBAAC,UAAK,WAAW,OAAO,mBACpB,UAAA,oBAAC,4BAAA,EAA2B,WAAW,KAAK,cAAc,gBAAgB,aACrE,UAAA,aAAa,EAAE,eAAe,MAAM,WAAW,KAAK,GACzD,EAAA,CACJ;AAAA,wBAEC,QAAA,EAAK,WAAW,OAAO,sBAAuB,yBAAa,CAAE;AAAA,EAAA,EAAA,CAClE,IAEA,aAAa,EAAE,eAAe,KAAA,CAAM,EAAA,CAE5C;AAER;AAEA,aAAa,cAAc;"}
1
+ {"version":3,"file":"LightBoxNext.js","sources":["../../../../src/components/LightBox/LightBoxControls/LightBoxNext.tsx"],"sourcesContent":["import React from \"react\";\nimport clsx from \"clsx\";\nimport { CaretrightStrokeSrvIcon20, CaretrightStrokeSrvIcon32 } from \"@sberbusiness/icons-next\";\nimport { EVENT_KEY_CODES } from \"../../../utils/keyboard\";\nimport { LightBoxArrow } from \"./LightBoxArrow\";\nimport styles from \"../styles/LightBoxControls.module.less\";\n\n/** Свойства LightBoxNext. */\nexport interface ILightBoxNextProps extends React.HTMLAttributes<HTMLDivElement> {\n /** Кликнуть по кнопке при нажатии стрелки вправо на клавиатуре. */\n clickByArrowRight?: boolean;\n /** Обработчик клика по кнопке. */\n onClick: () => void;\n /** Идентификатор для обучающего тура. */\n dataTutorialId?: string;\n}\n\n/** Стрелка лайтбокса \"Вперёд\". */\nexport const LightBoxNext: React.FC<ILightBoxNextProps> = ({ className, clickByArrowRight, ...rest }) => (\n <LightBoxArrow\n {...rest}\n buttonClassName={styles.lightBoxNextButton}\n className={clsx(className, styles.lightBoxNext)}\n clickByArrowKey={clickByArrowRight}\n dataTestId=\"lightBox-next\"\n eventKeyCode={EVENT_KEY_CODES.ARROW_RIGHT}\n iconDesktop={<CaretrightStrokeSrvIcon32 paletteIndex={0} />}\n iconMobile={<CaretrightStrokeSrvIcon20 paletteIndex={0} />}\n />\n);\n\nLightBoxNext.displayName = \"LightBoxNext\";\n"],"names":[],"mappings":";;;;;;AAkBO,MAAM,eAA6C,CAAC,EAAE,WAAW,mBAAmB,GAAG,WAC1F;AAAA,EAAC;AAAA,EAAA;AAAA,IACI,GAAG;AAAA,IACJ,iBAAiB,OAAO;AAAA,IACxB,WAAW,KAAK,WAAW,OAAO,YAAY;AAAA,IAC9C,iBAAiB;AAAA,IACjB,YAAW;AAAA,IACX,cAAc,gBAAgB;AAAA,IAC9B,aAAa,oBAAC,2BAAA,EAA0B,cAAc,EAAA,CAAG;AAAA,IACzD,YAAY,oBAAC,2BAAA,EAA0B,cAAc,EAAA,CAAG;AAAA,EAAA;AAC5D;AAGJ,aAAa,cAAc;"}
@@ -1,57 +1,22 @@
1
- import { jsx, jsxs, Fragment } from "react/jsx-runtime";
2
- import { useRef } from "react";
3
- import { c as clsx } from "../../../chunks/vendor-Bco_z_Yi.js";
4
- import { CaretleftStrokeSrvIcon32, CaretleftStrokeSrvIcon20 } from "@sberbusiness/icons-next";
5
- import { EButtonTheme } from "../../Button/enums.js";
6
- import { TriggerClickOnKeyDownEvent } from "../../Triggers/TriggerClickOnKeyDownEvent.js";
1
+ import { jsx } from "react/jsx-runtime";
2
+ import { c as clsx } from "../../../chunks/vendor-1HxVLgKa.js";
3
+ import { CaretleftStrokeSrvIcon20, CaretleftStrokeSrvIcon32 } from "@sberbusiness/icons-next";
7
4
  import { EVENT_KEY_CODES } from "../../../utils/keyboard.js";
8
- import { Button } from "../../Button/Button.js";
9
- import { EComponentSize } from "../../../enums/EComponentSize.js";
10
- import { s as styles } from "../../../chunks/LightBoxControls.module-oPcN4Gxu.js";
11
- const LightBoxPrev = ({
12
- className,
13
- clickByArrowLeft,
14
- dataTutorialId,
15
- onClick,
16
- title,
17
- ...htmlDivAttributes
18
- }) => {
19
- const ref = useRef(null);
20
- const renderButton = (params) => /* @__PURE__ */ jsxs(Fragment, { children: [
21
- /* @__PURE__ */ jsx(
22
- Button,
23
- {
24
- className: clsx(styles.lightBoxControlsDesktop, styles.lightBoxPrevButton),
25
- "data-test-id": (params == null ? void 0 : params.addDataTestId) ? "lightBox-prev" : void 0,
26
- "data-tutorial-id": dataTutorialId,
27
- onClick,
28
- title,
29
- ref: params == null ? void 0 : params.buttonRef,
30
- icon: /* @__PURE__ */ jsx(CaretleftStrokeSrvIcon32, { paletteIndex: 0 }),
31
- size: EComponentSize.LG,
32
- theme: EButtonTheme.SECONDARY_LIGHT
33
- }
34
- ),
35
- /* @__PURE__ */ jsx(
36
- Button,
37
- {
38
- className: clsx(styles.lightBoxControlsMobile, styles.lightBoxPrevButton),
39
- "data-test-id": (params == null ? void 0 : params.addDataTestId) ? "lightBox-prev" : void 0,
40
- "data-tutorial-id": dataTutorialId,
41
- onClick,
42
- title,
43
- ref: params == null ? void 0 : params.buttonRef,
44
- icon: /* @__PURE__ */ jsx(CaretleftStrokeSrvIcon20, { paletteIndex: 0 }),
45
- size: EComponentSize.MD,
46
- theme: EButtonTheme.SECONDARY_LIGHT
47
- }
48
- )
49
- ] });
50
- return /* @__PURE__ */ jsx("div", { className: clsx(className, styles.lightBoxPrev), ...htmlDivAttributes, children: clickByArrowLeft ? /* @__PURE__ */ jsxs("span", { children: [
51
- /* @__PURE__ */ jsx("span", { className: styles.withKeyboardEvent, children: /* @__PURE__ */ jsx(TriggerClickOnKeyDownEvent, { targetRef: ref, eventKeyCode: EVENT_KEY_CODES.ARROW_LEFT, children: renderButton({ addDataTestId: true, buttonRef: ref }) }) }),
52
- /* @__PURE__ */ jsx("span", { className: styles.withoutKeyboardEvent, children: renderButton() })
53
- ] }) : renderButton({ addDataTestId: true }) });
54
- };
5
+ import { LightBoxArrow } from "./LightBoxArrow.js";
6
+ import { s as styles } from "../../../chunks/LightBoxControls.module-DNhvkSnJ.js";
7
+ const LightBoxPrev = ({ className, clickByArrowLeft, ...rest }) => /* @__PURE__ */ jsx(
8
+ LightBoxArrow,
9
+ {
10
+ ...rest,
11
+ buttonClassName: styles.lightBoxPrevButton,
12
+ className: clsx(className, styles.lightBoxPrev),
13
+ clickByArrowKey: clickByArrowLeft,
14
+ dataTestId: "lightBox-prev",
15
+ eventKeyCode: EVENT_KEY_CODES.ARROW_LEFT,
16
+ iconDesktop: /* @__PURE__ */ jsx(CaretleftStrokeSrvIcon32, { paletteIndex: 0 }),
17
+ iconMobile: /* @__PURE__ */ jsx(CaretleftStrokeSrvIcon20, { paletteIndex: 0 })
18
+ }
19
+ );
55
20
  LightBoxPrev.displayName = "LightBoxPrev";
56
21
  export {
57
22
  LightBoxPrev
@@ -1 +1 @@
1
- {"version":3,"file":"LightBoxPrev.js","sources":["../../../../src/components/LightBox/LightBoxControls/LightBoxPrev.tsx"],"sourcesContent":["import React, { Ref, useRef } from \"react\";\nimport clsx from \"clsx\";\nimport { CaretleftStrokeSrvIcon32, CaretleftStrokeSrvIcon20 } from \"@sberbusiness/icons-next\";\nimport { EButtonTheme } from \"../../Button/enums\";\nimport { TriggerClickOnKeyDownEvent } from \"../../Triggers/TriggerClickOnKeyDownEvent\";\nimport { EVENT_KEY_CODES } from \"../../../utils/keyboard\";\nimport { Button } from \"../../Button/Button\";\nimport { EComponentSize } from \"@sberbusiness/triplex-next/enums/EComponentSize\";\nimport styles from \"../styles/LightBoxControls.module.less\";\n\n/** Свойства LightBoxPrev. */\ninterface ILightBoxPrevProps extends React.HTMLAttributes<HTMLDivElement> {\n /** Кликнуть по кнопке при нажатии стрелки влево на клавиатуре. */\n clickByArrowLeft?: boolean;\n /** Обработчик клика по кнопке. */\n onClick: () => void;\n /** Идентификатор для обучающего тура. */\n dataTutorialId?: string;\n}\n\ninterface IRenderButtonParams {\n /** Флаг, добавляющий data-test-id. Нужен, чтобы data-test-id не дублировался несколько раз на странице. */\n addDataTestId: boolean;\n /** Установка ссылки на кнопку. */\n buttonRef?: Ref<HTMLButtonElement>;\n}\n\n/** Стрелка лайтбокса \"Назад\". */\nexport const LightBoxPrev: React.FC<ILightBoxPrevProps> = ({\n className,\n clickByArrowLeft,\n dataTutorialId,\n onClick,\n title,\n ...htmlDivAttributes\n}) => {\n const ref = useRef<HTMLButtonElement>(null);\n\n /**\n * Отображение кнопки.\n */\n const renderButton = (params?: IRenderButtonParams) => (\n <>\n {/* Кнопка для экранов шире 1024px */}\n <Button\n className={clsx(styles.lightBoxControlsDesktop, styles.lightBoxPrevButton)}\n data-test-id={params?.addDataTestId ? \"lightBox-prev\" : undefined}\n data-tutorial-id={dataTutorialId}\n onClick={onClick}\n title={title}\n ref={params?.buttonRef}\n icon={<CaretleftStrokeSrvIcon32 paletteIndex={0} />}\n size={EComponentSize.LG}\n theme={EButtonTheme.SECONDARY_LIGHT}\n />\n {/* Кнопка для экранов менее 1024px */}\n <Button\n className={clsx(styles.lightBoxControlsMobile, styles.lightBoxPrevButton)}\n data-test-id={params?.addDataTestId ? \"lightBox-prev\" : undefined}\n data-tutorial-id={dataTutorialId}\n onClick={onClick}\n title={title}\n ref={params?.buttonRef}\n icon={<CaretleftStrokeSrvIcon20 paletteIndex={0} />}\n size={EComponentSize.MD}\n theme={EButtonTheme.SECONDARY_LIGHT}\n />\n </>\n );\n\n return (\n <div className={clsx(className, styles.lightBoxPrev)} {...htmlDivAttributes}>\n {clickByArrowLeft ? (\n <span>\n {/* Кнопка с триггером при нажатии стрелки на клавиатуре. */}\n <span className={styles.withKeyboardEvent}>\n <TriggerClickOnKeyDownEvent targetRef={ref} eventKeyCode={EVENT_KEY_CODES.ARROW_LEFT}>\n {renderButton({ addDataTestId: true, buttonRef: ref })}\n </TriggerClickOnKeyDownEvent>\n </span>\n {/* Кнопка без триггера при нажатии стрелки на клавиатуре. Нельзя нажать, когда открыт\n SideOverlay. */}\n <span className={styles.withoutKeyboardEvent}>{renderButton()}</span>\n </span>\n ) : (\n renderButton({ addDataTestId: true })\n )}\n </div>\n );\n};\n\nLightBoxPrev.displayName = \"LightBoxPrev\";\n"],"names":[],"mappings":";;;;;;;;;;AA4BO,MAAM,eAA6C,CAAC;AAAA,EACvD;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACP,MAAM;AACF,QAAM,MAAM,OAA0B,IAAI;AAK1C,QAAM,eAAe,CAAC,WAClB,qBAAA,UAAA,EAEI,UAAA;AAAA,IAAA;AAAA,MAAC;AAAA,MAAA;AAAA,QACG,WAAW,KAAK,OAAO,yBAAyB,OAAO,kBAAkB;AAAA,QACzE,iBAAc,iCAAQ,iBAAgB,kBAAkB;AAAA,QACxD,oBAAkB;AAAA,QAClB;AAAA,QACA;AAAA,QACA,KAAK,iCAAQ;AAAA,QACb,MAAM,oBAAC,0BAAA,EAAyB,cAAc,EAAA,CAAG;AAAA,QACjD,MAAM,eAAe;AAAA,QACrB,OAAO,aAAa;AAAA,MAAA;AAAA,IAAA;AAAA,IAGxB;AAAA,MAAC;AAAA,MAAA;AAAA,QACG,WAAW,KAAK,OAAO,wBAAwB,OAAO,kBAAkB;AAAA,QACxE,iBAAc,iCAAQ,iBAAgB,kBAAkB;AAAA,QACxD,oBAAkB;AAAA,QAClB;AAAA,QACA;AAAA,QACA,KAAK,iCAAQ;AAAA,QACb,MAAM,oBAAC,0BAAA,EAAyB,cAAc,EAAA,CAAG;AAAA,QACjD,MAAM,eAAe;AAAA,QACrB,OAAO,aAAa;AAAA,MAAA;AAAA,IAAA;AAAA,EACxB,GACJ;AAGJ,SACI,oBAAC,OAAA,EAAI,WAAW,KAAK,WAAW,OAAO,YAAY,GAAI,GAAG,mBACrD,UAAA,mBACG,qBAAC,QAAA,EAEG,UAAA;AAAA,IAAA,oBAAC,UAAK,WAAW,OAAO,mBACpB,UAAA,oBAAC,4BAAA,EAA2B,WAAW,KAAK,cAAc,gBAAgB,YACrE,UAAA,aAAa,EAAE,eAAe,MAAM,WAAW,KAAK,GACzD,EAAA,CACJ;AAAA,wBAGC,QAAA,EAAK,WAAW,OAAO,sBAAuB,yBAAa,CAAE;AAAA,EAAA,EAAA,CAClE,IAEA,aAAa,EAAE,eAAe,KAAA,CAAM,EAAA,CAE5C;AAER;AAEA,aAAa,cAAc;"}
1
+ {"version":3,"file":"LightBoxPrev.js","sources":["../../../../src/components/LightBox/LightBoxControls/LightBoxPrev.tsx"],"sourcesContent":["import React from \"react\";\nimport clsx from \"clsx\";\nimport { CaretleftStrokeSrvIcon32, CaretleftStrokeSrvIcon20 } from \"@sberbusiness/icons-next\";\nimport { EVENT_KEY_CODES } from \"../../../utils/keyboard\";\nimport { LightBoxArrow } from \"./LightBoxArrow\";\nimport styles from \"../styles/LightBoxControls.module.less\";\n\n/** Свойства LightBoxPrev. */\nexport interface ILightBoxPrevProps extends React.HTMLAttributes<HTMLDivElement> {\n /** Кликнуть по кнопке при нажатии стрелки влево на клавиатуре. */\n clickByArrowLeft?: boolean;\n /** Обработчик клика по кнопке. */\n onClick: () => void;\n /** Идентификатор для обучающего тура. */\n dataTutorialId?: string;\n}\n\n/** Стрелка лайтбокса \"Назад\". */\nexport const LightBoxPrev: React.FC<ILightBoxPrevProps> = ({ className, clickByArrowLeft, ...rest }) => (\n <LightBoxArrow\n {...rest}\n buttonClassName={styles.lightBoxPrevButton}\n className={clsx(className, styles.lightBoxPrev)}\n clickByArrowKey={clickByArrowLeft}\n dataTestId=\"lightBox-prev\"\n eventKeyCode={EVENT_KEY_CODES.ARROW_LEFT}\n iconDesktop={<CaretleftStrokeSrvIcon32 paletteIndex={0} />}\n iconMobile={<CaretleftStrokeSrvIcon20 paletteIndex={0} />}\n />\n);\n\nLightBoxPrev.displayName = \"LightBoxPrev\";\n"],"names":[],"mappings":";;;;;;AAkBO,MAAM,eAA6C,CAAC,EAAE,WAAW,kBAAkB,GAAG,WACzF;AAAA,EAAC;AAAA,EAAA;AAAA,IACI,GAAG;AAAA,IACJ,iBAAiB,OAAO;AAAA,IACxB,WAAW,KAAK,WAAW,OAAO,YAAY;AAAA,IAC9C,iBAAiB;AAAA,IACjB,YAAW;AAAA,IACX,cAAc,gBAAgB;AAAA,IAC9B,aAAa,oBAAC,0BAAA,EAAyB,cAAc,EAAA,CAAG;AAAA,IACxD,YAAY,oBAAC,0BAAA,EAAyB,cAAc,EAAA,CAAG;AAAA,EAAA;AAC3D;AAGJ,aAAa,cAAc;"}