@sberbusiness/triplex-next 1.40.0 → 1.41.1

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 (599) hide show
  1. package/chunks/{AlertProcessSpoiler-BNrk1vyk.js → AlertProcessSpoiler-Dnwmfds3.js} +16 -16
  2. package/chunks/{AlertProcessSpoiler-BNrk1vyk.js.map → AlertProcessSpoiler-Dnwmfds3.js.map} +1 -1
  3. package/chunks/{CalendarViewItem-knPscTce.js → CalendarViewItem-CeA4XADM.js} +30 -28
  4. package/chunks/CalendarViewItem-CeA4XADM.js.map +1 -0
  5. package/chunks/Card.module-CnX8TfnM.js +32 -0
  6. package/chunks/Card.module-CnX8TfnM.js.map +1 -0
  7. package/chunks/Carousel.module-By3qExUV.js +30 -0
  8. package/chunks/Carousel.module-By3qExUV.js.map +1 -0
  9. package/chunks/CheckboxTreeExtended.module-9l5Ifhk7.js +24 -0
  10. package/chunks/CheckboxTreeExtended.module-9l5Ifhk7.js.map +1 -0
  11. package/chunks/{Chip-CI8ALCUS.js → Chip-B5RNQL8v.js} +27 -27
  12. package/chunks/Chip-B5RNQL8v.js.map +1 -0
  13. package/chunks/Confirm.module-Cpg9tBFI.js +24 -0
  14. package/chunks/Confirm.module-Cpg9tBFI.js.map +1 -0
  15. package/chunks/{DropdownListItem-BqOoPFSx.js → DropdownListItem-BVgGltGX.js} +10 -10
  16. package/chunks/{DropdownListItem-BqOoPFSx.js.map → DropdownListItem-BVgGltGX.js.map} +1 -1
  17. package/chunks/DropdownMobile.module-DRF4HXhL.js +40 -0
  18. package/chunks/DropdownMobile.module-DRF4HXhL.js.map +1 -0
  19. package/chunks/Footer.module-C3ICz5DE.js +12 -0
  20. package/chunks/Footer.module-C3ICz5DE.js.map +1 -0
  21. package/chunks/{HeaderLayoutSidebar.module-MnhSBdiv.js → HeaderLayoutSidebar.module-CfWoWqQ1.js} +4 -4
  22. package/chunks/HeaderLayoutSidebar.module-CfWoWqQ1.js.map +1 -0
  23. package/chunks/HeaderTabs.module-CQ5eAWqH.js +12 -0
  24. package/chunks/HeaderTabs.module-CQ5eAWqH.js.map +1 -0
  25. package/chunks/{HeaderTitle.module-BGOYMt6r.js → HeaderTitle.module-DeWO1h-Y.js} +4 -4
  26. package/chunks/HeaderTitle.module-DeWO1h-Y.js.map +1 -0
  27. package/chunks/ImageGalleryExtendedMain.module-Ci9TjdxN.js +28 -0
  28. package/chunks/ImageGalleryExtendedMain.module-Ci9TjdxN.js.map +1 -0
  29. package/chunks/{ImageGalleryExtendedThumb-D6RAJpt8.js → ImageGalleryExtendedThumb-BWOvPHBA.js} +5 -5
  30. package/chunks/{ImageGalleryExtendedThumb-D6RAJpt8.js.map → ImageGalleryExtendedThumb-BWOvPHBA.js.map} +1 -1
  31. package/chunks/IslandAccordion.module-DDGI83_h.js +44 -0
  32. package/chunks/IslandAccordion.module-DDGI83_h.js.map +1 -0
  33. package/chunks/IslandWidgetFooter.module-DPeifuz4.js +12 -0
  34. package/chunks/IslandWidgetFooter.module-DPeifuz4.js.map +1 -0
  35. package/chunks/IslandWidgetHeader.module-6il25_jE.js +20 -0
  36. package/chunks/IslandWidgetHeader.module-6il25_jE.js.map +1 -0
  37. package/chunks/{LightBoxContent-d_LBU_ZW.js → LightBoxContent-CfT1YJ33.js} +14 -14
  38. package/chunks/{LightBoxContent-d_LBU_ZW.js.map → LightBoxContent-CfT1YJ33.js.map} +1 -1
  39. package/chunks/LightBoxControls.module-Cs64xjct.js +26 -0
  40. package/chunks/LightBoxControls.module-Cs64xjct.js.map +1 -0
  41. package/chunks/{LightBoxSideOverlayClose.module-eTdxNvSz.js → LightBoxSideOverlayClose.module-sV6yxJQT.js} +4 -4
  42. package/chunks/LightBoxSideOverlayClose.module-sV6yxJQT.js.map +1 -0
  43. package/chunks/{ListItemControlsButton-D2ONoqII.js → ListItemControlsButton-Cs8N-_FI.js} +9 -9
  44. package/chunks/{ListItemControlsButton-D2ONoqII.js.map → ListItemControlsButton-Cs8N-_FI.js.map} +1 -1
  45. package/chunks/ListItemTail.module-Cv3Fx6WM.js +18 -0
  46. package/chunks/ListItemTail.module-Cv3Fx6WM.js.map +1 -0
  47. package/chunks/ListMasterFooter.module-DcmWf5IP.js +14 -0
  48. package/chunks/ListMasterFooter.module-DcmWf5IP.js.map +1 -0
  49. package/chunks/ModalWindow.module-BsRM6pWm.js +28 -0
  50. package/chunks/ModalWindow.module-BsRM6pWm.js.map +1 -0
  51. package/chunks/Notification.module-Diy7bSw7.js +34 -0
  52. package/chunks/Notification.module-Diy7bSw7.js.map +1 -0
  53. package/chunks/Overlay.module-Bc3D2mQ-.js +30 -0
  54. package/chunks/Overlay.module-Bc3D2mQ-.js.map +1 -0
  55. package/chunks/Page.module-CqkiljCk.js +15 -0
  56. package/chunks/Page.module-CqkiljCk.js.map +1 -0
  57. package/chunks/SMSField.module-BY_XV_HG.js +26 -0
  58. package/chunks/SMSField.module-BY_XV_HG.js.map +1 -0
  59. package/chunks/SliderExtendedMarks.module-DXI6Xg6v.js +24 -0
  60. package/chunks/SliderExtendedMarks.module-DXI6Xg6v.js.map +1 -0
  61. package/chunks/{SliderExtendedRail-CVEwe6OK.js → SliderExtendedRail-D7gQetwK.js} +5 -5
  62. package/chunks/{SliderExtendedRail-CVEwe6OK.js.map → SliderExtendedRail-D7gQetwK.js.map} +1 -1
  63. package/chunks/StatusTracker.module-DYVyu4Qv.js +44 -0
  64. package/chunks/StatusTracker.module-DYVyu4Qv.js.map +1 -0
  65. package/chunks/{StepperStepArrowBorder-BO_ItxMh.js → StepperStepArrowBorder-CY-4Rorx.js} +16 -16
  66. package/chunks/{StepperStepArrowBorder-BO_ItxMh.js.map → StepperStepArrowBorder-CY-4Rorx.js.map} +1 -1
  67. package/chunks/{SuggestFieldMobileDropdownHint-DyfJuyUe.js → SuggestFieldMobileDropdownHint-B4k9UKDH.js} +3 -3
  68. package/chunks/{SuggestFieldMobileDropdownHint-DyfJuyUe.js.map → SuggestFieldMobileDropdownHint-B4k9UKDH.js.map} +1 -1
  69. package/chunks/TableFooter.module-C1BtmpbW.js +22 -0
  70. package/chunks/TableFooter.module-C1BtmpbW.js.map +1 -0
  71. package/chunks/TabsExtended.module-BVBDZGtj.js +26 -0
  72. package/chunks/TabsExtended.module-BVBDZGtj.js.map +1 -0
  73. package/chunks/TabsLine.module-DXgk6eNb.js +36 -0
  74. package/chunks/TabsLine.module-DXgk6eNb.js.map +1 -0
  75. package/chunks/TooltipDesktop.module-BKIRlstC.js +32 -0
  76. package/chunks/TooltipDesktop.module-BKIRlstC.js.map +1 -0
  77. package/chunks/TreeView.module-BZWQB1ox.js +12 -0
  78. package/chunks/TreeView.module-BZWQB1ox.js.map +1 -0
  79. package/chunks/{UploadZoneInput-BHUONqVR.js → UploadZoneInput-BdhIPJdP.js} +5 -5
  80. package/chunks/{UploadZoneInput-BHUONqVR.js.map → UploadZoneInput-BdhIPJdP.js.map} +1 -1
  81. package/chunks/{constants-C-WrqYH6.js → constants-Cn8ZrJM2.js} +27 -27
  82. package/chunks/{constants-C-WrqYH6.js.map → constants-Cn8ZrJM2.js.map} +1 -1
  83. package/chunks/{utils-BHxrQbA6.js → utils-Cr7DslJx.js} +8 -8
  84. package/chunks/utils-Cr7DslJx.js.map +1 -0
  85. package/chunks/{utils-D4UOxU49.js → utils-Dhu3zNqv.js} +27 -27
  86. package/chunks/{utils-D4UOxU49.js.map → utils-Dhu3zNqv.js.map} +1 -1
  87. package/chunks/{utils-BaakoACO.js → utils-Fg8ptXcX.js} +6 -6
  88. package/chunks/{utils-BaakoACO.js.map → utils-Fg8ptXcX.js.map} +1 -1
  89. package/chunks/{utils-g0xZYVuS.js → utils-QF2QqBDT.js} +11 -11
  90. package/chunks/{utils-g0xZYVuS.js.map → utils-QF2QqBDT.js.map} +1 -1
  91. package/components/Alert/AlertContext/AlertContext.js +7 -7
  92. package/components/Alert/AlertProcess/AlertProcess.js +2 -2
  93. package/components/Alert/AlertProcess/components/AlertProcessSpoiler.js +1 -1
  94. package/components/Amount/Amount.js +2 -2
  95. package/components/Avatar/Avatar.js +13 -13
  96. package/components/Badge/Badge.js +4 -4
  97. package/components/Badge/BadgeDot.js +4 -4
  98. package/components/Badge/components/BadgeContent.js +6 -6
  99. package/components/Badge/components/BadgePostfix.js +1 -1
  100. package/components/Badge/components/BadgePrefix.js +1 -1
  101. package/components/Body/Body.js +3 -3
  102. package/components/Button/Button.js +20 -20
  103. package/components/Button/ButtonBase.js +1 -1
  104. package/components/Button/ButtonDropdown.js +8 -8
  105. package/components/Button/ButtonDropdownExtended.js +2 -2
  106. package/components/Button/ButtonIcon.js +3 -3
  107. package/components/Calendar/Calendar.js +16 -16
  108. package/components/Calendar/Calendar.js.map +1 -1
  109. package/components/Calendar/CalendarContext.js.map +1 -1
  110. package/components/Calendar/CalendarViewContext.js.map +1 -1
  111. package/components/Calendar/components/CalendarControls.js +12 -32
  112. package/components/Calendar/components/CalendarControls.js.map +1 -1
  113. package/components/Calendar/components/CalendarFooter.js +3 -2
  114. package/components/Calendar/components/CalendarFooter.js.map +1 -1
  115. package/components/Calendar/components/CalendarView.js +1 -0
  116. package/components/Calendar/components/CalendarView.js.map +1 -1
  117. package/components/Calendar/components/CalendarViewDays.js +31 -55
  118. package/components/Calendar/components/CalendarViewDays.js.map +1 -1
  119. package/components/Calendar/components/CalendarViewItem.js +1 -1
  120. package/components/Calendar/components/CalendarViewMonths.js +30 -52
  121. package/components/Calendar/components/CalendarViewMonths.js.map +1 -1
  122. package/components/Calendar/components/CalendarViewYears.js +34 -55
  123. package/components/Calendar/components/CalendarViewYears.js.map +1 -1
  124. package/components/Calendar/utils.js +43 -10
  125. package/components/Calendar/utils.js.map +1 -1
  126. package/components/Card/CardAction.js +5 -5
  127. package/components/Card/CardStatic.js +2 -2
  128. package/components/Card/components/CardContent/CardContent.js +1 -1
  129. package/components/Card/components/CardContent/components/CardContentBody.js +1 -1
  130. package/components/Card/components/CardContent/components/CardContentFooter.js +1 -1
  131. package/components/Card/components/CardContent/components/CardContentHeader.js +1 -1
  132. package/components/Card/components/CardMedia.js +1 -1
  133. package/components/Card/enums.js +1 -0
  134. package/components/Card/enums.js.map +1 -1
  135. package/components/Card/utils.js +2 -1
  136. package/components/Card/utils.js.map +1 -1
  137. package/components/Carousel/Carousel.js +1 -1
  138. package/components/Carousel/CarouselButton.js +1 -1
  139. package/components/Carousel/CarouselIndicators.js +1 -1
  140. package/components/Carousel/CarouselItem.js +1 -1
  141. package/components/Carousel/CarouselTrack.js +1 -1
  142. package/components/Carousel/CarouselViewport.js +1 -1
  143. package/components/CarouselExtended/CarouselExtended.js +1 -1
  144. package/components/Checkbox/Checkbox.js +10 -10
  145. package/components/Checkbox/CheckboxXGroup.js +8 -8
  146. package/components/Checkbox/CheckboxYGroup.js +1 -1
  147. package/components/CheckboxTreeExtended/CheckboxTreeExtended.js +1 -1
  148. package/components/CheckboxTreeExtended/components/CheckboxTreeExtendedArrow.js +1 -1
  149. package/components/CheckboxTreeExtended/components/CheckboxTreeExtendedCheckbox.js +1 -1
  150. package/components/CheckboxTreeExtended/components/CheckboxTreeExtendedNode.js +1 -1
  151. package/components/Chip/Chip.js +1 -1
  152. package/components/Chip/ChipClearButton.js +1 -1
  153. package/components/Chip/ChipDatePicker/ChipDatePicker.js +1 -1
  154. package/components/Chip/ChipDatePicker/ChipDatePickerTarget.js +1 -1
  155. package/components/Chip/ChipDropdownArrow.js +2 -2
  156. package/components/Chip/ChipIcon.js +1 -1
  157. package/components/Chip/ChipMultiselect.js +1 -1
  158. package/components/Chip/ChipOptions.js +2 -2
  159. package/components/Chip/ChipSelect/ChipSelect.js +1 -1
  160. package/components/Chip/ChipSelect/ChipSelectTarget.js +1 -1
  161. package/components/Chip/ChipSort.js +1 -1
  162. package/components/Chip/ChipSuggest/ChipSuggest.js +1 -1
  163. package/components/Chip/ChipSuggest/ChipSuggestDropdown.js +1 -1
  164. package/components/Chip/ChipSuggest/ChipSuggestTarget.js +1 -1
  165. package/components/Chip/ChipSuggest/desktop/ChipSuggestDesktopDropdownField.js +1 -1
  166. package/components/Chip/index.js +1 -1
  167. package/components/ChipGroup/ChipGroup.js +7 -7
  168. package/components/Col/Col.js +132 -132
  169. package/components/CollapsibleTree/CollapsibleTree.js +1 -1
  170. package/components/CollapsibleTree/components/CollapsibleTreeLeafContent.js +1 -1
  171. package/components/CollapsibleTree/components/CollapsibleTreeLeafNode.js +1 -1
  172. package/components/CollapsibleTree/components/CollapsibleTreeNodeHeader.js +4 -4
  173. package/components/CollapsibleTreeExtended/components/CollapsibleTreeExtendedNode.js +1 -1
  174. package/components/Confirm/Confirm.js +1 -1
  175. package/components/Confirm/components/ConfirmCloseButton.js +1 -1
  176. package/components/Confirm/components/ConfirmContent.js +1 -1
  177. package/components/Confirm/components/ConfirmContentTitle.js +1 -1
  178. package/components/Confirm/components/ConfirmControls.js +1 -1
  179. package/components/DateField/utils.js +2 -2
  180. package/components/DateField/utils.js.map +1 -1
  181. package/components/DatePickerExtended/DatePickerExtended.js +2 -2
  182. package/components/DatePickerExtended/DatePickerExtendedDropdown.js +1 -1
  183. package/components/DateRange/DateRange.js +3 -3
  184. package/components/DesignTokens/DesignTokenUtils.js +25 -20
  185. package/components/DesignTokens/DesignTokenUtils.js.map +1 -1
  186. package/components/DesignTokens/components/Calendar.js +2 -2
  187. package/components/DesignTokens/components/Calendar.js.map +1 -1
  188. package/components/DesignTokens/components/StatusTracker.js +8 -2
  189. package/components/DesignTokens/components/StatusTracker.js.map +1 -1
  190. package/components/Divider/Divider.js +17 -17
  191. package/components/DocumentNumberEdit/DocumentNumberEdit.js +3 -3
  192. package/components/Dropdown/desktop/DropdownDesktop.js +6 -6
  193. package/components/Dropdown/desktop/DropdownList.js +1 -1
  194. package/components/Dropdown/desktop/DropdownListItem.js +1 -1
  195. package/components/Dropdown/desktop/index.js +1 -1
  196. package/components/Dropdown/index.js +1 -1
  197. package/components/Dropdown/mobile/DropdownMobile.js +2 -2
  198. package/components/Dropdown/mobile/DropdownMobileBody.js +1 -1
  199. package/components/Dropdown/mobile/DropdownMobileClose.js +1 -1
  200. package/components/Dropdown/mobile/DropdownMobileFooter.js +1 -1
  201. package/components/Dropdown/mobile/DropdownMobileHeader.js +1 -1
  202. package/components/Dropdown/mobile/DropdownMobileInner.js +1 -1
  203. package/components/Dropdown/mobile/DropdownMobileInput.js +1 -1
  204. package/components/Dropdown/mobile/DropdownMobileList.js +1 -1
  205. package/components/Dropdown/mobile/DropdownMobileListItem.js +1 -1
  206. package/components/Dropdown/mobile/DropdownMobileLoader.js +1 -1
  207. package/components/Dropdown/mobile/DropdownMobileMaskedInput.js +1 -1
  208. package/components/Ellipsis/Ellipsis.js +3 -3
  209. package/components/EmptyView/EmptyView.js +4 -4
  210. package/components/ExpandAnimation/ExpandAnimation.js +1 -1
  211. package/components/FocusTrapExtended/FocusTrapExtended.js +20 -8
  212. package/components/FocusTrapExtended/FocusTrapExtended.js.map +1 -1
  213. package/components/Footer/Footer.js +1 -1
  214. package/components/Footer/components/FooterDescription.js +1 -1
  215. package/components/Footer/components/FooterDescriptionContent.js +1 -1
  216. package/components/Footer/components/FooterDescriptionControls.js +1 -1
  217. package/components/FormField/FormField.js +20 -20
  218. package/components/FormField/FormField.js.map +1 -1
  219. package/components/FormField/FormFieldContext.js.map +1 -1
  220. package/components/FormField/FormFieldDescriptionContext.js.map +1 -1
  221. package/components/FormField/components/FormFieldClear.js +1 -1
  222. package/components/FormField/components/FormFieldClear.js.map +1 -1
  223. package/components/FormField/components/FormFieldCounter.js +5 -4
  224. package/components/FormField/components/FormFieldCounter.js.map +1 -1
  225. package/components/FormField/components/FormFieldDescription.js +13 -5
  226. package/components/FormField/components/FormFieldDescription.js.map +1 -1
  227. package/components/FormField/components/FormFieldInput.js +7 -8
  228. package/components/FormField/components/FormFieldInput.js.map +1 -1
  229. package/components/FormField/components/FormFieldLabel.js +10 -11
  230. package/components/FormField/components/FormFieldLabel.js.map +1 -1
  231. package/components/FormField/components/FormFieldMaskedInput.js +6 -6
  232. package/components/FormField/components/FormFieldPostfix.js +5 -29
  233. package/components/FormField/components/FormFieldPostfix.js.map +1 -1
  234. package/components/FormField/components/FormFieldPrefix.js +5 -29
  235. package/components/FormField/components/FormFieldPrefix.js.map +1 -1
  236. package/components/FormField/components/FormFieldTarget.js +8 -8
  237. package/components/FormField/components/FormFieldTextarea.js +4 -4
  238. package/components/FormField/components/useFormFieldAffixWidth.js +33 -0
  239. package/components/FormField/components/useFormFieldAffixWidth.js.map +1 -0
  240. package/components/FormField/components/utils.js +9 -1
  241. package/components/FormField/components/utils.js.map +1 -1
  242. package/components/FormField/consts.js.map +1 -1
  243. package/components/FormField/enums.js.map +1 -1
  244. package/components/FormField/index.js +2 -3
  245. package/components/Gap/Gap.js +8 -8
  246. package/components/Header/Header.js +1 -1
  247. package/components/Header/components/HeaderLayoutSidebar/HeaderLayoutSidebar.js +1 -1
  248. package/components/Header/components/HeaderLayoutSidebar/HeaderLayoutSidebarContent.js +1 -1
  249. package/components/Header/components/HeaderLayoutSidebar/HeaderLayoutSidebarSidebar.js +1 -1
  250. package/components/Header/components/HeaderSubheader/HeaderSubheader.js +2 -2
  251. package/components/Header/components/HeaderTabs/HeaderTabs.js +1 -1
  252. package/components/Header/components/HeaderTabs/HeaderTabsContent.js +1 -1
  253. package/components/Header/components/HeaderTabs/HeaderTabsControls.js +1 -1
  254. package/components/Header/components/HeaderTitle/HeaderTitle.js +1 -1
  255. package/components/Header/components/HeaderTitle/HeaderTitleContent.js +1 -1
  256. package/components/Header/components/HeaderTitle/HeaderTitleControls.js +1 -1
  257. package/components/HelpBox/HelpBox.js +1 -1
  258. package/components/IconWrapper/IconWrapper.js +7 -7
  259. package/components/IconWrapper/IconWrapper.js.map +1 -1
  260. package/components/ImageGallery/ImageGallery.js +1 -1
  261. package/components/ImageGalleryExtended/ImageGalleryExtended.js +2 -2
  262. package/components/ImageGalleryExtended/components/ImageGalleryExtendedArrow.js +1 -1
  263. package/components/ImageGalleryExtended/components/ImageGalleryExtendedDots.js +3 -3
  264. package/components/ImageGalleryExtended/components/ImageGalleryExtendedMain.js +1 -1
  265. package/components/ImageGalleryExtended/components/ImageGalleryExtendedSlide.js +1 -1
  266. package/components/ImageGalleryExtended/components/ImageGalleryExtendedSwipeTrack.js +1 -1
  267. package/components/ImageGalleryExtended/components/ImageGalleryExtendedThumb.js +1 -1
  268. package/components/ImageGalleryExtended/components/ImageGalleryExtendedThumbnails.js +1 -1
  269. package/components/ImageGalleryExtended/components/index.js +1 -1
  270. package/components/ImageGalleryExtended/index.js +1 -1
  271. package/components/Island/Island.js +3 -3
  272. package/components/Island/Island.js.map +1 -1
  273. package/components/Island/components/IslandBody.js +2 -1
  274. package/components/Island/components/IslandBody.js.map +1 -1
  275. package/components/Island/components/IslandFooter.js +7 -4
  276. package/components/Island/components/IslandFooter.js.map +1 -1
  277. package/components/Island/components/IslandHeader.js +7 -4
  278. package/components/Island/components/IslandHeader.js.map +1 -1
  279. package/components/Island/enums.js.map +1 -1
  280. package/components/Island/utils.js +1 -1
  281. package/components/IslandAccordion/IslandAccordion.js +2 -2
  282. package/components/IslandAccordion/components/IslandAccordionContent.js +1 -1
  283. package/components/IslandAccordion/components/IslandAccordionFooter.js +1 -1
  284. package/components/IslandAccordion/components/IslandAccordionItem.js +2 -2
  285. package/components/IslandWidget/IslandWidget.js +4 -4
  286. package/components/IslandWidget/components/IslandWidgetBody.js +1 -1
  287. package/components/IslandWidget/components/IslandWidgetExtraFooter.js +1 -1
  288. package/components/IslandWidget/components/IslandWidgetFooter.js +1 -1
  289. package/components/IslandWidget/components/IslandWidgetFooterContent.js +1 -1
  290. package/components/IslandWidget/components/IslandWidgetFooterControls.js +1 -1
  291. package/components/IslandWidget/components/IslandWidgetHeader.js +1 -1
  292. package/components/IslandWidget/components/IslandWidgetHeaderContent.js +1 -1
  293. package/components/IslandWidget/components/IslandWidgetHeaderControls.js +1 -1
  294. package/components/IslandWidget/components/IslandWidgetHeaderDescription.js +1 -1
  295. package/components/IslandWidget/components/IslandWidgetHeaderTitle.js +1 -1
  296. package/components/IslandWidget/components/IslandWidgetWrapper.js +1 -1
  297. package/components/KeyDownListener/ComposedKeyDownListener.js +7 -8
  298. package/components/KeyDownListener/ComposedKeyDownListener.js.map +1 -1
  299. package/components/KeyDownListener/KeyDownListener.js +3 -4
  300. package/components/KeyDownListener/KeyDownListener.js.map +1 -1
  301. package/components/LightBox/LightBox.js +5 -5
  302. package/components/LightBox/LightBoxContent.js +1 -1
  303. package/components/LightBox/LightBoxControls/LightBoxArrow.js +1 -1
  304. package/components/LightBox/LightBoxControls/LightBoxClose.js +1 -1
  305. package/components/LightBox/LightBoxControls/LightBoxControls.js +1 -1
  306. package/components/LightBox/LightBoxControls/LightBoxNext.js +1 -1
  307. package/components/LightBox/LightBoxControls/LightBoxPrev.js +1 -1
  308. package/components/LightBox/LightBoxSideOverlay/LightBoxSideOverlay.js +12 -13
  309. package/components/LightBox/LightBoxSideOverlay/LightBoxSideOverlay.js.map +1 -1
  310. package/components/LightBox/LightBoxSideOverlay/LightBoxSideOverlayCloseDesktop.js +1 -1
  311. package/components/LightBox/LightBoxSideOverlay/LightBoxSideOverlayCloseMobile.js +1 -1
  312. package/components/LightBox/LightBoxSideOverlay/LightBoxSideOverlayLoader.js +1 -1
  313. package/components/LightBox/LightBoxSidebars/LightBoxLeftSidebar.js +3 -3
  314. package/components/LightBox/LightBoxSidebars/LightBoxRightSidebar.js +3 -3
  315. package/components/Link/Link.js +5 -5
  316. package/components/List/List.js +3 -3
  317. package/components/List/components/ListActionItem.js +1 -1
  318. package/components/List/components/ListEmptyState.js +1 -1
  319. package/components/List/components/ListItem.js +1 -1
  320. package/components/List/components/ListItemContent.js +4 -4
  321. package/components/List/components/ListItemControls.js +1 -1
  322. package/components/List/components/ListItemControlsButton.js +1 -1
  323. package/components/List/components/ListItemControlsButtonDropdown.js +1 -1
  324. package/components/List/components/ListItemLoading.js +1 -1
  325. package/components/List/components/ListItemSelectable.js +6 -6
  326. package/components/List/components/ListItemTailLeft.js +1 -1
  327. package/components/List/components/ListItemTailRight.js +1 -1
  328. package/components/List/components/ListSortableItem.js +2 -2
  329. package/components/List/components/ListSortableItemControls.js +1 -1
  330. package/components/List/components/ListSortableItemTarget.js +4 -4
  331. package/components/List/components/ListTableItem.js +3 -3
  332. package/components/List/index.js +1 -1
  333. package/components/ListMaster/ListMaster.js +1 -1
  334. package/components/ListMaster/components/ListMasterBody.js +1 -1
  335. package/components/ListMaster/components/ListMasterChipGroup.js +1 -1
  336. package/components/ListMaster/components/ListMasterFooter.js +1 -1
  337. package/components/ListMaster/components/ListMasterFooterControls.js +1 -1
  338. package/components/ListMaster/components/ListMasterFooterDescription.js +1 -1
  339. package/components/ListMaster/components/ListMasterHeader.js +2 -2
  340. package/components/ListMaster/components/SelectionControls.js +2 -2
  341. package/components/Loader/LoaderMiddle/LoaderMiddle.js +10 -10
  342. package/components/Loader/LoaderMiddle/LoaderMiddle.js.map +1 -1
  343. package/components/Loader/LoaderSmall/LoaderSmall.js +10 -10
  344. package/components/LoaderScreen/LoaderScreen.js +13 -12
  345. package/components/LoaderScreen/LoaderScreen.js.map +1 -1
  346. package/components/Marker/Marker.js +1 -1
  347. package/components/Marker/utils.js +1 -1
  348. package/components/MarkerStatus/MarkerStatus.js +7 -7
  349. package/components/ModalWindow/ModalWindow.js +1 -1
  350. package/components/ModalWindow/components/ModalWindowBody.js +1 -1
  351. package/components/ModalWindow/components/ModalWindowClose.js +1 -1
  352. package/components/ModalWindow/components/ModalWindowContent.js +1 -1
  353. package/components/ModalWindow/components/ModalWindowHeader.js +1 -1
  354. package/components/ModalWindow/components/ModalWindowViewManager.js +1 -1
  355. package/components/MonthYearField/utils.js +2 -1
  356. package/components/MonthYearField/utils.js.map +1 -1
  357. package/components/MonthYearRange/MonthYearRange.js +3 -3
  358. package/components/MultiselectField/components/MultiselectFieldDropdown.js +1 -1
  359. package/components/MultiselectField/components/MultiselectFieldDropdownContent.js +5 -5
  360. package/components/MultiselectField/components/MultiselectFieldDropdownFooter.js +1 -1
  361. package/components/MultiselectField/components/MultiselectFieldDropdownHeader.js +1 -1
  362. package/components/Notification/Notification.js +2 -2
  363. package/components/Notification/NotificationGrouped.js +1 -1
  364. package/components/Notification/components/NotificationBody.js +1 -1
  365. package/components/Notification/components/NotificationBodyList.js +1 -1
  366. package/components/Notification/components/NotificationClose.js +1 -1
  367. package/components/Notification/components/NotificationFooter.js +1 -1
  368. package/components/Notification/components/NotificationGroupedFooter.js +1 -1
  369. package/components/Notification/components/NotificationHeader.js +1 -1
  370. package/components/Notification/components/NotificationIcon.js +1 -1
  371. package/components/Notification/components/NotificationTime.js +1 -1
  372. package/components/OrderedList/OrderedList.js +2 -2
  373. package/components/OrderedList/OrderedListItem.js +2 -2
  374. package/components/Overlay/Overlay.js +1 -1
  375. package/components/Overlay/OverlayMask.js +1 -1
  376. package/components/Overlay/OverlayPanel.js +1 -1
  377. package/components/Page/Page.js +1 -1
  378. package/components/Page/components/BodyPage.js +3 -3
  379. package/components/Page/components/FooterPage.js +1 -1
  380. package/components/Page/components/FooterPage.js.map +1 -1
  381. package/components/Page/components/HeaderPage.js +1 -1
  382. package/components/Page/components/HeaderPage.js.map +1 -1
  383. package/components/Pagination/components/PaginationExtended.js +2 -2
  384. package/components/Pagination/components/PaginationNavigation.js +1 -1
  385. package/components/Pagination/components/PaginationNavigation.js.map +1 -1
  386. package/components/Pagination/components/PaginationNavigationButton.js +2 -2
  387. package/components/Pagination/components/PaginationNavigationExtended.js +1 -1
  388. package/components/Pagination/components/PaginationPageButton.js +2 -2
  389. package/components/Pagination/components/PaginationPageEllipsis.js +1 -1
  390. package/components/Pagination/components/PaginationSelect.js +2 -2
  391. package/components/Pagination/{utils/paginationUtils.js → utils.js} +2 -2
  392. package/components/Pagination/utils.js.map +1 -0
  393. package/components/Radio/Radio.js +9 -9
  394. package/components/Radio/RadioXGroup.js +8 -8
  395. package/components/Radio/RadioYGroup.js +1 -1
  396. package/components/Row/Row.js +4 -4
  397. package/components/SMSField/SMSField.js +2 -2
  398. package/components/SMSField/components/RefreshIcon.js +1 -1
  399. package/components/SMSField/components/SMSFieldInput.js +1 -1
  400. package/components/SMSField/components/SMSFieldRefresh.js +1 -1
  401. package/components/SMSField/components/SMSFieldSubmit.js +1 -1
  402. package/components/SegmentedControl/SegmentedControl.js +9 -9
  403. package/components/SegmentedControl/SegmentedControlSegment.js +3 -3
  404. package/components/SelectExtendedField/SelectExtendedField.js +41 -46
  405. package/components/SelectExtendedField/SelectExtendedField.js.map +1 -1
  406. package/components/SelectExtendedField/components/SelectExtendedFieldDropdown.js +2 -1
  407. package/components/SelectExtendedField/components/SelectExtendedFieldDropdown.js.map +1 -1
  408. package/components/SelectExtendedField/components/SelectExtendedFieldDropdownDefault.js +18 -38
  409. package/components/SelectExtendedField/components/SelectExtendedFieldDropdownDefault.js.map +1 -1
  410. package/components/SelectExtendedField/components/SelectExtendedFieldTarget.js +47 -65
  411. package/components/SelectExtendedField/components/SelectExtendedFieldTarget.js.map +1 -1
  412. package/components/SelectField/SelectField.js +1 -1
  413. package/components/Skeleton/Skeleton.js +4 -4
  414. package/components/SliderExtended/SliderExtended.js +2 -2
  415. package/components/SliderExtended/components/SliderExtendedDot/SliderExtendedDot.js +6 -5
  416. package/components/SliderExtended/components/SliderExtendedDot/SliderExtendedDot.js.map +1 -1
  417. package/components/SliderExtended/components/SliderExtendedMarks/SliderExtendedMark.js +1 -1
  418. package/components/SliderExtended/components/SliderExtendedMarks/SliderExtendedMarks.js +1 -1
  419. package/components/SliderExtended/components/SliderExtendedRail.js +1 -1
  420. package/components/SliderExtended/components/SliderExtendedTooltip/SliderExtendedTooltip.js +4 -4
  421. package/components/SliderExtended/components/SliderExtendedTrack/SliderExtendedTrack.js +7 -6
  422. package/components/SliderExtended/components/SliderExtendedTrack/SliderExtendedTrack.js.map +1 -1
  423. package/components/SmallInput/SmallInput.js +1 -1
  424. package/components/Spoiler/Spoiler.js +10 -10
  425. package/components/StatusTracker/StatusTracker.js +7 -6
  426. package/components/StatusTracker/StatusTracker.js.map +1 -1
  427. package/components/StatusTracker/components/StatusTrackerAlert.js +1 -1
  428. package/components/StatusTracker/components/StatusTrackerBody.js +1 -1
  429. package/components/StatusTracker/components/StatusTrackerButton.js +1 -1
  430. package/components/StatusTracker/components/StatusTrackerDescription.js +1 -1
  431. package/components/StatusTracker/components/StatusTrackerFooter.js +1 -1
  432. package/components/StatusTracker/components/StatusTrackerHeader.js +1 -1
  433. package/components/StatusTracker/components/StatusTrackerMedia.js +1 -1
  434. package/components/StatusTracker/components/StatusTrackerStatus.js +1 -1
  435. package/components/StatusTracker/components/StatusTrackerStatusGroup.js +1 -1
  436. package/components/StatusTracker/components/StatusTrackerSum.js +1 -1
  437. package/components/StatusTracker/components/StatusTrackerTitle.js +1 -1
  438. package/components/Step/Step.js +10 -10
  439. package/components/Stepper/Stepper.js +8 -8
  440. package/components/Stepper/StepperExtended.js +1 -1
  441. package/components/Stepper/StepperStep.js +2 -2
  442. package/components/Stepper/StepperStepArrowBorder.js +1 -1
  443. package/components/Suggest/SuggestMobileDropdownContent.js +3 -3
  444. package/components/SuggestField/SuggestField.js +1 -1
  445. package/components/SuggestField/desktop/SuggestFieldDesktop.js +1 -1
  446. package/components/SuggestField/desktop/SuggestFieldDesktopDropdown.js +1 -1
  447. package/components/SuggestField/index.js +1 -1
  448. package/components/SuggestField/mobile/SuggestFieldMobile.js +1 -1
  449. package/components/SuggestField/mobile/SuggestFieldMobileDropdown.js +2 -2
  450. package/components/SuggestField/mobile/SuggestFieldMobileDropdownHint.js +1 -1
  451. package/components/SuggestField/mobile/index.js +1 -1
  452. package/components/SwipeableArea/SwipeableArea.js +8 -8
  453. package/components/Table/ChipPanel.js +1 -1
  454. package/components/Table/ChipPanelLinks.js +1 -1
  455. package/components/Table/FilterPanel.js +2 -2
  456. package/components/Table/MasterTable.js +2 -2
  457. package/components/Table/NoColumns.js +2 -2
  458. package/components/Table/PaginationPanel.js +2 -2
  459. package/components/Table/TableBasic/TableBasic.js +1 -1
  460. package/components/Table/TableBasic/components/TableBasicBody.js +1 -1
  461. package/components/Table/TableBasic/components/TableBasicHeader.js +1 -1
  462. package/components/Table/TableBasic/components/TableBasicRow.js +1 -1
  463. package/components/Table/TableBasicSettings/TableBasicSettings.js +2 -2
  464. package/components/Table/TableBasicSettings/components/ColumnSettingsSortableListItemTarget.js +2 -2
  465. package/components/Table/TableBasicSettings/components/ColumnSettingsStaticListItem.js +1 -1
  466. package/components/Table/TableBasicSettings/components/TableBasicSettingsBody.js +1 -1
  467. package/components/Table/TableBasicSettings/components/TableBasicSettingsFooter.js +1 -1
  468. package/components/Table/TableBasicSettings/components/TableBasicSettingsHeader.js +1 -1
  469. package/components/Table/TableFooter/TableFooter.js +1 -1
  470. package/components/Table/TableFooter/components/TableFooterSummary.js +1 -1
  471. package/components/Table/TableFooter/components/TableFooterSummaryAmount.js +1 -1
  472. package/components/Table/TableFooter/components/TableFooterSummarySelectAllButton.js +1 -1
  473. package/components/Table/TableFooter/components/TableFooterSummarySelectedCount.js +1 -1
  474. package/components/Table/utils.js +1 -1
  475. package/components/Tabs/Tabs.js +5 -5
  476. package/components/TabsExtended/TabsExtended.js +2 -2
  477. package/components/TabsExtended/components/TabsExtendedContent.js +1 -1
  478. package/components/TabsExtended/components/TabsExtendedDropdownWrapper.js +1 -1
  479. package/components/TabsExtended/components/TabsExtendedTab.js +1 -1
  480. package/components/TabsExtended/components/TabsExtendedTabButton.js +1 -1
  481. package/components/TabsExtended/components/TabsExtendedTabsWrapper.js +1 -1
  482. package/components/TabsExtended/utils.js +1 -1
  483. package/components/TabsLine/TabsLine.js +1 -1
  484. package/components/TabsLine/components/TabsLineDesktop.js +1 -1
  485. package/components/TabsLine/components/TabsLineDropdown.js +2 -2
  486. package/components/TabsLine/components/TabsLineItem.js +1 -1
  487. package/components/TabsLine/components/TabsLineMobile.js +2 -2
  488. package/components/Tag/Tag.js +5 -5
  489. package/components/TagColor/TagColor.js +10 -10
  490. package/components/TagGroup/TagGroup.js +4 -4
  491. package/components/ThemeProvider/ETriplexNextTheme.js.map +1 -1
  492. package/components/ThemeProvider/ThemeProvider.js +5 -3
  493. package/components/ThemeProvider/ThemeProvider.js.map +1 -1
  494. package/components/ThemeProvider/ThemeProviderContext.js.map +1 -1
  495. package/components/ThemeProvider/components/ThemeProviderView.js +6 -9
  496. package/components/ThemeProvider/components/ThemeProviderView.js.map +1 -1
  497. package/components/ThemeProvider/useToken.js.map +1 -1
  498. package/components/Tooltip/Tooltip.js +49 -52
  499. package/components/Tooltip/Tooltip.js.map +1 -1
  500. package/components/Tooltip/TootlipContext.js.map +1 -1
  501. package/components/Tooltip/components/common/TooltipBody.js +1 -1
  502. package/components/Tooltip/components/common/TooltipLink.js +7 -18
  503. package/components/Tooltip/components/common/TooltipLink.js.map +1 -1
  504. package/components/Tooltip/components/common/TooltipTarget.js.map +1 -1
  505. package/components/Tooltip/components/common/TooltipXButton.js +1 -1
  506. package/components/Tooltip/components/desktop/TooltipDesktop.js +24 -12
  507. package/components/Tooltip/components/desktop/TooltipDesktop.js.map +1 -1
  508. package/components/Tooltip/components/desktop/components/TooltipDesktopBase.js +25 -24
  509. package/components/Tooltip/components/desktop/components/TooltipDesktopBase.js.map +1 -1
  510. package/components/Tooltip/components/desktop/components/TooltipDesktopTip.js +8 -17
  511. package/components/Tooltip/components/desktop/components/TooltipDesktopTip.js.map +1 -1
  512. package/components/Tooltip/components/mobile/TooltipMobile.js +10 -6
  513. package/components/Tooltip/components/mobile/TooltipMobile.js.map +1 -1
  514. package/components/Tooltip/components/mobile/components/TooltipMobileHeader.js +2 -2
  515. package/components/Tooltip/components/mobile/components/TooltipMobileHeader.js.map +1 -1
  516. package/components/Tooltip/enums.js.map +1 -1
  517. package/components/Tooltip/utils/Positioning.js +18 -17
  518. package/components/Tooltip/utils/Positioning.js.map +1 -1
  519. package/components/Tooltip/utils/useTooltipTheme.js +40 -12
  520. package/components/Tooltip/utils/useTooltipTheme.js.map +1 -1
  521. package/components/TopOverlay/TopOverlay.js +6 -6
  522. package/components/TreeView/TreeView.js +1 -1
  523. package/components/TreeView/components/TreeViewGroup.js +1 -1
  524. package/components/TreeView/components/TreeViewNode.js +1 -1
  525. package/components/Typography/Caption.js +7 -7
  526. package/components/Typography/CodeText.js +2 -2
  527. package/components/Typography/Text.js +9 -9
  528. package/components/Typography/Title.js +9 -9
  529. package/components/Typography/constants.js +1 -1
  530. package/components/UnorderedList/UnorderedList.js +2 -2
  531. package/components/UnorderedList/UnorderedListItem.js +2 -2
  532. package/components/UploadZone/UploadZone.js +2 -2
  533. package/components/UploadZone/components/UploadZoneInput.js +1 -1
  534. package/components/UploadZone/index.js +1 -1
  535. package/components/index.js +7 -8
  536. package/consts/DateConst.js.map +1 -1
  537. package/index.d.ts +255 -107
  538. package/index.js +7 -8
  539. package/package.json +1 -1
  540. package/styles/triplex-next.css +2962 -2951
  541. package/chunks/CalendarViewItem-knPscTce.js.map +0 -1
  542. package/chunks/Card.module-Dd2_zoXF.js +0 -30
  543. package/chunks/Card.module-Dd2_zoXF.js.map +0 -1
  544. package/chunks/Carousel.module-LNo8o3qn.js +0 -30
  545. package/chunks/Carousel.module-LNo8o3qn.js.map +0 -1
  546. package/chunks/CheckboxTreeExtended.module-CKUO50mv.js +0 -24
  547. package/chunks/CheckboxTreeExtended.module-CKUO50mv.js.map +0 -1
  548. package/chunks/Chip-CI8ALCUS.js.map +0 -1
  549. package/chunks/Confirm.module-BtnLGqBz.js +0 -24
  550. package/chunks/Confirm.module-BtnLGqBz.js.map +0 -1
  551. package/chunks/DropdownMobile.module-xbkYiPM1.js +0 -40
  552. package/chunks/DropdownMobile.module-xbkYiPM1.js.map +0 -1
  553. package/chunks/Footer.module-CYELL0O7.js +0 -12
  554. package/chunks/Footer.module-CYELL0O7.js.map +0 -1
  555. package/chunks/HeaderLayoutSidebar.module-MnhSBdiv.js.map +0 -1
  556. package/chunks/HeaderTabs.module-D9u9xuSn.js +0 -12
  557. package/chunks/HeaderTabs.module-D9u9xuSn.js.map +0 -1
  558. package/chunks/HeaderTitle.module-BGOYMt6r.js.map +0 -1
  559. package/chunks/ImageGalleryExtendedMain.module-CQNClbso.js +0 -28
  560. package/chunks/ImageGalleryExtendedMain.module-CQNClbso.js.map +0 -1
  561. package/chunks/IslandAccordion.module-nyPnHohH.js +0 -44
  562. package/chunks/IslandAccordion.module-nyPnHohH.js.map +0 -1
  563. package/chunks/IslandWidgetFooter.module-CNyLawMh.js +0 -12
  564. package/chunks/IslandWidgetFooter.module-CNyLawMh.js.map +0 -1
  565. package/chunks/IslandWidgetHeader.module-ChE5SXll.js +0 -20
  566. package/chunks/IslandWidgetHeader.module-ChE5SXll.js.map +0 -1
  567. package/chunks/LightBoxControls.module-Buvm7RbG.js +0 -26
  568. package/chunks/LightBoxControls.module-Buvm7RbG.js.map +0 -1
  569. package/chunks/LightBoxSideOverlayClose.module-eTdxNvSz.js.map +0 -1
  570. package/chunks/ListItemTail.module-BhSOptJB.js +0 -18
  571. package/chunks/ListItemTail.module-BhSOptJB.js.map +0 -1
  572. package/chunks/ListMasterFooter.module-DrlO_YrT.js +0 -14
  573. package/chunks/ListMasterFooter.module-DrlO_YrT.js.map +0 -1
  574. package/chunks/ModalWindow.module-DrJpRuNK.js +0 -28
  575. package/chunks/ModalWindow.module-DrJpRuNK.js.map +0 -1
  576. package/chunks/Notification.module-tEh-vvv0.js +0 -34
  577. package/chunks/Notification.module-tEh-vvv0.js.map +0 -1
  578. package/chunks/Overlay.module-CPNLKKsF.js +0 -30
  579. package/chunks/Overlay.module-CPNLKKsF.js.map +0 -1
  580. package/chunks/Page.module-Dru0rPA5.js +0 -15
  581. package/chunks/Page.module-Dru0rPA5.js.map +0 -1
  582. package/chunks/SMSField.module-CjGkO6u6.js +0 -26
  583. package/chunks/SMSField.module-CjGkO6u6.js.map +0 -1
  584. package/chunks/SliderExtendedMarks.module-CAeqmSQq.js +0 -24
  585. package/chunks/SliderExtendedMarks.module-CAeqmSQq.js.map +0 -1
  586. package/chunks/StatusTracker.module-BD5zJfbg.js +0 -42
  587. package/chunks/StatusTracker.module-BD5zJfbg.js.map +0 -1
  588. package/chunks/TableFooter.module-DhudGmzN.js +0 -22
  589. package/chunks/TableFooter.module-DhudGmzN.js.map +0 -1
  590. package/chunks/TabsExtended.module-DNjJIne-.js +0 -26
  591. package/chunks/TabsExtended.module-DNjJIne-.js.map +0 -1
  592. package/chunks/TabsLine.module-CbVAypRw.js +0 -36
  593. package/chunks/TabsLine.module-CbVAypRw.js.map +0 -1
  594. package/chunks/TooltipDesktop.module-DBiY8cJJ.js +0 -32
  595. package/chunks/TooltipDesktop.module-DBiY8cJJ.js.map +0 -1
  596. package/chunks/TreeView.module-GA-NyzjK.js +0 -12
  597. package/chunks/TreeView.module-GA-NyzjK.js.map +0 -1
  598. package/chunks/utils-BHxrQbA6.js.map +0 -1
  599. package/components/Pagination/utils/paginationUtils.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Positioning.js","sources":["../../../../src/components/Tooltip/utils/Positioning.ts"],"sourcesContent":["import {\n ETooltipAlign,\n ETooltipAxesType,\n ETooltipEndCoordinates,\n ETooltipFlowTypes,\n ETooltipPreferPlace,\n ETooltipSizeParameter,\n ETooltipStartCoordinates,\n ETooltipTypeName,\n} from \"@sberbusiness/triplex-next/components/Tooltip/enums\";\nimport {\n ITooltipAxes,\n ITooltipBounds,\n ITooltipDomainSize,\n ITooltipRelPosition,\n ITooltipSize,\n} from \"@sberbusiness/triplex-next/components/Tooltip/types\";\n\n/**\n * Значение на которое должен отступать тултип от границы экрана сверху и снизу.\n */\nconst WINDOW_OFFSET = 8;\n\n/**\n * Сравнивает координаты. По сути shadowEqual, но она делает лишние проверки, здесь мы ограничваемся только обьектом\n * координат.\n * @param {ITooltipBounds} o1 Сравниваемые координаты.\n * @param {ITooltipBounds} o2 Координаты для сравнения.\n */\nconst equalCoords = (o1: ITooltipBounds, o2: ITooltipBounds) => {\n return o1.h === o2.h && o1.w === o2.w && o1.x === o2.x && o1.y === o2.y && o1.x2 === o2.x2 && o1.y2 === o2.y2;\n};\n\n/**\n * Система осей\n * Позволяет работать в разных ориентациях без необходимости вручную отслеживать используется x или y координаты.\n */\nconst axes: ITooltipAxes = {\n column: {\n cross: {\n end: ETooltipEndCoordinates.X,\n size: ETooltipSizeParameter.W,\n start: ETooltipStartCoordinates.X,\n },\n main: {\n end: ETooltipEndCoordinates.Y,\n size: ETooltipSizeParameter.H,\n start: ETooltipStartCoordinates.Y,\n },\n },\n row: {\n cross: {\n end: ETooltipEndCoordinates.Y,\n size: ETooltipSizeParameter.H,\n start: ETooltipStartCoordinates.Y,\n },\n main: {\n end: ETooltipEndCoordinates.X,\n size: ETooltipSizeParameter.W,\n start: ETooltipStartCoordinates.X,\n },\n },\n};\n\n/**\n * Найти центр для заданного размера.\n *\n * @param {ETooltipFlowTypes} flow Тип flow в flex.\n * @param {ETooltipAxesType} axis Тип оси.\n * @param {ITooltipSize} size размер.\n *\n * @return {number} Середина размера.\n */\nconst centerOfSize = (flow: ETooltipFlowTypes, axis: ETooltipAxesType, size: ITooltipSize): number =>\n size[axes[flow][axis].size] / 2;\n\n/**\n * Найти центр для заданных границ.\n *\n * @param {ETooltipFlowTypes} flow Тип flow в flex.\n * @param {ETooltipAxesType} axis Тип оси.\n * @param {ITooltipBounds} bounds Границы.\n */\nconst centerOfBounds = (flow: ETooltipFlowTypes, axis: ETooltipAxesType, bounds: ITooltipBounds): number =>\n bounds[axes[flow][axis].start] + bounds[axes[flow][axis].size] / 2;\n\n/**\n * Расстояние от центра до центра границ.\n *\n * @param {ETooltipFlowTypes} flow Тип flow в flex.\n * @param {ETooltipAxesType} axis Тип оси.\n * @param {ITooltipBounds} boundsTo Границы от.\n * @param {ITooltipBounds} boundsFrom Границы до.\n */\nconst centerOfBoundsFromBounds = (\n flow: ETooltipFlowTypes,\n axis: ETooltipAxesType,\n boundsTo: ITooltipBounds,\n boundsFrom: ITooltipRelPosition,\n): number => centerOfBounds(flow, axis, boundsTo) - boundsFrom[axes[flow][axis].start];\n\n/**\n * Возвращет координаты для выравнивания.\n *\n * @param {ETooltipFlowTypes} flow Тип flow в flex.\n * @param {ETooltipAxesType} axis Тип оси.\n * @param {ETooltipAlign} align Выравнивание для позиционирования.\n * @param {ITooltipBounds} bounds Границы.\n * @param {ITooltipSize} size размер.\n */\nconst place = (\n flow: ETooltipFlowTypes,\n axis: ETooltipAxesType,\n align: ETooltipAlign,\n bounds: ITooltipBounds,\n size: ITooltipSize,\n): number => {\n const axisProps = axes[flow][axis];\n\n if (align === ETooltipAlign.CENTER) {\n return centerOfBounds(flow, axis, bounds) - centerOfSize(flow, axis, size);\n } else {\n if (align === ETooltipAlign.END) {\n return bounds[axisProps.end];\n } else {\n /* Рендеринг дома левосторонний. Поэтому если вспомогательный элемент спозиционирован перед основным, то\n расположение вспомогательного должно быть с дополнительным отступом на его (вспомогательного) длину.*/\n if (align === ETooltipAlign.START) {\n return bounds[axisProps.start] - size[axisProps.size];\n } else {\n return 0;\n }\n }\n }\n};\n\n// Расчеты размеров элемента\n/**\n * Поиск границ элемента.\n * @param {HTMLElement | Window} el Элемент, для которого ищутся границы.\n */\nconst calcBounds = (el: HTMLElement | Window): ITooltipBounds => {\n if (el === window) {\n return {\n h: el.innerHeight,\n w: el.innerWidth,\n x: 0,\n x2: el.innerWidth,\n y: 0,\n y2: el.innerHeight,\n };\n }\n\n const b = (el as HTMLElement).getBoundingClientRect();\n\n return {\n h: b.bottom - b.top,\n w: b.right - b.left,\n x: b.left,\n x2: b.right,\n y: b.top,\n y2: b.bottom,\n };\n};\n\n/**\n * Проверка помещается ли элемент в область.\n * @param {ETooltipSizeParameter} dimension Тип координаты для сравнения (высота/ширина).\n */\nconst fitWithinChecker =\n (dimension: ETooltipSizeParameter) =>\n (domainSize: ITooltipDomainSize, itemSize: ITooltipSize): boolean =>\n domainSize[dimension] >= itemSize[dimension];\n\nconst doesWidthFitWithin = fitWithinChecker(ETooltipSizeParameter.W);\nconst doesHeightFitWithin = fitWithinChecker(ETooltipSizeParameter.H);\n\nconst doesFitWithin = (domainSize: ITooltipDomainSize, itemSize: ITooltipSize): boolean =>\n doesWidthFitWithin(domainSize, itemSize) && doesHeightFitWithin(domainSize, itemSize);\n\n/**\n * Алгоритм выбора наиболее подходящей зоны для тултипа. Текущий подход: в цикле пройти все зоны и выбрать\n * последнюю, что подходит, если ни одна не походит, выбрать наименее непоходящую.\n *\n * @param {ETooltipPreferPlace | undefined} preferPlace Предпочитаемое место расположение тултипа.\n * @param {ITooltipBounds} windowBounds Границы окна.\n * @param {ITooltipBounds} targetBounds Границы элемента, который обернут в тултип.\n * @param {number} tipHeight Высота Tip (стрелочки), px.\n * @param {number} maxFromEdgeForTip Уголок бегает по периметру максимально на 16 px от края.\n * @param {ITooltipSize} tooltipSize Размеры тултипа.\n *\n * @return {ITooltipDomainSize} Размеры области с параметрами.\n */\nconst pickZone = (\n preferPlace: ETooltipPreferPlace | undefined,\n windowBounds: ITooltipBounds,\n targetBounds: ITooltipBounds,\n tipHeight: number,\n maxFromEdgeForTip: number,\n tooltipSize: ITooltipSize,\n): ITooltipDomainSize => {\n // В случае горизонтального расположения доступное место по высоте расчитывается по формуле:\n // минимальная высота от центра таргета до границы окна по Y плюс максимальный возможный остаток высота тултипа и учитывается отступ от границы окна,\n // чтобы тултип не прилигал к границе.\n let targetMiddleY = targetBounds.y + (targetBounds.y2 - targetBounds.y) / 2; // расстояние от верхней границы окна до середина таргета по Y\n const fromTargetMiddleToWindowY2 = windowBounds[ETooltipEndCoordinates.Y] - targetMiddleY; // расстояние от нижней границы окна до середина таргета по Y\n // берем наименьшее расстояние от границы окна до середины таргета\n if (fromTargetMiddleToWindowY2 < targetMiddleY) {\n targetMiddleY = fromTargetMiddleToWindowY2;\n }\n const zoneHeight =\n targetMiddleY + tooltipSize[ETooltipSizeParameter.H] - tipHeight - maxFromEdgeForTip - WINDOW_OFFSET;\n const zones: ITooltipDomainSize[] = [\n {\n [ETooltipTypeName.SIDE]: ETooltipAlign.START,\n [ETooltipTypeName.STANDING]: ETooltipPreferPlace.ABOVE,\n [ETooltipTypeName.FLOW]: ETooltipFlowTypes.COLUMN,\n h: targetBounds.y,\n order: -1,\n w: windowBounds.x2,\n },\n {\n [ETooltipTypeName.SIDE]: ETooltipAlign.END,\n [ETooltipTypeName.STANDING]: ETooltipPreferPlace.RIGHT,\n [ETooltipTypeName.FLOW]: ETooltipFlowTypes.ROW,\n h: zoneHeight,\n order: 1,\n w: windowBounds.x2 - targetBounds.x2,\n },\n {\n [ETooltipTypeName.SIDE]: ETooltipAlign.END,\n [ETooltipTypeName.STANDING]: ETooltipPreferPlace.BELOW,\n [ETooltipTypeName.FLOW]: ETooltipFlowTypes.COLUMN,\n h: windowBounds.y2 - targetBounds.y2,\n order: 1,\n w: windowBounds.x2,\n },\n {\n [ETooltipTypeName.SIDE]: ETooltipAlign.START,\n [ETooltipTypeName.STANDING]: ETooltipPreferPlace.LEFT,\n [ETooltipTypeName.FLOW]: ETooltipFlowTypes.ROW,\n h: zoneHeight,\n order: -1,\n w: targetBounds.x,\n },\n ];\n\n /* Упорядочивает зоны по количеству popup которые будут обрезаны, если использовать зону. Первый элемент в\n массиве режет наименьшее количество\n const area = size.w * size.h // Площадь popup постоянная и не меняет порядок\n */\n zones.forEach((zone) => {\n zone.cutOff =\n /* area */ -Math.max(0, Math.min(zone.w, tooltipSize.w)) * Math.max(0, Math.min(zone.h, tooltipSize.h));\n });\n zones.sort((a, b) => (a.cutOff ?? 0) - (b.cutOff ?? 0));\n\n const availZones = zones.filter((zone) => doesFitWithin(zone, tooltipSize));\n\n if (preferPlace) {\n // Поиск доступных предпочитаемых зон\n const preferredAvailZones = availZones.filter((zone) => zone[ETooltipTypeName.STANDING] === preferPlace);\n if (preferredAvailZones.length) {\n return preferredAvailZones[0];\n }\n\n // Если нет доступных предпочитаемых зон, то используем ту, что подходит лучше всего\n const preferredZones = zones.filter((zone) => zone[ETooltipTypeName.STANDING] === preferPlace);\n if (!availZones.length && preferredZones.length) {\n return preferredZones[0];\n }\n }\n // Возвращаем зону, которая подходит полностью либо лучше всего\n return availZones.length ? availZones[0] : zones[0];\n};\n\n/**\n * Высчитывает относительные координаты\n * @param {ITooltipDomainSize} zone Зона с параметрами.\n * @param {ITooltipBounds} targetBounds Границы элемента, который обернут в тултип.\n * @param {ITooltipBounds} tooltipSize Размеры тултипа.\n */\nconst calcRelPos = (\n zone: ITooltipDomainSize,\n targetBounds: ITooltipBounds,\n tooltipSize: ITooltipSize,\n): ITooltipRelPosition => {\n const { main, cross } = axes[zone.flow];\n const crossAlign = ETooltipAlign.CENTER;\n const mainStart = place(zone.flow, ETooltipAxesType.MAIN, zone.side, targetBounds, tooltipSize);\n const mainSize = tooltipSize[main.size];\n const crossStart = place(zone.flow, ETooltipAxesType.CROSS, crossAlign, targetBounds, tooltipSize);\n\n const crossSize = tooltipSize[cross.size];\n const result = {\n [cross.start]: crossStart,\n crossLength: crossSize,\n [cross.end]: crossStart + crossSize,\n [main.start]: mainStart,\n mainLength: mainSize,\n [main.end]: mainStart + mainSize,\n };\n return result as unknown as ITooltipRelPosition;\n};\n\nexport {\n calcRelPos,\n place,\n pickZone,\n axes,\n centerOfSize,\n centerOfBounds,\n centerOfBoundsFromBounds,\n doesFitWithin,\n equalCoords,\n calcBounds,\n};\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Positioning.js","sources":["../../../../src/components/Tooltip/utils/Positioning.ts"],"sourcesContent":["import {\n ETooltipAlign,\n ETooltipAxesType,\n ETooltipEndCoordinates,\n ETooltipFlowTypes,\n ETooltipPreferPlace,\n ETooltipSizeParameter,\n ETooltipStartCoordinates,\n ETooltipTypeName,\n} from \"@sberbusiness/triplex-next/components/Tooltip/enums\";\nimport {\n ITooltipAxes,\n ITooltipBounds,\n ITooltipDomainSize,\n ITooltipRelPosition,\n ITooltipSize,\n} from \"@sberbusiness/triplex-next/components/Tooltip/types\";\n\n/**\n * Значение на которое должен отступать тултип от границы экрана сверху и снизу.\n */\nconst WINDOW_OFFSET = 8;\n\n/**\n * Сравнивает координаты. По сути shallowEqual, но он делает лишние проверки — здесь достаточно сравнить\n * только поля объекта координат.\n * @param {ITooltipBounds} o1 Сравниваемые координаты.\n * @param {ITooltipBounds} o2 Координаты для сравнения.\n */\nconst equalCoords = (o1: ITooltipBounds, o2: ITooltipBounds) => {\n return o1.h === o2.h && o1.w === o2.w && o1.x === o2.x && o1.y === o2.y && o1.x2 === o2.x2 && o1.y2 === o2.y2;\n};\n\n/**\n * Система осей\n * Позволяет работать в разных ориентациях без необходимости вручную отслеживать используется x или y координаты.\n */\nconst axes: ITooltipAxes = {\n column: {\n cross: {\n end: ETooltipEndCoordinates.X,\n size: ETooltipSizeParameter.W,\n start: ETooltipStartCoordinates.X,\n },\n main: {\n end: ETooltipEndCoordinates.Y,\n size: ETooltipSizeParameter.H,\n start: ETooltipStartCoordinates.Y,\n },\n },\n row: {\n cross: {\n end: ETooltipEndCoordinates.Y,\n size: ETooltipSizeParameter.H,\n start: ETooltipStartCoordinates.Y,\n },\n main: {\n end: ETooltipEndCoordinates.X,\n size: ETooltipSizeParameter.W,\n start: ETooltipStartCoordinates.X,\n },\n },\n};\n\n/**\n * Найти центр для заданного размера.\n *\n * @param {ETooltipFlowTypes} flow Тип flow в flex.\n * @param {ETooltipAxesType} axis Тип оси.\n * @param {ITooltipSize} size размер.\n *\n * @return {number} Середина размера.\n */\nconst centerOfSize = (flow: ETooltipFlowTypes, axis: ETooltipAxesType, size: ITooltipSize): number =>\n size[axes[flow][axis].size] / 2;\n\n/**\n * Найти центр для заданных границ.\n *\n * @param {ETooltipFlowTypes} flow Тип flow в flex.\n * @param {ETooltipAxesType} axis Тип оси.\n * @param {ITooltipBounds} bounds Границы.\n */\nconst centerOfBounds = (flow: ETooltipFlowTypes, axis: ETooltipAxesType, bounds: ITooltipBounds): number =>\n bounds[axes[flow][axis].start] + bounds[axes[flow][axis].size] / 2;\n\n/**\n * Расстояние от центра до центра границ.\n *\n * @param {ETooltipFlowTypes} flow Тип flow в flex.\n * @param {ETooltipAxesType} axis Тип оси.\n * @param {ITooltipBounds} boundsTo Границы от.\n * @param {ITooltipBounds} boundsFrom Границы до.\n */\nconst centerOfBoundsFromBounds = (\n flow: ETooltipFlowTypes,\n axis: ETooltipAxesType,\n boundsTo: ITooltipBounds,\n boundsFrom: ITooltipRelPosition,\n): number => centerOfBounds(flow, axis, boundsTo) - boundsFrom[axes[flow][axis].start];\n\n/**\n * Возвращет координаты для выравнивания.\n *\n * @param {ETooltipFlowTypes} flow Тип flow в flex.\n * @param {ETooltipAxesType} axis Тип оси.\n * @param {ETooltipAlign} align Выравнивание для позиционирования.\n * @param {ITooltipBounds} bounds Границы.\n * @param {ITooltipSize} size размер.\n */\nconst place = (\n flow: ETooltipFlowTypes,\n axis: ETooltipAxesType,\n align: ETooltipAlign,\n bounds: ITooltipBounds,\n size: ITooltipSize,\n): number => {\n const axisProps = axes[flow][axis];\n\n if (align === ETooltipAlign.CENTER) {\n return centerOfBounds(flow, axis, bounds) - centerOfSize(flow, axis, size);\n }\n\n if (align === ETooltipAlign.END) {\n return bounds[axisProps.end];\n }\n\n if (align === ETooltipAlign.START) {\n /* Рендеринг дома левосторонний. Поэтому если вспомогательный элемент спозиционирован перед основным, то\n расположение вспомогательного должно быть с дополнительным отступом на его (вспомогательного) длину.*/\n return bounds[axisProps.start] - size[axisProps.size];\n }\n\n return 0;\n};\n\n// Расчеты размеров элемента\n/**\n * Поиск границ элемента.\n * @param {HTMLElement | Window} el Элемент, для которого ищутся границы.\n */\nconst calcBounds = (el: HTMLElement | Window): ITooltipBounds => {\n if (el === window) {\n return {\n h: el.innerHeight,\n w: el.innerWidth,\n x: 0,\n x2: el.innerWidth,\n y: 0,\n y2: el.innerHeight,\n };\n }\n\n const b = (el as HTMLElement).getBoundingClientRect();\n\n return {\n h: b.bottom - b.top,\n w: b.right - b.left,\n x: b.left,\n x2: b.right,\n y: b.top,\n y2: b.bottom,\n };\n};\n\n/**\n * Проверка помещается ли элемент в область.\n * @param {ETooltipSizeParameter} dimension Тип координаты для сравнения (высота/ширина).\n */\nconst fitWithinChecker =\n (dimension: ETooltipSizeParameter) =>\n (domainSize: ITooltipDomainSize, itemSize: ITooltipSize): boolean =>\n domainSize[dimension] >= itemSize[dimension];\n\nconst doesWidthFitWithin = fitWithinChecker(ETooltipSizeParameter.W);\nconst doesHeightFitWithin = fitWithinChecker(ETooltipSizeParameter.H);\n\nconst doesFitWithin = (domainSize: ITooltipDomainSize, itemSize: ITooltipSize): boolean =>\n doesWidthFitWithin(domainSize, itemSize) && doesHeightFitWithin(domainSize, itemSize);\n\n/**\n * Алгоритм выбора наиболее подходящей зоны для тултипа. Текущий подход: в цикле пройти все зоны и выбрать\n * последнюю, что подходит, если ни одна не походит, выбрать наименее непоходящую.\n *\n * @param {ETooltipPreferPlace | undefined} preferPlace Предпочитаемое место расположение тултипа.\n * @param {ITooltipBounds} windowBounds Границы окна.\n * @param {ITooltipBounds} targetBounds Границы элемента, который обернут в тултип.\n * @param {number} tipHeight Высота Tip (стрелочки), px.\n * @param {number} maxFromEdgeForTip Уголок бегает по периметру максимально на 16 px от края.\n * @param {ITooltipSize} tooltipSize Размеры тултипа.\n *\n * @return {ITooltipDomainSize} Размеры области с параметрами.\n */\nconst pickZone = (\n preferPlace: ETooltipPreferPlace | undefined,\n windowBounds: ITooltipBounds,\n targetBounds: ITooltipBounds,\n tipHeight: number,\n maxFromEdgeForTip: number,\n tooltipSize: ITooltipSize,\n): ITooltipDomainSize => {\n // В случае горизонтального расположения доступное место по высоте расчитывается по формуле:\n // минимальная высота от центра таргета до границы окна по Y плюс максимальный возможный остаток высота тултипа и учитывается отступ от границы окна,\n // чтобы тултип не прилигал к границе.\n let targetMiddleY = targetBounds.y + (targetBounds.y2 - targetBounds.y) / 2; // расстояние от верхней границы окна до середина таргета по Y\n const fromTargetMiddleToWindowY2 = windowBounds[ETooltipEndCoordinates.Y] - targetMiddleY; // расстояние от нижней границы окна до середина таргета по Y\n // берем наименьшее расстояние от границы окна до середины таргета\n if (fromTargetMiddleToWindowY2 < targetMiddleY) {\n targetMiddleY = fromTargetMiddleToWindowY2;\n }\n const zoneHeight =\n targetMiddleY + tooltipSize[ETooltipSizeParameter.H] - tipHeight - maxFromEdgeForTip - WINDOW_OFFSET;\n const zones: ITooltipDomainSize[] = [\n {\n [ETooltipTypeName.SIDE]: ETooltipAlign.START,\n [ETooltipTypeName.STANDING]: ETooltipPreferPlace.ABOVE,\n [ETooltipTypeName.FLOW]: ETooltipFlowTypes.COLUMN,\n h: targetBounds.y,\n order: -1,\n w: windowBounds.x2,\n },\n {\n [ETooltipTypeName.SIDE]: ETooltipAlign.END,\n [ETooltipTypeName.STANDING]: ETooltipPreferPlace.RIGHT,\n [ETooltipTypeName.FLOW]: ETooltipFlowTypes.ROW,\n h: zoneHeight,\n order: 1,\n w: windowBounds.x2 - targetBounds.x2,\n },\n {\n [ETooltipTypeName.SIDE]: ETooltipAlign.END,\n [ETooltipTypeName.STANDING]: ETooltipPreferPlace.BELOW,\n [ETooltipTypeName.FLOW]: ETooltipFlowTypes.COLUMN,\n h: windowBounds.y2 - targetBounds.y2,\n order: 1,\n w: windowBounds.x2,\n },\n {\n [ETooltipTypeName.SIDE]: ETooltipAlign.START,\n [ETooltipTypeName.STANDING]: ETooltipPreferPlace.LEFT,\n [ETooltipTypeName.FLOW]: ETooltipFlowTypes.ROW,\n h: zoneHeight,\n order: -1,\n w: targetBounds.x,\n },\n ];\n\n /* Упорядочивает зоны по количеству popup которые будут обрезаны, если использовать зону. Первый элемент в\n массиве режет наименьшее количество\n const area = size.w * size.h // Площадь popup постоянная и не меняет порядок\n */\n zones.forEach((zone) => {\n zone.cutOff =\n /* area */ -Math.max(0, Math.min(zone.w, tooltipSize.w)) * Math.max(0, Math.min(zone.h, tooltipSize.h));\n });\n zones.sort((a, b) => (a.cutOff ?? 0) - (b.cutOff ?? 0));\n\n const availZones = zones.filter((zone) => doesFitWithin(zone, tooltipSize));\n\n if (preferPlace) {\n // Поиск доступных предпочитаемых зон\n const preferredAvailZones = availZones.filter((zone) => zone[ETooltipTypeName.STANDING] === preferPlace);\n if (preferredAvailZones.length) {\n return preferredAvailZones[0];\n }\n\n // Если нет доступных предпочитаемых зон, то используем ту, что подходит лучше всего\n const preferredZones = zones.filter((zone) => zone[ETooltipTypeName.STANDING] === preferPlace);\n if (!availZones.length && preferredZones.length) {\n return preferredZones[0];\n }\n }\n // Возвращаем зону, которая подходит полностью либо лучше всего\n return availZones.length ? availZones[0] : zones[0];\n};\n\n/**\n * Высчитывает относительные координаты\n * @param {ITooltipDomainSize} zone Зона с параметрами.\n * @param {ITooltipBounds} targetBounds Границы элемента, который обернут в тултип.\n * @param {ITooltipBounds} tooltipSize Размеры тултипа.\n */\nconst calcRelPos = (\n zone: ITooltipDomainSize,\n targetBounds: ITooltipBounds,\n tooltipSize: ITooltipSize,\n): ITooltipRelPosition => {\n const { main, cross } = axes[zone.flow];\n const crossAlign = ETooltipAlign.CENTER;\n const mainStart = place(zone.flow, ETooltipAxesType.MAIN, zone.side, targetBounds, tooltipSize);\n const mainSize = tooltipSize[main.size];\n const crossStart = place(zone.flow, ETooltipAxesType.CROSS, crossAlign, targetBounds, tooltipSize);\n const crossSize = tooltipSize[cross.size];\n\n // Главная и вспомогательная оси вместе покрывают все четыре координаты, поэтому нули — это заглушки,\n // которые перезаписываются ниже.\n const position: ITooltipRelPosition = {\n [ETooltipStartCoordinates.X]: 0,\n [ETooltipEndCoordinates.X]: 0,\n [ETooltipStartCoordinates.Y]: 0,\n [ETooltipEndCoordinates.Y]: 0,\n crossLength: crossSize,\n mainLength: mainSize,\n };\n\n position[cross.start] = crossStart;\n position[cross.end] = crossStart + crossSize;\n position[main.start] = mainStart;\n position[main.end] = mainStart + mainSize;\n\n return position;\n};\n\nexport {\n calcRelPos,\n place,\n pickZone,\n axes,\n centerOfSize,\n centerOfBounds,\n centerOfBoundsFromBounds,\n doesFitWithin,\n equalCoords,\n calcBounds,\n};\n"],"names":[],"mappings":"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"}
