@activecollab/components 2.0.498 → 2.0.500

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 (489) hide show
  1. package/dist/cjs/components/Button/AddToListButton/AddToListButton.js +13 -1
  2. package/dist/cjs/components/Button/AddToListButton/AddToListButton.js.map +1 -1
  3. package/dist/cjs/components/Button/AddToListButton/Styles.js +16 -1
  4. package/dist/cjs/components/Button/AddToListButton/Styles.js.map +1 -1
  5. package/dist/cjs/components/ButtonGroup/ButtonGroup.js +5 -2
  6. package/dist/cjs/components/ButtonGroup/ButtonGroup.js.map +1 -1
  7. package/dist/cjs/components/ButtonGroup/Styles.js +11 -7
  8. package/dist/cjs/components/ButtonGroup/Styles.js.map +1 -1
  9. package/dist/cjs/components/Card/Card.js +9 -2
  10. package/dist/cjs/components/Card/Card.js.map +1 -1
  11. package/dist/cjs/components/Card/Styles.js +6 -1
  12. package/dist/cjs/components/Card/Styles.js.map +1 -1
  13. package/dist/cjs/components/Chip/Chip.js +21 -6
  14. package/dist/cjs/components/Chip/Chip.js.map +1 -1
  15. package/dist/cjs/components/Chip/ChipGroup.js +27 -0
  16. package/dist/cjs/components/Chip/ChipGroup.js.map +1 -0
  17. package/dist/cjs/components/Chip/ChipGroupStyles.js +17 -0
  18. package/dist/cjs/components/Chip/ChipGroupStyles.js.map +1 -0
  19. package/dist/cjs/components/Chip/Styles.js +55 -19
  20. package/dist/cjs/components/Chip/Styles.js.map +1 -1
  21. package/dist/cjs/components/Chip/index.js +11 -0
  22. package/dist/cjs/components/Chip/index.js.map +1 -1
  23. package/dist/cjs/components/ClampedContent/ClampedContent.js +131 -0
  24. package/dist/cjs/components/ClampedContent/ClampedContent.js.map +1 -0
  25. package/dist/cjs/components/ClampedContent/Styles.js +28 -0
  26. package/dist/cjs/components/ClampedContent/Styles.js.map +1 -0
  27. package/dist/cjs/components/ClampedContent/index.js +17 -0
  28. package/dist/cjs/components/ClampedContent/index.js.map +1 -0
  29. package/dist/cjs/components/Collapse/Collapse.js +93 -0
  30. package/dist/cjs/components/Collapse/Collapse.js.map +1 -0
  31. package/dist/cjs/components/Collapse/Styles.js +26 -0
  32. package/dist/cjs/components/Collapse/Styles.js.map +1 -0
  33. package/dist/cjs/components/Collapse/index.js +17 -0
  34. package/dist/cjs/components/Collapse/index.js.map +1 -0
  35. package/dist/cjs/components/CompleteCheckbox/CompleteCheckbox.js +24 -2
  36. package/dist/cjs/components/CompleteCheckbox/CompleteCheckbox.js.map +1 -1
  37. package/dist/cjs/components/CompleteCheckbox/Styles.js +17 -1
  38. package/dist/cjs/components/CompleteCheckbox/Styles.js.map +1 -1
  39. package/dist/cjs/components/DockedCard/DockedCard.js +68 -0
  40. package/dist/cjs/components/DockedCard/DockedCard.js.map +1 -0
  41. package/dist/cjs/components/DockedCard/Styles.js +36 -0
  42. package/dist/cjs/components/DockedCard/Styles.js.map +1 -0
  43. package/dist/cjs/components/DockedCard/index.js +28 -0
  44. package/dist/cjs/components/DockedCard/index.js.map +1 -0
  45. package/dist/cjs/components/DockedCard/useDockedCard.js +236 -0
  46. package/dist/cjs/components/DockedCard/useDockedCard.js.map +1 -0
  47. package/dist/cjs/components/EditableContent/EditableContent.js.map +1 -1
  48. package/dist/cjs/components/EditorFrame/EditorFrame.js +51 -0
  49. package/dist/cjs/components/EditorFrame/EditorFrame.js.map +1 -0
  50. package/dist/cjs/components/EditorFrame/Styles.js +29 -0
  51. package/dist/cjs/components/EditorFrame/Styles.js.map +1 -0
  52. package/dist/cjs/components/EditorFrame/index.js +17 -0
  53. package/dist/cjs/components/EditorFrame/index.js.map +1 -0
  54. package/dist/cjs/components/EmptySlate/EmptySlate.js +19 -9
  55. package/dist/cjs/components/EmptySlate/EmptySlate.js.map +1 -1
  56. package/dist/cjs/components/EmptySlate/EmptySlate.styles.js +20 -6
  57. package/dist/cjs/components/EmptySlate/EmptySlate.styles.js.map +1 -1
  58. package/dist/cjs/components/FileTile/FileTile.js +138 -0
  59. package/dist/cjs/components/FileTile/FileTile.js.map +1 -0
  60. package/dist/cjs/components/FileTile/Styles.js +71 -0
  61. package/dist/cjs/components/FileTile/Styles.js.map +1 -0
  62. package/dist/cjs/components/FileTile/index.js +17 -0
  63. package/dist/cjs/components/FileTile/index.js.map +1 -0
  64. package/dist/cjs/components/FloatingPill/FloatingPill.js +33 -0
  65. package/dist/cjs/components/FloatingPill/FloatingPill.js.map +1 -0
  66. package/dist/cjs/components/FloatingPill/Styles.js +16 -0
  67. package/dist/cjs/components/FloatingPill/Styles.js.map +1 -0
  68. package/dist/cjs/components/FloatingPill/index.js +17 -0
  69. package/dist/cjs/components/FloatingPill/index.js.map +1 -0
  70. package/dist/cjs/components/Icons/collection/FlagFilled.js +71 -0
  71. package/dist/cjs/components/Icons/collection/FlagFilled.js.map +1 -0
  72. package/dist/cjs/components/Icons/collection/FlagOutline.js +72 -0
  73. package/dist/cjs/components/Icons/collection/FlagOutline.js.map +1 -0
  74. package/dist/cjs/components/Icons/collection/LayoutColumn.js +70 -0
  75. package/dist/cjs/components/Icons/collection/LayoutColumn.js.map +1 -0
  76. package/dist/cjs/components/Icons/collection/LayoutSidebar.js +68 -0
  77. package/dist/cjs/components/Icons/collection/LayoutSidebar.js.map +1 -0
  78. package/dist/cjs/components/Icons/collection/LayoutSingle.js +68 -0
  79. package/dist/cjs/components/Icons/collection/LayoutSingle.js.map +1 -0
  80. package/dist/cjs/components/Icons/collection/LayoutWide.js +70 -0
  81. package/dist/cjs/components/Icons/collection/LayoutWide.js.map +1 -0
  82. package/dist/cjs/components/Icons/collection/index.js +42 -0
  83. package/dist/cjs/components/Icons/collection/index.js.map +1 -1
  84. package/dist/cjs/components/LabeledDivider/LabeledDivider.js +39 -0
  85. package/dist/cjs/components/LabeledDivider/LabeledDivider.js.map +1 -0
  86. package/dist/cjs/components/LabeledDivider/Styles.js +27 -0
  87. package/dist/cjs/components/LabeledDivider/Styles.js.map +1 -0
  88. package/dist/cjs/components/LabeledDivider/index.js +17 -0
  89. package/dist/cjs/components/LabeledDivider/index.js.map +1 -0
  90. package/dist/cjs/components/ListRow/ListRow.js +48 -0
  91. package/dist/cjs/components/ListRow/ListRow.js.map +1 -0
  92. package/dist/cjs/components/ListRow/Styles.js +25 -0
  93. package/dist/cjs/components/ListRow/Styles.js.map +1 -0
  94. package/dist/cjs/components/ListRow/index.js +17 -0
  95. package/dist/cjs/components/ListRow/index.js.map +1 -0
  96. package/dist/cjs/components/Loaders/Skeleton/SkeletonLoader.js +11 -2
  97. package/dist/cjs/components/Loaders/Skeleton/SkeletonLoader.js.map +1 -1
  98. package/dist/cjs/components/Loaders/Skeleton/Styles.js +13 -1
  99. package/dist/cjs/components/Loaders/Skeleton/Styles.js.map +1 -1
  100. package/dist/cjs/components/Menu/Menu.js +4 -1
  101. package/dist/cjs/components/Menu/Menu.js.map +1 -1
  102. package/dist/cjs/components/Menu/MenuFooter.js +18 -2
  103. package/dist/cjs/components/Menu/MenuFooter.js.map +1 -1
  104. package/dist/cjs/components/Menu/Styles.js +9 -3
  105. package/dist/cjs/components/Menu/Styles.js.map +1 -1
  106. package/dist/cjs/components/MessageBubble/MessageBubble.js +78 -0
  107. package/dist/cjs/components/MessageBubble/MessageBubble.js.map +1 -0
  108. package/dist/cjs/components/MessageBubble/Styles.js +56 -0
  109. package/dist/cjs/components/MessageBubble/Styles.js.map +1 -0
  110. package/dist/cjs/components/MessageBubble/index.js +17 -0
  111. package/dist/cjs/components/MessageBubble/index.js.map +1 -0
  112. package/dist/cjs/components/ObjectLayout/ObjectLayout.js +189 -0
  113. package/dist/cjs/components/ObjectLayout/ObjectLayout.js.map +1 -0
  114. package/dist/cjs/components/ObjectLayout/Styles.js +83 -0
  115. package/dist/cjs/components/ObjectLayout/Styles.js.map +1 -0
  116. package/dist/cjs/components/ObjectLayout/index.js +17 -0
  117. package/dist/cjs/components/ObjectLayout/index.js.map +1 -0
  118. package/dist/cjs/components/ProgressBar/ProgressBar.js +14 -3
  119. package/dist/cjs/components/ProgressBar/ProgressBar.js.map +1 -1
  120. package/dist/cjs/components/ProgressBar/Styles.js +8 -2
  121. package/dist/cjs/components/ProgressBar/Styles.js.map +1 -1
  122. package/dist/cjs/components/PropertyList/PropertyList.js +186 -0
  123. package/dist/cjs/components/PropertyList/PropertyList.js.map +1 -0
  124. package/dist/cjs/components/PropertyList/Styles.js +104 -0
  125. package/dist/cjs/components/PropertyList/Styles.js.map +1 -0
  126. package/dist/cjs/components/PropertyList/index.js +17 -0
  127. package/dist/cjs/components/PropertyList/index.js.map +1 -0
  128. package/dist/cjs/components/ResizeHandle/ResizeHandle.js +38 -0
  129. package/dist/cjs/components/ResizeHandle/ResizeHandle.js.map +1 -0
  130. package/dist/cjs/components/ResizeHandle/Styles.js +26 -0
  131. package/dist/cjs/components/ResizeHandle/Styles.js.map +1 -0
  132. package/dist/cjs/components/ResizeHandle/index.js +17 -0
  133. package/dist/cjs/components/ResizeHandle/index.js.map +1 -0
  134. package/dist/cjs/components/Section/Section.js +49 -0
  135. package/dist/cjs/components/Section/Section.js.map +1 -0
  136. package/dist/cjs/components/Section/Styles.js +29 -0
  137. package/dist/cjs/components/Section/Styles.js.map +1 -0
  138. package/dist/cjs/components/Section/index.js +17 -0
  139. package/dist/cjs/components/Section/index.js.map +1 -0
  140. package/dist/cjs/components/Sheet/Sheet.js +8 -3
  141. package/dist/cjs/components/Sheet/Sheet.js.map +1 -1
  142. package/dist/cjs/components/Sheet/Styles.js +8 -2
  143. package/dist/cjs/components/Sheet/Styles.js.map +1 -1
  144. package/dist/cjs/components/Typography/Styles.js +11 -1
  145. package/dist/cjs/components/Typography/Styles.js.map +1 -1
  146. package/dist/cjs/components/Typography/Typography.js.map +1 -1
  147. package/dist/cjs/components/Typography/Variants/Title3.js +26 -0
  148. package/dist/cjs/components/Typography/Variants/Title3.js.map +1 -0
  149. package/dist/cjs/components/Typography/index.js +11 -0
  150. package/dist/cjs/components/Typography/index.js.map +1 -1
  151. package/dist/cjs/components/index.js +143 -0
  152. package/dist/cjs/components/index.js.map +1 -1
  153. package/dist/cjs/hooks/index.js +22 -0
  154. package/dist/cjs/hooks/index.js.map +1 -1
  155. package/dist/cjs/hooks/useLongPress.js +97 -0
  156. package/dist/cjs/hooks/useLongPress.js.map +1 -0
  157. package/dist/cjs/hooks/useResizablePanel.js +120 -0
  158. package/dist/cjs/hooks/useResizablePanel.js.map +1 -0
  159. package/dist/cjs/utils/useContainerCss.js +19 -0
  160. package/dist/cjs/utils/useContainerCss.js.map +1 -0
  161. package/dist/esm/components/Button/AddToListButton/AddToListButton.d.ts +5 -1
  162. package/dist/esm/components/Button/AddToListButton/AddToListButton.d.ts.map +1 -1
  163. package/dist/esm/components/Button/AddToListButton/AddToListButton.js +14 -2
  164. package/dist/esm/components/Button/AddToListButton/AddToListButton.js.map +1 -1
  165. package/dist/esm/components/Button/AddToListButton/Styles.d.ts +3 -0
  166. package/dist/esm/components/Button/AddToListButton/Styles.d.ts.map +1 -1
  167. package/dist/esm/components/Button/AddToListButton/Styles.js +15 -0
  168. package/dist/esm/components/Button/AddToListButton/Styles.js.map +1 -1
  169. package/dist/esm/components/ButtonGroup/ButtonGroup.d.ts +2 -0
  170. package/dist/esm/components/ButtonGroup/ButtonGroup.d.ts.map +1 -1
  171. package/dist/esm/components/ButtonGroup/ButtonGroup.js +5 -2
  172. package/dist/esm/components/ButtonGroup/ButtonGroup.js.map +1 -1
  173. package/dist/esm/components/ButtonGroup/Styles.d.ts +1 -0
  174. package/dist/esm/components/ButtonGroup/Styles.d.ts.map +1 -1
  175. package/dist/esm/components/ButtonGroup/Styles.js +9 -7
  176. package/dist/esm/components/ButtonGroup/Styles.js.map +1 -1
  177. package/dist/esm/components/Card/Card.d.ts +5 -1
  178. package/dist/esm/components/Card/Card.d.ts.map +1 -1
  179. package/dist/esm/components/Card/Card.js +9 -2
  180. package/dist/esm/components/Card/Card.js.map +1 -1
  181. package/dist/esm/components/Card/Styles.d.ts +3 -0
  182. package/dist/esm/components/Card/Styles.d.ts.map +1 -1
  183. package/dist/esm/components/Card/Styles.js +6 -1
  184. package/dist/esm/components/Card/Styles.js.map +1 -1
  185. package/dist/esm/components/Chip/Chip.d.ts +13 -1
  186. package/dist/esm/components/Chip/Chip.d.ts.map +1 -1
  187. package/dist/esm/components/Chip/Chip.js +21 -6
  188. package/dist/esm/components/Chip/Chip.js.map +1 -1
  189. package/dist/esm/components/Chip/ChipGroup.d.ts +7 -0
  190. package/dist/esm/components/Chip/ChipGroup.d.ts.map +1 -0
  191. package/dist/esm/components/Chip/ChipGroup.js +19 -0
  192. package/dist/esm/components/Chip/ChipGroup.js.map +1 -0
  193. package/dist/esm/components/Chip/ChipGroupStyles.d.ts +4 -0
  194. package/dist/esm/components/Chip/ChipGroupStyles.d.ts.map +1 -0
  195. package/dist/esm/components/Chip/ChipGroupStyles.js +8 -0
  196. package/dist/esm/components/Chip/ChipGroupStyles.js.map +1 -0
  197. package/dist/esm/components/Chip/Styles.d.ts +9 -3
  198. package/dist/esm/components/Chip/Styles.d.ts.map +1 -1
  199. package/dist/esm/components/Chip/Styles.js +36 -13
  200. package/dist/esm/components/Chip/Styles.js.map +1 -1
  201. package/dist/esm/components/Chip/index.d.ts +1 -0
  202. package/dist/esm/components/Chip/index.d.ts.map +1 -1
  203. package/dist/esm/components/Chip/index.js +1 -0
  204. package/dist/esm/components/Chip/index.js.map +1 -1
  205. package/dist/esm/components/ClampedContent/ClampedContent.d.ts +18 -0
  206. package/dist/esm/components/ClampedContent/ClampedContent.d.ts.map +1 -0
  207. package/dist/esm/components/ClampedContent/ClampedContent.js +109 -0
  208. package/dist/esm/components/ClampedContent/ClampedContent.js.map +1 -0
  209. package/dist/esm/components/ClampedContent/Styles.d.ts +8 -0
  210. package/dist/esm/components/ClampedContent/Styles.d.ts.map +1 -0
  211. package/dist/esm/components/ClampedContent/Styles.js +21 -0
  212. package/dist/esm/components/ClampedContent/Styles.js.map +1 -0
  213. package/dist/esm/components/ClampedContent/index.d.ts +2 -0
  214. package/dist/esm/components/ClampedContent/index.d.ts.map +1 -0
  215. package/dist/esm/components/ClampedContent/index.js +2 -0
  216. package/dist/esm/components/ClampedContent/index.js.map +1 -0
  217. package/dist/esm/components/Collapse/Collapse.d.ts +15 -0
  218. package/dist/esm/components/Collapse/Collapse.d.ts.map +1 -0
  219. package/dist/esm/components/Collapse/Collapse.js +68 -0
  220. package/dist/esm/components/Collapse/Collapse.js.map +1 -0
  221. package/dist/esm/components/Collapse/Styles.d.ts +8 -0
  222. package/dist/esm/components/Collapse/Styles.d.ts.map +1 -0
  223. package/dist/esm/components/Collapse/Styles.js +19 -0
  224. package/dist/esm/components/Collapse/Styles.js.map +1 -0
  225. package/dist/esm/components/Collapse/index.d.ts +2 -0
  226. package/dist/esm/components/Collapse/index.d.ts.map +1 -0
  227. package/dist/esm/components/Collapse/index.js +2 -0
  228. package/dist/esm/components/Collapse/index.js.map +1 -0
  229. package/dist/esm/components/CompleteCheckbox/CompleteCheckbox.d.ts +9 -1
  230. package/dist/esm/components/CompleteCheckbox/CompleteCheckbox.d.ts.map +1 -1
  231. package/dist/esm/components/CompleteCheckbox/CompleteCheckbox.js +24 -2
  232. package/dist/esm/components/CompleteCheckbox/CompleteCheckbox.js.map +1 -1
  233. package/dist/esm/components/CompleteCheckbox/Styles.d.ts +4 -0
  234. package/dist/esm/components/CompleteCheckbox/Styles.d.ts.map +1 -1
  235. package/dist/esm/components/CompleteCheckbox/Styles.js +16 -0
  236. package/dist/esm/components/CompleteCheckbox/Styles.js.map +1 -1
  237. package/dist/esm/components/DockedCard/DockedCard.d.ts +26 -0
  238. package/dist/esm/components/DockedCard/DockedCard.d.ts.map +1 -0
  239. package/dist/esm/components/DockedCard/DockedCard.js +54 -0
  240. package/dist/esm/components/DockedCard/DockedCard.js.map +1 -0
  241. package/dist/esm/components/DockedCard/Styles.d.ts +9 -0
  242. package/dist/esm/components/DockedCard/Styles.d.ts.map +1 -0
  243. package/dist/esm/components/DockedCard/Styles.js +29 -0
  244. package/dist/esm/components/DockedCard/Styles.js.map +1 -0
  245. package/dist/esm/components/DockedCard/index.d.ts +3 -0
  246. package/dist/esm/components/DockedCard/index.d.ts.map +1 -0
  247. package/dist/esm/components/DockedCard/index.js +3 -0
  248. package/dist/esm/components/DockedCard/index.js.map +1 -0
  249. package/dist/esm/components/DockedCard/useDockedCard.d.ts +37 -0
  250. package/dist/esm/components/DockedCard/useDockedCard.d.ts.map +1 -0
  251. package/dist/esm/components/DockedCard/useDockedCard.js +194 -0
  252. package/dist/esm/components/DockedCard/useDockedCard.js.map +1 -0
  253. package/dist/esm/components/EditableContent/EditableContent.d.ts +1 -1
  254. package/dist/esm/components/EditableContent/EditableContent.d.ts.map +1 -1
  255. package/dist/esm/components/EditableContent/EditableContent.js.map +1 -1
  256. package/dist/esm/components/EditorFrame/EditorFrame.d.ts +14 -0
  257. package/dist/esm/components/EditorFrame/EditorFrame.d.ts.map +1 -0
  258. package/dist/esm/components/EditorFrame/EditorFrame.js +42 -0
  259. package/dist/esm/components/EditorFrame/EditorFrame.js.map +1 -0
  260. package/dist/esm/components/EditorFrame/Styles.d.ts +13 -0
  261. package/dist/esm/components/EditorFrame/Styles.d.ts.map +1 -0
  262. package/dist/esm/components/EditorFrame/Styles.js +22 -0
  263. package/dist/esm/components/EditorFrame/Styles.js.map +1 -0
  264. package/dist/esm/components/EditorFrame/index.d.ts +2 -0
  265. package/dist/esm/components/EditorFrame/index.d.ts.map +1 -0
  266. package/dist/esm/components/EditorFrame/index.js +2 -0
  267. package/dist/esm/components/EditorFrame/index.js.map +1 -0
  268. package/dist/esm/components/EmptySlate/EmptySlate.d.ts +9 -4
  269. package/dist/esm/components/EmptySlate/EmptySlate.d.ts.map +1 -1
  270. package/dist/esm/components/EmptySlate/EmptySlate.js +19 -9
  271. package/dist/esm/components/EmptySlate/EmptySlate.js.map +1 -1
  272. package/dist/esm/components/EmptySlate/EmptySlate.styles.d.ts +8 -4
  273. package/dist/esm/components/EmptySlate/EmptySlate.styles.d.ts.map +1 -1
  274. package/dist/esm/components/EmptySlate/EmptySlate.styles.js +5 -5
  275. package/dist/esm/components/EmptySlate/EmptySlate.styles.js.map +1 -1
  276. package/dist/esm/components/FileTile/FileTile.d.ts +63 -0
  277. package/dist/esm/components/FileTile/FileTile.d.ts.map +1 -0
  278. package/dist/esm/components/FileTile/FileTile.js +129 -0
  279. package/dist/esm/components/FileTile/FileTile.js.map +1 -0
  280. package/dist/esm/components/FileTile/Styles.d.ts +19 -0
  281. package/dist/esm/components/FileTile/Styles.d.ts.map +1 -0
  282. package/dist/esm/components/FileTile/Styles.js +64 -0
  283. package/dist/esm/components/FileTile/Styles.js.map +1 -0
  284. package/dist/esm/components/FileTile/index.d.ts +2 -0
  285. package/dist/esm/components/FileTile/index.d.ts.map +1 -0
  286. package/dist/esm/components/FileTile/index.js +2 -0
  287. package/dist/esm/components/FileTile/index.js.map +1 -0
  288. package/dist/esm/components/FloatingPill/FloatingPill.d.ts +9 -0
  289. package/dist/esm/components/FloatingPill/FloatingPill.d.ts.map +1 -0
  290. package/dist/esm/components/FloatingPill/FloatingPill.js +24 -0
  291. package/dist/esm/components/FloatingPill/FloatingPill.js.map +1 -0
  292. package/dist/esm/components/FloatingPill/Styles.d.ts +4 -0
  293. package/dist/esm/components/FloatingPill/Styles.d.ts.map +1 -0
  294. package/dist/esm/components/FloatingPill/Styles.js +9 -0
  295. package/dist/esm/components/FloatingPill/Styles.js.map +1 -0
  296. package/dist/esm/components/FloatingPill/index.d.ts +2 -0
  297. package/dist/esm/components/FloatingPill/index.d.ts.map +1 -0
  298. package/dist/esm/components/FloatingPill/index.js +2 -0
  299. package/dist/esm/components/FloatingPill/index.js.map +1 -0
  300. package/dist/esm/components/Icons/collection/FlagFilled.d.ts +32 -0
  301. package/dist/esm/components/Icons/collection/FlagFilled.d.ts.map +1 -0
  302. package/dist/esm/components/Icons/collection/FlagFilled.js +64 -0
  303. package/dist/esm/components/Icons/collection/FlagFilled.js.map +1 -0
  304. package/dist/esm/components/Icons/collection/FlagOutline.d.ts +32 -0
  305. package/dist/esm/components/Icons/collection/FlagOutline.d.ts.map +1 -0
  306. package/dist/esm/components/Icons/collection/FlagOutline.js +65 -0
  307. package/dist/esm/components/Icons/collection/FlagOutline.js.map +1 -0
  308. package/dist/esm/components/Icons/collection/LayoutColumn.d.ts +32 -0
  309. package/dist/esm/components/Icons/collection/LayoutColumn.d.ts.map +1 -0
  310. package/dist/esm/components/Icons/collection/LayoutColumn.js +63 -0
  311. package/dist/esm/components/Icons/collection/LayoutColumn.js.map +1 -0
  312. package/dist/esm/components/Icons/collection/LayoutSidebar.d.ts +32 -0
  313. package/dist/esm/components/Icons/collection/LayoutSidebar.d.ts.map +1 -0
  314. package/dist/esm/components/Icons/collection/LayoutSidebar.js +61 -0
  315. package/dist/esm/components/Icons/collection/LayoutSidebar.js.map +1 -0
  316. package/dist/esm/components/Icons/collection/LayoutSingle.d.ts +32 -0
  317. package/dist/esm/components/Icons/collection/LayoutSingle.d.ts.map +1 -0
  318. package/dist/esm/components/Icons/collection/LayoutSingle.js +61 -0
  319. package/dist/esm/components/Icons/collection/LayoutSingle.js.map +1 -0
  320. package/dist/esm/components/Icons/collection/LayoutWide.d.ts +32 -0
  321. package/dist/esm/components/Icons/collection/LayoutWide.d.ts.map +1 -0
  322. package/dist/esm/components/Icons/collection/LayoutWide.js +63 -0
  323. package/dist/esm/components/Icons/collection/LayoutWide.js.map +1 -0
  324. package/dist/esm/components/Icons/collection/index.d.ts +6 -0
  325. package/dist/esm/components/Icons/collection/index.d.ts.map +1 -1
  326. package/dist/esm/components/Icons/collection/index.js +6 -0
  327. package/dist/esm/components/Icons/collection/index.js.map +1 -1
  328. package/dist/esm/components/LabeledDivider/LabeledDivider.d.ts +11 -0
  329. package/dist/esm/components/LabeledDivider/LabeledDivider.d.ts.map +1 -0
  330. package/dist/esm/components/LabeledDivider/LabeledDivider.js +30 -0
  331. package/dist/esm/components/LabeledDivider/LabeledDivider.js.map +1 -0
  332. package/dist/esm/components/LabeledDivider/Styles.d.ts +10 -0
  333. package/dist/esm/components/LabeledDivider/Styles.d.ts.map +1 -0
  334. package/dist/esm/components/LabeledDivider/Styles.js +20 -0
  335. package/dist/esm/components/LabeledDivider/Styles.js.map +1 -0
  336. package/dist/esm/components/LabeledDivider/index.d.ts +2 -0
  337. package/dist/esm/components/LabeledDivider/index.d.ts.map +1 -0
  338. package/dist/esm/components/LabeledDivider/index.js +2 -0
  339. package/dist/esm/components/LabeledDivider/index.js.map +1 -0
  340. package/dist/esm/components/ListRow/ListRow.d.ts +19 -0
  341. package/dist/esm/components/ListRow/ListRow.d.ts.map +1 -0
  342. package/dist/esm/components/ListRow/ListRow.js +39 -0
  343. package/dist/esm/components/ListRow/ListRow.js.map +1 -0
  344. package/dist/esm/components/ListRow/Styles.d.ts +7 -0
  345. package/dist/esm/components/ListRow/Styles.d.ts.map +1 -0
  346. package/dist/esm/components/ListRow/Styles.js +18 -0
  347. package/dist/esm/components/ListRow/Styles.js.map +1 -0
  348. package/dist/esm/components/ListRow/index.d.ts +2 -0
  349. package/dist/esm/components/ListRow/index.d.ts.map +1 -0
  350. package/dist/esm/components/ListRow/index.js +2 -0
  351. package/dist/esm/components/ListRow/index.js.map +1 -0
  352. package/dist/esm/components/Loaders/Skeleton/SkeletonLoader.d.ts +11 -1
  353. package/dist/esm/components/Loaders/Skeleton/SkeletonLoader.d.ts.map +1 -1
  354. package/dist/esm/components/Loaders/Skeleton/SkeletonLoader.js +11 -2
  355. package/dist/esm/components/Loaders/Skeleton/SkeletonLoader.js.map +1 -1
  356. package/dist/esm/components/Loaders/Skeleton/Styles.d.ts +8 -1
  357. package/dist/esm/components/Loaders/Skeleton/Styles.d.ts.map +1 -1
  358. package/dist/esm/components/Loaders/Skeleton/Styles.js +4 -2
  359. package/dist/esm/components/Loaders/Skeleton/Styles.js.map +1 -1
  360. package/dist/esm/components/Menu/Menu.d.ts +2 -0
  361. package/dist/esm/components/Menu/Menu.d.ts.map +1 -1
  362. package/dist/esm/components/Menu/Menu.js +4 -1
  363. package/dist/esm/components/Menu/Menu.js.map +1 -1
  364. package/dist/esm/components/Menu/MenuFooter.d.ts +12 -0
  365. package/dist/esm/components/Menu/MenuFooter.d.ts.map +1 -1
  366. package/dist/esm/components/Menu/MenuFooter.js +17 -3
  367. package/dist/esm/components/Menu/MenuFooter.js.map +1 -1
  368. package/dist/esm/components/Menu/Styles.d.ts +4 -1
  369. package/dist/esm/components/Menu/Styles.d.ts.map +1 -1
  370. package/dist/esm/components/Menu/Styles.js +7 -3
  371. package/dist/esm/components/Menu/Styles.js.map +1 -1
  372. package/dist/esm/components/MessageBubble/MessageBubble.d.ts +29 -0
  373. package/dist/esm/components/MessageBubble/MessageBubble.d.ts.map +1 -0
  374. package/dist/esm/components/MessageBubble/MessageBubble.js +69 -0
  375. package/dist/esm/components/MessageBubble/MessageBubble.js.map +1 -0
  376. package/dist/esm/components/MessageBubble/Styles.d.ts +16 -0
  377. package/dist/esm/components/MessageBubble/Styles.d.ts.map +1 -0
  378. package/dist/esm/components/MessageBubble/Styles.js +51 -0
  379. package/dist/esm/components/MessageBubble/Styles.js.map +1 -0
  380. package/dist/esm/components/MessageBubble/index.d.ts +2 -0
  381. package/dist/esm/components/MessageBubble/index.d.ts.map +1 -0
  382. package/dist/esm/components/MessageBubble/index.js +2 -0
  383. package/dist/esm/components/MessageBubble/index.js.map +1 -0
  384. package/dist/esm/components/ObjectLayout/ObjectLayout.d.ts +32 -0
  385. package/dist/esm/components/ObjectLayout/ObjectLayout.d.ts.map +1 -0
  386. package/dist/esm/components/ObjectLayout/ObjectLayout.js +167 -0
  387. package/dist/esm/components/ObjectLayout/ObjectLayout.js.map +1 -0
  388. package/dist/esm/components/ObjectLayout/Styles.d.ts +25 -0
  389. package/dist/esm/components/ObjectLayout/Styles.d.ts.map +1 -0
  390. package/dist/esm/components/ObjectLayout/Styles.js +76 -0
  391. package/dist/esm/components/ObjectLayout/Styles.js.map +1 -0
  392. package/dist/esm/components/ObjectLayout/index.d.ts +2 -0
  393. package/dist/esm/components/ObjectLayout/index.d.ts.map +1 -0
  394. package/dist/esm/components/ObjectLayout/index.js +2 -0
  395. package/dist/esm/components/ObjectLayout/index.js.map +1 -0
  396. package/dist/esm/components/ProgressBar/ProgressBar.d.ts +9 -2
  397. package/dist/esm/components/ProgressBar/ProgressBar.d.ts.map +1 -1
  398. package/dist/esm/components/ProgressBar/ProgressBar.js +14 -3
  399. package/dist/esm/components/ProgressBar/ProgressBar.js.map +1 -1
  400. package/dist/esm/components/ProgressBar/Styles.d.ts +2 -0
  401. package/dist/esm/components/ProgressBar/Styles.d.ts.map +1 -1
  402. package/dist/esm/components/ProgressBar/Styles.js +2 -2
  403. package/dist/esm/components/ProgressBar/Styles.js.map +1 -1
  404. package/dist/esm/components/PropertyList/PropertyList.d.ts +59 -0
  405. package/dist/esm/components/PropertyList/PropertyList.d.ts.map +1 -0
  406. package/dist/esm/components/PropertyList/PropertyList.js +171 -0
  407. package/dist/esm/components/PropertyList/PropertyList.js.map +1 -0
  408. package/dist/esm/components/PropertyList/Styles.d.ts +35 -0
  409. package/dist/esm/components/PropertyList/Styles.d.ts.map +1 -0
  410. package/dist/esm/components/PropertyList/Styles.js +97 -0
  411. package/dist/esm/components/PropertyList/Styles.js.map +1 -0
  412. package/dist/esm/components/PropertyList/index.d.ts +2 -0
  413. package/dist/esm/components/PropertyList/index.d.ts.map +1 -0
  414. package/dist/esm/components/PropertyList/index.js +2 -0
  415. package/dist/esm/components/PropertyList/index.js.map +1 -0
  416. package/dist/esm/components/ResizeHandle/ResizeHandle.d.ts +11 -0
  417. package/dist/esm/components/ResizeHandle/ResizeHandle.d.ts.map +1 -0
  418. package/dist/esm/components/ResizeHandle/ResizeHandle.js +29 -0
  419. package/dist/esm/components/ResizeHandle/ResizeHandle.js.map +1 -0
  420. package/dist/esm/components/ResizeHandle/Styles.d.ts +7 -0
  421. package/dist/esm/components/ResizeHandle/Styles.d.ts.map +1 -0
  422. package/dist/esm/components/ResizeHandle/Styles.js +19 -0
  423. package/dist/esm/components/ResizeHandle/Styles.js.map +1 -0
  424. package/dist/esm/components/ResizeHandle/index.d.ts +2 -0
  425. package/dist/esm/components/ResizeHandle/index.d.ts.map +1 -0
  426. package/dist/esm/components/ResizeHandle/index.js +2 -0
  427. package/dist/esm/components/ResizeHandle/index.js.map +1 -0
  428. package/dist/esm/components/Section/Section.d.ts +13 -0
  429. package/dist/esm/components/Section/Section.d.ts.map +1 -0
  430. package/dist/esm/components/Section/Section.js +40 -0
  431. package/dist/esm/components/Section/Section.js.map +1 -0
  432. package/dist/esm/components/Section/Styles.d.ts +6 -0
  433. package/dist/esm/components/Section/Styles.d.ts.map +1 -0
  434. package/dist/esm/components/Section/Styles.js +22 -0
  435. package/dist/esm/components/Section/Styles.js.map +1 -0
  436. package/dist/esm/components/Section/index.d.ts +2 -0
  437. package/dist/esm/components/Section/index.d.ts.map +1 -0
  438. package/dist/esm/components/Section/index.js +2 -0
  439. package/dist/esm/components/Section/index.js.map +1 -0
  440. package/dist/esm/components/Sheet/Sheet.d.ts +4 -0
  441. package/dist/esm/components/Sheet/Sheet.d.ts.map +1 -1
  442. package/dist/esm/components/Sheet/Sheet.js +8 -3
  443. package/dist/esm/components/Sheet/Sheet.js.map +1 -1
  444. package/dist/esm/components/Sheet/Styles.d.ts +2 -0
  445. package/dist/esm/components/Sheet/Styles.d.ts.map +1 -1
  446. package/dist/esm/components/Sheet/Styles.js +6 -2
  447. package/dist/esm/components/Sheet/Styles.js.map +1 -1
  448. package/dist/esm/components/Steppers/DateStepper/Styles.d.ts +1 -0
  449. package/dist/esm/components/Steppers/DateStepper/Styles.d.ts.map +1 -1
  450. package/dist/esm/components/Typography/Styles.d.ts +2 -2
  451. package/dist/esm/components/Typography/Styles.d.ts.map +1 -1
  452. package/dist/esm/components/Typography/Styles.js +6 -2
  453. package/dist/esm/components/Typography/Styles.js.map +1 -1
  454. package/dist/esm/components/Typography/Typography.d.ts +2 -2
  455. package/dist/esm/components/Typography/Typography.d.ts.map +1 -1
  456. package/dist/esm/components/Typography/Typography.js.map +1 -1
  457. package/dist/esm/components/Typography/Variants/Title3.d.ts +8 -0
  458. package/dist/esm/components/Typography/Variants/Title3.d.ts.map +1 -0
  459. package/dist/esm/components/Typography/Variants/Title3.js +18 -0
  460. package/dist/esm/components/Typography/Variants/Title3.js.map +1 -0
  461. package/dist/esm/components/Typography/index.d.ts +1 -0
  462. package/dist/esm/components/Typography/index.d.ts.map +1 -1
  463. package/dist/esm/components/Typography/index.js +1 -0
  464. package/dist/esm/components/Typography/index.js.map +1 -1
  465. package/dist/esm/components/index.d.ts +13 -0
  466. package/dist/esm/components/index.d.ts.map +1 -1
  467. package/dist/esm/components/index.js +13 -0
  468. package/dist/esm/components/index.js.map +1 -1
  469. package/dist/esm/hooks/index.d.ts +2 -0
  470. package/dist/esm/hooks/index.d.ts.map +1 -1
  471. package/dist/esm/hooks/index.js +2 -0
  472. package/dist/esm/hooks/index.js.map +1 -1
  473. package/dist/esm/hooks/useLongPress.d.ts +23 -0
  474. package/dist/esm/hooks/useLongPress.d.ts.map +1 -0
  475. package/dist/esm/hooks/useLongPress.js +82 -0
  476. package/dist/esm/hooks/useLongPress.js.map +1 -0
  477. package/dist/esm/hooks/useResizablePanel.d.ts +27 -0
  478. package/dist/esm/hooks/useResizablePanel.d.ts.map +1 -0
  479. package/dist/esm/hooks/useResizablePanel.js +98 -0
  480. package/dist/esm/hooks/useResizablePanel.js.map +1 -0
  481. package/dist/esm/utils/useContainerCss.d.ts +2 -0
  482. package/dist/esm/utils/useContainerCss.d.ts.map +1 -0
  483. package/dist/esm/utils/useContainerCss.js +12 -0
  484. package/dist/esm/utils/useContainerCss.js.map +1 -0
  485. package/dist/index.js +3366 -880
  486. package/dist/index.js.map +1 -1
  487. package/dist/index.min.js +1 -1
  488. package/dist/index.min.js.map +1 -1
  489. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ListRow.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_Styles","_useContainerCss","_excluded","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_extends","assign","bind","arguments","length","apply","_objectWithoutProperties","_objectWithoutPropertiesLoose","getOwnPropertySymbols","indexOf","propertyIsEnumerable","ListRow","exports","forwardRef","_ref","ref","sideAction","_ref$sideActionTop","sideActionTop","_ref$sideActionOffset","sideActionOffset","sideActionProps","_ref$divided","divided","_ref$hover","hover","className","children","rest","useContainerCss","CONTAINER_CSS","createElement","StyledListRow","$hover","classnames","StyledListRowSideAction","style","top","concat","StyledListRowDivider","displayName"],"sources":["../../../../src/components/ListRow/ListRow.tsx"],"sourcesContent":["import React, {\n CSSProperties,\n HTMLAttributes,\n ReactNode,\n forwardRef,\n} from \"react\";\n\nimport classnames from \"classnames\";\n\nimport {\n CONTAINER_CSS,\n StyledListRow,\n StyledListRowDivider,\n StyledListRowSideAction,\n} from \"./Styles\";\nimport { useContainerCss } from \"../../utils/useContainerCss\";\n\nexport interface IListRowProps extends HTMLAttributes<HTMLDivElement> {\n /** A control beside the card. It shows on hover, on focus, and always on touch. */\n sideAction?: ReactNode;\n /** The distance of the side action from the top of the row, in pixels. */\n sideActionTop?: number;\n /** The distance from the right edge of the row to the edge of the card, in pixels. */\n sideActionOffset?: number;\n /** Extra attributes for the box of the side action. */\n sideActionProps?: HTMLAttributes<HTMLSpanElement> & {\n \"data-testid\"?: string;\n };\n /** Draws a line under the row, inset 16px. */\n divided?: boolean;\n /** Highlights the row under the pointer. */\n hover?: boolean;\n}\n\nexport const ListRow = forwardRef<HTMLDivElement, IListRowProps>(\n (\n {\n sideAction,\n sideActionTop = 4,\n sideActionOffset = 0,\n sideActionProps,\n divided = false,\n hover = false,\n className,\n children,\n ...rest\n },\n ref\n ) => {\n useContainerCss(\"c-list-row-container\", CONTAINER_CSS);\n\n return (\n <StyledListRow\n {...rest}\n ref={ref}\n $hover={hover}\n className={classnames(\"c-list-row\", className)}\n >\n {children}\n {sideAction ? (\n <StyledListRowSideAction\n {...sideActionProps}\n className={classnames(\n \"c-list-row__side-action\",\n sideActionProps?.className\n )}\n style={\n {\n top: sideActionTop,\n \"--side-offset\": `${sideActionOffset}px`,\n } as CSSProperties\n }\n >\n {sideAction}\n </StyledListRowSideAction>\n ) : null}\n {divided ? (\n <StyledListRowDivider\n aria-hidden=\"true\"\n className=\"c-list-row__divider\"\n />\n ) : null}\n </StyledListRow>\n );\n }\n);\n\nListRow.displayName = \"ListRow\";\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.StyledListRowSideAction = exports.StyledListRowDivider = exports.StyledListRow = exports.CONTAINER_CSS = void 0;
