@definable/ui 0.1.13 → 0.1.15

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 (300) hide show
  1. package/README.md +0 -7
  2. package/dist/components/alert-dialog.js +55 -2
  3. package/dist/components/alert.js +63 -2
  4. package/dist/components/avatar.js +41 -2
  5. package/dist/components/badge.js +26 -2
  6. package/dist/components/button.d.ts +2 -2
  7. package/dist/components/button.js +49 -2
  8. package/dist/components/calendar.js +86 -2
  9. package/dist/components/card.js +61 -2
  10. package/dist/components/carousel.js +100 -2
  11. package/dist/components/checkbox.js +31 -2
  12. package/dist/components/collapse.js +49 -2
  13. package/dist/components/command-menu.js +89 -2
  14. package/dist/components/command.js +115 -2
  15. package/dist/components/confirmation-modal.js +44 -2
  16. package/dist/components/context-menu.js +185 -2
  17. package/dist/components/dialog.js +121 -2
  18. package/dist/components/dropdown-menu.js +48 -2
  19. package/dist/components/dropzone.js +44 -2
  20. package/dist/components/image-cropper-modal.js +250 -2
  21. package/dist/components/image-cropper.js +130 -2
  22. package/dist/components/input.js +21 -2
  23. package/dist/components/label.js +19 -2
  24. package/dist/components/loader.js +69 -2
  25. package/dist/components/loading-placeholder.js +24 -2
  26. package/dist/components/mention.js +153 -2
  27. package/dist/components/modal.js +135 -2
  28. package/dist/components/notification.js +25 -2
  29. package/dist/components/popover.js +23 -2
  30. package/dist/components/progress.js +34 -2
  31. package/dist/components/radio-group.js +47 -2
  32. package/dist/components/scroll-area.js +46 -2
  33. package/dist/components/select.js +130 -2
  34. package/dist/components/selection-bar.js +53 -2
  35. package/dist/components/separator.js +24 -2
  36. package/dist/components/sheet.js +128 -2
  37. package/dist/components/skeleton.js +17 -2
  38. package/dist/components/slider.js +32 -2
  39. package/dist/components/stepper/index.d.ts +4 -0
  40. package/dist/components/stepper/step-layout.d.ts +8 -0
  41. package/dist/components/stepper/stepper-modal.d.ts +26 -0
  42. package/dist/components/stepper/stepper.d.ts +7 -0
  43. package/dist/components/stepper/types.d.ts +6 -0
  44. package/dist/components/stepper.js +6 -2
  45. package/dist/components/switch.js +35 -2
  46. package/dist/components/table-empty.js +22 -2
  47. package/dist/components/table-mobile.js +91 -2
  48. package/dist/components/table.js +156 -2
  49. package/dist/components/tabs.js +46 -2
  50. package/dist/components/terminal.js +49 -2
  51. package/dist/components/textarea.js +20 -2
  52. package/dist/components/tooltip.js +75 -2
  53. package/dist/components/use-toast.js +64 -2
  54. package/dist/icons/icons.d.ts +8 -0
  55. package/dist/icons/index.d.ts +1 -0
  56. package/dist/icons/providers/anthropic.d.ts +2 -0
  57. package/dist/icons/providers/claude.d.ts +2 -0
  58. package/dist/icons/providers/deepseek.d.ts +2 -0
  59. package/dist/icons/providers/gemini.d.ts +2 -0
  60. package/dist/icons/providers/grok.d.ts +2 -0
  61. package/dist/icons/providers/index.d.ts +6 -0
  62. package/dist/icons/providers/openai.d.ts +2 -0
  63. package/dist/icons/providers/types.d.ts +4 -0
  64. package/dist/index.d.ts +48 -962
  65. package/dist/index.js +444 -2
  66. package/dist/lib/icons.d.ts +14 -0
  67. package/dist/lib/index.d.ts +2 -0
  68. package/dist/lib/utils.js +8 -2
  69. package/dist/{stepper-modal-SYU9mbXs.js → stepper-modal-JXpOXOV2.js} +90 -91
  70. package/dist/styles.css +1 -1
  71. package/package.json +180 -134
  72. package/dist/MonacoEditor-COZcVMEj.cjs +0 -8
  73. package/dist/MonacoEditor-COZcVMEj.cjs.map +0 -1
  74. package/dist/MonacoEditor-D3QSSKa4.js +0 -295
  75. package/dist/MonacoEditor-D3QSSKa4.js.map +0 -1
  76. package/dist/alert-dialog.d.ts +0 -18
  77. package/dist/alert.d.ts +0 -25
  78. package/dist/avatar.d.ts +0 -9
  79. package/dist/badge.d.ts +0 -15
  80. package/dist/button.d.ts +0 -16
  81. package/dist/calendar.d.ts +0 -21
  82. package/dist/card.d.ts +0 -15
  83. package/dist/carousel.d.ts +0 -18
  84. package/dist/charts.d.ts +0 -26
  85. package/dist/checkbox.d.ts +0 -6
  86. package/dist/collapse.d.ts +0 -15
  87. package/dist/command-menu.d.ts +0 -12
  88. package/dist/command.d.ts +0 -89
  89. package/dist/components/alert-dialog.esm.js +0 -59
  90. package/dist/components/alert-dialog.esm.js.map +0 -1
  91. package/dist/components/alert-dialog.js.map +0 -1
  92. package/dist/components/alert.esm.js +0 -64
  93. package/dist/components/alert.esm.js.map +0 -1
  94. package/dist/components/alert.js.map +0 -1
  95. package/dist/components/avatar.esm.js +0 -42
  96. package/dist/components/avatar.esm.js.map +0 -1
  97. package/dist/components/avatar.js.map +0 -1
  98. package/dist/components/badge.esm.js +0 -27
  99. package/dist/components/badge.esm.js.map +0 -1
  100. package/dist/components/badge.js.map +0 -1
  101. package/dist/components/button.esm.js +0 -48
  102. package/dist/components/button.esm.js.map +0 -1
  103. package/dist/components/button.js.map +0 -1
  104. package/dist/components/calendar.esm.js +0 -5562
  105. package/dist/components/calendar.esm.js.map +0 -1
  106. package/dist/components/calendar.js.map +0 -1
  107. package/dist/components/card.esm.js +0 -62
  108. package/dist/components/card.esm.js.map +0 -1
  109. package/dist/components/card.js.map +0 -1
  110. package/dist/components/carousel.esm.js +0 -101
  111. package/dist/components/carousel.esm.js.map +0 -1
  112. package/dist/components/carousel.js.map +0 -1
  113. package/dist/components/charts.d.ts +0 -17
  114. package/dist/components/charts.esm.js +0 -48
  115. package/dist/components/charts.esm.js.map +0 -1
  116. package/dist/components/charts.js +0 -2
  117. package/dist/components/charts.js.map +0 -1
  118. package/dist/components/checkbox.esm.js +0 -32
  119. package/dist/components/checkbox.esm.js.map +0 -1
  120. package/dist/components/checkbox.js.map +0 -1
  121. package/dist/components/collapse.esm.js +0 -50
  122. package/dist/components/collapse.esm.js.map +0 -1
  123. package/dist/components/collapse.js.map +0 -1
  124. package/dist/components/command-menu.esm.js +0 -90
  125. package/dist/components/command-menu.esm.js.map +0 -1
  126. package/dist/components/command-menu.js.map +0 -1
  127. package/dist/components/command.esm.js +0 -425
  128. package/dist/components/command.esm.js.map +0 -1
  129. package/dist/components/command.js.map +0 -1
  130. package/dist/components/confirmation-modal.esm.js +0 -46
  131. package/dist/components/confirmation-modal.esm.js.map +0 -1
  132. package/dist/components/confirmation-modal.js.map +0 -1
  133. package/dist/components/context-menu.esm.js +0 -186
  134. package/dist/components/context-menu.esm.js.map +0 -1
  135. package/dist/components/context-menu.js.map +0 -1
  136. package/dist/components/dialog.esm.js +0 -122
  137. package/dist/components/dialog.esm.js.map +0 -1
  138. package/dist/components/dialog.js.map +0 -1
  139. package/dist/components/dropdown-menu.esm.js +0 -49
  140. package/dist/components/dropdown-menu.esm.js.map +0 -1
  141. package/dist/components/dropdown-menu.js.map +0 -1
  142. package/dist/components/dropzone.esm.js +0 -45
  143. package/dist/components/dropzone.esm.js.map +0 -1
  144. package/dist/components/dropzone.js.map +0 -1
  145. package/dist/components/image-cropper-modal.esm.js +0 -251
  146. package/dist/components/image-cropper-modal.esm.js.map +0 -1
  147. package/dist/components/image-cropper-modal.js.map +0 -1
  148. package/dist/components/image-cropper.esm.js +0 -131
  149. package/dist/components/image-cropper.esm.js.map +0 -1
  150. package/dist/components/image-cropper.js.map +0 -1
  151. package/dist/components/input.esm.js +0 -22
  152. package/dist/components/input.esm.js.map +0 -1
  153. package/dist/components/input.js.map +0 -1
  154. package/dist/components/label.esm.js +0 -20
  155. package/dist/components/label.esm.js.map +0 -1
  156. package/dist/components/label.js.map +0 -1
  157. package/dist/components/loader.esm.js +0 -70
  158. package/dist/components/loader.esm.js.map +0 -1
  159. package/dist/components/loader.js.map +0 -1
  160. package/dist/components/loading-placeholder.esm.js +0 -25
  161. package/dist/components/loading-placeholder.esm.js.map +0 -1
  162. package/dist/components/loading-placeholder.js.map +0 -1
  163. package/dist/components/markdown.d.ts +0 -2
  164. package/dist/components/markdown.esm.js +0 -12066
  165. package/dist/components/markdown.esm.js.map +0 -1
  166. package/dist/components/markdown.js +0 -18
  167. package/dist/components/markdown.js.map +0 -1
  168. package/dist/components/mention.esm.js +0 -154
  169. package/dist/components/mention.esm.js.map +0 -1
  170. package/dist/components/mention.js.map +0 -1
  171. package/dist/components/modal.esm.js +0 -136
  172. package/dist/components/modal.esm.js.map +0 -1
  173. package/dist/components/modal.js.map +0 -1
  174. package/dist/components/monaco-editor.d.ts +0 -2
  175. package/dist/components/monaco-editor.esm.js +0 -9
  176. package/dist/components/monaco-editor.esm.js.map +0 -1
  177. package/dist/components/monaco-editor.js +0 -2
  178. package/dist/components/monaco-editor.js.map +0 -1
  179. package/dist/components/notification.esm.js +0 -26
  180. package/dist/components/notification.esm.js.map +0 -1
  181. package/dist/components/notification.js.map +0 -1
  182. package/dist/components/popover.esm.js +0 -24
  183. package/dist/components/popover.esm.js.map +0 -1
  184. package/dist/components/popover.js.map +0 -1
  185. package/dist/components/progress.esm.js +0 -35
  186. package/dist/components/progress.esm.js.map +0 -1
  187. package/dist/components/progress.js.map +0 -1
  188. package/dist/components/radio-group.esm.js +0 -48
  189. package/dist/components/radio-group.esm.js.map +0 -1
  190. package/dist/components/radio-group.js.map +0 -1
  191. package/dist/components/scroll-area.esm.js +0 -47
  192. package/dist/components/scroll-area.esm.js.map +0 -1
  193. package/dist/components/scroll-area.js.map +0 -1
  194. package/dist/components/select.esm.js +0 -131
  195. package/dist/components/select.esm.js.map +0 -1
  196. package/dist/components/select.js.map +0 -1
  197. package/dist/components/selection-bar.esm.js +0 -54
  198. package/dist/components/selection-bar.esm.js.map +0 -1
  199. package/dist/components/selection-bar.js.map +0 -1
  200. package/dist/components/separator.esm.js +0 -25
  201. package/dist/components/separator.esm.js.map +0 -1
  202. package/dist/components/separator.js.map +0 -1
  203. package/dist/components/sheet.esm.js +0 -129
  204. package/dist/components/sheet.esm.js.map +0 -1
  205. package/dist/components/sheet.js.map +0 -1
  206. package/dist/components/skeleton.esm.js +0 -18
  207. package/dist/components/skeleton.esm.js.map +0 -1
  208. package/dist/components/skeleton.js.map +0 -1
  209. package/dist/components/slider.esm.js +0 -33
  210. package/dist/components/slider.esm.js.map +0 -1
  211. package/dist/components/slider.js.map +0 -1
  212. package/dist/components/stepper.d.ts +0 -2
  213. package/dist/components/stepper.esm.js +0 -7
  214. package/dist/components/stepper.esm.js.map +0 -1
  215. package/dist/components/stepper.js.map +0 -1
  216. package/dist/components/switch.esm.js +0 -36
  217. package/dist/components/switch.esm.js.map +0 -1
  218. package/dist/components/switch.js.map +0 -1
  219. package/dist/components/table-empty.esm.js +0 -23
  220. package/dist/components/table-empty.esm.js.map +0 -1
  221. package/dist/components/table-empty.js.map +0 -1
  222. package/dist/components/table-mobile.esm.js +0 -92
  223. package/dist/components/table-mobile.esm.js.map +0 -1
  224. package/dist/components/table-mobile.js.map +0 -1
  225. package/dist/components/table.esm.js +0 -157
  226. package/dist/components/table.esm.js.map +0 -1
  227. package/dist/components/table.js.map +0 -1
  228. package/dist/components/tabs.esm.js +0 -47
  229. package/dist/components/tabs.esm.js.map +0 -1
  230. package/dist/components/tabs.js.map +0 -1
  231. package/dist/components/terminal.esm.js +0 -50
  232. package/dist/components/terminal.esm.js.map +0 -1
  233. package/dist/components/terminal.js.map +0 -1
  234. package/dist/components/textarea.esm.js +0 -21
  235. package/dist/components/textarea.esm.js.map +0 -1
  236. package/dist/components/textarea.js.map +0 -1
  237. package/dist/components/tooltip.esm.js +0 -76
  238. package/dist/components/tooltip.esm.js.map +0 -1
  239. package/dist/components/tooltip.js.map +0 -1
  240. package/dist/components/use-toast.esm.js +0 -65
  241. package/dist/components/use-toast.esm.js.map +0 -1
  242. package/dist/components/use-toast.js.map +0 -1
  243. package/dist/confirmation-modal.d.ts +0 -16
  244. package/dist/context-menu.d.ts +0 -41
  245. package/dist/dialog.d.ts +0 -33
  246. package/dist/dropdown-menu.d.ts +0 -16
  247. package/dist/dropzone.d.ts +0 -16
  248. package/dist/image-cropper-modal.d.ts +0 -14
  249. package/dist/image-cropper.d.ts +0 -15
  250. package/dist/index-DACAHwoB.js +0 -35
  251. package/dist/index-DACAHwoB.js.map +0 -1
  252. package/dist/index-Deooizx8.cjs +0 -2
  253. package/dist/index-Deooizx8.cjs.map +0 -1
  254. package/dist/index.esm.js +0 -458
  255. package/dist/index.esm.js.map +0 -1
  256. package/dist/index.js.map +0 -1
  257. package/dist/input.d.ts +0 -8
  258. package/dist/jsx-runtime-BYECrxsp.cjs +0 -31
  259. package/dist/jsx-runtime-BYECrxsp.cjs.map +0 -1
  260. package/dist/jsx-runtime-DGlMoOmv.js +0 -631
  261. package/dist/jsx-runtime-DGlMoOmv.js.map +0 -1
  262. package/dist/label.d.ts +0 -6
  263. package/dist/lib/utils.esm.js +0 -5
  264. package/dist/lib/utils.esm.js.map +0 -1
  265. package/dist/lib/utils.js.map +0 -1
  266. package/dist/loader.d.ts +0 -14
  267. package/dist/loading-placeholder.d.ts +0 -12
  268. package/dist/markdown.d.ts +0 -122
  269. package/dist/mention.d.ts +0 -29
  270. package/dist/modal.d.ts +0 -28
  271. package/dist/monaco-editor.d.ts +0 -76
  272. package/dist/notification.d.ts +0 -9
  273. package/dist/popover.d.ts +0 -10
  274. package/dist/progress.d.ts +0 -6
  275. package/dist/radio-group.d.ts +0 -8
  276. package/dist/scroll-area.d.ts +0 -8
  277. package/dist/select.d.ts +0 -31
  278. package/dist/selection-bar.d.ts +0 -15
  279. package/dist/separator.d.ts +0 -6
  280. package/dist/sheet.d.ts +0 -17
  281. package/dist/skeleton.d.ts +0 -5
  282. package/dist/slider.d.ts +0 -6
  283. package/dist/stepper-modal-CPlBpxWy.cjs +0 -2
  284. package/dist/stepper-modal-CPlBpxWy.cjs.map +0 -1
  285. package/dist/stepper-modal-SYU9mbXs.js.map +0 -1
  286. package/dist/stepper.d.ts +0 -75
  287. package/dist/switch.d.ts +0 -6
  288. package/dist/table-empty.d.ts +0 -13
  289. package/dist/table-mobile.d.ts +0 -37
  290. package/dist/table.d.ts +0 -37
  291. package/dist/tabs.d.ts +0 -12
  292. package/dist/terminal.d.ts +0 -47
  293. package/dist/textarea.d.ts +0 -8
  294. package/dist/tooltip.d.ts +0 -12
  295. package/dist/use-toast.d.ts +0 -28
  296. package/dist/utils-DSKoFOjv.cjs +0 -2
  297. package/dist/utils-DSKoFOjv.cjs.map +0 -1
  298. package/dist/utils-qaFjX9_3.js +0 -2279
  299. package/dist/utils-qaFjX9_3.js.map +0 -1
  300. package/dist/utils.d.ts +0 -5