@@ -1,51 +1,79 @@
1
- import { useEffect } from "react";
1
+ import { useRef, useEffect } from "react";
2
2
  import "../../DesignTokens/DesignTokensComponents.js";
3
3
  import "../../DesignTokens/DesignTokensComponentsThemeDark.js";
4
4
  import "../../ThemeProvider/ThemeProviderContext.js";
5
5
  import { useToken } from "../../ThemeProvider/useToken.js";
6
+ const THEME_CLEANUP_DELAY_MS = 500;
7
+ const getUsageCounterAttrName = (scopeClassName) => `data-tooltip-theme-${scopeClassName}-counter`;
6
8
  function useTooltipTheme(open, renderContainer) {
7
9
  const { scopeClassName } = useToken();
10
+ const hasUsageRef = useRef(false);
11
+ const cleanupTimeoutRef = useRef(void 0);
8
12
  useEffect(() => {
9
13
  if (scopeClassName && renderContainer) {
10
14
  const cl = renderContainer.classList;
11
15
  if (open) {
16
+ if (cleanupTimeoutRef.current !== void 0) {
17
+ window.clearTimeout(cleanupTimeoutRef.current);
18
+ cleanupTimeoutRef.current = void 0;
19
+ }
12
20
  if (!cl.contains(scopeClassName)) {
13
21
  cl.add(scopeClassName);
14
22
  }
15
- incTooltipThemeUsage(renderContainer, scopeClassName);
16
- } else {
17
- if (cl.contains(scopeClassName)) {
18
- const usage = decTooltipThemeUsage(renderContainer, scopeClassName);
19
- if (usage <= 0) {
20
- window.setTimeout(() => {
23
+ if (!hasUsageRef.current) {
24
+ incTooltipThemeUsage(renderContainer, scopeClassName);
25
+ hasUsageRef.current = true;
26
+ }
27
+ } else if (hasUsageRef.current) {
28
+ hasUsageRef.current = false;
29
+ const usage = decTooltipThemeUsage(renderContainer, scopeClassName);
30
+ if (usage <= 0) {
31
+ cleanupTimeoutRef.current = window.setTimeout(() => {
32
+ cleanupTimeoutRef.current = void 0;
33
+ if (getTooltipThemeUsage(renderContainer, scopeClassName) <= 0) {
21
34
  cl.remove(scopeClassName);
22
- }, 500);
23
- }
35
+ }
36
+ }, THEME_CLEANUP_DELAY_MS);
24
37
  }
25
38
  }
26
39
  }
27
40
  }, [scopeClassName, open, renderContainer]);
28
41
  useEffect(() => {
29
42
  return () => {
43
+ const hasPendingCleanup = cleanupTimeoutRef.current !== void 0;
44
+ if (hasPendingCleanup) {
45
+ window.clearTimeout(cleanupTimeoutRef.current);
46
+ cleanupTimeoutRef.current = void 0;
47
+ }
48
+ if (!scopeClassName || !renderContainer) {
49
+ return;
50
+ }
30
51
  const cl = renderContainer.classList;
31
- if (cl.contains(scopeClassName)) {
52
+ if (hasUsageRef.current) {
53
+ hasUsageRef.current = false;
32
54
  const usage = decTooltipThemeUsage(renderContainer, scopeClassName);
33
55
  if (usage <= 0) {
34
56
  cl.remove(scopeClassName);
35
57
  }
58
+ } else if (hasPendingCleanup && getTooltipThemeUsage(renderContainer, scopeClassName) <= 0) {
59
+ cl.remove(scopeClassName);
36
60
  }
37
61
  };
38
62
  }, [renderContainer, scopeClassName]);
39
63
  }
64
+ function getTooltipThemeUsage(node, scopeClassName) {
65
+ const counterAttr = node.getAttribute(getUsageCounterAttrName(scopeClassName));
66
+ return counterAttr ? parseInt(counterAttr, 10) : 0;
67
+ }
40
68
  function incTooltipThemeUsage(node, scopeClassName) {
41
- const counterAttrName = `data-tooltip-theme-${scopeClassName}-counter`;
69
+ const counterAttrName = getUsageCounterAttrName(scopeClassName);
42
70
  const counterAttr = node.getAttribute(counterAttrName);
43
71
  const counter = counterAttr ? parseInt(counterAttr, 10) + 1 : 1;
44
72
  node.setAttribute(counterAttrName, counter.toString());
45
73
  return counter;
46
74
  }
47
75
  function decTooltipThemeUsage(node, scopeClassName) {
48
- const counterAttrName = `data-tooltip-theme-${scopeClassName}-counter`;
76
+ const counterAttrName = getUsageCounterAttrName(scopeClassName);
49
77
  const counterAttr = node.getAttribute(counterAttrName);
50
78
  const counter = counterAttr ? parseInt(counterAttr, 10) - 1 : 0;
51
79
  if (counter > 0) {
@@ -1 +1 @@
1
- {"version":3,"file":"useTooltipTheme.js","sources":["../../../../src/components/Tooltip/utils/useTooltipTheme.ts"],"sourcesContent":["import { useEffect } from \"react\";\nimport { useToken } from \"@sberbusiness/triplex-next/components/ThemeProvider\";\n\n/**\n * Хук для установки css-класса текущей темы на контейнер tooltip-а.\n * @param open Флаг отображения тултипа.\n * @param renderContainer DOM-элемент, куда рендерится тултип\n */\nexport function useTooltipTheme(open: boolean, renderContainer: Element) {\n const { scopeClassName } = useToken();\n\n useEffect(() => {\n if (scopeClassName && renderContainer) {\n const cl = renderContainer.classList;\n\n if (open) {\n if (!cl.contains(scopeClassName)) {\n cl.add(scopeClassName);\n }\n incTooltipThemeUsage(renderContainer, scopeClassName);\n } else {\n if (cl.contains(scopeClassName)) {\n const usage = decTooltipThemeUsage(renderContainer, scopeClassName);\n if (usage <= 0) {\n // т.к. закрытие с анимацией, стили нужно придержать на это время\n // см. TooltipDesktopBase ENTER_EXIT_TRANSITION_DURATION_MS\n window.setTimeout(() => {\n cl.remove(scopeClassName);\n }, 500);\n }\n }\n }\n }\n\n // очистка эффекта нам нужна только на unmount, тут она мешает, удаляя css класс темы раньше времени\n }, [scopeClassName, open, renderContainer]);\n\n // unmount, если тултип еще отображался в этот момент\n useEffect(() => {\n return () => {\n const cl = renderContainer.classList;\n if (cl.contains(scopeClassName)) {\n const usage = decTooltipThemeUsage(renderContainer, scopeClassName);\n if (usage <= 0) {\n cl.remove(scopeClassName);\n }\n }\n };\n }, [renderContainer, scopeClassName]);\n}\n\nfunction incTooltipThemeUsage(node: Element, scopeClassName: string): number {\n const counterAttrName = `data-tooltip-theme-${scopeClassName}-counter`;\n const counterAttr = node.getAttribute(counterAttrName);\n const counter = counterAttr ? parseInt(counterAttr, 10) + 1 : 1;\n node.setAttribute(counterAttrName, counter.toString());\n\n return counter;\n}\n\nfunction decTooltipThemeUsage(node: Element, scopeClassName: string): number {\n const counterAttrName = `data-tooltip-theme-${scopeClassName}-counter`;\n const counterAttr = node.getAttribute(counterAttrName);\n const counter = counterAttr ? parseInt(counterAttr, 10) - 1 : 0;\n\n if (counter > 0) {\n node.setAttribute(counterAttrName, counter.toString());\n } else {\n node.removeAttribute(counterAttrName);\n }\n\n return counter;\n}\n"],"names":[],"mappings":";;;;;AAQO,SAAS,gBAAgB,MAAe,iBAA0B;AACrE,QAAM,EAAE,eAAA,IAAmB,SAAA;AAE3B,YAAU,MAAM;AACZ,QAAI,kBAAkB,iBAAiB;AACnC,YAAM,KAAK,gBAAgB;AAE3B,UAAI,MAAM;AACN,YAAI,CAAC,GAAG,SAAS,cAAc,GAAG;AAC9B,aAAG,IAAI,cAAc;AAAA,QACzB;AACA,6BAAqB,iBAAiB,cAAc;AAAA,MACxD,OAAO;AACH,YAAI,GAAG,SAAS,cAAc,GAAG;AAC7B,gBAAM,QAAQ,qBAAqB,iBAAiB,cAAc;AAClE,cAAI,SAAS,GAAG;AAGZ,mBAAO,WAAW,MAAM;AACpB,iBAAG,OAAO,cAAc;AAAA,YAC5B,GAAG,GAAG;AAAA,UACV;AAAA,QACJ;AAAA,MACJ;AAAA,IACJ;AAAA,EAGJ,GAAG,CAAC,gBAAgB,MAAM,eAAe,CAAC;AAG1C,YAAU,MAAM;AACZ,WAAO,MAAM;AACT,YAAM,KAAK,gBAAgB;AAC3B,UAAI,GAAG,SAAS,cAAc,GAAG;AAC7B,cAAM,QAAQ,qBAAqB,iBAAiB,cAAc;AAClE,YAAI,SAAS,GAAG;AACZ,aAAG,OAAO,cAAc;AAAA,QAC5B;AAAA,MACJ;AAAA,IACJ;AAAA,EACJ,GAAG,CAAC,iBAAiB,cAAc,CAAC;AACxC;AAEA,SAAS,qBAAqB,MAAe,gBAAgC;AACzE,QAAM,kBAAkB,sBAAsB,cAAc;AAC5D,QAAM,cAAc,KAAK,aAAa,eAAe;AACrD,QAAM,UAAU,cAAc,SAAS,aAAa,EAAE,IAAI,IAAI;AAC9D,OAAK,aAAa,iBAAiB,QAAQ,SAAA,CAAU;AAErD,SAAO;AACX;AAEA,SAAS,qBAAqB,MAAe,gBAAgC;AACzE,QAAM,kBAAkB,sBAAsB,cAAc;AAC5D,QAAM,cAAc,KAAK,aAAa,eAAe;AACrD,QAAM,UAAU,cAAc,SAAS,aAAa,EAAE,IAAI,IAAI;AAE9D,MAAI,UAAU,GAAG;AACb,SAAK,aAAa,iBAAiB,QAAQ,SAAA,CAAU;AAAA,EACzD,OAAO;AACH,SAAK,gBAAgB,eAAe;AAAA,EACxC;AAEA,SAAO;AACX;"}
1
+ {"version":3,"file":"useTooltipTheme.js","sources":["../../../../src/components/Tooltip/utils/useTooltipTheme.ts"],"sourcesContent":["import { useEffect, useRef } from \"react\";\nimport { useToken } from \"@sberbusiness/triplex-next/components/ThemeProvider\";\n\n/**\n * Задержка снятия класса темы после закрытия подсказки, мс.\n * Закрытие идёт с анимацией, поэтому стили нужно придержать на это время.\n * См. ENTER_EXIT_TRANSITION_DURATION_MS в TooltipDesktopBase.\n */\nconst THEME_CLEANUP_DELAY_MS = 500;\n\n/**\n * Имя data-атрибута со счётчиком подсказок, которые сейчас используют класс темы на контейнере.\n * @param scopeClassName Класс темы.\n */\nconst getUsageCounterAttrName = (scopeClassName: string) => `data-tooltip-theme-${scopeClassName}-counter`;\n\n/**\n * Хук для установки css-класса текущей темы на контейнер tooltip-а.\n * @param open Флаг отображения тултипа.\n * @param renderContainer DOM-элемент, куда рендерится тултип\n */\nexport function useTooltipTheme(open: boolean, renderContainer: Element) {\n const { scopeClassName } = useToken();\n /** Держит ли эта подсказка сейчас инкремент счётчика — чтобы не декрементировать чужой. */\n const hasUsageRef = useRef(false);\n /** Идентификатор отложенного снятия класса темы, запланированного этой подсказкой. */\n const cleanupTimeoutRef = useRef<number | undefined>(undefined);\n\n useEffect(() => {\n if (scopeClassName && renderContainer) {\n const cl = renderContainer.classList;\n\n if (open) {\n // Подсказку открыли снова до истечения задержки — снятие класса больше не нужно.\n if (cleanupTimeoutRef.current !== undefined) {\n window.clearTimeout(cleanupTimeoutRef.current);\n cleanupTimeoutRef.current = undefined;\n }\n\n if (!cl.contains(scopeClassName)) {\n cl.add(scopeClassName);\n }\n\n if (!hasUsageRef.current) {\n incTooltipThemeUsage(renderContainer, scopeClassName);\n hasUsageRef.current = true;\n }\n } else if (hasUsageRef.current) {\n hasUsageRef.current = false;\n\n const usage = decTooltipThemeUsage(renderContainer, scopeClassName);\n if (usage <= 0) {\n cleanupTimeoutRef.current = window.setTimeout(() => {\n cleanupTimeoutRef.current = undefined;\n\n // За время задержки контейнер могла занять эта же или другая подсказка класс ещё нужен.\n if (getTooltipThemeUsage(renderContainer, scopeClassName) <= 0) {\n cl.remove(scopeClassName);\n }\n }, THEME_CLEANUP_DELAY_MS);\n }\n }\n }\n\n // очистка эффекта нам нужна только на unmount, тут она мешает, удаляя css класс темы раньше времени\n }, [scopeClassName, open, renderContainer]);\n\n // unmount, если тултип еще отображался в этот момент\n useEffect(() => {\n return () => {\n const hasPendingCleanup = cleanupTimeoutRef.current !== undefined;\n\n if (hasPendingCleanup) {\n window.clearTimeout(cleanupTimeoutRef.current);\n cleanupTimeoutRef.current = undefined;\n }\n\n if (!scopeClassName || !renderContainer) {\n return;\n }\n\n const cl = renderContainer.classList;\n\n if (hasUsageRef.current) {\n hasUsageRef.current = false;\n\n const usage = decTooltipThemeUsage(renderContainer, scopeClassName);\n if (usage <= 0) {\n cl.remove(scopeClassName);\n }\n } else if (hasPendingCleanup && getTooltipThemeUsage(renderContainer, scopeClassName) <= 0) {\n // Снятие класса было отложено, но ждать больше нечему — снимаем сразу.\n cl.remove(scopeClassName);\n }\n };\n }, [renderContainer, scopeClassName]);\n}\n\n/**\n * Текущее значение счётчика подсказок, использующих класс темы на контейнере.\n * @param node Контейнер рендера подсказки.\n * @param scopeClassName Класс темы.\n */\nfunction getTooltipThemeUsage(node: Element, scopeClassName: string): number {\n const counterAttr = node.getAttribute(getUsageCounterAttrName(scopeClassName));\n\n return counterAttr ? parseInt(counterAttr, 10) : 0;\n}\n\n/**\n * Увеличивает счётчик подсказок, использующих класс темы на контейнере.\n * @param node Контейнер рендера подсказки.\n * @param scopeClassName Класс темы.\n * @returns Новое значение счётчика.\n */\nfunction incTooltipThemeUsage(node: Element, scopeClassName: string): number {\n const counterAttrName = getUsageCounterAttrName(scopeClassName);\n const counterAttr = node.getAttribute(counterAttrName);\n const counter = counterAttr ? parseInt(counterAttr, 10) + 1 : 1;\n node.setAttribute(counterAttrName, counter.toString());\n\n return counter;\n}\n\n/**\n * Уменьшает счётчик подсказок, использующих класс темы на контейнере.\n * Когда счётчик доходит до нуля, атрибут удаляется.\n * @param node Контейнер рендера подсказки.\n * @param scopeClassName Класс темы.\n * @returns Новое значение счётчика.\n */\nfunction decTooltipThemeUsage(node: Element, scopeClassName: string): number {\n const counterAttrName = getUsageCounterAttrName(scopeClassName);\n const counterAttr = node.getAttribute(counterAttrName);\n const counter = counterAttr ? parseInt(counterAttr, 10) - 1 : 0;\n\n if (counter > 0) {\n node.setAttribute(counterAttrName, counter.toString());\n } else {\n node.removeAttribute(counterAttrName);\n }\n\n return counter;\n}\n"],"names":[],"mappings":";;;;;AAQA,MAAM,yBAAyB;AAM/B,MAAM,0BAA0B,CAAC,mBAA2B,sBAAsB,cAAc;AAOzF,SAAS,gBAAgB,MAAe,iBAA0B;AACrE,QAAM,EAAE,eAAA,IAAmB,SAAA;AAE3B,QAAM,cAAc,OAAO,KAAK;AAEhC,QAAM,oBAAoB,OAA2B,MAAS;AAE9D,YAAU,MAAM;AACZ,QAAI,kBAAkB,iBAAiB;AACnC,YAAM,KAAK,gBAAgB;AAE3B,UAAI,MAAM;AAEN,YAAI,kBAAkB,YAAY,QAAW;AACzC,iBAAO,aAAa,kBAAkB,OAAO;AAC7C,4BAAkB,UAAU;AAAA,QAChC;AAEA,YAAI,CAAC,GAAG,SAAS,cAAc,GAAG;AAC9B,aAAG,IAAI,cAAc;AAAA,QACzB;AAEA,YAAI,CAAC,YAAY,SAAS;AACtB,+BAAqB,iBAAiB,cAAc;AACpD,sBAAY,UAAU;AAAA,QAC1B;AAAA,MACJ,WAAW,YAAY,SAAS;AAC5B,oBAAY,UAAU;AAEtB,cAAM,QAAQ,qBAAqB,iBAAiB,cAAc;AAClE,YAAI,SAAS,GAAG;AACZ,4BAAkB,UAAU,OAAO,WAAW,MAAM;AAChD,8BAAkB,UAAU;AAG5B,gBAAI,qBAAqB,iBAAiB,cAAc,KAAK,GAAG;AAC5D,iBAAG,OAAO,cAAc;AAAA,YAC5B;AAAA,UACJ,GAAG,sBAAsB;AAAA,QAC7B;AAAA,MACJ;AAAA,IACJ;AAAA,EAGJ,GAAG,CAAC,gBAAgB,MAAM,eAAe,CAAC;AAG1C,YAAU,MAAM;AACZ,WAAO,MAAM;AACT,YAAM,oBAAoB,kBAAkB,YAAY;AAExD,UAAI,mBAAmB;AACnB,eAAO,aAAa,kBAAkB,OAAO;AAC7C,0BAAkB,UAAU;AAAA,MAChC;AAEA,UAAI,CAAC,kBAAkB,CAAC,iBAAiB;AACrC;AAAA,MACJ;AAEA,YAAM,KAAK,gBAAgB;AAE3B,UAAI,YAAY,SAAS;AACrB,oBAAY,UAAU;AAEtB,cAAM,QAAQ,qBAAqB,iBAAiB,cAAc;AAClE,YAAI,SAAS,GAAG;AACZ,aAAG,OAAO,cAAc;AAAA,QAC5B;AAAA,MACJ,WAAW,qBAAqB,qBAAqB,iBAAiB,cAAc,KAAK,GAAG;AAExF,WAAG,OAAO,cAAc;AAAA,MAC5B;AAAA,IACJ;AAAA,EACJ,GAAG,CAAC,iBAAiB,cAAc,CAAC;AACxC;AAOA,SAAS,qBAAqB,MAAe,gBAAgC;AACzE,QAAM,cAAc,KAAK,aAAa,wBAAwB,cAAc,CAAC;AAE7E,SAAO,cAAc,SAAS,aAAa,EAAE,IAAI;AACrD;AAQA,SAAS,qBAAqB,MAAe,gBAAgC;AACzE,QAAM,kBAAkB,wBAAwB,cAAc;AAC9D,QAAM,cAAc,KAAK,aAAa,eAAe;AACrD,QAAM,UAAU,cAAc,SAAS,aAAa,EAAE,IAAI,IAAI;AAC9D,OAAK,aAAa,iBAAiB,QAAQ,SAAA,CAAU;AAErD,SAAO;AACX;AASA,SAAS,qBAAqB,MAAe,gBAAgC;AACzE,QAAM,kBAAkB,wBAAwB,cAAc;AAC9D,QAAM,cAAc,KAAK,aAAa,eAAe;AACrD,QAAM,UAAU,cAAc,SAAS,aAAa,EAAE,IAAI,IAAI;AAE9D,MAAI,UAAU,GAAG;AACb,SAAK,aAAa,iBAAiB,QAAQ,SAAA,CAAU;AAAA,EACzD,OAAO;AACH,SAAK,gBAAgB,eAAe;AAAA,EACxC;AAEA,SAAO;AACX;"}
@@ -4,12 +4,12 @@ import { c as clsx } from "../../chunks/vendor-CtuAQuEN.js";
4
4
  import { FocusTrapExtended } from "../FocusTrapExtended/FocusTrapExtended.js";
5
5
  import { Overlay } from "../Overlay/Overlay.js";
6
6
  import { EOverlayDirection } from "../Overlay/OverlayBase.js";
7
- const topOverlayMask = "topOverlayMask__7b3d3757";
8
- const topOverlayWrapper = "topOverlayWrapper__9a6b8ed9";
9
- const closing = "closing__447db26b";
10
- const opened = "opened__91a84104";
11
- const topOverlayPanel = "topOverlayPanel__6273a20a";
12
- const topOverlay = "topOverlay__ce4d866e";
7
+ const topOverlayMask = "topOverlayMask__cb773de8";
8
+ const topOverlayWrapper = "topOverlayWrapper__10660bb4";
9
+ const closing = "closing__97ccf4e6";
10
+ const opened = "opened__7ae369e9";
11
+ const topOverlayPanel = "topOverlayPanel__1341403c";
12
+ const topOverlay = "topOverlay__f0aaa220";
13
13
  const styles = {
14
14
  topOverlayMask,
15
15
  topOverlayWrapper,
@@ -10,7 +10,7 @@ import { TreeViewAbstractNode } from "./TreeViewAbstractNode.js";
10
10
  import { TreeViewNode } from "./components/TreeViewNode.js";
11
11
  import { TreeViewGroup } from "./components/TreeViewGroup.js";
12
12
  import { c as clsx } from "../../chunks/vendor-CtuAQuEN.js";
13
- import { s as styles } from "../../chunks/TreeView.module-GA-NyzjK.js";
13
+ import { s as styles } from "../../chunks/TreeView.module-BZWQB1ox.js";
14
14
  const rootNodeId = "rootNode";
15
15
  class TreeView extends React__default.Component {
16
16
  constructor(props) {
@@ -1,5 +1,5 @@
1
1
  import { jsx } from "react/jsx-runtime";
2
- import { s as styles } from "../../../chunks/TreeView.module-GA-NyzjK.js";
2
+ import { s as styles } from "../../../chunks/TreeView.module-BZWQB1ox.js";
3
3
  const TreeViewGroup = ({ children, ...props }) => /* @__PURE__ */ jsx("ul", { role: "group", className: styles.treeViewGroup, ...props, children });
4
4
  export {
5
5
  TreeViewGroup
@@ -7,7 +7,7 @@ import { TreeViewContext, withTreeViewContext } from "../TreeViewContext.js";
7
7
  import { TreeViewAbstractNode } from "../TreeViewAbstractNode.js";
8
8
  import { TreeViewAbstractNodeUtils } from "../TreeViewAbstractNodeUtils.js";
9
9
  import { c as clsx } from "../../../chunks/vendor-CtuAQuEN.js";
10
- import { s as styles } from "../../../chunks/TreeView.module-GA-NyzjK.js";
10
+ import { s as styles } from "../../../chunks/TreeView.module-BZWQB1ox.js";
11
11
  class TreeViewNodeWithContext extends React__default.Component {
12
12
  constructor(props) {
13
13
  super(props);
@@ -2,14 +2,14 @@ import { jsx } from "react/jsx-runtime";
2
2
  import { forwardRef } from "react";
3
3
  import { c as clsx } from "../../chunks/vendor-CtuAQuEN.js";
4
4
  import { ECaptionSize, EFontWeightCaption, EFontType } from "./enums.js";
5
- import { t as typographyStyles, F as FONT_TYPE_TO_CLASS_NAME_MAP } from "../../chunks/constants-C-WrqYH6.js";
5
+ import { t as typographyStyles, F as FONT_TYPE_TO_CLASS_NAME_MAP } from "../../chunks/constants-Cn8ZrJM2.js";
6
6
  import { getTextDecorationClassName } from "./utils.js";
7
- const caption = "caption__2d34b49d";
8
- const regular = "regular__ce8d4e93";
9
- const semibold = "semibold__0be42e27";
10
- const c1 = "c1__3e92a9dc";
11
- const c2 = "c2__147dab7f";
12
- const d1 = "d1__1f54079d";
7
+ const caption = "caption__9c980264";
8
+ const regular = "regular__4bd92fa9";
9
+ const semibold = "semibold__d05358e6";
10
+ const c1 = "c1__84e0039b";
11
+ const c2 = "c2__d1ee0f1b";
12
+ const d1 = "d1__084c9a0f";
13
13
  const styles = {
14
14
  caption,
15
15
  regular,
@@ -2,9 +2,9 @@ import { jsx } from "react/jsx-runtime";
2
2
  import { forwardRef } from "react";
3
3
  import { c as clsx } from "../../chunks/vendor-CtuAQuEN.js";
4
4
  import { EFontType } from "./enums.js";
5
- import { t as typographyStyles, F as FONT_TYPE_TO_CLASS_NAME_MAP } from "../../chunks/constants-C-WrqYH6.js";
5
+ import { t as typographyStyles, F as FONT_TYPE_TO_CLASS_NAME_MAP } from "../../chunks/constants-Cn8ZrJM2.js";
6
6
  import { getTextDecorationClassName } from "./utils.js";
7
- const codeText = "codeText__822b6933";
7
+ const codeText = "codeText__9dd665f9";
8
8
  const styles = {
9
9
  codeText
10
10
  };
@@ -2,16 +2,16 @@ import { jsx } from "react/jsx-runtime";
2
2
  import { forwardRef } from "react";
3
3
  import { c as clsx } from "../../chunks/vendor-CtuAQuEN.js";
4
4
  import { ETextSize, EFontWeightText, ELineType, EFontType } from "./enums.js";
5
- import { t as typographyStyles, F as FONT_TYPE_TO_CLASS_NAME_MAP } from "../../chunks/constants-C-WrqYH6.js";
5
+ import { t as typographyStyles, F as FONT_TYPE_TO_CLASS_NAME_MAP } from "../../chunks/constants-Cn8ZrJM2.js";
6
6
  import { getTextDecorationClassName } from "./utils.js";
7
- const text = "text__44fead5e";
8
- const regular = "regular__ce8d4e93";
9
- const semibold = "semibold__0be42e27";
10
- const b1 = "b1__9d99f394";
11
- const b2 = "b2__0125b1c6";
12
- const b3 = "b3__cce20dbc";
13
- const compact = "compact__cf133c0f";
14
- const b4 = "b4__9fdcd333";
7
+ const text = "text__57aba191";
8
+ const regular = "regular__4bd92fa9";
9
+ const semibold = "semibold__d05358e6";
10
+ const b1 = "b1__8f516f5d";
11
+ const b2 = "b2__0cfcafd8";
12
+ const b3 = "b3__8efe5f75";
13
+ const compact = "compact__16e5e890";
14
+ const b4 = "b4__aee60a49";
15
15
  const styles = {
16
16
  text,
17
17
  regular,
@@ -2,16 +2,16 @@ import { jsx } from "react/jsx-runtime";
2
2
  import { forwardRef } from "react";
3
3
  import { c as clsx } from "../../chunks/vendor-CtuAQuEN.js";
4
4
  import { ETitleSize, EFontWeightTitle, EFontType } from "./enums.js";
5
- import { t as typographyStyles, F as FONT_TYPE_TO_CLASS_NAME_MAP } from "../../chunks/constants-C-WrqYH6.js";
5
+ import { t as typographyStyles, F as FONT_TYPE_TO_CLASS_NAME_MAP } from "../../chunks/constants-Cn8ZrJM2.js";
6
6
  import { getTextDecorationClassName } from "./utils.js";
7
- const title = "title__6c0539a5";
8
- const regular = "regular__ce8d4e93";
9
- const medium = "medium__d60b7a28";
10
- const semibold = "semibold__0be42e27";
11
- const bold = "bold__43e43981";
12
- const h1 = "h1__4b772c16";
13
- const h2 = "h2__c4a18cd7";
14
- const h3 = "h3__4806d049";
7
+ const title = "title__81dab667";
8
+ const regular = "regular__4bd92fa9";
9
+ const medium = "medium__e3721514";
10
+ const semibold = "semibold__d05358e6";
11
+ const bold = "bold__7f5ee091";
12
+ const h1 = "h1__41b6eefd";
13
+ const h2 = "h2__6b42efad";
14
+ const h3 = "h3__b889c765";
15
15
  const styles = {
16
16
  title,
17
17
  regular,
@@ -1,5 +1,5 @@
1
1
  import "./enums.js";
2
- import { F } from "../../chunks/constants-C-WrqYH6.js";
2
+ import { F } from "../../chunks/constants-Cn8ZrJM2.js";
3
3
  export {
4
4
  F as FONT_TYPE_TO_CLASS_NAME_MAP
5
5
  };
@@ -2,7 +2,7 @@ import { jsx } from "react/jsx-runtime";
2
2
  import React__default from "react";
3
3
  import { c as clsx } from "../../chunks/vendor-CtuAQuEN.js";
4
4
  import { UnorderedListItem } from "./UnorderedListItem.js";
5
- const unorderedList = "unorderedList__0b07ff15";
5
+ const unorderedList = "unorderedList__e6a61a42";
6
6
  const styles = {
7
7
  unorderedList
8
8
  };
@@ -12,7 +12,7 @@ const UnorderedList = Object.assign(
12
12
  {
13
13
  className: clsx(styles.unorderedList, className),
14
14
  ...restProps,
15
- "data-tx": "1.40.0",
15
+ "data-tx": "1.41.1",
16
16
  ref
17
17
  }
18
18
  )),
@@ -6,7 +6,7 @@ import "../Typography/Caption.js";
6
6
  import "../Typography/CodeText.js";
7
7
  import { Text } from "../Typography/Text.js";
8
8
  import "../Typography/Title.js";
9
- const unorderedListItem = "unorderedListItem__e6b6b3c6";
9
+ const unorderedListItem = "unorderedListItem__ada2988b";
10
10
  const styles = {
11
11
  unorderedListItem
12
12
  };
@@ -18,7 +18,7 @@ const UnorderedListItem = React__default.forwardRef(
18
18
  size: ETextSize.B3,
19
19
  tag: "li",
20
20
  ...restProps,
21
- "data-tx": "1.40.0",
21
+ "data-tx": "1.41.1",
22
22
  ref
23
23
  }
24
24
  )
@@ -2,7 +2,7 @@ import { jsx, jsxs } from "react/jsx-runtime";
2
2
  import { forwardRef, useState, useRef, useCallback, createElement, useEffect } from "react";
3
3
  import { createRoot } from "react-dom/client";
4
4
  import { c as clsx } from "../../chunks/vendor-CtuAQuEN.js";
5
- import { s as styles, U as UploadZoneInput } from "../../chunks/UploadZoneInput-BHUONqVR.js";
5
+ import { s as styles, U as UploadZoneInput } from "../../chunks/UploadZoneInput-BdhIPJdP.js";
6
6
  import { UploadZoneContext } from "./UploadZoneContext.js";
7
7
  const UploadZone = Object.assign(
8
8
  forwardRef((props, ref) => {
@@ -144,7 +144,7 @@ const UploadZone = Object.assign(
144
144
  openUploadDialog,
145
145
  setInputNode
146
146
  },
147
- children: /* @__PURE__ */ jsxs("div", { className: styles.uploadZone, "data-tx": "1.40.0", ref, children: [
147
+ children: /* @__PURE__ */ jsxs("div", { className: styles.uploadZone, "data-tx": "1.41.1", ref, children: [
148
148
  /* @__PURE__ */ createElement(
149
149
  "div",
150
150
  {
@@ -1,7 +1,7 @@
1
1
  import "react";
2
2
  import "../UploadZoneContext.js";
3
3
  import "../../../chunks/vendor-CtuAQuEN.js";
4
- import { U } from "../../../chunks/UploadZoneInput-BHUONqVR.js";
4
+ import { U } from "../../../chunks/UploadZoneInput-BdhIPJdP.js";
5
5
  export {
6
6
  U as UploadZoneInput
7
7
  };
@@ -1,5 +1,5 @@
1
1
  import { UploadZone } from "./UploadZone.js";
2
- import { U } from "../../chunks/UploadZoneInput-BHUONqVR.js";
2
+ import { U } from "../../chunks/UploadZoneInput-BdhIPJdP.js";
3
3
  export {
4
4
  UploadZone,
5
5
  U as UploadZoneInput
@@ -30,7 +30,7 @@ import { checkChildrenCheckboxes, checkParentCheckboxes, traverseCheckboxes } fr
30
30
  import { CheckboxTreeExtended } from "./CheckboxTreeExtended/CheckboxTreeExtended.js";
31
31
  import { CheckboxTreeExtendedNode } from "./CheckboxTreeExtended/components/CheckboxTreeExtendedNode.js";
32
32
  import { EChipType } from "./Chip/enums.js";
33
- import { C } from "../chunks/Chip-CI8ALCUS.js";
33
+ import { C } from "../chunks/Chip-B5RNQL8v.js";
34
34
  import { ChipDatePicker } from "./Chip/ChipDatePicker/ChipDatePicker.js";
35
35
  import { ChipDatePickerTarget } from "./Chip/ChipDatePicker/ChipDatePickerTarget.js";
36
36
  import { ChipClearButton } from "./Chip/ChipClearButton.js";
@@ -66,7 +66,7 @@ import { DocumentNumberEdit } from "./DocumentNumberEdit/DocumentNumberEdit.js";
66
66
  import { DropdownListContext } from "./Dropdown/DropdownListContext.js";
67
67
  import { DropdownDesktop } from "./Dropdown/desktop/DropdownDesktop.js";
68
68
  import { DropdownList } from "./Dropdown/desktop/DropdownList.js";
69
- import { D } from "../chunks/DropdownListItem-BqOoPFSx.js";
69
+ import { D } from "../chunks/DropdownListItem-BVgGltGX.js";
70
70
  import { EDropdownAlignment, EDropdownDirection, EDropdownWidth } from "./Dropdown/desktop/enums.js";
71
71
  import { DropdownMobile } from "./Dropdown/mobile/DropdownMobile.js";
72
72
  import { DropdownMobileBody } from "./Dropdown/mobile/DropdownMobileBody.js";
@@ -98,7 +98,7 @@ import { FormFieldPostfix } from "./FormField/components/FormFieldPostfix.js";
98
98
  import { FormFieldPrefix } from "./FormField/components/FormFieldPrefix.js";
99
99
  import { FormFieldTarget } from "./FormField/components/FormFieldTarget.js";
100
100
  import { FormFieldTextarea } from "./FormField/components/FormFieldTextarea.js";
101
- import { FormField, statusToClassNameMap } from "./FormField/FormField.js";
101
+ import { FormField } from "./FormField/FormField.js";
102
102
  import { FormGroup } from "./FormGroup/FormGroup.js";
103
103
  import { Gap } from "./Gap/Gap.js";
104
104
  import { Header } from "./Header/Header.js";
@@ -121,7 +121,7 @@ import { ImageGalleryExtendedMain } from "./ImageGalleryExtended/components/Imag
121
121
  import { ImageGalleryExtendedNav } from "./ImageGalleryExtended/components/ImageGalleryExtendedNav.js";
122
122
  import { ImageGalleryExtendedArrow } from "./ImageGalleryExtended/components/ImageGalleryExtendedArrow.js";
123
123
  import { ImageGalleryExtendedThumbnails } from "./ImageGalleryExtended/components/ImageGalleryExtendedThumbnails.js";
124
- import { I } from "../chunks/ImageGalleryExtendedThumb-D6RAJpt8.js";
124
+ import { I } from "../chunks/ImageGalleryExtendedThumb-BWOvPHBA.js";
125
125
  import { ImageGalleryExtendedDots } from "./ImageGalleryExtended/components/ImageGalleryExtendedDots.js";
126
126
  import { EImageGalleryArrowDirection } from "./ImageGalleryExtended/enums.js";
127
127
  import { Island } from "./Island/Island.js";
@@ -152,7 +152,7 @@ import { ListItem } from "./List/components/ListItem.js";
152
152
  import { ListItemControls } from "./List/components/ListItemControls.js";
153
153
  import { ListItemContent } from "./List/components/ListItemContent.js";
154
154
  import { ListActionItem } from "./List/components/ListActionItem.js";
155
- import { L } from "../chunks/ListItemControlsButton-D2ONoqII.js";
155
+ import { L } from "../chunks/ListItemControlsButton-Cs8N-_FI.js";
156
156
  import { ListItemControlsButtonDropdown } from "./List/components/ListItemControlsButtonDropdown.js";
157
157
  import { ListEmptyState } from "./List/components/ListEmptyState.js";
158
158
  import { ListItemLoading } from "./List/components/ListItemLoading.js";
@@ -266,7 +266,7 @@ import { SuggestFieldDesktopDropdown } from "./SuggestField/desktop/SuggestField
266
266
  import { SuggestFieldDesktop } from "./SuggestField/desktop/SuggestFieldDesktop.js";
267
267
  import { SuggestFieldMobile } from "./SuggestField/mobile/SuggestFieldMobile.js";
268
268
  import { SuggestFieldMobileDropdown } from "./SuggestField/mobile/SuggestFieldMobileDropdown.js";
269
- import { S } from "../chunks/SuggestFieldMobileDropdownHint-DyfJuyUe.js";
269
+ import { S } from "../chunks/SuggestFieldMobileDropdownHint-B4k9UKDH.js";
270
270
  import { SuggestField } from "./SuggestField/SuggestField.js";
271
271
  import { SwipeableArea } from "./SwipeableArea/SwipeableArea.js";
272
272
  import { MasterTable } from "./Table/MasterTable.js";
@@ -323,7 +323,7 @@ import { Title } from "./Typography/Title.js";
323
323
  import { UnorderedList } from "./UnorderedList/UnorderedList.js";
324
324
  import { UnorderedListItem } from "./UnorderedList/UnorderedListItem.js";
325
325
  import { UploadZone } from "./UploadZone/UploadZone.js";
326
- import { U } from "../chunks/UploadZoneInput-BHUONqVR.js";
326
+ import { U } from "../chunks/UploadZoneInput-BdhIPJdP.js";
327
327
  import { WindowResizeListener } from "./WindowResizeListener/WindowResizeListener.js";
328
328
  import "../enums/EComponentSize.js";
329
329
  import "../enums/EFocusSource.js";
@@ -714,7 +714,6 @@ export {
714
714
  lightBoxMountNodeIdDefault,
715
715
  lightBoxViewManagerNodeIdDefault,
716
716
  modalWindowViewManagerNodeId,
717
- statusToClassNameMap,
718
717
  traverseCheckboxes,
719
718
  useMatchMedia,
720
719
  useMobileView,
@@ -1 +1 @@
1
- {"version":3,"file":"DateConst.js","sources":["../../src/consts/DateConst.ts"],"sourcesContent":["import moment from \"moment\";\nimport { IDateLimitRange } from \"@sberbusiness/triplex-next/types/DateTypes\";\n\n/** Количество дней недели. */\nexport const WEEKDAYS_SET: number[] = [0, 1, 2, 3, 4, 5, 6];\n\n/** Количество недель месяца. */\nexport const WEEKS_SET: number[] = [0, 1, 2, 3, 4, 5];\n\n/** Количество месяцев года. */\nexport const MONTHS_SET: number[] = [-5, -4, -3, -2, -1, 0, 1, 2, 3, 4, 5, 6];\n\n/** Формат даты, отображаемый в заголовке. */\nexport const headerDateFormat = \"MMMM YYYY\";\n\n/** Транспортный (backend) формат даты. */\nexport const dateFormatYYYYMMDD = \"YYYYMMDD\";\n\n/** Глобальный ограничитель для выбора дат. */\nexport const globalLimitRange: IDateLimitRange = {\n dateFrom: moment(new Date(\"1900-01-01\")),\n dateTo: moment(new Date(\"2199-12-31\")),\n};\n"],"names":[],"mappings":";AAIO,MAAM,eAAyB,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;AAGnD,MAAM,YAAsB,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;AAG7C,MAAM,aAAuB,CAAC,IAAI,IAAI,IAAI,IAAI,IAAI,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;AAGrE,MAAM,mBAAmB;AAGzB,MAAM,qBAAqB;AAG3B,MAAM,mBAAoC;AAAA,EAC7C,UAAU,OAAO,oBAAI,KAAK,YAAY,CAAC;AAAA,EACvC,QAAQ,OAAO,oBAAI,KAAK,YAAY,CAAC;AACzC;"}
1
+ {"version":3,"file":"DateConst.js","sources":["../../src/consts/DateConst.ts"],"sourcesContent":["import moment from \"moment\";\nimport { IDateLimitRange } from \"@sberbusiness/triplex-next/types/DateTypes\";\n\n/** Количество дней недели. */\nexport const WEEKDAYS_SET: number[] = [0, 1, 2, 3, 4, 5, 6];\n\n/** Количество недель месяца. */\nexport const WEEKS_SET: number[] = [0, 1, 2, 3, 4, 5];\n\n/** Количество месяцев года. */\nexport const MONTHS_SET: number[] = [-5, -4, -3, -2, -1, 0, 1, 2, 3, 4, 5, 6];\n\n/** Формат даты, отображаемый в заголовке. */\nexport const headerDateFormat = \"MMMM YYYY\";\n\n/** Транспортный (backend) формат даты. */\nexport const dateFormatYYYYMMDD = \"YYYYMMDD\";\n\n/** Глобальный ограничитель для выбора дат. Обе границы заданы всегда — служит fallback'ом для частично заданного `IDateLimitRange`. */\nexport const globalLimitRange: Required<IDateLimitRange> = {\n dateFrom: moment(new Date(\"1900-01-01\")),\n dateTo: moment(new Date(\"2199-12-31\")),\n};\n"],"names":[],"mappings":";AAIO,MAAM,eAAyB,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;AAGnD,MAAM,YAAsB,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;AAG7C,MAAM,aAAuB,CAAC,IAAI,IAAI,IAAI,IAAI,IAAI,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;AAGrE,MAAM,mBAAmB;AAGzB,MAAM,qBAAqB;AAG3B,MAAM,mBAA8C;AAAA,EACvD,UAAU,OAAO,oBAAI,KAAK,YAAY,CAAC;AAAA,EACvC,QAAQ,OAAO,oBAAI,KAAK,YAAY,CAAC;AACzC;"}