@rafal.lemieszewski/tide-ui 0.83.0 → 0.84.3

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 (256) hide show
  1. package/README.md +20 -8
  2. package/dist/cjs/components/core-index.cjs +1 -0
  3. package/dist/cjs/components/fundamental/accordion.cjs +1 -0
  4. package/dist/cjs/components/fundamental/alert-dialog.cjs +1 -0
  5. package/dist/cjs/components/fundamental/alert.cjs +1 -0
  6. package/dist/cjs/components/fundamental/autocomplete-search.cjs +1 -0
  7. package/dist/cjs/components/fundamental/avatar-group.cjs +1 -0
  8. package/dist/cjs/components/fundamental/avatar.cjs +1 -0
  9. package/dist/cjs/components/fundamental/badge.cjs +1 -0
  10. package/dist/cjs/components/fundamental/breadcrumb.cjs +1 -0
  11. package/dist/cjs/components/fundamental/button-group.cjs +1 -0
  12. package/dist/cjs/components/fundamental/button.cjs +1 -0
  13. package/dist/cjs/components/fundamental/calendar.cjs +1 -0
  14. package/dist/cjs/components/fundamental/card.cjs +1 -0
  15. package/dist/cjs/components/fundamental/chart.cjs +1 -0
  16. package/dist/cjs/components/fundamental/checkbox.cjs +1 -0
  17. package/dist/cjs/components/fundamental/collapsible.cjs +1 -0
  18. package/dist/cjs/components/fundamental/combobox.cjs +1 -0
  19. package/dist/cjs/components/fundamental/command.cjs +1 -0
  20. package/dist/cjs/components/fundamental/country-dropdown.cjs +1 -0
  21. package/dist/cjs/components/fundamental/custom-icons.cjs +1 -0
  22. package/dist/cjs/components/fundamental/date-picker.cjs +1 -0
  23. package/dist/cjs/components/fundamental/dialog.cjs +1 -0
  24. package/dist/cjs/components/fundamental/drawer.cjs +1 -0
  25. package/dist/cjs/components/fundamental/dropdown-menu.cjs +1 -0
  26. package/dist/cjs/components/fundamental/editable.cjs +1 -0
  27. package/dist/cjs/components/fundamental/empty.cjs +1 -0
  28. package/dist/cjs/components/fundamental/file-upload.cjs +1 -0
  29. package/dist/cjs/components/fundamental/flag.cjs +1 -0
  30. package/dist/cjs/components/fundamental/form-field.cjs +1 -0
  31. package/dist/cjs/components/fundamental/hover-card.cjs +1 -0
  32. package/dist/cjs/components/fundamental/icon.cjs +1 -0
  33. package/dist/cjs/components/fundamental/input-group.cjs +1 -0
  34. package/dist/cjs/components/fundamental/input.cjs +1 -0
  35. package/dist/cjs/components/fundamental/kbd.cjs +1 -0
  36. package/dist/cjs/components/fundamental/label.cjs +1 -0
  37. package/dist/cjs/components/fundamental/month-picker.cjs +1 -0
  38. package/dist/cjs/components/fundamental/pagination.cjs +1 -0
  39. package/dist/cjs/components/fundamental/popover.cjs +1 -0
  40. package/dist/cjs/components/fundamental/progress.cjs +1 -0
  41. package/dist/cjs/components/fundamental/radio-group.cjs +1 -0
  42. package/dist/cjs/components/fundamental/resizable.cjs +1 -0
  43. package/dist/cjs/components/fundamental/scroll-area.cjs +1 -0
  44. package/dist/cjs/components/fundamental/select.cjs +1 -0
  45. package/dist/cjs/components/fundamental/separator.cjs +1 -0
  46. package/dist/cjs/components/fundamental/sheet.cjs +1 -0
  47. package/dist/cjs/components/fundamental/sidebar.cjs +1 -0
  48. package/dist/cjs/components/fundamental/skeleton.cjs +1 -0
  49. package/dist/cjs/components/fundamental/slider.cjs +1 -0
  50. package/dist/cjs/components/fundamental/spinner.cjs +1 -0
  51. package/dist/cjs/components/fundamental/switch.cjs +1 -0
  52. package/dist/cjs/components/fundamental/table.cjs +1 -0
  53. package/dist/cjs/components/fundamental/tabs.cjs +1 -0
  54. package/dist/cjs/components/fundamental/tag.cjs +27 -0
  55. package/dist/cjs/components/fundamental/text-link.cjs +1 -0
  56. package/dist/cjs/components/fundamental/textarea.cjs +1 -0
  57. package/dist/cjs/components/fundamental/toast.cjs +1 -0
  58. package/dist/cjs/components/fundamental/toggle-group.cjs +1 -0
  59. package/dist/cjs/components/fundamental/toggle.cjs +1 -0
  60. package/dist/cjs/components/fundamental/tooltip.cjs +1 -0
  61. package/dist/cjs/components/fundamental/tree.cjs +1 -0
  62. package/dist/cjs/components/product/activity-log.cjs +1 -0
  63. package/dist/cjs/components/product/app-frame.cjs +1 -0
  64. package/dist/cjs/components/product/attributes-list.cjs +1 -0
  65. package/dist/cjs/components/product/bookmarks.cjs +1 -0
  66. package/dist/cjs/components/product/data-table-settings-menu.cjs +1 -0
  67. package/dist/cjs/components/product/data-table.cjs +1 -0
  68. package/dist/cjs/components/product/filters.cjs +1 -0
  69. package/dist/cjs/components/product/fixture-status.cjs +1 -0
  70. package/dist/cjs/components/product/linked-chart.cjs +1 -0
  71. package/dist/cjs/components/product/view-mode-menu.cjs +1 -0
  72. package/dist/cjs/lib/date-utils.cjs +1 -0
  73. package/dist/cjs/lib/hooks.cjs +1 -0
  74. package/dist/cjs/lib/index.cjs +1 -0
  75. package/dist/cjs/lib/utils.cjs +1 -0
  76. package/dist/es/components/core-index.js +37 -0
  77. package/dist/es/components/fundamental/accordion.js +60 -0
  78. package/dist/es/components/fundamental/alert-dialog.js +116 -0
  79. package/dist/es/components/fundamental/alert.js +65 -0
  80. package/dist/es/components/fundamental/autocomplete-search.js +139 -0
  81. package/dist/es/components/fundamental/avatar-group.js +51 -0
  82. package/dist/es/components/fundamental/avatar.js +165 -0
  83. package/dist/es/components/fundamental/badge.js +157 -0
  84. package/dist/es/components/fundamental/breadcrumb.js +142 -0
  85. package/dist/es/components/fundamental/button-group.js +86 -0
  86. package/dist/es/components/fundamental/button.js +186 -0
  87. package/dist/es/components/fundamental/calendar.js +130 -0
  88. package/dist/es/components/fundamental/card.js +68 -0
  89. package/dist/es/components/fundamental/chart.js +1006 -0
  90. package/dist/es/components/fundamental/checkbox.js +51 -0
  91. package/dist/es/components/fundamental/collapsible.js +55 -0
  92. package/dist/es/components/fundamental/combobox.js +229 -0
  93. package/dist/es/components/fundamental/command.js +155 -0
  94. package/dist/es/components/fundamental/country-dropdown.js +215 -0
  95. package/dist/es/components/fundamental/custom-icons.js +876 -0
  96. package/dist/es/components/fundamental/date-picker.js +119 -0
  97. package/dist/es/components/fundamental/dialog.js +106 -0
  98. package/dist/es/components/fundamental/drawer.js +93 -0
  99. package/dist/es/components/fundamental/dropdown-menu.js +600 -0
  100. package/dist/es/components/fundamental/editable.js +123 -0
  101. package/dist/es/components/fundamental/empty.js +152 -0
  102. package/dist/es/components/fundamental/file-upload.js +289 -0
  103. package/dist/es/components/fundamental/flag.js +60 -0
  104. package/dist/es/components/fundamental/form-field.js +352 -0
  105. package/dist/es/components/fundamental/hover-card.js +23 -0
  106. package/dist/es/components/fundamental/icon.js +200 -0
  107. package/dist/es/components/fundamental/input-group.js +135 -0
  108. package/dist/es/components/fundamental/input.js +78 -0
  109. package/dist/es/components/fundamental/kbd.js +57 -0
  110. package/dist/es/components/fundamental/label.js +54 -0
  111. package/dist/es/components/fundamental/month-picker.js +161 -0
  112. package/dist/es/components/fundamental/pagination.js +109 -0
  113. package/dist/es/components/fundamental/popover.js +24 -0
  114. package/dist/es/components/fundamental/progress.js +66 -0
  115. package/dist/es/components/fundamental/radio-group.js +64 -0
  116. package/dist/es/components/fundamental/resizable.js +43 -0
  117. package/dist/es/components/fundamental/scroll-area.js +38 -0
  118. package/dist/es/components/fundamental/select.js +136 -0
  119. package/dist/es/components/fundamental/separator.js +47 -0
  120. package/dist/es/components/fundamental/sheet.js +134 -0
  121. package/dist/es/components/fundamental/sidebar.js +709 -0
  122. package/dist/es/components/fundamental/skeleton.js +158 -0
  123. package/dist/es/components/fundamental/slider.js +35 -0
  124. package/dist/es/components/fundamental/spinner.js +225 -0
  125. package/dist/es/components/fundamental/switch.js +27 -0
  126. package/dist/es/components/fundamental/table.js +263 -0
  127. package/dist/es/components/fundamental/tabs.js +170 -0
  128. package/dist/es/components/fundamental/tag.js +295 -0
  129. package/dist/es/components/fundamental/text-link.js +105 -0
  130. package/dist/es/components/fundamental/textarea.js +47 -0
  131. package/dist/es/components/fundamental/toast.js +108 -0
  132. package/dist/es/components/fundamental/toggle-group.js +37 -0
  133. package/dist/es/components/fundamental/toggle.js +51 -0
  134. package/dist/es/components/fundamental/tooltip.js +26 -0
  135. package/dist/es/components/fundamental/tree.js +161 -0
  136. package/dist/es/components/product/activity-log.js +231 -0
  137. package/dist/es/components/product/app-frame.js +985 -0
  138. package/dist/es/components/product/attributes-list.js +351 -0
  139. package/dist/es/components/product/bookmarks.js +833 -0
  140. package/dist/es/components/product/data-table-settings-menu.js +169 -0
  141. package/dist/es/components/product/data-table.js +2473 -0
  142. package/dist/es/components/product/filters.js +1041 -0
  143. package/dist/es/components/product/fixture-status.js +178 -0
  144. package/dist/es/components/product/linked-chart.js +179 -0
  145. package/dist/es/components/product/view-mode-menu.js +353 -0
  146. package/dist/es/lib/date-utils.js +151 -0
  147. package/dist/es/lib/hooks.js +29 -0
  148. package/dist/es/lib/index.js +348 -0
  149. package/dist/es/lib/utils.js +8 -0
  150. package/dist/es/style.css +1 -0
  151. package/dist/types/bookmarks.d.ts +2 -0
  152. package/dist/types/calendar.d.ts +2 -0
  153. package/dist/types/chart.d.ts +2 -0
  154. package/dist/types/components/core-index.d.cts +135 -0
  155. package/dist/types/components/core-index.d.ts +135 -0
  156. package/dist/{components → types/components}/fundamental/avatar.d.ts +3 -3
  157. package/dist/{components → types/components}/fundamental/badge.d.ts +2 -2
  158. package/dist/{components → types/components}/fundamental/button-group.d.ts +2 -2
  159. package/dist/{components → types/components}/fundamental/button.d.ts +1 -1
  160. package/dist/types/components/fundamental/calendar.d.ts +7 -0
  161. package/dist/types/components/fundamental/chart.d.ts +95 -0
  162. package/dist/{components → types/components}/fundamental/command.d.ts +2 -2
  163. package/dist/types/components/fundamental/country-dropdown.d.ts +34 -0
  164. package/dist/types/components/fundamental/date-picker.d.ts +30 -0
  165. package/dist/{components → types/components}/fundamental/file-upload.d.ts +1 -1
  166. package/dist/{components → types/components}/fundamental/form-field.d.ts +2 -2
  167. package/dist/{components → types/components}/fundamental/form.d.ts +2 -2
  168. package/dist/{components → types/components}/fundamental/icon.d.ts +1 -1
  169. package/dist/{components → types/components}/fundamental/input-group.d.ts +1 -1
  170. package/dist/types/components/fundamental/resizable.d.cts +23 -0
  171. package/dist/{components → types/components}/fundamental/resizable.d.ts +1 -1
  172. package/dist/{components → types/components}/fundamental/sidebar.d.ts +3 -3
  173. package/dist/{components → types/components}/fundamental/spinner.d.ts +1 -1
  174. package/dist/{components → types/components}/fundamental/table.d.ts +3 -3
  175. package/dist/{components → types/components}/fundamental/text-link.d.ts +1 -1
  176. package/dist/{components → types/components}/index.d.ts +118 -118
  177. package/dist/{components → types/components}/product/activity-log.d.ts +1 -1
  178. package/dist/{components → types/components}/product/attributes-list.d.ts +1 -1
  179. package/dist/types/components/product/bookmarks.d.cts +90 -0
  180. package/dist/{components → types/components}/product/bookmarks.d.ts +1 -1
  181. package/dist/types/components/product/data-table.d.ts +802 -0
  182. package/dist/types/components/product/filters.d.ts +124 -0
  183. package/dist/{components → types/components}/product/fixture-status.d.ts +1 -1
  184. package/dist/types/components/product/linked-chart.d.cts +22 -0
  185. package/dist/{components → types/components}/product/linked-chart.d.ts +1 -1
  186. package/dist/types/country-dropdown.d.ts +2 -0
  187. package/dist/types/data-table.d.ts +2 -0
  188. package/dist/types/date-picker.d.ts +2 -0
  189. package/dist/types/filters.d.ts +2 -0
  190. package/dist/types/index.d.ts +2 -0
  191. package/dist/types/lib/index.d.cts +104 -0
  192. package/dist/types/lib/index.d.ts +104 -0
  193. package/dist/types/linked-chart.d.ts +2 -0
  194. package/dist/types/resizable.d.ts +2 -0
  195. package/package.json +191 -31
  196. package/dist/index.cjs.js +0 -144
  197. package/dist/index.cjs.js.map +0 -1
  198. package/dist/index.d.ts +0 -2
  199. package/dist/index.es.js +0 -87768
  200. package/dist/index.es.js.map +0 -1
  201. package/dist/lib/index.d.ts +0 -3
  202. package/dist/style.css +0 -1
  203. /package/dist/{components → types/components}/fundamental/accordion.d.ts +0 -0
  204. /package/dist/{components → types/components}/fundamental/alert-dialog.d.ts +0 -0
  205. /package/dist/{components → types/components}/fundamental/alert.d.ts +0 -0
  206. /package/dist/{components → types/components}/fundamental/autocomplete-search.d.ts +0 -0
  207. /package/dist/{components → types/components}/fundamental/avatar-group.d.ts +0 -0
  208. /package/dist/{components → types/components}/fundamental/breadcrumb.d.ts +0 -0
  209. /package/dist/{components → types/components}/fundamental/button.test.d.ts +0 -0
  210. /package/dist/{components/fundamental/calendar.d.ts → types/components/fundamental/calendar.d.cts} +0 -0
  211. /package/dist/{components → types/components}/fundamental/card.d.ts +0 -0
  212. /package/dist/{components/fundamental/chart.d.ts → types/components/fundamental/chart.d.cts} +0 -0
  213. /package/dist/{components → types/components}/fundamental/checkbox.d.ts +0 -0
  214. /package/dist/{components → types/components}/fundamental/collapsible.d.ts +0 -0
  215. /package/dist/{components → types/components}/fundamental/combobox.d.ts +0 -0
  216. /package/dist/{components/fundamental/country-dropdown.d.ts → types/components/fundamental/country-dropdown.d.cts} +0 -0
  217. /package/dist/{components → types/components}/fundamental/custom-icons.d.ts +0 -0
  218. /package/dist/{components/fundamental/date-picker.d.ts → types/components/fundamental/date-picker.d.cts} +0 -0
  219. /package/dist/{components → types/components}/fundamental/dialog.d.ts +0 -0
  220. /package/dist/{components → types/components}/fundamental/drawer.d.ts +0 -0
  221. /package/dist/{components → types/components}/fundamental/dropdown-menu.d.ts +0 -0
  222. /package/dist/{components → types/components}/fundamental/editable.d.ts +0 -0
  223. /package/dist/{components → types/components}/fundamental/empty.d.ts +0 -0
  224. /package/dist/{components → types/components}/fundamental/flag.d.ts +0 -0
  225. /package/dist/{components → types/components}/fundamental/hover-card.d.ts +0 -0
  226. /package/dist/{components → types/components}/fundamental/input.d.ts +0 -0
  227. /package/dist/{components → types/components}/fundamental/kbd.d.ts +0 -0
  228. /package/dist/{components → types/components}/fundamental/label.d.ts +0 -0
  229. /package/dist/{components → types/components}/fundamental/month-picker.d.ts +0 -0
  230. /package/dist/{components → types/components}/fundamental/pagination.d.ts +0 -0
  231. /package/dist/{components → types/components}/fundamental/popover.d.ts +0 -0
  232. /package/dist/{components → types/components}/fundamental/progress.d.ts +0 -0
  233. /package/dist/{components → types/components}/fundamental/radio-group.d.ts +0 -0
  234. /package/dist/{components → types/components}/fundamental/scroll-area.d.ts +0 -0
  235. /package/dist/{components → types/components}/fundamental/select.d.ts +0 -0
  236. /package/dist/{components → types/components}/fundamental/separator.d.ts +0 -0
  237. /package/dist/{components → types/components}/fundamental/sheet.d.ts +0 -0
  238. /package/dist/{components → types/components}/fundamental/skeleton.d.ts +0 -0
  239. /package/dist/{components → types/components}/fundamental/slider.d.ts +0 -0
  240. /package/dist/{components → types/components}/fundamental/switch.d.ts +0 -0
  241. /package/dist/{components → types/components}/fundamental/tabs.d.ts +0 -0
  242. /package/dist/{components → types/components}/fundamental/tag.d.ts +0 -0
  243. /package/dist/{components → types/components}/fundamental/textarea.d.ts +0 -0
  244. /package/dist/{components → types/components}/fundamental/toast.d.ts +0 -0
  245. /package/dist/{components → types/components}/fundamental/toggle-group.d.ts +0 -0
  246. /package/dist/{components → types/components}/fundamental/toggle.d.ts +0 -0
  247. /package/dist/{components → types/components}/fundamental/tooltip.d.ts +0 -0
  248. /package/dist/{components → types/components}/fundamental/tree.d.ts +0 -0
  249. /package/dist/{components → types/components}/product/app-frame.d.ts +0 -0
  250. /package/dist/{components → types/components}/product/data-table-settings-menu.d.ts +0 -0
  251. /package/dist/{components/product/data-table.d.ts → types/components/product/data-table.d.cts} +0 -0
  252. /package/dist/{components/product/filters.d.ts → types/components/product/filters.d.cts} +0 -0
  253. /package/dist/{components → types/components}/product/view-mode-menu.d.ts +0 -0
  254. /package/dist/{lib → types/lib}/date-utils.d.ts +0 -0
  255. /package/dist/{lib → types/lib}/hooks.d.ts +0 -0
  256. /package/dist/{lib → types/lib}/utils.d.ts +0 -0