7
+ var _styledComponents = _interopRequireDefault(require("styled-components"));
8
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
9
+ var CONTAINER_CSS = exports.CONTAINER_CSS = "\n@container (min-width: 900px) {\n .c-list-row > .c-list-row__side-action {\n right: calc(-32px - var(--side-offset));\n width: 32px;\n }\n}\n";
10
+ var StyledListRowSideAction = exports.StyledListRowSideAction = _styledComponents.default.span.withConfig({
11
+ displayName: "Styles__StyledListRowSideAction",
12
+ componentId: "sc-ef2wrc-0"
13
+ })(["position:absolute;right:calc(-16px - var(--side-offset));display:flex;justify-content:center;width:16px;opacity:0;&:has([aria-expanded=\"true\"]),&:has([open]),&:has(.open){opacity:1;}@media (hover:none){opacity:1;}"]);
14
+ var StyledListRowDivider = exports.StyledListRowDivider = _styledComponents.default.div.withConfig({
15
+ displayName: "Styles__StyledListRowDivider",
16
+ componentId: "sc-ef2wrc-1"
17
+ })(["height:1px;margin:0 16px;background-color:var(--border-raised);"]);
18
+ var StyledListRow = exports.StyledListRow = _styledComponents.default.div.withConfig({
19
+ displayName: "Styles__StyledListRow",
20
+ componentId: "sc-ef2wrc-2"
21
+ })(["position:relative;", " &:hover > ", ",&:focus-within > ", "{opacity:1;}&:hover > ", ",&:has(+ .c-list-row:hover) > ", "{background-color:transparent;}"], function (_ref) {
22
+ var $hover = _ref.$hover;
23
+ return $hover && "\n &:hover {\n background-color: var(--color-theme-200);\n }\n ";
24
+ }, StyledListRowSideAction, StyledListRowSideAction, StyledListRowDivider, StyledListRowDivider);
25
+ //# sourceMappingURL=Styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Styles.js","names":["_styledComponents","_interopRequireDefault","require","e","__esModule","default","CONTAINER_CSS","exports","StyledListRowSideAction","styled","span","withConfig","displayName","componentId","StyledListRowDivider","div","StyledListRow","_ref","$hover"],"sources":["../../../../src/components/ListRow/Styles.ts"],"sourcesContent":["import styled from \"styled-components\";\n\nexport const CONTAINER_CSS = `\n@container (min-width: 900px) {\n .c-list-row > .c-list-row__side-action {\n right: calc(-32px - var(--side-offset));\n width: 32px;\n }\n}\n`;\n\nexport const StyledListRowSideAction = styled.span`\n position: absolute;\n right: calc(-16px - var(--side-offset));\n display: flex;\n justify-content: center;\n width: 16px;\n opacity: 0;\n\n &:has([aria-expanded=\"true\"]),\n &:has([open]),\n &:has(.open) {\n opacity: 1;\n }\n\n @media (hover: none) {\n opacity: 1;\n }\n`;\n\nexport const StyledListRowDivider = styled.div`\n height: 1px;\n margin: 0 16px;\n background-color: var(--border-raised);\n`;\n\nexport const StyledListRow = styled.div<{ $hover: boolean }>`\n position: relative;\n\n ${({ $hover }) =>\n $hover &&\n `\n &:hover {\n background-color: var(--color-theme-200);\n }\n `}\n\n &:hover > ${StyledListRowSideAction}, &:focus-within > ${StyledListRowSideAction} {\n opacity: 1;\n }\n\n &:hover\n > ${StyledListRowDivider},\n &:has(+ .c-list-row:hover)\n > ${StyledListRowDivider} {\n background-color: transparent;\n }\n`;\n"],"mappings":";;;;;;AAAA,IAAAA,iBAAA,GAAAC,sBAAA,CAAAC,OAAA;AAAuC,SAAAD,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAEhC,IAAMG,aAAa,GAAAC,OAAA,CAAAD,aAAA,4JAOzB;AAEM,IAAME,uBAAuB,GAAAD,OAAA,CAAAC,uBAAA,GAAGC,yBAAM,CAACC,IAAI,CAAAC,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,+NAiBjD;AAEM,IAAMC,oBAAoB,GAAAP,OAAA,CAAAO,oBAAA,GAAGL,yBAAM,CAACM,GAAG,CAAAJ,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,uEAI7C;AAEM,IAAMG,aAAa,GAAAT,OAAA,CAAAS,aAAA,GAAGP,yBAAM,CAACM,GAAG,CAAAJ,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,+JAGnC,UAAAI,IAAA;EAAA,IAAGC,MAAM,GAAAD,IAAA,CAANC,MAAM;EAAA,OACTA,MAAM,iFAKP;AAAA,GAEWV,uBAAuB,EAAsBA,uBAAuB,EAK1EM,oBAAoB,EAEpBA,oBAAoB,CAG3B","ignoreList":[]}
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ var _ListRow = require("./ListRow");
7
+ Object.keys(_ListRow).forEach(function (key) {
8
+ if (key === "default" || key === "__esModule") return;
9
+ if (key in exports && exports[key] === _ListRow[key]) return;
10
+ Object.defineProperty(exports, key, {
11
+ enumerable: true,
12
+ get: function get() {
13
+ return _ListRow[key];
14
+ }
15
+ });
16
+ });
17
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["_ListRow","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get"],"sources":["../../../../src/components/ListRow/index.ts"],"sourcesContent":["export * from \"./ListRow\";\n"],"mappings":";;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,QAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,QAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,IAAA;MAAA,OAAAT,QAAA,CAAAK,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
@@ -7,7 +7,7 @@ exports.SkeletonLoader = void 0;
7
7
  var _react = _interopRequireWildcard(require("react"));
