@keboola/design 11.0.0 → 11.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (662) hide show
  1. package/dist/AIKit-Dre37SJr.js +1320 -0
  2. package/dist/AIKit-Dre37SJr.js.map +1 -0
  3. package/dist/Alert-DfZq9kGe.js +133 -0
  4. package/dist/Alert-DfZq9kGe.js.map +1 -0
  5. package/dist/AlertModal-BUC4Es8o.js +222 -0
  6. package/dist/AlertModal-BUC4Es8o.js.map +1 -0
  7. package/dist/AppShell-B5GQN6Zs.js +143 -0
  8. package/dist/AppShell-B5GQN6Zs.js.map +1 -0
  9. package/dist/AutoSaveTextarea-BeuWuszr.js +58 -0
  10. package/dist/{chunk-UGT6DKWM.js.map → AutoSaveTextarea-BeuWuszr.js.map} +1 -1
  11. package/dist/Badge-Ch26CXoP.js +195 -0
  12. package/dist/Badge-Ch26CXoP.js.map +1 -0
  13. package/dist/BrandEditor-B8o9zdZO.js +903 -0
  14. package/dist/BrandEditor-B8o9zdZO.js.map +1 -0
  15. package/dist/BrandLogo-CJkRd0F8.js +46 -0
  16. package/dist/BrandLogo-CJkRd0F8.js.map +1 -0
  17. package/dist/Breadcrumb-DJp7WwSv.js +330 -0
  18. package/dist/Breadcrumb-DJp7WwSv.js.map +1 -0
  19. package/dist/Button-nzmDNS2q.js +391 -0
  20. package/dist/Button-nzmDNS2q.js.map +1 -0
  21. package/dist/Calendar-cG5NIJ4O.js +6768 -0
  22. package/dist/Calendar-cG5NIJ4O.js.map +1 -0
  23. package/dist/Card-BAoZ35CV.js +105 -0
  24. package/dist/Card-BAoZ35CV.js.map +1 -0
  25. package/dist/Checkbox-GJ8-srt4.js +97 -0
  26. package/dist/Checkbox-GJ8-srt4.js.map +1 -0
  27. package/dist/Clipboard-CBJZiviP.js +58 -0
  28. package/dist/Clipboard-CBJZiviP.js.map +1 -0
  29. package/dist/ClipboardButton-ez5V3fkk.js +43 -0
  30. package/dist/ClipboardButton-ez5V3fkk.js.map +1 -0
  31. package/dist/CodeEditor-BfQJfbhL.js +952 -0
  32. package/dist/CodeEditor-BfQJfbhL.js.map +1 -0
  33. package/dist/Collapsible-BQXWEOBC.js +34 -0
  34. package/dist/Collapsible-BQXWEOBC.js.map +1 -0
  35. package/dist/ColorInput-Dx8Dsv7Y.js +180 -0
  36. package/dist/ColorInput-Dx8Dsv7Y.js.map +1 -0
  37. package/dist/ColorModeSwitch-CCqj7tjE.js +77 -0
  38. package/dist/ColorModeSwitch-CCqj7tjE.js.map +1 -0
  39. package/dist/Combobox-c_xBjf0P.js +439 -0
  40. package/dist/Combobox-c_xBjf0P.js.map +1 -0
  41. package/dist/Command-CQ_bQsJp.js +102 -0
  42. package/dist/Command-CQ_bQsJp.js.map +1 -0
  43. package/dist/CopyField-BJ96zvXs.js +322 -0
  44. package/dist/CopyField-BJ96zvXs.js.map +1 -0
  45. package/dist/DateInput-CMD3dY-T.js +141 -0
  46. package/dist/DateInput-CMD3dY-T.js.map +1 -0
  47. package/dist/DatePicker-BbFbmsGl.js +24 -0
  48. package/dist/DatePicker-BbFbmsGl.js.map +1 -0
  49. package/dist/DateRangeInput-D3BhiKyk.js +139 -0
  50. package/dist/DateRangeInput-D3BhiKyk.js.map +1 -0
  51. package/dist/DateRangePicker-BiUgtt_M.js +159 -0
  52. package/dist/DateRangePicker-BiUgtt_M.js.map +1 -0
  53. package/dist/DiagramSkeleton-lwBS2YBa.js +11 -0
  54. package/dist/DiagramSkeleton-lwBS2YBa.js.map +1 -0
  55. package/dist/DiffView-ppTIzh2h.js +429 -0
  56. package/dist/DiffView-ppTIzh2h.js.map +1 -0
  57. package/dist/DropdownMenu-B6ZbYvaM.js +327 -0
  58. package/dist/DropdownMenu-B6ZbYvaM.js.map +1 -0
  59. package/dist/FieldBox-D7DYtX_m.js +70 -0
  60. package/dist/FieldBox-D7DYtX_m.js.map +1 -0
  61. package/dist/FileUpload-sXRv7JiY.js +2527 -0
  62. package/dist/FileUpload-sXRv7JiY.js.map +1 -0
  63. package/dist/Form-BDCef6O9.js +371 -0
  64. package/dist/Form-BDCef6O9.js.map +1 -0
  65. package/dist/FormGroup-S9mPNHKH.js +124 -0
  66. package/dist/FormGroup-S9mPNHKH.js.map +1 -0
  67. package/dist/FullScreenModal-CJa2VkJ2.js +96 -0
  68. package/dist/FullScreenModal-CJa2VkJ2.js.map +1 -0
  69. package/dist/HoverCard-WfDkLK1s.js +31 -0
  70. package/dist/HoverCard-WfDkLK1s.js.map +1 -0
  71. package/dist/InputGroup-BJWsI35s.js +292 -0
  72. package/dist/InputGroup-BJWsI35s.js.map +1 -0
  73. package/dist/Kbd-CxHAo1oo.js +111 -0
  74. package/dist/Kbd-CxHAo1oo.js.map +1 -0
  75. package/dist/MarkedText-Ckbft5mw.js +44 -0
  76. package/dist/MarkedText-Ckbft5mw.js.map +1 -0
  77. package/dist/MermaidDiagram-BB06gymm.js +399 -0
  78. package/dist/MermaidDiagram-BB06gymm.js.map +1 -0
  79. package/dist/Modal-BA5Wc3sx.js +185 -0
  80. package/dist/Modal-BA5Wc3sx.js.map +1 -0
  81. package/dist/ModalTitle-C76ke2eo.js +28 -0
  82. package/dist/ModalTitle-C76ke2eo.js.map +1 -0
  83. package/dist/MultiActionButtonGroup-CiBHxsSk.js +33 -0
  84. package/dist/MultiActionButtonGroup-CiBHxsSk.js.map +1 -0
  85. package/dist/Navbar-t16usFZQ.js +322 -0
  86. package/dist/Navbar-t16usFZQ.js.map +1 -0
  87. package/dist/OtpInput-CbbymqYs.js +93 -0
  88. package/dist/OtpInput-CbbymqYs.js.map +1 -0
  89. package/dist/PageHeader-Q3IpCnQd.js +177 -0
  90. package/dist/PageHeader-Q3IpCnQd.js.map +1 -0
  91. package/dist/PageLayout-DSVM-ASz.js +176 -0
  92. package/dist/PageLayout-DSVM-ASz.js.map +1 -0
  93. package/dist/PageToolbar-0_1OBzaZ.js +153 -0
  94. package/dist/PageToolbar-0_1OBzaZ.js.map +1 -0
  95. package/dist/Pagination-CM_Rszz-.js +70 -0
  96. package/dist/Pagination-CM_Rszz-.js.map +1 -0
  97. package/dist/Popconfirm-BGe1jLov.js +170 -0
  98. package/dist/Popconfirm-BGe1jLov.js.map +1 -0
  99. package/dist/Popover-Ca0V6AD1.js +92 -0
  100. package/dist/Popover-Ca0V6AD1.js.map +1 -0
  101. package/dist/RadioGroup-sIveSsNa.js +233 -0
  102. package/dist/RadioGroup-sIveSsNa.js.map +1 -0
  103. package/dist/Resizable-D3vYToZH.js +52 -0
  104. package/dist/Resizable-D3vYToZH.js.map +1 -0
  105. package/dist/Search-3UiqNZRj.js +184 -0
  106. package/dist/Search-3UiqNZRj.js.map +1 -0
  107. package/dist/SearchInput-D2fcOv7E.js +102 -0
  108. package/dist/SearchInput-D2fcOv7E.js.map +1 -0
  109. package/dist/SectionNav--7bw2b6u.js +276 -0
  110. package/dist/SectionNav--7bw2b6u.js.map +1 -0
  111. package/dist/Select-4YX38G5h.js +181 -0
  112. package/dist/Select-4YX38G5h.js.map +1 -0
  113. package/dist/Sheet-BQrX8-h5.js +169 -0
  114. package/dist/Sheet-BQrX8-h5.js.map +1 -0
  115. package/dist/Sidebar-ROaR_AqC.js +799 -0
  116. package/dist/Sidebar-ROaR_AqC.js.map +1 -0
  117. package/dist/Slider-Da_3mS5v.js +127 -0
  118. package/dist/Slider-Da_3mS5v.js.map +1 -0
  119. package/dist/Stepper-C8sm9ZFM.js +325 -0
  120. package/dist/Stepper-C8sm9ZFM.js.map +1 -0
  121. package/dist/Switch-CX2A0v50.js +201 -0
  122. package/dist/Switch-CX2A0v50.js.map +1 -0
  123. package/dist/Table-CvYuTuNU.js +104 -0
  124. package/dist/Table-CvYuTuNU.js.map +1 -0
  125. package/dist/Tabs-EAihyqCt.js +74 -0
  126. package/dist/Tabs-EAihyqCt.js.map +1 -0
  127. package/dist/TextInput-BGed-V13.js +110 -0
  128. package/dist/TextInput-BGed-V13.js.map +1 -0
  129. package/dist/ThemeProvider-QncUrfJn.js +203 -0
  130. package/dist/ThemeProvider-QncUrfJn.js.map +1 -0
  131. package/dist/TimePicker-B_NegL-7.js +98 -0
  132. package/dist/TimePicker-B_NegL-7.js.map +1 -0
  133. package/dist/Timeline-6btyJl4D.js +154 -0
  134. package/dist/Timeline-6btyJl4D.js.map +1 -0
  135. package/dist/Toast-DQSbs3oA.js +49 -0
  136. package/dist/Toast-DQSbs3oA.js.map +1 -0
  137. package/dist/ToggleGroup-Cy_10Mvu.js +47 -0
  138. package/dist/ToggleGroup-Cy_10Mvu.js.map +1 -0
  139. package/dist/Workbench-BzE-Vvd9.js +293 -0
  140. package/dist/Workbench-BzE-Vvd9.js.map +1 -0
  141. package/dist/ZoomableSvg-DG9PnAm8.js +248 -0
  142. package/dist/ZoomableSvg-DG9PnAm8.js.map +1 -0
  143. package/dist/charts.d.ts +110 -103
  144. package/dist/charts.js +303 -254
  145. package/dist/charts.js.map +1 -1
  146. package/dist/classNames-BzrkDnOD.js +9 -0
  147. package/dist/classNames-BzrkDnOD.js.map +1 -0
  148. package/dist/constants-D6JcsD4_.d.ts +41 -0
  149. package/dist/context-KxxeMHbR.js +62 -0
  150. package/dist/context-KxxeMHbR.js.map +1 -0
  151. package/dist/editors.d.ts +180 -173
  152. package/dist/editors.js +747 -428
  153. package/dist/editors.js.map +1 -1
  154. package/dist/escapeStringRegexp-8MxP2knR.js +6 -0
  155. package/dist/escapeStringRegexp-8MxP2knR.js.map +1 -0
  156. package/dist/icons-Cek151jC.js +640 -0
  157. package/dist/icons-Cek151jC.js.map +1 -0
  158. package/dist/icons.d.ts +2 -41
  159. package/dist/icons.js +2 -9
  160. package/dist/index-m-kQEWiY.d.ts +54 -0
  161. package/dist/index.d.ts +6183 -9885
  162. package/dist/index.js +112 -124
  163. package/dist/internal/blocks/AIKit.js +2 -30
  164. package/dist/internal/blocks/AppShell.js +2 -11
  165. package/dist/internal/blocks/AutoSaveTextarea.js +2 -14
  166. package/dist/internal/blocks/BrandEditor.js +2 -23
  167. package/dist/internal/blocks/ChartPanel.js +45 -9
  168. package/dist/internal/blocks/ChartPanel.js.map +1 -1
  169. package/dist/internal/blocks/ClipboardButton.js +2 -12
  170. package/dist/internal/blocks/ColorInput.js +2 -13
  171. package/dist/internal/blocks/ColorModeSwitch.js +2 -13
  172. package/dist/internal/blocks/Command.js +2 -15
  173. package/dist/internal/blocks/CopyField.js +2 -11
  174. package/dist/internal/blocks/DashboardHero.js +58 -8
  175. package/dist/internal/blocks/DashboardHero.js.map +1 -1
  176. package/dist/internal/blocks/DateInput.js +2 -16
  177. package/dist/internal/blocks/DateRangeInput.js +2 -16
  178. package/dist/internal/blocks/EmptyConfigurationActionCard.js +15 -9
  179. package/dist/internal/blocks/EmptyConfigurationActionCard.js.map +1 -1
  180. package/dist/internal/blocks/EmptyState.js +141 -3
  181. package/dist/internal/blocks/EmptyState.js.map +1 -1
  182. package/dist/internal/blocks/ErrorState.js +178 -4
  183. package/dist/internal/blocks/ErrorState.js.map +1 -1
  184. package/dist/internal/blocks/ExportMenu.js +40 -12
  185. package/dist/internal/blocks/ExportMenu.js.map +1 -1
  186. package/dist/internal/blocks/Form.js +2 -29
  187. package/dist/internal/blocks/FormGroup.js +2 -18
  188. package/dist/internal/blocks/GoogleButton.js +94 -9
  189. package/dist/internal/blocks/GoogleButton.js.map +1 -1
  190. package/dist/internal/blocks/MicrosoftButton.js +63 -9
  191. package/dist/internal/blocks/MicrosoftButton.js.map +1 -1
  192. package/dist/internal/blocks/MultiActionButtonGroup.js +2 -12
  193. package/dist/internal/blocks/MultiCombobox.js +187 -13
  194. package/dist/internal/blocks/MultiCombobox.js.map +1 -1
  195. package/dist/internal/blocks/NumberInput.js +43 -11
  196. package/dist/internal/blocks/NumberInput.js.map +1 -1
  197. package/dist/internal/blocks/OtpInput.js +2 -10
  198. package/dist/internal/blocks/PageHeader.js +2 -9
  199. package/dist/internal/blocks/PageLayout.js +2 -9
  200. package/dist/internal/blocks/PageToolbar.js +2 -13
  201. package/dist/internal/blocks/PasswordInput.js +96 -12
  202. package/dist/internal/blocks/PasswordInput.js.map +1 -1
  203. package/dist/internal/blocks/SearchInput.js +2 -12
  204. package/dist/internal/blocks/SearchInputWithNavigation.js +64 -15
  205. package/dist/internal/blocks/SearchInputWithNavigation.js.map +1 -1
  206. package/dist/internal/blocks/SectionNav.js +2 -15
  207. package/dist/internal/blocks/SplitButton.js +45 -13
  208. package/dist/internal/blocks/SplitButton.js.map +1 -1
  209. package/dist/internal/blocks/StatCard.js +96 -9
  210. package/dist/internal/blocks/StatCard.js.map +1 -1
  211. package/dist/internal/blocks/TextInput.js +2 -13
  212. package/dist/internal/blocks/Textarea.js +31 -12
  213. package/dist/internal/blocks/Textarea.js.map +1 -1
  214. package/dist/internal/blocks/TimeInput.js +76 -16
  215. package/dist/internal/blocks/TimeInput.js.map +1 -1
  216. package/dist/internal/components/Alert.js +2 -11
  217. package/dist/internal/components/AlertModal.js +2 -11
  218. package/dist/internal/components/Avatar.js +52 -8
  219. package/dist/internal/components/Avatar.js.map +1 -1
  220. package/dist/internal/components/Badge.js +2 -9
  221. package/dist/internal/components/BrandLogo.js +2 -11
  222. package/dist/internal/components/Breadcrumb.js +2 -14
  223. package/dist/internal/components/Button.js +2 -10
  224. package/dist/internal/components/ButtonGroup.js +65 -8
  225. package/dist/internal/components/ButtonGroup.js.map +1 -1
  226. package/dist/internal/components/Calendar.js +2 -9
  227. package/dist/internal/components/Card.js +2 -9
  228. package/dist/internal/components/Checkbox.js +2 -11
  229. package/dist/internal/components/Clipboard.js +2 -9
  230. package/dist/internal/components/Collapsible.js +2 -9
  231. package/dist/internal/components/CollapsiblePanel.js +86 -10
  232. package/dist/internal/components/CollapsiblePanel.js.map +1 -1
  233. package/dist/internal/components/Combobox.js +2 -13
  234. package/dist/internal/components/DatePicker.js +2 -11
  235. package/dist/internal/components/DateRangePicker.js +2 -17
  236. package/dist/internal/components/DiffView.js +2 -9
  237. package/dist/internal/components/DotsLoader.js +17 -4
  238. package/dist/internal/components/DotsLoader.js.map +1 -1
  239. package/dist/internal/components/DropdownMenu.js +2 -11
  240. package/dist/internal/components/EmptySearchContent.js +11 -3
  241. package/dist/internal/components/EmptySearchContent.js.map +1 -1
  242. package/dist/internal/components/FileUpload.js +2 -11
  243. package/dist/internal/components/FullScreenModal.js +2 -12
  244. package/dist/internal/components/HelpBlock.js +24 -3
  245. package/dist/internal/components/HelpBlock.js.map +1 -1
  246. package/dist/internal/components/HoverCard.js +2 -9
  247. package/dist/internal/components/InputGroup.js +2 -11
  248. package/dist/internal/components/Kbd.js +2 -9
  249. package/dist/internal/components/Label.js +38 -8
  250. package/dist/internal/components/Label.js.map +1 -1
  251. package/dist/internal/components/Link.js +21 -8
  252. package/dist/internal/components/Link.js.map +1 -1
  253. package/dist/internal/components/MarkedText.js +2 -5
  254. package/dist/internal/components/MergeEditor/ConflictStatus/ConflictStatusIndicator.js +19 -9
  255. package/dist/internal/components/MergeEditor/ConflictStatus/ConflictStatusIndicator.js.map +1 -1
  256. package/dist/internal/components/MergeEditor/PaneHeader.js +12 -3
  257. package/dist/internal/components/MergeEditor/PaneHeader.js.map +1 -1
  258. package/dist/internal/components/MergeEditor/constants.js +17 -3
  259. package/dist/internal/components/MergeEditor/constants.js.map +1 -1
  260. package/dist/internal/components/MergeEditor/useMergeDiff.js +2 -5
  261. package/dist/internal/components/Modal.js +2 -13
  262. package/dist/internal/components/Navbar.js +2 -14
  263. package/dist/internal/components/Pagination.js +2 -11
  264. package/dist/internal/components/PanelWithDetails.js +30 -10
  265. package/dist/internal/components/PanelWithDetails.js.map +1 -1
  266. package/dist/internal/components/Popconfirm.js +2 -12
  267. package/dist/internal/components/Popover.js +2 -9
  268. package/dist/internal/components/Progress.js +46 -8
  269. package/dist/internal/components/Progress.js.map +1 -1
  270. package/dist/internal/components/RadioGroup.js +2 -12
  271. package/dist/internal/components/Resizable.js +2 -9
  272. package/dist/internal/components/ScrollArea.js +41 -8
  273. package/dist/internal/components/ScrollArea.js.map +1 -1
  274. package/dist/internal/components/Search.js +2 -10
  275. package/dist/internal/components/Select.js +2 -12
  276. package/dist/internal/components/Separator.js +83 -8
  277. package/dist/internal/components/Separator.js.map +1 -1
  278. package/dist/internal/components/Sheet.js +2 -12
  279. package/dist/internal/components/Sidebar.js +2 -20
  280. package/dist/internal/components/Skeleton/Skeleton.js +38 -8
  281. package/dist/internal/components/Skeleton/Skeleton.js.map +1 -1
  282. package/dist/internal/components/Skeleton/SkeletonList.js +40 -9
  283. package/dist/internal/components/Skeleton/SkeletonList.js.map +1 -1
  284. package/dist/internal/components/Slider.js +2 -11
  285. package/dist/internal/components/SpotlightBackdrop.js +131 -8
  286. package/dist/internal/components/SpotlightBackdrop.js.map +1 -1
  287. package/dist/internal/components/Stepper.js +2 -10
  288. package/dist/internal/components/Switch.js +2 -10
  289. package/dist/internal/components/Table.js +2 -10
  290. package/dist/internal/components/Tabs.js +2 -12
  291. package/dist/internal/components/ThemeProvider.js +3 -10
  292. package/dist/internal/components/TimePicker.js +2 -12
  293. package/dist/internal/components/Timeline.js +2 -10
  294. package/dist/internal/components/Toast.js +3 -11
  295. package/dist/internal/components/Toggle.js +168 -8
  296. package/dist/internal/components/Toggle.js.map +1 -1
  297. package/dist/internal/components/ToggleGroup.js +2 -9
  298. package/dist/internal/components/Tooltip.js +2 -8
  299. package/dist/internal/components/Truncated.js +44 -8
  300. package/dist/internal/components/Truncated.js.map +1 -1
  301. package/dist/internal/components/Workbench.js +2 -11
  302. package/dist/internal/components/ZoomableSvg.js +2 -13
  303. package/dist/internal/hooks/useAutosizeInput.js +76 -3
  304. package/dist/internal/hooks/useAutosizeInput.js.map +1 -1
  305. package/dist/internal/hooks/useScrollbarPosition.js +44 -4
  306. package/dist/internal/hooks/useScrollbarPosition.js.map +1 -1
  307. package/dist/internal/hooks/useStableCallback.js +28 -3
  308. package/dist/internal/hooks/useStableCallback.js.map +1 -1
  309. package/dist/internal/utils/mergeRefs.js +19 -3
  310. package/dist/internal/utils/mergeRefs.js.map +1 -1
  311. package/dist/internal/utils.js +5 -8
  312. package/dist/markdown-editor.d.ts +72 -72
  313. package/dist/markdown-editor.js +1122 -1207
  314. package/dist/markdown-editor.js.map +1 -1
  315. package/dist/mermaid.d.ts +12 -12
  316. package/dist/mermaid.js +2 -18
  317. package/dist/rjsf.d.ts +33 -34
  318. package/dist/rjsf.js +1541 -1671
  319. package/dist/rjsf.js.map +1 -1
  320. package/dist/rolldown-runtime-Bdc48AWt.js +33 -0
  321. package/dist/styles-DSUP_-9Z.js +158 -0
  322. package/dist/styles-DSUP_-9Z.js.map +1 -0
  323. package/dist/testing.d.ts +8 -7
  324. package/dist/testing.js +36 -21
  325. package/dist/testing.js.map +1 -1
  326. package/dist/themeTokens-BNg98Mu9.js +85 -0
  327. package/dist/themeTokens-BNg98Mu9.js.map +1 -0
  328. package/dist/toast-CjkURw0M.js +184 -0
  329. package/dist/toast-CjkURw0M.js.map +1 -0
  330. package/dist/useColorSchemeState-CYqcUfSH.js +61 -0
  331. package/dist/useColorSchemeState-CYqcUfSH.js.map +1 -0
  332. package/dist/useControllableState-M6494mCT.js +31 -0
  333. package/dist/useControllableState-M6494mCT.js.map +1 -0
  334. package/dist/useElement-DkF6esWL.js +15 -0
  335. package/dist/useElement-DkF6esWL.js.map +1 -0
  336. package/dist/useMergeDiff-CvowEXJ1.js +465 -0
  337. package/dist/useMergeDiff-CvowEXJ1.js.map +1 -0
  338. package/dist/utils-D0c5VAyF.js +308 -0
  339. package/dist/utils-D0c5VAyF.js.map +1 -0
  340. package/package.json +8 -8
  341. package/dist/MermaidDiagram-ZU5KAVRT.js +0 -18
  342. package/dist/MermaidDiagram-ZU5KAVRT.js.map +0 -1
  343. package/dist/chunk-2YYJDKSP.js +0 -51
  344. package/dist/chunk-2YYJDKSP.js.map +0 -1
  345. package/dist/chunk-3P5UUCFI.js +0 -385
  346. package/dist/chunk-3P5UUCFI.js.map +0 -1
  347. package/dist/chunk-3QDFDDWZ.js +0 -99
  348. package/dist/chunk-3QDFDDWZ.js.map +0 -1
  349. package/dist/chunk-3W27OLK5.js +0 -15
  350. package/dist/chunk-3W27OLK5.js.map +0 -1
  351. package/dist/chunk-4FIZZONW.js +0 -40
  352. package/dist/chunk-4FIZZONW.js.map +0 -1
  353. package/dist/chunk-4GIAXOJG.js +0 -133
  354. package/dist/chunk-4GIAXOJG.js.map +0 -1
  355. package/dist/chunk-52NDNMK7.js +0 -99
  356. package/dist/chunk-52NDNMK7.js.map +0 -1
  357. package/dist/chunk-576G5OES.js +0 -201
  358. package/dist/chunk-576G5OES.js.map +0 -1
  359. package/dist/chunk-5AIE6SET.js +0 -659
  360. package/dist/chunk-5AIE6SET.js.map +0 -1
  361. package/dist/chunk-5FTNAZRW.js +0 -327
  362. package/dist/chunk-5FTNAZRW.js.map +0 -1
  363. package/dist/chunk-5IG2S7ZY.js +0 -70
  364. package/dist/chunk-5IG2S7ZY.js.map +0 -1
  365. package/dist/chunk-5QCXHNCW.js +0 -404
  366. package/dist/chunk-5QCXHNCW.js.map +0 -1
  367. package/dist/chunk-6DUMGC7Y.js +0 -105
  368. package/dist/chunk-6DUMGC7Y.js.map +0 -1
  369. package/dist/chunk-6J25CVST.js +0 -174
  370. package/dist/chunk-6J25CVST.js.map +0 -1
  371. package/dist/chunk-6NN35XOP.js +0 -120
  372. package/dist/chunk-6NN35XOP.js.map +0 -1
  373. package/dist/chunk-6NZBVA4T.js +0 -24
  374. package/dist/chunk-6NZBVA4T.js.map +0 -1
  375. package/dist/chunk-6W5BHRCL.js +0 -295
  376. package/dist/chunk-6W5BHRCL.js.map +0 -1
  377. package/dist/chunk-72BKRCEG.js +0 -409
  378. package/dist/chunk-72BKRCEG.js.map +0 -1
  379. package/dist/chunk-7GTI3PPI.js +0 -95
  380. package/dist/chunk-7GTI3PPI.js.map +0 -1
  381. package/dist/chunk-7P6PLZ4B.js +0 -74
  382. package/dist/chunk-7P6PLZ4B.js.map +0 -1
  383. package/dist/chunk-7WZWY5IA.js +0 -46
  384. package/dist/chunk-7WZWY5IA.js.map +0 -1
  385. package/dist/chunk-AIYO2632.js +0 -489
  386. package/dist/chunk-AIYO2632.js.map +0 -1
  387. package/dist/chunk-ANFZWPNE.js +0 -112
  388. package/dist/chunk-ANFZWPNE.js.map +0 -1
  389. package/dist/chunk-ANZTVAJU.js +0 -73
  390. package/dist/chunk-ANZTVAJU.js.map +0 -1
  391. package/dist/chunk-BD5BTJKX.js +0 -166
  392. package/dist/chunk-BD5BTJKX.js.map +0 -1
  393. package/dist/chunk-BHGIDSRJ.js +0 -140
  394. package/dist/chunk-BHGIDSRJ.js.map +0 -1
  395. package/dist/chunk-BSQWZITZ.js +0 -507
  396. package/dist/chunk-BSQWZITZ.js.map +0 -1
  397. package/dist/chunk-D3LAIK62.js +0 -23
  398. package/dist/chunk-D3LAIK62.js.map +0 -1
  399. package/dist/chunk-DODCR43C.js +0 -155
  400. package/dist/chunk-DODCR43C.js.map +0 -1
  401. package/dist/chunk-EEK5NGZF.js +0 -40
  402. package/dist/chunk-EEK5NGZF.js.map +0 -1
  403. package/dist/chunk-ENRG7TXA.js +0 -11
  404. package/dist/chunk-ENRG7TXA.js.map +0 -1
  405. package/dist/chunk-EQRMGIGY.js +0 -239
  406. package/dist/chunk-EQRMGIGY.js.map +0 -1
  407. package/dist/chunk-ERAHK5YQ.js +0 -495
  408. package/dist/chunk-ERAHK5YQ.js.map +0 -1
  409. package/dist/chunk-F3FOFY2P.js +0 -124
  410. package/dist/chunk-F3FOFY2P.js.map +0 -1
  411. package/dist/chunk-F6BTWFOC.js +0 -507
  412. package/dist/chunk-F6BTWFOC.js.map +0 -1
  413. package/dist/chunk-F6J6NNAL.js +0 -34
  414. package/dist/chunk-F6J6NNAL.js.map +0 -1
  415. package/dist/chunk-FCHJ7D5O.js +0 -59
  416. package/dist/chunk-FCHJ7D5O.js.map +0 -1
  417. package/dist/chunk-FFJTEQCC.js +0 -80
  418. package/dist/chunk-FFJTEQCC.js.map +0 -1
  419. package/dist/chunk-FUFMVW7O.js +0 -64
  420. package/dist/chunk-FUFMVW7O.js.map +0 -1
  421. package/dist/chunk-FVPGQ6UE.js +0 -25
  422. package/dist/chunk-FVPGQ6UE.js.map +0 -1
  423. package/dist/chunk-G3PMV62Z.js +0 -33
  424. package/dist/chunk-G3PMV62Z.js.map +0 -1
  425. package/dist/chunk-GACFOW3E.js +0 -51
  426. package/dist/chunk-GACFOW3E.js.map +0 -1
  427. package/dist/chunk-GDT6HQMK.js +0 -42
  428. package/dist/chunk-GDT6HQMK.js.map +0 -1
  429. package/dist/chunk-HLGU22C6.js +0 -2589
  430. package/dist/chunk-HLGU22C6.js.map +0 -1
  431. package/dist/chunk-HPMYYGP7.js +0 -134
  432. package/dist/chunk-HPMYYGP7.js.map +0 -1
  433. package/dist/chunk-I2UCOD45.js +0 -197
  434. package/dist/chunk-I2UCOD45.js.map +0 -1
  435. package/dist/chunk-IEGDZUVM.js +0 -75
  436. package/dist/chunk-IEGDZUVM.js.map +0 -1
  437. package/dist/chunk-IIS7INHF.js +0 -47
  438. package/dist/chunk-IIS7INHF.js.map +0 -1
  439. package/dist/chunk-ITELSEFU.js +0 -256
  440. package/dist/chunk-ITELSEFU.js.map +0 -1
  441. package/dist/chunk-IXAYNBOY.js +0 -407
  442. package/dist/chunk-IXAYNBOY.js.map +0 -1
  443. package/dist/chunk-JUW2ETEI.js +0 -191
  444. package/dist/chunk-JUW2ETEI.js.map +0 -1
  445. package/dist/chunk-K65C7CVE.js +0 -127
  446. package/dist/chunk-K65C7CVE.js.map +0 -1
  447. package/dist/chunk-KDI64MCY.js +0 -189
  448. package/dist/chunk-KDI64MCY.js.map +0 -1
  449. package/dist/chunk-KN4ASMH5.js +0 -160
  450. package/dist/chunk-KN4ASMH5.js.map +0 -1
  451. package/dist/chunk-KQW7QNTU.js +0 -1549
  452. package/dist/chunk-KQW7QNTU.js.map +0 -1
  453. package/dist/chunk-KR7NXXHC.js +0 -66
  454. package/dist/chunk-KR7NXXHC.js.map +0 -1
  455. package/dist/chunk-KRZKIVMA.js +0 -142
  456. package/dist/chunk-KRZKIVMA.js.map +0 -1
  457. package/dist/chunk-KTTLLKGQ.js +0 -185
  458. package/dist/chunk-KTTLLKGQ.js.map +0 -1
  459. package/dist/chunk-KWKSHPDP.js +0 -234
  460. package/dist/chunk-KWKSHPDP.js.map +0 -1
  461. package/dist/chunk-KZVC7OYG.js +0 -57
  462. package/dist/chunk-KZVC7OYG.js.map +0 -1
  463. package/dist/chunk-L5DHUN2V.js +0 -204
  464. package/dist/chunk-L5DHUN2V.js.map +0 -1
  465. package/dist/chunk-LCTGEH57.js +0 -1376
  466. package/dist/chunk-LCTGEH57.js.map +0 -1
  467. package/dist/chunk-LXLIQ2D6.js +0 -12
  468. package/dist/chunk-LXLIQ2D6.js.map +0 -1
  469. package/dist/chunk-M4CTURKX.js +0 -84
  470. package/dist/chunk-M4CTURKX.js.map +0 -1
  471. package/dist/chunk-M6LTUPVP.js +0 -301
  472. package/dist/chunk-M6LTUPVP.js.map +0 -1
  473. package/dist/chunk-MA6RRHDT.js +0 -291
  474. package/dist/chunk-MA6RRHDT.js.map +0 -1
  475. package/dist/chunk-MODE4QIA.js +0 -6
  476. package/dist/chunk-MODE4QIA.js.map +0 -1
  477. package/dist/chunk-MVILMVGG.js +0 -118
  478. package/dist/chunk-MVILMVGG.js.map +0 -1
  479. package/dist/chunk-MWS4VCLV.js +0 -17
  480. package/dist/chunk-MWS4VCLV.js.map +0 -1
  481. package/dist/chunk-NEUX74SO.js +0 -315
  482. package/dist/chunk-NEUX74SO.js.map +0 -1
  483. package/dist/chunk-NFHKYBRD.js +0 -156
  484. package/dist/chunk-NFHKYBRD.js.map +0 -1
  485. package/dist/chunk-NHJNNXD3.js +0 -89
  486. package/dist/chunk-NHJNNXD3.js.map +0 -1
  487. package/dist/chunk-O2BF3HZL.js +0 -33
  488. package/dist/chunk-O2BF3HZL.js.map +0 -1
  489. package/dist/chunk-OANXCZYD.js +0 -212
  490. package/dist/chunk-OANXCZYD.js.map +0 -1
  491. package/dist/chunk-ODJF7YIP.js +0 -230
  492. package/dist/chunk-ODJF7YIP.js.map +0 -1
  493. package/dist/chunk-ON4BJTHI.js +0 -101
  494. package/dist/chunk-ON4BJTHI.js.map +0 -1
  495. package/dist/chunk-OTL5WXIJ.js +0 -16
  496. package/dist/chunk-OTL5WXIJ.js.map +0 -1
  497. package/dist/chunk-PACNBKJV.js +0 -47
  498. package/dist/chunk-PACNBKJV.js.map +0 -1
  499. package/dist/chunk-PROCA7K7.js +0 -23
  500. package/dist/chunk-PROCA7K7.js.map +0 -1
  501. package/dist/chunk-QGMIPA67.js +0 -85
  502. package/dist/chunk-QGMIPA67.js.map +0 -1
  503. package/dist/chunk-QQA37LFB.js +0 -190
  504. package/dist/chunk-QQA37LFB.js.map +0 -1
  505. package/dist/chunk-QZAWRSEB.js +0 -61
  506. package/dist/chunk-QZAWRSEB.js.map +0 -1
  507. package/dist/chunk-R74KGWNS.js +0 -699
  508. package/dist/chunk-R74KGWNS.js.map +0 -1
  509. package/dist/chunk-RFDLHMKL.js +0 -110
  510. package/dist/chunk-RFDLHMKL.js.map +0 -1
  511. package/dist/chunk-RL64HN7S.js +0 -40
  512. package/dist/chunk-RL64HN7S.js.map +0 -1
  513. package/dist/chunk-RMRQKPL7.js +0 -115
  514. package/dist/chunk-RMRQKPL7.js.map +0 -1
  515. package/dist/chunk-RQVK4IYC.js +0 -606
  516. package/dist/chunk-RQVK4IYC.js.map +0 -1
  517. package/dist/chunk-RTW56PWZ.js +0 -59
  518. package/dist/chunk-RTW56PWZ.js.map +0 -1
  519. package/dist/chunk-RUTPQNLR.js +0 -266
  520. package/dist/chunk-RUTPQNLR.js.map +0 -1
  521. package/dist/chunk-S6TAF63G.js +0 -25
  522. package/dist/chunk-S6TAF63G.js.map +0 -1
  523. package/dist/chunk-SBGAUGXY.js +0 -224
  524. package/dist/chunk-SBGAUGXY.js.map +0 -1
  525. package/dist/chunk-SC275NHZ.js +0 -407
  526. package/dist/chunk-SC275NHZ.js.map +0 -1
  527. package/dist/chunk-SCQPU4UE.js +0 -97
  528. package/dist/chunk-SCQPU4UE.js.map +0 -1
  529. package/dist/chunk-SFFF2WQP.js +0 -8
  530. package/dist/chunk-SFFF2WQP.js.map +0 -1
  531. package/dist/chunk-SJYMHZKA.js +0 -36
  532. package/dist/chunk-SJYMHZKA.js.map +0 -1
  533. package/dist/chunk-SLCCUJVN.js +0 -125
  534. package/dist/chunk-SLCCUJVN.js.map +0 -1
  535. package/dist/chunk-SVBSNSD4.js +0 -259
  536. package/dist/chunk-SVBSNSD4.js.map +0 -1
  537. package/dist/chunk-SVPLTL35.js +0 -62
  538. package/dist/chunk-SVPLTL35.js.map +0 -1
  539. package/dist/chunk-SWQFYNYG.js +0 -338
  540. package/dist/chunk-SWQFYNYG.js.map +0 -1
  541. package/dist/chunk-THHB4EWS.js +0 -72
  542. package/dist/chunk-THHB4EWS.js.map +0 -1
  543. package/dist/chunk-TUCDD33E.js +0 -246
  544. package/dist/chunk-TUCDD33E.js.map +0 -1
  545. package/dist/chunk-TV4WAP2R.js +0 -14
  546. package/dist/chunk-TV4WAP2R.js.map +0 -1
  547. package/dist/chunk-U3A6YBTZ.js +0 -134
  548. package/dist/chunk-U3A6YBTZ.js.map +0 -1
  549. package/dist/chunk-UGT6DKWM.js +0 -95
  550. package/dist/chunk-VSERHUWD.js +0 -212
  551. package/dist/chunk-VSERHUWD.js.map +0 -1
  552. package/dist/chunk-VYG7BDXC.js +0 -49
  553. package/dist/chunk-VYG7BDXC.js.map +0 -1
  554. package/dist/chunk-WETKNYZX.js +0 -52
  555. package/dist/chunk-WETKNYZX.js.map +0 -1
  556. package/dist/chunk-WGG4AML3.js +0 -216
  557. package/dist/chunk-WGG4AML3.js.map +0 -1
  558. package/dist/chunk-WKAUEL6I.js +0 -30
  559. package/dist/chunk-WKAUEL6I.js.map +0 -1
  560. package/dist/chunk-WPOLA5CG.js +0 -81
  561. package/dist/chunk-WPOLA5CG.js.map +0 -1
  562. package/dist/chunk-WPVETCGJ.js +0 -254
  563. package/dist/chunk-WPVETCGJ.js.map +0 -1
  564. package/dist/chunk-WTSM3A7E.js +0 -13
  565. package/dist/chunk-WTSM3A7E.js.map +0 -1
  566. package/dist/chunk-WU3F2K3T.js +0 -148
  567. package/dist/chunk-WU3F2K3T.js.map +0 -1
  568. package/dist/chunk-WZZK2DTZ.js +0 -39
  569. package/dist/chunk-WZZK2DTZ.js.map +0 -1
  570. package/dist/chunk-X4IHLKRD.js +0 -42
  571. package/dist/chunk-X4IHLKRD.js.map +0 -1
  572. package/dist/chunk-XAHEXZJC.js +0 -80
  573. package/dist/chunk-XAHEXZJC.js.map +0 -1
  574. package/dist/chunk-XCYGJDUX.js +0 -31
  575. package/dist/chunk-XCYGJDUX.js.map +0 -1
  576. package/dist/chunk-Y4W3JORC.js +0 -104
  577. package/dist/chunk-Y4W3JORC.js.map +0 -1
  578. package/dist/chunk-YFZJ3ZLG.js +0 -1297
  579. package/dist/chunk-YFZJ3ZLG.js.map +0 -1
  580. package/dist/chunk-YI3WLXEN.js +0 -4387
  581. package/dist/chunk-YI3WLXEN.js.map +0 -1
  582. package/dist/chunk-ZBKFSPD3.js +0 -29
  583. package/dist/chunk-ZBKFSPD3.js.map +0 -1
  584. package/dist/chunk-ZOERRQ6A.js +0 -79
  585. package/dist/chunk-ZOERRQ6A.js.map +0 -1
  586. package/dist/chunk-ZSTGUKHU.js +0 -10
  587. package/dist/chunk-ZSTGUKHU.js.map +0 -1
  588. package/dist/chunk-ZUEHDL27.js +0 -65
  589. package/dist/chunk-ZUEHDL27.js.map +0 -1
  590. package/dist/constants-D3gaMY-W.d.ts +0 -39
  591. package/dist/icons.js.map +0 -1
  592. package/dist/index.js.map +0 -1
  593. package/dist/internal/blocks/AIKit.js.map +0 -1
  594. package/dist/internal/blocks/AppShell.js.map +0 -1
  595. package/dist/internal/blocks/AutoSaveTextarea.js.map +0 -1
  596. package/dist/internal/blocks/BrandEditor.js.map +0 -1
  597. package/dist/internal/blocks/ClipboardButton.js.map +0 -1
  598. package/dist/internal/blocks/ColorInput.js.map +0 -1
  599. package/dist/internal/blocks/ColorModeSwitch.js.map +0 -1
  600. package/dist/internal/blocks/Command.js.map +0 -1
  601. package/dist/internal/blocks/CopyField.js.map +0 -1
  602. package/dist/internal/blocks/DateInput.js.map +0 -1
  603. package/dist/internal/blocks/DateRangeInput.js.map +0 -1
  604. package/dist/internal/blocks/Form.js.map +0 -1
  605. package/dist/internal/blocks/FormGroup.js.map +0 -1
  606. package/dist/internal/blocks/MultiActionButtonGroup.js.map +0 -1
  607. package/dist/internal/blocks/OtpInput.js.map +0 -1
  608. package/dist/internal/blocks/PageHeader.js.map +0 -1
  609. package/dist/internal/blocks/PageLayout.js.map +0 -1
  610. package/dist/internal/blocks/PageToolbar.js.map +0 -1
  611. package/dist/internal/blocks/SearchInput.js.map +0 -1
  612. package/dist/internal/blocks/SectionNav.js.map +0 -1
  613. package/dist/internal/blocks/TextInput.js.map +0 -1
  614. package/dist/internal/components/Alert.js.map +0 -1
  615. package/dist/internal/components/AlertModal.js.map +0 -1
  616. package/dist/internal/components/Badge.js.map +0 -1
  617. package/dist/internal/components/BrandLogo.js.map +0 -1
  618. package/dist/internal/components/Breadcrumb.js.map +0 -1
  619. package/dist/internal/components/Button.js.map +0 -1
  620. package/dist/internal/components/Calendar.js.map +0 -1
  621. package/dist/internal/components/Card.js.map +0 -1
  622. package/dist/internal/components/Checkbox.js.map +0 -1
  623. package/dist/internal/components/Clipboard.js.map +0 -1
  624. package/dist/internal/components/Collapsible.js.map +0 -1
  625. package/dist/internal/components/Combobox.js.map +0 -1
  626. package/dist/internal/components/DatePicker.js.map +0 -1
  627. package/dist/internal/components/DateRangePicker.js.map +0 -1
  628. package/dist/internal/components/DiffView.js.map +0 -1
  629. package/dist/internal/components/DropdownMenu.js.map +0 -1
  630. package/dist/internal/components/FileUpload.js.map +0 -1
  631. package/dist/internal/components/FullScreenModal.js.map +0 -1
  632. package/dist/internal/components/HoverCard.js.map +0 -1
  633. package/dist/internal/components/InputGroup.js.map +0 -1
  634. package/dist/internal/components/Kbd.js.map +0 -1
  635. package/dist/internal/components/MarkedText.js.map +0 -1
  636. package/dist/internal/components/MergeEditor/useMergeDiff.js.map +0 -1
  637. package/dist/internal/components/Modal.js.map +0 -1
  638. package/dist/internal/components/Navbar.js.map +0 -1
  639. package/dist/internal/components/Pagination.js.map +0 -1
  640. package/dist/internal/components/Popconfirm.js.map +0 -1
  641. package/dist/internal/components/Popover.js.map +0 -1
  642. package/dist/internal/components/RadioGroup.js.map +0 -1
  643. package/dist/internal/components/Resizable.js.map +0 -1
  644. package/dist/internal/components/Search.js.map +0 -1
  645. package/dist/internal/components/Select.js.map +0 -1
  646. package/dist/internal/components/Sheet.js.map +0 -1
  647. package/dist/internal/components/Sidebar.js.map +0 -1
  648. package/dist/internal/components/Slider.js.map +0 -1
  649. package/dist/internal/components/Stepper.js.map +0 -1
  650. package/dist/internal/components/Switch.js.map +0 -1
  651. package/dist/internal/components/Table.js.map +0 -1
  652. package/dist/internal/components/Tabs.js.map +0 -1
  653. package/dist/internal/components/ThemeProvider.js.map +0 -1
  654. package/dist/internal/components/TimePicker.js.map +0 -1
  655. package/dist/internal/components/Timeline.js.map +0 -1
  656. package/dist/internal/components/Toast.js.map +0 -1
  657. package/dist/internal/components/ToggleGroup.js.map +0 -1
  658. package/dist/internal/components/Tooltip.js.map +0 -1
  659. package/dist/internal/components/Workbench.js.map +0 -1
  660. package/dist/internal/components/ZoomableSvg.js.map +0 -1
  661. package/dist/internal/utils.js.map +0 -1
  662. package/dist/mermaid.js.map +0 -1
