@tomny-dev/uzi 0.5.0 → 0.6.0-pr.60.171.1.16c745f

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 (279) hide show
  1. package/README.md +5 -2
  2. package/dist/components/card/Card.d.ts +7 -5
  3. package/dist/components/card/Card.d.ts.map +1 -1
  4. package/dist/components/page-container/PageContainer.d.ts +2 -1
  5. package/dist/components/page-container/PageContainer.d.ts.map +1 -1
  6. package/dist/components/surface/Surface.d.ts +16 -0
  7. package/dist/components/surface/Surface.d.ts.map +1 -0
  8. package/dist/components/toolbar/Toolbar.d.ts +13 -0
  9. package/dist/components/toolbar/Toolbar.d.ts.map +1 -0
  10. package/dist/index.cjs +36 -31
  11. package/dist/index.d.ts +4 -0
  12. package/dist/index.d.ts.map +1 -1
  13. package/dist/index.js +34 -32
  14. package/dist/index10.cjs.map +1 -1
  15. package/dist/index10.js +19 -15
  16. package/dist/index10.js.map +1 -1
  17. package/dist/index11.cjs +21 -18
  18. package/dist/index11.cjs.map +1 -1
  19. package/dist/index11.js +8 -15
  20. package/dist/index11.js.map +1 -1
  21. package/dist/index12.cjs +7 -14
  22. package/dist/index12.cjs.map +1 -1
  23. package/dist/index12.js +15 -37
  24. package/dist/index12.js.map +1 -1
  25. package/dist/index13.cjs +18 -52
  26. package/dist/index13.cjs.map +1 -1
  27. package/dist/index13.js +15 -77
  28. package/dist/index13.js.map +1 -1
  29. package/dist/index14.cjs +15 -80
  30. package/dist/index14.cjs.map +1 -1
  31. package/dist/index14.js +37 -13
  32. package/dist/index14.js.map +1 -1
  33. package/dist/index15.cjs +52 -18
  34. package/dist/index15.cjs.map +1 -1
  35. package/dist/index15.js +77 -9
  36. package/dist/index15.js.map +1 -1
  37. package/dist/index16.cjs +79 -8
  38. package/dist/index16.cjs.map +1 -1
  39. package/dist/index16.js +13 -41
  40. package/dist/index16.js.map +1 -1
  41. package/dist/index17.cjs +18 -60
  42. package/dist/index17.cjs.map +1 -1
  43. package/dist/index17.js +9 -428
  44. package/dist/index17.js.map +1 -1
  45. package/dist/index18.cjs +8 -430
  46. package/dist/index18.cjs.map +1 -1
  47. package/dist/index18.js +42 -4
  48. package/dist/index18.js.map +1 -1
  49. package/dist/index19.cjs +61 -5
  50. package/dist/index19.cjs.map +1 -1
  51. package/dist/index19.js +430 -13
  52. package/dist/index19.js.map +1 -1
  53. package/dist/index20.cjs +430 -12
  54. package/dist/index20.cjs.map +1 -1
  55. package/dist/index20.js +4 -4
  56. package/dist/index20.js.map +1 -1
  57. package/dist/index21.cjs +5 -5
  58. package/dist/index21.cjs.map +1 -1
  59. package/dist/index21.js +12 -9
  60. package/dist/index21.js.map +1 -1
  61. package/dist/index22.cjs +12 -9
  62. package/dist/index22.cjs.map +1 -1
  63. package/dist/index22.js +4 -4
  64. package/dist/index22.js.map +1 -1
  65. package/dist/index23.cjs +5 -5
  66. package/dist/index23.cjs.map +1 -1
  67. package/dist/index23.js +9 -12
  68. package/dist/index23.js.map +1 -1
  69. package/dist/index24.cjs +9 -12
  70. package/dist/index24.cjs.map +1 -1
  71. package/dist/index24.js +4 -38
  72. package/dist/index24.js.map +1 -1
  73. package/dist/index25.cjs +5 -55
  74. package/dist/index25.cjs.map +1 -1
  75. package/dist/index25.js +11 -116
  76. package/dist/index25.js.map +1 -1
  77. package/dist/index26.cjs +10 -116
  78. package/dist/index26.cjs.map +1 -1
  79. package/dist/index26.js +31 -19
  80. package/dist/index26.js.map +1 -1
  81. package/dist/index27.cjs +42 -24
  82. package/dist/index27.cjs.map +1 -1
  83. package/dist/index27.js +106 -93
  84. package/dist/index27.js.map +1 -1
  85. package/dist/index28.cjs +106 -93
  86. package/dist/index28.cjs.map +1 -1
  87. package/dist/index28.js +26 -23
  88. package/dist/index28.js.map +1 -1
  89. package/dist/index29.cjs +37 -25
  90. package/dist/index29.cjs.map +1 -1
  91. package/dist/index29.js +107 -26
  92. package/dist/index29.js.map +1 -1
  93. package/dist/index30.cjs +110 -37
  94. package/dist/index30.cjs.map +1 -1
  95. package/dist/index30.js +21 -113
  96. package/dist/index30.js.map +1 -1
  97. package/dist/index31.cjs +19 -125
  98. package/dist/index31.cjs.map +1 -1
  99. package/dist/index31.js +26 -17
  100. package/dist/index31.js.map +1 -1
  101. package/dist/index32.cjs +37 -20
  102. package/dist/index32.cjs.map +1 -1
  103. package/dist/index32.js +108 -104
  104. package/dist/index32.js.map +1 -1
  105. package/dist/index33.cjs +122 -103
  106. package/dist/index33.cjs.map +1 -1
  107. package/dist/index33.js +17 -4
  108. package/dist/index33.js.map +1 -1
  109. package/dist/index34.cjs +20 -5
  110. package/dist/index34.cjs.map +1 -1
  111. package/dist/index34.js +106 -58
  112. package/dist/index34.js.map +1 -1
  113. package/dist/index35.cjs +106 -57
  114. package/dist/index35.cjs.map +1 -1
  115. package/dist/index35.js +4 -22
  116. package/dist/index35.js.map +1 -1
  117. package/dist/index36.cjs +5 -31
  118. package/dist/index36.cjs.map +1 -1
  119. package/dist/index36.js +55 -44
  120. package/dist/index36.js.map +1 -1
  121. package/dist/index37.cjs +55 -44
  122. package/dist/index37.cjs.map +1 -1
  123. package/dist/index37.js +21 -31
  124. package/dist/index37.js.map +1 -1
  125. package/dist/index38.cjs +30 -45
  126. package/dist/index38.cjs.map +1 -1
  127. package/dist/index38.js +46 -141
  128. package/dist/index38.js.map +1 -1
  129. package/dist/index39.cjs +46 -141
  130. package/dist/index39.cjs.map +1 -1
  131. package/dist/index39.js +31 -41
  132. package/dist/index39.js.map +1 -1
  133. package/dist/index40.cjs +45 -60
  134. package/dist/index40.cjs.map +1 -1
  135. package/dist/index40.js +139 -163
  136. package/dist/index40.js.map +1 -1
  137. package/dist/index41.cjs +137 -161
  138. package/dist/index41.cjs.map +1 -1
  139. package/dist/index41.js +41 -12
  140. package/dist/index41.js.map +1 -1
  141. package/dist/index42.cjs +60 -14
  142. package/dist/index42.cjs.map +1 -1
  143. package/dist/index42.js +167 -15
  144. package/dist/index42.js.map +1 -1
  145. package/dist/index43.cjs +166 -14
  146. package/dist/index43.cjs.map +1 -1
  147. package/dist/index43.js +12 -15
  148. package/dist/index43.js.map +1 -1
  149. package/dist/index44.cjs +14 -21
  150. package/dist/index44.cjs.map +1 -1
  151. package/dist/index44.js +15 -28
  152. package/dist/index44.js.map +1 -1
  153. package/dist/index45.cjs +14 -27
  154. package/dist/index45.cjs.map +1 -1
  155. package/dist/index45.js +10 -8
  156. package/dist/index45.js.map +1 -1
  157. package/dist/index46.cjs +11 -8
  158. package/dist/index46.cjs.map +1 -1
  159. package/dist/index46.js +22 -15
  160. package/dist/index46.js.map +1 -1
  161. package/dist/index47.cjs +22 -15
  162. package/dist/index47.cjs.map +1 -1
  163. package/dist/index47.js +9 -13
  164. package/dist/index47.js.map +1 -1
  165. package/dist/index48.cjs +10 -16
  166. package/dist/index48.cjs.map +1 -1
  167. package/dist/index48.js +18 -25
  168. package/dist/index48.js.map +1 -1
  169. package/dist/index49.cjs +18 -25
  170. package/dist/index49.cjs.map +1 -1
  171. package/dist/index49.js +17 -14
  172. package/dist/index49.js.map +1 -1
  173. package/dist/index50.cjs +24 -17
  174. package/dist/index50.cjs.map +1 -1
  175. package/dist/index50.js +28 -28
  176. package/dist/index50.js.map +1 -1
  177. package/dist/index51.cjs +27 -28
  178. package/dist/index51.cjs.map +1 -1
  179. package/dist/index51.js +14 -17
  180. package/dist/index51.js.map +1 -1
  181. package/dist/index52.cjs +17 -22
  182. package/dist/index52.cjs.map +1 -1
  183. package/dist/index52.js +23 -23
  184. package/dist/index52.js.map +1 -1
  185. package/dist/index53.cjs +23 -23
  186. package/dist/index53.cjs.map +1 -1
  187. package/dist/index53.js +17 -10
  188. package/dist/index53.js.map +1 -1
  189. package/dist/index54.cjs +22 -11
  190. package/dist/index54.cjs.map +1 -1
  191. package/dist/index54.js +28 -14
  192. package/dist/index54.js.map +1 -1
  193. package/dist/index55.cjs +28 -13
  194. package/dist/index55.cjs.map +1 -1
  195. package/dist/index55.js +17 -11
  196. package/dist/index55.js.map +1 -1
  197. package/dist/index56.cjs +23 -13
  198. package/dist/index56.cjs.map +1 -1
  199. package/dist/index56.js +24 -16
  200. package/dist/index56.js.map +1 -1
  201. package/dist/index57.cjs +24 -15
  202. package/dist/index57.cjs.map +1 -1
  203. package/dist/index57.js +10 -9
  204. package/dist/index57.js.map +1 -1
  205. package/dist/index58.cjs +11 -12
  206. package/dist/index58.cjs.map +1 -1
  207. package/dist/index58.js +12 -87
  208. package/dist/index58.js.map +1 -1
  209. package/dist/index59.cjs +12 -89
  210. package/dist/index59.cjs.map +1 -1
  211. package/dist/index59.js +11 -21
  212. package/dist/index59.js.map +1 -1
  213. package/dist/index60.cjs +13 -30
  214. package/dist/index60.cjs.map +1 -1
  215. package/dist/index60.js +17 -43
  216. package/dist/index60.js.map +1 -1
  217. package/dist/index61.cjs +16 -44
  218. package/dist/index61.cjs.map +1 -1
  219. package/dist/index61.js +9 -57
  220. package/dist/index61.js.map +1 -1
  221. package/dist/index62.cjs +11 -83
  222. package/dist/index62.cjs.map +1 -1
  223. package/dist/index62.js +83 -426
  224. package/dist/index62.js.map +1 -1
  225. package/dist/index63.cjs +82 -427
  226. package/dist/index63.cjs.map +1 -1
  227. package/dist/index63.js +21 -59
  228. package/dist/index63.js.map +1 -1
  229. package/dist/index64.cjs +30 -87
  230. package/dist/index64.cjs.map +1 -1
  231. package/dist/index64.js +44 -240
  232. package/dist/index64.js.map +1 -1
  233. package/dist/index65.cjs +43 -239
  234. package/dist/index65.cjs.map +1 -1
  235. package/dist/index65.js +57 -43
  236. package/dist/index65.js.map +1 -1
  237. package/dist/index66.cjs +84 -63
  238. package/dist/index66.cjs.map +1 -1
  239. package/dist/index66.js +426 -73
  240. package/dist/index66.js.map +1 -1
  241. package/dist/index67.cjs +426 -71
  242. package/dist/index67.cjs.map +1 -1
  243. package/dist/index67.js +59 -21
  244. package/dist/index67.js.map +1 -1
  245. package/dist/index68.cjs +87 -30
  246. package/dist/index68.cjs.map +1 -1
  247. package/dist/index68.js +233 -88
  248. package/dist/index68.js.map +1 -1
  249. package/dist/index69.cjs +232 -89
  250. package/dist/index69.cjs.map +1 -1
  251. package/dist/index69.js +40 -16
  252. package/dist/index69.js.map +1 -1
  253. package/dist/index70.cjs +56 -20
  254. package/dist/index70.cjs.map +1 -1
  255. package/dist/index70.js +72 -145
  256. package/dist/index70.js.map +1 -1
  257. package/dist/index71.cjs +72 -145
  258. package/dist/index71.cjs.map +1 -1
  259. package/dist/index71.js +25 -0
  260. package/dist/index71.js.map +1 -0
  261. package/dist/index72.cjs +34 -0
  262. package/dist/index72.cjs.map +1 -0
  263. package/dist/index72.js +101 -0
  264. package/dist/index72.js.map +1 -0
  265. package/dist/index73.cjs +105 -0
  266. package/dist/index73.cjs.map +1 -0
  267. package/dist/index73.js +23 -0
  268. package/dist/index73.js.map +1 -0
  269. package/dist/index74.cjs +31 -0
  270. package/dist/index74.cjs.map +1 -0
  271. package/dist/index74.js +159 -0
  272. package/dist/index74.js.map +1 -0
  273. package/dist/index75.cjs +161 -0
  274. package/dist/index75.cjs.map +1 -0
  275. package/dist/index8.js.map +1 -1
  276. package/dist/index9.cjs.map +1 -1
  277. package/dist/index9.js.map +1 -1
  278. package/dist/style.css +216 -45
  279. package/package.json +2 -2