8
8
  var _classnames = _interopRequireDefault(require("classnames"));
9
9
  var _Styles = require("./Styles");
10
- var _excluded = ["className"];
10
+ var _excluded = ["className", "width", "height", "radius", "animation"];
11
11
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
12
12
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
13
13
  function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
@@ -15,10 +15,19 @@ function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i
15
15
  function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }
16
16
  var SkeletonLoader = exports.SkeletonLoader = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
17
17
  var className = _ref.className,
18
+ width = _ref.width,
19
+ height = _ref.height,
20
+ radius = _ref.radius,
21
+ _ref$animation = _ref.animation,
22
+ animation = _ref$animation === void 0 ? "shimmer" : _ref$animation,
18
23
  rest = _objectWithoutProperties(_ref, _excluded);
19
24
  return /*#__PURE__*/_react.default.createElement(_Styles.StyledSkeletonLoader, _extends({
20
25
  ref: ref,
21
- className: (0, _classnames.default)("c-loader c-loader--linear", className)
26
+ className: (0, _classnames.default)("c-loader c-loader--linear", className),
27
+ $width: width,
28
+ $height: height,
29
+ $radius: radius,
30
+ $pulse: animation === "pulse"
22
31
  }, rest));
23
32
  });
24
33
  SkeletonLoader.displayName = "SkeletonLoader";
@@ -1 +1 @@
1
- {"version":3,"file":"SkeletonLoader.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_Styles","_excluded","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_extends","assign","bind","arguments","length","apply","_objectWithoutProperties","_objectWithoutPropertiesLoose","getOwnPropertySymbols","indexOf","propertyIsEnumerable","SkeletonLoader","exports","forwardRef","_ref","ref","className","rest","createElement","StyledSkeletonLoader","classNames","displayName"],"sources":["../../../../../src/components/Loaders/Skeleton/SkeletonLoader.tsx"],"sourcesContent":["import React, { forwardRef } from \"react\";\n\nimport classNames from \"classnames\";\n\nimport { StyledSkeletonLoader } from \"./Styles\";\n\nexport const SkeletonLoader = forwardRef<\n HTMLDivElement,\n React.ComponentPropsWithoutRef<\"div\">\n>(({ className, ...rest }, ref) => {\n return (\n <StyledSkeletonLoader\n ref={ref}\n className={classNames(\"c-loader c-loader--linear\", className)}\n {...rest}\n />\n );\n});\n\nSkeletonLoader.displayName = \"SkeletonLoader\";\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"SkeletonLoader.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_Styles","_excluded","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_extends","assign","bind","arguments","length","apply","_objectWithoutProperties","_objectWithoutPropertiesLoose","getOwnPropertySymbols","indexOf","propertyIsEnumerable","SkeletonLoader","exports","forwardRef","_ref","ref","className","width","height","radius","_ref$animation","animation","rest","createElement","StyledSkeletonLoader","classNames","$width","$height","$radius","$pulse","displayName"],"sources":["../../../../../src/components/Loaders/Skeleton/SkeletonLoader.tsx"],"sourcesContent":["import React, { forwardRef } from \"react\";\n\nimport classNames from \"classnames\";\n\nimport { StyledSkeletonLoader } from \"./Styles\";\n\nexport interface SkeletonLoaderProps\n extends React.ComponentPropsWithoutRef<\"div\"> {\n /** A number is in pixels. The default is 70%. */\n width?: number | string;\n /** A number is in pixels. The default is 16px. */\n height?: number | string;\n /** A number is in pixels. The default is 8px. */\n radius?: number | string;\n /** \"pulse\" is a solid block that fades in and out, for the skeleton of a page. */\n animation?: \"shimmer\" | \"pulse\";\n}\n\nexport const SkeletonLoader = forwardRef<HTMLDivElement, SkeletonLoaderProps>(\n (\n { className, width, height, radius, animation = \"shimmer\", ...rest },\n ref\n ) => {\n return (\n <StyledSkeletonLoader\n ref={ref}\n className={classNames(\"c-loader c-loader--linear\", className)}\n $width={width}\n $height={height}\n $radius={radius}\n $pulse={animation === \"pulse\"}\n {...rest}\n />\n );\n }\n);\n\nSkeletonLoader.displayName = \"SkeletonLoader\";\n"],"mappings":"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","ignoreList":[]}
@@ -8,8 +8,20 @@ var _styledComponents = _interopRequireWildcard(require("styled-components"));
8
8
  var _themes = require("../../../utils/themes");
9
9
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
10
10
  var linearAnimation = (0, _styledComponents.keyframes)(["0%{background-position:left;}100%{background-position:right;}"]);
11
+ var pulseAnimation = (0, _styledComponents.keyframes)(["50%{opacity:0.5;}"]);
12
+ var toCssSize = function toCssSize(value) {
13
+ return typeof value === "number" ? "".concat(value, "px") : value;
14
+ };
11
15
  var StyledSkeletonLoader = exports.StyledSkeletonLoader = _styledComponents.default.div.withConfig({
12
16
  displayName: "Styles__StyledSkeletonLoader",
13
17
  componentId: "sc-1n0a2yl-0"
14
- })(["width:70%;background:linear-gradient( 90deg,rgba(255,255,255,0) 20%,rgba(0,0,0,0.05) 50%,rgba(255,255,255,0) 60% );background-size:400%;height:16px;border-radius:8px;", " &{background:linear-gradient( 90deg,rgba(255,255,255,0) 20%,rgba(0,0,0,0.2) 50%,rgba(255,255,255,0) 60% );background-size:500%;}animation-duration:1s;animation-iteration-count:infinite;animation-name:", ";animation-timing-function:linear;animation-direction:reverse;"], _themes.DARK_THEME_SELECTOR, linearAnimation);
18
+ })(["width:70%;background:linear-gradient( 90deg,rgba(255,255,255,0) 20%,rgba(0,0,0,0.05) 50%,rgba(255,255,255,0) 60% );background-size:400%;height:16px;border-radius:8px;", " &{background:linear-gradient( 90deg,rgba(255,255,255,0) 20%,rgba(0,0,0,0.2) 50%,rgba(255,255,255,0) 60% );background-size:500%;}animation-duration:1s;animation-iteration-count:infinite;animation-name:", ";animation-timing-function:linear;animation-direction:reverse;", " ", " ", " ", ""], _themes.DARK_THEME_SELECTOR, linearAnimation, function (props) {
19
+ return props.$width !== undefined && (0, _styledComponents.css)(["width:", ";"], toCssSize(props.$width));
20
+ }, function (props) {
21
+ return props.$height !== undefined && (0, _styledComponents.css)(["height:", ";"], toCssSize(props.$height));
22
+ }, function (props) {
23
+ return props.$radius !== undefined && (0, _styledComponents.css)(["border-radius:", ";"], toCssSize(props.$radius));
24
+ }, function (props) {
25
+ return props.$pulse && (0, _styledComponents.css)(["&&{background:var(--color-theme-300);animation:", " 2s cubic-bezier(0.4,0,0.6,1) infinite;}"], pulseAnimation);
26
+ });
15
27
  //# sourceMappingURL=Styles.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Styles.js","names":["_styledComponents","_interopRequireWildcard","require","_themes","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","linearAnimation","keyframes","StyledSkeletonLoader","exports","styled","div","withConfig","displayName","componentId","DARK_THEME_SELECTOR"],"sources":["../../../../../src/components/Loaders/Skeleton/Styles.ts"],"sourcesContent":["import styled, { keyframes } from \"styled-components\";\n\nimport { DARK_THEME_SELECTOR } from \"../../../utils/themes\";\n\nconst linearAnimation = keyframes`\n 0% {\n background-position: left;\n }\n 100% {\n background-position: right;\n }\n`;\n\nexport const StyledSkeletonLoader = styled.div`\n width: 70%;\n background: linear-gradient(\n 90deg,\n rgba(255, 255, 255, 0) 20%,\n rgba(0, 0, 0, 0.05) 50%,\n rgba(255, 255, 255, 0) 60%\n );\n background-size: 400%;\n height: 16px;\n border-radius: 8px;\n ${DARK_THEME_SELECTOR} & {\n background: linear-gradient(\n 90deg,\n rgba(255, 255, 255, 0) 20%,\n rgba(0, 0, 0, 0.2) 50%,\n rgba(255, 255, 255, 0) 60%\n );\n background-size: 500%;\n }\n animation-duration: 1s;\n animation-iteration-count: infinite;\n animation-name: ${linearAnimation};\n animation-timing-function: linear;\n animation-direction: reverse;\n`;\n"],"mappings":";;;;;;AAAA,IAAAA,iBAAA,GAAAC,uBAAA,CAAAC,OAAA;AAEA,IAAAC,OAAA,GAAAD,OAAA;AAA4D,SAAAD,wBAAAG,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAL,uBAAA,YAAAA,wBAAAG,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,cAAAM,EAAA,IAAAd,CAAA,gBAAAc,EAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAc,EAAA,OAAAP,CAAA,IAAAD,CAAA,GAAAW,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAnB,CAAA,EAAAc,EAAA,OAAAP,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAM,EAAA,EAAAP,CAAA,IAAAC,CAAA,CAAAM,EAAA,IAAAd,CAAA,CAAAc,EAAA,WAAAN,CAAA,KAAAR,CAAA,EAAAC,CAAA;AAE5D,IAAMmB,eAAe,OAAGC,2BAAS,oEAOhC;AAEM,IAAMC,oBAAoB,GAAAC,OAAA,CAAAD,oBAAA,GAAGE,yBAAM,CAACC,GAAG,CAAAC,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,8bAW1CC,2BAAmB,EAWHT,eAAe,CAGlC","ignoreList":[]}
