@salutejs/plasma-new-hope 0.327.0-canary.2029.15774117371.0 → 0.327.0-canary.2031.15774276345.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (236) hide show
  1. package/cjs/components/Autocomplete/Autocomplete.js +3 -3
  2. package/cjs/components/Autocomplete/Autocomplete.js.map +1 -1
  3. package/cjs/components/Autocomplete/FloatingPopover.js +2 -2
  4. package/cjs/components/Autocomplete/FloatingPopover.js.map +1 -1
  5. package/cjs/components/Checkbox/Checkbox.js +1 -2
  6. package/cjs/components/Checkbox/Checkbox.js.map +1 -1
  7. package/cjs/components/Combobox/ComboboxNew/Combobox.js +1 -2
  8. package/cjs/components/Combobox/ComboboxNew/Combobox.js.map +1 -1
  9. package/cjs/components/Combobox/ComboboxNew/FloatingPopover.js +2 -2
  10. package/cjs/components/Combobox/ComboboxNew/FloatingPopover.js.map +1 -1
  11. package/cjs/components/Combobox/ComboboxNew/ui/Inner/Inner.js +2 -2
  12. package/cjs/components/Combobox/ComboboxNew/ui/Inner/Inner.js.map +1 -1
  13. package/cjs/components/Combobox/ComboboxOld/Combobox.js +1 -2
  14. package/cjs/components/Combobox/ComboboxOld/Combobox.js.map +1 -1
  15. package/cjs/components/Combobox/ComboboxOld/ui/ComboboxItem/ComboboxItem.js +3 -3
  16. package/cjs/components/Combobox/ComboboxOld/ui/ComboboxItem/ComboboxItem.js.map +1 -1
  17. package/cjs/components/Dropdown/Dropdown.js +2 -2
  18. package/cjs/components/Dropdown/Dropdown.js.map +1 -1
  19. package/cjs/components/Dropdown/FloatingPopover.js +2 -2
  20. package/cjs/components/Dropdown/FloatingPopover.js.map +1 -1
  21. package/cjs/components/Dropdown/ui/DropdownDivider/DropdownDivider.js.map +1 -1
  22. package/cjs/components/Dropdown/ui/DropdownFooter/DropdownFooter.js.map +1 -1
  23. package/cjs/components/Dropdown/ui/DropdownGroup/DropdownGroup.js.map +1 -1
  24. package/cjs/components/Dropdown/ui/DropdownHeader/DropdownHeader.js.map +1 -1
  25. package/cjs/components/Dropdown/ui/DropdownInner/DropdownInner.js +2 -2
  26. package/cjs/components/Dropdown/ui/DropdownInner/DropdownInner.js.map +1 -1
  27. package/cjs/components/Dropdown/ui/DropdownItemOld/DropdownItemOld.js +3 -3
  28. package/cjs/components/Dropdown/ui/DropdownItemOld/DropdownItemOld.js.map +1 -1
  29. package/cjs/components/Dropdown/ui/DropdownOld/DropdownOld.js.map +1 -1
  30. package/cjs/components/Radiobox/Radiobox.js +2 -3
  31. package/cjs/components/Radiobox/Radiobox.js.map +1 -1
  32. package/cjs/components/Segment/ui/SegmentGroup/SegmentGroup.js +3 -3
  33. package/cjs/components/Segment/ui/SegmentGroup/SegmentGroup.js.map +1 -1
  34. package/cjs/components/Segment/ui/SegmentItem/SegmentItem.js +2 -2
  35. package/cjs/components/Segment/ui/SegmentItem/SegmentItem.js.map +1 -1
  36. package/cjs/components/Select/FloatingPopover.js +2 -2
  37. package/cjs/components/Select/FloatingPopover.js.map +1 -1
  38. package/cjs/components/Select/Select.js +2 -2
  39. package/cjs/components/Select/Select.js.map +1 -1
  40. package/cjs/components/Select/ui/Inner/Inner.js +2 -2
  41. package/cjs/components/Select/ui/Inner/Inner.js.map +1 -1
  42. package/cjs/components/Spinner/Spinner.js +2 -2
  43. package/cjs/components/Spinner/Spinner.js.map +1 -1
  44. package/cjs/components/Tabs/ui/horizontal/HorizontalTabs/HorizontalTabs.js +3 -3
  45. package/cjs/components/Tabs/ui/horizontal/HorizontalTabs/HorizontalTabs.js.map +1 -1
  46. package/cjs/components/Tabs/ui/vertical/VerticalTabs/VerticalTabs.js +3 -3
  47. package/cjs/components/Tabs/ui/vertical/VerticalTabs/VerticalTabs.js.map +1 -1
  48. package/cjs/components/TextArea/ui/Hint/Hint.js.map +1 -1
  49. package/cjs/components/TextField/TextField.js +3 -4
  50. package/cjs/components/TextField/TextField.js.map +1 -1
  51. package/cjs/components/TextField/ui/Hint/Hint.js.map +1 -1
  52. package/emotion/cjs/components/Autocomplete/Autocomplete.js +3 -3
  53. package/emotion/cjs/components/Autocomplete/FloatingPopover.js +2 -2
  54. package/emotion/cjs/components/Checkbox/Checkbox.js +1 -1
  55. package/emotion/cjs/components/Combobox/ComboboxNew/Combobox.js +1 -1
  56. package/emotion/cjs/components/Combobox/ComboboxNew/FloatingPopover.js +2 -2
  57. package/emotion/cjs/components/Combobox/ComboboxNew/ui/Inner/Inner.js +3 -2
  58. package/emotion/cjs/components/Combobox/ComboboxOld/Combobox.js +1 -1
  59. package/emotion/cjs/components/Combobox/ComboboxOld/ui/ComboboxItem/ComboboxItem.js +7 -6
  60. package/emotion/cjs/components/Dropdown/Dropdown.js +2 -1
  61. package/emotion/cjs/components/Dropdown/FloatingPopover.js +2 -2
  62. package/emotion/cjs/components/Dropdown/ui/DropdownInner/DropdownInner.js +4 -4
  63. package/emotion/cjs/components/Dropdown/ui/DropdownItemOld/DropdownItemOld.js +3 -2
  64. package/emotion/cjs/components/Dropdown/ui/DropdownOld/DropdownOld.js +1 -1
  65. package/emotion/cjs/components/Radiobox/Radiobox.js +2 -2
  66. package/emotion/cjs/components/Segment/ui/SegmentGroup/SegmentGroup.js +3 -2
  67. package/emotion/cjs/components/Segment/ui/SegmentItem/SegmentItem.js +2 -1
  68. package/emotion/cjs/components/Select/FloatingPopover.js +5 -5
  69. package/emotion/cjs/components/Select/Select.js +2 -1
  70. package/emotion/cjs/components/Select/ui/Inner/Inner.js +2 -1
  71. package/emotion/cjs/components/Spinner/Spinner.js +2 -2
  72. package/emotion/cjs/components/Tabs/ui/horizontal/HorizontalTabs/HorizontalTabs.js +3 -2
  73. package/emotion/cjs/components/Tabs/ui/vertical/VerticalTabs/VerticalTabs.js +3 -2
  74. package/emotion/cjs/components/TextArea/ui/Hint/Hint.js +1 -1
  75. package/emotion/cjs/components/TextField/TextField.js +4 -4
  76. package/emotion/cjs/components/TextField/ui/Hint/Hint.js +1 -1
  77. package/emotion/es/components/Autocomplete/Autocomplete.js +1 -1
  78. package/emotion/es/components/Autocomplete/FloatingPopover.js +1 -1
  79. package/emotion/es/components/Checkbox/Checkbox.js +1 -2
  80. package/emotion/es/components/Combobox/ComboboxNew/Combobox.js +1 -2
  81. package/emotion/es/components/Combobox/ComboboxNew/FloatingPopover.js +1 -1
  82. package/emotion/es/components/Combobox/ComboboxNew/ui/Inner/Inner.js +1 -1
  83. package/emotion/es/components/Combobox/ComboboxOld/Combobox.js +1 -2
  84. package/emotion/es/components/Combobox/ComboboxOld/ui/ComboboxItem/ComboboxItem.js +1 -1
  85. package/emotion/es/components/Dropdown/Dropdown.js +1 -1
  86. package/emotion/es/components/Dropdown/FloatingPopover.js +1 -1
  87. package/emotion/es/components/Dropdown/ui/DropdownInner/DropdownInner.js +1 -1
  88. package/emotion/es/components/Dropdown/ui/DropdownItemOld/DropdownItemOld.js +2 -1
  89. package/emotion/es/components/Dropdown/ui/DropdownOld/DropdownOld.js +1 -1
  90. package/emotion/es/components/Radiobox/Radiobox.js +2 -2
  91. package/emotion/es/components/Segment/ui/SegmentGroup/SegmentGroup.js +2 -1
  92. package/emotion/es/components/Segment/ui/SegmentItem/SegmentItem.js +2 -1
  93. package/emotion/es/components/Select/FloatingPopover.js +1 -1
  94. package/emotion/es/components/Select/Select.js +2 -1
  95. package/emotion/es/components/Select/ui/Inner/Inner.js +2 -1
  96. package/emotion/es/components/Spinner/Spinner.js +1 -1
  97. package/emotion/es/components/Tabs/ui/horizontal/HorizontalTabs/HorizontalTabs.js +2 -1
  98. package/emotion/es/components/Tabs/ui/vertical/VerticalTabs/VerticalTabs.js +2 -1
  99. package/emotion/es/components/TextArea/ui/Hint/Hint.js +1 -1
  100. package/emotion/es/components/TextField/TextField.js +3 -3
  101. package/emotion/es/components/TextField/ui/Hint/Hint.js +1 -1
  102. package/es/components/Autocomplete/Autocomplete.js +1 -1
  103. package/es/components/Autocomplete/Autocomplete.js.map +1 -1
  104. package/es/components/Autocomplete/FloatingPopover.js +1 -1
  105. package/es/components/Autocomplete/FloatingPopover.js.map +1 -1
  106. package/es/components/Checkbox/Checkbox.js +1 -2
  107. package/es/components/Checkbox/Checkbox.js.map +1 -1
  108. package/es/components/Combobox/ComboboxNew/Combobox.js +1 -2
  109. package/es/components/Combobox/ComboboxNew/Combobox.js.map +1 -1
  110. package/es/components/Combobox/ComboboxNew/FloatingPopover.js +1 -1
  111. package/es/components/Combobox/ComboboxNew/FloatingPopover.js.map +1 -1
  112. package/es/components/Combobox/ComboboxNew/ui/Inner/Inner.js +1 -1
  113. package/es/components/Combobox/ComboboxNew/ui/Inner/Inner.js.map +1 -1
  114. package/es/components/Combobox/ComboboxOld/Combobox.js +1 -2
  115. package/es/components/Combobox/ComboboxOld/Combobox.js.map +1 -1
  116. package/es/components/Combobox/ComboboxOld/ui/ComboboxItem/ComboboxItem.js +2 -2
  117. package/es/components/Combobox/ComboboxOld/ui/ComboboxItem/ComboboxItem.js.map +1 -1
  118. package/es/components/Dropdown/Dropdown.js +1 -1
  119. package/es/components/Dropdown/Dropdown.js.map +1 -1
  120. package/es/components/Dropdown/FloatingPopover.js +1 -1
  121. package/es/components/Dropdown/FloatingPopover.js.map +1 -1
  122. package/es/components/Dropdown/ui/DropdownDivider/DropdownDivider.js.map +1 -1
  123. package/es/components/Dropdown/ui/DropdownFooter/DropdownFooter.js.map +1 -1
  124. package/es/components/Dropdown/ui/DropdownGroup/DropdownGroup.js.map +1 -1
  125. package/es/components/Dropdown/ui/DropdownHeader/DropdownHeader.js.map +1 -1
  126. package/es/components/Dropdown/ui/DropdownInner/DropdownInner.js +1 -1
  127. package/es/components/Dropdown/ui/DropdownInner/DropdownInner.js.map +1 -1
  128. package/es/components/Dropdown/ui/DropdownItemOld/DropdownItemOld.js +2 -2
  129. package/es/components/Dropdown/ui/DropdownItemOld/DropdownItemOld.js.map +1 -1
  130. package/es/components/Dropdown/ui/DropdownOld/DropdownOld.js.map +1 -1
  131. package/es/components/Radiobox/Radiobox.js +2 -3
  132. package/es/components/Radiobox/Radiobox.js.map +1 -1
  133. package/es/components/Segment/ui/SegmentGroup/SegmentGroup.js +2 -2
  134. package/es/components/Segment/ui/SegmentGroup/SegmentGroup.js.map +1 -1
  135. package/es/components/Segment/ui/SegmentItem/SegmentItem.js +1 -1
  136. package/es/components/Segment/ui/SegmentItem/SegmentItem.js.map +1 -1
  137. package/es/components/Select/FloatingPopover.js +1 -1
  138. package/es/components/Select/FloatingPopover.js.map +1 -1
  139. package/es/components/Select/Select.js +1 -1
  140. package/es/components/Select/Select.js.map +1 -1
  141. package/es/components/Select/ui/Inner/Inner.js +1 -1
  142. package/es/components/Select/ui/Inner/Inner.js.map +1 -1
  143. package/es/components/Spinner/Spinner.js +1 -1
  144. package/es/components/Spinner/Spinner.js.map +1 -1
  145. package/es/components/Tabs/ui/horizontal/HorizontalTabs/HorizontalTabs.js +2 -2
  146. package/es/components/Tabs/ui/horizontal/HorizontalTabs/HorizontalTabs.js.map +1 -1
  147. package/es/components/Tabs/ui/vertical/VerticalTabs/VerticalTabs.js +2 -2
  148. package/es/components/Tabs/ui/vertical/VerticalTabs/VerticalTabs.js.map +1 -1
  149. package/es/components/TextArea/ui/Hint/Hint.js.map +1 -1
  150. package/es/components/TextField/TextField.js +1 -2
  151. package/es/components/TextField/TextField.js.map +1 -1
  152. package/es/components/TextField/ui/Hint/Hint.js.map +1 -1
  153. package/package.json +2 -2
  154. package/styled-components/cjs/components/Autocomplete/Autocomplete.js +3 -3
  155. package/styled-components/cjs/components/Autocomplete/FloatingPopover.js +2 -2
  156. package/styled-components/cjs/components/Checkbox/Checkbox.js +1 -1
  157. package/styled-components/cjs/components/Combobox/ComboboxNew/Combobox.js +1 -1
  158. package/styled-components/cjs/components/Combobox/ComboboxNew/FloatingPopover.js +2 -2
  159. package/styled-components/cjs/components/Combobox/ComboboxNew/ui/Inner/Inner.js +3 -2
  160. package/styled-components/cjs/components/Combobox/ComboboxOld/Combobox.js +1 -1
  161. package/styled-components/cjs/components/Combobox/ComboboxOld/ui/ComboboxItem/ComboboxItem.js +7 -6
  162. package/styled-components/cjs/components/Dropdown/Dropdown.js +2 -1
  163. package/styled-components/cjs/components/Dropdown/FloatingPopover.js +2 -2
  164. package/styled-components/cjs/components/Dropdown/ui/DropdownInner/DropdownInner.js +4 -4
  165. package/styled-components/cjs/components/Dropdown/ui/DropdownItemOld/DropdownItemOld.js +3 -2
  166. package/styled-components/cjs/components/Dropdown/ui/DropdownOld/DropdownOld.js +1 -1
  167. package/styled-components/cjs/components/Radiobox/Radiobox.js +2 -2
  168. package/styled-components/cjs/components/Segment/ui/SegmentGroup/SegmentGroup.js +3 -2
  169. package/styled-components/cjs/components/Segment/ui/SegmentItem/SegmentItem.js +2 -1
  170. package/styled-components/cjs/components/Select/FloatingPopover.js +5 -5
  171. package/styled-components/cjs/components/Select/Select.js +2 -1
  172. package/styled-components/cjs/components/Select/ui/Inner/Inner.js +2 -1
  173. package/styled-components/cjs/components/Spinner/Spinner.js +2 -2
  174. package/styled-components/cjs/components/Tabs/ui/horizontal/HorizontalTabs/HorizontalTabs.js +3 -2
  175. package/styled-components/cjs/components/Tabs/ui/vertical/VerticalTabs/VerticalTabs.js +3 -2
  176. package/styled-components/cjs/components/TextArea/ui/Hint/Hint.js +1 -1
  177. package/styled-components/cjs/components/TextField/TextField.js +3 -3
  178. package/styled-components/cjs/components/TextField/ui/Hint/Hint.js +1 -1
  179. package/styled-components/es/components/Autocomplete/Autocomplete.js +1 -1
  180. package/styled-components/es/components/Autocomplete/FloatingPopover.js +1 -1
  181. package/styled-components/es/components/Checkbox/Checkbox.js +1 -2
  182. package/styled-components/es/components/Combobox/ComboboxNew/Combobox.js +1 -2
  183. package/styled-components/es/components/Combobox/ComboboxNew/FloatingPopover.js +1 -1
  184. package/styled-components/es/components/Combobox/ComboboxNew/ui/Inner/Inner.js +1 -1
  185. package/styled-components/es/components/Combobox/ComboboxOld/Combobox.js +1 -2
  186. package/styled-components/es/components/Combobox/ComboboxOld/ui/ComboboxItem/ComboboxItem.js +1 -1
  187. package/styled-components/es/components/Dropdown/Dropdown.js +1 -1
  188. package/styled-components/es/components/Dropdown/FloatingPopover.js +1 -1
  189. package/styled-components/es/components/Dropdown/ui/DropdownInner/DropdownInner.js +1 -1
  190. package/styled-components/es/components/Dropdown/ui/DropdownItemOld/DropdownItemOld.js +2 -1
  191. package/styled-components/es/components/Dropdown/ui/DropdownOld/DropdownOld.js +1 -1
  192. package/styled-components/es/components/Radiobox/Radiobox.js +2 -2
  193. package/styled-components/es/components/Segment/ui/SegmentGroup/SegmentGroup.js +2 -1
  194. package/styled-components/es/components/Segment/ui/SegmentItem/SegmentItem.js +2 -1
  195. package/styled-components/es/components/Select/FloatingPopover.js +1 -1
  196. package/styled-components/es/components/Select/Select.js +2 -1
  197. package/styled-components/es/components/Select/ui/Inner/Inner.js +2 -1
  198. package/styled-components/es/components/Spinner/Spinner.js +1 -1
  199. package/styled-components/es/components/Tabs/ui/horizontal/HorizontalTabs/HorizontalTabs.js +2 -1
  200. package/styled-components/es/components/Tabs/ui/vertical/VerticalTabs/VerticalTabs.js +2 -1
  201. package/styled-components/es/components/TextArea/ui/Hint/Hint.js +1 -1
  202. package/styled-components/es/components/TextField/TextField.js +2 -2
  203. package/styled-components/es/components/TextField/ui/Hint/Hint.js +1 -1
  204. package/types/components/Checkbox/Checkbox.d.ts.map +1 -1
  205. package/types/components/Combobox/ComboboxNew/Combobox.d.ts.map +1 -1
  206. package/types/components/Combobox/ComboboxOld/Combobox.d.ts.map +1 -1
  207. package/types/components/Combobox/ComboboxOld/ui/ComboboxItem/ComboboxItem.d.ts.map +1 -1
  208. package/types/components/Dropdown/Dropdown.d.ts.map +1 -1
  209. package/types/components/Dropdown/ui/DropdownDivider/DropdownDivider.d.ts +1 -1
  210. package/types/components/Dropdown/ui/DropdownDivider/DropdownDivider.d.ts.map +1 -1
  211. package/types/components/Dropdown/ui/DropdownFooter/DropdownFooter.d.ts +1 -1
  212. package/types/components/Dropdown/ui/DropdownFooter/DropdownFooter.d.ts.map +1 -1
  213. package/types/components/Dropdown/ui/DropdownGroup/DropdownGroup.d.ts +1 -1
  214. package/types/components/Dropdown/ui/DropdownGroup/DropdownGroup.d.ts.map +1 -1
  215. package/types/components/Dropdown/ui/DropdownHeader/DropdownHeader.d.ts +1 -1
  216. package/types/components/Dropdown/ui/DropdownHeader/DropdownHeader.d.ts.map +1 -1
  217. package/types/components/Dropdown/ui/DropdownItemOld/DropdownItemOld.d.ts +1 -1
  218. package/types/components/Dropdown/ui/DropdownItemOld/DropdownItemOld.d.ts.map +1 -1
  219. package/types/components/Dropdown/ui/DropdownOld/DropdownOld.d.ts +1 -1
  220. package/types/components/Dropdown/ui/DropdownOld/DropdownOld.d.ts.map +1 -1
  221. package/types/components/Radiobox/Radiobox.d.ts +2 -2
  222. package/types/components/Radiobox/Radiobox.d.ts.map +1 -1
  223. package/types/components/Segment/ui/SegmentGroup/SegmentGroup.d.ts +1 -1
  224. package/types/components/Segment/ui/SegmentGroup/SegmentGroup.d.ts.map +1 -1
  225. package/types/components/Segment/ui/SegmentItem/SegmentItem.d.ts +1 -1
  226. package/types/components/Segment/ui/SegmentItem/SegmentItem.d.ts.map +1 -1
  227. package/types/components/Select/Select.d.ts.map +1 -1
  228. package/types/components/Select/ui/Inner/Inner.d.ts.map +1 -1
  229. package/types/components/Spinner/Spinner.d.ts +1 -1
  230. package/types/components/Spinner/Spinner.d.ts.map +1 -1
  231. package/types/components/Tabs/ui/horizontal/HorizontalTabs/HorizontalTabs.d.ts +1 -1
  232. package/types/components/Tabs/ui/horizontal/HorizontalTabs/HorizontalTabs.d.ts.map +1 -1
  233. package/types/components/Tabs/ui/vertical/VerticalTabs/VerticalTabs.d.ts +1 -1
  234. package/types/components/Tabs/ui/vertical/VerticalTabs/VerticalTabs.d.ts.map +1 -1
  235. package/types/components/TextField/TextField.d.ts +1 -1
  236. package/types/components/TextField/TextField.d.ts.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"FloatingPopover.js","sources":["../../../../src/components/Combobox/ComboboxNew/FloatingPopover.tsx"],"sourcesContent":["import {\n flip,\n shift,\n size,\n useFloating,\n FloatingPortal,\n offset as offsetMiddleware,\n autoUpdate,\n} from '@floating-ui/react';\nimport React, { forwardRef } from 'react';\nimport { safeUseId } from 'src/utils';\n\nimport type { FloatingPopoverProps } from './Combobox.types';\n\n// TODO: #2003\nconst LIST_PADDING = 2;\n\nconst FloatingPopover = forwardRef<HTMLDivElement, FloatingPopoverProps>(\n ({ target, children, opened, onToggle, placement, portal, listWidth, zIndex, isInner }, ref) => {\n const { refs, floatingStyles } = useFloating({\n whileElementsMounted(referenceEl, floatingEl, update) {\n return autoUpdate(referenceEl, floatingEl, update, {\n ancestorScroll: false,\n ancestorResize: false,\n layoutShift: false,\n });\n },\n placement,\n open: opened,\n middleware: [\n offsetMiddleware({\n mainAxis: isInner ? LIST_PADDING * 2 : 0,\n alignmentAxis: isInner ? -LIST_PADDING : 0,\n }),\n flip({ fallbackAxisSideDirection: 'end' }),\n shift(),\n size({\n apply({ rects, elements }) {\n Object.assign(elements.floating.style, {\n width:\n listWidth ||\n `${isInner ? rects.reference.width + LIST_PADDING * 2 : rects.reference.width}px`,\n });\n },\n }),\n ],\n });\n\n const wrappedId = safeUseId();\n\n const handleClick = () => {\n if (onToggle) {\n onToggle(!opened);\n }\n };\n\n // Проверка на target. Это может быть как ReactNode, так и функция, в которую пробрасывается ref.\n // Это нужно для более тонкой настройки reference-элемента, вокруг которого и будет позиционироваться выпадашка.\n // Пример: когда в Textfield под инпутом находится helperText (или еще что-либо),\n // но выпадающий список должен позиционироваться непосредственно возле самого инпута.\n const isTargetAsFunction = typeof target === 'function';\n\n return (\n <div ref={ref} id={wrappedId} style={{ position: 'relative' }}>\n <div ref={isTargetAsFunction ? undefined : refs.setReference} onClick={handleClick}>\n {typeof target === 'function' ? target(refs.setReference as any) : target}\n </div>\n\n {opened && (\n // root - принимает ref контейнера портала.\n // id - если есть портал - не используется, если портала нет - подставляется 'wrappedId'.\n <FloatingPortal {...getFloatingPortalProps(portal, wrappedId)}>\n <div ref={refs.setFloating} style={{ ...floatingStyles, zIndex: zIndex || 1000 }}>\n {children}\n </div>\n </FloatingPortal>\n )}\n </div>\n );\n },\n);\n\ntype FloatingPortalReturnedProps = {\n root?: React.RefObject<HTMLElement>;\n id?: string;\n};\n\n// root - принимает ref контейнера портала.\n// id - если есть портал - не используется, если портала нет - подставляется 'wrappedId'.\nconst getFloatingPortalProps = (\n portal: FloatingPopoverProps['portal'],\n wrappedId: string,\n): FloatingPortalReturnedProps => {\n if (!portal) {\n return { id: wrappedId };\n }\n\n if (typeof portal === 'string') {\n return { id: portal };\n }\n\n return { root: portal };\n};\n\nexport { FloatingPopover };\n"],"names":["LIST_PADDING","FloatingPopover","forwardRef","_ref","ref","target","children","opened","onToggle","placement","portal","listWidth","zIndex","isInner","_useFloating","useFloating","whileElementsMounted","referenceEl","floatingEl","update","autoUpdate","ancestorScroll","ancestorResize","layoutShift","open","middleware","offsetMiddleware","mainAxis","alignmentAxis","flip","fallbackAxisSideDirection","shift","size","apply","_ref2","rects","elements","Object","assign","floating","style","width","concat","reference","refs","floatingStyles","wrappedId","safeUseId","handleClick","isTargetAsFunction","React","createElement","id","position","undefined","setReference","onClick","FloatingPortal","getFloatingPortalProps","setFloating","_objectSpread","root"],"mappings":"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"}