package/dist/index31.js CHANGED
@@ -1,20 +1,29 @@
1
- //#region src/theme/constants.ts
2
- var UZI_THEMES = [
3
- "light",
4
- "dark",
5
- "system"
6
- ];
7
- var UZI_ACCENTS = [
8
- "blue",
9
- "cyan",
10
- "violet",
11
- "emerald",
12
- "amber",
13
- "rose"
14
- ];
15
- var THEME_STORAGE_KEY = "uzi-theme";
16
- var ACCENT_STORAGE_KEY = "uzi-accent";
1
+ //#region src/components/dropdown-menu/dropdown-menu.module.css
2
+ var content = "uzi-dropdown-menu-module__content__n-ElH";
3
+ var menuFadeIn = "uzi-dropdown-menu-module__menuFadeIn__ITxMo";
4
+ var item = "uzi-dropdown-menu-module__item__tBNtW";
5
+ var itemDestructive = "uzi-dropdown-menu-module__itemDestructive__oWmKd";
6
+ var insetItem = "uzi-dropdown-menu-module__insetItem__g7ONJ";
7
+ var indicator = "uzi-dropdown-menu-module__indicator__5qwFh";
8
+ var indicatorIcon = "uzi-dropdown-menu-module__indicatorIcon__nhJMw";
9
+ var radioDot = "uzi-dropdown-menu-module__radioDot__GWUVT";
10
+ var label = "uzi-dropdown-menu-module__label__sFnNR";
11
+ var separator = "uzi-dropdown-menu-module__separator__PgUob";
12
+ var chevron = "uzi-dropdown-menu-module__chevron__kxfiF";
13
+ var dropdown_menu_module_default = {
14
+ content,
15
+ menuFadeIn,
16
+ item,
17
+ itemDestructive,
18
+ insetItem,
19
+ indicator,
20
+ indicatorIcon,
21
+ radioDot,
22
+ label,
23
+ separator,
24
+ chevron
25
+ };
17
26
  //#endregion