1
+ {"version":3,"file":"Styles.js","names":["_styledComponents","_interopRequireWildcard","require","_themes","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","linearAnimation","keyframes","pulseAnimation","toCssSize","value","concat","StyledSkeletonLoader","exports","styled","div","withConfig","displayName","componentId","DARK_THEME_SELECTOR","props","$width","undefined","css","$height","$radius","$pulse"],"sources":["../../../../../src/components/Loaders/Skeleton/Styles.ts"],"sourcesContent":["import styled, { css, keyframes } from \"styled-components\";\n\nimport { DARK_THEME_SELECTOR } from \"../../../utils/themes\";\n\nconst linearAnimation = keyframes`\n 0% {\n background-position: left;\n }\n 100% {\n background-position: right;\n }\n`;\n\nconst pulseAnimation = keyframes`\n 50% {\n opacity: 0.5;\n }\n`;\n\nconst toCssSize = (value: number | string) =>\n typeof value === \"number\" ? `${value}px` : value;\n\ninterface SkeletonLook {\n $width?: number | string;\n $height?: number | string;\n $radius?: number | string;\n $pulse?: boolean;\n}\n\nexport const StyledSkeletonLoader = styled.div<SkeletonLook>`\n width: 70%;\n background: linear-gradient(\n 90deg,\n rgba(255, 255, 255, 0) 20%,\n rgba(0, 0, 0, 0.05) 50%,\n rgba(255, 255, 255, 0) 60%\n );\n background-size: 400%;\n height: 16px;\n border-radius: 8px;\n ${DARK_THEME_SELECTOR} & {\n background: linear-gradient(\n 90deg,\n rgba(255, 255, 255, 0) 20%,\n rgba(0, 0, 0, 0.2) 50%,\n rgba(255, 255, 255, 0) 60%\n );\n background-size: 500%;\n }\n animation-duration: 1s;\n animation-iteration-count: infinite;\n animation-name: ${linearAnimation};\n animation-timing-function: linear;\n animation-direction: reverse;\n\n ${(props) =>\n props.$width !== undefined &&\n css`\n width: ${toCssSize(props.$width)};\n `}\n ${(props) =>\n props.$height !== undefined &&\n css`\n height: ${toCssSize(props.$height)};\n `}\n ${(props) =>\n props.$radius !== undefined &&\n css`\n border-radius: ${toCssSize(props.$radius)};\n `}\n ${(props) =>\n props.$pulse &&\n css`\n && {\n background: var(--color-theme-300);\n animation: ${pulseAnimation} 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;\n }\n `}\n`;\n"],"mappings":";;;;;;AAAA,IAAAA,iBAAA,GAAAC,uBAAA,CAAAC,OAAA;AAEA,IAAAC,OAAA,GAAAD,OAAA;AAA4D,SAAAD,wBAAAG,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAL,uBAAA,YAAAA,wBAAAG,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,cAAAM,EAAA,IAAAd,CAAA,gBAAAc,EAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAc,EAAA,OAAAP,CAAA,IAAAD,CAAA,GAAAW,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAnB,CAAA,EAAAc,EAAA,OAAAP,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAM,EAAA,EAAAP,CAAA,IAAAC,CAAA,CAAAM,EAAA,IAAAd,CAAA,CAAAc,EAAA,WAAAN,CAAA,KAAAR,CAAA,EAAAC,CAAA;AAE5D,IAAMmB,eAAe,OAAGC,2BAAS,oEAOhC;AAED,IAAMC,cAAc,OAAGD,2BAAS,wBAI/B;AAED,IAAME,SAAS,GAAG,SAAZA,SAASA,CAAIC,KAAsB;EAAA,OACvC,OAAOA,KAAK,KAAK,QAAQ,MAAAC,MAAA,CAAMD,KAAK,UAAOA,KAAK;AAAA;AAS3C,IAAME,oBAAoB,GAAAC,OAAA,CAAAD,oBAAA,GAAGE,yBAAM,CAACC,GAAG,CAAAC,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,idAW1CC,2BAAmB,EAWHb,eAAe,EAI/B,UAACc,KAAK;EAAA,OACNA,KAAK,CAACC,MAAM,KAAKC,SAAS,QAC1BC,qBAAG,mBACQd,SAAS,CAACW,KAAK,CAACC,MAAM,CAAC,CACjC;AAAA,GACD,UAACD,KAAK;EAAA,OACNA,KAAK,CAACI,OAAO,KAAKF,SAAS,QAC3BC,qBAAG,oBACSd,SAAS,CAACW,KAAK,CAACI,OAAO,CAAC,CACnC;AAAA,GACD,UAACJ,KAAK;EAAA,OACNA,KAAK,CAACK,OAAO,KAAKH,SAAS,QAC3BC,qBAAG,2BACgBd,SAAS,CAACW,KAAK,CAACK,OAAO,CAAC,CAC1C;AAAA,GACD,UAACL,KAAK;EAAA,OACNA,KAAK,CAACM,MAAM,QACZH,qBAAG,mGAGcf,cAAc,CAE9B;AAAA,EACJ","ignoreList":[]}
@@ -187,6 +187,7 @@ var Menu = exports.Menu = function Menu(_ref4) {
187
187
  handleScroll = _ref4$handleScroll === void 0 ? true : _ref4$handleScroll,
188
188
  _ref4$mode = _ref4.mode,
189
189
  mode = _ref4$mode === void 0 ? "normal" : _ref4$mode,
190
+ width = _ref4.width,
190
191
  _ref4$open = _ref4.open,
191
192
  defaultOpen = _ref4$open === void 0 ? false : _ref4$open,
192
193
  onOpen = _ref4.onOpen,
@@ -475,6 +476,7 @@ var Menu = exports.Menu = function Menu(_ref4) {
475
476
  modifiers: popperModifiers,
476
477
  transition: true
477
478
  }, function (_ref5) {
479
+ var _elementRef$current2;
478
480
  var placement = _ref5.placement,
479
481
  transitionProps = _ref5.transitionProps;
480
482
  return /*#__PURE__*/_react.default.createElement(_Transitions.Grow, {
@@ -491,7 +493,8 @@ var Menu = exports.Menu = function Menu(_ref4) {
491
493
  $mode: mode,
492
494
  onMouseDown: onMenuClick,
493
495
  style: {
494
- pointerEvents: open ? "auto" : "none"
496
+ pointerEvents: open ? "auto" : "none",
497
+ width: width === "target" ? (_elementRef$current2 = elementRef.current) === null || _elementRef$current2 === void 0 ? void 0 : _elementRef$current2.offsetWidth : width
495
498
  }
496
499
  }, /*#__PURE__*/_react.default.createElement(_context.MenuContextProvider, {
497
500
  value: {
@@ -1 +1 @@
1
- {"version":3,"file":"Menu.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_context","_Styles","_helpers","_useForkRef","_Overlay","_Popper","_Transitions","_Window","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","a","_arrayLikeToArray","toString","slice","constructor","name","Array","from","test","length","l","Symbol","iterator","u","next","done","push","value","return","isArray","isFocusVisible","element","Boolean","matches","_unused","TRIGGER","triggerOf","node","_node$querySelector","querySelector","visibleBoxOf","rects","getBoundingClientRect","children","map","filter","rect","width","height","left","Math","min","right","max","top","bottom","offsetToVisibleBox","options","offset","_ref","placement","wrapper","box","_placement$split","split","_placement$split2","side","align","vertical","start","end","skidding","distance","TABBABLE","returnFocusOptions","visible","focusVisible","focusTabNeighbor","trigger","step","menu","nodes","document","querySelectorAll","tabIndex","disabled","closest","contains","indexOf","index","focus","activeElement","isOnLayerAbove","target","own","layer","Element","layerZ","Number","style","zIndex","ownZ","compareDocumentPosition","Node","DOCUMENT_POSITION_FOLLOWING","PRERENDER_DELAY","PRERENDER_GAP","prerenderQueue","prerenderTimer","runPrerenderQueue","_prerenderQueue$shift","shift","setTimeout","queuePrerender","render","splice","FocusInside","_ref2","onFocused","ref","useRef","useLayoutEffect","_ref$current","_ref3","current","parentElement","first","find","preventScroll","createElement","hidden","Menu","exports","_ref4","_ref4$disableFocusLoc","disableFocusLock","onMenuClick","_ref4$handleScroll","handleScroll","_ref4$mode","mode","_ref4$open","open","defaultOpen","onOpen","onClose","onBeforeClose","_ref4$position","position","className","menuClassName","popperClassName","backgroundElementClass","_ref4$windowAbsolutel","windowAbsolutelyPositioned","onPopperOpen","_ref4$closeOnTab","closeOnTab","_ref4$prerender","prerender","_ref4$scopedFocus","scopedFocus","_useState","useState","_useState2","setOpen","_useState3","_useState4","exited","setExited","elementRef","isOpenAtLeastOnce","wasOpen","focusBeforeOpen","focusWasVisible","returnFocusTo","popperRef","windowRef","tabOut","useEffect","expandedTrigger","checkedTrigger","triggerOwnsExpanded","hasAttribute","setAttribute","removeAttribute","handleRef","useForkRef","undefined","_useState5","_useState6","childNode","setChildNode","popperModifiers","useMemo","HTMLElement","handleOpen","useCallback","event","_target$props","preventDefault","stopPropagation","props","onClick","handleClose","handleTabOut","key","defaultPrevented","shiftKey","childProps","forceClose","_useState7","_useState8","focusedInside","setFocusedInside","markFocusedInside","_useState9","_useState0","prerenderStep","setPrerenderStep","handleCloseRef","handleTargetClose","targetProps","pressInside","markPressInside","nativeEvent","closeOnPressOutside","_elementRef$current","timer","addEventListener","clearTimeout","removeEventListener","previous","tabbedTo","returnTo","isConnected","keepFocusOut","_popperRef$current","_returnFocusTo$curren","Fragment","React","cloneElement","Portal","MenuContextProvider","Window","onKeyDown","disableReturnFocus","disableScrollLock","isolateScroll","disableCloseOnEsc","onPointerDownCapture","pointerEvents","Overlay","disableBackgroundColor","Popper","anchorEl","afterWrite","modifiers","transition","_ref5","transitionProps","Grow","in","onEnter","onExited","_transitionProps$onEx","StyledMenu","classnames","concat","$mode","onMouseDown","displayName"],"sources":["../../../../src/components/Menu/Menu.tsx"],"sourcesContent":["import React, {\n useRef,\n FC,\n ReactNode,\n MouseEvent,\n KeyboardEvent,\n useState,\n useCallback,\n useEffect,\n useLayoutEffect,\n useMemo,\n ReactElement,\n Ref,\n} from \"react\";\n\nimport { Placement } from \"@popperjs/core\";\nimport classnames from \"classnames\";\n\nimport { MenuContextProvider } from \"./context\";\nimport { StyledMenu } from \"./Styles\";\nimport { Portal } from \"../../helpers\";\nimport useForkRef from \"../../utils/useForkRef\";\nimport { Overlay } from \"../Overlay\";\nimport { Popper } from \"../Popper\";\nimport { Grow } from \"../Transitions\";\nimport { Window } from \"../Window\";\n\ninterface ElementWithRef<T> extends ReactElement {\n ref?: Ref<T>;\n}\n\n// source: https://twitter.com/mattpocockuk/status/1671908303918473217/photo/1\n// eslint-disable-next-line @typescript-eslint/ban-types\nexport type MenuMode = \"normal\" | \"wider\" | \"tiny\" | \"widest\";\n\nexport interface IMenu {\n /** Menu content */\n children:\n | ReactNode\n | ((childProps: { forceClose: () => void }) => JSX.Element);\n /** On menu element click */\n onMenuClick?: (event: MouseEvent<HTMLElement>) => void;\n /** Handle scroll bar */\n handleScroll?: boolean;\n /** Disable Focus Lock */\n disableFocusLock?: boolean;\n /** Menu width mode */\n mode?: MenuMode;\n /** Should menu be open when it's mounted */\n open?: boolean;\n /** Callback triggered when modal has been opened */\n onOpen?: () => void;\n /** Callback triggered when modal has been closed */\n onClose?: () => void;\n /** Before close callback */\n onBeforeClose?: () => boolean;\n /** Position Menu */\n position?: Placement;\n /** Target element */\n target?: ElementWithRef<Element>;\n className?: string;\n /** Menu classes */\n menuClassName?: string;\n /** Popper class name*/\n popperClassName?: string;\n /** Background style for clickable element after the menu is open (opacity, color, etc...) */\n backgroundElementClass?: string;\n /** Should Window be positioned absolutely */\n windowAbsolutelyPositioned?: boolean;\n /** Popper on open */\n onPopperOpen?: (...args) => void;\n /** Tab and Shift+Tab close the menu and move the focus on from the target, as they would on the target itself */\n closeOnTab?: boolean;\n /** Render the content once, hidden, soon after this turns on, so the first open is as fast as the next ones */\n prerender?: boolean;\n /** Move the focus into the menu itself, so the focus lock never searches the whole page for a place to put it */\n scopedFocus?: boolean;\n}\n\nconst isFocusVisible = (element: Element | null) => {\n try {\n return Boolean(element?.matches(\":focus-visible\"));\n } catch {\n return false;\n }\n};\n\nconst TRIGGER = 'button, [role=\"button\"], a[href]';\n\n// A target can wrap its button, as a div around a Tooltip or a CounterButton does.\nconst triggerOf = (node: HTMLElement) =>\n node.matches(TRIGGER)\n ? node\n : node.querySelector<HTMLElement>(TRIGGER) ?? node;\n\nconst visibleBoxOf = (node: HTMLElement) => {\n // A child hidden by a breakpoint has an empty box at 0,0, so it must not count.\n const rects = [\n node.getBoundingClientRect(),\n ...Array.from(node.children)\n .map((element) => element.getBoundingClientRect())\n .filter((rect) => rect.width > 0 || rect.height > 0),\n ];\n\n return {\n left: Math.min(...rects.map((rect) => rect.left)),\n right: Math.max(...rects.map((rect) => rect.right)),\n top: Math.min(...rects.map((rect) => rect.top)),\n bottom: Math.max(...rects.map((rect) => rect.bottom)),\n };\n};\n\n// A control group pulls a wrapped button out of its wrapper by negative margins, so the menu lines up with the button.\nconst offsetToVisibleBox = (node: HTMLElement) => ({\n name: \"offset\",\n options: {\n offset: ({ placement }: { placement: Placement }): [number, number] => {\n if (triggerOf(node) === node) {\n return [0, 0];\n }\n\n const wrapper = node.getBoundingClientRect();\n const box = visibleBoxOf(node);\n const [side, align] = placement.split(\"-\");\n const vertical = side === \"top\" || side === \"bottom\";\n const start = vertical ? \"left\" : \"top\";\n const end = vertical ? \"right\" : \"bottom\";\n const skidding =\n align === \"start\"\n ? box[start] - wrapper[start]\n : align === \"end\"\n ? box[end] - wrapper[end]\n : (box[start] + box[end] - wrapper[start] - wrapper[end]) / 2;\n const distance = {\n bottom: box.bottom - wrapper.bottom,\n top: wrapper.top - box.top,\n right: box.right - wrapper.right,\n left: wrapper.left - box.left,\n }[side];\n\n return [skidding, distance ?? 0];\n },\n },\n});\n\nconst TABBABLE =\n 'a[href], button, input, select, textarea, iframe, [tabindex], [contenteditable=\"true\"]';\n\n// A menu opened with the pointer hands the focus back without a focus ring, so its trigger does not stay lit.\nconst returnFocusOptions = (visible: boolean) =>\n ({ focusVisible: visible } as FocusOptions);\n\n// Moves the focus where a Tab or Shift+Tab on the trigger would go. The closing menu itself does not count.\nconst focusTabNeighbor = (\n trigger: HTMLElement,\n step: 1 | -1,\n menu: HTMLElement | null\n) => {\n const nodes = Array.from(\n document.querySelectorAll<HTMLElement>(TABBABLE)\n ).filter(\n (node) =>\n node === trigger ||\n (node.tabIndex >= 0 &&\n !(node as HTMLButtonElement).disabled &&\n !node.closest(\"[inert]\") &&\n !menu?.contains(node))\n );\n\n const from = nodes.indexOf(trigger);\n\n for (\n let index = from + step;\n from !== -1 && index >= 0 && index < nodes.length;\n index += step\n ) {\n nodes[index].focus(returnFocusOptions(true));\n\n if (document.activeElement === nodes[index]) {\n return nodes[index];\n }\n }\n\n return null;\n};\n\n// A press on a layer above the menu, such as a dialog it opened, never reached the old overlay either.\nconst isOnLayerAbove = (\n target: EventTarget | null,\n own: HTMLElement | null\n) => {\n const layer =\n target instanceof Element ? target.closest<HTMLElement>(\".c-window\") : null;\n\n if (!layer || !own || layer === own) {\n return false;\n }\n\n const layerZ = Number(layer.style.zIndex) || 0;\n const ownZ = Number(own.style.zIndex) || 0;\n\n return (\n layerZ > ownZ ||\n (layerZ === ownZ &&\n Boolean(\n own.compareDocumentPosition(layer) & Node.DOCUMENT_POSITION_FOLLOWING\n ))\n );\n};\n\nconst PRERENDER_DELAY = 50;\nconst PRERENDER_GAP = 50;\nconst prerenderQueue: (() => void)[] = [];\nlet prerenderTimer: ReturnType<typeof setTimeout> | null = null;\n\nconst runPrerenderQueue = () => {\n prerenderQueue.shift()?.();\n prerenderTimer = prerenderQueue.length\n ? setTimeout(runPrerenderQueue, PRERENDER_GAP)\n : null;\n};\n\n// One menu at a time, a moment after the caller turns it on, so no frame carries more than one render.\nconst queuePrerender = (render: () => void) => {\n prerenderQueue.push(render);\n\n if (!prerenderTimer) {\n prerenderTimer = setTimeout(runPrerenderQueue, PRERENDER_DELAY);\n }\n\n return () => {\n const index = prerenderQueue.indexOf(render);\n\n if (index !== -1) {\n prerenderQueue.splice(index, 1);\n }\n };\n};\n\n// Its layout effect runs before the popper ref is set, so it finds the menu through its own node.\nconst FocusInside: FC<{ onFocused: () => void }> = ({ onFocused }) => {\n const ref = useRef<HTMLSpanElement>(null);\n\n useLayoutEffect(() => {\n const menu = ref.current?.parentElement;\n\n if (!menu) {\n return;\n }\n\n if (menu.contains(document.activeElement)) {\n onFocused();\n return;\n }\n\n const first = Array.from(menu.querySelectorAll<HTMLElement>(TABBABLE)).find(\n (node) => node.tabIndex >= 0 && !(node as HTMLButtonElement).disabled\n );\n\n (first ?? menu.closest<HTMLElement>(\"[tabindex]\"))?.focus({\n preventScroll: true,\n });\n onFocused();\n }, [onFocused]);\n\n return <span ref={ref} hidden />;\n};\n\nexport const Menu: FC<IMenu> = ({\n children,\n disableFocusLock = false,\n onMenuClick,\n handleScroll = true,\n mode = \"normal\",\n open: defaultOpen = false,\n onOpen,\n onClose,\n onBeforeClose,\n position = \"bottom-start\",\n target,\n className,\n menuClassName,\n popperClassName,\n backgroundElementClass,\n windowAbsolutelyPositioned = false,\n onPopperOpen,\n closeOnTab = false,\n prerender = false,\n scopedFocus = false,\n}) => {\n const [open, setOpen] = useState(defaultOpen);\n const [exited, setExited] = useState(!defaultOpen);\n // The trigger node lives in a ref. In state it would render every menu of a list again right after it mounts.\n const elementRef = useRef<HTMLElement | null>(null);\n const isOpenAtLeastOnce = useRef(false);\n const wasOpen = useRef(open);\n const focusBeforeOpen = useRef<Element | null>(null);\n const focusWasVisible = useRef(false);\n const returnFocusTo = useRef<HTMLElement | null>(null);\n const popperRef = useRef<HTMLDivElement | null>(null);\n const windowRef = useRef<HTMLDivElement | null>(null);\n const tabOut = useRef<1 | -1 | 0>(0);\n\n // Read on the render that opens the menu, before the focus lock moves the focus inside it.\n if (open && !wasOpen.current && typeof document !== \"undefined\") {\n focusBeforeOpen.current = document.activeElement;\n focusWasVisible.current = isFocusVisible(document.activeElement);\n }\n wasOpen.current = open;\n\n useEffect(() => {\n setOpen(defaultOpen);\n }, [defaultOpen]);\n\n useEffect(() => {\n if (open) {\n setExited(false);\n }\n }, [open]);\n\n // Set on the node itself, so the trigger gets it also through a wrapper such as Tooltip. It runs after every\n // render, because the trigger node lives in a ref and a new node brings no render of its own.\n const expandedTrigger = useRef<HTMLElement | null>(null);\n const checkedTrigger = useRef<HTMLElement | null>(null);\n const triggerOwnsExpanded = useRef(false);\n\n useEffect(() => {\n const node = elementRef.current;\n\n if (!node) {\n return;\n }\n\n const trigger = triggerOf(node);\n\n // A trigger that renders its own aria-expanded keeps it, so the menu never clears its \"false\".\n if (checkedTrigger.current !== trigger) {\n checkedTrigger.current = trigger;\n triggerOwnsExpanded.current = trigger.hasAttribute(\"aria-expanded\");\n }\n\n if (!trigger.hasAttribute(\"aria-haspopup\")) {\n trigger.setAttribute(\"aria-haspopup\", \"true\");\n }\n\n if (triggerOwnsExpanded.current) {\n return;\n }\n\n if (open) {\n trigger.setAttribute(\"aria-expanded\", \"true\");\n expandedTrigger.current = trigger;\n } else if (expandedTrigger.current) {\n expandedTrigger.current.removeAttribute(\"aria-expanded\");\n expandedTrigger.current = null;\n }\n });\n\n const handleRef = useForkRef(target ? target.ref : undefined, elementRef);\n\n // The popper needs the node as state, so it is copied only while the menu shows, before the browser paints.\n const [childNode, setChildNode] = useState<HTMLElement | null>(null);\n\n useLayoutEffect(() => {\n const node = open || !exited ? elementRef.current : null;\n\n if (node !== childNode) {\n setChildNode(node);\n }\n }, [open, exited, childNode]);\n\n const popperModifiers = useMemo(\n () =>\n childNode instanceof HTMLElement\n ? [offsetToVisibleBox(childNode)]\n : undefined,\n [childNode]\n );\n\n const handleOpen = useCallback(\n (\n event: Pick<MouseEvent<Element>, \"preventDefault\" | \"stopPropagation\">\n ) => {\n event?.preventDefault();\n event?.stopPropagation();\n setOpen(true);\n typeof onOpen === \"function\" && onOpen();\n typeof target?.props?.onClick === \"function\" &&\n target.props.onClick(event);\n },\n [onOpen, target?.props]\n );\n\n const handleClose = useCallback(() => {\n if (typeof onBeforeClose === \"function\" && !onBeforeClose()) {\n return false;\n }\n setOpen(false);\n typeof onClose === \"function\" && onClose();\n\n return true;\n }, [onClose, onBeforeClose]);\n\n const handleTabOut = useCallback(\n (event: KeyboardEvent<HTMLDivElement>) => {\n if (event.key !== \"Tab\" || event.defaultPrevented) {\n return;\n }\n\n event.preventDefault();\n tabOut.current = event.shiftKey ? -1 : 1;\n\n if (!handleClose()) {\n tabOut.current = 0;\n }\n },\n [handleClose]\n );\n\n const childProps = {\n forceClose: handleClose,\n };\n\n const [focusedInside, setFocusedInside] = useState(false);\n const markFocusedInside = useCallback(() => setFocusedInside(true), []);\n\n useEffect(() => {\n if (!open) {\n setFocusedInside(false);\n }\n }, [open]);\n\n const [prerenderStep, setPrerenderStep] = useState<\n \"off\" | \"waiting\" | \"rendering\" | \"done\"\n >(\"off\");\n\n // The caller can turn it on later, for example once the form that holds the menu has finished opening.\n useEffect(() => {\n if (prerender && prerenderStep === \"off\") {\n setPrerenderStep(\"waiting\");\n }\n }, [prerender, prerenderStep]);\n\n useEffect(() => {\n if (prerenderStep === \"off\" || prerenderStep === \"done\") {\n return undefined;\n }\n\n if (prerenderStep === \"rendering\") {\n setPrerenderStep(\"done\");\n\n return undefined;\n }\n\n return queuePrerender(() => setPrerenderStep(\"rendering\"));\n }, [prerenderStep]);\n\n const handleCloseRef = useRef(handleClose);\n handleCloseRef.current = handleClose;\n\n const handleTargetClose = useCallback(\n (\n event: Pick<MouseEvent<Element>, \"preventDefault\" | \"stopPropagation\">\n ) => {\n event?.preventDefault();\n event?.stopPropagation();\n handleClose();\n },\n [handleClose]\n );\n\n const targetProps = {\n open,\n ref: handleRef,\n onClick: open ? handleTargetClose : handleOpen,\n };\n\n // React carries the press through portals, so a nested menu or dialog counts as inside.\n const pressInside = useRef<Event | null>(null);\n const markPressInside = useCallback((event: React.PointerEvent) => {\n pressInside.current = event.nativeEvent;\n }, []);\n\n useEffect(() => {\n if (!open) {\n return undefined;\n }\n\n const closeOnPressOutside = (event: Event) => {\n if (\n pressInside.current === event ||\n elementRef.current?.contains(event.target as Node) ||\n isOnLayerAbove(event.target, windowRef.current)\n ) {\n return;\n }\n\n handleCloseRef.current();\n };\n\n // Armed after the press that opened the menu has passed the document.\n const timer = setTimeout(() =>\n document.addEventListener(\"pointerdown\", closeOnPressOutside)\n );\n\n return () => {\n clearTimeout(timer);\n document.removeEventListener(\"pointerdown\", closeOnPressOutside);\n };\n }, [open]);\n\n useEffect(() => {\n if (open) {\n isOpenAtLeastOnce.current = true;\n } else if (!open && isOpenAtLeastOnce.current) {\n const previous = focusBeforeOpen.current;\n const step = tabOut.current;\n const tabbedTo =\n step && elementRef.current\n ? focusTabNeighbor(\n triggerOf(elementRef.current),\n step,\n windowRef.current\n )\n : null;\n\n tabOut.current = 0;\n\n if (tabbedTo) {\n returnFocusTo.current = tabbedTo;\n } else {\n const returnTo =\n previous instanceof HTMLElement && previous.isConnected\n ? previous\n : elementRef.current;\n\n returnFocusTo.current = returnTo;\n returnTo?.focus(returnFocusOptions(focusWasVisible.current));\n }\n isOpenAtLeastOnce.current = false;\n }\n }, [open]);\n\n // A fading menu is already closed. Its content can still reach for the focus, and would take it away\n // with it when it unmounts, so the focus goes straight back to where the menu returned it.\n useEffect(() => {\n if (open || exited) {\n return undefined;\n }\n\n const keepFocusOut = (event: FocusEvent) => {\n if (popperRef.current?.contains(event.target as Node)) {\n returnFocusTo.current?.focus(\n returnFocusOptions(focusWasVisible.current)\n );\n }\n };\n\n document.addEventListener(\"focusin\", keepFocusOut, true);\n\n return () => document.removeEventListener(\"focusin\", keepFocusOut, true);\n }, [open, exited]);\n\n return (\n <>\n {target && React.cloneElement(target, targetProps)}\n {prerenderStep === \"rendering\" && !open && exited ? (\n <Portal>\n <div hidden aria-hidden>\n <MenuContextProvider value={{ open: false, setOpen }}>\n {typeof children === \"function\" ? children(childProps) : children}\n </MenuContextProvider>\n </div>\n </Portal>\n ) : null}\n {open || !exited ? (\n <Window\n ref={windowRef}\n onClose={handleClose}\n onKeyDown={closeOnTab && open ? handleTabOut : undefined}\n // The lock returns the focus with the props of the render before it turns off, too late to skip a Tab.\n // The menu returns the focus itself, so a menu that closes on Tab leaves the lock out of it.\n disableReturnFocus={closeOnTab}\n disableScrollLock={!handleScroll || !open}\n isolateScroll\n // The menu returns the focus itself at once, so a late returnFocus cannot undo a caller's move.\n // With the focus already inside, the lock turns on without searching the page for a place to put it.\n disableFocusLock={\n disableFocusLock || !open || (scopedFocus && !focusedInside)\n }\n // A fading menu is already closed, so an escape pressed meanwhile belongs to the page behind it.\n disableCloseOnEsc={!open}\n onPointerDownCapture={markPressInside}\n // The page behind the menu keeps its clicks and its cursor. Only the menu itself takes the pointer.\n style={{\n position: windowAbsolutelyPositioned ? \"absolute\" : \"fixed\",\n pointerEvents: \"none\",\n }}\n >\n {open ? (\n <Overlay\n className={backgroundElementClass}\n disableBackgroundColor\n />\n ) : null}\n <Popper\n ref={popperRef}\n anchorEl={childNode}\n open={childNode ? open : false}\n placement={position}\n className={popperClassName}\n tabIndex={-1}\n afterWrite={onPopperOpen}\n modifiers={popperModifiers}\n transition\n >\n {({ placement, transitionProps }) => (\n <Grow\n placement={placement}\n in={transitionProps?.in}\n onEnter={transitionProps?.onEnter}\n onExited={() => {\n setExited(true);\n transitionProps?.onExited?.();\n }}\n >\n <StyledMenu\n className={classnames(\n \"c-simple-menu__paper\",\n `c-simple-menu__${mode}`,\n menuClassName,\n className\n )}\n $mode={mode}\n onMouseDown={onMenuClick}\n style={{ pointerEvents: open ? \"auto\" : \"none\" }}\n >\n <MenuContextProvider value={{ open, setOpen }}>\n {typeof children === \"function\"\n ? children(childProps)\n : children}\n </MenuContextProvider>\n {scopedFocus && open ? (\n <FocusInside onFocused={markFocusedInside} />\n ) : null}\n </StyledMenu>\n </Grow>\n )}\n </Popper>\n </Window>\n ) : null}\n </>\n );\n};\n\nMenu.displayName = \"Menu\";\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AAgBA,IAAAC,WAAA,GAAAC,sBAAA,CAAAF,OAAA;AAEA,IAAAG,QAAA,GAAAH,OAAA;AACA,IAAAI,OAAA,GAAAJ,OAAA;AACA,IAAAK,QAAA,GAAAL,OAAA;AACA,IAAAM,WAAA,GAAAJ,sBAAA,CAAAF,OAAA;AACA,IAAAO,QAAA,GAAAP,OAAA;AACA,IAAAQ,OAAA,GAAAR,OAAA;AACA,IAAAS,YAAA,GAAAT,OAAA;AACA,IAAAU,OAAA,GAAAV,OAAA;AAAmC,SAAAE,uBAAAS,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAAA,SAAAZ,wBAAAY,CAAA,EAAAG,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAhB,uBAAA,YAAAA,wBAAAY,CAAA,EAAAG,CAAA,SAAAA,CAAA,IAAAH,CAAA,IAAAA,CAAA,CAAAC,UAAA,SAAAD,CAAA,MAAAO,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAR,OAAA,EAAAF,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAS,CAAA,MAAAF,CAAA,GAAAJ,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAE,CAAA,CAAAI,GAAA,CAAAX,CAAA,UAAAO,CAAA,CAAAK,GAAA,CAAAZ,CAAA,GAAAO,CAAA,CAAAM,GAAA,CAAAb,CAAA,EAAAS,CAAA,cAAAK,EAAA,IAAAd,CAAA,gBAAAc,EAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAc,EAAA,OAAAN,CAAA,IAAAD,CAAA,GAAAU,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAnB,CAAA,EAAAc,EAAA,OAAAN,CAAA,CAAAI,GAAA,IAAAJ,CAAA,CAAAK,GAAA,IAAAN,CAAA,CAAAE,CAAA,EAAAK,EAAA,EAAAN,CAAA,IAAAC,CAAA,CAAAK,EAAA,IAAAd,CAAA,CAAAc,EAAA,WAAAL,CAAA,KAAAT,CAAA,EAAAG,CAAA;AAAA,SAAAiB,eAAAf,CAAA,EAAAL,CAAA,WAAAqB,eAAA,CAAAhB,CAAA,KAAAiB,qBAAA,CAAAjB,CAAA,EAAAL,CAAA,KAAAuB,2BAAA,CAAAlB,CAAA,EAAAL,CAAA,KAAAwB,gBAAA;AAAA,SAAAA,iBAAA,cAAAC,SAAA;AAAA,SAAAF,4BAAAlB,CAAA,EAAAqB,CAAA,QAAArB,CAAA,2BAAAA,CAAA,SAAAsB,iBAAA,CAAAtB,CAAA,EAAAqB,CAAA,OAAAvB,CAAA,MAAAyB,QAAA,CAAAZ,IAAA,CAAAX,CAAA,EAAAwB,KAAA,6BAAA1B,CAAA,IAAAE,CAAA,CAAAyB,WAAA,KAAA3B,CAAA,GAAAE,CAAA,CAAAyB,WAAA,CAAAC,IAAA,aAAA5B,CAAA,cAAAA,CAAA,GAAA6B,KAAA,CAAAC,IAAA,CAAA5B,CAAA,oBAAAF,CAAA,+CAAA+B,IAAA,CAAA/B,CAAA,IAAAwB,iBAAA,CAAAtB,CAAA,EAAAqB,CAAA;AAAA,SAAAC,kBAAAtB,CAAA,EAAAqB,CAAA,aAAAA,CAAA,IAAAA,CAAA,GAAArB,CAAA,CAAA8B,MAAA,MAAAT,CAAA,GAAArB,CAAA,CAAA8B,MAAA,YAAAnC,CAAA,MAAAM,CAAA,GAAA0B,KAAA,CAAAN,CAAA,GAAA1B,CAAA,GAAA0B,CAAA,EAAA1B,CAAA,IAAAM,CAAA,CAAAN,CAAA,IAAAK,CAAA,CAAAL,CAAA,UAAAM,CAAA;AAAA,SAAAgB,sBAAAjB,CAAA,EAAA+B,CAAA,QAAAjC,CAAA,WAAAE,CAAA,gCAAAgC,MAAA,IAAAhC,CAAA,CAAAgC,MAAA,CAAAC,QAAA,KAAAjC,CAAA,4BAAAF,CAAA,QAAAH,CAAA,EAAAM,CAAA,EAAAE,CAAA,EAAA+B,CAAA,EAAAb,CAAA,OAAAjB,CAAA,OAAAF,CAAA,iBAAAC,CAAA,IAAAL,CAAA,GAAAA,CAAA,CAAAa,IAAA,CAAAX,CAAA,GAAAmC,IAAA,QAAAJ,CAAA,QAAAnB,MAAA,CAAAd,CAAA,MAAAA,CAAA,UAAAM,CAAA,uBAAAA,CAAA,IAAAT,CAAA,GAAAQ,CAAA,CAAAQ,IAAA,CAAAb,CAAA,GAAAsC,IAAA,MAAAf,CAAA,CAAAgB,IAAA,CAAA1C,CAAA,CAAA2C,KAAA,GAAAjB,CAAA,CAAAS,MAAA,KAAAC,CAAA,GAAA3B,CAAA,iBAAAJ,CAAA,IAAAE,CAAA,OAAAD,CAAA,GAAAD,CAAA,yBAAAI,CAAA,YAAAN,CAAA,CAAAyC,MAAA,KAAAL,CAAA,GAAApC,CAAA,CAAAyC,MAAA,IAAA3B,MAAA,CAAAsB,CAAA,MAAAA,CAAA,2BAAAhC,CAAA,QAAAD,CAAA,aAAAoB,CAAA;AAAA,SAAAL,gBAAAhB,CAAA,QAAA2B,KAAA,CAAAa,OAAA,CAAAxC,CAAA,UAAAA,CAAA;AAMnC;AACA;;AA+CA,IAAMyC,cAAc,GAAG,SAAjBA,cAAcA,CAAIC,OAAuB,EAAK;EAClD,IAAI;IACF,OAAOC,OAAO,CAACD,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEE,OAAO,CAAC,gBAAgB,CAAC,CAAC;EACpD,CAAC,CAAC,OAAAC,OAAA,EAAM;IACN,OAAO,KAAK;EACd;AACF,CAAC;AAED,IAAMC,OAAO,GAAG,kCAAkC;;AAElD;AACA,IAAMC,SAAS,GAAG,SAAZA,SAASA,CAAIC,IAAiB;EAAA,IAAAC,mBAAA;EAAA,OAClCD,IAAI,CAACJ,OAAO,CAACE,OAAO,CAAC,GACjBE,IAAI,IAAAC,mBAAA,GACJD,IAAI,CAACE,aAAa,CAAcJ,OAAO,CAAC,cAAAG,mBAAA,cAAAA,mBAAA,GAAID,IAAI;AAAA;AAEtD,IAAMG,YAAY,GAAG,SAAfA,YAAYA,CAAIH,IAAiB,EAAK;EAC1C;EACA,IAAMI,KAAK,GAAG,CACZJ,IAAI,CAACK,qBAAqB,CAAC,CAAC,EAC5B,GAAG1B,KAAK,CAACC,IAAI,CAACoB,IAAI,CAACM,QAAQ,CAAC,CACzBC,GAAG,CAAC,UAACb,OAAO;IAAA,OAAKA,OAAO,CAACW,qBAAqB,CAAC,CAAC;EAAA,EAAC,CACjDG,MAAM,CAAC,UAACC,IAAI;IAAA,OAAKA,IAAI,CAACC,KAAK,GAAG,CAAC,IAAID,IAAI,CAACE,MAAM,GAAG,CAAC;EAAA,EAAC,CACvD;EAED,OAAO;IACLC,IAAI,EAAEC,IAAI,CAACC,GAAG,CAAC,GAAGV,KAAK,CAACG,GAAG,CAAC,UAACE,IAAI;MAAA,OAAKA,IAAI,CAACG,IAAI;IAAA,EAAC,CAAC;IACjDG,KAAK,EAAEF,IAAI,CAACG,GAAG,CAAC,GAAGZ,KAAK,CAACG,GAAG,CAAC,UAACE,IAAI;MAAA,OAAKA,IAAI,CAACM,KAAK;IAAA,EAAC,CAAC;IACnDE,GAAG,EAAEJ,IAAI,CAACC,GAAG,CAAC,GAAGV,KAAK,CAACG,GAAG,CAAC,UAACE,IAAI;MAAA,OAAKA,IAAI,CAACQ,GAAG;IAAA,EAAC,CAAC;IAC/CC,MAAM,EAAEL,IAAI,CAACG,GAAG,CAAC,GAAGZ,KAAK,CAACG,GAAG,CAAC,UAACE,IAAI;MAAA,OAAKA,IAAI,CAACS,MAAM;IAAA,EAAC;EACtD,CAAC;AACH,CAAC;;AAED;AACA,IAAMC,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAInB,IAAiB;EAAA,OAAM;IACjDtB,IAAI,EAAE,QAAQ;IACd0C,OAAO,EAAE;MACPC,MAAM,EAAE,SAARA,MAAMA,CAAAC,IAAA,EAAiE;QAAA,IAA5DC,SAAS,GAAAD,IAAA,CAATC,SAAS;QAClB,IAAIxB,SAAS,CAACC,IAAI,CAAC,KAAKA,IAAI,EAAE;UAC5B,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC;QACf;QAEA,IAAMwB,OAAO,GAAGxB,IAAI,CAACK,qBAAqB,CAAC,CAAC;QAC5C,IAAMoB,GAAG,GAAGtB,YAAY,CAACH,IAAI,CAAC;QAC9B,IAAA0B,gBAAA,GAAsBH,SAAS,CAACI,KAAK,CAAC,GAAG,CAAC;UAAAC,iBAAA,GAAA7D,cAAA,CAAA2D,gBAAA;UAAnCG,IAAI,GAAAD,iBAAA;UAAEE,KAAK,GAAAF,iBAAA;QAClB,IAAMG,QAAQ,GAAGF,IAAI,KAAK,KAAK,IAAIA,IAAI,KAAK,QAAQ;QACpD,IAAMG,KAAK,GAAGD,QAAQ,GAAG,MAAM,GAAG,KAAK;QACvC,IAAME,GAAG,GAAGF,QAAQ,GAAG,OAAO,GAAG,QAAQ;QACzC,IAAMG,QAAQ,GACZJ,KAAK,KAAK,OAAO,GACbL,GAAG,CAACO,KAAK,CAAC,GAAGR,OAAO,CAACQ,KAAK,CAAC,GAC3BF,KAAK,KAAK,KAAK,GACfL,GAAG,CAACQ,GAAG,CAAC,GAAGT,OAAO,CAACS,GAAG,CAAC,GACvB,CAACR,GAAG,CAACO,KAAK,CAAC,GAAGP,GAAG,CAACQ,GAAG,CAAC,GAAGT,OAAO,CAACQ,KAAK,CAAC,GAAGR,OAAO,CAACS,GAAG,CAAC,IAAI,CAAC;QACjE,IAAME,QAAQ,GAAG;UACfjB,MAAM,EAAEO,GAAG,CAACP,MAAM,GAAGM,OAAO,CAACN,MAAM;UACnCD,GAAG,EAAEO,OAAO,CAACP,GAAG,GAAGQ,GAAG,CAACR,GAAG;UAC1BF,KAAK,EAAEU,GAAG,CAACV,KAAK,GAAGS,OAAO,CAACT,KAAK;UAChCH,IAAI,EAAEY,OAAO,CAACZ,IAAI,GAAGa,GAAG,CAACb;QAC3B,CAAC,CAACiB,IAAI,CAAC;QAEP,OAAO,CAACK,QAAQ,EAAEC,QAAQ,aAARA,QAAQ,cAARA,QAAQ,GAAI,CAAC,CAAC;MAClC;IACF;EACF,CAAC;AAAA,CAAC;AAEF,IAAMC,QAAQ,GACZ,wFAAwF;;AAE1F;AACA,IAAMC,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAIC,OAAgB;EAAA,OACzC;IAAEC,YAAY,EAAED;EAAQ,CAAC;AAAA,CAAiB;;AAE7C;AACA,IAAME,gBAAgB,GAAG,SAAnBA,gBAAgBA,CACpBC,OAAoB,EACpBC,IAAY,EACZC,IAAwB,EACrB;EACH,IAAMC,KAAK,GAAGjE,KAAK,CAACC,IAAI,CACtBiE,QAAQ,CAACC,gBAAgB,CAAcV,QAAQ,CACjD,CAAC,CAAC5B,MAAM,CACN,UAACR,IAAI;IAAA,OACHA,IAAI,KAAKyC,OAAO,IACfzC,IAAI,CAAC+C,QAAQ,IAAI,CAAC,IACjB,CAAE/C,IAAI,CAAuBgD,QAAQ,IACrC,CAAChD,IAAI,CAACiD,OAAO,CAAC,SAAS,CAAC,IACxB,EAACN,IAAI,aAAJA,IAAI,eAAJA,IAAI,CAAEO,QAAQ,CAAClD,IAAI,CAAC,CAAC;EAAA,CAC5B,CAAC;EAED,IAAMpB,IAAI,GAAGgE,KAAK,CAACO,OAAO,CAACV,OAAO,CAAC;EAEnC,KACE,IAAIW,KAAK,GAAGxE,IAAI,GAAG8D,IAAI,EACvB9D,IAAI,KAAK,CAAC,CAAC,IAAIwE,KAAK,IAAI,CAAC,IAAIA,KAAK,GAAGR,KAAK,CAAC9D,MAAM,EACjDsE,KAAK,IAAIV,IAAI,EACb;IACAE,KAAK,CAACQ,KAAK,CAAC,CAACC,KAAK,CAAChB,kBAAkB,CAAC,IAAI,CAAC,CAAC;IAE5C,IAAIQ,QAAQ,CAACS,aAAa,KAAKV,KAAK,CAACQ,KAAK,CAAC,EAAE;MAC3C,OAAOR,KAAK,CAACQ,KAAK,CAAC;IACrB;EACF;EAEA,OAAO,IAAI;AACb,CAAC;;AAED;AACA,IAAMG,cAAc,GAAG,SAAjBA,cAAcA,CAClBC,MAA0B,EAC1BC,GAAuB,EACpB;EACH,IAAMC,KAAK,GACTF,MAAM,YAAYG,OAAO,GAAGH,MAAM,CAACP,OAAO,CAAc,WAAW,CAAC,GAAG,IAAI;EAE7E,IAAI,CAACS,KAAK,IAAI,CAACD,GAAG,IAAIC,KAAK,KAAKD,GAAG,EAAE;IACnC,OAAO,KAAK;EACd;EAEA,IAAMG,MAAM,GAAGC,MAAM,CAACH,KAAK,CAACI,KAAK,CAACC,MAAM,CAAC,IAAI,CAAC;EAC9C,IAAMC,IAAI,GAAGH,MAAM,CAACJ,GAAG,CAACK,KAAK,CAACC,MAAM,CAAC,IAAI,CAAC;EAE1C,OACEH,MAAM,GAAGI,IAAI,IACZJ,MAAM,KAAKI,IAAI,IACdrE,OAAO,CACL8D,GAAG,CAACQ,uBAAuB,CAACP,KAAK,CAAC,GAAGQ,IAAI,CAACC,2BAC5C,CAAE;AAER,CAAC;AAED,IAAMC,eAAe,GAAG,EAAE;AAC1B,IAAMC,aAAa,GAAG,EAAE;AACxB,IAAMC,cAA8B,GAAG,EAAE;AACzC,IAAIC,cAAoD,GAAG,IAAI;AAE/D,IAAMC,kBAAiB,GAAG,SAApBA,iBAAiBA,CAAA,EAAS;EAAA,IAAAC,qBAAA;EAC9B,CAAAA,qBAAA,GAAAH,cAAc,CAACI,KAAK,CAAC,CAAC,cAAAD,qBAAA,eAAtBA,qBAAA,CAAyB,CAAC;EAC1BF,cAAc,GAAGD,cAAc,CAACxF,MAAM,GAClC6F,UAAU,CAACH,kBAAiB,EAAEH,aAAa,CAAC,GAC5C,IAAI;AACV,CAAC;;AAED;AACA,IAAMO,cAAc,GAAG,SAAjBA,cAAcA,CAAIC,MAAkB,EAAK;EAC7CP,cAAc,CAACjF,IAAI,CAACwF,MAAM,CAAC;EAE3B,IAAI,CAACN,cAAc,EAAE;IACnBA,cAAc,GAAGI,UAAU,CAACH,kBAAiB,EAAEJ,eAAe,CAAC;EACjE;EAEA,OAAO,YAAM;IACX,IAAMhB,KAAK,GAAGkB,cAAc,CAACnB,OAAO,CAAC0B,MAAM,CAAC;IAE5C,IAAIzB,KAAK,KAAK,CAAC,CAAC,EAAE;MAChBkB,cAAc,CAACQ,MAAM,CAAC1B,KAAK,EAAE,CAAC,CAAC;IACjC;EACF,CAAC;AACH,CAAC;;AAED;AACA,IAAM2B,WAA0C,GAAG,SAA7CA,WAA0CA,CAAAC,KAAA,EAAsB;EAAA,IAAhBC,SAAS,GAAAD,KAAA,CAATC,SAAS;EAC7D,IAAMC,GAAG,GAAG,IAAAC,aAAM,EAAkB,IAAI,CAAC;EAEzC,IAAAC,sBAAe,EAAC,YAAM;IAAA,IAAAC,YAAA,EAAAC,KAAA;IACpB,IAAM3C,IAAI,IAAA0C,YAAA,GAAGH,GAAG,CAACK,OAAO,cAAAF,YAAA,uBAAXA,YAAA,CAAaG,aAAa;IAEvC,IAAI,CAAC7C,IAAI,EAAE;MACT;IACF;IAEA,IAAIA,IAAI,CAACO,QAAQ,CAACL,QAAQ,CAACS,aAAa,CAAC,EAAE;MACzC2B,SAAS,CAAC,CAAC;MACX;IACF;IAEA,IAAMQ,KAAK,GAAG9G,KAAK,CAACC,IAAI,CAAC+D,IAAI,CAACG,gBAAgB,CAAcV,QAAQ,CAAC,CAAC,CAACsD,IAAI,CACzE,UAAC1F,IAAI;MAAA,OAAKA,IAAI,CAAC+C,QAAQ,IAAI,CAAC,IAAI,CAAE/C,IAAI,CAAuBgD,QAAQ;IAAA,CACvE,CAAC;IAED,CAAAsC,KAAA,GAACG,KAAK,aAALA,KAAK,cAALA,KAAK,GAAI9C,IAAI,CAACM,OAAO,CAAc,YAAY,CAAC,cAAAqC,KAAA,eAAjDA,KAAA,CAAoDjC,KAAK,CAAC;MACxDsC,aAAa,EAAE;IACjB,CAAC,CAAC;IACFV,SAAS,CAAC,CAAC;EACb,CAAC,EAAE,CAACA,SAAS,CAAC,CAAC;EAEf,oBAAOnJ,MAAA,CAAAe,OAAA,CAAA+I,aAAA;IAAMV,GAAG,EAAEA,GAAI;IAACW,MAAM;EAAA,CAAE,CAAC;AAClC,CAAC;AAEM,IAAMC,IAAe,GAAAC,OAAA,CAAAD,IAAA,GAAG,SAAlBA,IAAeA,CAAAE,KAAA,EAqBtB;EAAA,IApBJ1F,QAAQ,GAAA0F,KAAA,CAAR1F,QAAQ;IAAA2F,qBAAA,GAAAD,KAAA,CACRE,gBAAgB;IAAhBA,gBAAgB,GAAAD,qBAAA,cAAG,KAAK,GAAAA,qBAAA;IACxBE,WAAW,GAAAH,KAAA,CAAXG,WAAW;IAAAC,kBAAA,GAAAJ,KAAA,CACXK,YAAY;IAAZA,YAAY,GAAAD,kBAAA,cAAG,IAAI,GAAAA,kBAAA;IAAAE,UAAA,GAAAN,KAAA,CACnBO,IAAI;IAAJA,IAAI,GAAAD,UAAA,cAAG,QAAQ,GAAAA,UAAA;IAAAE,UAAA,GAAAR,KAAA,CACfS,IAAI;IAAEC,WAAW,GAAAF,UAAA,cAAG,KAAK,GAAAA,UAAA;IACzBG,MAAM,GAAAX,KAAA,CAANW,MAAM;IACNC,OAAO,GAAAZ,KAAA,CAAPY,OAAO;IACPC,aAAa,GAAAb,KAAA,CAAba,aAAa;IAAAC,cAAA,GAAAd,KAAA,CACbe,QAAQ;IAARA,QAAQ,GAAAD,cAAA,cAAG,cAAc,GAAAA,cAAA;IACzBtD,MAAM,GAAAwC,KAAA,CAANxC,MAAM;IACNwD,SAAS,GAAAhB,KAAA,CAATgB,SAAS;IACTC,aAAa,GAAAjB,KAAA,CAAbiB,aAAa;IACbC,eAAe,GAAAlB,KAAA,CAAfkB,eAAe;IACfC,sBAAsB,GAAAnB,KAAA,CAAtBmB,sBAAsB;IAAAC,qBAAA,GAAApB,KAAA,CACtBqB,0BAA0B;IAA1BA,0BAA0B,GAAAD,qBAAA,cAAG,KAAK,GAAAA,qBAAA;IAClCE,YAAY,GAAAtB,KAAA,CAAZsB,YAAY;IAAAC,gBAAA,GAAAvB,KAAA,CACZwB,UAAU;IAAVA,UAAU,GAAAD,gBAAA,cAAG,KAAK,GAAAA,gBAAA;IAAAE,eAAA,GAAAzB,KAAA,CAClB0B,SAAS;IAATA,SAAS,GAAAD,eAAA,cAAG,KAAK,GAAAA,eAAA;IAAAE,iBAAA,GAAA3B,KAAA,CACjB4B,WAAW;IAAXA,WAAW,GAAAD,iBAAA,cAAG,KAAK,GAAAA,iBAAA;EAEnB,IAAAE,SAAA,GAAwB,IAAAC,eAAQ,EAACpB,WAAW,CAAC;IAAAqB,UAAA,GAAAhK,cAAA,CAAA8J,SAAA;IAAtCpB,IAAI,GAAAsB,UAAA;IAAEC,OAAO,GAAAD,UAAA;EACpB,IAAAE,UAAA,GAA4B,IAAAH,eAAQ,EAAC,CAACpB,WAAW,CAAC;IAAAwB,UAAA,GAAAnK,cAAA,CAAAkK,UAAA;IAA3CE,MAAM,GAAAD,UAAA;IAAEE,SAAS,GAAAF,UAAA;EACxB;EACA,IAAMG,UAAU,GAAG,IAAAlD,aAAM,EAAqB,IAAI,CAAC;EACnD,IAAMmD,iBAAiB,GAAG,IAAAnD,aAAM,EAAC,KAAK,CAAC;EACvC,IAAMoD,OAAO,GAAG,IAAApD,aAAM,EAACsB,IAAI,CAAC;EAC5B,IAAM+B,eAAe,GAAG,IAAArD,aAAM,EAAiB,IAAI,CAAC;EACpD,IAAMsD,eAAe,GAAG,IAAAtD,aAAM,EAAC,KAAK,CAAC;EACrC,IAAMuD,aAAa,GAAG,IAAAvD,aAAM,EAAqB,IAAI,CAAC;EACtD,IAAMwD,SAAS,GAAG,IAAAxD,aAAM,EAAwB,IAAI,CAAC;EACrD,IAAMyD,SAAS,GAAG,IAAAzD,aAAM,EAAwB,IAAI,CAAC;EACrD,IAAM0D,MAAM,GAAG,IAAA1D,aAAM,EAAa,CAAC,CAAC;;EAEpC;EACA,IAAIsB,IAAI,IAAI,CAAC8B,OAAO,CAAChD,OAAO,IAAI,OAAO1C,QAAQ,KAAK,WAAW,EAAE;IAC/D2F,eAAe,CAACjD,OAAO,GAAG1C,QAAQ,CAACS,aAAa;IAChDmF,eAAe,CAAClD,OAAO,GAAG9F,cAAc,CAACoD,QAAQ,CAACS,aAAa,CAAC;EAClE;EACAiF,OAAO,CAAChD,OAAO,GAAGkB,IAAI;EAEtB,IAAAqC,gBAAS,EAAC,YAAM;IACdd,OAAO,CAACtB,WAAW,CAAC;EACtB,CAAC,EAAE,CAACA,WAAW,CAAC,CAAC;EAEjB,IAAAoC,gBAAS,EAAC,YAAM;IACd,IAAIrC,IAAI,EAAE;MACR2B,SAAS,CAAC,KAAK,CAAC;IAClB;EACF,CAAC,EAAE,CAAC3B,IAAI,CAAC,CAAC;;EAEV;EACA;EACA,IAAMsC,eAAe,GAAG,IAAA5D,aAAM,EAAqB,IAAI,CAAC;EACxD,IAAM6D,cAAc,GAAG,IAAA7D,aAAM,EAAqB,IAAI,CAAC;EACvD,IAAM8D,mBAAmB,GAAG,IAAA9D,aAAM,EAAC,KAAK,CAAC;EAEzC,IAAA2D,gBAAS,EAAC,YAAM;IACd,IAAM9I,IAAI,GAAGqI,UAAU,CAAC9C,OAAO;IAE/B,IAAI,CAACvF,IAAI,EAAE;MACT;IACF;IAEA,IAAMyC,OAAO,GAAG1C,SAAS,CAACC,IAAI,CAAC;;IAE/B;IACA,IAAIgJ,cAAc,CAACzD,OAAO,KAAK9C,OAAO,EAAE;MACtCuG,cAAc,CAACzD,OAAO,GAAG9C,OAAO;MAChCwG,mBAAmB,CAAC1D,OAAO,GAAG9C,OAAO,CAACyG,YAAY,CAAC,eAAe,CAAC;IACrE;IAEA,IAAI,CAACzG,OAAO,CAACyG,YAAY,CAAC,eAAe,CAAC,EAAE;MAC1CzG,OAAO,CAAC0G,YAAY,CAAC,eAAe,EAAE,MAAM,CAAC;IAC/C;IAEA,IAAIF,mBAAmB,CAAC1D,OAAO,EAAE;MAC/B;IACF;IAEA,IAAIkB,IAAI,EAAE;MACRhE,OAAO,CAAC0G,YAAY,CAAC,eAAe,EAAE,MAAM,CAAC;MAC7CJ,eAAe,CAACxD,OAAO,GAAG9C,OAAO;IACnC,CAAC,MAAM,IAAIsG,eAAe,CAACxD,OAAO,EAAE;MAClCwD,eAAe,CAACxD,OAAO,CAAC6D,eAAe,CAAC,eAAe,CAAC;MACxDL,eAAe,CAACxD,OAAO,GAAG,IAAI;IAChC;EACF,CAAC,CAAC;EAEF,IAAM8D,SAAS,GAAG,IAAAC,mBAAU,EAAC9F,MAAM,GAAGA,MAAM,CAAC0B,GAAG,GAAGqE,SAAS,EAAElB,UAAU,CAAC;;EAEzE;EACA,IAAAmB,UAAA,GAAkC,IAAA1B,eAAQ,EAAqB,IAAI,CAAC;IAAA2B,UAAA,GAAA1L,cAAA,CAAAyL,UAAA;IAA7DE,SAAS,GAAAD,UAAA;IAAEE,YAAY,GAAAF,UAAA;EAE9B,IAAArE,sBAAe,EAAC,YAAM;IACpB,IAAMpF,IAAI,GAAGyG,IAAI,IAAI,CAAC0B,MAAM,GAAGE,UAAU,CAAC9C,OAAO,GAAG,IAAI;IAExD,IAAIvF,IAAI,KAAK0J,SAAS,EAAE;MACtBC,YAAY,CAAC3J,IAAI,CAAC;IACpB;EACF,CAAC,EAAE,CAACyG,IAAI,EAAE0B,MAAM,EAAEuB,SAAS,CAAC,CAAC;EAE7B,IAAME,eAAe,GAAG,IAAAC,cAAO,EAC7B;IAAA,OACEH,SAAS,YAAYI,WAAW,GAC5B,CAAC3I,kBAAkB,CAACuI,SAAS,CAAC,CAAC,GAC/BH,SAAS;EAAA,GACf,CAACG,SAAS,CACZ,CAAC;EAED,IAAMK,UAAU,GAAG,IAAAC,kBAAW,EAC5B,UACEC,KAAsE,EACnE;IAAA,IAAAC,aAAA;IACHD,KAAK,aAALA,KAAK,eAALA,KAAK,CAAEE,cAAc,CAAC,CAAC;IACvBF,KAAK,aAALA,KAAK,eAALA,KAAK,CAAEG,eAAe,CAAC,CAAC;IACxBpC,OAAO,CAAC,IAAI,CAAC;IACb,OAAOrB,MAAM,KAAK,UAAU,IAAIA,MAAM,CAAC,CAAC;IACxC,QAAOnD,MAAM,aAANA,MAAM,gBAAA0G,aAAA,GAAN1G,MAAM,CAAE6G,KAAK,cAAAH,aAAA,uBAAbA,aAAA,CAAeI,OAAO,MAAK,UAAU,IAC1C9G,MAAM,CAAC6G,KAAK,CAACC,OAAO,CAACL,KAAK,CAAC;EAC/B,CAAC,EACD,CAACtD,MAAM,EAAEnD,MAAM,aAANA,MAAM,uBAANA,MAAM,CAAE6G,KAAK,CACxB,CAAC;EAED,IAAME,WAAW,GAAG,IAAAP,kBAAW,EAAC,YAAM;IACpC,IAAI,OAAOnD,aAAa,KAAK,UAAU,IAAI,CAACA,aAAa,CAAC,CAAC,EAAE;MAC3D,OAAO,KAAK;IACd;IACAmB,OAAO,CAAC,KAAK,CAAC;IACd,OAAOpB,OAAO,KAAK,UAAU,IAAIA,OAAO,CAAC,CAAC;IAE1C,OAAO,IAAI;EACb,CAAC,EAAE,CAACA,OAAO,EAAEC,aAAa,CAAC,CAAC;EAE5B,IAAM2D,YAAY,GAAG,IAAAR,kBAAW,EAC9B,UAACC,KAAoC,EAAK;IACxC,IAAIA,KAAK,CAACQ,GAAG,KAAK,KAAK,IAAIR,KAAK,CAACS,gBAAgB,EAAE;MACjD;IACF;IAEAT,KAAK,CAACE,cAAc,CAAC,CAAC;IACtBtB,MAAM,CAACtD,OAAO,GAAG0E,KAAK,CAACU,QAAQ,GAAG,CAAC,CAAC,GAAG,CAAC;IAExC,IAAI,CAACJ,WAAW,CAAC,CAAC,EAAE;MAClB1B,MAAM,CAACtD,OAAO,GAAG,CAAC;IACpB;EACF,CAAC,EACD,CAACgF,WAAW,CACd,CAAC;EAED,IAAMK,UAAU,GAAG;IACjBC,UAAU,EAAEN;EACd,CAAC;EAED,IAAAO,UAAA,GAA0C,IAAAhD,eAAQ,EAAC,KAAK,CAAC;IAAAiD,UAAA,GAAAhN,cAAA,CAAA+M,UAAA;IAAlDE,aAAa,GAAAD,UAAA;IAAEE,gBAAgB,GAAAF,UAAA;EACtC,IAAMG,iBAAiB,GAAG,IAAAlB,kBAAW,EAAC;IAAA,OAAMiB,gBAAgB,CAAC,IAAI,CAAC;EAAA,GAAE,EAAE,CAAC;EAEvE,IAAAnC,gBAAS,EAAC,YAAM;IACd,IAAI,CAACrC,IAAI,EAAE;MACTwE,gBAAgB,CAAC,KAAK,CAAC;IACzB;EACF,CAAC,EAAE,CAACxE,IAAI,CAAC,CAAC;EAEV,IAAA0E,UAAA,GAA0C,IAAArD,eAAQ,EAEhD,KAAK,CAAC;IAAAsD,UAAA,GAAArN,cAAA,CAAAoN,UAAA;IAFDE,aAAa,GAAAD,UAAA;IAAEE,gBAAgB,GAAAF,UAAA;;EAItC;EACA,IAAAtC,gBAAS,EAAC,YAAM;IACd,IAAIpB,SAAS,IAAI2D,aAAa,KAAK,KAAK,EAAE;MACxCC,gBAAgB,CAAC,SAAS,CAAC;IAC7B;EACF,CAAC,EAAE,CAAC5D,SAAS,EAAE2D,aAAa,CAAC,CAAC;EAE9B,IAAAvC,gBAAS,EAAC,YAAM;IACd,IAAIuC,aAAa,KAAK,KAAK,IAAIA,aAAa,KAAK,MAAM,EAAE;MACvD,OAAO9B,SAAS;IAClB;IAEA,IAAI8B,aAAa,KAAK,WAAW,EAAE;MACjCC,gBAAgB,CAAC,MAAM,CAAC;MAExB,OAAO/B,SAAS;IAClB;IAEA,OAAO3E,cAAc,CAAC;MAAA,OAAM0G,gBAAgB,CAAC,WAAW,CAAC;IAAA,EAAC;EAC5D,CAAC,EAAE,CAACD,aAAa,CAAC,CAAC;EAEnB,IAAME,cAAc,GAAG,IAAApG,aAAM,EAACoF,WAAW,CAAC;EAC1CgB,cAAc,CAAChG,OAAO,GAAGgF,WAAW;EAEpC,IAAMiB,iBAAiB,GAAG,IAAAxB,kBAAW,EACnC,UACEC,KAAsE,EACnE;IACHA,KAAK,aAALA,KAAK,eAALA,KAAK,CAAEE,cAAc,CAAC,CAAC;IACvBF,KAAK,aAALA,KAAK,eAALA,KAAK,CAAEG,eAAe,CAAC,CAAC;IACxBG,WAAW,CAAC,CAAC;EACf,CAAC,EACD,CAACA,WAAW,CACd,CAAC;EAED,IAAMkB,WAAW,GAAG;IAClBhF,IAAI;IACJvB,GAAG,EAAEmE,SAAS;IACdiB,OAAO,EAAE7D,IAAI,GAAG+E,iBAAiB,GAAGzB;EACtC,CAAC;;EAED;EACA,IAAM2B,WAAW,GAAG,IAAAvG,aAAM,EAAe,IAAI,CAAC;EAC9C,IAAMwG,eAAe,GAAG,IAAA3B,kBAAW,EAAC,UAACC,KAAyB,EAAK;IACjEyB,WAAW,CAACnG,OAAO,GAAG0E,KAAK,CAAC2B,WAAW;EACzC,CAAC,EAAE,EAAE,CAAC;EAEN,IAAA9C,gBAAS,EAAC,YAAM;IACd,IAAI,CAACrC,IAAI,EAAE;MACT,OAAO8C,SAAS;IAClB;IAEA,IAAMsC,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAI5B,KAAY,EAAK;MAAA,IAAA6B,mBAAA;MAC5C,IACEJ,WAAW,CAACnG,OAAO,KAAK0E,KAAK,KAAA6B,mBAAA,GAC7BzD,UAAU,CAAC9C,OAAO,cAAAuG,mBAAA,eAAlBA,mBAAA,CAAoB5I,QAAQ,CAAC+G,KAAK,CAACzG,MAAc,CAAC,IAClDD,cAAc,CAAC0G,KAAK,CAACzG,MAAM,EAAEoF,SAAS,CAACrD,OAAO,CAAC,EAC/C;QACA;MACF;MAEAgG,cAAc,CAAChG,OAAO,CAAC,CAAC;IAC1B,CAAC;;IAED;IACA,IAAMwG,KAAK,GAAGpH,UAAU,CAAC;MAAA,OACvB9B,QAAQ,CAACmJ,gBAAgB,CAAC,aAAa,EAAEH,mBAAmB,CAAC;IAAA,CAC/D,CAAC;IAED,OAAO,YAAM;MACXI,YAAY,CAACF,KAAK,CAAC;MACnBlJ,QAAQ,CAACqJ,mBAAmB,CAAC,aAAa,EAAEL,mBAAmB,CAAC;IAClE,CAAC;EACH,CAAC,EAAE,CAACpF,IAAI,CAAC,CAAC;EAEV,IAAAqC,gBAAS,EAAC,YAAM;IACd,IAAIrC,IAAI,EAAE;MACR6B,iBAAiB,CAAC/C,OAAO,GAAG,IAAI;IAClC,CAAC,MAAM,IAAI,CAACkB,IAAI,IAAI6B,iBAAiB,CAAC/C,OAAO,EAAE;MAC7C,IAAM4G,QAAQ,GAAG3D,eAAe,CAACjD,OAAO;MACxC,IAAM7C,IAAI,GAAGmG,MAAM,CAACtD,OAAO;MAC3B,IAAM6G,QAAQ,GACZ1J,IAAI,IAAI2F,UAAU,CAAC9C,OAAO,GACtB/C,gBAAgB,CACdzC,SAAS,CAACsI,UAAU,CAAC9C,OAAO,CAAC,EAC7B7C,IAAI,EACJkG,SAAS,CAACrD,OACZ,CAAC,GACD,IAAI;MAEVsD,MAAM,CAACtD,OAAO,GAAG,CAAC;MAElB,IAAI6G,QAAQ,EAAE;QACZ1D,aAAa,CAACnD,OAAO,GAAG6G,QAAQ;MAClC,CAAC,MAAM;QACL,IAAMC,QAAQ,GACZF,QAAQ,YAAYrC,WAAW,IAAIqC,QAAQ,CAACG,WAAW,GACnDH,QAAQ,GACR9D,UAAU,CAAC9C,OAAO;QAExBmD,aAAa,CAACnD,OAAO,GAAG8G,QAAQ;QAChCA,QAAQ,aAARA,QAAQ,eAARA,QAAQ,CAAEhJ,KAAK,CAAChB,kBAAkB,CAACoG,eAAe,CAAClD,OAAO,CAAC,CAAC;MAC9D;MACA+C,iBAAiB,CAAC/C,OAAO,GAAG,KAAK;IACnC;EACF,CAAC,EAAE,CAACkB,IAAI,CAAC,CAAC;;EAEV;EACA;EACA,IAAAqC,gBAAS,EAAC,YAAM;IACd,IAAIrC,IAAI,IAAI0B,MAAM,EAAE;MAClB,OAAOoB,SAAS;IAClB;IAEA,IAAMgD,YAAY,GAAG,SAAfA,YAAYA,CAAItC,KAAiB,EAAK;MAAA,IAAAuC,kBAAA;MAC1C,KAAAA,kBAAA,GAAI7D,SAAS,CAACpD,OAAO,cAAAiH,kBAAA,eAAjBA,kBAAA,CAAmBtJ,QAAQ,CAAC+G,KAAK,CAACzG,MAAc,CAAC,EAAE;QAAA,IAAAiJ,qBAAA;QACrD,CAAAA,qBAAA,GAAA/D,aAAa,CAACnD,OAAO,cAAAkH,qBAAA,eAArBA,qBAAA,CAAuBpJ,KAAK,CAC1BhB,kBAAkB,CAACoG,eAAe,CAAClD,OAAO,CAC5C,CAAC;MACH;IACF,CAAC;IAED1C,QAAQ,CAACmJ,gBAAgB,CAAC,SAAS,EAAEO,YAAY,EAAE,IAAI,CAAC;IAExD,OAAO;MAAA,OAAM1J,QAAQ,CAACqJ,mBAAmB,CAAC,SAAS,EAAEK,YAAY,EAAE,IAAI,CAAC;IAAA;EAC1E,CAAC,EAAE,CAAC9F,IAAI,EAAE0B,MAAM,CAAC,CAAC;EAElB,oBACErM,MAAA,CAAAe,OAAA,CAAA+I,aAAA,CAAA9J,MAAA,CAAAe,OAAA,CAAA6P,QAAA,QACGlJ,MAAM,iBAAImJ,cAAK,CAACC,YAAY,CAACpJ,MAAM,EAAEiI,WAAW,CAAC,EACjDJ,aAAa,KAAK,WAAW,IAAI,CAAC5E,IAAI,IAAI0B,MAAM,gBAC/CrM,MAAA,CAAAe,OAAA,CAAA+I,aAAA,CAACvJ,QAAA,CAAAwQ,MAAM,qBACL/Q,MAAA,CAAAe,OAAA,CAAA+I,aAAA;IAAKC,MAAM;IAAC;EAAW,gBACrB/J,MAAA,CAAAe,OAAA,CAAA+I,aAAA,CAACzJ,QAAA,CAAA2Q,mBAAmB;IAACxN,KAAK,EAAE;MAAEmH,IAAI,EAAE,KAAK;MAAEuB;IAAQ;EAAE,GAClD,OAAO1H,QAAQ,KAAK,UAAU,GAAGA,QAAQ,CAACsK,UAAU,CAAC,GAAGtK,QACtC,CAClB,CACC,CAAC,GACP,IAAI,EACPmG,IAAI,IAAI,CAAC0B,MAAM,gBACdrM,MAAA,CAAAe,OAAA,CAAA+I,aAAA,CAAClJ,OAAA,CAAAqQ,MAAM;IACL7H,GAAG,EAAE0D,SAAU;IACfhC,OAAO,EAAE2D,WAAY;IACrByC,SAAS,EAAExF,UAAU,IAAIf,IAAI,GAAG+D,YAAY,GAAGjB;IAC/C;IACA;IAAA;IACA0D,kBAAkB,EAAEzF,UAAW;IAC/B0F,iBAAiB,EAAE,CAAC7G,YAAY,IAAI,CAACI,IAAK;IAC1C0G,aAAa;IACb;IACA;IAAA;IACAjH,gBAAgB,EACdA,gBAAgB,IAAI,CAACO,IAAI,IAAKmB,WAAW,IAAI,CAACoD;IAEhD;IAAA;IACAoC,iBAAiB,EAAE,CAAC3G,IAAK;IACzB4G,oBAAoB,EAAE1B;IACtB;IAAA;IACA7H,KAAK,EAAE;MACLiD,QAAQ,EAAEM,0BAA0B,GAAG,UAAU,GAAG,OAAO;MAC3DiG,aAAa,EAAE;IACjB;EAAE,GAED7G,IAAI,gBACH3K,MAAA,CAAAe,OAAA,CAAA+I,aAAA,CAACrJ,QAAA,CAAAgR,OAAO;IACNvG,SAAS,EAAEG,sBAAuB;IAClCqG,sBAAsB;EAAA,CACvB,CAAC,GACA,IAAI,eACR1R,MAAA,CAAAe,OAAA,CAAA+I,aAAA,CAACpJ,OAAA,CAAAiR,MAAM;IACLvI,GAAG,EAAEyD,SAAU;IACf+E,QAAQ,EAAEhE,SAAU;IACpBjD,IAAI,EAAEiD,SAAS,GAAGjD,IAAI,GAAG,KAAM;IAC/BlF,SAAS,EAAEwF,QAAS;IACpBC,SAAS,EAAEE,eAAgB;IAC3BnE,QAAQ,EAAE,CAAC,CAAE;IACb4K,UAAU,EAAErG,YAAa;IACzBsG,SAAS,EAAEhE,eAAgB;IAC3BiE,UAAU;EAAA,GAET,UAAAC,KAAA;IAAA,IAAGvM,SAAS,GAAAuM,KAAA,CAATvM,SAAS;MAAEwM,eAAe,GAAAD,KAAA,CAAfC,eAAe;IAAA,oBAC5BjS,MAAA,CAAAe,OAAA,CAAA+I,aAAA,CAACnJ,YAAA,CAAAuR,IAAI;MACHzM,SAAS,EAAEA,SAAU;MACrB0M,EAAE,EAAEF,eAAe,aAAfA,eAAe,uBAAfA,eAAe,CAAEE,EAAG;MACxBC,OAAO,EAAEH,eAAe,aAAfA,eAAe,uBAAfA,eAAe,CAAEG,OAAQ;MAClCC,QAAQ,EAAE,SAAVA,QAAQA,CAAA,EAAQ;QAAA,IAAAC,qBAAA;QACdhG,SAAS,CAAC,IAAI,CAAC;QACf2F,eAAe,aAAfA,eAAe,gBAAAK,qBAAA,GAAfL,eAAe,CAAEI,QAAQ,cAAAC,qBAAA,eAAzBA,qBAAA,CAAAzQ,IAAA,CAAAoQ,eAA4B,CAAC;MAC/B;IAAE,gBAEFjS,MAAA,CAAAe,OAAA,CAAA+I,aAAA,CAACxJ,OAAA,CAAAiS,UAAU;MACTrH,SAAS,EAAE,IAAAsH,mBAAU,EACnB,sBAAsB,oBAAAC,MAAA,CACJhI,IAAI,GACtBU,aAAa,EACbD,SACF,CAAE;MACFwH,KAAK,EAAEjI,IAAK;MACZkI,WAAW,EAAEtI,WAAY;MACzBrC,KAAK,EAAE;QAAEwJ,aAAa,EAAE7G,IAAI,GAAG,MAAM,GAAG;MAAO;IAAE,gBAEjD3K,MAAA,CAAAe,OAAA,CAAA+I,aAAA,CAACzJ,QAAA,CAAA2Q,mBAAmB;MAACxN,KAAK,EAAE;QAAEmH,IAAI;QAAEuB;MAAQ;IAAE,GAC3C,OAAO1H,QAAQ,KAAK,UAAU,GAC3BA,QAAQ,CAACsK,UAAU,CAAC,GACpBtK,QACe,CAAC,EACrBsH,WAAW,IAAInB,IAAI,gBAClB3K,MAAA,CAAAe,OAAA,CAAA+I,aAAA,CAACb,WAAW;MAACE,SAAS,EAAEiG;IAAkB,CAAE,CAAC,GAC3C,IACM,CACR,CAAC;EAAA,CAEH,CACF,CAAC,GACP,IACJ,CAAC;AAEP,CAAC;AAEDpF,IAAI,CAAC4I,WAAW,GAAG,MAAM","ignoreList":[]}
1
+ {"version":3,"file":"Menu.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_context","_Styles","_helpers","_useForkRef","_Overlay","_Popper","_Transitions","_Window","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","a","_arrayLikeToArray","toString","slice","constructor","name","Array","from","test","length","l","Symbol","iterator","u","next","done","push","value","return","isArray","isFocusVisible","element","Boolean","matches","_unused","TRIGGER","triggerOf","node","_node$querySelector","querySelector","visibleBoxOf","rects","getBoundingClientRect","children","map","filter","rect","width","height","left","Math","min","right","max","top","bottom","offsetToVisibleBox","options","offset","_ref","placement","wrapper","box","_placement$split","split","_placement$split2","side","align","vertical","start","end","skidding","distance","TABBABLE","returnFocusOptions","visible","focusVisible","focusTabNeighbor","trigger","step","menu","nodes","document","querySelectorAll","tabIndex","disabled","closest","contains","indexOf","index","focus","activeElement","isOnLayerAbove","target","own","layer","Element","layerZ","Number","style","zIndex","ownZ","compareDocumentPosition","Node","DOCUMENT_POSITION_FOLLOWING","PRERENDER_DELAY","PRERENDER_GAP","prerenderQueue","prerenderTimer","runPrerenderQueue","_prerenderQueue$shift","shift","setTimeout","queuePrerender","render","splice","FocusInside","_ref2","onFocused","ref","useRef","useLayoutEffect","_ref$current","_ref3","current","parentElement","first","find","preventScroll","createElement","hidden","Menu","exports","_ref4","_ref4$disableFocusLoc","disableFocusLock","onMenuClick","_ref4$handleScroll","handleScroll","_ref4$mode","mode","_ref4$open","open","defaultOpen","onOpen","onClose","onBeforeClose","_ref4$position","position","className","menuClassName","popperClassName","backgroundElementClass","_ref4$windowAbsolutel","windowAbsolutelyPositioned","onPopperOpen","_ref4$closeOnTab","closeOnTab","_ref4$prerender","prerender","_ref4$scopedFocus","scopedFocus","_useState","useState","_useState2","setOpen","_useState3","_useState4","exited","setExited","elementRef","isOpenAtLeastOnce","wasOpen","focusBeforeOpen","focusWasVisible","returnFocusTo","popperRef","windowRef","tabOut","useEffect","expandedTrigger","checkedTrigger","triggerOwnsExpanded","hasAttribute","setAttribute","removeAttribute","handleRef","useForkRef","undefined","_useState5","_useState6","childNode","setChildNode","popperModifiers","useMemo","HTMLElement","handleOpen","useCallback","event","_target$props","preventDefault","stopPropagation","props","onClick","handleClose","handleTabOut","key","defaultPrevented","shiftKey","childProps","forceClose","_useState7","_useState8","focusedInside","setFocusedInside","markFocusedInside","_useState9","_useState0","prerenderStep","setPrerenderStep","handleCloseRef","handleTargetClose","targetProps","pressInside","markPressInside","nativeEvent","closeOnPressOutside","_elementRef$current","timer","addEventListener","clearTimeout","removeEventListener","previous","tabbedTo","returnTo","isConnected","keepFocusOut","_popperRef$current","_returnFocusTo$curren","Fragment","React","cloneElement","Portal","MenuContextProvider","Window","onKeyDown","disableReturnFocus","disableScrollLock","isolateScroll","disableCloseOnEsc","onPointerDownCapture","pointerEvents","Overlay","disableBackgroundColor","Popper","anchorEl","afterWrite","modifiers","transition","_ref5","_elementRef$current2","transitionProps","Grow","in","onEnter","onExited","_transitionProps$onEx","StyledMenu","classnames","concat","$mode","onMouseDown","offsetWidth","displayName"],"sources":["../../../../src/components/Menu/Menu.tsx"],"sourcesContent":["import React, {\n useRef,\n FC,\n ReactNode,\n MouseEvent,\n KeyboardEvent,\n useState,\n useCallback,\n useEffect,\n useLayoutEffect,\n useMemo,\n ReactElement,\n Ref,\n} from \"react\";\n\nimport { Placement } from \"@popperjs/core\";\nimport classnames from \"classnames\";\n\nimport { MenuContextProvider } from \"./context\";\nimport { StyledMenu } from \"./Styles\";\nimport { Portal } from \"../../helpers\";\nimport useForkRef from \"../../utils/useForkRef\";\nimport { Overlay } from \"../Overlay\";\nimport { Popper } from \"../Popper\";\nimport { Grow } from \"../Transitions\";\nimport { Window } from \"../Window\";\n\ninterface ElementWithRef<T> extends ReactElement {\n ref?: Ref<T>;\n}\n\n// source: https://twitter.com/mattpocockuk/status/1671908303918473217/photo/1\n// eslint-disable-next-line @typescript-eslint/ban-types\nexport type MenuMode = \"normal\" | \"wider\" | \"tiny\" | \"widest\";\n\nexport interface IMenu {\n /** Menu content */\n children:\n | ReactNode\n | ((childProps: { forceClose: () => void }) => JSX.Element);\n /** On menu element click */\n onMenuClick?: (event: MouseEvent<HTMLElement>) => void;\n /** Handle scroll bar */\n handleScroll?: boolean;\n /** Disable Focus Lock */\n disableFocusLock?: boolean;\n /** Menu width mode */\n mode?: MenuMode;\n /** A width in pixels, or \"target\" for the width of the target. It wins over the mode. */\n width?: number | \"target\";\n /** Should menu be open when it's mounted */\n open?: boolean;\n /** Callback triggered when modal has been opened */\n onOpen?: () => void;\n /** Callback triggered when modal has been closed */\n onClose?: () => void;\n /** Before close callback */\n onBeforeClose?: () => boolean;\n /** Position Menu */\n position?: Placement;\n /** Target element */\n target?: ElementWithRef<Element>;\n className?: string;\n /** Menu classes */\n menuClassName?: string;\n /** Popper class name*/\n popperClassName?: string;\n /** Background style for clickable element after the menu is open (opacity, color, etc...) */\n backgroundElementClass?: string;\n /** Should Window be positioned absolutely */\n windowAbsolutelyPositioned?: boolean;\n /** Popper on open */\n onPopperOpen?: (...args) => void;\n /** Tab and Shift+Tab close the menu and move the focus on from the target, as they would on the target itself */\n closeOnTab?: boolean;\n /** Render the content once, hidden, soon after this turns on, so the first open is as fast as the next ones */\n prerender?: boolean;\n /** Move the focus into the menu itself, so the focus lock never searches the whole page for a place to put it */\n scopedFocus?: boolean;\n}\n\nconst isFocusVisible = (element: Element | null) => {\n try {\n return Boolean(element?.matches(\":focus-visible\"));\n } catch {\n return false;\n }\n};\n\nconst TRIGGER = 'button, [role=\"button\"], a[href]';\n\n// A target can wrap its button, as a div around a Tooltip or a CounterButton does.\nconst triggerOf = (node: HTMLElement) =>\n node.matches(TRIGGER)\n ? node\n : node.querySelector<HTMLElement>(TRIGGER) ?? node;\n\nconst visibleBoxOf = (node: HTMLElement) => {\n // A child hidden by a breakpoint has an empty box at 0,0, so it must not count.\n const rects = [\n node.getBoundingClientRect(),\n ...Array.from(node.children)\n .map((element) => element.getBoundingClientRect())\n .filter((rect) => rect.width > 0 || rect.height > 0),\n ];\n\n return {\n left: Math.min(...rects.map((rect) => rect.left)),\n right: Math.max(...rects.map((rect) => rect.right)),\n top: Math.min(...rects.map((rect) => rect.top)),\n bottom: Math.max(...rects.map((rect) => rect.bottom)),\n };\n};\n\n// A control group pulls a wrapped button out of its wrapper by negative margins, so the menu lines up with the button.\nconst offsetToVisibleBox = (node: HTMLElement) => ({\n name: \"offset\",\n options: {\n offset: ({ placement }: { placement: Placement }): [number, number] => {\n if (triggerOf(node) === node) {\n return [0, 0];\n }\n\n const wrapper = node.getBoundingClientRect();\n const box = visibleBoxOf(node);\n const [side, align] = placement.split(\"-\");\n const vertical = side === \"top\" || side === \"bottom\";\n const start = vertical ? \"left\" : \"top\";\n const end = vertical ? \"right\" : \"bottom\";\n const skidding =\n align === \"start\"\n ? box[start] - wrapper[start]\n : align === \"end\"\n ? box[end] - wrapper[end]\n : (box[start] + box[end] - wrapper[start] - wrapper[end]) / 2;\n const distance = {\n bottom: box.bottom - wrapper.bottom,\n top: wrapper.top - box.top,\n right: box.right - wrapper.right,\n left: wrapper.left - box.left,\n }[side];\n\n return [skidding, distance ?? 0];\n },\n },\n});\n\nconst TABBABLE =\n 'a[href], button, input, select, textarea, iframe, [tabindex], [contenteditable=\"true\"]';\n\n// A menu opened with the pointer hands the focus back without a focus ring, so its trigger does not stay lit.\nconst returnFocusOptions = (visible: boolean) =>\n ({ focusVisible: visible } as FocusOptions);\n\n// Moves the focus where a Tab or Shift+Tab on the trigger would go. The closing menu itself does not count.\nconst focusTabNeighbor = (\n trigger: HTMLElement,\n step: 1 | -1,\n menu: HTMLElement | null\n) => {\n const nodes = Array.from(\n document.querySelectorAll<HTMLElement>(TABBABLE)\n ).filter(\n (node) =>\n node === trigger ||\n (node.tabIndex >= 0 &&\n !(node as HTMLButtonElement).disabled &&\n !node.closest(\"[inert]\") &&\n !menu?.contains(node))\n );\n\n const from = nodes.indexOf(trigger);\n\n for (\n let index = from + step;\n from !== -1 && index >= 0 && index < nodes.length;\n index += step\n ) {\n nodes[index].focus(returnFocusOptions(true));\n\n if (document.activeElement === nodes[index]) {\n return nodes[index];\n }\n }\n\n return null;\n};\n\n// A press on a layer above the menu, such as a dialog it opened, never reached the old overlay either.\nconst isOnLayerAbove = (\n target: EventTarget | null,\n own: HTMLElement | null\n) => {\n const layer =\n target instanceof Element ? target.closest<HTMLElement>(\".c-window\") : null;\n\n if (!layer || !own || layer === own) {\n return false;\n }\n\n const layerZ = Number(layer.style.zIndex) || 0;\n const ownZ = Number(own.style.zIndex) || 0;\n\n return (\n layerZ > ownZ ||\n (layerZ === ownZ &&\n Boolean(\n own.compareDocumentPosition(layer) & Node.DOCUMENT_POSITION_FOLLOWING\n ))\n );\n};\n\nconst PRERENDER_DELAY = 50;\nconst PRERENDER_GAP = 50;\nconst prerenderQueue: (() => void)[] = [];\nlet prerenderTimer: ReturnType<typeof setTimeout> | null = null;\n\nconst runPrerenderQueue = () => {\n prerenderQueue.shift()?.();\n prerenderTimer = prerenderQueue.length\n ? setTimeout(runPrerenderQueue, PRERENDER_GAP)\n : null;\n};\n\n// One menu at a time, a moment after the caller turns it on, so no frame carries more than one render.\nconst queuePrerender = (render: () => void) => {\n prerenderQueue.push(render);\n\n if (!prerenderTimer) {\n prerenderTimer = setTimeout(runPrerenderQueue, PRERENDER_DELAY);\n }\n\n return () => {\n const index = prerenderQueue.indexOf(render);\n\n if (index !== -1) {\n prerenderQueue.splice(index, 1);\n }\n };\n};\n\n// Its layout effect runs before the popper ref is set, so it finds the menu through its own node.\nconst FocusInside: FC<{ onFocused: () => void }> = ({ onFocused }) => {\n const ref = useRef<HTMLSpanElement>(null);\n\n useLayoutEffect(() => {\n const menu = ref.current?.parentElement;\n\n if (!menu) {\n return;\n }\n\n if (menu.contains(document.activeElement)) {\n onFocused();\n return;\n }\n\n const first = Array.from(menu.querySelectorAll<HTMLElement>(TABBABLE)).find(\n (node) => node.tabIndex >= 0 && !(node as HTMLButtonElement).disabled\n );\n\n (first ?? menu.closest<HTMLElement>(\"[tabindex]\"))?.focus({\n preventScroll: true,\n });\n onFocused();\n }, [onFocused]);\n\n return <span ref={ref} hidden />;\n};\n\nexport const Menu: FC<IMenu> = ({\n children,\n disableFocusLock = false,\n onMenuClick,\n handleScroll = true,\n mode = \"normal\",\n width,\n open: defaultOpen = false,\n onOpen,\n onClose,\n onBeforeClose,\n position = \"bottom-start\",\n target,\n className,\n menuClassName,\n popperClassName,\n backgroundElementClass,\n windowAbsolutelyPositioned = false,\n onPopperOpen,\n closeOnTab = false,\n prerender = false,\n scopedFocus = false,\n}) => {\n const [open, setOpen] = useState(defaultOpen);\n const [exited, setExited] = useState(!defaultOpen);\n // The trigger node lives in a ref. In state it would render every menu of a list again right after it mounts.\n const elementRef = useRef<HTMLElement | null>(null);\n const isOpenAtLeastOnce = useRef(false);\n const wasOpen = useRef(open);\n const focusBeforeOpen = useRef<Element | null>(null);\n const focusWasVisible = useRef(false);\n const returnFocusTo = useRef<HTMLElement | null>(null);\n const popperRef = useRef<HTMLDivElement | null>(null);\n const windowRef = useRef<HTMLDivElement | null>(null);\n const tabOut = useRef<1 | -1 | 0>(0);\n\n // Read on the render that opens the menu, before the focus lock moves the focus inside it.\n if (open && !wasOpen.current && typeof document !== \"undefined\") {\n focusBeforeOpen.current = document.activeElement;\n focusWasVisible.current = isFocusVisible(document.activeElement);\n }\n wasOpen.current = open;\n\n useEffect(() => {\n setOpen(defaultOpen);\n }, [defaultOpen]);\n\n useEffect(() => {\n if (open) {\n setExited(false);\n }\n }, [open]);\n\n // Set on the node itself, so the trigger gets it also through a wrapper such as Tooltip. It runs after every\n // render, because the trigger node lives in a ref and a new node brings no render of its own.\n const expandedTrigger = useRef<HTMLElement | null>(null);\n const checkedTrigger = useRef<HTMLElement | null>(null);\n const triggerOwnsExpanded = useRef(false);\n\n useEffect(() => {\n const node = elementRef.current;\n\n if (!node) {\n return;\n }\n\n const trigger = triggerOf(node);\n\n // A trigger that renders its own aria-expanded keeps it, so the menu never clears its \"false\".\n if (checkedTrigger.current !== trigger) {\n checkedTrigger.current = trigger;\n triggerOwnsExpanded.current = trigger.hasAttribute(\"aria-expanded\");\n }\n\n if (!trigger.hasAttribute(\"aria-haspopup\")) {\n trigger.setAttribute(\"aria-haspopup\", \"true\");\n }\n\n if (triggerOwnsExpanded.current) {\n return;\n }\n\n if (open) {\n trigger.setAttribute(\"aria-expanded\", \"true\");\n expandedTrigger.current = trigger;\n } else if (expandedTrigger.current) {\n expandedTrigger.current.removeAttribute(\"aria-expanded\");\n expandedTrigger.current = null;\n }\n });\n\n const handleRef = useForkRef(target ? target.ref : undefined, elementRef);\n\n // The popper needs the node as state, so it is copied only while the menu shows, before the browser paints.\n const [childNode, setChildNode] = useState<HTMLElement | null>(null);\n\n useLayoutEffect(() => {\n const node = open || !exited ? elementRef.current : null;\n\n if (node !== childNode) {\n setChildNode(node);\n }\n }, [open, exited, childNode]);\n\n const popperModifiers = useMemo(\n () =>\n childNode instanceof HTMLElement\n ? [offsetToVisibleBox(childNode)]\n : undefined,\n [childNode]\n );\n\n const handleOpen = useCallback(\n (\n event: Pick<MouseEvent<Element>, \"preventDefault\" | \"stopPropagation\">\n ) => {\n event?.preventDefault();\n event?.stopPropagation();\n setOpen(true);\n typeof onOpen === \"function\" && onOpen();\n typeof target?.props?.onClick === \"function\" &&\n target.props.onClick(event);\n },\n [onOpen, target?.props]\n );\n\n const handleClose = useCallback(() => {\n if (typeof onBeforeClose === \"function\" && !onBeforeClose()) {\n return false;\n }\n setOpen(false);\n typeof onClose === \"function\" && onClose();\n\n return true;\n }, [onClose, onBeforeClose]);\n\n const handleTabOut = useCallback(\n (event: KeyboardEvent<HTMLDivElement>) => {\n if (event.key !== \"Tab\" || event.defaultPrevented) {\n return;\n }\n\n event.preventDefault();\n tabOut.current = event.shiftKey ? -1 : 1;\n\n if (!handleClose()) {\n tabOut.current = 0;\n }\n },\n [handleClose]\n );\n\n const childProps = {\n forceClose: handleClose,\n };\n\n const [focusedInside, setFocusedInside] = useState(false);\n const markFocusedInside = useCallback(() => setFocusedInside(true), []);\n\n useEffect(() => {\n if (!open) {\n setFocusedInside(false);\n }\n }, [open]);\n\n const [prerenderStep, setPrerenderStep] = useState<\n \"off\" | \"waiting\" | \"rendering\" | \"done\"\n >(\"off\");\n\n // The caller can turn it on later, for example once the form that holds the menu has finished opening.\n useEffect(() => {\n if (prerender && prerenderStep === \"off\") {\n setPrerenderStep(\"waiting\");\n }\n }, [prerender, prerenderStep]);\n\n useEffect(() => {\n if (prerenderStep === \"off\" || prerenderStep === \"done\") {\n return undefined;\n }\n\n if (prerenderStep === \"rendering\") {\n setPrerenderStep(\"done\");\n\n return undefined;\n }\n\n return queuePrerender(() => setPrerenderStep(\"rendering\"));\n }, [prerenderStep]);\n\n const handleCloseRef = useRef(handleClose);\n handleCloseRef.current = handleClose;\n\n const handleTargetClose = useCallback(\n (\n event: Pick<MouseEvent<Element>, \"preventDefault\" | \"stopPropagation\">\n ) => {\n event?.preventDefault();\n event?.stopPropagation();\n handleClose();\n },\n [handleClose]\n );\n\n const targetProps = {\n open,\n ref: handleRef,\n onClick: open ? handleTargetClose : handleOpen,\n };\n\n // React carries the press through portals, so a nested menu or dialog counts as inside.\n const pressInside = useRef<Event | null>(null);\n const markPressInside = useCallback((event: React.PointerEvent) => {\n pressInside.current = event.nativeEvent;\n }, []);\n\n useEffect(() => {\n if (!open) {\n return undefined;\n }\n\n const closeOnPressOutside = (event: Event) => {\n if (\n pressInside.current === event ||\n elementRef.current?.contains(event.target as Node) ||\n isOnLayerAbove(event.target, windowRef.current)\n ) {\n return;\n }\n\n handleCloseRef.current();\n };\n\n // Armed after the press that opened the menu has passed the document.\n const timer = setTimeout(() =>\n document.addEventListener(\"pointerdown\", closeOnPressOutside)\n );\n\n return () => {\n clearTimeout(timer);\n document.removeEventListener(\"pointerdown\", closeOnPressOutside);\n };\n }, [open]);\n\n useEffect(() => {\n if (open) {\n isOpenAtLeastOnce.current = true;\n } else if (!open && isOpenAtLeastOnce.current) {\n const previous = focusBeforeOpen.current;\n const step = tabOut.current;\n const tabbedTo =\n step && elementRef.current\n ? focusTabNeighbor(\n triggerOf(elementRef.current),\n step,\n windowRef.current\n )\n : null;\n\n tabOut.current = 0;\n\n if (tabbedTo) {\n returnFocusTo.current = tabbedTo;\n } else {\n const returnTo =\n previous instanceof HTMLElement && previous.isConnected\n ? previous\n : elementRef.current;\n\n returnFocusTo.current = returnTo;\n returnTo?.focus(returnFocusOptions(focusWasVisible.current));\n }\n isOpenAtLeastOnce.current = false;\n }\n }, [open]);\n\n // A fading menu is already closed. Its content can still reach for the focus, and would take it away\n // with it when it unmounts, so the focus goes straight back to where the menu returned it.\n useEffect(() => {\n if (open || exited) {\n return undefined;\n }\n\n const keepFocusOut = (event: FocusEvent) => {\n if (popperRef.current?.contains(event.target as Node)) {\n returnFocusTo.current?.focus(\n returnFocusOptions(focusWasVisible.current)\n );\n }\n };\n\n document.addEventListener(\"focusin\", keepFocusOut, true);\n\n return () => document.removeEventListener(\"focusin\", keepFocusOut, true);\n }, [open, exited]);\n\n return (\n <>\n {target && React.cloneElement(target, targetProps)}\n {prerenderStep === \"rendering\" && !open && exited ? (\n <Portal>\n <div hidden aria-hidden>\n <MenuContextProvider value={{ open: false, setOpen }}>\n {typeof children === \"function\" ? children(childProps) : children}\n </MenuContextProvider>\n </div>\n </Portal>\n ) : null}\n {open || !exited ? (\n <Window\n ref={windowRef}\n onClose={handleClose}\n onKeyDown={closeOnTab && open ? handleTabOut : undefined}\n // The lock returns the focus with the props of the render before it turns off, too late to skip a Tab.\n // The menu returns the focus itself, so a menu that closes on Tab leaves the lock out of it.\n disableReturnFocus={closeOnTab}\n disableScrollLock={!handleScroll || !open}\n isolateScroll\n // The menu returns the focus itself at once, so a late returnFocus cannot undo a caller's move.\n // With the focus already inside, the lock turns on without searching the page for a place to put it.\n disableFocusLock={\n disableFocusLock || !open || (scopedFocus && !focusedInside)\n }\n // A fading menu is already closed, so an escape pressed meanwhile belongs to the page behind it.\n disableCloseOnEsc={!open}\n onPointerDownCapture={markPressInside}\n // The page behind the menu keeps its clicks and its cursor. Only the menu itself takes the pointer.\n style={{\n position: windowAbsolutelyPositioned ? \"absolute\" : \"fixed\",\n pointerEvents: \"none\",\n }}\n >\n {open ? (\n <Overlay\n className={backgroundElementClass}\n disableBackgroundColor\n />\n ) : null}\n <Popper\n ref={popperRef}\n anchorEl={childNode}\n open={childNode ? open : false}\n placement={position}\n className={popperClassName}\n tabIndex={-1}\n afterWrite={onPopperOpen}\n modifiers={popperModifiers}\n transition\n >\n {({ placement, transitionProps }) => (\n <Grow\n placement={placement}\n in={transitionProps?.in}\n onEnter={transitionProps?.onEnter}\n onExited={() => {\n setExited(true);\n transitionProps?.onExited?.();\n }}\n >\n <StyledMenu\n className={classnames(\n \"c-simple-menu__paper\",\n `c-simple-menu__${mode}`,\n menuClassName,\n className\n )}\n $mode={mode}\n onMouseDown={onMenuClick}\n style={{\n pointerEvents: open ? \"auto\" : \"none\",\n width:\n width === \"target\"\n ? elementRef.current?.offsetWidth\n : width,\n }}\n >\n <MenuContextProvider value={{ open, setOpen }}>\n {typeof children === \"function\"\n ? children(childProps)\n : children}\n </MenuContextProvider>\n {scopedFocus && open ? (\n <FocusInside onFocused={markFocusedInside} />\n ) : null}\n </StyledMenu>\n </Grow>\n )}\n </Popper>\n </Window>\n ) : null}\n </>\n );\n};\n\nMenu.displayName = \"Menu\";\n"],"mappings":"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","ignoreList":[]}
@@ -7,20 +7,36 @@ exports.MenuFooter = void 0;
7
7
  var _react = _interopRequireWildcard(require("react"));
8
8
  var _classnames = _interopRequireDefault(require("classnames"));
9
9
  var _Styles = require("./Styles");
10
- var _excluded = ["children", "className"];
10
+ var _Button = require("../Button");
11
+ var _excluded = ["children", "className", "primary", "secondary", "tertiary"];
11
12
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
12
13
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
13
14
  function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
14
15
  function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
15
16
  function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }
17
+ var actionButton = function actionButton(action, variant) {
18
+ return action ? /*#__PURE__*/_react.default.createElement(_Button.Button, {
19
+ type: "button",
20
+ variant: variant,
21
+ size: "small",
22
+ disabled: action.disabled,
23
+ onClick: action.onClick,
24
+ "data-testid": action["data-testid"]
25
+ }, action.label) : null;
26
+ };
16
27
  var MenuFooter = exports.MenuFooter = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
17
28
  var children = _ref.children,
18
29
  className = _ref.className,
30
+ primary = _ref.primary,
31
+ secondary = _ref.secondary,
32
+ tertiary = _ref.tertiary,
19
33
  props = _objectWithoutProperties(_ref, _excluded);
34
+ var hasActions = Boolean(primary || secondary || tertiary);
20
35
  return /*#__PURE__*/_react.default.createElement(_Styles.StyledMenuFooter, _extends({}, props, {
36
+ $actions: hasActions,
21
37
  className: (0, _classnames.default)("c-menu-footer", className),
22
38
  ref: ref
23
- }), children);
39
+ }), hasActions ? /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_Styles.StyledMenuFooterGroup, null, actionButton(primary, "primary"), actionButton(secondary, "secondary")), actionButton(tertiary, "text gray")) : null, children);
24
40
  });