@@ -1,154 +0,0 @@
1
- import { j as o } from "../jsx-runtime-DGlMoOmv.js";
2
- import x, { forwardRef as f } from "react";
3
- import { MentionsInput as b, Mention as v } from "react-mentions";
4
- import { c as n } from "../utils-qaFjX9_3.js";
5
- const y = (e, t, i, a, r) => /* @__PURE__ */ o.jsxs(
6
- "div",
7
- {
8
- className: n(
9
- "flex items-center gap-2 p-2 text-sm",
10
- r ? "bg-primary/10 text-primary" : "bg-transparent"
11
- ),
12
- children: [
13
- e.avatar && /* @__PURE__ */ o.jsx("div", { className: "flex-shrink-0 h-6 w-6 rounded-full overflow-hidden", children: /* @__PURE__ */ o.jsx(
14
- "img",
15
- {
16
- src: e.avatar,
17
- alt: e.display,
18
- className: "h-full w-full object-cover"
19
- }
20
- ) }),
21
- /* @__PURE__ */ o.jsxs("div", { className: "flex flex-col", children: [
22
- /* @__PURE__ */ o.jsx("span", { className: "font-medium", children: e.display }),
23
- e.subtitle && /* @__PURE__ */ o.jsx("span", { className: "text-xs text-muted-foreground", children: e.subtitle })
24
- ] })
25
- ]
26
- }
27
- ), w = (e, t) => `@${t}`, _ = f(
28
- ({
29
- value: e,
30
- onChange: t,
31
- placeholder: i = "Type @ to mention someone",
32
- data: a,
33
- disabled: r = !1,
34
- className: s,
35
- inputClassName: d,
36
- suggestionItemClassName: l,
37
- trigger: m = "@",
38
- displayTransform: p = w,
39
- onKeyDown: u
40
- }, c) => {
41
- const g = {
42
- control: {
43
- fontSize: 14,
44
- fontWeight: "normal",
45
- lineHeight: "1.5",
46
- minHeight: "60px"
47
- },
48
- highlighter: {
49
- border: "0",
50
- boxSizing: "border-box",
51
- overflow: "hidden",
52
- minHeight: "60px"
53
- },
54
- input: {
55
- padding: "12px 12px",
56
- border: "0",
57
- overflow: "auto",
58
- fontSize: "14px",
59
- outline: "none",
60
- backgroundColor: "transparent",
61
- fontFamily: "inherit",
62
- lineHeight: "1.5",
63
- minHeight: "60px",
64
- margin: 0
65
- },
66
- suggestions: {
67
- marginTop: "0px",
68
- list: {
69
- backgroundColor: "var(--suggestion-background, hsl(var(--background)))",
70
- border: "1px solid hsl(var(--border))",
71
- boxShadow: "0 4px 12px rgba(0, 0, 0, 0.1)",
72
- overflow: "hidden",
73
- zIndex: 100,
74
- maxHeight: "250px",
75
- overflowY: "auto",
76
- color: "hsl(var(--foreground))",
77
- minWidth: "280px",
78
- width: "auto"
79
- },
80
- item: {
81
- padding: "0",
82
- borderBottom: "1px solid hsl(var(--border))"
83
- }
84
- }
85
- }, h = {
86
- mentions: {
87
- normal: {
88
- color: "inherit",
89
- fontWeight: "normal"
90
- },
91
- highlight: {
92
- color: "hsl(var(--primary))",
93
- fontWeight: "500",
94
- backgroundColor: "transparent",
95
- padding: "0",
96
- margin: "0",
97
- boxShadow: "none",
98
- borderRadius: "0",
99
- textDecoration: "none"
100
- }
101
- }
102
- };
103
- return x.useEffect(() => {
104
- typeof window < "u" && document.documentElement.style.setProperty(
105
- "--suggestion-background",
106
- "hsl(var(--background))"
107
- );
108
- }, []), /* @__PURE__ */ o.jsx(
109
- "div",
110
- {
111
- ref: c,
112
- className: n("relative w-full", s),
113
- children: /* @__PURE__ */ o.jsx(
114
- b,
115
- {
116
- value: e,
117
- onChange: t,
118
- style: { ...g, ...h },
119
- placeholder: i,
120
- disabled: r,
121
- a11ySuggestionsListLabel: "Suggested mentions",
122
- className: n(
123
- "w-full rounded-md bg-transparent text-sm placeholder:text-muted-foreground resize-none font-normal",
124
- d
125
- ),
126
- suggestionsPortalHost: typeof document < "u" ? document.body : void 0,
127
- allowSuggestionsAboveCursor: !0,
128
- onKeyDown: u,
129
- children: /* @__PURE__ */ o.jsx(
130
- v,
131
- {
132
- trigger: m,
133
- data: a,
134
- renderSuggestion: y,
135
- displayTransform: p,
136
- appendSpaceOnAdd: !0,
137
- className: n(
138
- "text-primary font-medium",
139
- l
140
- ),
141
- markup: "@[__display__](__id__)"
142
- }
143
- )
144
- }
145
- )
146
- }
147
- );
148
- }
149
- );
150
- _.displayName = "Mention";
151
- export {
152
- _ as Mention
153
- };
154
- //# sourceMappingURL=mention.esm.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mention.esm.js","sources":["../../src/components/mention.tsx"],"sourcesContent":["import React, { forwardRef } from \"react\";\nimport { MentionsInput, MentionsInputStyle, Mention as ReactMention, SuggestionDataItem } from \"react-mentions\";\nimport { cn } from \"@/lib/utils\";\n\nexport interface MentionUserData extends SuggestionDataItem {\n avatar?: string;\n subtitle?: string;\n}\n\nexport interface MentionProps {\n value: string;\n onChange: (event: { target: { value: string } }) => void;\n placeholder?: string;\n data: MentionUserData[];\n disabled?: boolean;\n className?: string;\n inputClassName?: string;\n suggestionItemClassName?: string;\n trigger?: string;\n displayTransform?: (id: string, display: string) => string;\n onKeyDown?: (e: React.KeyboardEvent) => void;\n}\n\nconst defaultRenderSuggestion = (\n suggestion: MentionUserData,\n _search: string,\n _highlightedDisplay: React.ReactNode,\n _index: number,\n focused: boolean\n) => (\n <div\n className={cn(\n \"flex items-center gap-2 p-2 text-sm\",\n focused ? \"bg-primary/10 text-primary\" : \"bg-transparent\"\n )}\n >\n {suggestion.avatar && (\n <div className=\"flex-shrink-0 h-6 w-6 rounded-full overflow-hidden\">\n <img\n src={suggestion.avatar}\n alt={suggestion.display}\n className=\"h-full w-full object-cover\"\n />\n </div>\n )}\n <div className=\"flex flex-col\">\n <span className=\"font-medium\">{suggestion.display}</span>\n {suggestion.subtitle && (\n <span className=\"text-xs text-muted-foreground\">{suggestion.subtitle}</span>\n )}\n </div>\n </div>\n);\n\nconst defaultDisplayTransform = (_id: string, display: string) => `@${display}`;\n\nconst MentionComponent = forwardRef<HTMLDivElement, MentionProps>(\n (\n {\n value,\n onChange,\n placeholder = \"Type @ to mention someone\",\n data,\n disabled = false,\n className,\n inputClassName,\n suggestionItemClassName,\n trigger = \"@\",\n displayTransform = defaultDisplayTransform,\n onKeyDown,\n },\n ref\n ) => {\n // Custom styles to match your UI\n const mentionInputStyle: MentionsInputStyle = {\n control: {\n fontSize: 14,\n fontWeight: 'normal',\n lineHeight: '1.5',\n minHeight: '60px',\n },\n highlighter: {\n border: '0',\n boxSizing: 'border-box',\n overflow: 'hidden',\n minHeight: '60px',\n },\n input: {\n padding: '12px 12px',\n border: '0',\n overflow: 'auto',\n fontSize: '14px',\n outline: 'none',\n backgroundColor: 'transparent',\n fontFamily: 'inherit',\n lineHeight: '1.5',\n minHeight: '60px',\n margin: 0,\n },\n suggestions: {\n marginTop: \"0px\",\n list: {\n backgroundColor: \"var(--suggestion-background, hsl(var(--background)))\",\n border: \"1px solid hsl(var(--border))\",\n boxShadow: \"0 4px 12px rgba(0, 0, 0, 0.1)\",\n overflow: \"hidden\",\n zIndex: 100,\n maxHeight: \"250px\",\n overflowY: \"auto\",\n color: \"hsl(var(--foreground))\",\n minWidth: \"280px\",\n width: \"auto\"\n },\n item: {\n padding: \"0\",\n borderBottom: \"1px solid hsl(var(--border))\"\n },\n },\n };\n\n // Custom styles for the mention component (the highlight)\n const customStyle = {\n mentions: {\n normal: {\n color: \"inherit\", \n fontWeight: \"normal\"\n },\n highlight: {\n color: \"hsl(var(--primary))\",\n fontWeight: \"500\",\n backgroundColor: \"transparent\",\n padding: \"0\",\n margin: \"0\",\n boxShadow: \"none\",\n borderRadius: \"0\",\n textDecoration: \"none\"\n }\n }\n };\n\n // Add theme CSS variables to document when component mounts\n React.useEffect(() => {\n if (typeof window !== 'undefined') {\n document.documentElement.style.setProperty(\n '--suggestion-background', \n 'hsl(var(--background))'\n );\n }\n }, []);\n\n return (\n <div\n ref={ref}\n className={cn(\"relative w-full\", className)}\n >\n <MentionsInput\n value={value}\n onChange={onChange}\n style={{...mentionInputStyle, ...customStyle}}\n placeholder={placeholder}\n disabled={disabled}\n a11ySuggestionsListLabel=\"Suggested mentions\"\n className={cn(\n \"w-full rounded-md bg-transparent text-sm placeholder:text-muted-foreground resize-none font-normal\",\n inputClassName\n )}\n suggestionsPortalHost={typeof document !== \"undefined\" ? document.body : undefined}\n allowSuggestionsAboveCursor={true}\n onKeyDown={onKeyDown}\n >\n <ReactMention\n trigger={trigger}\n data={data}\n renderSuggestion={defaultRenderSuggestion}\n displayTransform={displayTransform}\n appendSpaceOnAdd\n className={cn(\n \"text-primary font-medium\",\n suggestionItemClassName\n )}\n markup=\"@[__display__](__id__)\"\n />\n </MentionsInput>\n </div>\n );\n }\n);\n\nMentionComponent.displayName = \"Mention\";\n\nexport { MentionComponent as Mention }; "],"names":["defaultRenderSuggestion","suggestion","_search","_highlightedDisplay","_index","focused","jsxs","cn","jsx","defaultDisplayTransform","_id","display","MentionComponent","forwardRef","value","onChange","placeholder","data","disabled","className","inputClassName","suggestionItemClassName","trigger","displayTransform","onKeyDown","ref","mentionInputStyle","customStyle","React","MentionsInput","ReactMention"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"mention.js","sources":["../../src/components/mention.tsx"],"sourcesContent":["import React, { forwardRef } from \"react\";\nimport { MentionsInput, MentionsInputStyle, Mention as ReactMention, SuggestionDataItem } from \"react-mentions\";\nimport { cn } from \"@/lib/utils\";\n\nexport interface MentionUserData extends SuggestionDataItem {\n avatar?: string;\n subtitle?: string;\n}\n\nexport interface MentionProps {\n value: string;\n onChange: (event: { target: { value: string } }) => void;\n placeholder?: string;\n data: MentionUserData[];\n disabled?: boolean;\n className?: string;\n inputClassName?: string;\n suggestionItemClassName?: string;\n trigger?: string;\n displayTransform?: (id: string, display: string) => string;\n onKeyDown?: (e: React.KeyboardEvent) => void;\n}\n\nconst defaultRenderSuggestion = (\n suggestion: MentionUserData,\n _search: string,\n _highlightedDisplay: React.ReactNode,\n _index: number,\n focused: boolean\n) => (\n <div\n className={cn(\n \"flex items-center gap-2 p-2 text-sm\",\n focused ? \"bg-primary/10 text-primary\" : \"bg-transparent\"\n )}\n >\n {suggestion.avatar && (\n <div className=\"flex-shrink-0 h-6 w-6 rounded-full overflow-hidden\">\n <img\n src={suggestion.avatar}\n alt={suggestion.display}\n className=\"h-full w-full object-cover\"\n />\n </div>\n )}\n <div className=\"flex flex-col\">\n <span className=\"font-medium\">{suggestion.display}</span>\n {suggestion.subtitle && (\n <span className=\"text-xs text-muted-foreground\">{suggestion.subtitle}</span>\n )}\n </div>\n </div>\n);\n\nconst defaultDisplayTransform = (_id: string, display: string) => `@${display}`;\n\nconst MentionComponent = forwardRef<HTMLDivElement, MentionProps>(\n (\n {\n value,\n onChange,\n placeholder = \"Type @ to mention someone\",\n data,\n disabled = false,\n className,\n inputClassName,\n suggestionItemClassName,\n trigger = \"@\",\n displayTransform = defaultDisplayTransform,\n onKeyDown,\n },\n ref\n ) => {\n // Custom styles to match your UI\n const mentionInputStyle: MentionsInputStyle = {\n control: {\n fontSize: 14,\n fontWeight: 'normal',\n lineHeight: '1.5',\n minHeight: '60px',\n },\n highlighter: {\n border: '0',\n boxSizing: 'border-box',\n overflow: 'hidden',\n minHeight: '60px',\n },\n input: {\n padding: '12px 12px',\n border: '0',\n overflow: 'auto',\n fontSize: '14px',\n outline: 'none',\n backgroundColor: 'transparent',\n fontFamily: 'inherit',\n lineHeight: '1.5',\n minHeight: '60px',\n margin: 0,\n },\n suggestions: {\n marginTop: \"0px\",\n list: {\n backgroundColor: \"var(--suggestion-background, hsl(var(--background)))\",\n border: \"1px solid hsl(var(--border))\",\n boxShadow: \"0 4px 12px rgba(0, 0, 0, 0.1)\",\n overflow: \"hidden\",\n zIndex: 100,\n maxHeight: \"250px\",\n overflowY: \"auto\",\n color: \"hsl(var(--foreground))\",\n minWidth: \"280px\",\n width: \"auto\"\n },\n item: {\n padding: \"0\",\n borderBottom: \"1px solid hsl(var(--border))\"\n },\n },\n };\n\n // Custom styles for the mention component (the highlight)\n const customStyle = {\n mentions: {\n normal: {\n color: \"inherit\", \n fontWeight: \"normal\"\n },\n highlight: {\n color: \"hsl(var(--primary))\",\n fontWeight: \"500\",\n backgroundColor: \"transparent\",\n padding: \"0\",\n margin: \"0\",\n boxShadow: \"none\",\n borderRadius: \"0\",\n textDecoration: \"none\"\n }\n }\n };\n\n // Add theme CSS variables to document when component mounts\n React.useEffect(() => {\n if (typeof window !== 'undefined') {\n document.documentElement.style.setProperty(\n '--suggestion-background', \n 'hsl(var(--background))'\n );\n }\n }, []);\n\n return (\n <div\n ref={ref}\n className={cn(\"relative w-full\", className)}\n >\n <MentionsInput\n value={value}\n onChange={onChange}\n style={{...mentionInputStyle, ...customStyle}}\n placeholder={placeholder}\n disabled={disabled}\n a11ySuggestionsListLabel=\"Suggested mentions\"\n className={cn(\n \"w-full rounded-md bg-transparent text-sm placeholder:text-muted-foreground resize-none font-normal\",\n inputClassName\n )}\n suggestionsPortalHost={typeof document !== \"undefined\" ? document.body : undefined}\n allowSuggestionsAboveCursor={true}\n onKeyDown={onKeyDown}\n >\n <ReactMention\n trigger={trigger}\n data={data}\n renderSuggestion={defaultRenderSuggestion}\n displayTransform={displayTransform}\n appendSpaceOnAdd\n className={cn(\n \"text-primary font-medium\",\n suggestionItemClassName\n )}\n markup=\"@[__display__](__id__)\"\n />\n </MentionsInput>\n </div>\n );\n }\n);\n\nMentionComponent.displayName = \"Mention\";\n\nexport { MentionComponent as Mention }; "],"names":["defaultRenderSuggestion","suggestion","_search","_highlightedDisplay","_index","focused","jsxs","cn","jsx","defaultDisplayTransform","_id","display","MentionComponent","forwardRef","value","onChange","placeholder","data","disabled","className","inputClassName","suggestionItemClassName","trigger","displayTransform","onKeyDown","ref","mentionInputStyle","customStyle","React","MentionsInput","ReactMention"],"mappings":"iNAuBMA,EAA0B,CAC9BC,EACAC,EACAC,EACAC,EACAC,IAEAC,EAAAA,kBAAAA,KAAC,MAAA,CACC,UAAWC,EAAAA,GACT,sCACAF,EAAU,6BAA+B,gBAAA,EAG1C,SAAA,CAAAJ,EAAW,QACVO,wBAAC,MAAA,CAAI,UAAU,qDACb,SAAAA,EAAAA,kBAAAA,IAAC,MAAA,CACC,IAAKP,EAAW,OAChB,IAAKA,EAAW,QAChB,UAAU,4BAAA,CAAA,EAEd,EAEFK,EAAAA,kBAAAA,KAAC,MAAA,CAAI,UAAU,gBACb,SAAA,CAAAE,EAAAA,kBAAAA,IAAC,OAAA,CAAK,UAAU,cAAe,SAAAP,EAAW,QAAQ,EACjDA,EAAW,UACVO,EAAAA,kBAAAA,IAAC,QAAK,UAAU,gCAAiC,WAAW,QAAA,CAAS,CAAA,CAAA,CAEzE,CAAA,CAAA,CACF,EAGIC,EAA0B,CAACC,EAAaC,IAAoB,IAAIA,CAAO,GAEvEC,EAAmBC,EAAAA,WACvB,CACE,CACE,MAAAC,EACA,SAAAC,EACA,YAAAC,EAAc,4BACd,KAAAC,EACA,SAAAC,EAAW,GACX,UAAAC,EACA,eAAAC,EACA,wBAAAC,EACA,QAAAC,EAAU,IACV,iBAAAC,EAAmBd,EACnB,UAAAe,CAAA,EAEFC,IACG,CAEH,MAAMC,EAAwC,CAC5C,QAAS,CACP,SAAU,GACV,WAAY,SACZ,WAAY,MACZ,UAAW,MAAA,EAEb,YAAa,CACX,OAAQ,IACR,UAAW,aACX,SAAU,SACV,UAAW,MAAA,EAEb,MAAO,CACL,QAAS,YACT,OAAQ,IACR,SAAU,OACV,SAAU,OACV,QAAS,OACT,gBAAiB,cACjB,WAAY,UACZ,WAAY,MACZ,UAAW,OACX,OAAQ,CAAA,EAEV,YAAa,CACX,UAAW,MACX,KAAM,CACJ,gBAAiB,uDACjB,OAAQ,+BACR,UAAW,gCACX,SAAU,SACV,OAAQ,IACR,UAAW,QACX,UAAW,OACX,MAAO,yBACP,SAAU,QACV,MAAO,MAAA,EAET,KAAM,CACJ,QAAS,IACT,aAAc,8BAAA,CAChB,CACF,EAIIC,EAAc,CAClB,SAAU,CACR,OAAQ,CACN,MAAO,UACP,WAAY,QAAA,EAEd,UAAW,CACT,MAAO,sBACP,WAAY,MACZ,gBAAiB,cACjB,QAAS,IACT,OAAQ,IACR,UAAW,OACX,aAAc,IACd,eAAgB,MAAA,CAClB,CACF,EAIF,OAAAC,EAAM,UAAU,IAAM,CAChB,OAAO,OAAW,KACpB,SAAS,gBAAgB,MAAM,YAC7B,0BACA,wBAAA,CAGN,EAAG,CAAA,CAAE,EAGHpB,EAAAA,kBAAAA,IAAC,MAAA,CACC,IAAAiB,EACA,UAAWlB,EAAAA,GAAG,kBAAmBY,CAAS,EAE1C,SAAAX,EAAAA,kBAAAA,IAACqB,EAAAA,cAAA,CACC,MAAAf,EACA,SAAAC,EACA,MAAO,CAAC,GAAGW,EAAmB,GAAGC,CAAA,EACjC,YAAAX,EACA,SAAAE,EACA,yBAAyB,qBACzB,UAAWX,EAAAA,GACT,qGACAa,CAAA,EAEF,sBAAuB,OAAO,SAAa,IAAc,SAAS,KAAO,OACzE,4BAA6B,GAC7B,UAAAI,EAEA,SAAAhB,EAAAA,kBAAAA,IAACsB,EAAAA,QAAA,CACC,QAAAR,EACA,KAAAL,EACA,iBAAkBjB,EAClB,iBAAAuB,EACA,iBAAgB,GAChB,UAAWhB,EAAAA,GACT,2BACAc,CAAA,EAEF,OAAO,wBAAA,CAAA,CACT,CAAA,CACF,CAAA,CAGN,CACF,EAEAT,EAAiB,YAAc"}
@@ -1,136 +0,0 @@
1
- import { j as e } from "../jsx-runtime-DGlMoOmv.js";
2
- import { createPortal as E } from "react-dom";
3
- import { AnimatePresence as z, motion as h } from "framer-motion";
4
- import { X as F } from "lucide-react";
5
- import { c as n } from "../utils-qaFjX9_3.js";
6
- import { useCallback as H, useEffect as L } from "react";
7
- import { Sheet as P } from "./sheet.esm.js";
8
- const A = (t) => {
9
- switch (t) {
10
- case "sm":
11
- return { width: "100%", maxWidth: "384px" };
12
- case "md":
13
- return { width: "100%", maxWidth: "448px" };
14
- case "lg":
15
- return { width: "100%", maxWidth: "512px" };
16
- case "xl":
17
- return { width: "100%", maxWidth: "70%" };
18
- case "2xl":
19
- return { width: "80%", maxWidth: "1200px" };
20
- case "3xl":
21
- return { width: "90%", maxWidth: "1600px" };
22
- case "full":
23
- return { width: "100%" };
24
- default:
25
- return { width: "100%", maxWidth: "448px" };
26
- }
27
- };
28
- function B({
29
- isOpen: t,
30
- onClose: i,
31
- title: s,
32
- description: r,
33
- icon: d,
34
- children: u,
35
- footer: a,
36
- size: j = "md",
37
- showClose: p = !0,
38
- className: f,
39
- isContentScrollable: g = !0,
40
- mainClassName: w,
41
- contentClassName: b,
42
- header: l,
43
- headerClassName: v,
44
- zIndexClassName: y = "z-[50]",
45
- mobileSheet: c
46
- }) {
47
- if (c != null && c.enable && t && window.innerWidth < 768) {
48
- const { position: o } = c, k = l || (s || r || d ? /* @__PURE__ */ e.jsxs("div", { className: "flex items-center gap-3", children: [
49
- d && /* @__PURE__ */ e.jsx("div", { className: "h-8 w-8 rounded-lg flex items-center justify-center", children: d }),
50
- /* @__PURE__ */ e.jsxs("div", { children: [
51
- s && /* @__PURE__ */ e.jsx("h2", { className: "text-sm font-medium", children: s }),
52
- r && /* @__PURE__ */ e.jsx("p", { className: "text-sm text-muted-foreground", children: r })
53
- ] })
54
- ] }) : void 0), W = /* @__PURE__ */ e.jsx("div", { className: "flex gap-2 justify-end", children: a });
55
- return /* @__PURE__ */ e.jsx(
56
- P,
57
- {
58
- isOpen: t,
59
- onClose: i,
60
- header: k,
61
- footer: W,
62
- className: n(f, "w-full max-w-full"),
63
- position: o || "bottom",
64
- headerClassName: n(v, "w-full max-w-full"),
65
- enableFullscreen: !1,
66
- children: u
67
- }
68
- );
69
- }
70
- const x = H((o) => {
71
- o.key === "Escape" && t && i();
72
- }, [t, i]);
73
- L(() => (document.addEventListener("keydown", x), () => document.removeEventListener("keydown", x)), [x]);
74
- const m = s || r || d || l, N = /* @__PURE__ */ e.jsx(z, { children: t && /* @__PURE__ */ e.jsx("div", { className: n("fixed inset-0 z-50 overflow-hidden", y), children: /* @__PURE__ */ e.jsxs("div", { className: n("min-h-full flex items-center justify-center p-4", w), children: [
75
- /* @__PURE__ */ e.jsx(
76
- h.div,
77
- {
78
- initial: { opacity: 0 },
79
- animate: { opacity: 1 },
80
- exit: { opacity: 0 },
81
- className: "fixed inset-0 bg-background/80 backdrop-blur-sm",
82
- onClick: i
83
- }
84
- ),
85
- /* @__PURE__ */ e.jsxs(
86
- h.div,
87
- {
88
- initial: { opacity: 0, scale: 0.95 },
89
- animate: { opacity: 1, scale: 1 },
90
- exit: { opacity: 0, scale: 0.95 },
91
- transition: { duration: 0.1, ease: "easeOut" },
92
- className: n(
93
- "relative transform rounded-lg bg-background shadow-xl border border-border/50 flex flex-col max-h-[85vh] overflow-hidden",
94
- f
95
- ),
96
- style: A(j),
97
- children: [
98
- m && /* @__PURE__ */ e.jsxs("div", { className: "flex-shrink-0 rounded-t-lg bg-card flex items-center justify-between p-2 border-b border-border/50", children: [
99
- l || /* @__PURE__ */ e.jsxs("div", { className: "flex items-center gap-3", children: [
100
- d && /* @__PURE__ */ e.jsx("div", { className: "h-8 w-8 rounded-lg flex items-center justify-center", children: d }),
101
- /* @__PURE__ */ e.jsxs("div", { children: [
102
- s && /* @__PURE__ */ e.jsx("h2", { className: "text-sm font-small", children: s }),
103
- r && /* @__PURE__ */ e.jsx("p", { className: "text-sm text-muted-foreground", children: r })
104
- ] })
105
- ] }),
106
- p && /* @__PURE__ */ e.jsx(
107
- "button",
108
- {
109
- onClick: i,
110
- className: "p-1.5 rounded-md hover:bg-muted text-muted-foreground",
111
- children: /* @__PURE__ */ e.jsxs("div", { className: "flex justify-center items-center", children: [
112
- /* @__PURE__ */ e.jsx(F, { className: "h-4 w-4" }),
113
- /* @__PURE__ */ e.jsx("kbd", { className: "ml-2 text-[10px] text-muted-foreground bg-muted px-1.5 py-0.5 rounded", children: "ESC" })
114
- ] })
115
- }
116
- )
117
- ] }),
118
- /* @__PURE__ */ e.jsx("div", { className: n(
119
- "flex-1 min-h-0",
120
- g ? "overflow-y-auto" : "",
121
- !a && !m ? "rounded-lg" : "",
122
- !a && m ? "rounded-b-lg" : "",
123
- a && !m ? "rounded-t-lg" : "",
124
- b
125
- ), children: u }),
126
- a && /* @__PURE__ */ e.jsx("div", { className: "flex-shrink-0 flex items-center justify-end gap-2 px-4 py-3 border-t border-border/50 bg-card rounded-b-lg", children: a })
127
- ]
128
- }
129
- )
130
- ] }) }) });
131
- return E(N, document.body);
132
- }
133
- export {
134
- B as Modal
135
- };
136
- //# sourceMappingURL=modal.esm.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"modal.esm.js","sources":["../../src/components/modal.tsx"],"sourcesContent":["import { createPortal } from 'react-dom';\nimport { AnimatePresence, motion } from 'framer-motion';\nimport { X } from 'lucide-react';\nimport { cn } from '@/lib/utils';\nimport { useEffect, useCallback } from 'react';\nimport { Sheet } from './sheet';\n\nexport interface ModalProps {\n isOpen: boolean;\n onClose: () => void;\n title?: string;\n description?: string | React.ReactNode;\n icon?: React.ReactNode;\n children: React.ReactNode;\n footer?: React.ReactNode;\n size?: 'sm' | 'md' | 'lg' | 'xl' | '2xl' | 'full' | '3xl';\n showClose?: boolean;\n className?: string;\n mainClassName?: string;\n isContentScrollable?: boolean;\n header?: React.ReactNode;\n headerClassName?: string;\n contentClassName?: string;\n zIndexClassName?: string;\n mobileSheet?: {\n enable: boolean;\n position?: 'left' | 'right' | 'bottom';\n };\n}\n\nconst getSizeStyles = (size: 'sm' | 'md' | 'lg' | 'xl' | '2xl' | 'full' | '3xl') => {\n switch (size) {\n case 'sm':\n return { width: '100%', maxWidth: '384px' }; // max-w-sm equivalent\n case 'md':\n return { width: '100%', maxWidth: '448px' }; // max-w-md equivalent\n case 'lg':\n return { width: '100%', maxWidth: '512px' }; // max-w-lg equivalent\n case 'xl':\n return { width: '100%', maxWidth: '70%' };\n case '2xl':\n return { width: '80%', maxWidth: '1200px' };\n case '3xl':\n return { width: '90%', maxWidth: '1600px' };\n case 'full':\n return { width: '100%' };\n default:\n return { width: '100%', maxWidth: '448px' };\n }\n};\n\nexport function Modal({\n isOpen,\n onClose,\n title,\n description,\n icon,\n children,\n footer,\n size = 'md',\n showClose = true,\n className,\n isContentScrollable = true,\n mainClassName,\n contentClassName,\n header,\n headerClassName,\n zIndexClassName = 'z-[50]',\n mobileSheet,\n}: ModalProps) {\n\n // If mobileSheet is true, render Sheet instead\n if (mobileSheet?.enable && isOpen && window.innerWidth < 768) {\n const { position } = mobileSheet;\n\n // Create header content for sheet if we have title, description, or icon\n const sheetHeader = header || (title || description || icon ? (\n <div className=\"flex items-center gap-3\">\n {icon && (\n <div className=\"h-8 w-8 rounded-lg flex items-center justify-center\">\n {icon}\n </div>\n )}\n <div>\n {title && <h2 className=\"text-sm font-medium\">{title}</h2>}\n {description && <p className=\"text-sm text-muted-foreground\">{description}</p>}\n </div>\n </div>\n ) : undefined);\n\n const sheetFooter = (\n <div className=\"flex gap-2 justify-end\">\n {footer}\n </div>\n );\n\n return (\n <Sheet\n isOpen={isOpen}\n onClose={onClose}\n header={sheetHeader}\n footer={sheetFooter}\n className={cn(className, 'w-full max-w-full')}\n position={position || 'bottom'}\n headerClassName={cn(headerClassName, 'w-full max-w-full')}\n enableFullscreen={false}\n >\n {children}\n </Sheet>\n );\n }\n\n const handleKeyDown = useCallback((e: KeyboardEvent) => {\n if (e.key === 'Escape' && isOpen) {\n onClose();\n }\n }, [isOpen, onClose]);\n\n useEffect(() => {\n document.addEventListener('keydown', handleKeyDown);\n return () => document.removeEventListener('keydown', handleKeyDown);\n }, [handleKeyDown]);\n \n const isHeader = title || description || icon || header;\n const content = (\n <AnimatePresence>\n {isOpen && (\n <div className={cn(\"fixed inset-0 z-50 overflow-hidden\", zIndexClassName)}>\n <div className={cn(\"min-h-full flex items-center justify-center p-4\", mainClassName)}>\n <motion.div\n initial={{ opacity: 0 }}\n animate={{ opacity: 1 }}\n exit={{ opacity: 0 }}\n className=\"fixed inset-0 bg-background/80 backdrop-blur-sm\"\n onClick={onClose}\n />\n \n <motion.div\n initial={{ opacity: 0, scale: 0.95 }}\n animate={{ opacity: 1, scale: 1 }}\n exit={{ opacity: 0, scale: 0.95 }}\n transition={{ duration: 0.1, ease: \"easeOut\" }}\n className={cn(\n \"relative transform rounded-lg bg-background shadow-xl border border-border/50 flex flex-col max-h-[85vh] overflow-hidden\",\n className\n )}\n style={getSizeStyles(size)}\n >\n {/* Header - Fixed */}\n {isHeader && (\n <div className=\"flex-shrink-0 rounded-t-lg bg-card flex items-center justify-between p-2 border-b border-border/50\">\n \n {header ? header: (\n <div className=\"flex items-center gap-3\">\n {icon && (\n <div className=\"h-8 w-8 rounded-lg flex items-center justify-center\">\n {icon}\n </div>\n )}\n <div>\n {title && <h2 className=\"text-sm font-small\">{title}</h2>}\n {description && <p className=\"text-sm text-muted-foreground\">{description}</p>}\n </div>\n </div>\n )}\n {showClose && (\n <button\n onClick={onClose}\n className=\"p-1.5 rounded-md hover:bg-muted text-muted-foreground\"\n >\n <div className=\"flex justify-center items-center\">\n <X className=\"h-4 w-4\" />\n <kbd className=\"ml-2 text-[10px] text-muted-foreground bg-muted px-1.5 py-0.5 rounded\">\n ESC\n </kbd>\n </div>\n </button>\n )}\n </div>\n )}\n\n {/* Content - Scrollable */}\n <div className={cn(\n \"flex-1 min-h-0\", \n isContentScrollable ? 'overflow-y-auto' : '', \n !footer && !isHeader ? 'rounded-lg' : '',\n !footer && isHeader ? 'rounded-b-lg' : '', \n footer && !isHeader ? 'rounded-t-lg' : '',\n contentClassName \n )}>\n {children}\n </div>\n\n {/* Footer - Fixed */}\n {footer && (\n <div className=\"flex-shrink-0 flex items-center justify-end gap-2 px-4 py-3 border-t border-border/50 bg-card rounded-b-lg\">\n {footer}\n </div>\n )}\n </motion.div>\n </div>\n </div>\n )}\n </AnimatePresence>\n );\n\n return createPortal(content, document.body);\n}"],"names":["getSizeStyles","size","Modal","isOpen","onClose","title","description","icon","children","footer","showClose","className","isContentScrollable","mainClassName","contentClassName","header","headerClassName","zIndexClassName","mobileSheet","position","sheetHeader","jsxs","jsx","sheetFooter","Sheet","cn","handleKeyDown","useCallback","e","useEffect","isHeader","content","AnimatePresence","motion","X","createPortal"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"modal.js","sources":["../../src/components/modal.tsx"],"sourcesContent":["import { createPortal } from 'react-dom';\nimport { AnimatePresence, motion } from 'framer-motion';\nimport { X } from 'lucide-react';\nimport { cn } from '@/lib/utils';\nimport { useEffect, useCallback } from 'react';\nimport { Sheet } from './sheet';\n\nexport interface ModalProps {\n isOpen: boolean;\n onClose: () => void;\n title?: string;\n description?: string | React.ReactNode;\n icon?: React.ReactNode;\n children: React.ReactNode;\n footer?: React.ReactNode;\n size?: 'sm' | 'md' | 'lg' | 'xl' | '2xl' | 'full' | '3xl';\n showClose?: boolean;\n className?: string;\n mainClassName?: string;\n isContentScrollable?: boolean;\n header?: React.ReactNode;\n headerClassName?: string;\n contentClassName?: string;\n zIndexClassName?: string;\n mobileSheet?: {\n enable: boolean;\n position?: 'left' | 'right' | 'bottom';\n };\n}\n\nconst getSizeStyles = (size: 'sm' | 'md' | 'lg' | 'xl' | '2xl' | 'full' | '3xl') => {\n switch (size) {\n case 'sm':\n return { width: '100%', maxWidth: '384px' }; // max-w-sm equivalent\n case 'md':\n return { width: '100%', maxWidth: '448px' }; // max-w-md equivalent\n case 'lg':\n return { width: '100%', maxWidth: '512px' }; // max-w-lg equivalent\n case 'xl':\n return { width: '100%', maxWidth: '70%' };\n case '2xl':\n return { width: '80%', maxWidth: '1200px' };\n case '3xl':\n return { width: '90%', maxWidth: '1600px' };\n case 'full':\n return { width: '100%' };\n default:\n return { width: '100%', maxWidth: '448px' };\n }\n};\n\nexport function Modal({\n isOpen,\n onClose,\n title,\n description,\n icon,\n children,\n footer,\n size = 'md',\n showClose = true,\n className,\n isContentScrollable = true,\n mainClassName,\n contentClassName,\n header,\n headerClassName,\n zIndexClassName = 'z-[50]',\n mobileSheet,\n}: ModalProps) {\n\n // If mobileSheet is true, render Sheet instead\n if (mobileSheet?.enable && isOpen && window.innerWidth < 768) {\n const { position } = mobileSheet;\n\n // Create header content for sheet if we have title, description, or icon\n const sheetHeader = header || (title || description || icon ? (\n <div className=\"flex items-center gap-3\">\n {icon && (\n <div className=\"h-8 w-8 rounded-lg flex items-center justify-center\">\n {icon}\n </div>\n )}\n <div>\n {title && <h2 className=\"text-sm font-medium\">{title}</h2>}\n {description && <p className=\"text-sm text-muted-foreground\">{description}</p>}\n </div>\n </div>\n ) : undefined);\n\n const sheetFooter = (\n <div className=\"flex gap-2 justify-end\">\n {footer}\n </div>\n );\n\n return (\n <Sheet\n isOpen={isOpen}\n onClose={onClose}\n header={sheetHeader}\n footer={sheetFooter}\n className={cn(className, 'w-full max-w-full')}\n position={position || 'bottom'}\n headerClassName={cn(headerClassName, 'w-full max-w-full')}\n enableFullscreen={false}\n >\n {children}\n </Sheet>\n );\n }\n\n const handleKeyDown = useCallback((e: KeyboardEvent) => {\n if (e.key === 'Escape' && isOpen) {\n onClose();\n }\n }, [isOpen, onClose]);\n\n useEffect(() => {\n document.addEventListener('keydown', handleKeyDown);\n return () => document.removeEventListener('keydown', handleKeyDown);\n }, [handleKeyDown]);\n \n const isHeader = title || description || icon || header;\n const content = (\n <AnimatePresence>\n {isOpen && (\n <div className={cn(\"fixed inset-0 z-50 overflow-hidden\", zIndexClassName)}>\n <div className={cn(\"min-h-full flex items-center justify-center p-4\", mainClassName)}>\n <motion.div\n initial={{ opacity: 0 }}\n animate={{ opacity: 1 }}\n exit={{ opacity: 0 }}\n className=\"fixed inset-0 bg-background/80 backdrop-blur-sm\"\n onClick={onClose}\n />\n \n <motion.div\n initial={{ opacity: 0, scale: 0.95 }}\n animate={{ opacity: 1, scale: 1 }}\n exit={{ opacity: 0, scale: 0.95 }}\n transition={{ duration: 0.1, ease: \"easeOut\" }}\n className={cn(\n \"relative transform rounded-lg bg-background shadow-xl border border-border/50 flex flex-col max-h-[85vh] overflow-hidden\",\n className\n )}\n style={getSizeStyles(size)}\n >\n {/* Header - Fixed */}\n {isHeader && (\n <div className=\"flex-shrink-0 rounded-t-lg bg-card flex items-center justify-between p-2 border-b border-border/50\">\n \n {header ? header: (\n <div className=\"flex items-center gap-3\">\n {icon && (\n <div className=\"h-8 w-8 rounded-lg flex items-center justify-center\">\n {icon}\n </div>\n )}\n <div>\n {title && <h2 className=\"text-sm font-small\">{title}</h2>}\n {description && <p className=\"text-sm text-muted-foreground\">{description}</p>}\n </div>\n </div>\n )}\n {showClose && (\n <button\n onClick={onClose}\n className=\"p-1.5 rounded-md hover:bg-muted text-muted-foreground\"\n >\n <div className=\"flex justify-center items-center\">\n <X className=\"h-4 w-4\" />\n <kbd className=\"ml-2 text-[10px] text-muted-foreground bg-muted px-1.5 py-0.5 rounded\">\n ESC\n </kbd>\n </div>\n </button>\n )}\n </div>\n )}\n\n {/* Content - Scrollable */}\n <div className={cn(\n \"flex-1 min-h-0\", \n isContentScrollable ? 'overflow-y-auto' : '', \n !footer && !isHeader ? 'rounded-lg' : '',\n !footer && isHeader ? 'rounded-b-lg' : '', \n footer && !isHeader ? 'rounded-t-lg' : '',\n contentClassName \n )}>\n {children}\n </div>\n\n {/* Footer - Fixed */}\n {footer && (\n <div className=\"flex-shrink-0 flex items-center justify-end gap-2 px-4 py-3 border-t border-border/50 bg-card rounded-b-lg\">\n {footer}\n </div>\n )}\n </motion.div>\n </div>\n </div>\n )}\n </AnimatePresence>\n );\n\n return createPortal(content, document.body);\n}"],"names":["getSizeStyles","size","Modal","isOpen","onClose","title","description","icon","children","footer","showClose","className","isContentScrollable","mainClassName","contentClassName","header","headerClassName","zIndexClassName","mobileSheet","position","sheetHeader","jsxs","jsx","sheetFooter","Sheet","cn","handleKeyDown","useCallback","e","useEffect","isHeader","content","AnimatePresence","motion","X","createPortal"],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export * from './monaco-editor/index'
2
- export {}
@@ -1,9 +0,0 @@
1
- import { M as e, d as o, l as t, s as i, u } from "../MonacoEditor-D3QSSKa4.js";
2
- export {
3
- e as MonacoEditor,
4
- o as defaultOptions,
5
- t as languageOptions,
6
- i as setupVariableSuggestions,
7
- u as updateVariableSuggestions
8
- };
9
- //# sourceMappingURL=monaco-editor.esm.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"monaco-editor.esm.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
@@ -1,2 +0,0 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../MonacoEditor-COZcVMEj.cjs");exports.MonacoEditor=e.MonacoEditor;exports.defaultOptions=e.defaultOptions;exports.languageOptions=e.languageOptions;exports.setupVariableSuggestions=e.setupVariableSuggestions;exports.updateVariableSuggestions=e.updateVariableSuggestions;
2
- //# sourceMappingURL=monaco-editor.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"monaco-editor.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1,26 +0,0 @@
1
- import { j as t } from "../jsx-runtime-DGlMoOmv.js";
2
- import { Toaster as s } from "sonner";
3
- function e({ isDark: o } = { isDark: !1 }) {
4
- return /* @__PURE__ */ t.jsx(
5
- s,
6
- {
7
- position: "top-right",
8
- expand: !1,
9
- richColors: !0,
10
- closeButton: !0,
11
- theme: o ? "dark" : "light",
12
- toastOptions: {
13
- style: {
14
- background: o ? "hsl(0 0% 10%)" : "hsl(0 0% 100%)",
15
- color: o ? "hsl(0 0% 98%)" : "hsl(0 0% 10%)",
16
- border: o ? "1px solid hsl(0 0% 15%)" : "1px solid hsl(0 0% 90%)"
17
- },
18
- className: o ? "dark" : "light"
19
- }
20
- }
21
- );
22
- }
23
- export {
24
- e as NotificationContainer
25
- };
26
- //# sourceMappingURL=notification.esm.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"notification.esm.js","sources":["../../src/components/notification.tsx"],"sourcesContent":["import { Toaster } from \"sonner\";\n\ninterface NotificationContainerProps {\n isDark?: boolean;\n}\n\nexport function NotificationContainer({ isDark }: NotificationContainerProps = { isDark: false }) {\n \n return (\n <Toaster\n position=\"top-right\"\n expand={false}\n richColors\n closeButton\n theme={isDark ? 'dark' : 'light'}\n toastOptions={{\n style: {\n background: isDark ? 'hsl(0 0% 10%)' : 'hsl(0 0% 100%)',\n color: isDark ? 'hsl(0 0% 98%)' : 'hsl(0 0% 10%)',\n border: isDark ? '1px solid hsl(0 0% 15%)' : '1px solid hsl(0 0% 90%)',\n },\n className: isDark ? 'dark' : 'light',\n }}\n />\n );\n} "],"names":["NotificationContainer","isDark","jsx","Toaster"],"mappings":";;AAMO,SAASA,EAAsB,EAAE,QAAAC,EAAA,IAAuC,EAAE,QAAQ,MAAS;AAEhG,SACEC,gBAAAA,EAAAA;AAAAA,IAACC;AAAA,IAAA;AAAA,MACC,UAAS;AAAA,MACT,QAAQ;AAAA,MACR,YAAU;AAAA,MACV,aAAW;AAAA,MACX,OAAOF,IAAS,SAAS;AAAA,MACzB,cAAc;AAAA,QACZ,OAAO;AAAA,UACL,YAAYA,IAAS,kBAAkB;AAAA,UACvC,OAAOA,IAAS,kBAAkB;AAAA,UAClC,QAAQA,IAAS,4BAA4B;AAAA,QAAA;AAAA,QAE/C,WAAWA,IAAS,SAAS;AAAA,MAAA;AAAA,IAC/B;AAAA,EAAA;AAGN;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"notification.js","sources":["../../src/components/notification.tsx"],"sourcesContent":["import { Toaster } from \"sonner\";\n\ninterface NotificationContainerProps {\n isDark?: boolean;\n}\n\nexport function NotificationContainer({ isDark }: NotificationContainerProps = { isDark: false }) {\n \n return (\n <Toaster\n position=\"top-right\"\n expand={false}\n richColors\n closeButton\n theme={isDark ? 'dark' : 'light'}\n toastOptions={{\n style: {\n background: isDark ? 'hsl(0 0% 10%)' : 'hsl(0 0% 100%)',\n color: isDark ? 'hsl(0 0% 98%)' : 'hsl(0 0% 10%)',\n border: isDark ? '1px solid hsl(0 0% 15%)' : '1px solid hsl(0 0% 90%)',\n },\n className: isDark ? 'dark' : 'light',\n }}\n />\n );\n} "],"names":["NotificationContainer","isDark","jsx","Toaster"],"mappings":"mJAMO,SAASA,EAAsB,CAAE,OAAAC,CAAA,EAAuC,CAAE,OAAQ,IAAS,CAEhG,OACEC,EAAAA,kBAAAA,IAACC,EAAAA,QAAA,CACC,SAAS,YACT,OAAQ,GACR,WAAU,GACV,YAAW,GACX,MAAOF,EAAS,OAAS,QACzB,aAAc,CACZ,MAAO,CACL,WAAYA,EAAS,gBAAkB,iBACvC,MAAOA,EAAS,gBAAkB,gBAClC,OAAQA,EAAS,0BAA4B,yBAAA,EAE/C,UAAWA,EAAS,OAAS,OAAA,CAC/B,CAAA,CAGN"}
@@ -1,24 +0,0 @@
1
- import { j as t } from "../jsx-runtime-DGlMoOmv.js";
2
- import * as s from "react";
3
- import * as o from "@radix-ui/react-popover";
4
- import { c as n } from "../utils-qaFjX9_3.js";
5
- const l = o.Root, c = o.Trigger, m = s.forwardRef(({ className: e, align: a = "center", sideOffset: r = 4, ...d }, i) => /* @__PURE__ */ t.jsx(o.Portal, { children: /* @__PURE__ */ t.jsx(
6
- o.Content,
7
- {
8
- ref: i,
9
- align: a,
10
- sideOffset: r,
11
- className: n(
12
- "z-50 w-72 rounded-md border bg-popover p-4 text-popover-foreground shadow-md outline-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",
13
- e
14
- ),
15
- ...d
16
- }
17
- ) }));
18
- m.displayName = o.Content.displayName;
19
- export {
20
- l as Popover,
21
- m as PopoverContent,
22
- c as PopoverTrigger
23
- };
24
- //# sourceMappingURL=popover.esm.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"popover.esm.js","sources":["../../src/components/popover.tsx"],"sourcesContent":["\"use client\"\n\nimport * as React from \"react\"\nimport * as PopoverPrimitive from \"@radix-ui/react-popover\"\n\nimport { cn } from \"@/lib/utils\"\n\nconst Popover = PopoverPrimitive.Root\n\nconst PopoverTrigger = PopoverPrimitive.Trigger\n\nconst PopoverContent = React.forwardRef<\n React.ElementRef<typeof PopoverPrimitive.Content>,\n React.ComponentPropsWithoutRef<typeof PopoverPrimitive.Content>\n>(({ className, align = \"center\", sideOffset = 4, ...props }, ref) => (\n <PopoverPrimitive.Portal>\n <PopoverPrimitive.Content\n ref={ref}\n align={align}\n sideOffset={sideOffset}\n className={cn(\n \"z-50 w-72 rounded-md border bg-popover p-4 text-popover-foreground shadow-md outline-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2\",\n className\n )}\n {...props}\n />\n </PopoverPrimitive.Portal>\n))\nPopoverContent.displayName = PopoverPrimitive.Content.displayName\n\nexport { Popover, PopoverTrigger, PopoverContent } "],"names":["Popover","PopoverPrimitive","PopoverTrigger","PopoverContent","React","className","align","sideOffset","props","ref","jsx","cn"],"mappings":";;;;AAOA,MAAMA,IAAUC,EAAiB,MAE3BC,IAAiBD,EAAiB,SAElCE,IAAiBC,EAAM,WAG3B,CAAC,EAAE,WAAAC,GAAW,OAAAC,IAAQ,UAAU,YAAAC,IAAa,GAAG,GAAGC,EAAA,GAASC,MAC5DC,gBAAAA,EAAAA,IAACT,EAAiB,QAAjB,EACC,UAAAS,gBAAAA,EAAAA;AAAAA,EAACT,EAAiB;AAAA,EAAjB;AAAA,IACC,KAAAQ;AAAA,IACA,OAAAH;AAAA,IACA,YAAAC;AAAA,IACA,WAAWI;AAAA,MACT;AAAA,MACAN;AAAA,IAAA;AAAA,IAED,GAAGG;AAAA,EAAA;AACN,GACF,CACD;AACDL,EAAe,cAAcF,EAAiB,QAAQ;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"popover.js","sources":["../../src/components/popover.tsx"],"sourcesContent":["\"use client\"\n\nimport * as React from \"react\"\nimport * as PopoverPrimitive from \"@radix-ui/react-popover\"\n\nimport { cn } from \"@/lib/utils\"\n\nconst Popover = PopoverPrimitive.Root\n\nconst PopoverTrigger = PopoverPrimitive.Trigger\n\nconst PopoverContent = React.forwardRef<\n React.ElementRef<typeof PopoverPrimitive.Content>,\n React.ComponentPropsWithoutRef<typeof PopoverPrimitive.Content>\n>(({ className, align = \"center\", sideOffset = 4, ...props }, ref) => (\n <PopoverPrimitive.Portal>\n <PopoverPrimitive.Content\n ref={ref}\n align={align}\n sideOffset={sideOffset}\n className={cn(\n \"z-50 w-72 rounded-md border bg-popover p-4 text-popover-foreground shadow-md outline-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2\",\n className\n )}\n {...props}\n />\n </PopoverPrimitive.Portal>\n))\nPopoverContent.displayName = PopoverPrimitive.Content.displayName\n\nexport { Popover, PopoverTrigger, PopoverContent } "],"names":["Popover","PopoverPrimitive","PopoverTrigger","PopoverContent","React","className","align","sideOffset","props","ref","jsx","cn"],"mappings":"2fAOMA,EAAUC,EAAiB,KAE3BC,EAAiBD,EAAiB,QAElCE,EAAiBC,EAAM,WAG3B,CAAC,CAAE,UAAAC,EAAW,MAAAC,EAAQ,SAAU,WAAAC,EAAa,EAAG,GAAGC,CAAA,EAASC,IAC5DC,EAAAA,kBAAAA,IAACT,EAAiB,OAAjB,CACC,SAAAS,EAAAA,kBAAAA,IAACT,EAAiB,QAAjB,CACC,IAAAQ,EACA,MAAAH,EACA,WAAAC,EACA,UAAWI,EAAAA,GACT,6aACAN,CAAA,EAED,GAAGG,CAAA,CACN,EACF,CACD,EACDL,EAAe,YAAcF,EAAiB,QAAQ"}
@@ -1,35 +0,0 @@
1
- import { j as i } from "../jsx-runtime-DGlMoOmv.js";
2
- import * as a from "react";
3
- import * as o from "@radix-ui/react-progress";
4
- import { motion as e } from "framer-motion";
5
- import { c as l } from "../utils-qaFjX9_3.js";
6
- const f = a.forwardRef(({ className: s, value: r, ...m }, t) => /* @__PURE__ */ i.jsx(
7
- o.Root,
8
- {
9
- ref: t,
10
- className: l(
11
- "relative h-2 w-full overflow-hidden rounded-full bg-muted",
12
- s
13
- ),
14
- ...m,
15
- children: /* @__PURE__ */ i.jsx(
16
- e.div,
17
- {
18
- className: "h-full w-full bg-primary",
19
- initial: { x: "-100%" },
20
- animate: { x: `${r ? r - 100 : -100}%` },
21
- transition: {
22
- type: "spring",
23
- stiffness: 100,
24
- damping: 30,
25
- mass: 0.5
26
- }
27
- }
28
- )
29
- }
30
- ));
31
- f.displayName = o.Root.displayName;
32
- export {
33
- f as Progress
34
- };
35
- //# sourceMappingURL=progress.esm.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"progress.esm.js","sources":["../../src/components/progress.tsx"],"sourcesContent":["import * as React from \"react\"\nimport * as ProgressPrimitive from \"@radix-ui/react-progress\"\nimport { motion } from \"framer-motion\"\nimport { cn } from \"@/lib/utils\"\n\nconst Progress = React.forwardRef<\n React.ElementRef<typeof ProgressPrimitive.Root>,\n React.ComponentPropsWithoutRef<typeof ProgressPrimitive.Root>\n>(({ className, value, ...props }, ref) => (\n <ProgressPrimitive.Root\n ref={ref}\n className={cn(\n \"relative h-2 w-full overflow-hidden rounded-full bg-muted\",\n className\n )}\n {...props}\n >\n <motion.div\n className=\"h-full w-full bg-primary\"\n initial={{ x: \"-100%\" }}\n animate={{ x: `${value ? value - 100 : -100}%` }}\n transition={{ \n type: \"spring\",\n stiffness: 100,\n damping: 30,\n mass: 0.5\n }}\n />\n </ProgressPrimitive.Root>\n))\nProgress.displayName = ProgressPrimitive.Root.displayName\n\nexport { Progress } "],"names":["Progress","React","className","value","props","ref","jsx","ProgressPrimitive","cn","motion"],"mappings":";;;;;AAKA,MAAMA,IAAWC,EAAM,WAGrB,CAAC,EAAE,WAAAC,GAAW,OAAAC,GAAO,GAAGC,KAASC,MACjCC,gBAAAA,EAAAA;AAAAA,EAACC,EAAkB;AAAA,EAAlB;AAAA,IACC,KAAAF;AAAA,IACA,WAAWG;AAAA,MACT;AAAA,MACAN;AAAA,IAAA;AAAA,IAED,GAAGE;AAAA,IAEJ,UAAAE,gBAAAA,EAAAA;AAAAA,MAACG,EAAO;AAAA,MAAP;AAAA,QACC,WAAU;AAAA,QACV,SAAS,EAAE,GAAG,QAAA;AAAA,QACd,SAAS,EAAE,GAAG,GAAGN,IAAQA,IAAQ,MAAM,IAAI,IAAA;AAAA,QAC3C,YAAY;AAAA,UACV,MAAM;AAAA,UACN,WAAW;AAAA,UACX,SAAS;AAAA,UACT,MAAM;AAAA,QAAA;AAAA,MACR;AAAA,IAAA;AAAA,EACF;AACF,CACD;AACDH,EAAS,cAAcO,EAAkB,KAAK;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"progress.js","sources":["../../src/components/progress.tsx"],"sourcesContent":["import * as React from \"react\"\nimport * as ProgressPrimitive from \"@radix-ui/react-progress\"\nimport { motion } from \"framer-motion\"\nimport { cn } from \"@/lib/utils\"\n\nconst Progress = React.forwardRef<\n React.ElementRef<typeof ProgressPrimitive.Root>,\n React.ComponentPropsWithoutRef<typeof ProgressPrimitive.Root>\n>(({ className, value, ...props }, ref) => (\n <ProgressPrimitive.Root\n ref={ref}\n className={cn(\n \"relative h-2 w-full overflow-hidden rounded-full bg-muted\",\n className\n )}\n {...props}\n >\n <motion.div\n className=\"h-full w-full bg-primary\"\n initial={{ x: \"-100%\" }}\n animate={{ x: `${value ? value - 100 : -100}%` }}\n transition={{ \n type: \"spring\",\n stiffness: 100,\n damping: 30,\n mass: 0.5\n }}\n />\n </ProgressPrimitive.Root>\n))\nProgress.displayName = ProgressPrimitive.Root.displayName\n\nexport { Progress } "],"names":["Progress","React","className","value","props","ref","jsx","ProgressPrimitive","cn","motion"],"mappings":"uhBAKMA,EAAWC,EAAM,WAGrB,CAAC,CAAE,UAAAC,EAAW,MAAAC,EAAO,GAAGC,GAASC,IACjCC,EAAAA,kBAAAA,IAACC,EAAkB,KAAlB,CACC,IAAAF,EACA,UAAWG,EAAAA,GACT,4DACAN,CAAA,EAED,GAAGE,EAEJ,SAAAE,EAAAA,kBAAAA,IAACG,EAAAA,OAAO,IAAP,CACC,UAAU,2BACV,QAAS,CAAE,EAAG,OAAA,EACd,QAAS,CAAE,EAAG,GAAGN,EAAQA,EAAQ,IAAM,IAAI,GAAA,EAC3C,WAAY,CACV,KAAM,SACN,UAAW,IACX,QAAS,GACT,KAAM,EAAA,CACR,CAAA,CACF,CACF,CACD,EACDH,EAAS,YAAcO,EAAkB,KAAK"}
@@ -1,48 +0,0 @@
1
- import { j as r } from "../jsx-runtime-DGlMoOmv.js";
2
- import * as t from "react";
3
- import * as e from "@radix-ui/react-radio-group";
4
- import { c as l } from "../utils-qaFjX9_3.js";
5
- import { Circle as m } from "lucide-react";
6
- import { motion as o } from "framer-motion";
7
- const n = t.forwardRef(({ className: i, ...s }, a) => /* @__PURE__ */ r.jsx(
8
- e.Root,
9
- {
10
- className: l("grid gap-2", i),
11
- ...s,
12
- ref: a
13
- }
14
- ));
15
- n.displayName = e.Root.displayName;
16
- const c = t.forwardRef(({ className: i, ...s }, a) => /* @__PURE__ */ r.jsx(
17
- o.div,
18
- {
19
- whileHover: { scale: 1.05 },
20
- whileTap: { scale: 0.95 },
21
- children: /* @__PURE__ */ r.jsx(
22
- e.Item,
23
- {
24
- ref: a,
25
- className: l(
26
- "aspect-square h-4 w-4 rounded-full border border-primary text-primary shadow focus:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50",
27
- i
28
- ),
29
- ...s,
30
- children: /* @__PURE__ */ r.jsx(e.Indicator, { className: "flex items-center justify-center", children: /* @__PURE__ */ r.jsx(
31
- o.div,
32
- {
33
- initial: { scale: 0 },
34
- animate: { scale: 1 },
35
- transition: { type: "spring", stiffness: 300, damping: 20 },
36
- children: /* @__PURE__ */ r.jsx(m, { className: "h-2.5 w-2.5 fill-current text-current" })
37
- }
38
- ) })
39
- }
40
- )
41
- }
42
- ));
43
- c.displayName = e.Item.displayName;
44
- export {
45
- n as RadioGroup,
46
- c as RadioGroupItem
47
- };
48
- //# sourceMappingURL=radio-group.esm.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"radio-group.esm.js","sources":["../../src/components/radio-group.tsx"],"sourcesContent":["import * as React from \"react\"\nimport * as RadioGroupPrimitive from \"@radix-ui/react-radio-group\"\nimport { cn } from \"@/lib/utils\"\nimport { Circle } from \"lucide-react\"\nimport { motion } from \"framer-motion\"\n\nconst RadioGroup = React.forwardRef<\n React.ElementRef<typeof RadioGroupPrimitive.Root>,\n React.ComponentPropsWithoutRef<typeof RadioGroupPrimitive.Root>\n>(({ className, ...props }, ref) => {\n return (\n <RadioGroupPrimitive.Root\n className={cn(\"grid gap-2\", className)}\n {...props}\n ref={ref}\n />\n )\n})\nRadioGroup.displayName = RadioGroupPrimitive.Root.displayName\n\nconst RadioGroupItem = React.forwardRef<\n React.ElementRef<typeof RadioGroupPrimitive.Item>,\n React.ComponentPropsWithoutRef<typeof RadioGroupPrimitive.Item>\n>(({ className, ...props }, ref) => {\n return (\n <motion.div\n whileHover={{ scale: 1.05 }}\n whileTap={{ scale: 0.95 }}\n >\n <RadioGroupPrimitive.Item\n ref={ref}\n className={cn(\n \"aspect-square h-4 w-4 rounded-full border border-primary text-primary shadow focus:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50\",\n className\n )}\n {...props}\n >\n <RadioGroupPrimitive.Indicator className=\"flex items-center justify-center\">\n <motion.div\n initial={{ scale: 0 }}\n animate={{ scale: 1 }}\n transition={{ type: \"spring\", stiffness: 300, damping: 20 }}\n >\n <Circle className=\"h-2.5 w-2.5 fill-current text-current\" />\n </motion.div>\n </RadioGroupPrimitive.Indicator>\n </RadioGroupPrimitive.Item>\n </motion.div>\n )\n})\nRadioGroupItem.displayName = RadioGroupPrimitive.Item.displayName\n\nexport { RadioGroup, RadioGroupItem } "],"names":["RadioGroup","React","className","props","ref","jsx","RadioGroupPrimitive","cn","RadioGroupItem","motion","Circle"],"mappings":";;;;;;AAMA,MAAMA,IAAaC,EAAM,WAGvB,CAAC,EAAE,WAAAC,GAAW,GAAGC,EAAA,GAASC,MAExBC,gBAAAA,EAAAA;AAAAA,EAACC,EAAoB;AAAA,EAApB;AAAA,IACC,WAAWC,EAAG,cAAcL,CAAS;AAAA,IACpC,GAAGC;AAAA,IACJ,KAAAC;AAAA,EAAA;AAAA,CAGL;AACDJ,EAAW,cAAcM,EAAoB,KAAK;AAElD,MAAME,IAAiBP,EAAM,WAG3B,CAAC,EAAE,WAAAC,GAAW,GAAGC,EAAA,GAASC,MAExBC,gBAAAA,EAAAA;AAAAA,EAACI,EAAO;AAAA,EAAP;AAAA,IACC,YAAY,EAAE,OAAO,KAAA;AAAA,IACrB,UAAU,EAAE,OAAO,KAAA;AAAA,IAEnB,UAAAJ,gBAAAA,EAAAA;AAAAA,MAACC,EAAoB;AAAA,MAApB;AAAA,QACC,KAAAF;AAAA,QACA,WAAWG;AAAA,UACT;AAAA,UACAL;AAAA,QAAA;AAAA,QAED,GAAGC;AAAA,QAEJ,UAAAE,gBAAAA,EAAAA,IAACC,EAAoB,WAApB,EAA8B,WAAU,oCACvC,UAAAD,gBAAAA,EAAAA;AAAAA,UAACI,EAAO;AAAA,UAAP;AAAA,YACC,SAAS,EAAE,OAAO,EAAA;AAAA,YAClB,SAAS,EAAE,OAAO,EAAA;AAAA,YAClB,YAAY,EAAE,MAAM,UAAU,WAAW,KAAK,SAAS,GAAA;AAAA,YAEvD,UAAAJ,gBAAAA,EAAAA,IAACK,GAAA,EAAO,WAAU,wCAAA,CAAwC;AAAA,UAAA;AAAA,QAAA,EAC5D,CACF;AAAA,MAAA;AAAA,IAAA;AAAA,EACF;AAAA,CAGL;AACDF,EAAe,cAAcF,EAAoB,KAAK;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"radio-group.js","sources":["../../src/components/radio-group.tsx"],"sourcesContent":["import * as React from \"react\"\nimport * as RadioGroupPrimitive from \"@radix-ui/react-radio-group\"\nimport { cn } from \"@/lib/utils\"\nimport { Circle } from \"lucide-react\"\nimport { motion } from \"framer-motion\"\n\nconst RadioGroup = React.forwardRef<\n React.ElementRef<typeof RadioGroupPrimitive.Root>,\n React.ComponentPropsWithoutRef<typeof RadioGroupPrimitive.Root>\n>(({ className, ...props }, ref) => {\n return (\n <RadioGroupPrimitive.Root\n className={cn(\"grid gap-2\", className)}\n {...props}\n ref={ref}\n />\n )\n})\nRadioGroup.displayName = RadioGroupPrimitive.Root.displayName\n\nconst RadioGroupItem = React.forwardRef<\n React.ElementRef<typeof RadioGroupPrimitive.Item>,\n React.ComponentPropsWithoutRef<typeof RadioGroupPrimitive.Item>\n>(({ className, ...props }, ref) => {\n return (\n <motion.div\n whileHover={{ scale: 1.05 }}\n whileTap={{ scale: 0.95 }}\n >\n <RadioGroupPrimitive.Item\n ref={ref}\n className={cn(\n \"aspect-square h-4 w-4 rounded-full border border-primary text-primary shadow focus:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50\",\n className\n )}\n {...props}\n >\n <RadioGroupPrimitive.Indicator className=\"flex items-center justify-center\">\n <motion.div\n initial={{ scale: 0 }}\n animate={{ scale: 1 }}\n transition={{ type: \"spring\", stiffness: 300, damping: 20 }}\n >\n <Circle className=\"h-2.5 w-2.5 fill-current text-current\" />\n </motion.div>\n </RadioGroupPrimitive.Indicator>\n </RadioGroupPrimitive.Item>\n </motion.div>\n )\n})\nRadioGroupItem.displayName = RadioGroupPrimitive.Item.displayName\n\nexport { RadioGroup, RadioGroupItem } "],"names":["RadioGroup","React","className","props","ref","jsx","RadioGroupPrimitive","cn","RadioGroupItem","motion","Circle"],"mappings":"ojBAMMA,EAAaC,EAAM,WAGvB,CAAC,CAAE,UAAAC,EAAW,GAAGC,CAAA,EAASC,IAExBC,EAAAA,kBAAAA,IAACC,EAAoB,KAApB,CACC,UAAWC,EAAAA,GAAG,aAAcL,CAAS,EACpC,GAAGC,EACJ,IAAAC,CAAA,CAAA,CAGL,EACDJ,EAAW,YAAcM,EAAoB,KAAK,YAElD,MAAME,EAAiBP,EAAM,WAG3B,CAAC,CAAE,UAAAC,EAAW,GAAGC,CAAA,EAASC,IAExBC,EAAAA,kBAAAA,IAACI,EAAAA,OAAO,IAAP,CACC,WAAY,CAAE,MAAO,IAAA,EACrB,SAAU,CAAE,MAAO,GAAA,EAEnB,SAAAJ,EAAAA,kBAAAA,IAACC,EAAoB,KAApB,CACC,IAAAF,EACA,UAAWG,EAAAA,GACT,+LACAL,CAAA,EAED,GAAGC,EAEJ,SAAAE,EAAAA,kBAAAA,IAACC,EAAoB,UAApB,CAA8B,UAAU,mCACvC,SAAAD,EAAAA,kBAAAA,IAACI,EAAAA,OAAO,IAAP,CACC,QAAS,CAAE,MAAO,CAAA,EAClB,QAAS,CAAE,MAAO,CAAA,EAClB,WAAY,CAAE,KAAM,SAAU,UAAW,IAAK,QAAS,EAAA,EAEvD,SAAAJ,EAAAA,kBAAAA,IAACK,EAAAA,OAAA,CAAO,UAAU,uCAAA,CAAwC,CAAA,CAAA,CAC5D,CACF,CAAA,CAAA,CACF,CAAA,CAGL,EACDF,EAAe,YAAcF,EAAoB,KAAK"}