@tomny-dev/uzi 0.2.5 → 0.2.6

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 (182) hide show
  1. package/dist/index.cjs +65 -1925
  2. package/dist/index.js +24 -1857
  3. package/dist/index10.cjs +26 -0
  4. package/dist/index10.cjs.map +1 -0
  5. package/dist/index10.js +19 -0
  6. package/dist/index10.js.map +1 -0
  7. package/dist/index11.cjs +22 -0
  8. package/dist/index11.cjs.map +1 -0
  9. package/dist/index11.js +22 -0
  10. package/dist/index11.js.map +1 -0
  11. package/dist/index12.cjs +22 -0
  12. package/dist/index12.cjs.map +1 -0
  13. package/dist/index12.js +41 -0
  14. package/dist/index12.js.map +1 -0
  15. package/dist/index13.cjs +56 -0
  16. package/dist/index13.cjs.map +1 -0
  17. package/dist/index13.js +84 -0
  18. package/dist/index13.js.map +1 -0
  19. package/dist/index14.cjs +87 -0
  20. package/dist/index14.cjs.map +1 -0
  21. package/dist/index14.js +17 -0
  22. package/dist/index14.js.map +1 -0
  23. package/dist/index15.cjs +22 -0
  24. package/dist/index15.cjs.map +1 -0
  25. package/dist/index15.js +16 -0
  26. package/dist/index15.js.map +1 -0
  27. package/dist/index16.cjs +16 -0
  28. package/dist/index16.cjs.map +1 -0
  29. package/dist/index16.js +45 -0
  30. package/dist/index16.js.map +1 -0
  31. package/dist/index17.cjs +64 -0
  32. package/dist/index17.cjs.map +1 -0
  33. package/dist/index17.js +435 -0
  34. package/dist/index17.js.map +1 -0
  35. package/dist/index18.cjs +438 -0
  36. package/dist/index18.cjs.map +1 -0
  37. package/dist/index18.js +7 -0
  38. package/dist/index18.js.map +1 -0
  39. package/dist/index19.cjs +8 -0
  40. package/dist/index19.cjs.map +1 -0
  41. package/dist/index19.js +18 -0
  42. package/dist/index19.js.map +1 -0
  43. package/dist/index2.cjs +23 -0
  44. package/dist/index20.cjs +20 -0
  45. package/dist/index20.cjs.map +1 -0
  46. package/dist/index20.js +7 -0
  47. package/dist/index20.js.map +1 -0
  48. package/dist/index21.cjs +8 -0
  49. package/dist/index21.cjs.map +1 -0
  50. package/dist/index21.js +15 -0
  51. package/dist/index21.js.map +1 -0
  52. package/dist/index22.cjs +17 -0
  53. package/dist/index22.cjs.map +1 -0
  54. package/dist/index22.js +7 -0
  55. package/dist/index22.js.map +1 -0
  56. package/dist/index23.cjs +8 -0
  57. package/dist/index23.cjs.map +1 -0
  58. package/dist/index23.js +18 -0
  59. package/dist/index23.js.map +1 -0
  60. package/dist/index24.cjs +20 -0
  61. package/dist/index24.cjs.map +1 -0
  62. package/dist/index24.js +41 -0
  63. package/dist/index24.js.map +1 -0
  64. package/dist/index25.cjs +58 -0
  65. package/dist/index25.cjs.map +1 -0
  66. package/dist/index25.js +123 -0
  67. package/dist/index25.js.map +1 -0
  68. package/dist/index26.cjs +126 -0
  69. package/dist/index26.cjs.map +1 -0
  70. package/dist/index26.js +29 -0
  71. package/dist/index26.js.map +1 -0
  72. package/dist/index27.cjs +40 -0
  73. package/dist/index27.cjs.map +1 -0
  74. package/dist/index27.js +110 -0
  75. package/dist/index27.js.map +1 -0
  76. package/dist/index28.cjs +113 -0
  77. package/dist/index28.cjs.map +1 -0
  78. package/dist/index28.js +26 -0
  79. package/dist/index28.js.map +1 -0
  80. package/dist/index29.cjs +28 -0
  81. package/dist/index29.cjs.map +1 -0
  82. package/dist/index29.js +29 -0
  83. package/dist/index29.js.map +1 -0
  84. package/dist/index3.js +8 -0
  85. package/dist/index3.js.map +1 -0
  86. package/dist/index30.cjs +40 -0
  87. package/dist/index30.cjs.map +1 -0
  88. package/dist/index30.js +118 -0
  89. package/dist/index30.js.map +1 -0
  90. package/dist/index31.cjs +134 -0
  91. package/dist/index31.cjs.map +1 -0
  92. package/dist/index31.js +20 -0
  93. package/dist/index31.js.map +1 -0
  94. package/dist/index32.cjs +23 -0
  95. package/dist/index32.cjs.map +1 -0
  96. package/dist/index32.js +114 -0
  97. package/dist/index32.js.map +1 -0
  98. package/dist/index33.cjs +115 -0
  99. package/dist/index33.cjs.map +1 -0
  100. package/dist/index33.js +7 -0
  101. package/dist/index33.js.map +1 -0
  102. package/dist/index34.cjs +8 -0
  103. package/dist/index34.cjs.map +1 -0
  104. package/dist/index34.js +66 -0
  105. package/dist/index34.js.map +1 -0
  106. package/dist/index35.cjs +66 -0
  107. package/dist/index35.cjs.map +1 -0
  108. package/dist/index35.js +25 -0
  109. package/dist/index35.js.map +1 -0
  110. package/dist/index36.cjs +34 -0
  111. package/dist/index36.cjs.map +1 -0
  112. package/dist/index36.js +55 -0
  113. package/dist/index36.js.map +1 -0
  114. package/dist/index37.cjs +55 -0
  115. package/dist/index37.cjs.map +1 -0
  116. package/dist/index37.js +35 -0
  117. package/dist/index37.js.map +1 -0
  118. package/dist/index38.cjs +49 -0
  119. package/dist/index38.cjs.map +1 -0
  120. package/dist/index38.js +150 -0
  121. package/dist/index38.js.map +1 -0
  122. package/dist/index39.cjs +150 -0
  123. package/dist/index39.cjs.map +1 -0
  124. package/dist/index39.js +43 -0
  125. package/dist/index39.js.map +1 -0
  126. package/dist/index4.cjs +8 -0
  127. package/dist/index4.cjs.map +1 -0
  128. package/dist/index4.js +29 -0
  129. package/dist/index4.js.map +1 -0
  130. package/dist/index40.cjs +61 -0
  131. package/dist/index40.cjs.map +1 -0
  132. package/dist/index40.js +173 -0
  133. package/dist/index40.js.map +1 -0
  134. package/dist/index41.cjs +173 -0
  135. package/dist/index41.cjs.map +1 -0
  136. package/dist/index41.js +14 -0
  137. package/dist/index41.js.map +1 -0
  138. package/dist/index42.cjs +15 -0
  139. package/dist/index42.cjs.map +1 -0
  140. package/dist/index42.js +21 -0
  141. package/dist/index42.js.map +1 -0
  142. package/dist/index43.cjs +21 -0
  143. package/dist/index43.cjs.map +1 -0
  144. package/dist/index43.js +15 -0
  145. package/dist/index43.js.map +1 -0
  146. package/dist/index44.cjs +17 -0
  147. package/dist/index44.cjs.map +1 -0
  148. package/dist/index44.js +24 -0
  149. package/dist/index44.js.map +1 -0
  150. package/dist/index45.cjs +24 -0
  151. package/dist/index45.cjs.map +1 -0
  152. package/dist/index45.js +13 -0
  153. package/dist/index45.js.map +1 -0
  154. package/dist/index46.cjs +16 -0
  155. package/dist/index46.cjs.map +1 -0
  156. package/dist/index46.js +96 -0
  157. package/dist/index46.js.map +1 -0
  158. package/dist/index47.cjs +98 -0
  159. package/dist/index47.cjs.map +1 -0
  160. package/dist/index5.cjs +40 -0
  161. package/dist/index5.cjs.map +1 -0
  162. package/dist/index5.js +45 -0
  163. package/dist/index5.js.map +1 -0
  164. package/dist/index6.cjs +47 -0
  165. package/dist/index6.cjs.map +1 -0
  166. package/dist/index6.js +17 -0
  167. package/dist/index6.js.map +1 -0
  168. package/dist/index7.cjs +20 -0
  169. package/dist/index7.cjs.map +1 -0
  170. package/dist/index7.js +30 -0
  171. package/dist/index7.js.map +1 -0
  172. package/dist/index8.cjs +35 -0
  173. package/dist/index8.cjs.map +1 -0
  174. package/dist/index8.js +18 -0
  175. package/dist/index8.js.map +1 -0
  176. package/dist/index9.cjs +20 -0
  177. package/dist/index9.cjs.map +1 -0
  178. package/dist/index9.js +26 -0
  179. package/dist/index9.js.map +1 -0
  180. package/package.json +1 -1
  181. package/dist/index.cjs.map +0 -1
  182. package/dist/index.js.map +0 -1