18
- export { ACCENT_STORAGE_KEY, THEME_STORAGE_KEY, UZI_ACCENTS, UZI_THEMES };
27
+ export { chevron, content, dropdown_menu_module_default as default, indicator, indicatorIcon, insetItem, item, itemDestructive, label, menuFadeIn, radioDot, separator };
19
28
 
20
29
  //# sourceMappingURL=index31.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index31.js","names":[],"sources":["../src/theme/constants.ts"],"sourcesContent":["export const UZI_THEMES = [\"light\", \"dark\", \"system\"] as const;\nexport const UZI_ACCENTS = [\"blue\", \"cyan\", \"violet\", \"emerald\", \"amber\", \"rose\"] as const;\n\nexport const THEME_STORAGE_KEY = \"uzi-theme\";\nexport const ACCENT_STORAGE_KEY = \"uzi-accent\";\n"],"mappings":";AAAA,IAAa,aAAa;CAAC;CAAS;CAAQ;AAAQ;AACpD,IAAa,cAAc;CAAC;CAAQ;CAAQ;CAAU;CAAW;CAAS;AAAM;AAEhF,IAAa,oBAAoB;AACjC,IAAa,qBAAqB"}
1
+ {"version":3,"file":"index31.js","names":[],"sources":["../src/components/dropdown-menu/dropdown-menu.module.css"],"sourcesContent":[".content {\n z-index: var(--uzi-popover-z-index, 1100);\n min-width: 8rem;\n max-height: var(--radix-dropdown-menu-content-available-height);\n overflow-x: hidden;\n overflow-y: auto;\n border: 1px solid var(--ts-menu-border, var(--border));\n border-radius: var(--uzi-menu-radius);\n background: var(--ts-menu-bg, var(--popover));\n color: var(--ts-menu-fg, var(--popover-foreground));\n padding: var(--uzi-menu-padding);\n box-shadow: var(--uzi-menu-shadow);\n transform-origin: var(--radix-dropdown-menu-content-transform-origin);\n animation: menuFadeIn 140ms ease;\n}\n\n.item {\n position: relative;\n display: flex;\n width: 100%;\n cursor: default;\n user-select: none;\n align-items: center;\n gap: var(--uzi-menu-item-gap);\n border-radius: var(--uzi-menu-item-radius);\n padding: var(--uzi-menu-item-padding-y) var(--uzi-menu-item-padding-x);\n font-size: 0.875rem;\n line-height: 1.25rem;\n outline: none;\n}\n\n.item[data-inset=\"true\"] {\n padding-left: 2rem;\n}\n\n.item[data-highlighted] {\n background: var(--ts-menu-hover-bg, var(--accent));\n color: var(--ts-menu-hover-fg, var(--accent-foreground));\n}\n\n.item[data-disabled] {\n pointer-events: none;\n opacity: 0.5;\n}\n\n.itemDestructive {\n color: var(--ts-menu-danger, var(--destructive));\n}\n\n.itemDestructive[data-highlighted] {\n background: color-mix(in srgb, var(--destructive) 15%, transparent);\n color: var(--ts-menu-danger-fg, var(--destructive));\n}\n\n.insetItem {\n padding-left: 2rem;\n}\n\n.indicator {\n position: absolute;\n left: 0.5rem;\n display: inline-flex;\n width: 1rem;\n height: 1rem;\n align-items: center;\n justify-content: center;\n color: currentColor;\n}\n\n.indicatorIcon {\n display: block;\n}\n\n.radioDot {\n display: block;\n width: 0.5rem;\n height: 0.5rem;\n border-radius: 999px;\n background: currentColor;\n}\n\n.label {\n padding: var(--uzi-menu-item-padding-y) var(--uzi-menu-item-padding-x);\n font-size: 0.875rem;\n font-weight: 600;\n line-height: 1.25rem;\n}\n\n.label[data-inset=\"true\"] {\n padding-left: 2rem;\n}\n\n.separator {\n height: 1px;\n margin: 0.25rem -0.25rem;\n background: var(--ts-menu-separator, var(--border));\n}\n\n.chevron {\n margin-left: auto;\n flex-shrink: 0;\n}\n\n@keyframes menuFadeIn {\n from {\n opacity: 0;\n transform: translateY(-4px) scale(0.98);\n }\n to {\n opacity: 1;\n transform: translateY(0) scale(1);\n }\n}\n"],"mappings":""}
package/dist/index32.cjs CHANGED
@@ -1,23 +1,40 @@
1
- //#region src/theme/constants.ts
2
- var UZI_THEMES = [
3
- "light",
4
- "dark",
5
- "system"
6
- ];
7
- var UZI_ACCENTS = [
8
- "blue",
9
- "cyan",
10
- "violet",
11
- "emerald",
12
- "amber",
13
- "rose"
14
- ];
15
- var THEME_STORAGE_KEY = "uzi-theme";
16
- var ACCENT_STORAGE_KEY = "uzi-accent";
1
+ //#region src/components/dropdown-menu/dropdown-menu.module.css
2
+ var content = "uzi-dropdown-menu-module__content__n-ElH";
3
+ var menuFadeIn = "uzi-dropdown-menu-module__menuFadeIn__ITxMo";
4
+ var item = "uzi-dropdown-menu-module__item__tBNtW";
5
+ var itemDestructive = "uzi-dropdown-menu-module__itemDestructive__oWmKd";
6
+ var insetItem = "uzi-dropdown-menu-module__insetItem__g7ONJ";
7
+ var indicator = "uzi-dropdown-menu-module__indicator__5qwFh";
8
+ var indicatorIcon = "uzi-dropdown-menu-module__indicatorIcon__nhJMw";
9
+ var radioDot = "uzi-dropdown-menu-module__radioDot__GWUVT";
10
+ var label = "uzi-dropdown-menu-module__label__sFnNR";
11
+ var separator = "uzi-dropdown-menu-module__separator__PgUob";
12
+ var chevron = "uzi-dropdown-menu-module__chevron__kxfiF";
13
+ var dropdown_menu_module_default = {
14
+ content,
15
+ menuFadeIn,
16
+ item,
17
+ itemDestructive,
18
+ insetItem,
19
+ indicator,
20
+ indicatorIcon,
21
+ radioDot,
22
+ label,
23
+ separator,
24
+ chevron
25
+ };
17
26
  //#endregion