@@ -0,0 +1,153 @@
1
+ import { cn } from "./classNames-BzrkDnOD.js";
2
+ import { ChevronDown, Plus, X } from "./icons-Cek151jC.js";
3
+ import { Button } from "./Button-nzmDNS2q.js";
4
+ import { Popover } from "./Popover-Ca0V6AD1.js";
5
+ import { Badge } from "./Badge-Ch26CXoP.js";
6
+ import { jsx, jsxs } from "react/jsx-runtime";
7
+ //#region src/blocks/PageToolbar/PageToolbarToken.tsx
8
+ /**
9
+ * Editable filter token (Query Builder variant) — `Badge` pill with a `chevron-down`
10
+ * popover trigger for editing values and an `×` dismiss button. The popover content
11
+ * is supplied by the caller via the `popover` slot (typically a `Combobox` or option list).
12
+ */
13
+ const PageToolbarToken = ({ children, popover, onRemove, removeAriaLabel, ...props }) => /* @__PURE__ */ jsxs(Popover, { children: [/* @__PURE__ */ jsx(Badge, {
14
+ ...props,
15
+ asChild: true,
16
+ variant: "pill",
17
+ color: "blue-inverse",
18
+ suffix: /* @__PURE__ */ jsx(Button, {
19
+ type: "button",
20
+ variant: "inline",
21
+ size: "icon-2xs",
22
+ "aria-label": removeAriaLabel,
23
+ onClick: onRemove,
24
+ children: /* @__PURE__ */ jsx(X, { className: "tw:size-3" })
25
+ }),
26
+ children: /* @__PURE__ */ jsxs(Popover.Trigger, {
27
+ type: "button",
28
+ className: "tw:inline-flex tw:cursor-pointer tw:items-center tw:gap-1 tw:bg-inherit tw:text-inherit tailwindcss-preflight",
29
+ children: [children, /* @__PURE__ */ jsx(ChevronDown, { className: "tw:size-3" })]
30
+ })
31
+ }), /* @__PURE__ */ jsx(Popover.Content, {
32
+ align: "start",
33
+ children: popover
34
+ })] });
35
+ //#endregion
36
+ //#region src/blocks/PageToolbar/PageToolbar.tsx
37
+ const Root = ({ ref, className, children, ...props }) => /* @__PURE__ */ jsx("div", {
38
+ ref,
39
+ className: cn("tw:flex tw:flex-wrap tw:items-center tw:gap-3 tw:w-full", className),
40
+ ...props,
41
+ children
42
+ });
43
+ const Search = ({ ref, className, children, ...props }) => /* @__PURE__ */ jsx("div", {
44
+ ref,
45
+ className: cn("tw:mr-auto tw:flex tw:items-center tw:gap-2 tw:w-full tw:sm:w-auto tw:sm:min-w-64 tw:sm:max-w-md", className),
46
+ ...props,
47
+ children
48
+ });
49
+ const Right = ({ ref, className, children, ...props }) => /* @__PURE__ */ jsx("div", {
50
+ ref,
51
+ className: cn("tw:flex tw:flex-wrap tw:items-center tw:gap-2", className),
52
+ ...props,
53
+ children
54
+ });
55
+ const ControlGroup = ({ ref, className, children, ...props }) => /* @__PURE__ */ jsx("div", {
56
+ ref,
57
+ className: cn("tw:flex tw:items-center tw:gap-2", className),
58
+ ...props,
59
+ children
60
+ });
61
+ const ActiveFilters = ({ ref, className, children, ...props }) => /* @__PURE__ */ jsx("div", {
62
+ ref,
63
+ className: cn("tw:flex tw:flex-wrap tw:items-center tw:gap-2 tw:basis-full", className),
64
+ ...props,
65
+ children
66
+ });
67
+ const Chip = ({ children, onRemove, removeAriaLabel, ...props }) => /* @__PURE__ */ jsx(Badge, {
68
+ ...props,
69
+ variant: "pill",
70
+ color: "blue-inverse",
71
+ suffix: /* @__PURE__ */ jsx(Button, {
72
+ type: "button",
73
+ variant: "inline",
74
+ size: "icon-2xs",
75
+ "aria-label": removeAriaLabel,
76
+ onClick: onRemove,
77
+ children: /* @__PURE__ */ jsx(X, { className: "tw:size-3" })
78
+ }),
79
+ children
80
+ });
81
+ const AddFilter = ({ className, children, ...props }) => /* @__PURE__ */ jsxs(Button, {
82
+ variant: "invisible",
83
+ size: "small",
84
+ className: cn("tw:gap-1.5", className),
85
+ ...props,
86
+ children: [/* @__PURE__ */ jsx(Plus, { className: "tw:size-4" }), children ?? "Add filter"]
87
+ });
88
+ const Clear = ({ className, children, ...props }) => /* @__PURE__ */ jsx(Button, {
89
+ variant: "invisible",
90
+ size: "small",
91
+ className: cn("tw:ml-auto", className),
92
+ ...props,
93
+ children: children ?? "Clear all"
94
+ });
95
+ /**
96
+ * Two-row toolbar for index pages — search on the left, filter / sort / utility / view
97
+ * controls on the right, an optional Active Filters row below for filter chips or tokens.
98
+ *
99
+ * **When to use:** every index page that supports search or filtering. Hosts inside
100
+ * `PageLayout` as the search / filter row, between `PageLayout.Header` and `PageLayout.Content`.
101
+ * **When NOT to use:** detail pages, form pages, or anywhere there is no search / filter
102
+ * surface. For routing-based tab rows reach for `PageLayout.Tabs`.
103
+ *
104
+ * **Recommended composition (enforced at the call site):**
105
+ *
106
+ * - `Search` sits on the left; the right cluster auto-aligns via flex.
107
+ * - Right cluster order: `Filters` → `Sort` → `Actions` → `View`. View controls are always
108
+ * the final control group — do not render any control after `View`.
109
+ * - `ActiveFilters` is the second row. Render it only when one or more filters are active.
110
+ * - `Clear` self-aligns to the far right of `ActiveFilters`.
111
+ *
112
+ * The block is variant-agnostic: render filter chips (Standard variant, non-editable) or
113
+ * tokens (Query Builder variant, editable) into `ActiveFilters` as plain children — do not
114
+ * mix the two in one toolbar.
115
+ *
116
+ * @see https://github.com/evviku/design-system-docs/blob/main/docs/patterns/toolbar/toolbar.md
117
+ */
118
+ const PageToolbar = Object.assign(Root, {
119
+ /** Left slot — typically a `SearchInput`. */
120
+ Search,
121
+ /** Right cluster — host the four control groups below in the recommended order. */
122
+ Right,
123
+ /** Filter controls (`Combobox`, `Select`, `DatePicker`). */
124
+ Filters: ControlGroup,
125
+ /** Sort control. */
126
+ Sort: ControlGroup,
127
+ /** Utility actions (Export, Refresh, …). */
128
+ Actions: ControlGroup,
129
+ /** View toggle (List / Grid). Always render last in the right cluster. */
130
+ View: ControlGroup,
131
+ /**
132
+ * Active filters row. Render only when one or more filters are active. Pass filter chips
133
+ * (Standard variant) or tokens (Query Builder variant) as children, optionally followed
134
+ * by `AddFilter` / `Clear`.
135
+ */
136
+ ActiveFilters,
137
+ /** Non-editable filter chip (Standard variant) — `Badge` pill with a dismiss button. */
138
+ Chip,
139
+ /**
140
+ * Editable filter token (Query Builder variant) — `Badge` pill with a `chevron-down`
141
+ * popover trigger for editing values and an `×` dismiss button. The popover content
142
+ * is supplied by the caller via the `popover` slot (typically a `Combobox` or option list).
143
+ */
144
+ Token: PageToolbarToken,
145
+ /** "+ Add filter" action — typically rendered after the chips/tokens in `ActiveFilters`. */
146
+ AddFilter,
147
+ /** "Clear all" action — self-aligns to the far right of `ActiveFilters`. */
148
+ Clear
149
+ });
150
+ //#endregion
151
+ export { PageToolbar };
152
+
153
+ //# sourceMappingURL=PageToolbar-0_1OBzaZ.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PageToolbar-0_1OBzaZ.js","names":[],"sources":["../src/blocks/PageToolbar/PageToolbarToken.tsx","../src/blocks/PageToolbar/PageToolbar.tsx"],"sourcesContent":["import type { ComponentPropsWithoutRef, ReactNode } from 'react';\n\nimport { Badge } from '../../components/Badge';\nimport { Button } from '../../components/Button';\nimport { Popover } from '../../components/Popover';\nimport { ChevronDown, X } from '../../icons';\n\ntype PageToolbarTokenProps = Omit<\n ComponentPropsWithoutRef<typeof Badge>,\n 'variant' | 'color' | 'suffix' | 'children' | 'asChild' | 'popover'\n> & {\n children: ReactNode;\n /** Popover content rendered when the chevron-down trigger is clicked — typically a value editor. */\n popover: ReactNode;\n onRemove: () => void;\n removeAriaLabel: string;\n};\n\n/**\n * Editable filter token (Query Builder variant) — `Badge` pill with a `chevron-down`\n * popover trigger for editing values and an `×` dismiss button. The popover content\n * is supplied by the caller via the `popover` slot (typically a `Combobox` or option list).\n */\nexport const PageToolbarToken = ({\n children,\n popover,\n onRemove,\n removeAriaLabel,\n ...props\n}: PageToolbarTokenProps) => (\n <Popover>\n <Badge\n {...props}\n asChild\n variant=\"pill\"\n color=\"blue-inverse\"\n suffix={\n <Button\n type=\"button\"\n variant=\"inline\"\n size=\"icon-2xs\"\n aria-label={removeAriaLabel}\n onClick={onRemove}\n >\n <X className=\"tw:size-3\" />\n </Button>\n }\n >\n <Popover.Trigger\n type=\"button\"\n className=\"tw:inline-flex tw:cursor-pointer tw:items-center tw:gap-1 tw:bg-inherit tw:text-inherit tailwindcss-preflight\"\n >\n {children}\n <ChevronDown className=\"tw:size-3\" />\n </Popover.Trigger>\n </Badge>\n <Popover.Content align=\"start\">{popover}</Popover.Content>\n </Popover>\n);\n","import type { ComponentProps, ComponentPropsWithoutRef, ReactNode } from 'react';\n\nimport { Badge } from '../../components/Badge';\nimport { Button } from '../../components/Button';\nimport { Plus, X } from '../../icons';\nimport { cn } from '../../utils';\n\nimport { PageToolbarToken } from './PageToolbarToken';\n\ntype DivProps = ComponentProps<'div'>;\n\nconst Root = ({ ref, className, children, ...props }: DivProps) => (\n <div\n ref={ref}\n className={cn('tw:flex tw:flex-wrap tw:items-center tw:gap-3 tw:w-full', className)}\n {...props}\n >\n {children}\n </div>\n);\n\nconst Search = ({ ref, className, children, ...props }: DivProps) => (\n <div\n ref={ref}\n className={cn(\n 'tw:mr-auto tw:flex tw:items-center tw:gap-2 tw:w-full tw:sm:w-auto tw:sm:min-w-64 tw:sm:max-w-md',\n className,\n )}\n {...props}\n >\n {children}\n </div>\n);\n\nconst Right = ({ ref, className, children, ...props }: DivProps) => (\n <div\n ref={ref}\n className={cn('tw:flex tw:flex-wrap tw:items-center tw:gap-2', className)}\n {...props}\n >\n {children}\n </div>\n);\n\nconst ControlGroup = ({ ref, className, children, ...props }: DivProps) => (\n <div ref={ref} className={cn('tw:flex tw:items-center tw:gap-2', className)} {...props}>\n {children}\n </div>\n);\n\nconst ActiveFilters = ({ ref, className, children, ...props }: DivProps) => (\n <div\n ref={ref}\n className={cn('tw:flex tw:flex-wrap tw:items-center tw:gap-2 tw:basis-full', className)}\n {...props}\n >\n {children}\n </div>\n);\n\ntype ChipProps = Omit<\n ComponentPropsWithoutRef<typeof Badge>,\n 'variant' | 'color' | 'suffix' | 'children'\n> & {\n children: ReactNode;\n onRemove: () => void;\n removeAriaLabel: string;\n};\n\nconst Chip = ({ children, onRemove, removeAriaLabel, ...props }: ChipProps) => (\n <Badge\n {...props}\n variant=\"pill\"\n color=\"blue-inverse\"\n suffix={\n <Button\n type=\"button\"\n variant=\"inline\"\n size=\"icon-2xs\"\n aria-label={removeAriaLabel}\n onClick={onRemove}\n >\n <X className=\"tw:size-3\" />\n </Button>\n }\n >\n {children}\n </Badge>\n);\n\ntype ActionProps = ComponentPropsWithoutRef<typeof Button>;\n\nconst AddFilter = ({ className, children, ...props }: ActionProps) => (\n <Button variant=\"invisible\" size=\"small\" className={cn('tw:gap-1.5', className)} {...props}>\n <Plus className=\"tw:size-4\" />\n {children ?? 'Add filter'}\n </Button>\n);\n\nconst Clear = ({ className, children, ...props }: ActionProps) => (\n <Button variant=\"invisible\" size=\"small\" className={cn('tw:ml-auto', className)} {...props}>\n {children ?? 'Clear all'}\n </Button>\n);\n\n/**\n * Two-row toolbar for index pages — search on the left, filter / sort / utility / view\n * controls on the right, an optional Active Filters row below for filter chips or tokens.\n *\n * **When to use:** every index page that supports search or filtering. Hosts inside\n * `PageLayout` as the search / filter row, between `PageLayout.Header` and `PageLayout.Content`.\n * **When NOT to use:** detail pages, form pages, or anywhere there is no search / filter\n * surface. For routing-based tab rows reach for `PageLayout.Tabs`.\n *\n * **Recommended composition (enforced at the call site):**\n *\n * - `Search` sits on the left; the right cluster auto-aligns via flex.\n * - Right cluster order: `Filters` → `Sort` → `Actions` → `View`. View controls are always\n * the final control group — do not render any control after `View`.\n * - `ActiveFilters` is the second row. Render it only when one or more filters are active.\n * - `Clear` self-aligns to the far right of `ActiveFilters`.\n *\n * The block is variant-agnostic: render filter chips (Standard variant, non-editable) or\n * tokens (Query Builder variant, editable) into `ActiveFilters` as plain children — do not\n * mix the two in one toolbar.\n *\n * @see https://github.com/evviku/design-system-docs/blob/main/docs/patterns/toolbar/toolbar.md\n */\nexport const PageToolbar = Object.assign(Root, {\n /** Left slot — typically a `SearchInput`. */\n Search,\n /** Right cluster — host the four control groups below in the recommended order. */\n Right,\n /** Filter controls (`Combobox`, `Select`, `DatePicker`). */\n Filters: ControlGroup,\n /** Sort control. */\n Sort: ControlGroup,\n /** Utility actions (Export, Refresh, …). */\n Actions: ControlGroup,\n /** View toggle (List / Grid). Always render last in the right cluster. */\n View: ControlGroup,\n /**\n * Active filters row. Render only when one or more filters are active. Pass filter chips\n * (Standard variant) or tokens (Query Builder variant) as children, optionally followed\n * by `AddFilter` / `Clear`.\n */\n ActiveFilters,\n /** Non-editable filter chip (Standard variant) — `Badge` pill with a dismiss button. */\n Chip,\n /**\n * Editable filter token (Query Builder variant) — `Badge` pill with a `chevron-down`\n * popover trigger for editing values and an `×` dismiss button. The popover content\n * is supplied by the caller via the `popover` slot (typically a `Combobox` or option list).\n */\n Token: PageToolbarToken,\n /** \"+ Add filter\" action — typically rendered after the chips/tokens in `ActiveFilters`. */\n AddFilter,\n /** \"Clear all\" action — self-aligns to the far right of `ActiveFilters`. */\n Clear,\n});\n"],"mappings":";;;;;;;;;;;;AAuBA,MAAa,oBAAoB,EAC/B,UACA,SACA,UACA,iBACA,GAAG,YAEH,qBAAC,SAAD,EAAA,UAAA,CACE,oBAAC,OAAD;CACE,GAAI;CACJ,SAAA;CACA,SAAQ;CACR,OAAM;CACN,QACE,oBAAC,QAAD;EACE,MAAK;EACL,SAAQ;EACR,MAAK;EACL,cAAY;EACZ,SAAS;EAET,UAAA,oBAAC,GAAD,EAAG,WAAU,YAAa,CAAA;CACpB,CAAA;CAGV,UAAA,qBAAC,QAAQ,SAAT;EACE,MAAK;EACL,WAAU;EAFZ,UAAA,CAIG,UACD,oBAAC,aAAD,EAAa,WAAU,YAAa,CAAA,CACrB;;AACZ,CAAA,GACP,oBAAC,QAAQ,SAAT;CAAiB,OAAM;CAAS,UAAA;AAAyB,CAAA,CAClD,EAAA,CAAA;;;AC9CX,MAAM,QAAQ,EAAE,KAAK,WAAW,UAAU,GAAG,YAC3C,oBAAC,OAAD;CACO;CACL,WAAW,GAAG,2DAA2D,SAAS;CAClF,GAAI;CAEH;AACE,CAAA;AAGP,MAAM,UAAU,EAAE,KAAK,WAAW,UAAU,GAAG,YAC7C,oBAAC,OAAD;CACO;CACL,WAAW,GACT,oGACA,SACF;CACA,GAAI;CAEH;AACE,CAAA;AAGP,MAAM,SAAS,EAAE,KAAK,WAAW,UAAU,GAAG,YAC5C,oBAAC,OAAD;CACO;CACL,WAAW,GAAG,iDAAiD,SAAS;CACxE,GAAI;CAEH;AACE,CAAA;AAGP,MAAM,gBAAgB,EAAE,KAAK,WAAW,UAAU,GAAG,YACnD,oBAAC,OAAD;CAAU;CAAK,WAAW,GAAG,oCAAoC,SAAS;CAAG,GAAI;CAC9E;AACE,CAAA;AAGP,MAAM,iBAAiB,EAAE,KAAK,WAAW,UAAU,GAAG,YACpD,oBAAC,OAAD;CACO;CACL,WAAW,GAAG,+DAA+D,SAAS;CACtF,GAAI;CAEH;AACE,CAAA;AAYP,MAAM,QAAQ,EAAE,UAAU,UAAU,iBAAiB,GAAG,YACtD,oBAAC,OAAD;CACE,GAAI;CACJ,SAAQ;CACR,OAAM;CACN,QACE,oBAAC,QAAD;EACE,MAAK;EACL,SAAQ;EACR,MAAK;EACL,cAAY;EACZ,SAAS;EAET,UAAA,oBAAC,GAAD,EAAG,WAAU,YAAa,CAAA;CACpB,CAAA;CAGT;AACI,CAAA;AAKT,MAAM,aAAa,EAAE,WAAW,UAAU,GAAG,YAC3C,qBAAC,QAAD;CAAQ,SAAQ;CAAY,MAAK;CAAQ,WAAW,GAAG,cAAc,SAAS;CAAG,GAAI;CAArF,UAAA,CACE,oBAAC,MAAD,EAAM,WAAU,YAAa,CAAA,GAC5B,YAAY,YACP;;AAGV,MAAM,SAAS,EAAE,WAAW,UAAU,GAAG,YACvC,oBAAC,QAAD;CAAQ,SAAQ;CAAY,MAAK;CAAQ,WAAW,GAAG,cAAc,SAAS;CAAG,GAAI;CAClF,UAAA,YAAY;AACP,CAAA;;;;;;;;;;;;;;;;;;;;;;;;AA0BV,MAAa,cAAc,OAAO,OAAO,MAAM;;CAE7C;;CAEA;;CAEA,SAAS;;CAET,MAAM;;CAEN,SAAS;;CAET,MAAM;;;;;;CAMN;;CAEA;;;;;;CAMA,OAAO;;CAEP;;CAEA;AACF,CAAC"}
@@ -0,0 +1,70 @@
1
+ import { cn } from "./classNames-BzrkDnOD.js";
2
+ import { ChevronLeft, ChevronRight, Ellipsis } from "./icons-Cek151jC.js";
3
+ import { Button } from "./Button-nzmDNS2q.js";
4
+ import { jsx, jsxs } from "react/jsx-runtime";
5
+ //#region src/components/Pagination/PaginationButton.tsx
6
+ const PaginationButton = ({ ref, active: isActive = false, className, children, size = "icon", ...props }) => /* @__PURE__ */ jsx(Button, {
7
+ ...props,
8
+ ref,
9
+ variant: "invisible",
10
+ size,
11
+ "data-slot": "pagination-link",
12
+ "aria-current": isActive ? "page" : void 0,
13
+ "data-active": isActive,
14
+ className: cn("tw:data-[active=true]:bg-accent", "tw:data-[active=true]:text-accent-foreground", "tw:data-[active=true]:border-accent", className),
15
+ children
16
+ });
17
+ //#endregion
18
+ //#region src/components/Pagination/PaginationContent.tsx
19
+ const PaginationContent = ({ className, ...props }) => /* @__PURE__ */ jsx("ul", {
20
+ ...props,
21
+ className: cn("tw:flex", "tw:flex-row", "tw:items-center", "tw:gap-1", className)
22
+ });
23
+ //#endregion
24
+ //#region src/components/Pagination/PaginationEllipsis.tsx
25
+ const PaginationEllipsis = ({ className, ...props }) => /* @__PURE__ */ jsx("span", {
26
+ "aria-hidden": "true",
27
+ className: cn("tw:flex", "tw:p-2.5", "tw:items-center", "tw:justify-center", "tw:text-foreground", "tw:[&_svg:not([class*=\"tw:size-\"])]:size-4", className),
28
+ ...props,
29
+ children: /* @__PURE__ */ jsx(Ellipsis, {})
30
+ });
31
+ //#endregion
32
+ //#region src/components/Pagination/PaginationItem.tsx
33
+ const PaginationItem = ({ className, ...props }) => /* @__PURE__ */ jsx("li", {
34
+ className: cn("tw:list-none", className),
35
+ ...props
36
+ });
37
+ //#endregion
38
+ //#region src/components/Pagination/PaginationNext.tsx
39
+ const PaginationNext = ({ children, className, ...props }) => /* @__PURE__ */ jsxs(PaginationButton, {
40
+ ...props,
41
+ "aria-label": "Go to next page",
42
+ size: "medium",
43
+ className: cn("tw:flex-row-reverse", className),
44
+ children: [/* @__PURE__ */ jsx(ChevronRight, { className: "tw:size-5" }), children ?? "Next"]
45
+ });
46
+ //#endregion
47
+ //#region src/components/Pagination/PaginationPrevious.tsx
48
+ const PaginationPrevious = ({ children, ...props }) => /* @__PURE__ */ jsxs(PaginationButton, {
49
+ ...props,
50
+ size: "medium",
51
+ "aria-label": "Go to previous page",
52
+ children: [/* @__PURE__ */ jsx(ChevronLeft, { className: "tw:size-5" }), children ?? "Previous"]
53
+ });
54
+ //#endregion
55
+ //#region src/components/Pagination/Pagination.tsx
56
+ const Pagination = ({ className, ...props }) => /* @__PURE__ */ jsx("nav", {
57
+ ...props,
58
+ "aria-label": "pagination",
59
+ className: cn("tailwindcss-preflight", "tw:mx-auto", "tw:flex", "tw:w-full", "tw:justify-center", className)
60
+ });
61
+ Pagination.Content = PaginationContent;
62
+ Pagination.Item = PaginationItem;
63
+ Pagination.Button = PaginationButton;
64
+ Pagination.Previous = PaginationPrevious;
65
+ Pagination.Next = PaginationNext;
66
+ Pagination.Ellipsis = PaginationEllipsis;
67
+ //#endregion
68
+ export { Pagination };
69
+
70
+ //# sourceMappingURL=Pagination-CM_Rszz-.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Pagination-CM_Rszz-.js","names":[],"sources":["../src/components/Pagination/PaginationButton.tsx","../src/components/Pagination/PaginationContent.tsx","../src/components/Pagination/PaginationEllipsis.tsx","../src/components/Pagination/PaginationItem.tsx","../src/components/Pagination/PaginationNext.tsx","../src/components/Pagination/PaginationPrevious.tsx","../src/components/Pagination/Pagination.tsx"],"sourcesContent":["import type { ComponentProps } from 'react';\n\nimport { cn } from '../../utils';\nimport { Button } from '../Button';\n\ntype Props = {\n active?: boolean;\n} & Omit<ComponentProps<typeof Button>, 'variant'>;\n\nexport const PaginationButton = ({\n ref,\n active: isActive = false,\n className,\n children,\n size = 'icon',\n ...props\n}: Props) => (\n <Button\n {...props}\n ref={ref}\n variant=\"invisible\"\n size={size}\n data-slot=\"pagination-link\"\n aria-current={isActive ? 'page' : undefined}\n data-active={isActive}\n className={cn(\n 'tw:data-[active=true]:bg-accent',\n 'tw:data-[active=true]:text-accent-foreground',\n 'tw:data-[active=true]:border-accent',\n className,\n )}\n >\n {children}\n </Button>\n);\n","import type { ComponentProps } from 'react';\n\nimport { cn } from '../../utils';\n\ntype Props = ComponentProps<'ul'>;\n\nexport const PaginationContent = ({ className, ...props }: Props) => (\n <ul\n {...props}\n className={cn('tw:flex', 'tw:flex-row', 'tw:items-center', 'tw:gap-1', className)}\n />\n);\n","import type { ComponentProps } from 'react';\n\nimport { Ellipsis } from '../../icons';\nimport { cn } from '../../utils';\n\ntype Props = ComponentProps<'span'>;\n\nexport const PaginationEllipsis = ({ className, ...props }: Props) => (\n <span\n aria-hidden=\"true\"\n className={cn(\n // layout\n 'tw:flex',\n 'tw:p-2.5',\n 'tw:items-center',\n 'tw:justify-center',\n\n 'tw:text-foreground',\n 'tw:[&_svg:not([class*=\"tw:size-\"])]:size-4',\n className,\n )}\n {...props}\n >\n <Ellipsis />\n </span>\n);\n","import type { ComponentProps } from 'react';\n\nimport { cn } from '../../utils';\n\ntype Props = ComponentProps<'li'>;\n\nexport const PaginationItem = ({ className, ...props }: Props) => (\n <li className={cn('tw:list-none', className)} {...props} />\n);\n","import type { ComponentProps } from 'react';\n\nimport { ChevronRight } from '../../icons';\nimport { cn } from '../../utils';\n\nimport { PaginationButton } from './PaginationButton';\n\ntype Props = ComponentProps<typeof PaginationButton>;\n\nexport const PaginationNext = ({ children, className, ...props }: Props) => (\n <PaginationButton\n {...props}\n aria-label=\"Go to next page\"\n size=\"medium\"\n className={cn('tw:flex-row-reverse', className)}\n >\n <ChevronRight className=\"tw:size-5\" />\n {children ?? 'Next'}\n </PaginationButton>\n);\n","import type { ComponentProps } from 'react';\n\nimport { ChevronLeft } from '../../icons';\n\nimport { PaginationButton } from './PaginationButton';\n\ntype Props = ComponentProps<typeof PaginationButton>;\n\nexport const PaginationPrevious = ({ children, ...props }: Props) => (\n <PaginationButton {...props} size=\"medium\" aria-label=\"Go to previous page\">\n <ChevronLeft className=\"tw:size-5\" />\n {children ?? 'Previous'}\n </PaginationButton>\n);\n","import type { ComponentProps } from 'react';\n\nimport { cn } from '../../utils';\n\nimport { PaginationButton } from './PaginationButton';\nimport { PaginationContent } from './PaginationContent';\nimport { PaginationEllipsis } from './PaginationEllipsis';\nimport { PaginationItem } from './PaginationItem';\nimport { PaginationNext } from './PaginationNext';\nimport { PaginationPrevious } from './PaginationPrevious';\n\ntype Props = ComponentProps<'nav'>;\n\nexport const Pagination = ({ className, ...props }: Props) => (\n <nav\n {...props}\n aria-label=\"pagination\"\n className={cn(\n 'tailwindcss-preflight',\n 'tw:mx-auto',\n 'tw:flex',\n 'tw:w-full',\n 'tw:justify-center',\n className,\n )}\n />\n);\n\nPagination.Content = PaginationContent;\nPagination.Item = PaginationItem;\nPagination.Button = PaginationButton;\nPagination.Previous = PaginationPrevious;\nPagination.Next = PaginationNext;\nPagination.Ellipsis = PaginationEllipsis;\n"],"mappings":";;;;;AASA,MAAa,oBAAoB,EAC/B,KACA,QAAQ,WAAW,OACnB,WACA,UACA,OAAO,QACP,GAAG,YAEH,oBAAC,QAAD;CACE,GAAI;CACC;CACL,SAAQ;CACF;CACN,aAAU;CACV,gBAAc,WAAW,SAAS,KAAA;CAClC,eAAa;CACb,WAAW,GACT,mCACA,gDACA,uCACA,SACF;CAEC;AACK,CAAA;;;AC3BV,MAAa,qBAAqB,EAAE,WAAW,GAAG,YAChD,oBAAC,MAAD;CACE,GAAI;CACJ,WAAW,GAAG,WAAW,eAAe,mBAAmB,YAAY,SAAS;AACjF,CAAA;;;ACHH,MAAa,sBAAsB,EAAE,WAAW,GAAG,YACjD,oBAAC,QAAD;CACE,eAAY;CACZ,WAAW,GAET,WACA,YACA,mBACA,qBAEA,sBACA,gDACA,SACF;CACA,GAAI;CAEJ,UAAA,oBAAC,UAAD,CAAW,CAAA;AACP,CAAA;;;AClBR,MAAa,kBAAkB,EAAE,WAAW,GAAG,YAC7C,oBAAC,MAAD;CAAI,WAAW,GAAG,gBAAgB,SAAS;CAAG,GAAI;AAAQ,CAAA;;;ACE5D,MAAa,kBAAkB,EAAE,UAAU,WAAW,GAAG,YACvD,qBAAC,kBAAD;CACE,GAAI;CACJ,cAAW;CACX,MAAK;CACL,WAAW,GAAG,uBAAuB,SAAS;CAJhD,UAAA,CAME,oBAAC,cAAD,EAAc,WAAU,YAAa,CAAA,GACpC,YAAY,MACG;;;;ACVpB,MAAa,sBAAsB,EAAE,UAAU,GAAG,YAChD,qBAAC,kBAAD;CAAkB,GAAI;CAAO,MAAK;CAAS,cAAW;CAAtD,UAAA,CACE,oBAAC,aAAD,EAAa,WAAU,YAAa,CAAA,GACnC,YAAY,UACG;;;;ACCpB,MAAa,cAAc,EAAE,WAAW,GAAG,YACzC,oBAAC,OAAD;CACE,GAAI;CACJ,cAAW;CACX,WAAW,GACT,yBACA,cACA,WACA,aACA,qBACA,SACF;AACD,CAAA;AAGH,WAAW,UAAU;AACrB,WAAW,OAAO;AAClB,WAAW,SAAS;AACpB,WAAW,WAAW;AACtB,WAAW,OAAO;AAClB,WAAW,WAAW"}
@@ -0,0 +1,170 @@
1
+ import { cn } from "./classNames-BzrkDnOD.js";
2
+ import { Button } from "./Button-nzmDNS2q.js";
3
+ import { Popover } from "./Popover-Ca0V6AD1.js";
4
+ import { Slot } from "@radix-ui/react-slot";
5
+ import { createContext, use, useMemo, useRef, useState } from "react";
6
+ import { jsx } from "react/jsx-runtime";
7
+ //#region src/components/Popconfirm/context.ts
8
+ const PopconfirmContext = createContext(null);
9
+ const PopconfirmContextProvider = PopconfirmContext;
10
+ const usePopconfirmContext = () => {
11
+ const context = use(PopconfirmContext);
12
+ if (!context) throw new Error("usePopconfirmContext must be used within a Popconfirm");
13
+ return context;
14
+ };
15
+ //#endregion
16
+ //#region src/components/Popconfirm/PopconfirmBody.tsx
17
+ const PopconfirmBody = (props) => /* @__PURE__ */ jsx("div", { ...props });
18
+ //#endregion
19
+ //#region src/components/Popconfirm/PopconfirmCancel.tsx
20
+ const PopconfirmCancel = ({ ref, onClick, children, asChild, className, ...props }) => {
21
+ const { onCancel, isLoading } = usePopconfirmContext();
22
+ const handleClick = (event) => {
23
+ onClick?.(event);
24
+ onCancel(event);
25
+ };
26
+ return /* @__PURE__ */ jsx(Popover.Close, {
27
+ asChild: true,
28
+ onClick: handleClick,
29
+ disabled: isLoading,
30
+ children: asChild ? /* @__PURE__ */ jsx(Slot, {
31
+ ...props,
32
+ ref,
33
+ className,
34
+ children
35
+ }) : /* @__PURE__ */ jsx(Button, {
36
+ variant: "outline",
37
+ size: "small",
38
+ ...props,
39
+ ref,
40
+ className: cn(className),
41
+ children: children ?? "Cancel"
42
+ })
43
+ });
44
+ };
45
+ //#endregion
46
+ //#region src/components/Popconfirm/PopconfirmConfirm.tsx
47
+ const PopconfirmConfirm = ({ ref, onClick, children, asChild, className, ...props }) => {
48
+ const { onConfirm, variant, isLoading } = usePopconfirmContext();
49
+ const handleOnClick = (event) => {
50
+ onClick?.(event);
51
+ onConfirm(event);
52
+ };
53
+ const defaultLabel = (() => {
54
+ if (children) return children;
55
+ return variant === "danger" ? "Delete" : "Confirm";
56
+ })();
57
+ return /* @__PURE__ */ jsx(Popover.Close, {
58
+ asChild: true,
59
+ onClick: handleOnClick,
60
+ disabled: isLoading,
61
+ "data-loading": isLoading,
62
+ children: asChild ? /* @__PURE__ */ jsx(Slot, {
63
+ ...props,
64
+ ref,
65
+ className,
66
+ children
67
+ }) : /* @__PURE__ */ jsx(Button, {
68
+ size: "small",
69
+ variant: variant === "danger" ? "danger" : "primary",
70
+ ...props,
71
+ ref,
72
+ className: cn("tw:flex-1", className),
73
+ isLoading,
74
+ children: defaultLabel
75
+ })
76
+ });
77
+ };
78
+ //#endregion
79
+ //#region src/components/Popconfirm/PopconfirmContent.tsx
80
+ const PopconfirmContent = ({ className, onInteractOutside, ...props }) => {
81
+ const { isLoading } = usePopconfirmContext();
82
+ const handleOnInteractOutside = (event) => {
83
+ if (isLoading) event.preventDefault();
84
+ onInteractOutside?.(event);
85
+ };
86
+ return /* @__PURE__ */ jsx(Popover.Content, {
87
+ ...props,
88
+ onInteractOutside: handleOnInteractOutside,
89
+ className: cn("tw:flex", "tw:flex-col", "tw:gap-3", "tw:px-4", "tw:py-3", className)
90
+ });
91
+ };
92
+ //#endregion
93
+ //#region src/components/Popconfirm/PopconfirmFooter.tsx
94
+ const PopconfirmFooter = ({ className, ...props }) => /* @__PURE__ */ jsx("div", {
95
+ ...props,
96
+ className: cn("tw:flex tw:gap-2 tw:w-full", className)
97
+ });
98
+ //#endregion
99
+ //#region src/components/Popconfirm/PopconfirmTrigger.tsx
100
+ const PopconfirmTrigger = ({ onClick, ...props }) => {
101
+ const { enabled, onConfirm } = usePopconfirmContext();
102
+ const handleClick = (event) => {
103
+ if (!enabled) {
104
+ event.preventDefault();
105
+ onConfirm(event);
106
+ }
107
+ onClick?.(event);
108
+ };
109
+ return /* @__PURE__ */ jsx(Popover.Trigger, {
110
+ ...props,
111
+ onClick: handleClick
112
+ });
113
+ };
114
+ //#endregion
115
+ //#region src/components/Popconfirm/Popconfirm.tsx
116
+ const noop = () => void 0;
117
+ const Popconfirm = ({ children, onConfirm = noop, onCancel = noop, variant = "confirm", enabled = true, onOpenChange = noop, open, skipAsyncWait = false, ...rest }) => {
118
+ const [isLoading, setIsLoading] = useState(false);
119
+ const [isOpen, setIsOpen] = useState(false);
120
+ const confirmRef = useRef(onConfirm);
121
+ const cancelRef = useRef(onCancel);
122
+ confirmRef.current = onConfirm;
123
+ cancelRef.current = onCancel;
124
+ const handleOnOpenChange = (open) => {
125
+ setIsOpen(open);
126
+ onOpenChange(open);
127
+ };
128
+ const context = useMemo(() => ({
129
+ variant,
130
+ isLoading,
131
+ enabled,
132
+ onConfirm: (event) => {
133
+ const result = confirmRef.current(event);
134
+ if (!(result instanceof Promise) || skipAsyncWait) return;
135
+ event.preventDefault();
136
+ setIsLoading(true);
137
+ result.finally(() => {
138
+ setIsLoading(false);
139
+ setIsOpen(false);
140
+ });
141
+ },
142
+ onCancel: (event) => {
143
+ cancelRef.current(event);
144
+ }
145
+ }), [
146
+ variant,
147
+ isLoading,
148
+ enabled,
149
+ skipAsyncWait
150
+ ]);
151
+ return /* @__PURE__ */ jsx(Popover, {
152
+ ...rest,
153
+ open: open || isOpen,
154
+ onOpenChange: handleOnOpenChange,
155
+ children: /* @__PURE__ */ jsx(PopconfirmContextProvider, {
156
+ value: context,
157
+ children
158
+ })
159
+ });
160
+ };
161
+ Popconfirm.Confirm = PopconfirmConfirm;
162
+ Popconfirm.Cancel = PopconfirmCancel;
163
+ Popconfirm.Footer = PopconfirmFooter;
164
+ Popconfirm.Content = PopconfirmContent;
165
+ Popconfirm.Body = PopconfirmBody;
166
+ Popconfirm.Trigger = PopconfirmTrigger;
167
+ //#endregion
168
+ export { Popconfirm };
169
+
170
+ //# sourceMappingURL=Popconfirm-BGe1jLov.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Popconfirm-BGe1jLov.js","names":[],"sources":["../src/components/Popconfirm/context.ts","../src/components/Popconfirm/PopconfirmBody.tsx","../src/components/Popconfirm/PopconfirmCancel.tsx","../src/components/Popconfirm/PopconfirmConfirm.tsx","../src/components/Popconfirm/PopconfirmContent.tsx","../src/components/Popconfirm/PopconfirmFooter.tsx","../src/components/Popconfirm/PopconfirmTrigger.tsx","../src/components/Popconfirm/Popconfirm.tsx"],"sourcesContent":["import { createContext, type MouseEvent, use } from 'react';\n\nexport type PopconfirmContextType = {\n variant: 'confirm' | 'danger';\n onConfirm: (event: MouseEvent<HTMLButtonElement>) => void | Promise<void>;\n onCancel: (event: MouseEvent<HTMLButtonElement>) => void;\n enabled: boolean;\n isLoading: boolean;\n};\n\nconst PopconfirmContext = createContext<PopconfirmContextType | null>(null);\n\nexport const PopconfirmContextProvider = PopconfirmContext;\n\nexport const usePopconfirmContext = () => {\n const context = use(PopconfirmContext);\n if (!context) throw new Error('usePopconfirmContext must be used within a Popconfirm');\n return context;\n};\n","import type { ComponentProps } from 'react';\n\ntype Props = ComponentProps<'div'>;\n\nexport const PopconfirmBody = (props: Props) => <div {...props} />;\n","import type { ComponentProps, ReactNode } from 'react';\nimport { Slot } from '@radix-ui/react-slot';\n\nimport { cn } from '../../utils';\nimport { Button } from '../Button';\nimport { Popover } from '../Popover';\n\nimport { usePopconfirmContext } from './context';\n\ntype SlotProps = { asChild: true } & ComponentProps<'button'>;\ntype ButtonProps = { asChild?: false; children?: ReactNode } & Omit<\n ComponentProps<typeof Button>,\n 'children'\n>;\ntype Props = SlotProps | ButtonProps;\n\nexport const PopconfirmCancel = ({\n ref,\n onClick,\n children,\n asChild,\n className,\n ...props\n}: Props) => {\n const { onCancel, isLoading } = usePopconfirmContext();\n\n const handleClick: ComponentProps<'button'>['onClick'] = (event) => {\n onClick?.(event);\n onCancel(event);\n };\n\n return (\n <Popover.Close asChild onClick={handleClick} disabled={isLoading}>\n {asChild ? (\n <Slot {...props} ref={ref} className={className}>\n {children}\n </Slot>\n ) : (\n <Button variant=\"outline\" size=\"small\" {...props} ref={ref} className={cn(className)}>\n {children ?? 'Cancel'}\n </Button>\n )}\n </Popover.Close>\n );\n};\n","import type { ComponentProps, ReactNode } from 'react';\nimport { Slot } from '@radix-ui/react-slot';\n\nimport { cn } from '../../utils';\nimport { Button } from '../Button/Button';\nimport { Popover } from '../Popover';\n\nimport { usePopconfirmContext } from './context';\n\ntype SlotProps = { asChild: true } & ComponentProps<'button'>;\ntype ButtonProps = { asChild?: false; children?: ReactNode } & Omit<\n ComponentProps<typeof Button>,\n 'children' | 'isLoading'\n>;\ntype Props = SlotProps | ButtonProps;\n\nexport const PopconfirmConfirm = ({\n ref,\n onClick,\n children,\n asChild,\n className,\n ...props\n}: Props) => {\n const { onConfirm, variant, isLoading } = usePopconfirmContext();\n\n const handleOnClick: ComponentProps<'button'>['onClick'] = (event) => {\n onClick?.(event);\n onConfirm(event);\n };\n\n const defaultLabel = (() => {\n if (children) return children;\n return variant === 'danger' ? 'Delete' : 'Confirm';\n })();\n\n return (\n <Popover.Close asChild onClick={handleOnClick} disabled={isLoading} data-loading={isLoading}>\n {asChild ? (\n <Slot {...props} ref={ref} className={className}>\n {children}\n </Slot>\n ) : (\n <Button\n size=\"small\"\n variant={variant === 'danger' ? 'danger' : 'primary'}\n {...props}\n ref={ref}\n className={cn('tw:flex-1', className)}\n isLoading={isLoading}\n >\n {defaultLabel}\n </Button>\n )}\n </Popover.Close>\n );\n};\n","import type { ComponentProps } from 'react';\n\nimport { cn } from '../../utils';\nimport { Popover } from '../Popover';\n\nimport { usePopconfirmContext } from './context';\n\ntype Props = Omit<ComponentProps<typeof Popover.Content>, 'showArrow'>;\n\nexport const PopconfirmContent = ({ className, onInteractOutside, ...props }: Props) => {\n const { isLoading } = usePopconfirmContext();\n\n const handleOnInteractOutside: Props['onInteractOutside'] = (event) => {\n if (isLoading) event.preventDefault();\n onInteractOutside?.(event);\n };\n\n return (\n <Popover.Content\n {...props}\n onInteractOutside={handleOnInteractOutside}\n className={cn('tw:flex', 'tw:flex-col', 'tw:gap-3', 'tw:px-4', 'tw:py-3', className)}\n />\n );\n};\n","import type { ComponentProps } from 'react';\n\nimport { cn } from '../../utils';\n\ntype Props = ComponentProps<'div'>;\n\nexport const PopconfirmFooter = ({ className, ...props }: Props) => (\n <div {...props} className={cn('tw:flex tw:gap-2 tw:w-full', className)} />\n);\n","import type { ComponentProps, MouseEventHandler } from 'react';\n\nimport { Popover } from '../Popover';\n\nimport { usePopconfirmContext } from './context';\n\ntype Props = ComponentProps<typeof Popover.Trigger>;\n\nexport const PopconfirmTrigger = ({ onClick, ...props }: Props) => {\n const { enabled, onConfirm } = usePopconfirmContext();\n\n const handleClick: MouseEventHandler<HTMLButtonElement> = (event) => {\n if (!enabled) {\n event.preventDefault();\n onConfirm(event);\n }\n\n onClick?.(event);\n };\n\n return <Popover.Trigger {...props} onClick={handleClick} />;\n};\n","import { useMemo, useRef, useState } from 'react';\nimport type { ComponentProps, ReactNode } from 'react';\n\nimport { Popover } from '../Popover';\n\nimport { PopconfirmContextProvider, type PopconfirmContextType } from './context';\nimport { PopconfirmBody } from './PopconfirmBody';\nimport { PopconfirmCancel } from './PopconfirmCancel';\nimport { PopconfirmConfirm } from './PopconfirmConfirm';\nimport { PopconfirmContent } from './PopconfirmContent';\nimport { PopconfirmFooter } from './PopconfirmFooter';\nimport { PopconfirmTrigger } from './PopconfirmTrigger';\n\nconst noop = () => void 0;\n\ntype Props = {\n children: ReactNode;\n skipAsyncWait?: boolean;\n} & ComponentProps<typeof Popover> &\n Omit<Partial<PopconfirmContextType>, 'isLoading'>;\n\nexport const Popconfirm = ({\n children,\n onConfirm = noop,\n onCancel = noop,\n variant = 'confirm',\n enabled = true,\n onOpenChange = noop,\n open,\n skipAsyncWait = false,\n ...rest\n}: Props) => {\n const [isLoading, setIsLoading] = useState(false);\n const [isOpen, setIsOpen] = useState(false);\n\n const confirmRef = useRef(onConfirm);\n const cancelRef = useRef(onCancel);\n confirmRef.current = onConfirm;\n cancelRef.current = onCancel;\n\n const handleOnOpenChange = (open: boolean) => {\n setIsOpen(open);\n onOpenChange(open);\n };\n\n const context = useMemo<PopconfirmContextType>(\n () => ({\n variant,\n isLoading,\n enabled,\n onConfirm: (event) => {\n const result = confirmRef.current(event);\n\n if (!(result instanceof Promise) || skipAsyncWait) return;\n\n event.preventDefault();\n setIsLoading(true);\n result.finally(() => {\n setIsLoading(false);\n setIsOpen(false);\n });\n },\n onCancel: (event) => {\n cancelRef.current(event);\n },\n }),\n [variant, isLoading, enabled, skipAsyncWait],\n );\n\n return (\n <Popover {...rest} open={open || isOpen} onOpenChange={handleOnOpenChange}>\n <PopconfirmContextProvider value={context}>{children}</PopconfirmContextProvider>\n </Popover>\n );\n};\n\nPopconfirm.Confirm = PopconfirmConfirm;\nPopconfirm.Cancel = PopconfirmCancel;\nPopconfirm.Footer = PopconfirmFooter;\nPopconfirm.Content = PopconfirmContent;\nPopconfirm.Body = PopconfirmBody;\nPopconfirm.Trigger = PopconfirmTrigger;\n"],"mappings":";;;;;;;AAUA,MAAM,oBAAoB,cAA4C,IAAI;AAE1E,MAAa,4BAA4B;AAEzC,MAAa,6BAA6B;CACxC,MAAM,UAAU,IAAI,iBAAiB;CACrC,IAAI,CAAC,SAAS,MAAM,IAAI,MAAM,uDAAuD;CACrF,OAAO;AACT;;;ACdA,MAAa,kBAAkB,UAAiB,oBAAC,OAAD,EAAK,GAAI,MAAQ,CAAA;;;ACYjE,MAAa,oBAAoB,EAC/B,KACA,SACA,UACA,SACA,WACA,GAAG,YACQ;CACX,MAAM,EAAE,UAAU,cAAc,qBAAqB;CAErD,MAAM,eAAoD,UAAU;EAClE,UAAU,KAAK;EACf,SAAS,KAAK;CAChB;CAEA,OACE,oBAAC,QAAQ,OAAT;EAAe,SAAA;EAAQ,SAAS;EAAa,UAAU;EACpD,UAAA,UACC,oBAAC,MAAD;GAAM,GAAI;GAAY;GAAgB;GACnC;EACG,CAAA,IAEN,oBAAC,QAAD;GAAQ,SAAQ;GAAU,MAAK;GAAQ,GAAI;GAAY;GAAK,WAAW,GAAG,SAAS;GAChF,UAAA,YAAY;EACP,CAAA;CAEG,CAAA;AAEnB;;;AC5BA,MAAa,qBAAqB,EAChC,KACA,SACA,UACA,SACA,WACA,GAAG,YACQ;CACX,MAAM,EAAE,WAAW,SAAS,cAAc,qBAAqB;CAE/D,MAAM,iBAAsD,UAAU;EACpE,UAAU,KAAK;EACf,UAAU,KAAK;CACjB;CAEA,MAAM,sBAAsB;EAC1B,IAAI,UAAU,OAAO;EACrB,OAAO,YAAY,WAAW,WAAW;CAC3C,EAAA,CAAG;CAEH,OACE,oBAAC,QAAQ,OAAT;EAAe,SAAA;EAAQ,SAAS;EAAe,UAAU;EAAW,gBAAc;EAC/E,UAAA,UACC,oBAAC,MAAD;GAAM,GAAI;GAAY;GAAgB;GACnC;EACG,CAAA,IAEN,oBAAC,QAAD;GACE,MAAK;GACL,SAAS,YAAY,WAAW,WAAW;GAC3C,GAAI;GACC;GACL,WAAW,GAAG,aAAa,SAAS;GACzB;GAEV,UAAA;EACK,CAAA;CAEG,CAAA;AAEnB;;;AC/CA,MAAa,qBAAqB,EAAE,WAAW,mBAAmB,GAAG,YAAmB;CACtF,MAAM,EAAE,cAAc,qBAAqB;CAE3C,MAAM,2BAAuD,UAAU;EACrE,IAAI,WAAW,MAAM,eAAe;EACpC,oBAAoB,KAAK;CAC3B;CAEA,OACE,oBAAC,QAAQ,SAAT;EACE,GAAI;EACJ,mBAAmB;EACnB,WAAW,GAAG,WAAW,eAAe,YAAY,WAAW,WAAW,SAAS;CACpF,CAAA;AAEL;;;AClBA,MAAa,oBAAoB,EAAE,WAAW,GAAG,YAC/C,oBAAC,OAAD;CAAK,GAAI;CAAO,WAAW,GAAG,8BAA8B,SAAS;AAAI,CAAA;;;ACC3E,MAAa,qBAAqB,EAAE,SAAS,GAAG,YAAmB;CACjE,MAAM,EAAE,SAAS,cAAc,qBAAqB;CAEpD,MAAM,eAAqD,UAAU;EACnE,IAAI,CAAC,SAAS;GACZ,MAAM,eAAe;GACrB,UAAU,KAAK;EACjB;EAEA,UAAU,KAAK;CACjB;CAEA,OAAO,oBAAC,QAAQ,SAAT;EAAiB,GAAI;EAAO,SAAS;CAAc,CAAA;AAC5D;;;ACRA,MAAM,aAAa,KAAK;AAQxB,MAAa,cAAc,EACzB,UACA,YAAY,MACZ,WAAW,MACX,UAAU,WACV,UAAU,MACV,eAAe,MACf,MACA,gBAAgB,OAChB,GAAG,WACQ;CACX,MAAM,CAAC,WAAW,gBAAgB,SAAS,KAAK;CAChD,MAAM,CAAC,QAAQ,aAAa,SAAS,KAAK;CAE1C,MAAM,aAAa,OAAO,SAAS;CACnC,MAAM,YAAY,OAAO,QAAQ;CACjC,WAAW,UAAU;CACrB,UAAU,UAAU;CAEpB,MAAM,sBAAsB,SAAkB;EAC5C,UAAU,IAAI;EACd,aAAa,IAAI;CACnB;CAEA,MAAM,UAAU,eACP;EACL;EACA;EACA;EACA,YAAY,UAAU;GACpB,MAAM,SAAS,WAAW,QAAQ,KAAK;GAEvC,IAAI,EAAE,kBAAkB,YAAY,eAAe;GAEnD,MAAM,eAAe;GACrB,aAAa,IAAI;GACjB,OAAO,cAAc;IACnB,aAAa,KAAK;IAClB,UAAU,KAAK;GACjB,CAAC;EACH;EACA,WAAW,UAAU;GACnB,UAAU,QAAQ,KAAK;EACzB;CACF,IACA;EAAC;EAAS;EAAW;EAAS;CAAa,CAC7C;CAEA,OACE,oBAAC,SAAD;EAAS,GAAI;EAAM,MAAM,QAAQ;EAAQ,cAAc;EACrD,UAAA,oBAAC,2BAAD;GAA2B,OAAO;GAAU;EAAoC,CAAA;CACzE,CAAA;AAEb;AAEA,WAAW,UAAU;AACrB,WAAW,SAAS;AACpB,WAAW,SAAS;AACpB,WAAW,UAAU;AACrB,WAAW,OAAO;AAClB,WAAW,UAAU"}
@@ -0,0 +1,92 @@
1
+ import { cn } from "./classNames-BzrkDnOD.js";
2
+ import { useArgoDesign } from "./context-KxxeMHbR.js";
3
+ import { cva } from "class-variance-authority";
4
+ import { jsx } from "react/jsx-runtime";
5
+ import { Close, Content, Portal, Root, Trigger } from "@radix-ui/react-popover";
6
+ //#region src/components/Popover/PopoverContent.tsx
7
+ const variants = cva([
8
+ "tailwindcss-preflight",
9
+ "tw:group/popover-content",
10
+ "tw:z-[1055]",
11
+ "tw:focus-visible:outline-hidden",
12
+ "tw:pointer-events-auto",
13
+ "tw:min-w-32",
14
+ "tw:max-h-[var(--radix-popover-content-available-height)]",
15
+ "tw:origin-(--radix-popover-content-transform-origin)",
16
+ "tw:flex",
17
+ "tw:flex-col",
18
+ "tw:overflow-y-auto",
19
+ "tw:box-border",
20
+ "tw:border",
21
+ "tw:border-solid",
22
+ "tw:shadow-lg",
23
+ "tw:data-[state=open]:animate-in",
24
+ "tw:data-[state=open]:fade-in-0",
25
+ "tw:data-[state=open]:zoom-in-95",
26
+ "tw:data-[state=closed]:animate-out",
27
+ "tw:data-[state=closed]:fade-out-0",
28
+ "tw:data-[state=closed]:zoom-out-95",
29
+ "tw:data-[side=bottom]:slide-in-from-top-2",
30
+ "tw:data-[side=left]:slide-in-from-right-2",
31
+ "tw:data-[side=right]:slide-in-from-left-2",
32
+ "tw:data-[side=top]:slide-in-from-bottom-2",
33
+ "tw:[&_svg.lucide:not([class*='tw:size-'])]:size-4",
34
+ "tw:[&_svg]:shrink-0"
35
+ ], {
36
+ defaultVariants: {
37
+ matchTriggerWidth: false,
38
+ variant: "default"
39
+ },
40
+ variants: {
41
+ variant: {
42
+ default: [
43
+ "tw:rounded-md",
44
+ "tw:border-neutral-100",
45
+ "tw:bg-white",
46
+ "tw:text-neutral-800"
47
+ ],
48
+ argo: [
49
+ "tw:rounded-2xl",
50
+ "tw:border-border",
51
+ "tw:bg-popover",
52
+ "tw:text-popover-foreground"
53
+ ]
54
+ },
55
+ matchTriggerWidth: {
56
+ true: ["tw:w-[var(--radix-popover-trigger-width)]"],
57
+ false: []
58
+ }
59
+ }
60
+ });
61
+ const PopoverContent = ({ ref, className, align = "center", sideOffset = 4, matchTriggerWidth = false, children, onEscapeKeyDown, ...props }) => {
62
+ const effectiveVariant = useArgoDesign() ? "argo" : "default";
63
+ return /* @__PURE__ */ jsx(Portal, { children: /* @__PURE__ */ jsx(Content, {
64
+ ref,
65
+ align: matchTriggerWidth ? "start" : align,
66
+ sideOffset,
67
+ className: cn(variants({
68
+ className,
69
+ matchTriggerWidth,
70
+ variant: effectiveVariant
71
+ })),
72
+ onEscapeKeyDown: (event) => {
73
+ event.stopPropagation();
74
+ onEscapeKeyDown?.(event);
75
+ },
76
+ ...props,
77
+ children
78
+ }) });
79
+ };
80
+ //#endregion
81
+ //#region src/components/Popover/Popover.tsx
82
+ const Popover = (props) => /* @__PURE__ */ jsx(Root, { ...props });
83
+ /**
84
+ * Main Layout
85
+ */
86
+ Popover.Content = PopoverContent;
87
+ Popover.Trigger = Trigger;
88
+ Popover.Close = Close;
89
+ //#endregion
90
+ export { Popover };
91
+
92
+ //# sourceMappingURL=Popover-Ca0V6AD1.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Popover-Ca0V6AD1.js","names":[],"sources":["../src/components/Popover/PopoverContent.tsx","../src/components/Popover/Popover.tsx"],"sourcesContent":["import type { ComponentProps } from 'react';\nimport { Content, Portal } from '@radix-ui/react-popover';\nimport type { VariantProps } from 'class-variance-authority';\nimport { cva } from 'class-variance-authority';\n\nimport { cn } from '../../utils';\nimport { useArgoDesign } from '../ThemeProvider/context';\n\nconst variants = cva(\n [\n 'tailwindcss-preflight',\n 'tw:group/popover-content',\n 'tw:z-[1055]',\n 'tw:focus-visible:outline-hidden',\n\n // An open Radix Dialog locks `pointer-events: none` on <body>. Popover content\n // is portalled to <body> as a sibling of the dialog, so it inherits the lock\n // and clicks fall through — re-enable pointer events on the content itself\n // (dismiss-on-outside-click still works, it listens on document).\n 'tw:pointer-events-auto',\n\n // sizing\n 'tw:min-w-32',\n 'tw:max-h-[var(--radix-popover-content-available-height)]',\n 'tw:origin-(--radix-popover-content-transform-origin)',\n\n // layout\n 'tw:flex',\n 'tw:flex-col',\n 'tw:overflow-y-auto',\n\n // border\n 'tw:box-border',\n 'tw:border',\n 'tw:border-solid',\n 'tw:shadow-lg',\n\n // open animation\n 'tw:data-[state=open]:animate-in',\n 'tw:data-[state=open]:fade-in-0',\n 'tw:data-[state=open]:zoom-in-95',\n\n // closed animation\n 'tw:data-[state=closed]:animate-out',\n 'tw:data-[state=closed]:fade-out-0',\n 'tw:data-[state=closed]:zoom-out-95',\n\n // position animation\n 'tw:data-[side=bottom]:slide-in-from-top-2',\n 'tw:data-[side=left]:slide-in-from-right-2',\n 'tw:data-[side=right]:slide-in-from-left-2',\n 'tw:data-[side=top]:slide-in-from-bottom-2',\n\n // Default size for nested Lucide icons; callers can override on the icon.\n \"tw:[&_svg.lucide:not([class*='tw:size-'])]:size-4\",\n 'tw:[&_svg]:shrink-0',\n ],\n {\n defaultVariants: {\n matchTriggerWidth: false,\n variant: 'default',\n },\n variants: {\n variant: {\n // Legacy surface — fixed white panel.\n default: ['tw:rounded-md', 'tw:border-neutral-100', 'tw:bg-white', 'tw:text-neutral-800'],\n // Argo surface — semantic popover tokens (brand + dark aware).\n argo: ['tw:rounded-2xl', 'tw:border-border', 'tw:bg-popover', 'tw:text-popover-foreground'],\n },\n matchTriggerWidth: {\n true: ['tw:w-[var(--radix-popover-trigger-width)]'],\n false: [],\n },\n },\n },\n);\n\ntype Props = ComponentProps<typeof Content> & Omit<VariantProps<typeof variants>, 'variant'>;\n\nexport const PopoverContent = ({\n ref,\n className,\n align = 'center',\n sideOffset = 4,\n matchTriggerWidth = false,\n children,\n onEscapeKeyDown,\n ...props\n}: Props) => {\n const effectiveVariant: NonNullable<VariantProps<typeof variants>['variant']> = useArgoDesign()\n ? 'argo'\n : 'default';\n return (\n <Portal>\n <Content\n ref={ref}\n align={matchTriggerWidth ? 'start' : align}\n sideOffset={sideOffset}\n className={cn(variants({ className, matchTriggerWidth, variant: effectiveVariant }))}\n onEscapeKeyDown={(event) => {\n // Stop propagation to prevent parent modals (like FullScreenModal) from closing\n event.stopPropagation();\n onEscapeKeyDown?.(event);\n }}\n {...props}\n >\n {children}\n </Content>\n </Portal>\n );\n};\n","import type { ComponentProps } from 'react';\nimport { Close, Root, Trigger } from '@radix-ui/react-popover';\n\nimport { PopoverContent } from './PopoverContent';\n\ntype Props = ComponentProps<typeof Root>;\n\nexport const Popover = (props: Props) => <Root {...props} />;\n\n/**\n * Main Layout\n */\nPopover.Content = PopoverContent;\nPopover.Trigger = Trigger;\nPopover.Close = Close;\n"],"mappings":";;;;;;AAQA,MAAM,WAAW,IACf;CACE;CACA;CACA;CACA;CAMA;CAGA;CACA;CACA;CAGA;CACA;CACA;CAGA;CACA;CACA;CACA;CAGA;CACA;CACA;CAGA;CACA;CACA;CAGA;CACA;CACA;CACA;CAGA;CACA;AACF,GACA;CACE,iBAAiB;EACf,mBAAmB;EACnB,SAAS;CACX;CACA,UAAU;EACR,SAAS;GAEP,SAAS;IAAC;IAAiB;IAAyB;IAAe;GAAqB;GAExF,MAAM;IAAC;IAAkB;IAAoB;IAAiB;GAA4B;EAC5F;EACA,mBAAmB;GACjB,MAAM,CAAC,2CAA2C;GAClD,OAAO,CAAC;EACV;CACF;AACF,CACF;AAIA,MAAa,kBAAkB,EAC7B,KACA,WACA,QAAQ,UACR,aAAa,GACb,oBAAoB,OACpB,UACA,iBACA,GAAG,YACQ;CACX,MAAM,mBAA0E,cAAc,IAC1F,SACA;CACJ,OACE,oBAAC,QAAD,EAAA,UACE,oBAAC,SAAD;EACO;EACL,OAAO,oBAAoB,UAAU;EACzB;EACZ,WAAW,GAAG,SAAS;GAAE;GAAW;GAAmB,SAAS;EAAiB,CAAC,CAAC;EACnF,kBAAkB,UAAU;GAE1B,MAAM,gBAAgB;GACtB,kBAAkB,KAAK;EACzB;EACA,GAAI;EAEH;CACM,CAAA,EACH,CAAA;AAEZ;;;ACvGA,MAAa,WAAW,UAAiB,oBAAC,MAAD,EAAM,GAAI,MAAQ,CAAA;;;;AAK3D,QAAQ,UAAU;AAClB,QAAQ,UAAU;AAClB,QAAQ,QAAQ"}