@@ -0,0 +1,110 @@
1
+ "use client";
2
+ import { cx } from "./index3.js";
3
+ import select_module_default from "./index26.js";
4
+ import * as React from "react";
5
+ import { jsx, jsxs } from "react/jsx-runtime";
6
+ import * as SelectPrimitive from "@radix-ui/react-select";
7
+ //#region src/components/select/Select.tsx
8
+ var EMPTY_OPTION_VALUE = "__uzi_select_empty__";
9
+ var Select = React.forwardRef(({ options, value, onChange, placeholder, allowEmptyOption = false, fullWidth = true, className, id, name, disabled, required, autoComplete, form, title, "aria-label": ariaLabel, "aria-labelledby": ariaLabelledBy, onBlur, onFocus }, ref) => {
10
+ return /* @__PURE__ */ jsx("div", {
11
+ className: cx(select_module_default.wrapper, fullWidth && select_module_default.wrapperFullWidth, className),
12
+ children: /* @__PURE__ */ jsxs(SelectPrimitive.Root, {
13
+ value,
14
+ onValueChange: (nextValue) => onChange(nextValue === EMPTY_OPTION_VALUE ? "" : nextValue),
15
+ name,
16
+ disabled,
17
+ required,
18
+ autoComplete,
19
+ form,
20
+ children: [/* @__PURE__ */ jsxs(SelectPrimitive.Trigger, {
21
+ ref,
22
+ id,
23
+ className: select_module_default.trigger,
24
+ title,
25
+ "aria-label": ariaLabel,
26
+ "aria-labelledby": ariaLabelledBy,
27
+ onBlur,
28
+ onFocus,
29
+ children: [/* @__PURE__ */ jsx(SelectPrimitive.Value, {
30
+ className: select_module_default.value,
31
+ placeholder
32
+ }), /* @__PURE__ */ jsx(SelectPrimitive.Icon, {
33
+ className: select_module_default.chevron,
34
+ "aria-hidden": "true",
35
+ children: /* @__PURE__ */ jsx("svg", {
36
+ viewBox: "0 0 10 10",
37
+ fill: "none",
38
+ xmlns: "http://www.w3.org/2000/svg",
39
+ width: "10",
40
+ height: "10",
41
+ children: /* @__PURE__ */ jsx("path", {
42
+ d: "M2 3.5L5 6.5L8 3.5",
43
+ stroke: "currentColor",
44
+ strokeWidth: "1.5",
45
+ strokeLinecap: "round",
46
+ strokeLinejoin: "round"
47
+ })
48
+ })
49
+ })]
50
+ }), /* @__PURE__ */ jsx(SelectPrimitive.Portal, { children: /* @__PURE__ */ jsx(SelectPrimitive.Content, {
51
+ className: select_module_default.content,
52
+ position: "popper",
53
+ sideOffset: 4,
54
+ align: "start",
55
+ children: /* @__PURE__ */ jsxs(SelectPrimitive.Viewport, {
56
+ className: select_module_default.viewport,
57
+ children: [placeholder && allowEmptyOption ? /* @__PURE__ */ jsxs(SelectPrimitive.Item, {
58
+ value: EMPTY_OPTION_VALUE,
59
+ className: select_module_default.item,
60
+ children: [/* @__PURE__ */ jsx("span", {
61
+ className: select_module_default.indicator,
62
+ children: /* @__PURE__ */ jsx(SelectPrimitive.ItemIndicator, { children: /* @__PURE__ */ jsx("svg", {
63
+ viewBox: "0 0 16 16",
64
+ width: "16",
65
+ height: "16",
66
+ "aria-hidden": "true",
67
+ className: select_module_default.indicatorIcon,
68
+ children: /* @__PURE__ */ jsx("path", {
69
+ d: "M3.5 8.5 6.5 11.5 12.5 4.5",
70
+ fill: "none",
71
+ stroke: "currentColor",
72
+ strokeWidth: "1.8",
73
+ strokeLinecap: "round",
74
+ strokeLinejoin: "round"
75
+ })
76
+ }) })
77
+ }), /* @__PURE__ */ jsx(SelectPrimitive.ItemText, { children: placeholder })]
78
+ }) : null, options.map((opt) => /* @__PURE__ */ jsxs(SelectPrimitive.Item, {
79
+ value: opt.value,
80
+ disabled: opt.disabled,
81
+ className: select_module_default.item,
82
+ children: [/* @__PURE__ */ jsx("span", {
83
+ className: select_module_default.indicator,
84
+ children: /* @__PURE__ */ jsx(SelectPrimitive.ItemIndicator, { children: /* @__PURE__ */ jsx("svg", {
85
+ viewBox: "0 0 16 16",
86
+ width: "16",
87
+ height: "16",
88
+ "aria-hidden": "true",
89
+ className: select_module_default.indicatorIcon,
90
+ children: /* @__PURE__ */ jsx("path", {
91
+ d: "M3.5 8.5 6.5 11.5 12.5 4.5",
92
+ fill: "none",
93
+ stroke: "currentColor",
94
+ strokeWidth: "1.8",
95
+ strokeLinecap: "round",
96
+ strokeLinejoin: "round"
97
+ })
98
+ }) })
99
+ }), /* @__PURE__ */ jsx(SelectPrimitive.ItemText, { children: opt.label })]
100
+ }, opt.value))]
101
+ })
102
+ }) })]
103
+ })
104
+ });
105
+ });
106
+ Select.displayName = "Select";
107
+ //#endregion
108
+ export { Select };
109
+
110
+ //# sourceMappingURL=index27.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index27.js","names":[],"sources":["../src/components/select/Select.tsx"],"sourcesContent":["\"use client\";\n\nimport * as React from \"react\";\nimport * as SelectPrimitive from \"@radix-ui/react-select\";\nimport { cx } from \"../../utils/cx\";\nimport styles from \"./select.module.css\";\n\nexport type SelectOption = {\n label: string;\n value: string;\n disabled?: boolean;\n};\n\nexport type SelectProps = {\n options: SelectOption[];\n value: string;\n onChange: (value: string) => void;\n placeholder?: string;\n allowEmptyOption?: boolean;\n fullWidth?: boolean;\n className?: string;\n id?: string;\n name?: string;\n disabled?: boolean;\n required?: boolean;\n autoComplete?: string;\n form?: string;\n title?: string;\n \"aria-label\"?: string;\n \"aria-labelledby\"?: string;\n onBlur?: React.FocusEventHandler<HTMLButtonElement>;\n onFocus?: React.FocusEventHandler<HTMLButtonElement>;\n};\n\nconst EMPTY_OPTION_VALUE = \"__uzi_select_empty__\";\n\nexport const Select = React.forwardRef<HTMLButtonElement, SelectProps>(\n (\n {\n options,\n value,\n onChange,\n placeholder,\n allowEmptyOption = false,\n fullWidth = true,\n className,\n id,\n name,\n disabled,\n required,\n autoComplete,\n form,\n title,\n \"aria-label\": ariaLabel,\n \"aria-labelledby\": ariaLabelledBy,\n onBlur,\n onFocus,\n },\n ref,\n ) => {\n return (\n <div\n className={cx(\n styles.wrapper,\n fullWidth && styles.wrapperFullWidth,\n className,\n )}\n >\n <SelectPrimitive.Root\n value={value}\n onValueChange={(nextValue: string) =>\n onChange(nextValue === EMPTY_OPTION_VALUE ? \"\" : nextValue)\n }\n name={name}\n disabled={disabled}\n required={required}\n autoComplete={autoComplete}\n form={form}\n >\n <SelectPrimitive.Trigger\n ref={ref}\n id={id}\n className={styles.trigger}\n title={title}\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledBy}\n onBlur={onBlur}\n onFocus={onFocus}\n >\n <SelectPrimitive.Value\n className={styles.value}\n placeholder={placeholder}\n />\n <SelectPrimitive.Icon\n className={styles.chevron}\n aria-hidden=\"true\"\n >\n <svg\n viewBox=\"0 0 10 10\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"10\"\n height=\"10\"\n >\n <path\n d=\"M2 3.5L5 6.5L8 3.5\"\n stroke=\"currentColor\"\n strokeWidth=\"1.5\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n </SelectPrimitive.Icon>\n </SelectPrimitive.Trigger>\n\n <SelectPrimitive.Portal>\n <SelectPrimitive.Content\n className={styles.content}\n position=\"popper\"\n sideOffset={4}\n align=\"start\"\n >\n <SelectPrimitive.Viewport className={styles.viewport}>\n {placeholder && allowEmptyOption ? (\n <SelectPrimitive.Item\n value={EMPTY_OPTION_VALUE}\n className={styles.item}\n >\n <span className={styles.indicator}>\n <SelectPrimitive.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 </SelectPrimitive.ItemIndicator>\n </span>\n <SelectPrimitive.ItemText>{placeholder}</SelectPrimitive.ItemText>\n </SelectPrimitive.Item>\n ) : null}\n\n {options.map((opt) => (\n <SelectPrimitive.Item\n key={opt.value}\n value={opt.value}\n disabled={opt.disabled}\n className={styles.item}\n >\n <span className={styles.indicator}>\n <SelectPrimitive.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 </SelectPrimitive.ItemIndicator>\n </span>\n <SelectPrimitive.ItemText>{opt.label}</SelectPrimitive.ItemText>\n </SelectPrimitive.Item>\n ))}\n </SelectPrimitive.Viewport>\n </SelectPrimitive.Content>\n </SelectPrimitive.Portal>\n </SelectPrimitive.Root>\n </div>\n );\n },\n);\n\nSelect.displayName = \"Select\";\n"],"mappings":";;;;;;;AAkCA,IAAM,qBAAqB;AAE3B,IAAa,SAAS,MAAM,YAExB,EACE,SACA,OACA,UACA,aACA,mBAAmB,OACnB,YAAY,MACZ,WACA,IACA,MACA,UACA,UACA,cACA,MACA,OACA,cAAc,WACd,mBAAmB,gBACnB,QACA,WAEF,QACG;CACH,OACE,oBAAC,OAAD;EACE,WAAW,GACT,sBAAO,SACP,aAAa,sBAAO,kBACpB,SACF;YAEA,qBAAC,gBAAgB,MAAjB;GACS;GACP,gBAAgB,cACd,SAAS,cAAc,qBAAqB,KAAK,SAAS;GAEtD;GACI;GACA;GACI;GACR;aATR,CAWE,qBAAC,gBAAgB,SAAjB;IACO;IACD;IACJ,WAAW,sBAAO;IACX;IACP,cAAY;IACZ,mBAAiB;IACT;IACC;cARX,CAUE,oBAAC,gBAAgB,OAAjB;KACE,WAAW,sBAAO;KACL;IACd,CAAA,GACD,oBAAC,gBAAgB,MAAjB;KACE,WAAW,sBAAO;KAClB,eAAY;eAEZ,oBAAC,OAAD;MACE,SAAQ;MACR,MAAK;MACL,OAAM;MACN,OAAM;MACN,QAAO;gBAEP,oBAAC,QAAD;OACE,GAAE;OACF,QAAO;OACP,aAAY;OACZ,eAAc;OACd,gBAAe;MAChB,CAAA;KACE,CAAA;IACe,CAAA,CACC;OAEzB,oBAAC,gBAAgB,QAAjB,EAAA,UACE,oBAAC,gBAAgB,SAAjB;IACE,WAAW,sBAAO;IAClB,UAAS;IACT,YAAY;IACZ,OAAM;cAEN,qBAAC,gBAAgB,UAAjB;KAA0B,WAAW,sBAAO;eAA5C,CACG,eAAe,mBACd,qBAAC,gBAAgB,MAAjB;MACE,OAAO;MACP,WAAW,sBAAO;gBAFpB,CAIE,oBAAC,QAAD;OAAM,WAAW,sBAAO;iBACtB,oBAAC,gBAAgB,eAAjB,EAAA,UACE,oBAAC,OAAD;QACE,SAAQ;QACR,OAAM;QACN,QAAO;QACP,eAAY;QACZ,WAAW,sBAAO;kBAElB,oBAAC,QAAD;SACE,GAAE;SACF,MAAK;SACL,QAAO;SACP,aAAY;SACZ,eAAc;SACd,gBAAe;QAChB,CAAA;OACE,CAAA,EACwB,CAAA;MAC3B,CAAA,GACN,oBAAC,gBAAgB,UAAjB,EAAA,UAA2B,YAAsC,CAAA,CAC7C;UACpB,MAEH,QAAQ,KAAK,QACZ,qBAAC,gBAAgB,MAAjB;MAEE,OAAO,IAAI;MACX,UAAU,IAAI;MACd,WAAW,sBAAO;gBAJpB,CAME,oBAAC,QAAD;OAAM,WAAW,sBAAO;iBACtB,oBAAC,gBAAgB,eAAjB,EAAA,UACE,oBAAC,OAAD;QACE,SAAQ;QACR,OAAM;QACN,QAAO;QACP,eAAY;QACZ,WAAW,sBAAO;kBAElB,oBAAC,QAAD;SACE,GAAE;SACF,MAAK;SACL,QAAO;SACP,aAAY;SACZ,eAAc;SACd,gBAAe;QAChB,CAAA;OACE,CAAA,EACwB,CAAA;MAC3B,CAAA,GACN,oBAAC,gBAAgB,UAAjB,EAAA,UAA2B,IAAI,MAAgC,CAAA,CAC3C;QA1Bf,IAAI,KA0BW,CACvB,CACuB;;GACH,CAAA,EACH,CAAA,CACJ;;CACnB,CAAA;AAET,CACF;AAEA,OAAO,cAAc"}
@@ -0,0 +1,113 @@
1
+ "use client";
2
+ const require_runtime = require("./index2.cjs");
3
+ const require_cx = require("./index4.cjs");
4
+ const require_select_module = require("./index27.cjs");
5
+ let react = require("react");
6
+ react = require_runtime.__toESM(react, 1);
7
+ let react_jsx_runtime = require("react/jsx-runtime");
8
+ let _radix_ui_react_select = require("@radix-ui/react-select");
9
+ _radix_ui_react_select = require_runtime.__toESM(_radix_ui_react_select, 1);
10
+ //#region src/components/select/Select.tsx
11
+ var EMPTY_OPTION_VALUE = "__uzi_select_empty__";
12
+ var Select = react.forwardRef(({ options, value, onChange, placeholder, allowEmptyOption = false, fullWidth = true, className, id, name, disabled, required, autoComplete, form, title, "aria-label": ariaLabel, "aria-labelledby": ariaLabelledBy, onBlur, onFocus }, ref) => {
13
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
14
+ className: require_cx.cx(require_select_module.default.wrapper, fullWidth && require_select_module.default.wrapperFullWidth, className),
15
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(_radix_ui_react_select.Root, {
16
+ value,
17
+ onValueChange: (nextValue) => onChange(nextValue === EMPTY_OPTION_VALUE ? "" : nextValue),
18
+ name,
19
+ disabled,
20
+ required,
21
+ autoComplete,
22
+ form,
23
+ children: [/* @__PURE__ */ (0, react_jsx_runtime.jsxs)(_radix_ui_react_select.Trigger, {
24
+ ref,
25
+ id,
26
+ className: require_select_module.default.trigger,
27
+ title,
28
+ "aria-label": ariaLabel,
29
+ "aria-labelledby": ariaLabelledBy,
30
+ onBlur,
31
+ onFocus,
32
+ children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(_radix_ui_react_select.Value, {
33
+ className: require_select_module.default.value,
34
+ placeholder
35
+ }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_radix_ui_react_select.Icon, {
36
+ className: require_select_module.default.chevron,
37
+ "aria-hidden": "true",
38
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)("svg", {
39
+ viewBox: "0 0 10 10",
40
+ fill: "none",
41
+ xmlns: "http://www.w3.org/2000/svg",
42
+ width: "10",
43
+ height: "10",
44
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
45
+ d: "M2 3.5L5 6.5L8 3.5",
46
+ stroke: "currentColor",
47
+ strokeWidth: "1.5",
48
+ strokeLinecap: "round",
49
+ strokeLinejoin: "round"
50
+ })
51
+ })
52
+ })]
53
+ }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_radix_ui_react_select.Portal, { children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_radix_ui_react_select.Content, {
54
+ className: require_select_module.default.content,
55
+ position: "popper",
56
+ sideOffset: 4,
57
+ align: "start",
58
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(_radix_ui_react_select.Viewport, {
59
+ className: require_select_module.default.viewport,
60
+ children: [placeholder && allowEmptyOption ? /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(_radix_ui_react_select.Item, {
61
+ value: EMPTY_OPTION_VALUE,
62
+ className: require_select_module.default.item,
63
+ children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
64
+ className: require_select_module.default.indicator,
65
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_radix_ui_react_select.ItemIndicator, { children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)("svg", {
66
+ viewBox: "0 0 16 16",
67
+ width: "16",
68
+ height: "16",
69
+ "aria-hidden": "true",
70
+ className: require_select_module.default.indicatorIcon,
71
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
72
+ d: "M3.5 8.5 6.5 11.5 12.5 4.5",
73
+ fill: "none",
74
+ stroke: "currentColor",
75
+ strokeWidth: "1.8",
76
+ strokeLinecap: "round",
77
+ strokeLinejoin: "round"
78
+ })
79
+ }) })
80
+ }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_radix_ui_react_select.ItemText, { children: placeholder })]
81
+ }) : null, options.map((opt) => /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(_radix_ui_react_select.Item, {
82
+ value: opt.value,
83
+ disabled: opt.disabled,
84
+ className: require_select_module.default.item,
85
+ children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
86
+ className: require_select_module.default.indicator,
87
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_radix_ui_react_select.ItemIndicator, { children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)("svg", {
88
+ viewBox: "0 0 16 16",
89
+ width: "16",
90
+ height: "16",
91
+ "aria-hidden": "true",
92
+ className: require_select_module.default.indicatorIcon,
93
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
94
+ d: "M3.5 8.5 6.5 11.5 12.5 4.5",
95
+ fill: "none",
96
+ stroke: "currentColor",
97
+ strokeWidth: "1.8",
98
+ strokeLinecap: "round",
99
+ strokeLinejoin: "round"
100
+ })
101
+ }) })
102
+ }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_radix_ui_react_select.ItemText, { children: opt.label })]
103
+ }, opt.value))]
104
+ })
105
+ }) })]
106
+ })
107
+ });
108
+ });
109
+ Select.displayName = "Select";
110
+ //#endregion
111
+ exports.Select = Select;
112
+
113
+ //# sourceMappingURL=index28.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index28.cjs","names":[],"sources":["../src/components/select/Select.tsx"],"sourcesContent":["\"use client\";\n\nimport * as React from \"react\";\nimport * as SelectPrimitive from \"@radix-ui/react-select\";\nimport { cx } from \"../../utils/cx\";\nimport styles from \"./select.module.css\";\n\nexport type SelectOption = {\n label: string;\n value: string;\n disabled?: boolean;\n};\n\nexport type SelectProps = {\n options: SelectOption[];\n value: string;\n onChange: (value: string) => void;\n placeholder?: string;\n allowEmptyOption?: boolean;\n fullWidth?: boolean;\n className?: string;\n id?: string;\n name?: string;\n disabled?: boolean;\n required?: boolean;\n autoComplete?: string;\n form?: string;\n title?: string;\n \"aria-label\"?: string;\n \"aria-labelledby\"?: string;\n onBlur?: React.FocusEventHandler<HTMLButtonElement>;\n onFocus?: React.FocusEventHandler<HTMLButtonElement>;\n};\n\nconst EMPTY_OPTION_VALUE = \"__uzi_select_empty__\";\n\nexport const Select = React.forwardRef<HTMLButtonElement, SelectProps>(\n (\n {\n options,\n value,\n onChange,\n placeholder,\n allowEmptyOption = false,\n fullWidth = true,\n className,\n id,\n name,\n disabled,\n required,\n autoComplete,\n form,\n title,\n \"aria-label\": ariaLabel,\n \"aria-labelledby\": ariaLabelledBy,\n onBlur,\n onFocus,\n },\n ref,\n ) => {\n return (\n <div\n className={cx(\n styles.wrapper,\n fullWidth && styles.wrapperFullWidth,\n className,\n )}\n >\n <SelectPrimitive.Root\n value={value}\n onValueChange={(nextValue: string) =>\n onChange(nextValue === EMPTY_OPTION_VALUE ? \"\" : nextValue)\n }\n name={name}\n disabled={disabled}\n required={required}\n autoComplete={autoComplete}\n form={form}\n >\n <SelectPrimitive.Trigger\n ref={ref}\n id={id}\n className={styles.trigger}\n title={title}\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledBy}\n onBlur={onBlur}\n onFocus={onFocus}\n >\n <SelectPrimitive.Value\n className={styles.value}\n placeholder={placeholder}\n />\n <SelectPrimitive.Icon\n className={styles.chevron}\n aria-hidden=\"true\"\n >\n <svg\n viewBox=\"0 0 10 10\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"10\"\n height=\"10\"\n >\n <path\n d=\"M2 3.5L5 6.5L8 3.5\"\n stroke=\"currentColor\"\n strokeWidth=\"1.5\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n </SelectPrimitive.Icon>\n </SelectPrimitive.Trigger>\n\n <SelectPrimitive.Portal>\n <SelectPrimitive.Content\n className={styles.content}\n position=\"popper\"\n sideOffset={4}\n align=\"start\"\n >\n <SelectPrimitive.Viewport className={styles.viewport}>\n {placeholder && allowEmptyOption ? (\n <SelectPrimitive.Item\n value={EMPTY_OPTION_VALUE}\n className={styles.item}\n >\n <span className={styles.indicator}>\n <SelectPrimitive.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 </SelectPrimitive.ItemIndicator>\n </span>\n <SelectPrimitive.ItemText>{placeholder}</SelectPrimitive.ItemText>\n </SelectPrimitive.Item>\n ) : null}\n\n {options.map((opt) => (\n <SelectPrimitive.Item\n key={opt.value}\n value={opt.value}\n disabled={opt.disabled}\n className={styles.item}\n >\n <span className={styles.indicator}>\n <SelectPrimitive.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 </SelectPrimitive.ItemIndicator>\n </span>\n <SelectPrimitive.ItemText>{opt.label}</SelectPrimitive.ItemText>\n </SelectPrimitive.Item>\n ))}\n </SelectPrimitive.Viewport>\n </SelectPrimitive.Content>\n </SelectPrimitive.Portal>\n </SelectPrimitive.Root>\n </div>\n );\n },\n);\n\nSelect.displayName = \"Select\";\n"],"mappings":"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"}
@@ -0,0 +1,26 @@
1
+ "use client";
2
+ import { Select } from "./index27.js";
3
+ import * as React from "react";
4
+ import { jsx } from "react/jsx-runtime";
5
+ //#region src/components/dropdown/Dropdown.tsx
6
+ /**
7
+ * @deprecated Use Select for value selection and DropdownMenu for action menus.
8
+ * Dropdown remains as a compatibility alias during migration.
9
+ */
10
+ var Dropdown = React.forwardRef(({ options, value, onChange, placeholder = "All", allowClear = true, ...rest }, ref) => {
11
+ return /* @__PURE__ */ jsx(Select, {
12
+ ref,
13
+ options,
14
+ value,
15
+ onChange,
16
+ placeholder,
17
+ allowEmptyOption: allowClear,
18
+ fullWidth: false,
19
+ ...rest
20
+ });
21
+ });
22
+ Dropdown.displayName = "Dropdown";
23
+ //#endregion
24
+ export { Dropdown };
25
+
26
+ //# sourceMappingURL=index28.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index28.js","names":[],"sources":["../src/components/dropdown/Dropdown.tsx"],"sourcesContent":["\"use client\";\n\nimport * as React from \"react\";\nimport { Select, type SelectOption, type SelectProps } from \"../select/Select\";\n\nexport interface DropdownOption extends SelectOption {}\n\nexport interface DropdownProps\n extends Omit<\n SelectProps,\n \"allowEmptyOption\" | \"fullWidth\" | \"placeholder\" | \"options\"\n > {\n /** List of options to display in the menu. */\n options: DropdownOption[];\n /** Label shown when no option is selected. Defaults to \"All\". */\n placeholder?: string;\n /** Whether to show the placeholder as a clearable option. Defaults to true. */\n allowClear?: boolean;\n}\n\n/**\n * @deprecated Use Select for value selection and DropdownMenu for action menus.\n * Dropdown remains as a compatibility alias during migration.\n */\nexport const Dropdown = React.forwardRef<HTMLButtonElement, DropdownProps>(\n (\n {\n options,\n value,\n onChange,\n placeholder = \"All\",\n allowClear = true,\n ...rest\n },\n ref,\n ) => {\n return (\n <Select\n ref={ref}\n options={options}\n value={value}\n onChange={onChange}\n placeholder={placeholder}\n allowEmptyOption={allowClear}\n fullWidth={false}\n {...rest}\n />\n );\n },\n);\n\nDropdown.displayName = \"Dropdown\";\n"],"mappings":";;;;;;;;;AAwBA,IAAa,WAAW,MAAM,YAE1B,EACE,SACA,OACA,UACA,cAAc,OACd,aAAa,MACb,GAAG,QAEL,QACG;CACH,OACE,oBAAC,QAAD;EACO;EACI;EACF;EACG;EACG;EACb,kBAAkB;EAClB,WAAW;EACX,GAAI;CACL,CAAA;AAEL,CACF;AAEA,SAAS,cAAc"}
@@ -0,0 +1,28 @@
1
+ "use client";
2
+ const require_runtime = require("./index2.cjs");
3
+ const require_Select = require("./index28.cjs");
4
+ let react = require("react");
5
+ react = require_runtime.__toESM(react, 1);
6
+ let react_jsx_runtime = require("react/jsx-runtime");
7
+ //#region src/components/dropdown/Dropdown.tsx
8
+ /**
9
+ * @deprecated Use Select for value selection and DropdownMenu for action menus.
10
+ * Dropdown remains as a compatibility alias during migration.
11
+ */
12
+ var Dropdown = react.forwardRef(({ options, value, onChange, placeholder = "All", allowClear = true, ...rest }, ref) => {
13
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Select.Select, {
14
+ ref,
15
+ options,
16
+ value,
17
+ onChange,
18
+ placeholder,
19
+ allowEmptyOption: allowClear,
20
+ fullWidth: false,
21
+ ...rest
22
+ });
23
+ });
24
+ Dropdown.displayName = "Dropdown";
25
+ //#endregion
26
+ exports.Dropdown = Dropdown;
27
+
28
+ //# sourceMappingURL=index29.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index29.cjs","names":[],"sources":["../src/components/dropdown/Dropdown.tsx"],"sourcesContent":["\"use client\";\n\nimport * as React from \"react\";\nimport { Select, type SelectOption, type SelectProps } from \"../select/Select\";\n\nexport interface DropdownOption extends SelectOption {}\n\nexport interface DropdownProps\n extends Omit<\n SelectProps,\n \"allowEmptyOption\" | \"fullWidth\" | \"placeholder\" | \"options\"\n > {\n /** List of options to display in the menu. */\n options: DropdownOption[];\n /** Label shown when no option is selected. Defaults to \"All\". */\n placeholder?: string;\n /** Whether to show the placeholder as a clearable option. Defaults to true. */\n allowClear?: boolean;\n}\n\n/**\n * @deprecated Use Select for value selection and DropdownMenu for action menus.\n * Dropdown remains as a compatibility alias during migration.\n */\nexport const Dropdown = React.forwardRef<HTMLButtonElement, DropdownProps>(\n (\n {\n options,\n value,\n onChange,\n placeholder = \"All\",\n allowClear = true,\n ...rest\n },\n ref,\n ) => {\n return (\n <Select\n ref={ref}\n options={options}\n value={value}\n onChange={onChange}\n placeholder={placeholder}\n allowEmptyOption={allowClear}\n fullWidth={false}\n {...rest}\n />\n );\n },\n);\n\nDropdown.displayName = \"Dropdown\";\n"],"mappings":";;;;;;;;;;;AAwBA,IAAa,WAAW,MAAM,YAE1B,EACE,SACA,OACA,UACA,cAAc,OACd,aAAa,MACb,GAAG,QAEL,QACG;CACH,OACE,iBAAA,GAAA,kBAAA,IAAA,CAAC,eAAA,QAAD;EACO;EACI;EACF;EACG;EACG;EACb,kBAAkB;EAClB,WAAW;EACX,GAAI;CACL,CAAA;AAEL,CACF;AAEA,SAAS,cAAc"}
@@ -0,0 +1,29 @@
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
+ };
26
+ //#endregion
27
+ export { chevron, content, dropdown_menu_module_default as default, indicator, indicatorIcon, insetItem, item, itemDestructive, label, menuFadeIn, radioDot, separator };
28
+
29
+ //# sourceMappingURL=index29.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index29.js","names":[],"sources":["../src/components/dropdown-menu/dropdown-menu.module.css"],"sourcesContent":[".content {\n z-index: 50;\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/index3.js ADDED
@@ -0,0 +1,8 @@
1
+ //#region src/utils/cx.ts
2
+ function cx(...values) {
3
+ return values.filter(Boolean).join(" ");
4
+ }
5
+ //#endregion
6
+ export { cx };
7
+
8
+ //# sourceMappingURL=index3.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index3.js","names":[],"sources":["../src/utils/cx.ts"],"sourcesContent":["export function cx(...values: Array<string | false | null | undefined>): string {\n return values.filter(Boolean).join(\" \");\n}\n"],"mappings":";AAAA,SAAgB,GAAG,GAAG,QAA0D;CAC9E,OAAO,OAAO,OAAO,OAAO,CAAC,CAAC,KAAK,GAAG;AACxC"}
@@ -0,0 +1,40 @@
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
+ };
26
+ //#endregion
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;
39
+
40
+ //# sourceMappingURL=index30.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index30.cjs","names":[],"sources":["../src/components/dropdown-menu/dropdown-menu.module.css"],"sourcesContent":[".content {\n z-index: 50;\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":""}
@@ -0,0 +1,118 @@
1
+ "use client";
2
+ import { cx } from "./index3.js";
3
+ import dropdown_menu_module_default from "./index29.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 });
10
+ }
11
+ function DropdownMenuTrigger(props) {
12
+ return /* @__PURE__ */ jsx(DropdownMenuPrimitive.Trigger, { ...props });
13
+ }
14
+ function DropdownMenuGroup(props) {
15
+ return /* @__PURE__ */ jsx(DropdownMenuPrimitive.Group, { ...props });
16
+ }
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]
72
+ });
73
+ }
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
+ });
114
+ }
115
+ //#endregion
116
+ export { DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger };
117
+
118
+ //# sourceMappingURL=index30.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index30.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":";;;;;;;AAOA,SAAgB,aACd,OACA;CACA,OAAO,oBAAC,sBAAsB,MAAvB,EAA4B,GAAI,MAAQ,CAAA;AACjD;AAEA,SAAgB,oBACd,OACA;CACA,OAAO,oBAAC,sBAAsB,SAAvB,EAA+B,GAAI,MAAQ,CAAA;AACpD;AAEA,SAAgB,kBACd,OACA;CACA,OAAO,oBAAC,sBAAsB,OAAvB,EAA6B,GAAI,MAAQ,CAAA;AAClD;AAEA,SAAgB,mBACd,OACA;CACA,OAAO,oBAAC,sBAAsB,QAAvB,EAA8B,GAAI,MAAQ,CAAA;AACnD;AAEA,SAAgB,gBACd,OACA;CACA,OAAO,oBAAC,sBAAsB,KAAvB,EAA2B,GAAI,MAAQ,CAAA;AAChD;AAEA,SAAgB,uBACd,OACA;CACA,OAAO,oBAAC,sBAAsB,YAAvB,EAAkC,GAAI,MAAQ,CAAA;AACvD;AAEA,SAAgB,oBAAoB,EAClC,WACA,aAAa,GACb,GAAG,SAC0D;CAC7D,OACE,oBAAC,sBAAsB,QAAvB,EAAA,UACE,oBAAC,sBAAsB,SAAvB;EACc;EACZ,WAAW,GAAG,6BAAO,SAAS,SAAS;EACvC,GAAI;CACL,CAAA,EAC2B,CAAA;AAElC;AAEA,SAAgB,iBAAiB,EAC/B,WACA,OACA,UAAU,WACV,GAAG,SAIF;CACD,OACE,oBAAC,sBAAsB,MAAvB;EACE,cAAY,QAAQ,SAAS,KAAA;EAC7B,WAAW,GACT,6BAAO,MACP,YAAY,iBAAiB,6BAAO,iBACpC,SACF;EACA,GAAI;CACL,CAAA;AAEL;AAEA,SAAgB,yBAAyB,EACvC,WACA,UACA,GAAG,SAC+D;CAClE,OACE,qBAAC,sBAAsB,cAAvB;EACE,WAAW,GACT,6BAAO,MACP,6BAAO,WACP,SACF;EACA,GAAI;YANN,CAQE,oBAAC,QAAD;GAAM,WAAW,6BAAO;aACtB,oBAAC,sBAAsB,eAAvB,EAAA,UACE,oBAAC,OAAD;IACE,SAAQ;IACR,OAAM;IACN,QAAO;IACP,eAAY;IACZ,WAAW,6BAAO;cAElB,oBAAC,QAAD;KACE,GAAE;KACF,MAAK;KACL,QAAO;KACP,aAAY;KACZ,eAAc;KACd,gBAAe;IAChB,CAAA;GACE,CAAA,EAC8B,CAAA;EACjC,CAAA,GACL,QACiC;;AAExC;AAEA,SAAgB,sBAAsB,EACpC,WACA,UACA,GAAG,SAC4D;CAC/D,OACE,qBAAC,sBAAsB,WAAvB;EACE,WAAW,GACT,6BAAO,MACP,6BAAO,WACP,SACF;EACA,GAAI;YANN,CAQE,oBAAC,QAAD;GAAM,WAAW,6BAAO;aACtB,oBAAC,sBAAsB,eAAvB,EAAA,UACE,oBAAC,QAAD,EAAM,WAAW,6BAAO,SAAW,CAAA,EACA,CAAA;EACjC,CAAA,GACL,QAC8B;;AAErC;AAEA,SAAgB,kBAAkB,EAChC,WACA,OACA,GAAG,SAGF;CACD,OACE,oBAAC,sBAAsB,OAAvB;EACE,cAAY,QAAQ,SAAS,KAAA;EAC7B,WAAW,GAAG,6BAAO,OAAO,SAAS;EACrC,GAAI;CACL,CAAA;AAEL;AAEA,SAAgB,sBAAsB,EACpC,WACA,GAAG,SAC4D;CAC/D,OACE,oBAAC,sBAAsB,WAAvB;EACE,WAAW,GAAG,6BAAO,WAAW,SAAS;EACzC,GAAI;CACL,CAAA;AAEL;AAEA,SAAgB,uBAAuB,EACrC,WACA,OACA,UACA,GAAG,SAGF;CACD,OACE,qBAAC,sBAAsB,YAAvB;EACE,cAAY,QAAQ,SAAS,KAAA;EAC7B,WAAW,GAAG,6BAAO,MAAM,SAAS;EACpC,GAAI;YAHN,CAKG,UACD,oBAAC,OAAD;GACE,SAAQ;GACR,OAAM;GACN,QAAO;GACP,eAAY;GACZ,WAAW,6BAAO;aAElB,oBAAC,QAAD;IACE,GAAE;IACF,MAAK;IACL,QAAO;IACP,aAAY;IACZ,eAAc;IACd,gBAAe;GAChB,CAAA;EACE,CAAA,CAC2B;;AAEtC;AAEA,SAAgB,uBAAuB,EACrC,WACA,GAAG,SAC6D;CAChE,OACE,oBAAC,sBAAsB,YAAvB;EACE,WAAW,GAAG,6BAAO,SAAS,SAAS;EACvC,GAAI;CACL,CAAA;AAEL"}