18
- exports.ACCENT_STORAGE_KEY = ACCENT_STORAGE_KEY;
19
- exports.THEME_STORAGE_KEY = THEME_STORAGE_KEY;
20
- exports.UZI_ACCENTS = UZI_ACCENTS;
21
- exports.UZI_THEMES = UZI_THEMES;
27
+ exports.chevron = chevron;
28
+ exports.content = content;
29
+ exports.default = dropdown_menu_module_default;
30
+ exports.indicator = indicator;
31
+ exports.indicatorIcon = indicatorIcon;
32
+ exports.insetItem = insetItem;
33
+ exports.item = item;
34
+ exports.itemDestructive = itemDestructive;
35
+ exports.label = label;
36
+ exports.menuFadeIn = menuFadeIn;
37
+ exports.radioDot = radioDot;
38
+ exports.separator = separator;
22
39
 
23
40
  //# sourceMappingURL=index32.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index32.cjs","names":[],"sources":["../src/theme/constants.ts"],"sourcesContent":["export const UZI_THEMES = [\"light\", \"dark\", \"system\"] as const;\nexport const UZI_ACCENTS = [\"blue\", \"cyan\", \"violet\", \"emerald\", \"amber\", \"rose\"] as const;\n\nexport const THEME_STORAGE_KEY = \"uzi-theme\";\nexport const ACCENT_STORAGE_KEY = \"uzi-accent\";\n"],"mappings":";AAAA,IAAa,aAAa;CAAC;CAAS;CAAQ;AAAQ;AACpD,IAAa,cAAc;CAAC;CAAQ;CAAQ;CAAU;CAAW;CAAS;AAAM;AAEhF,IAAa,oBAAoB;AACjC,IAAa,qBAAqB"}