25
41
  MenuFooter.displayName = "MenuFooter";
26
42
  //# sourceMappingURL=MenuFooter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MenuFooter.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_Styles","_excluded","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_extends","assign","bind","arguments","length","apply","_objectWithoutProperties","_objectWithoutPropertiesLoose","getOwnPropertySymbols","indexOf","propertyIsEnumerable","MenuFooter","exports","forwardRef","_ref","ref","children","className","props","createElement","StyledMenuFooter","classnames","displayName"],"sources":["../../../../src/components/Menu/MenuFooter.tsx"],"sourcesContent":["import React, {\n forwardRef,\n HTMLAttributes,\n ReactNode,\n ReactNodeArray,\n Ref,\n} from \"react\";\n\nimport classnames from \"classnames\";\n\nimport { StyledMenuFooter } from \"./Styles\";\n\nexport interface IMenuFooter {\n className?: string;\n children?: ReactNode | ReactNodeArray;\n}\n\nexport const MenuFooter = forwardRef(\n (\n {\n children,\n className,\n ...props\n }: IMenuFooter & HTMLAttributes<HTMLDivElement>,\n ref: Ref<HTMLDivElement>\n ) => {\n return (\n <StyledMenuFooter\n {...props}\n className={classnames(\"c-menu-footer\", className)}\n ref={ref}\n >\n {children}\n </StyledMenuFooter>\n );\n }\n);\n\nMenuFooter.displayName = \"MenuFooter\";\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"MenuFooter.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_Styles","_Button","_excluded","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_extends","assign","bind","arguments","length","apply","_objectWithoutProperties","_objectWithoutPropertiesLoose","getOwnPropertySymbols","indexOf","propertyIsEnumerable","actionButton","action","variant","createElement","Button","type","size","disabled","onClick","label","MenuFooter","exports","forwardRef","_ref","ref","children","className","primary","secondary","tertiary","props","hasActions","Boolean","StyledMenuFooter","$actions","classnames","Fragment","StyledMenuFooterGroup","displayName"],"sources":["../../../../src/components/Menu/MenuFooter.tsx"],"sourcesContent":["import React, {\n forwardRef,\n HTMLAttributes,\n ReactNode,\n ReactNodeArray,\n Ref,\n} from \"react\";\n\nimport classnames from \"classnames\";\n\nimport { StyledMenuFooter, StyledMenuFooterGroup } from \"./Styles\";\nimport { Button } from \"../Button\";\n\nexport interface MenuFooterAction {\n label: string;\n onClick: () => void;\n disabled?: boolean;\n \"data-testid\"?: string;\n}\n\nexport interface IMenuFooter {\n className?: string;\n children?: ReactNode | ReactNodeArray;\n /** The main action, a primary button at the left. */\n primary?: MenuFooterAction;\n /** The second action, beside the main one. */\n secondary?: MenuFooterAction;\n /** A quiet action at the right, such as Remove. */\n tertiary?: MenuFooterAction;\n}\n\nconst actionButton = (\n action: MenuFooterAction | undefined,\n variant: \"primary\" | \"secondary\" | \"text gray\"\n) =>\n action ? (\n <Button\n type=\"button\"\n variant={variant}\n size=\"small\"\n disabled={action.disabled}\n onClick={action.onClick}\n data-testid={action[\"data-testid\"]}\n >\n {action.label}\n </Button>\n ) : null;\n\nexport const MenuFooter = forwardRef(\n (\n {\n children,\n className,\n primary,\n secondary,\n tertiary,\n ...props\n }: IMenuFooter & HTMLAttributes<HTMLDivElement>,\n ref: Ref<HTMLDivElement>\n ) => {\n const hasActions = Boolean(primary || secondary || tertiary);\n\n return (\n <StyledMenuFooter\n {...props}\n $actions={hasActions}\n className={classnames(\"c-menu-footer\", className)}\n ref={ref}\n >\n {hasActions ? (\n <>\n <StyledMenuFooterGroup>\n {actionButton(primary, \"primary\")}\n {actionButton(secondary, \"secondary\")}\n </StyledMenuFooterGroup>\n {actionButton(tertiary, \"text gray\")}\n </>\n ) : null}\n {children}\n </StyledMenuFooter>\n );\n }\n);\n\nMenuFooter.displayName = \"MenuFooter\";\n"],"mappings":"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","ignoreList":[]}
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.StyledMenuHeader = exports.StyledMenuFooter = exports.StyledMenu = void 0;
6
+ exports.StyledMenuHeader = exports.StyledMenuFooterGroup = exports.StyledMenuFooter = exports.StyledMenu = void 0;
7
7
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
8
8
  var _BoxSizingStyle = require("../BoxSizingStyle");