1
+ {"version":3,"file":"FloatingPopover.js","sources":["../../../../src/components/Combobox/ComboboxNew/FloatingPopover.tsx"],"sourcesContent":["import {\n flip,\n shift,\n size,\n useFloating,\n FloatingPortal,\n offset as offsetMiddleware,\n autoUpdate,\n} from '@floating-ui/react';\nimport React, { forwardRef } from 'react';\nimport { safeUseId } from '@salutejs/plasma-core';\n\nimport type { FloatingPopoverProps } from './Combobox.types';\n\n// TODO: #2003\nconst LIST_PADDING = 2;\n\nconst FloatingPopover = forwardRef<HTMLDivElement, FloatingPopoverProps>(\n ({ target, children, opened, onToggle, placement, portal, listWidth, zIndex, isInner }, ref) => {\n const { refs, floatingStyles } = useFloating({\n whileElementsMounted(referenceEl, floatingEl, update) {\n return autoUpdate(referenceEl, floatingEl, update, {\n ancestorScroll: false,\n ancestorResize: false,\n layoutShift: false,\n });\n },\n placement,\n open: opened,\n middleware: [\n offsetMiddleware({\n mainAxis: isInner ? LIST_PADDING * 2 : 0,\n alignmentAxis: isInner ? -LIST_PADDING : 0,\n }),\n flip({ fallbackAxisSideDirection: 'end' }),\n shift(),\n size({\n apply({ rects, elements }) {\n Object.assign(elements.floating.style, {\n width:\n listWidth ||\n `${isInner ? rects.reference.width + LIST_PADDING * 2 : rects.reference.width}px`,\n });\n },\n }),\n ],\n });\n\n const wrappedId = safeUseId();\n\n const handleClick = () => {\n if (onToggle) {\n onToggle(!opened);\n }\n };\n\n // Проверка на target. Это может быть как ReactNode, так и функция, в которую пробрасывается ref.\n // Это нужно для более тонкой настройки reference-элемента, вокруг которого и будет позиционироваться выпадашка.\n // Пример: когда в Textfield под инпутом находится helperText (или еще что-либо),\n // но выпадающий список должен позиционироваться непосредственно возле самого инпута.\n const isTargetAsFunction = typeof target === 'function';\n\n return (\n <div ref={ref} id={wrappedId} style={{ position: 'relative' }}>\n <div ref={isTargetAsFunction ? undefined : refs.setReference} onClick={handleClick}>\n {typeof target === 'function' ? target(refs.setReference as any) : target}\n </div>\n\n {opened && (\n // root - принимает ref контейнера портала.\n // id - если есть портал - не используется, если портала нет - подставляется 'wrappedId'.\n <FloatingPortal {...getFloatingPortalProps(portal, wrappedId)}>\n <div ref={refs.setFloating} style={{ ...floatingStyles, zIndex: zIndex || 1000 }}>\n {children}\n </div>\n </FloatingPortal>\n )}\n </div>\n );\n },\n);\n\ntype FloatingPortalReturnedProps = {\n root?: React.RefObject<HTMLElement>;\n id?: string;\n};\n\n// root - принимает ref контейнера портала.\n// id - если есть портал - не используется, если портала нет - подставляется 'wrappedId'.\nconst getFloatingPortalProps = (\n portal: FloatingPopoverProps['portal'],\n wrappedId: string,\n): FloatingPortalReturnedProps => {\n if (!portal) {\n return { id: wrappedId };\n }\n\n if (typeof portal === 'string') {\n return { id: portal };\n }\n\n return { root: portal };\n};\n\nexport { FloatingPopover };\n"],"names":["LIST_PADDING","FloatingPopover","forwardRef","_ref","ref","target","children","opened","onToggle","placement","portal","listWidth","zIndex","isInner","_useFloating","useFloating","whileElementsMounted","referenceEl","floatingEl","update","autoUpdate","ancestorScroll","ancestorResize","layoutShift","open","middleware","offsetMiddleware","mainAxis","alignmentAxis","flip","fallbackAxisSideDirection","shift","size","apply","_ref2","rects","elements","Object","assign","floating","style","width","concat","reference","refs","floatingStyles","wrappedId","safeUseId","handleClick","isTargetAsFunction","React","createElement","id","position","undefined","setReference","onClick","FloatingPortal","getFloatingPortalProps","setFloating","_objectSpread","root"],"mappings":"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"}
@@ -3,9 +3,9 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var React = require('react');
6
+ var plasmaCore = require('@salutejs/plasma-core');
6
7
  var FloatingPopover = require('../../FloatingPopover.js');
7
8
  var Combobox_styles = require('../../Combobox.styles.js');
8
- var react = require('../../../../../utils/react.js');
9
9
  var isEmpty = require('../../../../../utils/isEmpty.js');
10
10
  var Item = require('./ui/Item/Item.js');
11
11
 
@@ -35,7 +35,7 @@ var Inner = function Inner(_ref) {
35
35
  }
36
36
  };
37
37
  var isCurrentListOpen = path[currentLevel + 1] === item.value.toString();
38
- var treeId = react.safeUseId();
38
+ var treeId = plasmaCore.safeUseId();
39
39
  var listId = "".concat(treeId, "_tree_level_").concat(currentLevel + 2);
40
40
  var nextLevel = currentLevel + 1;