1
+ {"version":3,"file":"index32.cjs","names":[],"sources":["../src/components/dropdown-menu/dropdown-menu.module.css"],"sourcesContent":[".content {\n z-index: var(--uzi-popover-z-index, 1100);\n min-width: 8rem;\n max-height: var(--radix-dropdown-menu-content-available-height);\n overflow-x: hidden;\n overflow-y: auto;\n border: 1px solid var(--ts-menu-border, var(--border));\n border-radius: var(--uzi-menu-radius);\n background: var(--ts-menu-bg, var(--popover));\n color: var(--ts-menu-fg, var(--popover-foreground));\n padding: var(--uzi-menu-padding);\n box-shadow: var(--uzi-menu-shadow);\n transform-origin: var(--radix-dropdown-menu-content-transform-origin);\n animation: menuFadeIn 140ms ease;\n}\n\n.item {\n position: relative;\n display: flex;\n width: 100%;\n cursor: default;\n user-select: none;\n align-items: center;\n gap: var(--uzi-menu-item-gap);\n border-radius: var(--uzi-menu-item-radius);\n padding: var(--uzi-menu-item-padding-y) var(--uzi-menu-item-padding-x);\n font-size: 0.875rem;\n line-height: 1.25rem;\n outline: none;\n}\n\n.item[data-inset=\"true\"] {\n padding-left: 2rem;\n}\n\n.item[data-highlighted] {\n background: var(--ts-menu-hover-bg, var(--accent));\n color: var(--ts-menu-hover-fg, var(--accent-foreground));\n}\n\n.item[data-disabled] {\n pointer-events: none;\n opacity: 0.5;\n}\n\n.itemDestructive {\n color: var(--ts-menu-danger, var(--destructive));\n}\n\n.itemDestructive[data-highlighted] {\n background: color-mix(in srgb, var(--destructive) 15%, transparent);\n color: var(--ts-menu-danger-fg, var(--destructive));\n}\n\n.insetItem {\n padding-left: 2rem;\n}\n\n.indicator {\n position: absolute;\n left: 0.5rem;\n display: inline-flex;\n width: 1rem;\n height: 1rem;\n align-items: center;\n justify-content: center;\n color: currentColor;\n}\n\n.indicatorIcon {\n display: block;\n}\n\n.radioDot {\n display: block;\n width: 0.5rem;\n height: 0.5rem;\n border-radius: 999px;\n background: currentColor;\n}\n\n.label {\n padding: var(--uzi-menu-item-padding-y) var(--uzi-menu-item-padding-x);\n font-size: 0.875rem;\n font-weight: 600;\n line-height: 1.25rem;\n}\n\n.label[data-inset=\"true\"] {\n padding-left: 2rem;\n}\n\n.separator {\n height: 1px;\n margin: 0.25rem -0.25rem;\n background: var(--ts-menu-separator, var(--border));\n}\n\n.chevron {\n margin-left: auto;\n flex-shrink: 0;\n}\n\n@keyframes menuFadeIn {\n from {\n opacity: 0;\n transform: translateY(-4px) scale(0.98);\n }\n to {\n opacity: 1;\n transform: translateY(0) scale(1);\n }\n}\n"],"mappings":""}
package/dist/index32.js CHANGED
@@ -1,114 +1,118 @@
1
1
  "use client";