9
9
  var _Bubble = require("../Bubble");
@@ -28,17 +28,23 @@ StyledMenu.displayName = "StyledMenu";
28
28
  var StyledMenuFooter = exports.StyledMenuFooter = _styledComponents.default.div.withConfig({
29
29
  displayName: "Styles__StyledMenuFooter",
30
30
  componentId: "sc-8fhkp-1"
31
- })(["", " display:flex;border-top:1px solid var(--border-primary);height:32px;align-items:center;"], {
31
+ })(["", " display:flex;border-top:1px solid var(--border-primary);height:32px;align-items:center;", ""], {
32
32
  "display": "flex",
33
33
  "paddingLeft": "0.5rem",
34
34
  "paddingRight": "0.5rem",
35
35
  "paddingTop": "0.25rem",
36
36
  "paddingBottom": "0.25rem"
37
+ }, function (props) {
38
+ return props.$actions && (0, _styledComponents.css)(["height:auto;justify-content:space-between;gap:0.5rem;padding:0.625rem 0.75rem;border-top-color:var(--border-raised);"]);
37
39
  });
40
+ var StyledMenuFooterGroup = exports.StyledMenuFooterGroup = _styledComponents.default.div.withConfig({
41
+ displayName: "Styles__StyledMenuFooterGroup",
42
+ componentId: "sc-8fhkp-2"
43
+ })(["display:flex;align-items:center;gap:0.5rem;"]);
38
44
  StyledMenuFooter.displayName = "StyledMenuFooter";