41
41
  if (!isEmpty.isEmpty(item === null || item === void 0 ? void 0 : item.items)) {
@@ -1 +1 @@
1
- {"version":3,"file":"Inner.js","sources":["../../../../../../src/components/Combobox/ComboboxNew/ui/Inner/Inner.tsx"],"sourcesContent":["import React from 'react';\nimport type { FC } from 'react';\nimport { safeUseId } from 'src/utils';\n\nimport { FloatingPopover } from '../../FloatingPopover';\nimport { isEmpty } from '../../../../../utils';\nimport { Ul, ListWrapper } from '../../Combobox.styles';\n\nimport type { ItemOptionTransformed } from './ui/Item/Item.types';\nimport { Item } from './ui';\nimport { InnerProps } from './Inner.type';\n\nexport const Inner: FC<InnerProps> = ({ item, currentLevel, path, dispatchPath, index, listWidth }) => {\n const handleToggle = (opened: boolean): void => {\n if (opened) {\n dispatchPath({ type: 'changed_on_level', value: item.value.toString(), level: currentLevel + 1 });\n } else {\n dispatchPath({ type: 'cut_by_level', level: currentLevel + 1 });\n }\n };\n\n const isCurrentListOpen = path[currentLevel + 1] === item.value.toString();\n\n const treeId = safeUseId();\n const listId = `${treeId}_tree_level_${currentLevel + 2}`;\n const nextLevel = currentLevel + 1;\n\n if (!isEmpty(item?.items)) {\n return (\n <FloatingPopover\n placement={item?.placement || 'right-start'}\n opened={isCurrentListOpen}\n onToggle={handleToggle}\n target={\n <Item\n item={item}\n path={path}\n currentLevel={currentLevel}\n index={index}\n ariaControls={listId}\n ariaExpanded={isCurrentListOpen}\n ariaLevel={nextLevel}\n ariaLabel={item.label}\n />\n }\n isInner\n >\n <ListWrapper listWidth={listWidth}>\n <Ul role=\"group\" id={listId} virtual={false}>\n {item.items?.map((innerItem: ItemOptionTransformed, innerIndex: number) => (\n <Inner\n key={`${innerIndex}/${currentLevel}`}\n item={innerItem}\n currentLevel={nextLevel}\n path={path}\n dispatchPath={dispatchPath}\n index={innerIndex}\n listWidth={listWidth}\n />\n ))}\n </Ul>\n </ListWrapper>\n </FloatingPopover>\n );\n }\n\n return <Item item={item} path={path} index={index} currentLevel={currentLevel} ariaLevel={nextLevel} />;\n};\n"],"names":["Inner","_ref","item","currentLevel","path","dispatchPath","index","listWidth","handleToggle","opened","type","value","toString","level","isCurrentListOpen","treeId","safeUseId","listId","concat","nextLevel","isEmpty","items","_item$items","React","createElement","FloatingPopover","placement","onToggle","target","Item","ariaControls","ariaExpanded","ariaLevel","ariaLabel","label","isInner","ListWrapper","Ul","role","id","virtual","map","innerItem","innerIndex","key"],"mappings":";;;;;;;;;;;;;;;IAYaA,KAAqB,GAAG,SAAxBA,KAAqBA,CAAAC,IAAA,EAAqE;AAAA,EAAA,IAA/DC,IAAI,GAAAD,IAAA,CAAJC,IAAI;IAAEC,YAAY,GAAAF,IAAA,CAAZE,YAAY;IAAEC,IAAI,GAAAH,IAAA,CAAJG,IAAI;IAAEC,YAAY,GAAAJ,IAAA,CAAZI,YAAY;IAAEC,KAAK,GAAAL,IAAA,CAALK,KAAK;IAAEC,SAAS,GAAAN,IAAA,CAATM,SAAS,CAAA;AAC5F,EAAA,IAAMC,YAAY,GAAG,SAAfA,YAAYA,CAAIC,MAAe,EAAW;AAC5C,IAAA,IAAIA,MAAM,EAAE;AACRJ,MAAAA,YAAY,CAAC;AAAEK,QAAAA,IAAI,EAAE,kBAAkB;AAAEC,QAAAA,KAAK,EAAET,IAAI,CAACS,KAAK,CAACC,QAAQ,EAAE;QAAEC,KAAK,EAAEV,YAAY,GAAG,CAAA;AAAE,OAAC,CAAC,CAAA;AACrG,KAAC,MAAM;AACHE,MAAAA,YAAY,CAAC;AAAEK,QAAAA,IAAI,EAAE,cAAc;QAAEG,KAAK,EAAEV,YAAY,GAAG,CAAA;AAAE,OAAC,CAAC,CAAA;AACnE,KAAA;GACH,CAAA;AAED,EAAA,IAAMW,iBAAiB,GAAGV,IAAI,CAACD,YAAY,GAAG,CAAC,CAAC,KAAKD,IAAI,CAACS,KAAK,CAACC,QAAQ,EAAE,CAAA;AAE1E,EAAA,IAAMG,MAAM,GAAGC,eAAS,EAAE,CAAA;EAC1B,IAAMC,MAAM,GAAAC,EAAAA,CAAAA,MAAA,CAAMH,MAAM,EAAAG,cAAAA,CAAAA,CAAAA,MAAA,CAAef,YAAY,GAAG,CAAC,CAAE,CAAA;AACzD,EAAA,IAAMgB,SAAS,GAAGhB,YAAY,GAAG,CAAC,CAAA;EAElC,IAAI,CAACiB,eAAO,CAAClB,IAAI,KAAA,IAAA,IAAJA,IAAI,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAJA,IAAI,CAAEmB,KAAK,CAAC,EAAE;AAAA,IAAA,IAAAC,WAAA,CAAA;AACvB,IAAA,oBACIC,sBAAA,CAAAC,aAAA,CAACC,+BAAe,EAAA;MACZC,SAAS,EAAE,CAAAxB,IAAI,KAAJA,IAAAA,IAAAA,IAAI,uBAAJA,IAAI,CAAEwB,SAAS,KAAI,aAAc;AAC5CjB,MAAAA,MAAM,EAAEK,iBAAkB;AAC1Ba,MAAAA,QAAQ,EAAEnB,YAAa;AACvBoB,MAAAA,MAAM,eACFL,sBAAA,CAAAC,aAAA,CAACK,SAAI,EAAA;AACD3B,QAAAA,IAAI,EAAEA,IAAK;AACXE,QAAAA,IAAI,EAAEA,IAAK;AACXD,QAAAA,YAAY,EAAEA,YAAa;AAC3BG,QAAAA,KAAK,EAAEA,KAAM;AACbwB,QAAAA,YAAY,EAAEb,MAAO;AACrBc,QAAAA,YAAY,EAAEjB,iBAAkB;AAChCkB,QAAAA,SAAS,EAAEb,SAAU;QACrBc,SAAS,EAAE/B,IAAI,CAACgC,KAAAA;AAAM,OACzB,CACJ;MACDC,OAAO,EAAA,IAAA;AAAA,KAAA,eAEPZ,sBAAA,CAAAC,aAAA,CAACY,2BAAW,EAAA;AAAC7B,MAAAA,SAAS,EAAEA,SAAAA;AAAU,KAAA,eAC9BgB,sBAAA,CAAAC,aAAA,CAACa,kBAAE,EAAA;AAACC,MAAAA,IAAI,EAAC,OAAO;AAACC,MAAAA,EAAE,EAAEtB,MAAO;AAACuB,MAAAA,OAAO,EAAE,KAAA;AAAM,KAAA,EAAA,CAAAlB,WAAA,GACvCpB,IAAI,CAACmB,KAAK,MAAAC,IAAAA,IAAAA,WAAA,KAAVA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,WAAA,CAAYmB,GAAG,CAAC,UAACC,SAAgC,EAAEC,UAAkB,EAAA;AAAA,MAAA,oBAClEpB,sBAAA,CAAAC,aAAA,CAACxB,KAAK,EAAA;QACF4C,GAAG,EAAA,EAAA,CAAA1B,MAAA,CAAKyB,UAAU,OAAAzB,MAAA,CAAIf,YAAY,CAAG;AACrCD,QAAAA,IAAI,EAAEwC,SAAU;AAChBvC,QAAAA,YAAY,EAAEgB,SAAU;AACxBf,QAAAA,IAAI,EAAEA,IAAK;AACXC,QAAAA,YAAY,EAAEA,YAAa;AAC3BC,QAAAA,KAAK,EAAEqC,UAAW;AAClBpC,QAAAA,SAAS,EAAEA,SAAAA;AAAU,OACxB,CAAC,CAAA;KACL,CACD,CACK,CACA,CAAC,CAAA;AAE1B,GAAA;AAEA,EAAA,oBAAOgB,sBAAA,CAAAC,aAAA,CAACK,SAAI,EAAA;AAAC3B,IAAAA,IAAI,EAAEA,IAAK;AAACE,IAAAA,IAAI,EAAEA,IAAK;AAACE,IAAAA,KAAK,EAAEA,KAAM;AAACH,IAAAA,YAAY,EAAEA,YAAa;AAAC6B,IAAAA,SAAS,EAAEb,SAAAA;AAAU,GAAE,CAAC,CAAA;AAC3G;;;;"}
1
+ {"version":3,"file":"Inner.js","sources":["../../../../../../src/components/Combobox/ComboboxNew/ui/Inner/Inner.tsx"],"sourcesContent":["import React from 'react';\nimport type { FC } from 'react';\nimport { safeUseId } from '@salutejs/plasma-core';\n\nimport { FloatingPopover } from '../../FloatingPopover';\nimport { isEmpty } from '../../../../../utils';\nimport { Ul, ListWrapper } from '../../Combobox.styles';\n\nimport type { ItemOptionTransformed } from './ui/Item/Item.types';\nimport { Item } from './ui';\nimport { InnerProps } from './Inner.type';\n\nexport const Inner: FC<InnerProps> = ({ item, currentLevel, path, dispatchPath, index, listWidth }) => {\n const handleToggle = (opened: boolean): void => {\n if (opened) {\n dispatchPath({ type: 'changed_on_level', value: item.value.toString(), level: currentLevel + 1 });\n } else {\n dispatchPath({ type: 'cut_by_level', level: currentLevel + 1 });\n }\n };\n\n const isCurrentListOpen = path[currentLevel + 1] === item.value.toString();\n\n const treeId = safeUseId();\n const listId = `${treeId}_tree_level_${currentLevel + 2}`;\n const nextLevel = currentLevel + 1;\n\n if (!isEmpty(item?.items)) {\n return (\n <FloatingPopover\n placement={item?.placement || 'right-start'}\n opened={isCurrentListOpen}\n onToggle={handleToggle}\n target={\n <Item\n item={item}\n path={path}\n currentLevel={currentLevel}\n index={index}\n ariaControls={listId}\n ariaExpanded={isCurrentListOpen}\n ariaLevel={nextLevel}\n ariaLabel={item.label}\n />\n }\n isInner\n >\n <ListWrapper listWidth={listWidth}>\n <Ul role=\"group\" id={listId} virtual={false}>\n {item.items?.map((innerItem: ItemOptionTransformed, innerIndex: number) => (\n <Inner\n key={`${innerIndex}/${currentLevel}`}\n item={innerItem}\n currentLevel={nextLevel}\n path={path}\n dispatchPath={dispatchPath}\n index={innerIndex}\n listWidth={listWidth}\n />\n ))}\n </Ul>\n </ListWrapper>\n </FloatingPopover>\n );\n }\n\n return <Item item={item} path={path} index={index} currentLevel={currentLevel} ariaLevel={nextLevel} />;\n};\n"],"names":["Inner","_ref","item","currentLevel","path","dispatchPath","index","listWidth","handleToggle","opened","type","value","toString","level","isCurrentListOpen","treeId","safeUseId","listId","concat","nextLevel","isEmpty","items","_item$items","React","createElement","FloatingPopover","placement","onToggle","target","Item","ariaControls","ariaExpanded","ariaLevel","ariaLabel","label","isInner","ListWrapper","Ul","role","id","virtual","map","innerItem","innerIndex","key"],"mappings":";;;;;;;;;;;;;;;IAYaA,KAAqB,GAAG,SAAxBA,KAAqBA,CAAAC,IAAA,EAAqE;AAAA,EAAA,IAA/DC,IAAI,GAAAD,IAAA,CAAJC,IAAI;IAAEC,YAAY,GAAAF,IAAA,CAAZE,YAAY;IAAEC,IAAI,GAAAH,IAAA,CAAJG,IAAI;IAAEC,YAAY,GAAAJ,IAAA,CAAZI,YAAY;IAAEC,KAAK,GAAAL,IAAA,CAALK,KAAK;IAAEC,SAAS,GAAAN,IAAA,CAATM,SAAS,CAAA;AAC5F,EAAA,IAAMC,YAAY,GAAG,SAAfA,YAAYA,CAAIC,MAAe,EAAW;AAC5C,IAAA,IAAIA,MAAM,EAAE;AACRJ,MAAAA,YAAY,CAAC;AAAEK,QAAAA,IAAI,EAAE,kBAAkB;AAAEC,QAAAA,KAAK,EAAET,IAAI,CAACS,KAAK,CAACC,QAAQ,EAAE;QAAEC,KAAK,EAAEV,YAAY,GAAG,CAAA;AAAE,OAAC,CAAC,CAAA;AACrG,KAAC,MAAM;AACHE,MAAAA,YAAY,CAAC;AAAEK,QAAAA,IAAI,EAAE,cAAc;QAAEG,KAAK,EAAEV,YAAY,GAAG,CAAA;AAAE,OAAC,CAAC,CAAA;AACnE,KAAA;GACH,CAAA;AAED,EAAA,IAAMW,iBAAiB,GAAGV,IAAI,CAACD,YAAY,GAAG,CAAC,CAAC,KAAKD,IAAI,CAACS,KAAK,CAACC,QAAQ,EAAE,CAAA;AAE1E,EAAA,IAAMG,MAAM,GAAGC,oBAAS,EAAE,CAAA;EAC1B,IAAMC,MAAM,GAAAC,EAAAA,CAAAA,MAAA,CAAMH,MAAM,EAAAG,cAAAA,CAAAA,CAAAA,MAAA,CAAef,YAAY,GAAG,CAAC,CAAE,CAAA;AACzD,EAAA,IAAMgB,SAAS,GAAGhB,YAAY,GAAG,CAAC,CAAA;EAElC,IAAI,CAACiB,eAAO,CAAClB,IAAI,KAAA,IAAA,IAAJA,IAAI,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAJA,IAAI,CAAEmB,KAAK,CAAC,EAAE;AAAA,IAAA,IAAAC,WAAA,CAAA;AACvB,IAAA,oBACIC,sBAAA,CAAAC,aAAA,CAACC,+BAAe,EAAA;MACZC,SAAS,EAAE,CAAAxB,IAAI,KAAJA,IAAAA,IAAAA,IAAI,uBAAJA,IAAI,CAAEwB,SAAS,KAAI,aAAc;AAC5CjB,MAAAA,MAAM,EAAEK,iBAAkB;AAC1Ba,MAAAA,QAAQ,EAAEnB,YAAa;AACvBoB,MAAAA,MAAM,eACFL,sBAAA,CAAAC,aAAA,CAACK,SAAI,EAAA;AACD3B,QAAAA,IAAI,EAAEA,IAAK;AACXE,QAAAA,IAAI,EAAEA,IAAK;AACXD,QAAAA,YAAY,EAAEA,YAAa;AAC3BG,QAAAA,KAAK,EAAEA,KAAM;AACbwB,QAAAA,YAAY,EAAEb,MAAO;AACrBc,QAAAA,YAAY,EAAEjB,iBAAkB;AAChCkB,QAAAA,SAAS,EAAEb,SAAU;QACrBc,SAAS,EAAE/B,IAAI,CAACgC,KAAAA;AAAM,OACzB,CACJ;MACDC,OAAO,EAAA,IAAA;AAAA,KAAA,eAEPZ,sBAAA,CAAAC,aAAA,CAACY,2BAAW,EAAA;AAAC7B,MAAAA,SAAS,EAAEA,SAAAA;AAAU,KAAA,eAC9BgB,sBAAA,CAAAC,aAAA,CAACa,kBAAE,EAAA;AAACC,MAAAA,IAAI,EAAC,OAAO;AAACC,MAAAA,EAAE,EAAEtB,MAAO;AAACuB,MAAAA,OAAO,EAAE,KAAA;AAAM,KAAA,EAAA,CAAAlB,WAAA,GACvCpB,IAAI,CAACmB,KAAK,MAAAC,IAAAA,IAAAA,WAAA,KAAVA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,WAAA,CAAYmB,GAAG,CAAC,UAACC,SAAgC,EAAEC,UAAkB,EAAA;AAAA,MAAA,oBAClEpB,sBAAA,CAAAC,aAAA,CAACxB,KAAK,EAAA;QACF4C,GAAG,EAAA,EAAA,CAAA1B,MAAA,CAAKyB,UAAU,OAAAzB,MAAA,CAAIf,YAAY,CAAG;AACrCD,QAAAA,IAAI,EAAEwC,SAAU;AAChBvC,QAAAA,YAAY,EAAEgB,SAAU;AACxBf,QAAAA,IAAI,EAAEA,IAAK;AACXC,QAAAA,YAAY,EAAEA,YAAa;AAC3BC,QAAAA,KAAK,EAAEqC,UAAW;AAClBpC,QAAAA,SAAS,EAAEA,SAAAA;AAAU,OACxB,CAAC,CAAA;KACL,CACD,CACK,CACA,CAAC,CAAA;AAE1B,GAAA;AAEA,EAAA,oBAAOgB,sBAAA,CAAAC,aAAA,CAACK,SAAI,EAAA;AAAC3B,IAAAA,IAAI,EAAEA,IAAK;AAACE,IAAAA,IAAI,EAAEA,IAAK;AAACE,IAAAA,KAAK,EAAEA,KAAM;AAACH,IAAAA,YAAY,EAAEA,YAAa;AAAC6B,IAAAA,SAAS,EAAEb,SAAAA;AAAU,GAAE,CAAC,CAAA;AAC3G;;;;"}
@@ -11,7 +11,6 @@ var base = require('./variations/_view/base.js');
11
11
  var base$1 = require('./variations/_size/base.js');
12
12
  var Combobox_styles = require('./Combobox.styles.js');
13
13
  var useForceUpdate = require('../../../hooks/useForceUpdate.js');
14
- var react = require('../../../utils/react.js');
15
14
  var useDidMountEffect = require('../../../hooks/useDidMountEffect.js');
16
15
  var useKeyNavigation = require('./hooks/useKeyNavigation.js');
17
16
  var ComboboxTarget = require('./ui/ComboboxTarget/ComboboxTarget.js');
@@ -56,7 +55,7 @@ var comboboxRoot = function comboboxRoot(Root) {
56
55
  filterFunction = _ref.filterFunction,
57
56
  rest = _rollupPluginBabelHelpers.objectWithoutProperties(_ref, _excluded);
58
57
  var forceUpdate = useForceUpdate.useForceUpdate();
59
- var uniqId = react.safeUseId();
58
+ var uniqId = plasmaCore.safeUseId();
60
59
  var innerId = id || uniqId;
61
60
  var _rest$valueType = rest.valueType,
62
61
  valueType = _rest$valueType === void 0 ? 'single' : _rest$valueType,
@@ -1 +1 @@
1
- {"version":3,"file":"Combobox.js","sources":["../../../../src/components/Combobox/ComboboxOld/Combobox.tsx"],"sourcesContent":["import React, { Children, forwardRef, useEffect, useRef, useState } from 'react';\nimport { useForkRef } from '@salutejs/plasma-core';\nimport { safeUseId } from 'src/utils';\n\nimport { RootProps } from '../../../engines';\nimport { cx, getPlacements } from '../../../utils';\nimport { useDidMountEffect, useForceUpdate } from '../../../hooks';\n\nimport { getChildren, getNewSelected, getValues } from './utils';\nimport { useKeyNavigation } from './hooks';\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as sizeCSS } from './variations/_size/base';\nimport { ComboboxTarget } from './ui';\nimport { ComboboxItemNotFound, StyledPopover, StyledRoot, StyledCombobox, StyledNativeSelect } from './Combobox.styles';\nimport type { ComboboxPrimitiveValue, ComboboxProps } from './Combobox.types';\n\n/**\n * Выпадающий список без внешнего контроля видимости.\n */\nexport const comboboxRoot = (Root: RootProps<HTMLInputElement, ComboboxProps>) =>\n forwardRef<HTMLInputElement, ComboboxProps>(\n (\n {\n name,\n form,\n readOnly,\n disabled,\n label,\n placeholder,\n id,\n children,\n role,\n view,\n size,\n frame,\n usePortal,\n negativeResultContent = 'Элементы не найдены',\n enumerationType = 'comma',\n opened = false,\n alwaysOpened = false,\n placement = 'bottom',\n onToggle,\n onKeyDown,\n filterFunction,\n ...rest\n },\n outerRootRef,\n ) => {\n const forceUpdate = useForceUpdate();\n const uniqId = safeUseId();\n const innerId = id || uniqId;\n const { valueType = 'single', value } = rest;\n const offset = [0, 4] as [number, number];\n\n const [ref, setRef] = useState<HTMLInputElement | null>(null);\n\n const targetRef = useRef<HTMLInputElement>(null);\n const chipsRefs = useRef<Array<HTMLButtonElement>>([]);\n const comboboxRef = useRef<HTMLDivElement>(null);\n const itemsRefs = useRef<Array<HTMLDivElement>>([]);\n const inputRef = useRef<HTMLInputElement>(null);\n const handleRef = useForkRef<HTMLInputElement>(targetRef, outerRootRef);\n const controlledRefs = { targetRef, chipsRefs, selectRef: comboboxRef, itemsRefs, inputRef };\n\n const [isVisible, setIsVisible] = useState(alwaysOpened || opened);\n const [search, setSearch] = useState<string | undefined>('');\n const [filterValue, setFilterValue] = useState(search);\n\n // INFO: нужно высчитывать для корректной работы портала\n const dynamicTargetWidth = targetRef.current?.offsetWidth;\n\n // INFO: Из-за того, что классы передаются через ref,\n // состояние пропсов после изменения view, size\n // всегда предыдущее, поэтому нужно делать форс-ререндер\n useDidMountEffect(() => {\n forceUpdate();\n }, [view, size]);\n\n useEffect(() => {\n if (disabled || readOnly) {\n return;\n }\n\n setIsVisible(alwaysOpened || opened);\n }, [opened, alwaysOpened, disabled, readOnly]);\n\n useEffect(() => {\n // INFO: Для кейсов, когда значение выбрано и нужно вывести весь список\n if (alwaysOpened || opened) {\n setFilterValue('');\n }\n }, []);\n\n const onInnerToggle = (openValue: boolean, event: React.SyntheticEvent | Event) => {\n if (disabled || readOnly) {\n return;\n }\n\n // INFO: Для кейсов, когда значение выбрано и нужно вывести весь список\n if (!isVisible) {\n setFilterValue('');\n }\n\n if (onToggle) {\n onToggle(alwaysOpened || openValue, event);\n\n return;\n }\n\n setIsVisible(alwaysOpened || openValue);\n };\n\n const closedWithoutChanges = useRef(true);\n\n const updateValue = (item: HTMLElement, event: React.SyntheticEvent | Event) => {\n const {\n dataset: { value: newValue },\n } = item;\n\n if (rest.valueType === 'multiple') {\n const newSelected = getNewSelected(rest.value, newValue, rest.valueType);\n rest.onChangeValue?.(newSelected);\n\n return;\n }\n\n const newSelected = getNewSelected(rest.value, newValue, 'single');\n\n rest.onChangeValue?.(newSelected);\n\n onInnerToggle?.(alwaysOpened || false, event);\n\n closedWithoutChanges.current = false;\n };\n\n const onClickChildrenItem = (event: React.MouseEvent<HTMLDivElement>) => {\n // INFO: Для корректной работы компонента Popper\n event.stopPropagation();\n\n const item = event.currentTarget as HTMLElement;\n\n updateValue(item, event);\n };\n\n const onChangeChipValue = (newValue?: Array<ComboboxPrimitiveValue>) => {\n if (rest.valueType !== 'multiple') {\n return;\n }\n\n rest.onChangeValue?.(newValue);\n };\n\n const { onKeyDownTarget, onKeyDownSelect } = useKeyNavigation({\n controlledRefs,\n opened: isVisible,\n enumerationType,\n valueType,\n componentType: 'combobox',\n value,\n search: filterValue,\n updateOpened: onInnerToggle,\n updateValue,\n });\n\n const childrenArray = Children.toArray(children) as React.ReactElement[];\n\n const childrenMemo = getChildren(\n childrenArray,\n { onClick: onClickChildrenItem, childrenRefs: itemsRefs },\n value,\n filterValue,\n filterFunction,\n ).filter(Boolean);\n\n const values = getValues(childrenArray, value);\n\n const onSearch = (newSearch?: string, newOpened?: boolean) => {\n setSearch(newSearch);\n setFilterValue(newSearch);\n setIsVisible(newOpened ?? true);\n };\n\n const onKeyDownHandle = (event: React.KeyboardEvent<HTMLInputElement>) => {\n onKeyDown?.(event);\n onKeyDownTarget(event);\n };\n\n useEffect(() => {\n if (alwaysOpened && rest.valueType === 'single') {\n setSearch(String(value));\n }\n }, [value, alwaysOpened]);\n\n return (\n <StyledRoot ref={comboboxRef}>\n <StyledNativeSelect\n aria-invalid=\"false\"\n aria-hidden=\"true\"\n aria-readonly={readOnly}\n tabIndex={-1}\n form={form}\n name={name}\n value={`${value}`}\n disabled={disabled || readOnly}\n />\n <StyledPopover\n role={role}\n opened={isVisible}\n onToggle={onInnerToggle}\n target={\n <ComboboxTarget\n opened={isVisible}\n values={values}\n label={label}\n placeholder={placeholder}\n search={search}\n enumerationType={enumerationType}\n valueType={valueType}\n readOnly={readOnly}\n disabled={disabled}\n size={size}\n closedWithoutChanges={closedWithoutChanges}\n ref={handleRef}\n chipsRefs={chipsRefs}\n inputRef={inputRef}\n id={innerId}\n onChange={onChangeChipValue}\n onSearch={onSearch}\n onKeyDown={onKeyDownHandle}\n {...rest}\n />\n }\n className={cx(ref?.classList.toString())} // INFO: Прокидываем стили для Popover\n id={innerId}\n offset={offset}\n placement={getPlacements(placement)}\n usePortal={usePortal}\n selectWidth={dynamicTargetWidth}\n frame={frame}\n trigger=\"click\"\n isFocusTrapped={false}\n preventOverflow={false}\n closeOnEsc={false}\n closeOnOverlayClick\n >\n <Root ref={setRef} view={view} size={size}>\n <StyledCombobox onKeyDown={onKeyDownSelect}>\n {childrenMemo.length ? (\n childrenMemo\n ) : (\n <ComboboxItemNotFound>{negativeResultContent}</ComboboxItemNotFound>\n )}\n </StyledCombobox>\n </Root>\n </StyledPopover>\n </StyledRoot>\n );\n },\n );\n\nexport const comboboxConfig = {\n name: 'Combobox',\n tag: 'div',\n layout: comboboxRoot,\n base: '',\n variations: {\n view: {\n css: viewCSS,\n },\n size: {\n css: sizeCSS,\n },\n },\n defaults: {\n view: 'default',\n size: 'm',\n },\n};\n"],"names":["comboboxRoot","Root","forwardRef","_ref","outerRootRef","_targetRef$current","name","form","readOnly","disabled","label","placeholder","id","children","role","view","size","frame","usePortal","_ref$negativeResultCo","negativeResultContent","_ref$enumerationType","enumerationType","_ref$opened","opened","_ref$alwaysOpened","alwaysOpened","_ref$placement","placement","onToggle","onKeyDown","filterFunction","rest","_objectWithoutProperties","_excluded","forceUpdate","useForceUpdate","uniqId","safeUseId","innerId","_rest$valueType","valueType","value","offset","_useState","useState","_useState2","_slicedToArray","ref","setRef","targetRef","useRef","chipsRefs","comboboxRef","itemsRefs","inputRef","handleRef","useForkRef","controlledRefs","selectRef","_useState3","_useState4","isVisible","setIsVisible","_useState5","_useState6","search","setSearch","_useState7","_useState8","filterValue","setFilterValue","dynamicTargetWidth","current","offsetWidth","useDidMountEffect","useEffect","onInnerToggle","openValue","event","closedWithoutChanges","updateValue","item","_rest$onChangeValue2","newValue","dataset","_rest$onChangeValue","newSelected","getNewSelected","onChangeValue","call","onClickChildrenItem","stopPropagation","currentTarget","onChangeChipValue","_rest$onChangeValue3","_useKeyNavigation","useKeyNavigation","componentType","updateOpened","onKeyDownTarget","onKeyDownSelect","childrenArray","Children","toArray","childrenMemo","getChildren","onClick","childrenRefs","filter","Boolean","values","getValues","onSearch","newSearch","newOpened","onKeyDownHandle","String","React","createElement","StyledRoot","StyledNativeSelect","tabIndex","concat","StyledPopover","target","ComboboxTarget","_extends","onChange","className","cx","classList","toString","getPlacements","selectWidth","trigger","isFocusTrapped","preventOverflow","closeOnEsc","closeOnOverlayClick","StyledCombobox","length","ComboboxItemNotFound","comboboxConfig","tag","layout","base","variations","css","viewCSS","sizeCSS","defaults"],"mappings":"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"}
1
+ {"version":3,"file":"Combobox.js","sources":["../../../../src/components/Combobox/ComboboxOld/Combobox.tsx"],"sourcesContent":["import React, { Children, forwardRef, useEffect, useRef, useState } from 'react';\nimport { safeUseId, useForkRef } from '@salutejs/plasma-core';\n\nimport { RootProps } from '../../../engines';\nimport { cx, getPlacements } from '../../../utils';\nimport { useDidMountEffect, useForceUpdate } from '../../../hooks';\n\nimport { getChildren, getNewSelected, getValues } from './utils';\nimport { useKeyNavigation } from './hooks';\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as sizeCSS } from './variations/_size/base';\nimport { ComboboxTarget } from './ui';\nimport { ComboboxItemNotFound, StyledPopover, StyledRoot, StyledCombobox, StyledNativeSelect } from './Combobox.styles';\nimport type { ComboboxPrimitiveValue, ComboboxProps } from './Combobox.types';\n\n/**\n * Выпадающий список без внешнего контроля видимости.\n */\nexport const comboboxRoot = (Root: RootProps<HTMLInputElement, ComboboxProps>) =>\n forwardRef<HTMLInputElement, ComboboxProps>(\n (\n {\n name,\n form,\n readOnly,\n disabled,\n label,\n placeholder,\n id,\n children,\n role,\n view,\n size,\n frame,\n usePortal,\n negativeResultContent = 'Элементы не найдены',\n enumerationType = 'comma',\n opened = false,\n alwaysOpened = false,\n placement = 'bottom',\n onToggle,\n onKeyDown,\n filterFunction,\n ...rest\n },\n outerRootRef,\n ) => {\n const forceUpdate = useForceUpdate();\n const uniqId = safeUseId();\n const innerId = id || uniqId;\n const { valueType = 'single', value } = rest;\n const offset = [0, 4] as [number, number];\n\n const [ref, setRef] = useState<HTMLInputElement | null>(null);\n\n const targetRef = useRef<HTMLInputElement>(null);\n const chipsRefs = useRef<Array<HTMLButtonElement>>([]);\n const comboboxRef = useRef<HTMLDivElement>(null);\n const itemsRefs = useRef<Array<HTMLDivElement>>([]);\n const inputRef = useRef<HTMLInputElement>(null);\n const handleRef = useForkRef<HTMLInputElement>(targetRef, outerRootRef);\n const controlledRefs = { targetRef, chipsRefs, selectRef: comboboxRef, itemsRefs, inputRef };\n\n const [isVisible, setIsVisible] = useState(alwaysOpened || opened);\n const [search, setSearch] = useState<string | undefined>('');\n const [filterValue, setFilterValue] = useState(search);\n\n // INFO: нужно высчитывать для корректной работы портала\n const dynamicTargetWidth = targetRef.current?.offsetWidth;\n\n // INFO: Из-за того, что классы передаются через ref,\n // состояние пропсов после изменения view, size\n // всегда предыдущее, поэтому нужно делать форс-ререндер\n useDidMountEffect(() => {\n forceUpdate();\n }, [view, size]);\n\n useEffect(() => {\n if (disabled || readOnly) {\n return;\n }\n\n setIsVisible(alwaysOpened || opened);\n }, [opened, alwaysOpened, disabled, readOnly]);\n\n useEffect(() => {\n // INFO: Для кейсов, когда значение выбрано и нужно вывести весь список\n if (alwaysOpened || opened) {\n setFilterValue('');\n }\n }, []);\n\n const onInnerToggle = (openValue: boolean, event: React.SyntheticEvent | Event) => {\n if (disabled || readOnly) {\n return;\n }\n\n // INFO: Для кейсов, когда значение выбрано и нужно вывести весь список\n if (!isVisible) {\n setFilterValue('');\n }\n\n if (onToggle) {\n onToggle(alwaysOpened || openValue, event);\n\n return;\n }\n\n setIsVisible(alwaysOpened || openValue);\n };\n\n const closedWithoutChanges = useRef(true);\n\n const updateValue = (item: HTMLElement, event: React.SyntheticEvent | Event) => {\n const {\n dataset: { value: newValue },\n } = item;\n\n if (rest.valueType === 'multiple') {\n const newSelected = getNewSelected(rest.value, newValue, rest.valueType);\n rest.onChangeValue?.(newSelected);\n\n return;\n }\n\n const newSelected = getNewSelected(rest.value, newValue, 'single');\n\n rest.onChangeValue?.(newSelected);\n\n onInnerToggle?.(alwaysOpened || false, event);\n\n closedWithoutChanges.current = false;\n };\n\n const onClickChildrenItem = (event: React.MouseEvent<HTMLDivElement>) => {\n // INFO: Для корректной работы компонента Popper\n event.stopPropagation();\n\n const item = event.currentTarget as HTMLElement;\n\n updateValue(item, event);\n };\n\n const onChangeChipValue = (newValue?: Array<ComboboxPrimitiveValue>) => {\n if (rest.valueType !== 'multiple') {\n return;\n }\n\n rest.onChangeValue?.(newValue);\n };\n\n const { onKeyDownTarget, onKeyDownSelect } = useKeyNavigation({\n controlledRefs,\n opened: isVisible,\n enumerationType,\n valueType,\n componentType: 'combobox',\n value,\n search: filterValue,\n updateOpened: onInnerToggle,\n updateValue,\n });\n\n const childrenArray = Children.toArray(children) as React.ReactElement[];\n\n const childrenMemo = getChildren(\n childrenArray,\n { onClick: onClickChildrenItem, childrenRefs: itemsRefs },\n value,\n filterValue,\n filterFunction,\n ).filter(Boolean);\n\n const values = getValues(childrenArray, value);\n\n const onSearch = (newSearch?: string, newOpened?: boolean) => {\n setSearch(newSearch);\n setFilterValue(newSearch);\n setIsVisible(newOpened ?? true);\n };\n\n const onKeyDownHandle = (event: React.KeyboardEvent<HTMLInputElement>) => {\n onKeyDown?.(event);\n onKeyDownTarget(event);\n };\n\n useEffect(() => {\n if (alwaysOpened && rest.valueType === 'single') {\n setSearch(String(value));\n }\n }, [value, alwaysOpened]);\n\n return (\n <StyledRoot ref={comboboxRef}>\n <StyledNativeSelect\n aria-invalid=\"false\"\n aria-hidden=\"true\"\n aria-readonly={readOnly}\n tabIndex={-1}\n form={form}\n name={name}\n value={`${value}`}\n disabled={disabled || readOnly}\n />\n <StyledPopover\n role={role}\n opened={isVisible}\n onToggle={onInnerToggle}\n target={\n <ComboboxTarget\n opened={isVisible}\n values={values}\n label={label}\n placeholder={placeholder}\n search={search}\n enumerationType={enumerationType}\n valueType={valueType}\n readOnly={readOnly}\n disabled={disabled}\n size={size}\n closedWithoutChanges={closedWithoutChanges}\n ref={handleRef}\n chipsRefs={chipsRefs}\n inputRef={inputRef}\n id={innerId}\n onChange={onChangeChipValue}\n onSearch={onSearch}\n onKeyDown={onKeyDownHandle}\n {...rest}\n />\n }\n className={cx(ref?.classList.toString())} // INFO: Прокидываем стили для Popover\n id={innerId}\n offset={offset}\n placement={getPlacements(placement)}\n usePortal={usePortal}\n selectWidth={dynamicTargetWidth}\n frame={frame}\n trigger=\"click\"\n isFocusTrapped={false}\n preventOverflow={false}\n closeOnEsc={false}\n closeOnOverlayClick\n >\n <Root ref={setRef} view={view} size={size}>\n <StyledCombobox onKeyDown={onKeyDownSelect}>\n {childrenMemo.length ? (\n childrenMemo\n ) : (\n <ComboboxItemNotFound>{negativeResultContent}</ComboboxItemNotFound>\n )}\n </StyledCombobox>\n </Root>\n </StyledPopover>\n </StyledRoot>\n );\n },\n );\n\nexport const comboboxConfig = {\n name: 'Combobox',\n tag: 'div',\n layout: comboboxRoot,\n base: '',\n variations: {\n view: {\n css: viewCSS,\n },\n size: {\n css: sizeCSS,\n },\n },\n defaults: {\n view: 'default',\n size: 'm',\n },\n};\n"],"names":["comboboxRoot","Root","forwardRef","_ref","outerRootRef","_targetRef$current","name","form","readOnly","disabled","label","placeholder","id","children","role","view","size","frame","usePortal","_ref$negativeResultCo","negativeResultContent","_ref$enumerationType","enumerationType","_ref$opened","opened","_ref$alwaysOpened","alwaysOpened","_ref$placement","placement","onToggle","onKeyDown","filterFunction","rest","_objectWithoutProperties","_excluded","forceUpdate","useForceUpdate","uniqId","safeUseId","innerId","_rest$valueType","valueType","value","offset","_useState","useState","_useState2","_slicedToArray","ref","setRef","targetRef","useRef","chipsRefs","comboboxRef","itemsRefs","inputRef","handleRef","useForkRef","controlledRefs","selectRef","_useState3","_useState4","isVisible","setIsVisible","_useState5","_useState6","search","setSearch","_useState7","_useState8","filterValue","setFilterValue","dynamicTargetWidth","current","offsetWidth","useDidMountEffect","useEffect","onInnerToggle","openValue","event","closedWithoutChanges","updateValue","item","_rest$onChangeValue2","newValue","dataset","_rest$onChangeValue","newSelected","getNewSelected","onChangeValue","call","onClickChildrenItem","stopPropagation","currentTarget","onChangeChipValue","_rest$onChangeValue3","_useKeyNavigation","useKeyNavigation","componentType","updateOpened","onKeyDownTarget","onKeyDownSelect","childrenArray","Children","toArray","childrenMemo","getChildren","onClick","childrenRefs","filter","Boolean","values","getValues","onSearch","newSearch","newOpened","onKeyDownHandle","String","React","createElement","StyledRoot","StyledNativeSelect","tabIndex","concat","StyledPopover","target","ComboboxTarget","_extends","onChange","className","cx","classList","toString","getPlacements","selectWidth","trigger","isFocusTrapped","preventOverflow","closeOnEsc","closeOnOverlayClick","StyledCombobox","length","ComboboxItemNotFound","comboboxConfig","tag","layout","base","variations","css","viewCSS","sizeCSS","defaults"],"mappings":"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"}
@@ -4,13 +4,13 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var _rollupPluginBabelHelpers = require('../../../../../_virtual/_rollupPluginBabelHelpers.js');
6
6
  var React = require('react');
7
- var index$1 = require('../../../../../utils/index.js');
7
+ var plasmaCore = require('@salutejs/plasma-core');
8
8
  var Combobox_tokens = require('../../Combobox.tokens.js');
9
9
  var index = require('../../utils/index.js');
10
+ var index$1 = require('../../../../../utils/index.js');
10
11
  var base = require('./variations/_view/base.js');
11
12
  var base$1 = require('./variations/_size/base.js');
12
13
  var ComboboxItem_styles = require('./ComboboxItem.styles.js');
13
- var react = require('../../../../../utils/react.js');
14
14
 
15
15
  function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
16
16
 
@@ -38,7 +38,7 @@ var comboboxItemRoot = function comboboxItemRoot(Root) {
38
38
  onClick = _ref.onClick,
39
39
  onChange = _ref.onChange,
40
40
  rest = _rollupPluginBabelHelpers.objectWithoutProperties(_ref, _excluded);
41
- var uniqId = react.safeUseId();
41
+ var uniqId = plasmaCore.safeUseId();
42
42
  var innerId = id || uniqId;
43
43
  var withComboboxItemIsSelected = checked || isSelected ? Combobox_tokens.classes.comboboxItemIsSelected : undefined;
44
44
  var withComboboxItemIsDisabled = disabled ? Combobox_tokens.classes.comboboxItemIsDisabled : undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"ComboboxItem.js","sources":["../../../../../../src/components/Combobox/ComboboxOld/ui/ComboboxItem/ComboboxItem.tsx"],"sourcesContent":["import React, { forwardRef, useCallback, useMemo } from 'react';\nimport { safeUseId } from 'src/utils';\n\nimport type { RootProps } from '../../../../../engines';\nimport { classes } from '../../Combobox.tokens';\nimport { getValidComponent } from '../../utils';\nimport { cx } from '../../../../../utils';\n\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as sizeCSS } from './variations/_size/base';\nimport { StyledContentLeft, StyledContentRight, StyledText, base } from './ComboboxItem.styles';\nimport { ComboboxItemProps } from './ComboboxItem.type';\n\nexport const comboboxItemRoot = (Root: RootProps<HTMLDivElement, ComboboxItemProps>) =>\n forwardRef<HTMLDivElement, ComboboxItemProps>(\n (\n {\n id,\n className,\n children,\n text,\n isSelected,\n name,\n checked,\n value,\n view,\n size,\n disabled,\n role = 'option',\n contentLeft: ContentLeftComponent,\n contentRight: ContentRightComponent,\n onSelect,\n onClick,\n onChange,\n ...rest\n },\n outerRootRef,\n ) => {\n const uniqId = safeUseId();\n const innerId = id || uniqId;\n\n const withComboboxItemIsSelected = checked || isSelected ? classes.comboboxItemIsSelected : undefined;\n const withComboboxItemIsDisabled = disabled ? classes.comboboxItemIsDisabled : undefined;\n\n const handleOnClick = useCallback(\n (event: React.MouseEvent<HTMLDivElement>) => {\n if (disabled) {\n return;\n }\n\n onClick?.(event);\n\n if (onSelect && !ContentLeftComponent) {\n onSelect(value, text);\n }\n },\n [onSelect, disabled],\n );\n\n const handleOnChange = useCallback(\n (event: React.MouseEvent<HTMLInputElement>) => {\n if (disabled) {\n return;\n }\n\n onChange?.(event);\n\n if (onSelect && ContentLeftComponent) {\n onSelect(value, text);\n }\n },\n [onSelect, disabled],\n );\n\n const contentProps = {\n name,\n value,\n checked: checked || isSelected,\n disabled,\n tabIndex: -1,\n ...(!disabled && { onChange: handleOnChange }),\n };\n\n const ContentLeft = useMemo(() => getValidComponent(ContentLeftComponent, contentProps), [\n ContentRightComponent,\n contentProps,\n ]);\n\n const ContentRight = useMemo(() => getValidComponent(ContentRightComponent, contentProps), [\n ContentRightComponent,\n contentProps,\n ]);\n\n return (\n <Root\n className={cx(withComboboxItemIsSelected, withComboboxItemIsDisabled, className)}\n view={view}\n size={size}\n id={innerId}\n isSelected={isSelected}\n role={role}\n ref={outerRootRef}\n tabIndex={0}\n aria-disabled={disabled}\n aria-selected={isSelected}\n onClick={handleOnClick}\n data-value={value}\n {...rest}\n >\n {text ? (\n <>\n <StyledContentLeft>{ContentLeftComponent && ContentLeft}</StyledContentLeft>\n <StyledText>{text}</StyledText>\n <StyledContentRight>{ContentRightComponent && ContentRight}</StyledContentRight>\n </>\n ) : (\n children\n )}\n </Root>\n );\n },\n );\n\nexport const comboboxItemConfig = {\n name: 'ComboboxItem',\n tag: 'div',\n layout: comboboxItemRoot,\n base,\n variations: {\n view: {\n css: viewCSS,\n },\n size: {\n css: sizeCSS,\n },\n },\n defaults: {\n view: 'primary',\n size: 'm',\n },\n};\n"],"names":["comboboxItemRoot","Root","forwardRef","_ref","outerRootRef","id","className","children","text","isSelected","name","checked","value","view","size","disabled","_ref$role","role","ContentLeftComponent","contentLeft","ContentRightComponent","contentRight","onSelect","onClick","onChange","rest","_objectWithoutProperties","_excluded","uniqId","safeUseId","innerId","withComboboxItemIsSelected","classes","comboboxItemIsSelected","undefined","withComboboxItemIsDisabled","comboboxItemIsDisabled","handleOnClick","useCallback","event","handleOnChange","contentProps","_objectSpread","tabIndex","ContentLeft","useMemo","getValidComponent","ContentRight","React","createElement","_extends","cx","ref","Fragment","StyledContentLeft","StyledText","StyledContentRight","comboboxItemConfig","tag","layout","base","variations","css","viewCSS","sizeCSS","defaults"],"mappings":"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"}
1
+ {"version":3,"file":"ComboboxItem.js","sources":["../../../../../../src/components/Combobox/ComboboxOld/ui/ComboboxItem/ComboboxItem.tsx"],"sourcesContent":["import React, { forwardRef, useCallback, useMemo } from 'react';\nimport { safeUseId } from '@salutejs/plasma-core';\n\nimport type { RootProps } from '../../../../../engines';\nimport { classes } from '../../Combobox.tokens';\nimport { getValidComponent } from '../../utils';\nimport { cx } from '../../../../../utils';\n\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as sizeCSS } from './variations/_size/base';\nimport { StyledContentLeft, StyledContentRight, StyledText, base } from './ComboboxItem.styles';\nimport { ComboboxItemProps } from './ComboboxItem.type';\n\nexport const comboboxItemRoot = (Root: RootProps<HTMLDivElement, ComboboxItemProps>) =>\n forwardRef<HTMLDivElement, ComboboxItemProps>(\n (\n {\n id,\n className,\n children,\n text,\n isSelected,\n name,\n checked,\n value,\n view,\n size,\n disabled,\n role = 'option',\n contentLeft: ContentLeftComponent,\n contentRight: ContentRightComponent,\n onSelect,\n onClick,\n onChange,\n ...rest\n },\n outerRootRef,\n ) => {\n const uniqId = safeUseId();\n const innerId = id || uniqId;\n\n const withComboboxItemIsSelected = checked || isSelected ? classes.comboboxItemIsSelected : undefined;\n const withComboboxItemIsDisabled = disabled ? classes.comboboxItemIsDisabled : undefined;\n\n const handleOnClick = useCallback(\n (event: React.MouseEvent<HTMLDivElement>) => {\n if (disabled) {\n return;\n }\n\n onClick?.(event);\n\n if (onSelect && !ContentLeftComponent) {\n onSelect(value, text);\n }\n },\n [onSelect, disabled],\n );\n\n const handleOnChange = useCallback(\n (event: React.MouseEvent<HTMLInputElement>) => {\n if (disabled) {\n return;\n }\n\n onChange?.(event);\n\n if (onSelect && ContentLeftComponent) {\n onSelect(value, text);\n }\n },\n [onSelect, disabled],\n );\n\n const contentProps = {\n name,\n value,\n checked: checked || isSelected,\n disabled,\n tabIndex: -1,\n ...(!disabled && { onChange: handleOnChange }),\n };\n\n const ContentLeft = useMemo(() => getValidComponent(ContentLeftComponent, contentProps), [\n ContentRightComponent,\n contentProps,\n ]);\n\n const ContentRight = useMemo(() => getValidComponent(ContentRightComponent, contentProps), [\n ContentRightComponent,\n contentProps,\n ]);\n\n return (\n <Root\n className={cx(withComboboxItemIsSelected, withComboboxItemIsDisabled, className)}\n view={view}\n size={size}\n id={innerId}\n isSelected={isSelected}\n role={role}\n ref={outerRootRef}\n tabIndex={0}\n aria-disabled={disabled}\n aria-selected={isSelected}\n onClick={handleOnClick}\n data-value={value}\n {...rest}\n >\n {text ? (\n <>\n <StyledContentLeft>{ContentLeftComponent && ContentLeft}</StyledContentLeft>\n <StyledText>{text}</StyledText>\n <StyledContentRight>{ContentRightComponent && ContentRight}</StyledContentRight>\n </>\n ) : (\n children\n )}\n </Root>\n );\n },\n );\n\nexport const comboboxItemConfig = {\n name: 'ComboboxItem',\n tag: 'div',\n layout: comboboxItemRoot,\n base,\n variations: {\n view: {\n css: viewCSS,\n },\n size: {\n css: sizeCSS,\n },\n },\n defaults: {\n view: 'primary',\n size: 'm',\n },\n};\n"],"names":["comboboxItemRoot","Root","forwardRef","_ref","outerRootRef","id","className","children","text","isSelected","name","checked","value","view","size","disabled","_ref$role","role","ContentLeftComponent","contentLeft","ContentRightComponent","contentRight","onSelect","onClick","onChange","rest","_objectWithoutProperties","_excluded","uniqId","safeUseId","innerId","withComboboxItemIsSelected","classes","comboboxItemIsSelected","undefined","withComboboxItemIsDisabled","comboboxItemIsDisabled","handleOnClick","useCallback","event","handleOnChange","contentProps","_objectSpread","tabIndex","ContentLeft","useMemo","getValidComponent","ContentRight","React","createElement","_extends","cx","ref","Fragment","StyledContentLeft","StyledText","StyledContentRight","comboboxItemConfig","tag","layout","base","variations","css","viewCSS","sizeCSS","defaults"],"mappings":"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"}
@@ -4,6 +4,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var _rollupPluginBabelHelpers = require('../../_virtual/_rollupPluginBabelHelpers.js');
6
6
  var React = require('react');
7
+ var plasmaCore = require('@salutejs/plasma-core');
7
8
  var index$1 = require('../../utils/index.js');
8
9
  var pathReducer = require('./reducers/pathReducer.js');
9
10
  var focusedPathReducer = require('./reducers/focusedPathReducer.js');
@@ -17,7 +18,6 @@ var useHashMaps = require('./hooks/useHashMaps.js');
17
18
  var FloatingPopover = require('./FloatingPopover.js');
18
19
  var Dropdown_context = require('./Dropdown.context.js');
19
20
  var getItemByFocused = require('./utils/getItemByFocused.js');
20
- var react = require('../../utils/react.js');
21
21
  var useOutsideClick = require('../../hooks/useOutsideClick.js');
22
22
  var getPlacement = require('./utils/getPlacement.js');
23
23
  var getItemId = require('./utils/getItemId.js');
@@ -87,7 +87,7 @@ var dropdownRoot = function dropdownRoot(Root) {
87
87
  focusedToValueMap = _useHashMaps2[1];
88
88
  var activeDescendantItemValue = ((_getItemByFocused = getItemByFocused.getItemByFocused(focusedPath, focusedToValueMap)) === null || _getItemByFocused === void 0 ? void 0 : _getItemByFocused.value) || '';
89
89
  var floatingPopoverRef = React.useRef(null);
90
- var treeId = react.safeUseId();
90
+ var treeId = plasmaCore.safeUseId();
91
91
 
92
92
  // Логика работы при клике за пределами выпадающего списка
93
93
  var targetRef = useOutsideClick.useOutsideClick(function (event) {
@@ -1 +1 @@
1
- {"version":3,"file":"Dropdown.js","sources":["../../../src/components/Dropdown/Dropdown.tsx"],"sourcesContent":["import React, { forwardRef, useCallback, useReducer, useRef } from 'react';\nimport { safeUseId } from 'src/utils';\n\nimport { RootProps } from '../../engines';\nimport { cx } from '../../utils';\nimport { useOutsideClick } from '../../hooks';\n\nimport { pathReducer } from './reducers/pathReducer';\nimport { focusedPathReducer } from './reducers/focusedPathReducer';\nimport { DropdownInner } from './ui';\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as sizeCSS } from './variations/_size/base';\nimport { Ul, base, ListWrapper } from './Dropdown.styles';\nimport { childrenWithProps, getItemByFocused, getItemId, getPlacement } from './utils';\nimport type { DropdownProps, HandleGlobalToggleType } from './Dropdown.types';\nimport { classes } from './Dropdown.tokens';\nimport { useKeyNavigation } from './hooks/useKeyboardNavigation';\nimport { useHashMaps } from './hooks/useHashMaps';\nimport { FloatingPopover } from './FloatingPopover';\nimport { Context } from './Dropdown.context';\n\n/**\n * Выпадающий список.\n */\nexport const dropdownRoot = (Root: RootProps<HTMLDivElement, Omit<DropdownProps, 'items'>>) =>\n forwardRef<HTMLDivElement, DropdownProps>(\n (\n {\n items,\n children,\n placement,\n offset,\n closeOnOverlayClick = true,\n onToggle,\n size,\n view,\n itemRole = 'treeitem',\n className,\n listMaxHeight,\n listWidth,\n listHeight,\n listOverflow,\n closeOnSelect = true,\n onHover,\n onItemSelect,\n onItemClick,\n trigger = 'click',\n openByRightClick = false,\n variant = 'normal',\n hasArrow = true,\n alwaysOpened = false,\n portal,\n renderItem,\n zIndex,\n beforeList,\n afterList,\n ...rest\n },\n ref,\n ) => {\n const [path, dispatchPath] = useReducer(pathReducer, []);\n const [focusedPath, dispatchFocusedPath] = useReducer(focusedPathReducer, []);\n\n const isCurrentListOpen = alwaysOpened || Boolean(path[0]);\n\n const [pathMap, focusedToValueMap] = useHashMaps(items);\n\n const activeDescendantItemValue = getItemByFocused(focusedPath, focusedToValueMap)?.value || '';\n\n const floatingPopoverRef = useRef<HTMLDivElement>(null);\n\n const treeId = safeUseId();\n\n // Логика работы при клике за пределами выпадающего списка\n const targetRef = useOutsideClick<HTMLUListElement>((event) => {\n if (!isCurrentListOpen || !closeOnOverlayClick || alwaysOpened) {\n return;\n }\n\n dispatchPath({ type: 'reset' });\n dispatchFocusedPath({ type: 'reset' });\n\n if (onToggle) {\n onToggle(false, event);\n }\n }, floatingPopoverRef);\n\n const handleGlobalToggle: HandleGlobalToggleType = (opened, event) => {\n if (alwaysOpened || opened) {\n dispatchPath({ type: 'opened_first_level' });\n } else {\n dispatchFocusedPath({ type: 'reset' });\n dispatchPath({ type: 'reset' });\n }\n\n if (onToggle) {\n onToggle(opened, event);\n }\n };\n\n const onContextMenu = useCallback(\n (e: React.MouseEvent) => {\n e.preventDefault();\n\n if (alwaysOpened) {\n return;\n }\n\n handleGlobalToggle(!isCurrentListOpen, e);\n },\n [handleGlobalToggle, isCurrentListOpen, alwaysOpened],\n );\n\n const { onKeyDown } = useKeyNavigation({\n focusedPath,\n dispatchFocusedPath,\n path,\n dispatchPath,\n pathMap,\n focusedToValueMap,\n handleGlobalToggle,\n closeOnSelect,\n onItemSelect,\n onItemClick,\n });\n\n return (\n <Context.Provider\n value={{\n focusedPath,\n size,\n variant,\n itemRole,\n handleGlobalToggle,\n closeOnSelect,\n onHover,\n onItemClick,\n onItemSelect,\n hasArrow,\n treeId,\n renderItem,\n }}\n >\n <FloatingPopover\n ref={floatingPopoverRef}\n opened={isCurrentListOpen}\n onToggle={handleGlobalToggle}\n placement={getPlacement(placement)}\n offset={offset}\n portal={portal}\n trigger={trigger}\n target={childrenWithProps(children, {\n role: 'combobox',\n 'aria-controls': `${treeId}_tree_level_1`,\n 'aria-expanded': isCurrentListOpen,\n 'aria-activedescendant': activeDescendantItemValue\n ? getItemId(treeId, activeDescendantItemValue.toString())\n : '',\n onKeyDown,\n onContextMenu: openByRightClick ? onContextMenu : undefined,\n })}\n zIndex={zIndex}\n isInner={false}\n >\n <Root\n className={cx(className, classes.dropdownRoot)}\n ref={ref}\n view={view}\n size={size}\n style={{ display: 'inline-block' }}\n {...rest}\n >\n <ListWrapper listWidth={listWidth}>\n <Ul\n ref={targetRef}\n id={`${treeId}_tree_level_1`}\n role=\"tree\"\n listOverflow={listOverflow}\n listMaxHeight={listMaxHeight || listHeight}\n >\n {beforeList}\n\n {items.map((item, index) => (\n <DropdownInner\n key={`${index}/0`}\n item={item}\n currentLevel={0}\n trigger={trigger}\n path={path}\n dispatchPath={dispatchPath}\n index={index}\n listOverflow={listOverflow}\n listMaxHeight={listMaxHeight || listHeight}\n listWidth={listWidth}\n />\n ))}\n\n {afterList}\n </Ul>\n </ListWrapper>\n </Root>\n </FloatingPopover>\n </Context.Provider>\n );\n },\n );\n\nexport const dropdownConfig = {\n name: 'Dropdown',\n tag: 'div',\n layout: dropdownRoot,\n base,\n variations: {\n view: {\n css: viewCSS,\n },\n size: {\n css: sizeCSS,\n },\n },\n defaults: {\n view: 'default',\n size: 'm',\n },\n};\n"],"names":["dropdownRoot","Root","forwardRef","_ref","ref","_getItemByFocused","items","children","placement","offset","_ref$closeOnOverlayCl","closeOnOverlayClick","onToggle","size","view","_ref$itemRole","itemRole","className","listMaxHeight","listWidth","listHeight","listOverflow","_ref$closeOnSelect","closeOnSelect","onHover","onItemSelect","onItemClick","_ref$trigger","trigger","_ref$openByRightClick","openByRightClick","_ref$variant","variant","_ref$hasArrow","hasArrow","_ref$alwaysOpened","alwaysOpened","portal","renderItem","zIndex","beforeList","afterList","rest","_objectWithoutProperties","_excluded","_useReducer","useReducer","pathReducer","_useReducer2","_slicedToArray","path","dispatchPath","_useReducer3","focusedPathReducer","_useReducer4","focusedPath","dispatchFocusedPath","isCurrentListOpen","Boolean","_useHashMaps","useHashMaps","_useHashMaps2","pathMap","focusedToValueMap","activeDescendantItemValue","getItemByFocused","value","floatingPopoverRef","useRef","treeId","safeUseId","targetRef","useOutsideClick","event","type","handleGlobalToggle","opened","onContextMenu","useCallback","e","preventDefault","_useKeyNavigation","useKeyNavigation","onKeyDown","React","createElement","Context","Provider","FloatingPopover","getPlacement","target","childrenWithProps","role","concat","getItemId","toString","undefined","isInner","_extends","cx","classes","style","display","ListWrapper","Ul","id","map","item","index","DropdownInner","key","currentLevel","dropdownConfig","name","tag","layout","base","variations","css","viewCSS","sizeCSS","defaults"],"mappings":"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"}
1
+ {"version":3,"file":"Dropdown.js","sources":["../../../src/components/Dropdown/Dropdown.tsx"],"sourcesContent":["import React, { forwardRef, useCallback, useReducer, useRef } from 'react';\nimport { safeUseId } from '@salutejs/plasma-core';\n\nimport { RootProps } from '../../engines';\nimport { cx } from '../../utils';\nimport { useOutsideClick } from '../../hooks';\n\nimport { pathReducer } from './reducers/pathReducer';\nimport { focusedPathReducer } from './reducers/focusedPathReducer';\nimport { DropdownInner } from './ui';\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as sizeCSS } from './variations/_size/base';\nimport { Ul, base, ListWrapper } from './Dropdown.styles';\nimport { childrenWithProps, getItemByFocused, getItemId, getPlacement } from './utils';\nimport type { DropdownProps, HandleGlobalToggleType } from './Dropdown.types';\nimport { classes } from './Dropdown.tokens';\nimport { useKeyNavigation } from './hooks/useKeyboardNavigation';\nimport { useHashMaps } from './hooks/useHashMaps';\nimport { FloatingPopover } from './FloatingPopover';\nimport { Context } from './Dropdown.context';\n\n/**\n * Выпадающий список.\n */\nexport const dropdownRoot = (Root: RootProps<HTMLDivElement, Omit<DropdownProps, 'items'>>) =>\n forwardRef<HTMLDivElement, DropdownProps>(\n (\n {\n items,\n children,\n placement,\n offset,\n closeOnOverlayClick = true,\n onToggle,\n size,\n view,\n itemRole = 'treeitem',\n className,\n listMaxHeight,\n listWidth,\n listHeight,\n listOverflow,\n closeOnSelect = true,\n onHover,\n onItemSelect,\n onItemClick,\n trigger = 'click',\n openByRightClick = false,\n variant = 'normal',\n hasArrow = true,\n alwaysOpened = false,\n portal,\n renderItem,\n zIndex,\n beforeList,\n afterList,\n ...rest\n },\n ref,\n ) => {\n const [path, dispatchPath] = useReducer(pathReducer, []);\n const [focusedPath, dispatchFocusedPath] = useReducer(focusedPathReducer, []);\n\n const isCurrentListOpen = alwaysOpened || Boolean(path[0]);\n\n const [pathMap, focusedToValueMap] = useHashMaps(items);\n\n const activeDescendantItemValue = getItemByFocused(focusedPath, focusedToValueMap)?.value || '';\n\n const floatingPopoverRef = useRef<HTMLDivElement>(null);\n\n const treeId = safeUseId();\n\n // Логика работы при клике за пределами выпадающего списка\n const targetRef = useOutsideClick<HTMLUListElement>((event) => {\n if (!isCurrentListOpen || !closeOnOverlayClick || alwaysOpened) {\n return;\n }\n\n dispatchPath({ type: 'reset' });\n dispatchFocusedPath({ type: 'reset' });\n\n if (onToggle) {\n onToggle(false, event);\n }\n }, floatingPopoverRef);\n\n const handleGlobalToggle: HandleGlobalToggleType = (opened, event) => {\n if (alwaysOpened || opened) {\n dispatchPath({ type: 'opened_first_level' });\n } else {\n dispatchFocusedPath({ type: 'reset' });\n dispatchPath({ type: 'reset' });\n }\n\n if (onToggle) {\n onToggle(opened, event);\n }\n };\n\n const onContextMenu = useCallback(\n (e: React.MouseEvent) => {\n e.preventDefault();\n\n if (alwaysOpened) {\n return;\n }\n\n handleGlobalToggle(!isCurrentListOpen, e);\n },\n [handleGlobalToggle, isCurrentListOpen, alwaysOpened],\n );\n\n const { onKeyDown } = useKeyNavigation({\n focusedPath,\n dispatchFocusedPath,\n path,\n dispatchPath,\n pathMap,\n focusedToValueMap,\n handleGlobalToggle,\n closeOnSelect,\n onItemSelect,\n onItemClick,\n });\n\n return (\n <Context.Provider\n value={{\n focusedPath,\n size,\n variant,\n itemRole,\n handleGlobalToggle,\n closeOnSelect,\n onHover,\n onItemClick,\n onItemSelect,\n hasArrow,\n treeId,\n renderItem,\n }}\n >\n <FloatingPopover\n ref={floatingPopoverRef}\n opened={isCurrentListOpen}\n onToggle={handleGlobalToggle}\n placement={getPlacement(placement)}\n offset={offset}\n portal={portal}\n trigger={trigger}\n target={childrenWithProps(children, {\n role: 'combobox',\n 'aria-controls': `${treeId}_tree_level_1`,\n 'aria-expanded': isCurrentListOpen,\n 'aria-activedescendant': activeDescendantItemValue\n ? getItemId(treeId, activeDescendantItemValue.toString())\n : '',\n onKeyDown,\n onContextMenu: openByRightClick ? onContextMenu : undefined,\n })}\n zIndex={zIndex}\n isInner={false}\n >\n <Root\n className={cx(className, classes.dropdownRoot)}\n ref={ref}\n view={view}\n size={size}\n style={{ display: 'inline-block' }}\n {...rest}\n >\n <ListWrapper listWidth={listWidth}>\n <Ul\n ref={targetRef}\n id={`${treeId}_tree_level_1`}\n role=\"tree\"\n listOverflow={listOverflow}\n listMaxHeight={listMaxHeight || listHeight}\n >\n {beforeList}\n\n {items.map((item, index) => (\n <DropdownInner\n key={`${index}/0`}\n item={item}\n currentLevel={0}\n trigger={trigger}\n path={path}\n dispatchPath={dispatchPath}\n index={index}\n listOverflow={listOverflow}\n listMaxHeight={listMaxHeight || listHeight}\n listWidth={listWidth}\n />\n ))}\n\n {afterList}\n </Ul>\n </ListWrapper>\n </Root>\n </FloatingPopover>\n </Context.Provider>\n );\n },\n );\n\nexport const dropdownConfig = {\n name: 'Dropdown',\n tag: 'div',\n layout: dropdownRoot,\n base,\n variations: {\n view: {\n css: viewCSS,\n },\n size: {\n css: sizeCSS,\n },\n },\n defaults: {\n view: 'default',\n size: 'm',\n },\n};\n"],"names":["dropdownRoot","Root","forwardRef","_ref","ref","_getItemByFocused","items","children","placement","offset","_ref$closeOnOverlayCl","closeOnOverlayClick","onToggle","size","view","_ref$itemRole","itemRole","className","listMaxHeight","listWidth","listHeight","listOverflow","_ref$closeOnSelect","closeOnSelect","onHover","onItemSelect","onItemClick","_ref$trigger","trigger","_ref$openByRightClick","openByRightClick","_ref$variant","variant","_ref$hasArrow","hasArrow","_ref$alwaysOpened","alwaysOpened","portal","renderItem","zIndex","beforeList","afterList","rest","_objectWithoutProperties","_excluded","_useReducer","useReducer","pathReducer","_useReducer2","_slicedToArray","path","dispatchPath","_useReducer3","focusedPathReducer","_useReducer4","focusedPath","dispatchFocusedPath","isCurrentListOpen","Boolean","_useHashMaps","useHashMaps","_useHashMaps2","pathMap","focusedToValueMap","activeDescendantItemValue","getItemByFocused","value","floatingPopoverRef","useRef","treeId","safeUseId","targetRef","useOutsideClick","event","type","handleGlobalToggle","opened","onContextMenu","useCallback","e","preventDefault","_useKeyNavigation","useKeyNavigation","onKeyDown","React","createElement","Context","Provider","FloatingPopover","getPlacement","target","childrenWithProps","role","concat","getItemId","toString","undefined","isInner","_extends","cx","classes","style","display","ListWrapper","Ul","id","map","item","index","DropdownInner","key","currentLevel","dropdownConfig","name","tag","layout","base","variations","css","viewCSS","sizeCSS","defaults"],"mappings":"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"}
@@ -5,7 +5,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
  var _rollupPluginBabelHelpers = require('../../_virtual/_rollupPluginBabelHelpers.js');
6
6
  var react = require('@floating-ui/react');
7
7
  var React = require('react');
8
- var react$1 = require('../../utils/react.js');
8
+ var plasmaCore = require('@salutejs/plasma-core');
9
9
 
10
10
  function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
11
11
 
@@ -43,7 +43,7 @@ var FloatingPopover = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
43
43
  }),
44
44
  refs = _useFloating.refs,
45
45
  floatingStyles = _useFloating.floatingStyles;
46
- var wrappedId = react$1.safeUseId();
46
+ var wrappedId = plasmaCore.safeUseId();
47
47
  var handleTargetClick = function handleTargetClick(event) {
48
48
  if (trigger === 'hover') {
49
49
  return;
@@ -1 +1 @@
1
- {"version":3,"file":"FloatingPopover.js","sources":["../../../src/components/Dropdown/FloatingPopover.tsx"],"sourcesContent":["import {\n flip,\n shift,\n useFloating,\n FloatingPortal,\n offset as offsetMiddleware,\n autoPlacement,\n autoUpdate,\n} from '@floating-ui/react';\nimport React, { forwardRef, MouseEvent } from 'react';\nimport { safeUseId } from 'src/utils';\n\nimport { FloatingPopoverProps } from './Dropdown.types';\n\n// TODO: #2003\nconst LIST_PADDING = 2;\n\nconst FloatingPopover = forwardRef<HTMLDivElement, FloatingPopoverProps>(\n ({ target, children, opened, onToggle, placement, portal, offset, isInner, trigger, zIndex }, ref) => {\n const { refs, floatingStyles } = useFloating({\n whileElementsMounted(referenceEl, floatingEl, update) {\n return autoUpdate(referenceEl, floatingEl, update, {\n ancestorScroll: false,\n ancestorResize: false,\n layoutShift: false,\n });\n },\n placement: placement === 'auto' ? undefined : placement,\n open: opened,\n middleware: [\n placement === 'auto' && autoPlacement(),\n offsetMiddleware({\n mainAxis: offset?.[1] || (isInner ? LIST_PADDING * 2 : 0),\n crossAxis: offset?.[0] || (isInner ? -LIST_PADDING : 0),\n }),\n flip({ fallbackAxisSideDirection: 'end' }),\n shift(),\n ],\n });\n const wrappedId = safeUseId();\n\n const handleTargetClick = (event: MouseEvent<HTMLDivElement>) => {\n if (trigger === 'hover') {\n return;\n }\n\n if (onToggle) {\n onToggle(!opened, event);\n }\n };\n\n const handleTargetMouseEnter = (event: MouseEvent<HTMLDivElement>) => {\n if (trigger === 'click' || opened) {\n return;\n }\n\n onToggle(true, event);\n };\n\n const handleTargetMouseLeave = (event: MouseEvent<HTMLDivElement>) => {\n if (event.relatedTarget instanceof HTMLElement && refs.floating.current instanceof HTMLElement) {\n if (\n trigger === 'click' ||\n !opened ||\n (event.relatedTarget && refs.floating && refs.floating.current?.contains(event.relatedTarget))\n ) {\n return;\n }\n\n onToggle(false, event);\n }\n };\n\n const handleFloatingMouseLeave = (event: MouseEvent) => {\n if (event.relatedTarget instanceof HTMLElement && refs.reference.current instanceof HTMLElement) {\n if (\n trigger === 'click' ||\n !opened ||\n (event.relatedTarget && refs.reference && refs.reference.current?.contains(event.relatedTarget))\n ) {\n return;\n }\n\n onToggle(false, event);\n }\n };\n\n return (\n <div\n ref={ref}\n id={wrappedId}\n style={{\n position: 'relative',\n display: isInner ? 'block' : 'inline-block',\n }}\n >\n <div\n ref={refs.setReference}\n onClick={handleTargetClick}\n onMouseEnter={handleTargetMouseEnter}\n onMouseLeave={handleTargetMouseLeave}\n >\n {target}\n </div>\n\n {opened && (\n <FloatingPortal {...getFloatingPortalProps(portal, wrappedId)}>\n <div\n ref={refs.setFloating}\n onMouseLeave={handleFloatingMouseLeave}\n style={{\n ...floatingStyles,\n zIndex: zIndex || 1000,\n }}\n >\n {children}\n </div>\n </FloatingPortal>\n )}\n </div>\n );\n },\n);\n\ntype FloatingPortalReturnedProps = {\n root?: React.RefObject<HTMLElement>;\n id?: string;\n};\n\n// root - принимает ref контейнера портала.\n// id - если есть портал - не используется, если портала нет - подставляется 'wrappedId'.\nconst getFloatingPortalProps = (\n portal: FloatingPopoverProps['portal'],\n wrappedId: string,\n): FloatingPortalReturnedProps => {\n if (!portal) {\n return { id: wrappedId };\n }\n\n if (typeof portal === 'string') {\n return { id: portal };\n }\n\n return { root: portal };\n};\n\nexport { FloatingPopover };\n"],"names":["LIST_PADDING","FloatingPopover","forwardRef","_ref","ref","target","children","opened","onToggle","placement","portal","offset","isInner","trigger","zIndex","_useFloating","useFloating","whileElementsMounted","referenceEl","floatingEl","update","autoUpdate","ancestorScroll","ancestorResize","layoutShift","undefined","open","middleware","autoPlacement","offsetMiddleware","mainAxis","crossAxis","flip","fallbackAxisSideDirection","shift","refs","floatingStyles","wrappedId","safeUseId","handleTargetClick","event","handleTargetMouseEnter","handleTargetMouseLeave","relatedTarget","HTMLElement","floating","current","_refs$floating$curren","contains","handleFloatingMouseLeave","reference","_refs$reference$curre","React","createElement","id","style","position","display","setReference","onClick","onMouseEnter","onMouseLeave","FloatingPortal","getFloatingPortalProps","setFloating","_objectSpread","root"],"mappings":"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"}
1
+ {"version":3,"file":"FloatingPopover.js","sources":["../../../src/components/Dropdown/FloatingPopover.tsx"],"sourcesContent":["import {\n flip,\n shift,\n useFloating,\n FloatingPortal,\n offset as offsetMiddleware,\n autoPlacement,\n autoUpdate,\n} from '@floating-ui/react';\nimport React, { forwardRef, MouseEvent } from 'react';\nimport { safeUseId } from '@salutejs/plasma-core';\n\nimport { FloatingPopoverProps } from './Dropdown.types';\n\n// TODO: #2003\nconst LIST_PADDING = 2;\n\nconst FloatingPopover = forwardRef<HTMLDivElement, FloatingPopoverProps>(\n ({ target, children, opened, onToggle, placement, portal, offset, isInner, trigger, zIndex }, ref) => {\n const { refs, floatingStyles } = useFloating({\n whileElementsMounted(referenceEl, floatingEl, update) {\n return autoUpdate(referenceEl, floatingEl, update, {\n ancestorScroll: false,\n ancestorResize: false,\n layoutShift: false,\n });\n },\n placement: placement === 'auto' ? undefined : placement,\n open: opened,\n middleware: [\n placement === 'auto' && autoPlacement(),\n offsetMiddleware({\n mainAxis: offset?.[1] || (isInner ? LIST_PADDING * 2 : 0),\n crossAxis: offset?.[0] || (isInner ? -LIST_PADDING : 0),\n }),\n flip({ fallbackAxisSideDirection: 'end' }),\n shift(),\n ],\n });\n const wrappedId = safeUseId();\n\n const handleTargetClick = (event: MouseEvent<HTMLDivElement>) => {\n if (trigger === 'hover') {\n return;\n }\n\n if (onToggle) {\n onToggle(!opened, event);\n }\n };\n\n const handleTargetMouseEnter = (event: MouseEvent<HTMLDivElement>) => {\n if (trigger === 'click' || opened) {\n return;\n }\n\n onToggle(true, event);\n };\n\n const handleTargetMouseLeave = (event: MouseEvent<HTMLDivElement>) => {\n if (event.relatedTarget instanceof HTMLElement && refs.floating.current instanceof HTMLElement) {\n if (\n trigger === 'click' ||\n !opened ||\n (event.relatedTarget && refs.floating && refs.floating.current?.contains(event.relatedTarget))\n ) {\n return;\n }\n\n onToggle(false, event);\n }\n };\n\n const handleFloatingMouseLeave = (event: MouseEvent) => {\n if (event.relatedTarget instanceof HTMLElement && refs.reference.current instanceof HTMLElement) {\n if (\n trigger === 'click' ||\n !opened ||\n (event.relatedTarget && refs.reference && refs.reference.current?.contains(event.relatedTarget))\n ) {\n return;\n }\n\n onToggle(false, event);\n }\n };\n\n return (\n <div\n ref={ref}\n id={wrappedId}\n style={{\n position: 'relative',\n display: isInner ? 'block' : 'inline-block',\n }}\n >\n <div\n ref={refs.setReference}\n onClick={handleTargetClick}\n onMouseEnter={handleTargetMouseEnter}\n onMouseLeave={handleTargetMouseLeave}\n >\n {target}\n </div>\n\n {opened && (\n <FloatingPortal {...getFloatingPortalProps(portal, wrappedId)}>\n <div\n ref={refs.setFloating}\n onMouseLeave={handleFloatingMouseLeave}\n style={{\n ...floatingStyles,\n zIndex: zIndex || 1000,\n }}\n >\n {children}\n </div>\n </FloatingPortal>\n )}\n </div>\n );\n },\n);\n\ntype FloatingPortalReturnedProps = {\n root?: React.RefObject<HTMLElement>;\n id?: string;\n};\n\n// root - принимает ref контейнера портала.\n// id - если есть портал - не используется, если портала нет - подставляется 'wrappedId'.\nconst getFloatingPortalProps = (\n portal: FloatingPopoverProps['portal'],\n wrappedId: string,\n): FloatingPortalReturnedProps => {\n if (!portal) {\n return { id: wrappedId };\n }\n\n if (typeof portal === 'string') {\n return { id: portal };\n }\n\n return { root: portal };\n};\n\nexport { FloatingPopover };\n"],"names":["LIST_PADDING","FloatingPopover","forwardRef","_ref","ref","target","children","opened","onToggle","placement","portal","offset","isInner","trigger","zIndex","_useFloating","useFloating","whileElementsMounted","referenceEl","floatingEl","update","autoUpdate","ancestorScroll","ancestorResize","layoutShift","undefined","open","middleware","autoPlacement","offsetMiddleware","mainAxis","crossAxis","flip","fallbackAxisSideDirection","shift","refs","floatingStyles","wrappedId","safeUseId","handleTargetClick","event","handleTargetMouseEnter","handleTargetMouseLeave","relatedTarget","HTMLElement","floating","current","_refs$floating$curren","contains","handleFloatingMouseLeave","reference","_refs$reference$curre","React","createElement","id","style","position","display","setReference","onClick","onMouseEnter","onMouseLeave","FloatingPortal","getFloatingPortalProps","setFloating","_objectSpread","root"],"mappings":";;;;;;;;;;;;;AAcA;AACA,IAAMA,YAAY,GAAG,CAAC,CAAA;AAEhBC,IAAAA,eAAe,gBAAGC,gBAAU,CAC9B,UAAAC,IAAA,EAA8FC,GAAG,EAAK;AAAA,EAAA,IAAnGC,MAAM,GAAAF,IAAA,CAANE,MAAM;IAAEC,QAAQ,GAAAH,IAAA,CAARG,QAAQ;IAAEC,MAAM,GAAAJ,IAAA,CAANI,MAAM;IAAEC,QAAQ,GAAAL,IAAA,CAARK,QAAQ;IAAEC,SAAS,GAAAN,IAAA,CAATM,SAAS;IAAEC,MAAM,GAAAP,IAAA,CAANO,MAAM;IAAEC,MAAM,GAAAR,IAAA,CAANQ,MAAM;IAAEC,OAAO,GAAAT,IAAA,CAAPS,OAAO;IAAEC,OAAO,GAAAV,IAAA,CAAPU,OAAO;IAAEC,MAAM,GAAAX,IAAA,CAANW,MAAM,CAAA;EACtF,IAAAC,YAAA,GAAiCC,iBAAW,CAAC;AACzCC,MAAAA,oBAAoB,WAAAA,oBAACC,CAAAA,WAAW,EAAEC,UAAU,EAAEC,MAAM,EAAE;AAClD,QAAA,OAAOC,gBAAU,CAACH,WAAW,EAAEC,UAAU,EAAEC,MAAM,EAAE;AAC/CE,UAAAA,cAAc,EAAE,KAAK;AACrBC,UAAAA,cAAc,EAAE,KAAK;AACrBC,UAAAA,WAAW,EAAE,KAAA;AACjB,SAAC,CAAC,CAAA;OACL;AACDf,MAAAA,SAAS,EAAEA,SAAS,KAAK,MAAM,GAAGgB,SAAS,GAAGhB,SAAS;AACvDiB,MAAAA,IAAI,EAAEnB,MAAM;MACZoB,UAAU,EAAE,CACRlB,SAAS,KAAK,MAAM,IAAImB,mBAAa,EAAE,EACvCC,YAAgB,CAAC;AACbC,QAAAA,QAAQ,EAAE,CAAAnB,MAAM,aAANA,MAAM,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAANA,MAAM,CAAG,CAAC,CAAC,MAAKC,OAAO,GAAGZ,YAAY,GAAG,CAAC,GAAG,CAAC,CAAC;AACzD+B,QAAAA,SAAS,EAAE,CAAApB,MAAM,KAANA,IAAAA,IAAAA,MAAM,uBAANA,MAAM,CAAG,CAAC,CAAC,MAAKC,OAAO,GAAG,CAACZ,YAAY,GAAG,CAAC,CAAA;OACzD,CAAC,EACFgC,UAAI,CAAC;AAAEC,QAAAA,yBAAyB,EAAE,KAAA;AAAM,OAAC,CAAC,EAC1CC,WAAK,EAAE,CAAA;AAEf,KAAC,CAAC;IAnBMC,IAAI,GAAApB,YAAA,CAAJoB,IAAI;IAAEC,cAAc,GAAArB,YAAA,CAAdqB,cAAc,CAAA;AAoB5B,EAAA,IAAMC,SAAS,GAAGC,oBAAS,EAAE,CAAA;AAE7B,EAAA,IAAMC,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAIC,KAAiC,EAAK;IAC7D,IAAI3B,OAAO,KAAK,OAAO,EAAE;AACrB,MAAA,OAAA;AACJ,KAAA;AAEA,IAAA,IAAIL,QAAQ,EAAE;AACVA,MAAAA,QAAQ,CAAC,CAACD,MAAM,EAAEiC,KAAK,CAAC,CAAA;AAC5B,KAAA;GACH,CAAA;AAED,EAAA,IAAMC,sBAAsB,GAAG,SAAzBA,sBAAsBA,CAAID,KAAiC,EAAK;AAClE,IAAA,IAAI3B,OAAO,KAAK,OAAO,IAAIN,MAAM,EAAE;AAC/B,MAAA,OAAA;AACJ,KAAA;AAEAC,IAAAA,QAAQ,CAAC,IAAI,EAAEgC,KAAK,CAAC,CAAA;GACxB,CAAA;AAED,EAAA,IAAME,sBAAsB,GAAG,SAAzBA,sBAAsBA,CAAIF,KAAiC,EAAK;AAClE,IAAA,IAAIA,KAAK,CAACG,aAAa,YAAYC,WAAW,IAAIT,IAAI,CAACU,QAAQ,CAACC,OAAO,YAAYF,WAAW,EAAE;AAAA,MAAA,IAAAG,qBAAA,CAAA;AAC5F,MAAA,IACIlC,OAAO,KAAK,OAAO,IACnB,CAACN,MAAM,IACNiC,KAAK,CAACG,aAAa,IAAIR,IAAI,CAACU,QAAQ,IAAAE,CAAAA,qBAAA,GAAIZ,IAAI,CAACU,QAAQ,CAACC,OAAO,cAAAC,qBAAA,KAAA,KAAA,CAAA,IAArBA,qBAAA,CAAuBC,QAAQ,CAACR,KAAK,CAACG,aAAa,CAAE,EAChG;AACE,QAAA,OAAA;AACJ,OAAA;AAEAnC,MAAAA,QAAQ,CAAC,KAAK,EAAEgC,KAAK,CAAC,CAAA;AAC1B,KAAA;GACH,CAAA;AAED,EAAA,IAAMS,wBAAwB,GAAG,SAA3BA,wBAAwBA,CAAIT,KAAiB,EAAK;AACpD,IAAA,IAAIA,KAAK,CAACG,aAAa,YAAYC,WAAW,IAAIT,IAAI,CAACe,SAAS,CAACJ,OAAO,YAAYF,WAAW,EAAE;AAAA,MAAA,IAAAO,qBAAA,CAAA;AAC7F,MAAA,IACItC,OAAO,KAAK,OAAO,IACnB,CAACN,MAAM,IACNiC,KAAK,CAACG,aAAa,IAAIR,IAAI,CAACe,SAAS,IAAAC,CAAAA,qBAAA,GAAIhB,IAAI,CAACe,SAAS,CAACJ,OAAO,cAAAK,qBAAA,KAAA,KAAA,CAAA,IAAtBA,qBAAA,CAAwBH,QAAQ,CAACR,KAAK,CAACG,aAAa,CAAE,EAClG;AACE,QAAA,OAAA;AACJ,OAAA;AAEAnC,MAAAA,QAAQ,CAAC,KAAK,EAAEgC,KAAK,CAAC,CAAA;AAC1B,KAAA;GACH,CAAA;EAED,oBACIY,sBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AACIjD,IAAAA,GAAG,EAAEA,GAAI;AACTkD,IAAAA,EAAE,EAAEjB,SAAU;AACdkB,IAAAA,KAAK,EAAE;AACHC,MAAAA,QAAQ,EAAE,UAAU;AACpBC,MAAAA,OAAO,EAAE7C,OAAO,GAAG,OAAO,GAAG,cAAA;AACjC,KAAA;GAEAwC,eAAAA,sBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;IACIjD,GAAG,EAAE+B,IAAI,CAACuB,YAAa;AACvBC,IAAAA,OAAO,EAAEpB,iBAAkB;AAC3BqB,IAAAA,YAAY,EAAEnB,sBAAuB;AACrCoB,IAAAA,YAAY,EAAEnB,sBAAAA;GAEbrC,EAAAA,MACA,CAAC,EAELE,MAAM,iBACH6C,sBAAA,CAAAC,aAAA,CAACS,oBAAc,EAAKC,sBAAsB,CAACrD,MAAM,EAAE2B,SAAS,CAAC,eACzDe,sBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;IACIjD,GAAG,EAAE+B,IAAI,CAAC6B,WAAY;AACtBH,IAAAA,YAAY,EAAEZ,wBAAyB;AACvCM,IAAAA,KAAK,EAAAU,uCAAA,CAAAA,uCAAA,KACE7B,cAAc,CAAA,EAAA,EAAA,EAAA;MACjBtB,MAAM,EAAEA,MAAM,IAAI,IAAA;AAAI,KAAA,CAAA;GAGzBR,EAAAA,QACA,CACO,CAEnB,CAAC,CAAA;AAEd,CACJ,EAAC;AAOD;AACA;AACA,IAAMyD,sBAAsB,GAAG,SAAzBA,sBAAsBA,CACxBrD,MAAsC,EACtC2B,SAAiB,EACa;EAC9B,IAAI,CAAC3B,MAAM,EAAE;IACT,OAAO;AAAE4C,MAAAA,EAAE,EAAEjB,SAAAA;KAAW,CAAA;AAC5B,GAAA;AAEA,EAAA,IAAI,OAAO3B,MAAM,KAAK,QAAQ,EAAE;IAC5B,OAAO;AAAE4C,MAAAA,EAAE,EAAE5C,MAAAA;KAAQ,CAAA;AACzB,GAAA;EAEA,OAAO;AAAEwD,IAAAA,IAAI,EAAExD,MAAAA;GAAQ,CAAA;AAC3B,CAAC;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"DropdownDivider.js","sources":["../../../../../src/components/Dropdown/ui/DropdownDivider/DropdownDivider.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport { safeUseId } from 'src/utils';\nimport type { RootProps } from 'src/engines';\n\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as sizeCSS } from './variations/_size/base';\nimport { StyledDropdownDivider } from './DropdownDivider.styles';\nimport type { DropdownDividerProps } from './DropdownDivider.types';\n\n/**\n * Элемент выпадающего списка\n */\nexport const dropdownDividerRoot = (Root: RootProps<HTMLDivElement, DropdownDividerProps>) =>\n forwardRef<HTMLDivElement, DropdownDividerProps>(({ id, className, view, size, ...rest }, outerRootRef) => {\n const uniqId = safeUseId();\n const innerId = id || uniqId;\n\n return (\n <Root id={innerId} ref={outerRootRef} view={view} size={size}>\n <StyledDropdownDivider className={className} {...rest} />\n </Root>\n );\n });\n\nexport const dropdownDividerConfig = {\n name: 'DropdownDivider',\n tag: 'div',\n layout: dropdownDividerRoot,\n base: '',\n variations: {\n view: {\n css: viewCSS,\n },\n size: {\n css: sizeCSS,\n },\n },\n defaults: {\n view: 'primary',\n size: 'm',\n },\n};\n"],"names":["dropdownDividerRoot","Root","forwardRef","_ref","outerRootRef","id","className","view","size","rest","_objectWithoutProperties","_excluded","uniqId","safeUseId","innerId","React","createElement","ref","StyledDropdownDivider","_extends","dropdownDividerConfig","name","tag","layout","base","variations","css","viewCSS","sizeCSS","defaults"],"mappings":";;;;;;;;;;;;;;;;AASA;AACA;AACA;IACaA,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAIC,IAAqD,EAAA;AAAA,EAAA,oBACrFC,gBAAU,CAAuC,UAAAC,IAAA,EAAyCC,YAAY,EAAK;AAAA,IAAA,IAAvDC,EAAE,GAAAF,IAAA,CAAFE,EAAE;MAAEC,SAAS,GAAAH,IAAA,CAATG,SAAS;MAAEC,IAAI,GAAAJ,IAAA,CAAJI,IAAI;MAAEC,IAAI,GAAAL,IAAA,CAAJK,IAAI;AAAKC,MAAAA,IAAI,GAAAC,iDAAA,CAAAP,IAAA,EAAAQ,SAAA,CAAA,CAAA;AAClF,IAAA,IAAMC,MAAM,GAAGC,eAAS,EAAE,CAAA;AAC1B,IAAA,IAAMC,OAAO,GAAGT,EAAE,IAAIO,MAAM,CAAA;AAE5B,IAAA,oBACIG,sBAAA,CAAAC,aAAA,CAACf,IAAI,EAAA;AAACI,MAAAA,EAAE,EAAES,OAAQ;AAACG,MAAAA,GAAG,EAAEb,YAAa;AAACG,MAAAA,IAAI,EAAEA,IAAK;AAACC,MAAAA,IAAI,EAAEA,IAAAA;AAAK,KAAA,eACzDO,sBAAA,CAAAC,aAAA,CAACE,4CAAqB,EAAAC,iCAAA,CAAA;AAACb,MAAAA,SAAS,EAAEA,SAAAA;KAAeG,EAAAA,IAAI,CAAG,CACtD,CAAC,CAAA;AAEf,GAAC,CAAC,CAAA;AAAA,EAAA;AAEC,IAAMW,qBAAqB,GAAG;AACjCC,EAAAA,IAAI,EAAE,iBAAiB;AACvBC,EAAAA,GAAG,EAAE,KAAK;AACVC,EAAAA,MAAM,EAAEvB,mBAAmB;AAC3BwB,EAAAA,IAAI,EAAE,EAAE;AACRC,EAAAA,UAAU,EAAE;AACRlB,IAAAA,IAAI,EAAE;AACFmB,MAAAA,GAAG,EAAEC,SAAAA;KACR;AACDnB,IAAAA,IAAI,EAAE;AACFkB,MAAAA,GAAG,EAAEE,WAAAA;AACT,KAAA;GACH;AACDC,EAAAA,QAAQ,EAAE;AACNtB,IAAAA,IAAI,EAAE,SAAS;AACfC,IAAAA,IAAI,EAAE,GAAA;AACV,GAAA;AACJ;;;;;"}
1
+ {"version":3,"file":"DropdownDivider.js","sources":["../../../../../src/components/Dropdown/ui/DropdownDivider/DropdownDivider.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\n\nimport { RootProps } from '../../../../engines';\nimport { safeUseId } from '../../../../utils';\n\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as sizeCSS } from './variations/_size/base';\nimport { StyledDropdownDivider } from './DropdownDivider.styles';\nimport type { DropdownDividerProps } from './DropdownDivider.types';\n\n/**\n * Элемент выпадающего списка\n */\nexport const dropdownDividerRoot = (Root: RootProps<HTMLDivElement, DropdownDividerProps>) =>\n forwardRef<HTMLDivElement, DropdownDividerProps>(({ id, className, view, size, ...rest }, outerRootRef) => {\n const uniqId = safeUseId();\n const innerId = id || uniqId;\n\n return (\n <Root id={innerId} ref={outerRootRef} view={view} size={size}>\n <StyledDropdownDivider className={className} {...rest} />\n </Root>\n );\n });\n\nexport const dropdownDividerConfig = {\n name: 'DropdownDivider',\n tag: 'div',\n layout: dropdownDividerRoot,\n base: '',\n variations: {\n view: {\n css: viewCSS,\n },\n size: {\n css: sizeCSS,\n },\n },\n defaults: {\n view: 'primary',\n size: 'm',\n },\n};\n"],"names":["dropdownDividerRoot","Root","forwardRef","_ref","outerRootRef","id","className","view","size","rest","_objectWithoutProperties","_excluded","uniqId","safeUseId","innerId","React","createElement","ref","StyledDropdownDivider","_extends","dropdownDividerConfig","name","tag","layout","base","variations","css","viewCSS","sizeCSS","defaults"],"mappings":";;;;;;;;;;;;;;;;AAUA;AACA;AACA;IACaA,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAIC,IAAqD,EAAA;AAAA,EAAA,oBACrFC,gBAAU,CAAuC,UAAAC,IAAA,EAAyCC,YAAY,EAAK;AAAA,IAAA,IAAvDC,EAAE,GAAAF,IAAA,CAAFE,EAAE;MAAEC,SAAS,GAAAH,IAAA,CAATG,SAAS;MAAEC,IAAI,GAAAJ,IAAA,CAAJI,IAAI;MAAEC,IAAI,GAAAL,IAAA,CAAJK,IAAI;AAAKC,MAAAA,IAAI,GAAAC,iDAAA,CAAAP,IAAA,EAAAQ,SAAA,CAAA,CAAA;AAClF,IAAA,IAAMC,MAAM,GAAGC,eAAS,EAAE,CAAA;AAC1B,IAAA,IAAMC,OAAO,GAAGT,EAAE,IAAIO,MAAM,CAAA;AAE5B,IAAA,oBACIG,sBAAA,CAAAC,aAAA,CAACf,IAAI,EAAA;AAACI,MAAAA,EAAE,EAAES,OAAQ;AAACG,MAAAA,GAAG,EAAEb,YAAa;AAACG,MAAAA,IAAI,EAAEA,IAAK;AAACC,MAAAA,IAAI,EAAEA,IAAAA;AAAK,KAAA,eACzDO,sBAAA,CAAAC,aAAA,CAACE,4CAAqB,EAAAC,iCAAA,CAAA;AAACb,MAAAA,SAAS,EAAEA,SAAAA;KAAeG,EAAAA,IAAI,CAAG,CACtD,CAAC,CAAA;AAEf,GAAC,CAAC,CAAA;AAAA,EAAA;AAEC,IAAMW,qBAAqB,GAAG;AACjCC,EAAAA,IAAI,EAAE,iBAAiB;AACvBC,EAAAA,GAAG,EAAE,KAAK;AACVC,EAAAA,MAAM,EAAEvB,mBAAmB;AAC3BwB,EAAAA,IAAI,EAAE,EAAE;AACRC,EAAAA,UAAU,EAAE;AACRlB,IAAAA,IAAI,EAAE;AACFmB,MAAAA,GAAG,EAAEC,SAAAA;KACR;AACDnB,IAAAA,IAAI,EAAE;AACFkB,MAAAA,GAAG,EAAEE,WAAAA;AACT,KAAA;GACH;AACDC,EAAAA,QAAQ,EAAE;AACNtB,IAAAA,IAAI,EAAE,SAAS;AACfC,IAAAA,IAAI,EAAE,GAAA;AACV,GAAA;AACJ;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"DropdownFooter.js","sources":["../../../../../src/components/Dropdown/ui/DropdownFooter/DropdownFooter.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport { safeUseId } from 'src/utils';\nimport type { RootProps } from 'src/engines';\n\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as sizeCSS } from './variations/_size/base';\nimport { StyledDropdownFooter } from './DropdownFooter.styles';\nimport type { DropdownFooterProps } from './DropdownFooter.type';\n\n/**\n * Элемент выпадающего списка\n */\nexport const dropdownFooterRoot = (Root: RootProps<HTMLDivElement, DropdownFooterProps>) =>\n forwardRef<HTMLDivElement, DropdownFooterProps>(\n ({ id, className, children, view, size, ...rest }, outerRootRef) => {\n const uniqId = safeUseId();\n const innerId = id || uniqId;\n\n return (\n <Root id={innerId} ref={outerRootRef} view={view} size={size}>\n <StyledDropdownFooter className={className} {...rest}>\n {children}\n </StyledDropdownFooter>\n </Root>\n );\n },\n );\n\nexport const dropdownFooterConfig = {\n name: 'DropdownFooter',\n tag: 'div',\n layout: dropdownFooterRoot,\n base: '',\n variations: {\n view: {\n css: viewCSS,\n },\n size: {\n css: sizeCSS,\n },\n },\n defaults: {\n view: 'primary',\n size: 'm',\n },\n};\n"],"names":["dropdownFooterRoot","Root","forwardRef","_ref","outerRootRef","id","className","children","view","size","rest","_objectWithoutProperties","_excluded","uniqId","safeUseId","innerId","React","createElement","ref","StyledDropdownFooter","_extends","dropdownFooterConfig","name","tag","layout","base","variations","css","viewCSS","sizeCSS","defaults"],"mappings":";;;;;;;;;;;;;;;;AASA;AACA;AACA;IACaA,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAIC,IAAoD,EAAA;AAAA,EAAA,oBACnFC,gBAAU,CACN,UAAAC,IAAA,EAAmDC,YAAY,EAAK;AAAA,IAAA,IAAjEC,EAAE,GAAAF,IAAA,CAAFE,EAAE;MAAEC,SAAS,GAAAH,IAAA,CAATG,SAAS;MAAEC,QAAQ,GAAAJ,IAAA,CAARI,QAAQ;MAAEC,IAAI,GAAAL,IAAA,CAAJK,IAAI;MAAEC,IAAI,GAAAN,IAAA,CAAJM,IAAI;AAAKC,MAAAA,IAAI,GAAAC,iDAAA,CAAAR,IAAA,EAAAS,SAAA,CAAA,CAAA;AAC3C,IAAA,IAAMC,MAAM,GAAGC,eAAS,EAAE,CAAA;AAC1B,IAAA,IAAMC,OAAO,GAAGV,EAAE,IAAIQ,MAAM,CAAA;AAE5B,IAAA,oBACIG,sBAAA,CAAAC,aAAA,CAAChB,IAAI,EAAA;AAACI,MAAAA,EAAE,EAAEU,OAAQ;AAACG,MAAAA,GAAG,EAAEd,YAAa;AAACI,MAAAA,IAAI,EAAEA,IAAK;AAACC,MAAAA,IAAI,EAAEA,IAAAA;AAAK,KAAA,eACzDO,sBAAA,CAAAC,aAAA,CAACE,0CAAoB,EAAAC,iCAAA,CAAA;AAACd,MAAAA,SAAS,EAAEA,SAAAA;AAAU,KAAA,EAAKI,IAAI,CAAA,EAC/CH,QACiB,CACpB,CAAC,CAAA;AAEf,GACJ,CAAC,CAAA;AAAA,EAAA;AAEE,IAAMc,oBAAoB,GAAG;AAChCC,EAAAA,IAAI,EAAE,gBAAgB;AACtBC,EAAAA,GAAG,EAAE,KAAK;AACVC,EAAAA,MAAM,EAAExB,kBAAkB;AAC1ByB,EAAAA,IAAI,EAAE,EAAE;AACRC,EAAAA,UAAU,EAAE;AACRlB,IAAAA,IAAI,EAAE;AACFmB,MAAAA,GAAG,EAAEC,SAAAA;KACR;AACDnB,IAAAA,IAAI,EAAE;AACFkB,MAAAA,GAAG,EAAEE,WAAAA;AACT,KAAA;GACH;AACDC,EAAAA,QAAQ,EAAE;AACNtB,IAAAA,IAAI,EAAE,SAAS;AACfC,IAAAA,IAAI,EAAE,GAAA;AACV,GAAA;AACJ;;;;;"}
1
+ {"version":3,"file":"DropdownFooter.js","sources":["../../../../../src/components/Dropdown/ui/DropdownFooter/DropdownFooter.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\n\nimport { RootProps } from '../../../../engines';\nimport { safeUseId } from '../../../../utils';\n\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as sizeCSS } from './variations/_size/base';\nimport { StyledDropdownFooter } from './DropdownFooter.styles';\nimport type { DropdownFooterProps } from './DropdownFooter.type';\n\n/**\n * Элемент выпадающего списка\n */\nexport const dropdownFooterRoot = (Root: RootProps<HTMLDivElement, DropdownFooterProps>) =>\n forwardRef<HTMLDivElement, DropdownFooterProps>(\n ({ id, className, children, view, size, ...rest }, outerRootRef) => {\n const uniqId = safeUseId();\n const innerId = id || uniqId;\n\n return (\n <Root id={innerId} ref={outerRootRef} view={view} size={size}>\n <StyledDropdownFooter className={className} {...rest}>\n {children}\n </StyledDropdownFooter>\n </Root>\n );\n },\n );\n\nexport const dropdownFooterConfig = {\n name: 'DropdownFooter',\n tag: 'div',\n layout: dropdownFooterRoot,\n base: '',\n variations: {\n view: {\n css: viewCSS,\n },\n size: {\n css: sizeCSS,\n },\n },\n defaults: {\n view: 'primary',\n size: 'm',\n },\n};\n"],"names":["dropdownFooterRoot","Root","forwardRef","_ref","outerRootRef","id","className","children","view","size","rest","_objectWithoutProperties","_excluded","uniqId","safeUseId","innerId","React","createElement","ref","StyledDropdownFooter","_extends","dropdownFooterConfig","name","tag","layout","base","variations","css","viewCSS","sizeCSS","defaults"],"mappings":";;;;;;;;;;;;;;;;AAUA;AACA;AACA;IACaA,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAIC,IAAoD,EAAA;AAAA,EAAA,oBACnFC,gBAAU,CACN,UAAAC,IAAA,EAAmDC,YAAY,EAAK;AAAA,IAAA,IAAjEC,EAAE,GAAAF,IAAA,CAAFE,EAAE;MAAEC,SAAS,GAAAH,IAAA,CAATG,SAAS;MAAEC,QAAQ,GAAAJ,IAAA,CAARI,QAAQ;MAAEC,IAAI,GAAAL,IAAA,CAAJK,IAAI;MAAEC,IAAI,GAAAN,IAAA,CAAJM,IAAI;AAAKC,MAAAA,IAAI,GAAAC,iDAAA,CAAAR,IAAA,EAAAS,SAAA,CAAA,CAAA;AAC3C,IAAA,IAAMC,MAAM,GAAGC,eAAS,EAAE,CAAA;AAC1B,IAAA,IAAMC,OAAO,GAAGV,EAAE,IAAIQ,MAAM,CAAA;AAE5B,IAAA,oBACIG,sBAAA,CAAAC,aAAA,CAAChB,IAAI,EAAA;AAACI,MAAAA,EAAE,EAAEU,OAAQ;AAACG,MAAAA,GAAG,EAAEd,YAAa;AAACI,MAAAA,IAAI,EAAEA,IAAK;AAACC,MAAAA,IAAI,EAAEA,IAAAA;AAAK,KAAA,eACzDO,sBAAA,CAAAC,aAAA,CAACE,0CAAoB,EAAAC,iCAAA,CAAA;AAACd,MAAAA,SAAS,EAAEA,SAAAA;AAAU,KAAA,EAAKI,IAAI,CAAA,EAC/CH,QACiB,CACpB,CAAC,CAAA;AAEf,GACJ,CAAC,CAAA;AAAA,EAAA;AAEE,IAAMc,oBAAoB,GAAG;AAChCC,EAAAA,IAAI,EAAE,gBAAgB;AACtBC,EAAAA,GAAG,EAAE,KAAK;AACVC,EAAAA,MAAM,EAAExB,kBAAkB;AAC1ByB,EAAAA,IAAI,EAAE,EAAE;AACRC,EAAAA,UAAU,EAAE;AACRlB,IAAAA,IAAI,EAAE;AACFmB,MAAAA,GAAG,EAAEC,SAAAA;KACR;AACDnB,IAAAA,IAAI,EAAE;AACFkB,MAAAA,GAAG,EAAEE,WAAAA;AACT,KAAA;GACH;AACDC,EAAAA,QAAQ,EAAE;AACNtB,IAAAA,IAAI,EAAE,SAAS;AACfC,IAAAA,IAAI,EAAE,GAAA;AACV,GAAA;AACJ;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"DropdownGroup.js","sources":["../../../../../src/components/Dropdown/ui/DropdownGroup/DropdownGroup.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport { safeUseId } from 'src/utils';\nimport type { RootProps } from 'src/engines';\n\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as sizeCSS } from './variations/_size/base';\nimport { StyledDropdownGroup, StyledDropdownLabel } from './DropdownGroup.styles';\nimport type { DropdownGroupProps } from './DropdownGroup.type';\n\n/**\n * Элемент группы выпадающего списка\n */\nexport const dropdownGroupRoot = (Root: RootProps<HTMLDivElement, DropdownGroupProps>) =>\n forwardRef<HTMLDivElement, DropdownGroupProps>(\n ({ id, labelClassName, groupClassName, label, children, role, view, size, ...rest }, outerRootRef) => {\n const uniqId = safeUseId();\n const innerId = id || uniqId;\n\n return (\n <Root id={innerId} ref={outerRootRef} view={view} size={size} role={role}>\n <StyledDropdownLabel className={labelClassName}>{label}</StyledDropdownLabel>\n <StyledDropdownGroup className={groupClassName} {...rest}>\n {children}\n </StyledDropdownGroup>\n </Root>\n );\n },\n );\n\nexport const dropdownGroupConfig = {\n name: 'DropdownGroup',\n tag: 'div',\n layout: dropdownGroupRoot,\n base: '',\n variations: {\n view: {\n css: viewCSS,\n },\n size: {\n css: sizeCSS,\n },\n },\n defaults: {\n view: 'primary',\n size: 'm',\n },\n};\n"],"names":["dropdownGroupRoot","Root","forwardRef","_ref","outerRootRef","id","labelClassName","groupClassName","label","children","role","view","size","rest","_objectWithoutProperties","_excluded","uniqId","safeUseId","innerId","React","createElement","ref","StyledDropdownLabel","className","StyledDropdownGroup","_extends","dropdownGroupConfig","name","tag","layout","base","variations","css","viewCSS","sizeCSS","defaults"],"mappings":";;;;;;;;;;;;;;;;AASA;AACA;AACA;IACaA,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAIC,IAAmD,EAAA;AAAA,EAAA,oBACjFC,gBAAU,CACN,UAAAC,IAAA,EAAqFC,YAAY,EAAK;AAAA,IAAA,IAAnGC,EAAE,GAAAF,IAAA,CAAFE,EAAE;MAAEC,cAAc,GAAAH,IAAA,CAAdG,cAAc;MAAEC,cAAc,GAAAJ,IAAA,CAAdI,cAAc;MAAEC,KAAK,GAAAL,IAAA,CAALK,KAAK;MAAEC,QAAQ,GAAAN,IAAA,CAARM,QAAQ;MAAEC,IAAI,GAAAP,IAAA,CAAJO,IAAI;MAAEC,IAAI,GAAAR,IAAA,CAAJQ,IAAI;MAAEC,IAAI,GAAAT,IAAA,CAAJS,IAAI;AAAKC,MAAAA,IAAI,GAAAC,iDAAA,CAAAX,IAAA,EAAAY,SAAA,CAAA,CAAA;AAC7E,IAAA,IAAMC,MAAM,GAAGC,eAAS,EAAE,CAAA;AAC1B,IAAA,IAAMC,OAAO,GAAGb,EAAE,IAAIW,MAAM,CAAA;AAE5B,IAAA,oBACIG,sBAAA,CAAAC,aAAA,CAACnB,IAAI,EAAA;AAACI,MAAAA,EAAE,EAAEa,OAAQ;AAACG,MAAAA,GAAG,EAAEjB,YAAa;AAACO,MAAAA,IAAI,EAAEA,IAAK;AAACC,MAAAA,IAAI,EAAEA,IAAK;AAACF,MAAAA,IAAI,EAAEA,IAAAA;AAAK,KAAA,eACrES,sBAAA,CAAAC,aAAA,CAACE,wCAAmB,EAAA;AAACC,MAAAA,SAAS,EAAEjB,cAAAA;KAAiBE,EAAAA,KAA2B,CAAC,eAC7EW,sBAAA,CAAAC,aAAA,CAACI,wCAAmB,EAAAC,iCAAA,CAAA;AAACF,MAAAA,SAAS,EAAEhB,cAAAA;AAAe,KAAA,EAAKM,IAAI,CAAA,EACnDJ,QACgB,CACnB,CAAC,CAAA;AAEf,GACJ,CAAC,CAAA;AAAA,EAAA;AAEE,IAAMiB,mBAAmB,GAAG;AAC/BC,EAAAA,IAAI,EAAE,eAAe;AACrBC,EAAAA,GAAG,EAAE,KAAK;AACVC,EAAAA,MAAM,EAAE7B,iBAAiB;AACzB8B,EAAAA,IAAI,EAAE,EAAE;AACRC,EAAAA,UAAU,EAAE;AACRpB,IAAAA,IAAI,EAAE;AACFqB,MAAAA,GAAG,EAAEC,SAAAA;KACR;AACDrB,IAAAA,IAAI,EAAE;AACFoB,MAAAA,GAAG,EAAEE,WAAAA;AACT,KAAA;GACH;AACDC,EAAAA,QAAQ,EAAE;AACNxB,IAAAA,IAAI,EAAE,SAAS;AACfC,IAAAA,IAAI,EAAE,GAAA;AACV,GAAA;AACJ;;;;;"}
1
+ {"version":3,"file":"DropdownGroup.js","sources":["../../../../../src/components/Dropdown/ui/DropdownGroup/DropdownGroup.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\n\nimport { RootProps } from '../../../../engines';\nimport { safeUseId } from '../../../../utils';\n\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as sizeCSS } from './variations/_size/base';\nimport { StyledDropdownGroup, StyledDropdownLabel } from './DropdownGroup.styles';\nimport type { DropdownGroupProps } from './DropdownGroup.type';\n\n/**\n * Элемент группы выпадающего списка\n */\nexport const dropdownGroupRoot = (Root: RootProps<HTMLDivElement, DropdownGroupProps>) =>\n forwardRef<HTMLDivElement, DropdownGroupProps>(\n ({ id, labelClassName, groupClassName, label, children, role, view, size, ...rest }, outerRootRef) => {\n const uniqId = safeUseId();\n const innerId = id || uniqId;\n\n return (\n <Root id={innerId} ref={outerRootRef} view={view} size={size} role={role}>\n <StyledDropdownLabel className={labelClassName}>{label}</StyledDropdownLabel>\n <StyledDropdownGroup className={groupClassName} {...rest}>\n {children}\n </StyledDropdownGroup>\n </Root>\n );\n },\n );\n\nexport const dropdownGroupConfig = {\n name: 'DropdownGroup',\n tag: 'div',\n layout: dropdownGroupRoot,\n base: '',\n variations: {\n view: {\n css: viewCSS,\n },\n size: {\n css: sizeCSS,\n },\n },\n defaults: {\n view: 'primary',\n size: 'm',\n },\n};\n"],"names":["dropdownGroupRoot","Root","forwardRef","_ref","outerRootRef","id","labelClassName","groupClassName","label","children","role","view","size","rest","_objectWithoutProperties","_excluded","uniqId","safeUseId","innerId","React","createElement","ref","StyledDropdownLabel","className","StyledDropdownGroup","_extends","dropdownGroupConfig","name","tag","layout","base","variations","css","viewCSS","sizeCSS","defaults"],"mappings":";;;;;;;;;;;;;;;;AAUA;AACA;AACA;IACaA,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAIC,IAAmD,EAAA;AAAA,EAAA,oBACjFC,gBAAU,CACN,UAAAC,IAAA,EAAqFC,YAAY,EAAK;AAAA,IAAA,IAAnGC,EAAE,GAAAF,IAAA,CAAFE,EAAE;MAAEC,cAAc,GAAAH,IAAA,CAAdG,cAAc;MAAEC,cAAc,GAAAJ,IAAA,CAAdI,cAAc;MAAEC,KAAK,GAAAL,IAAA,CAALK,KAAK;MAAEC,QAAQ,GAAAN,IAAA,CAARM,QAAQ;MAAEC,IAAI,GAAAP,IAAA,CAAJO,IAAI;MAAEC,IAAI,GAAAR,IAAA,CAAJQ,IAAI;MAAEC,IAAI,GAAAT,IAAA,CAAJS,IAAI;AAAKC,MAAAA,IAAI,GAAAC,iDAAA,CAAAX,IAAA,EAAAY,SAAA,CAAA,CAAA;AAC7E,IAAA,IAAMC,MAAM,GAAGC,eAAS,EAAE,CAAA;AAC1B,IAAA,IAAMC,OAAO,GAAGb,EAAE,IAAIW,MAAM,CAAA;AAE5B,IAAA,oBACIG,sBAAA,CAAAC,aAAA,CAACnB,IAAI,EAAA;AAACI,MAAAA,EAAE,EAAEa,OAAQ;AAACG,MAAAA,GAAG,EAAEjB,YAAa;AAACO,MAAAA,IAAI,EAAEA,IAAK;AAACC,MAAAA,IAAI,EAAEA,IAAK;AAACF,MAAAA,IAAI,EAAEA,IAAAA;AAAK,KAAA,eACrES,sBAAA,CAAAC,aAAA,CAACE,wCAAmB,EAAA;AAACC,MAAAA,SAAS,EAAEjB,cAAAA;KAAiBE,EAAAA,KAA2B,CAAC,eAC7EW,sBAAA,CAAAC,aAAA,CAACI,wCAAmB,EAAAC,iCAAA,CAAA;AAACF,MAAAA,SAAS,EAAEhB,cAAAA;AAAe,KAAA,EAAKM,IAAI,CAAA,EACnDJ,QACgB,CACnB,CAAC,CAAA;AAEf,GACJ,CAAC,CAAA;AAAA,EAAA;AAEE,IAAMiB,mBAAmB,GAAG;AAC/BC,EAAAA,IAAI,EAAE,eAAe;AACrBC,EAAAA,GAAG,EAAE,KAAK;AACVC,EAAAA,MAAM,EAAE7B,iBAAiB;AACzB8B,EAAAA,IAAI,EAAE,EAAE;AACRC,EAAAA,UAAU,EAAE;AACRpB,IAAAA,IAAI,EAAE;AACFqB,MAAAA,GAAG,EAAEC,SAAAA;KACR;AACDrB,IAAAA,IAAI,EAAE;AACFoB,MAAAA,GAAG,EAAEE,WAAAA;AACT,KAAA;GACH;AACDC,EAAAA,QAAQ,EAAE;AACNxB,IAAAA,IAAI,EAAE,SAAS;AACfC,IAAAA,IAAI,EAAE,GAAA;AACV,GAAA;AACJ;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"DropdownHeader.js","sources":["../../../../../src/components/Dropdown/ui/DropdownHeader/DropdownHeader.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport { safeUseId } from 'src/utils';\nimport type { RootProps } from 'src/engines';\n\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as sizeCSS } from './variations/_size/base';\nimport { StyledDropdownHeader } from './DropdownHeader.styles';\nimport type { DropdownHeaderProps } from './DropdownHeader.type';\n\n/**\n * Элемент выпадающего списка\n */\nexport const dropdownHeaderRoot = (Root: RootProps<HTMLDivElement, DropdownHeaderProps>) =>\n forwardRef<HTMLDivElement, DropdownHeaderProps>(\n ({ id, className, view, size, children, ...rest }, outerRootRef) => {\n const uniqId = safeUseId();\n const innerId = id || uniqId;\n\n return (\n <Root id={innerId} ref={outerRootRef} view={view} size={size}>\n <StyledDropdownHeader className={className} {...rest}>\n {children}\n </StyledDropdownHeader>\n </Root>\n );\n },\n );\n\nexport const dropdownHeaderConfig = {\n name: 'DropdownHeader',\n tag: 'div',\n layout: dropdownHeaderRoot,\n base: '',\n variations: {\n view: {\n css: viewCSS,\n },\n size: {\n css: sizeCSS,\n },\n },\n defaults: {\n view: 'primary',\n size: 'm',\n },\n};\n"],"names":["dropdownHeaderRoot","Root","forwardRef","_ref","outerRootRef","id","className","view","size","children","rest","_objectWithoutProperties","_excluded","uniqId","safeUseId","innerId","React","createElement","ref","StyledDropdownHeader","_extends","dropdownHeaderConfig","name","tag","layout","base","variations","css","viewCSS","sizeCSS","defaults"],"mappings":";;;;;;;;;;;;;;;;AASA;AACA;AACA;IACaA,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAIC,IAAoD,EAAA;AAAA,EAAA,oBACnFC,gBAAU,CACN,UAAAC,IAAA,EAAmDC,YAAY,EAAK;AAAA,IAAA,IAAjEC,EAAE,GAAAF,IAAA,CAAFE,EAAE;MAAEC,SAAS,GAAAH,IAAA,CAATG,SAAS;MAAEC,IAAI,GAAAJ,IAAA,CAAJI,IAAI;MAAEC,IAAI,GAAAL,IAAA,CAAJK,IAAI;MAAEC,QAAQ,GAAAN,IAAA,CAARM,QAAQ;AAAKC,MAAAA,IAAI,GAAAC,iDAAA,CAAAR,IAAA,EAAAS,SAAA,CAAA,CAAA;AAC3C,IAAA,IAAMC,MAAM,GAAGC,eAAS,EAAE,CAAA;AAC1B,IAAA,IAAMC,OAAO,GAAGV,EAAE,IAAIQ,MAAM,CAAA;AAE5B,IAAA,oBACIG,sBAAA,CAAAC,aAAA,CAAChB,IAAI,EAAA;AAACI,MAAAA,EAAE,EAAEU,OAAQ;AAACG,MAAAA,GAAG,EAAEd,YAAa;AAACG,MAAAA,IAAI,EAAEA,IAAK;AAACC,MAAAA,IAAI,EAAEA,IAAAA;AAAK,KAAA,eACzDQ,sBAAA,CAAAC,aAAA,CAACE,0CAAoB,EAAAC,iCAAA,CAAA;AAACd,MAAAA,SAAS,EAAEA,SAAAA;AAAU,KAAA,EAAKI,IAAI,CAAA,EAC/CD,QACiB,CACpB,CAAC,CAAA;AAEf,GACJ,CAAC,CAAA;AAAA,EAAA;AAEE,IAAMY,oBAAoB,GAAG;AAChCC,EAAAA,IAAI,EAAE,gBAAgB;AACtBC,EAAAA,GAAG,EAAE,KAAK;AACVC,EAAAA,MAAM,EAAExB,kBAAkB;AAC1ByB,EAAAA,IAAI,EAAE,EAAE;AACRC,EAAAA,UAAU,EAAE;AACRnB,IAAAA,IAAI,EAAE;AACFoB,MAAAA,GAAG,EAAEC,SAAAA;KACR;AACDpB,IAAAA,IAAI,EAAE;AACFmB,MAAAA,GAAG,EAAEE,WAAAA;AACT,KAAA;GACH;AACDC,EAAAA,QAAQ,EAAE;AACNvB,IAAAA,IAAI,EAAE,SAAS;AACfC,IAAAA,IAAI,EAAE,GAAA;AACV,GAAA;AACJ;;;;;"}
1
+ {"version":3,"file":"DropdownHeader.js","sources":["../../../../../src/components/Dropdown/ui/DropdownHeader/DropdownHeader.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\n\nimport { RootProps } from '../../../../engines';\nimport { safeUseId } from '../../../../utils';\n\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as sizeCSS } from './variations/_size/base';\nimport { StyledDropdownHeader } from './DropdownHeader.styles';\nimport type { DropdownHeaderProps } from './DropdownHeader.type';\n\n/**\n * Элемент выпадающего списка\n */\nexport const dropdownHeaderRoot = (Root: RootProps<HTMLDivElement, DropdownHeaderProps>) =>\n forwardRef<HTMLDivElement, DropdownHeaderProps>(\n ({ id, className, view, size, children, ...rest }, outerRootRef) => {\n const uniqId = safeUseId();\n const innerId = id || uniqId;\n\n return (\n <Root id={innerId} ref={outerRootRef} view={view} size={size}>\n <StyledDropdownHeader className={className} {...rest}>\n {children}\n </StyledDropdownHeader>\n </Root>\n );\n },\n );\n\nexport const dropdownHeaderConfig = {\n name: 'DropdownHeader',\n tag: 'div',\n layout: dropdownHeaderRoot,\n base: '',\n variations: {\n view: {\n css: viewCSS,\n },\n size: {\n css: sizeCSS,\n },\n },\n defaults: {\n view: 'primary',\n size: 'm',\n },\n};\n"],"names":["dropdownHeaderRoot","Root","forwardRef","_ref","outerRootRef","id","className","view","size","children","rest","_objectWithoutProperties","_excluded","uniqId","safeUseId","innerId","React","createElement","ref","StyledDropdownHeader","_extends","dropdownHeaderConfig","name","tag","layout","base","variations","css","viewCSS","sizeCSS","defaults"],"mappings":";;;;;;;;;;;;;;;;AAUA;AACA;AACA;IACaA,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAIC,IAAoD,EAAA;AAAA,EAAA,oBACnFC,gBAAU,CACN,UAAAC,IAAA,EAAmDC,YAAY,EAAK;AAAA,IAAA,IAAjEC,EAAE,GAAAF,IAAA,CAAFE,EAAE;MAAEC,SAAS,GAAAH,IAAA,CAATG,SAAS;MAAEC,IAAI,GAAAJ,IAAA,CAAJI,IAAI;MAAEC,IAAI,GAAAL,IAAA,CAAJK,IAAI;MAAEC,QAAQ,GAAAN,IAAA,CAARM,QAAQ;AAAKC,MAAAA,IAAI,GAAAC,iDAAA,CAAAR,IAAA,EAAAS,SAAA,CAAA,CAAA;AAC3C,IAAA,IAAMC,MAAM,GAAGC,eAAS,EAAE,CAAA;AAC1B,IAAA,IAAMC,OAAO,GAAGV,EAAE,IAAIQ,MAAM,CAAA;AAE5B,IAAA,oBACIG,sBAAA,CAAAC,aAAA,CAAChB,IAAI,EAAA;AAACI,MAAAA,EAAE,EAAEU,OAAQ;AAACG,MAAAA,GAAG,EAAEd,YAAa;AAACG,MAAAA,IAAI,EAAEA,IAAK;AAACC,MAAAA,IAAI,EAAEA,IAAAA;AAAK,KAAA,eACzDQ,sBAAA,CAAAC,aAAA,CAACE,0CAAoB,EAAAC,iCAAA,CAAA;AAACd,MAAAA,SAAS,EAAEA,SAAAA;AAAU,KAAA,EAAKI,IAAI,CAAA,EAC/CD,QACiB,CACpB,CAAC,CAAA;AAEf,GACJ,CAAC,CAAA;AAAA,EAAA;AAEE,IAAMY,oBAAoB,GAAG;AAChCC,EAAAA,IAAI,EAAE,gBAAgB;AACtBC,EAAAA,GAAG,EAAE,KAAK;AACVC,EAAAA,MAAM,EAAExB,kBAAkB;AAC1ByB,EAAAA,IAAI,EAAE,EAAE;AACRC,EAAAA,UAAU,EAAE;AACRnB,IAAAA,IAAI,EAAE;AACFoB,MAAAA,GAAG,EAAEC,SAAAA;KACR;AACDpB,IAAAA,IAAI,EAAE;AACFmB,MAAAA,GAAG,EAAEE,WAAAA;AACT,KAAA;GACH;AACDC,EAAAA,QAAQ,EAAE;AACNvB,IAAAA,IAAI,EAAE,SAAS;AACfC,IAAAA,IAAI,EAAE,GAAA;AACV,GAAA;AACJ;;;;;"}