2
- import { ToastProvider } from "./index17.js";
3
- import { ACCENT_STORAGE_KEY as ACCENT_STORAGE_KEY$1, THEME_STORAGE_KEY as THEME_STORAGE_KEY$1, UZI_ACCENTS, UZI_THEMES } from "./index31.js";
4
- import { createContext, useCallback, useContext, useEffect, useMemo, useState } from "react";
5
- import { jsx } from "react/jsx-runtime";
6
- //#region src/theme/ThemeProvider.tsx
7
- var THEME_STORAGE_KEY = THEME_STORAGE_KEY$1;
8
- var ACCENT_STORAGE_KEY = ACCENT_STORAGE_KEY$1;
9
- var THEME_ATTRIBUTE = "data-uzi-theme";
10
- var ACCENT_ATTRIBUTE = "data-uzi-accent";
11
- var ThemeContext = createContext(void 0);
12
- function isTheme(value) {
13
- return UZI_THEMES.includes(value);
2
+ import { cx } from "./index3.js";
3
+ import dropdown_menu_module_default from "./index31.js";
4
+ import "react";
5
+ import { jsx, jsxs } from "react/jsx-runtime";
6
+ import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu";
7
+ //#region src/components/dropdown-menu/DropdownMenu.tsx
8
+ function DropdownMenu(props) {
9
+ return /* @__PURE__ */ jsx(DropdownMenuPrimitive.Root, { ...props });
14
10
  }
15
- function isAccent(value) {
16
- return UZI_ACCENTS.includes(value);
11
+ function DropdownMenuTrigger(props) {
12
+ return /* @__PURE__ */ jsx(DropdownMenuPrimitive.Trigger, { ...props });
17
13
  }
18
- function getSystemTheme() {
19
- if (typeof window === "undefined") return "light";
20
- return window.matchMedia("(prefers-color-scheme: dark)").matches ? "dark" : "light";
14
+ function DropdownMenuGroup(props) {
15
+ return /* @__PURE__ */ jsx(DropdownMenuPrimitive.Group, { ...props });
21
16
  }
22
- function ThemeProvider({ children, theme, defaultTheme = "system", accent, defaultAccent = "blue", onThemeChange, onAccentChange, storageKey = THEME_STORAGE_KEY, accentStorageKey = ACCENT_STORAGE_KEY, disableStorage = false, toastConfig }) {
23
- const [internalTheme, setInternalTheme] = useState(defaultTheme);
24
- const [internalAccent, setInternalAccent] = useState(defaultAccent);
25
- const [systemTheme, setSystemTheme] = useState("light");
26
- useEffect(() => {
27
- setSystemTheme(getSystemTheme());
28
- if (!disableStorage) {
29
- const storedTheme = window.localStorage.getItem(storageKey);
30
- if (isTheme(storedTheme)) setInternalTheme(storedTheme);
31
- const storedAccent = window.localStorage.getItem(accentStorageKey);
32
- if (isAccent(storedAccent)) setInternalAccent(storedAccent);
33
- }
34
- }, [
35
- disableStorage,
36
- storageKey,
37
- accentStorageKey
38
- ]);
39
- const isThemeControlled = theme !== void 0;
40
- const isAccentControlled = accent !== void 0;
41
- const currentTheme = isThemeControlled ? theme : internalTheme;
42
- const currentAccent = isAccentControlled ? accent : internalAccent;
43
- const resolvedTheme = currentTheme === "system" ? systemTheme : currentTheme;
44
- useEffect(() => {
45
- if (typeof window === "undefined") return;
46
- const mediaQuery = window.matchMedia("(prefers-color-scheme: dark)");
47
- const handleChange = () => setSystemTheme(mediaQuery.matches ? "dark" : "light");
48
- handleChange();
49
- mediaQuery.addEventListener("change", handleChange);
50
- return () => mediaQuery.removeEventListener("change", handleChange);
51
- }, []);
52
- useEffect(() => {
53
- if (typeof document === "undefined") return;
54
- const root = document.documentElement;
55
- root.setAttribute(THEME_ATTRIBUTE, resolvedTheme);
56
- root.setAttribute(ACCENT_ATTRIBUTE, currentAccent);
57
- root.style.colorScheme = resolvedTheme;
58
- root.classList.toggle("dark", resolvedTheme === "dark");
59
- }, [currentAccent, resolvedTheme]);
60
- const setTheme = useCallback((nextTheme) => {
61
- if (!isThemeControlled) setInternalTheme(nextTheme);
62
- if (!disableStorage && typeof window !== "undefined") window.localStorage.setItem(storageKey, nextTheme);
63
- onThemeChange?.(nextTheme);
64
- }, [
65
- disableStorage,
66
- isThemeControlled,
67
- onThemeChange,
68
- storageKey
69
- ]);
70
- const setAccent = useCallback((nextAccent) => {
71
- if (!isAccentControlled) setInternalAccent(nextAccent);
72
- if (!disableStorage && typeof window !== "undefined") window.localStorage.setItem(accentStorageKey, nextAccent);
73
- onAccentChange?.(nextAccent);
74
- }, [
75
- accentStorageKey,
76
- disableStorage,
77
- isAccentControlled,
78
- onAccentChange
79
- ]);
80
- const toggleTheme = useCallback(() => {
81
- setTheme(resolvedTheme === "dark" ? "light" : "dark");
82
- }, [resolvedTheme, setTheme]);
83
- const value = useMemo(() => ({
84
- theme: currentTheme,
85
- resolvedTheme,
86
- accent: currentAccent,
87
- setTheme,
88
- setAccent,
89
- toggleTheme
90
- }), [
91
- currentAccent,
92
- currentTheme,
93
- resolvedTheme,
94
- setAccent,
95
- setTheme,
96
- toggleTheme
97
- ]);
98
- return /* @__PURE__ */ jsx(ThemeContext.Provider, {
99
- value,
100
- children: /* @__PURE__ */ jsx(ToastProvider, {
101
- config: toastConfig,
102
- children
103
- })
17
+ function DropdownMenuPortal(props) {
18
+ return /* @__PURE__ */ jsx(DropdownMenuPrimitive.Portal, { ...props });
19
+ }
20
+ function DropdownMenuSub(props) {
21
+ return /* @__PURE__ */ jsx(DropdownMenuPrimitive.Sub, { ...props });
22
+ }
23
+ function DropdownMenuRadioGroup(props) {
24
+ return /* @__PURE__ */ jsx(DropdownMenuPrimitive.RadioGroup, { ...props });
25
+ }
26
+ function DropdownMenuContent({ className, sideOffset = 4, ...props }) {
27
+ return /* @__PURE__ */ jsx(DropdownMenuPrimitive.Portal, { children: /* @__PURE__ */ jsx(DropdownMenuPrimitive.Content, {
28
+ sideOffset,
29
+ className: cx(dropdown_menu_module_default.content, className),
30
+ ...props
31
+ }) });
32
+ }
33
+ function DropdownMenuItem({ className, inset, variant = "default", ...props }) {
34
+ return /* @__PURE__ */ jsx(DropdownMenuPrimitive.Item, {
35
+ "data-inset": inset ? "true" : void 0,
36
+ className: cx(dropdown_menu_module_default.item, variant === "destructive" && dropdown_menu_module_default.itemDestructive, className),
37
+ ...props
38
+ });
39
+ }
40
+ function DropdownMenuCheckboxItem({ className, children, ...props }) {
41
+ return /* @__PURE__ */ jsxs(DropdownMenuPrimitive.CheckboxItem, {
42
+ className: cx(dropdown_menu_module_default.item, dropdown_menu_module_default.insetItem, className),
43
+ ...props,
44
+ children: [/* @__PURE__ */ jsx("span", {
45
+ className: dropdown_menu_module_default.indicator,
46
+ children: /* @__PURE__ */ jsx(DropdownMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ jsx("svg", {
47
+ viewBox: "0 0 16 16",
48
+ width: "16",
49
+ height: "16",
50
+ "aria-hidden": "true",
51
+ className: dropdown_menu_module_default.indicatorIcon,
52
+ children: /* @__PURE__ */ jsx("path", {
53
+ d: "M3.5 8.5 6.5 11.5 12.5 4.5",
54
+ fill: "none",
55
+ stroke: "currentColor",
56
+ strokeWidth: "1.8",
57
+ strokeLinecap: "round",
58
+ strokeLinejoin: "round"
59
+ })
60
+ }) })
61
+ }), children]
62
+ });
63
+ }
64
+ function DropdownMenuRadioItem({ className, children, ...props }) {
65
+ return /* @__PURE__ */ jsxs(DropdownMenuPrimitive.RadioItem, {
66
+ className: cx(dropdown_menu_module_default.item, dropdown_menu_module_default.insetItem, className),
67
+ ...props,
68
+ children: [/* @__PURE__ */ jsx("span", {
69
+ className: dropdown_menu_module_default.indicator,
70
+ children: /* @__PURE__ */ jsx(DropdownMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ jsx("span", { className: dropdown_menu_module_default.radioDot }) })
71
+ }), children]
104
72
  });
105
73
  }
106
- function useTheme() {
107
- const context = useContext(ThemeContext);
108
- if (!context) throw new Error("useTheme must be used within a ThemeProvider");
109
- return context;
74
+ function DropdownMenuLabel({ className, inset, ...props }) {
75
+ return /* @__PURE__ */ jsx(DropdownMenuPrimitive.Label, {
76
+ "data-inset": inset ? "true" : void 0,
77
+ className: cx(dropdown_menu_module_default.label, className),
78
+ ...props
79
+ });
80
+ }
81
+ function DropdownMenuSeparator({ className, ...props }) {
82
+ return /* @__PURE__ */ jsx(DropdownMenuPrimitive.Separator, {
83
+ className: cx(dropdown_menu_module_default.separator, className),
84
+ ...props
85
+ });
86
+ }
87
+ function DropdownMenuSubTrigger({ className, inset, children, ...props }) {
88
+ return /* @__PURE__ */ jsxs(DropdownMenuPrimitive.SubTrigger, {
89
+ "data-inset": inset ? "true" : void 0,
90
+ className: cx(dropdown_menu_module_default.item, className),
91
+ ...props,
92
+ children: [children, /* @__PURE__ */ jsx("svg", {
93
+ viewBox: "0 0 16 16",
94
+ width: "16",
95
+ height: "16",
96
+ "aria-hidden": "true",
97
+ className: dropdown_menu_module_default.chevron,
98
+ children: /* @__PURE__ */ jsx("path", {
99
+ d: "M6 3.5 10.5 8 6 12.5",
100
+ fill: "none",
101
+ stroke: "currentColor",
102
+ strokeWidth: "1.6",
103
+ strokeLinecap: "round",
104
+ strokeLinejoin: "round"
105
+ })
106
+ })]
107
+ });
108
+ }
109
+ function DropdownMenuSubContent({ className, ...props }) {
110
+ return /* @__PURE__ */ jsx(DropdownMenuPrimitive.SubContent, {
111
+ className: cx(dropdown_menu_module_default.content, className),
112
+ ...props
113
+ });
110
114
  }
111
115
  //#endregion
112
- export { ThemeProvider, useTheme };
116
+ export { DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger };
113
117
 
114
118
  //# sourceMappingURL=index32.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index32.js","names":[],"sources":["../src/theme/ThemeProvider.tsx"],"sourcesContent":["\"use client\";\n\nimport {\n createContext,\n useCallback,\n useContext,\n useEffect,\n useMemo,\n useState,\n type ReactNode,\n} from \"react\";\nimport { UZI_THEMES, UZI_ACCENTS, THEME_STORAGE_KEY as DEFAULT_THEME_KEY, ACCENT_STORAGE_KEY as DEFAULT_ACCENT_KEY } from \"./constants\";\nimport { ToastProvider } from \"../components/toast/ToastContext\";\nimport type { ToastConfig } from \"../components/toast/types\";\n\nexport type UziTheme = typeof UZI_THEMES[number];\nexport type UziResolvedTheme = \"light\" | \"dark\";\nexport type UziAccent = typeof UZI_ACCENTS[number];\n\ntype ThemeContextValue = {\n theme: UziTheme;\n resolvedTheme: UziResolvedTheme;\n accent: UziAccent;\n setTheme: (theme: UziTheme) => void;\n setAccent: (accent: UziAccent) => void;\n toggleTheme: () => void;\n};\n\ntype ThemeProviderProps = {\n children: ReactNode;\n theme?: UziTheme;\n defaultTheme?: UziTheme;\n accent?: UziAccent;\n defaultAccent?: UziAccent;\n onThemeChange?: (theme: UziTheme) => void;\n onAccentChange?: (accent: UziAccent) => void;\n storageKey?: string;\n accentStorageKey?: string;\n disableStorage?: boolean;\n toastConfig?: ToastConfig;\n};\n\nconst THEME_STORAGE_KEY = DEFAULT_THEME_KEY;\nconst ACCENT_STORAGE_KEY = DEFAULT_ACCENT_KEY;\nconst THEME_ATTRIBUTE = \"data-uzi-theme\";\nconst ACCENT_ATTRIBUTE = \"data-uzi-accent\";\n\nconst ThemeContext = createContext<ThemeContextValue | undefined>(undefined);\n\nfunction isTheme(value: string | null): value is UziTheme {\n return UZI_THEMES.includes(value as UziTheme);\n}\n\nfunction isAccent(value: string | null): value is UziAccent {\n return UZI_ACCENTS.includes(value as UziAccent);\n}\n\nfunction getSystemTheme(): UziResolvedTheme {\n if (typeof window === \"undefined\") return \"light\";\n return window.matchMedia(\"(prefers-color-scheme: dark)\").matches ? \"dark\" : \"light\";\n}\n\nexport function ThemeProvider({\n children,\n theme,\n defaultTheme = \"system\",\n accent,\n defaultAccent = \"blue\",\n onThemeChange,\n onAccentChange,\n storageKey = THEME_STORAGE_KEY,\n accentStorageKey = ACCENT_STORAGE_KEY,\n disableStorage = false,\n toastConfig,\n}: ThemeProviderProps) {\n const [internalTheme, setInternalTheme] = useState<UziTheme>(defaultTheme);\n const [internalAccent, setInternalAccent] = useState<UziAccent>(defaultAccent);\n const [systemTheme, setSystemTheme] = useState<UziResolvedTheme>(\"light\");\n\n useEffect(() => {\n setSystemTheme(getSystemTheme());\n if (!disableStorage) {\n const storedTheme = window.localStorage.getItem(storageKey);\n if (isTheme(storedTheme)) setInternalTheme(storedTheme);\n const storedAccent = window.localStorage.getItem(accentStorageKey);\n if (isAccent(storedAccent)) setInternalAccent(storedAccent);\n }\n }, [disableStorage, storageKey, accentStorageKey]);\n\n const isThemeControlled = theme !== undefined;\n const isAccentControlled = accent !== undefined;\n\n const currentTheme = isThemeControlled ? theme : internalTheme;\n const currentAccent = isAccentControlled ? accent : internalAccent;\n const resolvedTheme = currentTheme === \"system\" ? systemTheme : currentTheme;\n\n useEffect(() => {\n if (typeof window === \"undefined\") return;\n\n const mediaQuery = window.matchMedia(\"(prefers-color-scheme: dark)\");\n const handleChange = () => setSystemTheme(mediaQuery.matches ? \"dark\" : \"light\");\n\n handleChange();\n mediaQuery.addEventListener(\"change\", handleChange);\n return () => mediaQuery.removeEventListener(\"change\", handleChange);\n }, []);\n\n useEffect(() => {\n if (typeof document === \"undefined\") return;\n const root = document.documentElement;\n root.setAttribute(THEME_ATTRIBUTE, resolvedTheme);\n root.setAttribute(ACCENT_ATTRIBUTE, currentAccent);\n root.style.colorScheme = resolvedTheme;\n root.classList.toggle(\"dark\", resolvedTheme === \"dark\");\n }, [currentAccent, resolvedTheme]);\n\n const setTheme = useCallback(\n (nextTheme: UziTheme) => {\n if (!isThemeControlled) setInternalTheme(nextTheme);\n if (!disableStorage && typeof window !== \"undefined\") {\n window.localStorage.setItem(storageKey, nextTheme);\n }\n onThemeChange?.(nextTheme);\n },\n [disableStorage, isThemeControlled, onThemeChange, storageKey],\n );\n\n const setAccent = useCallback(\n (nextAccent: UziAccent) => {\n if (!isAccentControlled) setInternalAccent(nextAccent);\n if (!disableStorage && typeof window !== \"undefined\") {\n window.localStorage.setItem(accentStorageKey, nextAccent);\n }\n onAccentChange?.(nextAccent);\n },\n [accentStorageKey, disableStorage, isAccentControlled, onAccentChange],\n );\n\n const toggleTheme = useCallback(() => {\n setTheme(resolvedTheme === \"dark\" ? \"light\" : \"dark\");\n }, [resolvedTheme, setTheme]);\n\n const value = useMemo<ThemeContextValue>(\n () => ({\n theme: currentTheme,\n resolvedTheme,\n accent: currentAccent,\n setTheme,\n setAccent,\n toggleTheme,\n }),\n [currentAccent, currentTheme, resolvedTheme, setAccent, setTheme, toggleTheme],\n );\n\n return (\n <ThemeContext.Provider value={value}>\n <ToastProvider config={toastConfig}>{children}</ToastProvider>\n </ThemeContext.Provider>\n );\n}\n\nexport function useTheme() {\n const context = useContext(ThemeContext);\n if (!context) throw new Error(\"useTheme must be used within a ThemeProvider\");\n return context;\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"index32.js","names":[],"sources":["../src/components/dropdown-menu/DropdownMenu.tsx"],"sourcesContent":["\"use client\";\n\nimport * as React from \"react\";\nimport * as DropdownMenuPrimitive from \"@radix-ui/react-dropdown-menu\";\nimport { cx } from \"../../utils/cx\";\nimport styles from \"./dropdown-menu.module.css\";\n\nexport function DropdownMenu(\n props: React.ComponentProps<typeof DropdownMenuPrimitive.Root>,\n) {\n return <DropdownMenuPrimitive.Root {...props} />;\n}\n\nexport function DropdownMenuTrigger(\n props: React.ComponentProps<typeof DropdownMenuPrimitive.Trigger>,\n) {\n return <DropdownMenuPrimitive.Trigger {...props} />;\n}\n\nexport function DropdownMenuGroup(\n props: React.ComponentProps<typeof DropdownMenuPrimitive.Group>,\n) {\n return <DropdownMenuPrimitive.Group {...props} />;\n}\n\nexport function DropdownMenuPortal(\n props: React.ComponentProps<typeof DropdownMenuPrimitive.Portal>,\n) {\n return <DropdownMenuPrimitive.Portal {...props} />;\n}\n\nexport function DropdownMenuSub(\n props: React.ComponentProps<typeof DropdownMenuPrimitive.Sub>,\n) {\n return <DropdownMenuPrimitive.Sub {...props} />;\n}\n\nexport function DropdownMenuRadioGroup(\n props: React.ComponentProps<typeof DropdownMenuPrimitive.RadioGroup>,\n) {\n return <DropdownMenuPrimitive.RadioGroup {...props} />;\n}\n\nexport function DropdownMenuContent({\n className,\n sideOffset = 4,\n ...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.Content>) {\n return (\n <DropdownMenuPrimitive.Portal>\n <DropdownMenuPrimitive.Content\n sideOffset={sideOffset}\n className={cx(styles.content, className)}\n {...props}\n />\n </DropdownMenuPrimitive.Portal>\n );\n}\n\nexport function DropdownMenuItem({\n className,\n inset,\n variant = \"default\",\n ...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.Item> & {\n inset?: boolean;\n variant?: \"default\" | \"destructive\";\n}) {\n return (\n <DropdownMenuPrimitive.Item\n data-inset={inset ? \"true\" : undefined}\n className={cx(\n styles.item,\n variant === \"destructive\" && styles.itemDestructive,\n className,\n )}\n {...props}\n />\n );\n}\n\nexport function DropdownMenuCheckboxItem({\n className,\n children,\n ...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.CheckboxItem>) {\n return (\n <DropdownMenuPrimitive.CheckboxItem\n className={cx(\n styles.item,\n styles.insetItem,\n className,\n )}\n {...props}\n >\n <span className={styles.indicator}>\n <DropdownMenuPrimitive.ItemIndicator>\n <svg\n viewBox=\"0 0 16 16\"\n width=\"16\"\n height=\"16\"\n aria-hidden=\"true\"\n className={styles.indicatorIcon}\n >\n <path\n d=\"M3.5 8.5 6.5 11.5 12.5 4.5\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"1.8\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n </DropdownMenuPrimitive.ItemIndicator>\n </span>\n {children}\n </DropdownMenuPrimitive.CheckboxItem>\n );\n}\n\nexport function DropdownMenuRadioItem({\n className,\n children,\n ...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.RadioItem>) {\n return (\n <DropdownMenuPrimitive.RadioItem\n className={cx(\n styles.item,\n styles.insetItem,\n className,\n )}\n {...props}\n >\n <span className={styles.indicator}>\n <DropdownMenuPrimitive.ItemIndicator>\n <span className={styles.radioDot} />\n </DropdownMenuPrimitive.ItemIndicator>\n </span>\n {children}\n </DropdownMenuPrimitive.RadioItem>\n );\n}\n\nexport function DropdownMenuLabel({\n className,\n inset,\n ...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.Label> & {\n inset?: boolean;\n}) {\n return (\n <DropdownMenuPrimitive.Label\n data-inset={inset ? \"true\" : undefined}\n className={cx(styles.label, className)}\n {...props}\n />\n );\n}\n\nexport function DropdownMenuSeparator({\n className,\n ...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.Separator>) {\n return (\n <DropdownMenuPrimitive.Separator\n className={cx(styles.separator, className)}\n {...props}\n />\n );\n}\n\nexport function DropdownMenuSubTrigger({\n className,\n inset,\n children,\n ...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.SubTrigger> & {\n inset?: boolean;\n}) {\n return (\n <DropdownMenuPrimitive.SubTrigger\n data-inset={inset ? \"true\" : undefined}\n className={cx(styles.item, className)}\n {...props}\n >\n {children}\n <svg\n viewBox=\"0 0 16 16\"\n width=\"16\"\n height=\"16\"\n aria-hidden=\"true\"\n className={styles.chevron}\n >\n <path\n d=\"M6 3.5 10.5 8 6 12.5\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"1.6\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n </DropdownMenuPrimitive.SubTrigger>\n );\n}\n\nexport function DropdownMenuSubContent({\n className,\n ...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.SubContent>) {\n return (\n <DropdownMenuPrimitive.SubContent\n className={cx(styles.content, className)}\n {...props}\n />\n );\n}\n"],"mappings":"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"}