39
45
  var StyledMenuHeader = exports.StyledMenuHeader = _styledComponents.default.div.withConfig({
40
46
  displayName: "Styles__StyledMenuHeader",
41
- componentId: "sc-8fhkp-2"
47
+ componentId: "sc-8fhkp-3"
42
48
  })(["", " border-bottom:1px solid var(--border-primary);height:32px;"], {
43
49
  "display": "flex",
44
50
  "alignItems": "center",
@@ -1 +1 @@
1
- {"version":3,"file":"Styles.js","names":["_styledComponents","_interopRequireWildcard","require","_BoxSizingStyle","_Bubble","_FontStyle","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","StyledMenu","exports","styled","Bubble","withConfig","displayName","componentId","FontStyle","BoxSizingStyle","props","$mode","css","StyledMenuFooter","div","StyledMenuHeader"],"sources":["../../../../src/components/Menu/Styles.ts"],"sourcesContent":["import styled, { css } from \"styled-components\";\nimport tw from \"twin.macro\";\n\nimport { BoxSizingStyle } from \"../BoxSizingStyle\";\nimport { Bubble } from \"../Bubble\";\nimport { FontStyle } from \"../FontStyle\";\n\nexport const StyledMenu = styled(Bubble)<{ $mode: string }>`\n ${tw`tw-bg-page-paper-main tw-overflow-auto`}\n border-color: var(--popover-border);\n\n ${FontStyle}\n ${BoxSizingStyle}\n \n color: var(--color-theme-700);\n a:focus,\n a:active {\n outline: none;\n }\n\n ${(props) =>\n props.$mode === \"normal\" &&\n css`\n width: 260px;\n `}\n\n ${(props) =>\n props.$mode === \"wider\" &&\n css`\n width: 350px;\n `}\n\n ${(props) =>\n props.$mode === \"tiny\" &&\n css`\n width: 180px;\n `}\n\n ${(props) =>\n props.$mode === \"widest\" &&\n css`\n width: 590px;\n `}\n`;\nStyledMenu.displayName = \"StyledMenu\";\n\nexport const StyledMenuFooter = styled.div`\n ${tw`tw-flex tw-px-2 tw-py-1`}\n\n display: flex;\n border-top: 1px solid var(--border-primary);\n height: 32px;\n align-items: center;\n`;\nStyledMenuFooter.displayName = \"StyledMenuFooter\";\n\nexport const StyledMenuHeader = styled.div`\n ${tw`tw-flex tw-items-center tw-justify-between tw-px-2 tw-py-1`}\n\n border-bottom: 1px solid var(--border-primary);\n height: 32px;\n`;\nStyledMenuHeader.displayName = \"StyledMenuHeader\";\n"],"mappings":";;;;;;AAAA,IAAAA,iBAAA,GAAAC,uBAAA,CAAAC,OAAA;AAGA,IAAAC,eAAA,GAAAD,OAAA;AACA,IAAAE,OAAA,GAAAF,OAAA;AACA,IAAAG,UAAA,GAAAH,OAAA;AAAyC,SAAAD,wBAAAK,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAP,uBAAA,YAAAA,wBAAAK,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,cAAAM,EAAA,IAAAd,CAAA,gBAAAc,EAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAc,EAAA,OAAAP,CAAA,IAAAD,CAAA,GAAAW,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAnB,CAAA,EAAAc,EAAA,OAAAP,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAM,EAAA,EAAAP,CAAA,IAAAC,CAAA,CAAAM,EAAA,IAAAd,CAAA,CAAAc,EAAA,WAAAN,CAAA,KAAAR,CAAA,EAAAC,CAAA;AAElC,IAAMmB,UAAU,GAAAC,OAAA,CAAAD,UAAA,GAAG,IAAAE,yBAAM,EAACC,cAAM,CAAC,CAAAC,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,0IAClC;EAAA;EAAA;AAAuC,CAAC,EAG1CC,oBAAS,EACTC,8BAAc,EAQd,UAACC,KAAK;EAAA,OACNA,KAAK,CAACC,KAAK,KAAK,QAAQ,QACxBC,qBAAG,mBAEF;AAAA,GAED,UAACF,KAAK;EAAA,OACNA,KAAK,CAACC,KAAK,KAAK,OAAO,QACvBC,qBAAG,mBAEF;AAAA,GAED,UAACF,KAAK;EAAA,OACNA,KAAK,CAACC,KAAK,KAAK,MAAM,QACtBC,qBAAG,mBAEF;AAAA,GAED,UAACF,KAAK;EAAA,OACNA,KAAK,CAACC,KAAK,KAAK,QAAQ,QACxBC,qBAAG,mBAEF;AAAA,EACJ;AACDX,UAAU,CAACK,WAAW,GAAG,YAAY;AAE9B,IAAMO,gBAAgB,GAAAX,OAAA,CAAAW,gBAAA,GAAGV,yBAAM,CAACW,GAAG,CAAAT,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,qGACpC;EAAA;EAAA;EAAA;EAAA;EAAA;AAAwB,CAAC,CAM9B;AACDM,gBAAgB,CAACP,WAAW,GAAG,kBAAkB;AAE1C,IAAMS,gBAAgB,GAAAb,OAAA,CAAAa,gBAAA,GAAGZ,yBAAM,CAACW,GAAG,CAAAT,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,wEACpC;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;AAA2D,CAAC,CAIjE;AACDQ,gBAAgB,CAACT,WAAW,GAAG,kBAAkB","ignoreList":[]}
1
+ {"version":3,"file":"Styles.js","names":["_styledComponents","_interopRequireWildcard","require","_BoxSizingStyle","_Bubble","_FontStyle","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","StyledMenu","exports","styled","Bubble","withConfig","displayName","componentId","FontStyle","BoxSizingStyle","props","$mode","css","StyledMenuFooter","div","$actions","StyledMenuFooterGroup","StyledMenuHeader"],"sources":["../../../../src/components/Menu/Styles.ts"],"sourcesContent":["import styled, { css } from \"styled-components\";\nimport tw from \"twin.macro\";\n\nimport { BoxSizingStyle } from \"../BoxSizingStyle\";\nimport { Bubble } from \"../Bubble\";\nimport { FontStyle } from \"../FontStyle\";\n\nexport const StyledMenu = styled(Bubble)<{ $mode: string }>`\n ${tw`tw-bg-page-paper-main tw-overflow-auto`}\n border-color: var(--popover-border);\n\n ${FontStyle}\n ${BoxSizingStyle}\n \n color: var(--color-theme-700);\n a:focus,\n a:active {\n outline: none;\n }\n\n ${(props) =>\n props.$mode === \"normal\" &&\n css`\n width: 260px;\n `}\n\n ${(props) =>\n props.$mode === \"wider\" &&\n css`\n width: 350px;\n `}\n\n ${(props) =>\n props.$mode === \"tiny\" &&\n css`\n width: 180px;\n `}\n\n ${(props) =>\n props.$mode === \"widest\" &&\n css`\n width: 590px;\n `}\n`;\nStyledMenu.displayName = \"StyledMenu\";\n\nexport const StyledMenuFooter = styled.div<{ $actions?: boolean }>`\n ${tw`tw-flex tw-px-2 tw-py-1`}\n\n display: flex;\n border-top: 1px solid var(--border-primary);\n height: 32px;\n align-items: center;\n\n ${(props) =>\n props.$actions &&\n css`\n height: auto;\n justify-content: space-between;\n gap: 0.5rem;\n padding: 0.625rem 0.75rem;\n border-top-color: var(--border-raised);\n `}\n`;\n\nexport const StyledMenuFooterGroup = styled.div`\n display: flex;\n align-items: center;\n gap: 0.5rem;\n`;\nStyledMenuFooter.displayName = \"StyledMenuFooter\";\n\nexport const StyledMenuHeader = styled.div`\n ${tw`tw-flex tw-items-center tw-justify-between tw-px-2 tw-py-1`}\n\n border-bottom: 1px solid var(--border-primary);\n height: 32px;\n`;\nStyledMenuHeader.displayName = \"StyledMenuHeader\";\n"],"mappings":";;;;;;AAAA,IAAAA,iBAAA,GAAAC,uBAAA,CAAAC,OAAA;AAGA,IAAAC,eAAA,GAAAD,OAAA;AACA,IAAAE,OAAA,GAAAF,OAAA;AACA,IAAAG,UAAA,GAAAH,OAAA;AAAyC,SAAAD,wBAAAK,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAP,uBAAA,YAAAA,wBAAAK,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,cAAAM,EAAA,IAAAd,CAAA,gBAAAc,EAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAc,EAAA,OAAAP,CAAA,IAAAD,CAAA,GAAAW,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAnB,CAAA,EAAAc,EAAA,OAAAP,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAM,EAAA,EAAAP,CAAA,IAAAC,CAAA,CAAAM,EAAA,IAAAd,CAAA,CAAAc,EAAA,WAAAN,CAAA,KAAAR,CAAA,EAAAC,CAAA;AAElC,IAAMmB,UAAU,GAAAC,OAAA,CAAAD,UAAA,GAAG,IAAAE,yBAAM,EAACC,cAAM,CAAC,CAAAC,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,0IAClC;EAAA;EAAA;AAAuC,CAAC,EAG1CC,oBAAS,EACTC,8BAAc,EAQd,UAACC,KAAK;EAAA,OACNA,KAAK,CAACC,KAAK,KAAK,QAAQ,QACxBC,qBAAG,mBAEF;AAAA,GAED,UAACF,KAAK;EAAA,OACNA,KAAK,CAACC,KAAK,KAAK,OAAO,QACvBC,qBAAG,mBAEF;AAAA,GAED,UAACF,KAAK;EAAA,OACNA,KAAK,CAACC,KAAK,KAAK,MAAM,QACtBC,qBAAG,mBAEF;AAAA,GAED,UAACF,KAAK;EAAA,OACNA,KAAK,CAACC,KAAK,KAAK,QAAQ,QACxBC,qBAAG,mBAEF;AAAA,EACJ;AACDX,UAAU,CAACK,WAAW,GAAG,YAAY;AAE9B,IAAMO,gBAAgB,GAAAX,OAAA,CAAAW,gBAAA,GAAGV,yBAAM,CAACW,GAAG,CAAAT,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,yGACpC;EAAA;EAAA;EAAA;EAAA;EAAA;AAAwB,CAAC,EAO3B,UAACG,KAAK;EAAA,OACNA,KAAK,CAACK,QAAQ,QACdH,qBAAG,2HAMF;AAAA,EACJ;AAEM,IAAMI,qBAAqB,GAAAd,OAAA,CAAAc,qBAAA,GAAGb,yBAAM,CAACW,GAAG,CAAAT,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,mDAI9C;AACDM,gBAAgB,CAACP,WAAW,GAAG,kBAAkB;AAE1C,IAAMW,gBAAgB,GAAAf,OAAA,CAAAe,gBAAA,GAAGd,yBAAM,CAACW,GAAG,CAAAT,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,wEACpC;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;AAA2D,CAAC,CAIjE;AACDU,gBAAgB,CAACX,WAAW,GAAG,kBAAkB","ignoreList":[]}