@@ -0,0 +1,600 @@
1
+ import { jsx as r, jsxs as p } from "react/jsx-runtime";
2
+ import * as n from "react";
3
+ import * as c from "@radix-ui/react-dropdown-menu";
4
+ import { ChevronLeft as z, ChevronRight as h, Check as g, Circle as w } from "lucide-react";
5
+ import { cn as u } from "../../lib/utils.js";
6
+ import { useIsDesktop as j } from "../../lib/hooks.js";
7
+ import { Drawer as _, DrawerTrigger as P, DrawerContent as B, DrawerClose as y } from "./drawer.js";
8
+ import { Icon as x } from "./icon.js";
9
+ const W = c.Root, $ = c.Trigger, ce = c.Group, E = /* @__PURE__ */ n.forwardRef(({ className: t, inset: o, children: e, ...a }, s) => /* @__PURE__ */ p(
10
+ c.SubTrigger,
11
+ {
12
+ ref: s,
13
+ className: u(
14
+ "text-body-md flex [&]:cursor-pointer select-none items-center rounded-m px-[var(--space-m)] h-[var(--size-m)] outline-none focus:bg-[var(--color-background-neutral-subtlest-hovered)] hover:bg-[var(--color-background-neutral-subtlest-hovered)] data-[state=open]:bg-[var(--color-background-neutral-subtlest-hovered)]",
15
+ o && "pl-8",
16
+ t
17
+ ),
18
+ ...a,
19
+ children: [
20
+ e,
21
+ /* @__PURE__ */ r(h, { className: "ml-auto h-4 w-4" })
22
+ ]
23
+ }
24
+ ));
25
+ E.displayName = c.SubTrigger.displayName;
26
+ const G = /* @__PURE__ */ n.forwardRef(({ className: t, ...o }, e) => /* @__PURE__ */ r(
27
+ c.SubContent,
28
+ {
29
+ ref: e,
30
+ className: u(
31
+ "z-50 min-w-[12rem] overflow-hidden rounded-l border border-[var(--color-border-primary-subtle)] bg-[var(--color-surface-primary)] p-[var(--space-xs)] text-[var(--color-text-primary)] shadow-lg data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",
32
+ t
33
+ ),
34
+ ...o
35
+ }
36
+ ));
37
+ G.displayName = c.SubContent.displayName;
38
+ const k = /* @__PURE__ */ n.forwardRef(({ className: t, sideOffset: o = 4, ...e }, a) => /* @__PURE__ */ r(c.Portal, { children: /* @__PURE__ */ r(
39
+ c.Content,
40
+ {
41
+ ref: a,
42
+ sideOffset: o,
43
+ className: u(
44
+ "z-50 min-w-[16rem] overflow-hidden rounded-l border border-[var(--color-border-primary-subtle)] bg-[var(--color-surface-primary)] p-[var(--space-s)] text-[var(--color-text-primary)] shadow-xl data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",
45
+ t
46
+ ),
47
+ ...e
48
+ }
49
+ ) }));
50
+ k.displayName = c.Content.displayName;
51
+ const N = /* @__PURE__ */ n.forwardRef(({ className: t, inset: o, destructive: e, icon: a, children: s, ...l }, i) => /* @__PURE__ */ p(
52
+ c.Item,
53
+ {
54
+ ref: i,
55
+ className: u(
56
+ "[&]:text-body-md relative flex [&]:cursor-pointer select-none items-center rounded-m px-[var(--space-m)] h-[var(--size-m)] outline-none transition-colors focus:bg-[var(--color-background-neutral-subtlest-hovered)] focus:text-[var(--color-text-primary)] hover:bg-[var(--color-background-neutral-subtlest-hovered)] hover:text-[var(--color-text-primary)] [&]:data-[disabled]:!cursor-not-allowed data-[disabled]:opacity-50 data-[disabled]:hover:bg-transparent data-[disabled]:focus:bg-transparent [&[data-disabled]_*]:!cursor-not-allowed",
57
+ e && "text-[var(--color-text-error-bold)] hover:text-[var(--color-text-error-bold)] focus:text-[var(--color-text-error-bold)] hover:bg-[var(--color-background-error-subtle)] focus:bg-[var(--color-background-error-subtle)] [&>svg]:text-[var(--color-icon-error-bold)]",
58
+ o && "pl-8",
59
+ t
60
+ ),
61
+ ...l,
62
+ children: [
63
+ a && /* @__PURE__ */ r(x, { name: a, size: "m", className: "mr-2" }),
64
+ s
65
+ ]
66
+ }
67
+ ));
68
+ N.displayName = c.Item.displayName;
69
+ const V = /* @__PURE__ */ n.forwardRef(({ className: t, children: o, checked: e, ...a }, s) => /* @__PURE__ */ p(
70
+ c.CheckboxItem,
71
+ {
72
+ ref: s,
73
+ className: u(
74
+ "text-body-md relative flex [&]:cursor-pointer select-none items-center rounded-m h-[var(--size-m)] pl-10 pr-[var(--space-m)] outline-none transition-colors focus:bg-[var(--color-background-neutral-subtlest-hovered)] focus:text-[var(--color-text-primary)] hover:bg-[var(--color-background-neutral-subtlest-hovered)] hover:text-[var(--color-text-primary)] [&]:data-[disabled]:!cursor-not-allowed data-[disabled]:opacity-50 data-[disabled]:hover:bg-transparent data-[disabled]:focus:bg-transparent [&[data-disabled]_*]:!cursor-not-allowed",
75
+ t
76
+ ),
77
+ checked: e,
78
+ onSelect: (l) => l.preventDefault(),
79
+ ...a,
80
+ children: [
81
+ /* @__PURE__ */ r("span", { className: "absolute left-[var(--space-m)] flex h-4 w-4 items-center justify-center rounded-s border border-[var(--color-interaction-border-input)] bg-[var(--color-surface-primary)]", children: /* @__PURE__ */ r(c.ItemIndicator, { children: /* @__PURE__ */ r("div", { className: "h-4 w-4 rounded-s border border-[var(--color-background-blue-bold)] bg-[var(--color-background-blue-bold)] flex items-center justify-center", children: /* @__PURE__ */ r(g, { className: "h-3 w-3 text-[var(--color-text-on-action)]" }) }) }) }),
82
+ o
83
+ ]
84
+ }
85
+ ));
86
+ V.displayName = c.CheckboxItem.displayName;
87
+ const A = /* @__PURE__ */ n.forwardRef(({ className: t, children: o, ...e }, a) => /* @__PURE__ */ p(
88
+ c.RadioItem,
89
+ {
90
+ ref: a,
91
+ className: u(
92
+ "text-body-md relative flex [&]:cursor-pointer select-none items-center rounded-m h-[var(--size-m)] pl-10 pr-[var(--space-m)] outline-none transition-colors focus:bg-[var(--color-background-neutral-subtlest-hovered)] focus:text-[var(--color-text-primary)] hover:bg-[var(--color-background-neutral-subtlest-hovered)] hover:text-[var(--color-text-primary)] [&]:data-[disabled]:!cursor-not-allowed data-[disabled]:opacity-50 data-[disabled]:hover:bg-transparent data-[disabled]:focus:bg-transparent [&[data-disabled]_*]:!cursor-not-allowed [&[data-state=checked]_span]:border-[var(--color-border-brand-bold)] [&[data-state=checked]_span]:bg-[var(--color-background-blue-bold)] [&[data-state=checked]_span]:text-[var(--color-text-on-action)]",
93
+ t
94
+ ),
95
+ onSelect: (s) => s.preventDefault(),
96
+ ...e,
97
+ children: [
98
+ /* @__PURE__ */ r("span", { className: "absolute left-[var(--space-m)] flex h-4 w-4 items-center justify-center rounded-full border-2 border-[var(--color-interaction-border-input)] bg-[var(--color-surface-primary)]", children: /* @__PURE__ */ r(c.ItemIndicator, { className: "flex h-full w-full items-center justify-center rounded-full text-current", children: /* @__PURE__ */ r(w, { className: "h-[6px] w-[6px] fill-current" }) }) }),
99
+ o
100
+ ]
101
+ }
102
+ ));
103
+ A.displayName = c.RadioItem.displayName;
104
+ const H = /* @__PURE__ */ n.forwardRef(({ className: t, inset: o, ...e }, a) => /* @__PURE__ */ r(
105
+ c.Label,
106
+ {
107
+ ref: a,
108
+ className: u(
109
+ "[&]:text-body-medium-sm px-[var(--space-m)] py-[var(--space-s)] text-[var(--color-text-tertiary)]",
110
+ o && "pl-8",
111
+ t
112
+ ),
113
+ ...e
114
+ }
115
+ ));
116
+ H.displayName = c.Label.displayName;
117
+ const X = /* @__PURE__ */ n.forwardRef(({ className: t, ...o }, e) => /* @__PURE__ */ r(
118
+ c.Separator,
119
+ {
120
+ ref: e,
121
+ className: u("-mx-2 my-[var(--space-s)] h-px bg-[var(--color-border-primary-subtle)]", t),
122
+ ...o
123
+ }
124
+ ));
125
+ X.displayName = c.Separator.displayName;
126
+ const D = /* @__PURE__ */ n.forwardRef(({ className: t, inset: o, destructive: e, icon: a, autoClose: s = !0, onSelect: l, children: i, ...b }, d) => {
127
+ const m = /* @__PURE__ */ p(
128
+ "div",
129
+ {
130
+ ref: d,
131
+ className: u(
132
+ "[&]:text-body-md relative flex [&]:cursor-pointer select-none items-center rounded-m px-[var(--space-m)] h-[var(--size-l)] outline-none transition-colors focus:bg-[var(--color-background-neutral-subtlest-hovered)] focus:text-[var(--color-text-primary)] hover:bg-[var(--color-background-neutral-subtlest-hovered)] hover:text-[var(--color-text-primary)] active:bg-[var(--color-background-neutral-subtlest-hovered)]",
133
+ e && "text-[var(--color-text-error-bold)] hover:text-[var(--color-text-error-bold)] focus:text-[var(--color-text-error-bold)] hover:bg-[var(--color-background-error-subtle)] focus:bg-[var(--color-background-error-subtle)] [&>svg]:text-[var(--color-icon-error-bold)]",
134
+ o && "pl-8",
135
+ t
136
+ ),
137
+ onClick: (f) => l?.(f.nativeEvent),
138
+ role: "menuitem",
139
+ tabIndex: 0,
140
+ ...b,
141
+ children: [
142
+ a && /* @__PURE__ */ r(x, { name: a, size: "m", className: "mr-2" }),
143
+ i
144
+ ]
145
+ }
146
+ );
147
+ return s ? /* @__PURE__ */ r(y, { asChild: !0, children: m }) : m;
148
+ });
149
+ D.displayName = "MobileDropdownItem";
150
+ const C = /* @__PURE__ */ n.forwardRef(({ className: t, children: o, checked: e, autoClose: a = !1, onCheckedChange: s, ...l }, i) => {
151
+ const b = /* @__PURE__ */ p(
152
+ "div",
153
+ {
154
+ ref: i,
155
+ className: u(
156
+ "text-body-md relative flex [&]:cursor-pointer select-none items-center rounded-m h-[var(--size-l)] pl-10 pr-[var(--space-m)] outline-none transition-colors focus:bg-[var(--color-background-neutral-subtlest-hovered)] focus:text-[var(--color-text-primary)] hover:bg-[var(--color-background-neutral-subtlest-hovered)] hover:text-[var(--color-text-primary)] active:bg-[var(--color-background-neutral-subtlest-hovered)]",
157
+ t
158
+ ),
159
+ onClick: () => s?.(!e),
160
+ role: "menuitemcheckbox",
161
+ "aria-checked": e,
162
+ tabIndex: 0,
163
+ ...l,
164
+ children: [
165
+ /* @__PURE__ */ r("span", { className: "absolute left-[var(--space-m)] flex h-4 w-4 items-center justify-center rounded-s border border-[var(--color-interaction-border-input)] bg-[var(--color-surface-primary)]", children: e && /* @__PURE__ */ r("div", { className: "h-4 w-4 rounded-s border border-[var(--color-background-blue-bold)] bg-[var(--color-background-blue-bold)] flex items-center justify-center", children: /* @__PURE__ */ r(g, { className: "h-3 w-3 text-[var(--color-text-on-action)]" }) }) }),
166
+ o
167
+ ]
168
+ }
169
+ );
170
+ return a ? /* @__PURE__ */ r(y, { asChild: !0, children: b }) : b;
171
+ });
172
+ C.displayName = "MobileDropdownCheckboxItem";
173
+ const M = /* @__PURE__ */ n.forwardRef(({ className: t, children: o, value: e, checked: a, icon: s, autoClose: l = !0, onRadioSelect: i, ...b }, d) => {
174
+ const m = /* @__PURE__ */ p(
175
+ "div",
176
+ {
177
+ ref: d,
178
+ className: u(
179
+ "text-body-md relative flex [&]:cursor-pointer select-none items-center rounded-m h-[var(--size-l)] pl-10 pr-[var(--space-m)] outline-none transition-colors focus:bg-[var(--color-background-neutral-subtlest-hovered)] focus:text-[var(--color-text-primary)] hover:bg-[var(--color-background-neutral-subtlest-hovered)] hover:text-[var(--color-text-primary)] active:bg-[var(--color-background-neutral-subtlest-hovered)]",
180
+ t
181
+ ),
182
+ onClick: () => i?.(e),
183
+ role: "menuitemradio",
184
+ "aria-checked": a,
185
+ tabIndex: 0,
186
+ ...b,
187
+ children: [
188
+ /* @__PURE__ */ r("span", { className: u(
189
+ "absolute left-[var(--space-m)] flex h-4 w-4 items-center justify-center rounded-full border-2 border-[var(--color-interaction-border-input)] bg-[var(--color-surface-primary)]",
190
+ a && "border-[var(--color-border-brand-bold)] bg-[var(--color-background-blue-bold)] text-[var(--color-text-on-action)]"
191
+ ), children: a && /* @__PURE__ */ r(w, { className: "h-[6px] w-[6px] fill-current" }) }),
192
+ s && /* @__PURE__ */ r(x, { name: s, size: "m", className: "mr-2 ml-6" }),
193
+ o
194
+ ]
195
+ }
196
+ );
197
+ return l ? /* @__PURE__ */ r(y, { asChild: !0, children: m }) : m;
198
+ });
199
+ M.displayName = "MobileDropdownRadioItem";
200
+ const R = /* @__PURE__ */ n.forwardRef(({ className: t, inset: o, ...e }, a) => /* @__PURE__ */ r(
201
+ "div",
202
+ {
203
+ ref: a,
204
+ className: u(
205
+ "[&]:text-body-medium-sm px-[var(--space-m)] pt-[var(--space-m)] pb-[var(--space-s)] text-[var(--color-text-tertiary)]",
206
+ o && "pl-8",
207
+ t
208
+ ),
209
+ ...e
210
+ }
211
+ ));
212
+ R.displayName = "MobileDropdownLabel";
213
+ const I = /* @__PURE__ */ n.forwardRef(({ className: t, ...o }, e) => /* @__PURE__ */ r(
214
+ "div",
215
+ {
216
+ ref: e,
217
+ className: u("-mx-2 my-[var(--space-s)] h-px bg-[var(--color-border-primary-subtle)]", t),
218
+ role: "separator",
219
+ ...o
220
+ }
221
+ ));
222
+ I.displayName = "MobileDropdownSeparator";
223
+ const v = n.createContext({ isDesktop: !0 }), ie = ({ children: t }) => {
224
+ const o = j(), e = n.useMemo(() => ({ isDesktop: o }), [o]);
225
+ return o ? /* @__PURE__ */ r(v.Provider, { value: e, children: /* @__PURE__ */ r(W, { children: t }) }) : /* @__PURE__ */ r(v.Provider, { value: e, children: /* @__PURE__ */ r(K, { children: /* @__PURE__ */ r(_, { children: t }) }) });
226
+ }, q = /* @__PURE__ */ n.forwardRef(({ className: t, sideOffset: o = 4, children: e, ...a }, s) => {
227
+ const { isDesktop: l } = n.useContext(v);
228
+ return l ? /* @__PURE__ */ r(
229
+ k,
230
+ {
231
+ ref: s,
232
+ sideOffset: o,
233
+ className: t,
234
+ ...a,
235
+ children: e
236
+ }
237
+ ) : /* @__PURE__ */ p(
238
+ B,
239
+ {
240
+ ref: s,
241
+ className: u(
242
+ "p-0",
243
+ // Remove default padding since we handle spacing in MenuLevelContainer
244
+ t
245
+ ),
246
+ ...a,
247
+ children: [
248
+ /* @__PURE__ */ r(O, { children: /* @__PURE__ */ r("div", { className: "space-y-[var(--space-xs)] px-[var(--space-m)] pt-[var(--space-s)] pb-[var(--space-m)]", children: e }) }),
249
+ /* @__PURE__ */ r("div", { className: "h-[env(safe-area-inset-bottom)] pb-1" })
250
+ ]
251
+ }
252
+ );
253
+ });
254
+ q.displayName = "ResponsiveDropdownMenuContent";
255
+ const F = /* @__PURE__ */ n.forwardRef(({ asChild: t, children: o, ...e }, a) => {
256
+ const { isDesktop: s } = n.useContext(v);
257
+ if (s)
258
+ return /* @__PURE__ */ r($, { ref: a, asChild: t, ...e, children: o });
259
+ const l = t ? {} : {
260
+ style: {
261
+ touchAction: "manipulation",
262
+ WebkitTapHighlightColor: "transparent",
263
+ ...e.style
264
+ }
265
+ };
266
+ return /* @__PURE__ */ r(
267
+ P,
268
+ {
269
+ ref: a,
270
+ asChild: t,
271
+ ...e,
272
+ ...l,
273
+ children: o
274
+ }
275
+ );
276
+ });
277
+ F.displayName = "ResponsiveDropdownMenuTrigger";
278
+ const J = n.createContext({}), S = n.createContext({
279
+ navigationState: { levels: [], currentLevelIndex: 0, isTransitioning: !1 },
280
+ navigateToSubmenu: () => {
281
+ },
282
+ navigateBack: () => {
283
+ },
284
+ registerMenuLevel: () => {
285
+ },
286
+ isCurrentLevel: () => !1
287
+ }), L = n.createContext({
288
+ submenuContent: null,
289
+ submenuTitle: "",
290
+ setSubmenuContent: () => {
291
+ },
292
+ setSubmenuTitle: () => {
293
+ },
294
+ triggerNavigation: () => {
295
+ }
296
+ }), K = ({ children: t }) => {
297
+ const [o, e] = n.useState({
298
+ levels: [],
299
+ currentLevelIndex: 0,
300
+ isTransitioning: !1
301
+ }), a = n.useCallback((d, m) => {
302
+ e((f) => {
303
+ const T = {
304
+ id: `${m}-${Date.now()}`,
305
+ ...d
306
+ };
307
+ return {
308
+ levels: [...f.levels, T],
309
+ currentLevelIndex: f.levels.length,
310
+ isTransitioning: !0
311
+ };
312
+ }), setTimeout(() => {
313
+ e((f) => ({ ...f, isTransitioning: !1 }));
314
+ }, 300);
315
+ }, []), s = n.useCallback(() => {
316
+ e((d) => d.currentLevelIndex === 0 ? d : {
317
+ levels: d.levels.slice(0, -1),
318
+ currentLevelIndex: d.currentLevelIndex - 1,
319
+ isTransitioning: !0
320
+ }), setTimeout(() => {
321
+ e((d) => ({ ...d, isTransitioning: !1 }));
322
+ }, 300);
323
+ }, []), l = n.useCallback((d) => {
324
+ e((m) => ({
325
+ ...m,
326
+ levels: m.levels.some((f) => f.id === d.id) ? m.levels : [...m.levels, d]
327
+ }));
328
+ }, []), i = n.useCallback((d) => o.levels[o.currentLevelIndex]?.id === d, [o]), b = n.useMemo(() => ({
329
+ navigationState: o,
330
+ navigateToSubmenu: a,
331
+ navigateBack: s,
332
+ registerMenuLevel: l,
333
+ isCurrentLevel: i
334
+ }), [o, a, s, l, i]);
335
+ return /* @__PURE__ */ r(S.Provider, { value: b, children: t });
336
+ }, O = ({ children: t }) => {
337
+ const { navigationState: o, navigateBack: e } = n.useContext(S), { levels: a, currentLevelIndex: s, isTransitioning: l } = o, i = a[s];
338
+ return /* @__PURE__ */ p("div", { className: "relative overflow-hidden h-full", children: [
339
+ !(s === 0) && i && /* @__PURE__ */ p("div", { className: "flex items-center px-[var(--space-m)] pt-[var(--space-s)] pb-[var(--space-m)] border-b border-[var(--color-border-primary-subtle)]", children: [
340
+ /* @__PURE__ */ p(
341
+ "button",
342
+ {
343
+ onClick: e,
344
+ className: "flex items-center text-body-md text-[var(--color-text-secondary)] hover:text-[var(--color-text-primary)] transition-colors",
345
+ children: [
346
+ /* @__PURE__ */ r(z, { className: "h-4 w-4 mr-[var(--space-s)]" }),
347
+ "Back"
348
+ ]
349
+ }
350
+ ),
351
+ i.title && /* @__PURE__ */ r("h3", { className: "text-heading-sm text-[var(--color-text-primary)] ml-[var(--space-m)]", children: i.title })
352
+ ] }),
353
+ /* @__PURE__ */ r(
354
+ "div",
355
+ {
356
+ className: u(
357
+ "transition-transform duration-300 ease-in-out",
358
+ l && "transform"
359
+ ),
360
+ style: {
361
+ transform: `translateX(-${s * 100}%)`
362
+ },
363
+ children: /* @__PURE__ */ p("div", { className: "flex", children: [
364
+ /* @__PURE__ */ r(
365
+ "div",
366
+ {
367
+ className: "w-full flex-shrink-0",
368
+ style: { minWidth: "100%" },
369
+ children: t
370
+ }
371
+ ),
372
+ a.map((d, m) => m > 0 && /* @__PURE__ */ r(
373
+ "div",
374
+ {
375
+ className: "w-full flex-shrink-0",
376
+ style: { minWidth: "100%" },
377
+ children: d.content
378
+ },
379
+ d.id
380
+ ))
381
+ ] })
382
+ }
383
+ )
384
+ ] });
385
+ }, Q = /* @__PURE__ */ n.forwardRef(({ className: t, inset: o, destructive: e, icon: a, autoClose: s, onSelect: l, ...i }, b) => {
386
+ const { isDesktop: d } = n.useContext(v);
387
+ return d ? /* @__PURE__ */ r(
388
+ N,
389
+ {
390
+ ref: b,
391
+ className: t,
392
+ inset: o,
393
+ destructive: e,
394
+ icon: a,
395
+ onSelect: l,
396
+ ...i
397
+ }
398
+ ) : /* @__PURE__ */ r(
399
+ D,
400
+ {
401
+ className: t,
402
+ inset: o,
403
+ destructive: e,
404
+ icon: a,
405
+ autoClose: s,
406
+ onSelect: l,
407
+ ...i
408
+ }
409
+ );
410
+ });
411
+ Q.displayName = "ResponsiveDropdownMenuItem";
412
+ const U = /* @__PURE__ */ n.forwardRef(({ className: t, children: o, checked: e, autoClose: a, onCheckedChange: s, ...l }, i) => {
413
+ const { isDesktop: b } = n.useContext(v);
414
+ return b ? /* @__PURE__ */ p(
415
+ c.CheckboxItem,
416
+ {
417
+ ref: i,
418
+ className: u(
419
+ "text-body-md relative flex [&]:cursor-pointer select-none items-center rounded-m h-[var(--size-m)] pl-10 pr-[var(--space-m)] outline-none transition-colors focus:bg-[var(--color-background-neutral-subtlest-hovered)] focus:text-[var(--color-text-primary)] hover:bg-[var(--color-background-neutral-subtlest-hovered)] hover:text-[var(--color-text-primary)] [&]:data-[disabled]:!cursor-not-allowed data-[disabled]:opacity-50 data-[disabled]:hover:bg-transparent data-[disabled]:focus:bg-transparent [&[data-disabled]_*]:!cursor-not-allowed",
420
+ t
421
+ ),
422
+ checked: e,
423
+ onCheckedChange: s,
424
+ onSelect: (d) => d.preventDefault(),
425
+ ...l,
426
+ children: [
427
+ /* @__PURE__ */ r("span", { className: "absolute left-[var(--space-m)] flex h-4 w-4 items-center justify-center rounded-s border border-[var(--color-interaction-border-input)] bg-[var(--color-surface-primary)]", children: /* @__PURE__ */ r(c.ItemIndicator, { children: /* @__PURE__ */ r("div", { className: "h-4 w-4 rounded-s border border-[var(--color-background-blue-bold)] bg-[var(--color-background-blue-bold)] flex items-center justify-center", children: /* @__PURE__ */ r(g, { className: "h-3 w-3 text-[var(--color-text-on-action)]" }) }) }) }),
428
+ o
429
+ ]
430
+ }
431
+ ) : /* @__PURE__ */ r(
432
+ C,
433
+ {
434
+ className: t,
435
+ checked: e,
436
+ autoClose: a,
437
+ onCheckedChange: s,
438
+ ...l,
439
+ children: o
440
+ }
441
+ );
442
+ });
443
+ U.displayName = "ResponsiveDropdownMenuCheckboxItem";
444
+ const Y = /* @__PURE__ */ n.forwardRef(({ className: t, children: o, value: e, icon: a, autoClose: s, ...l }, i) => {
445
+ const { isDesktop: b } = n.useContext(v);
446
+ return b ? /* @__PURE__ */ p(
447
+ c.RadioItem,
448
+ {
449
+ ref: i,
450
+ className: u(
451
+ "text-body-md relative flex [&]:cursor-pointer select-none items-center rounded-m h-[var(--size-m)] pl-10 pr-[var(--space-m)] outline-none transition-colors focus:bg-[var(--color-background-neutral-subtlest-hovered)] focus:text-[var(--color-text-primary)] hover:bg-[var(--color-background-neutral-subtlest-hovered)] hover:text-[var(--color-text-primary)] [&]:data-[disabled]:!cursor-not-allowed data-[disabled]:opacity-50 data-[disabled]:hover:bg-transparent data-[disabled]:focus:bg-transparent [&[data-disabled]_*]:!cursor-not-allowed [&[data-state=checked]_span]:border-[var(--color-border-brand-bold)] [&[data-state=checked]_span]:bg-[var(--color-background-blue-bold)] [&[data-state=checked]_span]:text-[var(--color-text-on-action)]",
452
+ t
453
+ ),
454
+ value: e,
455
+ onSelect: (d) => d.preventDefault(),
456
+ ...l,
457
+ children: [
458
+ /* @__PURE__ */ r("span", { className: "absolute left-[var(--space-m)] flex h-4 w-4 items-center justify-center rounded-full border-2 border-[var(--color-interaction-border-input)] bg-[var(--color-surface-primary)]", children: /* @__PURE__ */ r(c.ItemIndicator, { className: "flex h-full w-full items-center justify-center rounded-full text-current", children: /* @__PURE__ */ r(w, { className: "h-[6px] w-[6px] fill-current" }) }) }),
459
+ a && /* @__PURE__ */ r(x, { name: a, size: "m", className: "mr-2 ml-6" }),
460
+ o
461
+ ]
462
+ }
463
+ ) : /* @__PURE__ */ r(J.Consumer, { children: ({ radioValue: d, onRadioChange: m }) => /* @__PURE__ */ r(
464
+ M,
465
+ {
466
+ className: t,
467
+ value: e,
468
+ checked: d === e,
469
+ icon: a,
470
+ autoClose: s,
471
+ onRadioSelect: m,
472
+ ...l,
473
+ children: o
474
+ }
475
+ ) });
476
+ });
477
+ Y.displayName = "ResponsiveDropdownMenuRadioItem";
478
+ const Z = /* @__PURE__ */ n.forwardRef(({ className: t, inset: o, ...e }, a) => {
479
+ const { isDesktop: s } = n.useContext(v);
480
+ return s ? /* @__PURE__ */ r(
481
+ c.Label,
482
+ {
483
+ ref: a,
484
+ className: u(
485
+ "[&]:text-body-medium-sm px-[var(--space-m)] py-[var(--space-s)] text-[var(--color-text-tertiary)]",
486
+ o && "pl-8",
487
+ t
488
+ ),
489
+ ...e
490
+ }
491
+ ) : /* @__PURE__ */ r(
492
+ R,
493
+ {
494
+ className: t,
495
+ inset: o,
496
+ ...e
497
+ }
498
+ );
499
+ });
500
+ Z.displayName = "ResponsiveDropdownMenuLabel";
501
+ const ee = /* @__PURE__ */ n.forwardRef(({ className: t, ...o }, e) => {
502
+ const { isDesktop: a } = n.useContext(v);
503
+ return a ? /* @__PURE__ */ r(
504
+ c.Separator,
505
+ {
506
+ ref: e,
507
+ className: u("-mx-2 my-[var(--space-s)] h-px bg-[var(--color-border-primary-subtle)]", t),
508
+ ...o
509
+ }
510
+ ) : /* @__PURE__ */ r(
511
+ I,
512
+ {
513
+ className: t,
514
+ ...o
515
+ }
516
+ );
517
+ });
518
+ ee.displayName = "ResponsiveDropdownMenuSeparator";
519
+ const re = /* @__PURE__ */ n.forwardRef(({ className: t, inset: o, icon: e, children: a, ...s }, l) => {
520
+ const { isDesktop: i } = n.useContext(v), { triggerNavigation: b } = n.useContext(L);
521
+ if (i)
522
+ return /* @__PURE__ */ p(
523
+ c.SubTrigger,
524
+ {
525
+ ref: l,
526
+ className: u(
527
+ "text-body-md flex [&]:cursor-pointer select-none items-center rounded-m px-[var(--space-m)] h-[var(--size-m)] outline-none focus:bg-[var(--color-background-neutral-subtlest-hovered)] hover:bg-[var(--color-background-neutral-subtlest-hovered)] data-[state=open]:bg-[var(--color-background-neutral-subtlest-hovered)]",
528
+ o && "pl-8",
529
+ t
530
+ ),
531
+ ...s,
532
+ children: [
533
+ e && /* @__PURE__ */ r(x, { name: e, size: "m", className: "mr-2" }),
534
+ a,
535
+ /* @__PURE__ */ r(h, { className: "ml-auto h-4 w-4" })
536
+ ]
537
+ }
538
+ );
539
+ const { onClick: d, ...m } = s;
540
+ return /* @__PURE__ */ p(
541
+ "button",
542
+ {
543
+ ref: l,
544
+ className: u(
545
+ "text-body-md relative flex w-full cursor-pointer select-none items-center rounded-m px-[var(--space-m)] h-[var(--size-l)] outline-none transition-colors focus:bg-[var(--color-background-neutral-subtlest-hovered)] focus:text-[var(--color-text-primary)] hover:bg-[var(--color-background-neutral-subtlest-hovered)] hover:text-[var(--color-text-primary)] active:bg-[var(--color-background-neutral-subtlest-hovered)]",
546
+ o && "pl-8",
547
+ t
548
+ ),
549
+ onClick: (f) => {
550
+ b(), d && d(f);
551
+ },
552
+ role: "button",
553
+ type: "button",
554
+ ...m,
555
+ children: [
556
+ e && /* @__PURE__ */ r(x, { name: e, size: "m", className: "mr-2" }),
557
+ a,
558
+ /* @__PURE__ */ r(h, { className: "ml-auto h-4 w-4" })
559
+ ]
560
+ }
561
+ );
562
+ });
563
+ re.displayName = "ResponsiveDropdownMenuSubTrigger";
564
+ const oe = /* @__PURE__ */ n.forwardRef(({ className: t, children: o, ...e }, a) => {
565
+ const { isDesktop: s } = n.useContext(v), { setSubmenuContent: l } = n.useContext(L);
566
+ return s ? /* @__PURE__ */ r(
567
+ c.SubContent,
568
+ {
569
+ ref: a,
570
+ className: u(
571
+ "z-50 min-w-[12rem] overflow-hidden rounded-l border border-[var(--color-border-primary-subtle)] bg-[var(--color-surface-primary)] p-[var(--space-xs)] text-[var(--color-text-primary)] shadow-lg data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",
572
+ t
573
+ ),
574
+ ...e,
575
+ children: o
576
+ }
577
+ ) : (n.useEffect(() => (l(/* @__PURE__ */ r("div", { className: "space-y-[var(--space-xs)] px-[var(--space-m)] pb-[var(--space-m)]", children: o })), () => l(null)), [o, l]), null);
578
+ });
579
+ oe.displayName = "ResponsiveDropdownMenuSubContent";
580
+ export {
581
+ ie as DropdownMenu,
582
+ U as DropdownMenuCheckboxItem,
583
+ q as DropdownMenuContent,
584
+ W as DropdownMenuDesktop,
585
+ V as DropdownMenuDesktopCheckboxItem,
586
+ k as DropdownMenuDesktopContent,
587
+ N as DropdownMenuDesktopItem,
588
+ H as DropdownMenuDesktopLabel,
589
+ A as DropdownMenuDesktopRadioItem,
590
+ X as DropdownMenuDesktopSeparator,
591
+ $ as DropdownMenuDesktopTrigger,
592
+ ce as DropdownMenuGroup,
593
+ Q as DropdownMenuItem,
594
+ Z as DropdownMenuLabel,
595
+ Y as DropdownMenuRadioItem,
596
+ ee as DropdownMenuSeparator,
597
+ oe as DropdownMenuSubContent,
598
+ re as DropdownMenuSubTrigger,
599
+ F as DropdownMenuTrigger
600
+ };