@hanzo/ui 5.3.28 → 5.3.29

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 (229) hide show
  1. package/dist/3d/button.js +298 -0
  2. package/dist/3d/button.mjs +273 -0
  3. package/dist/3d/card.js +234 -0
  4. package/dist/3d/card.mjs +207 -0
  5. package/dist/3d/carousel.js +371 -0
  6. package/dist/3d/carousel.mjs +344 -0
  7. package/dist/3d/grid.js +362 -0
  8. package/dist/3d/grid.mjs +337 -0
  9. package/dist/3d/index.js +1518 -0
  10. package/dist/3d/index.mjs +1472 -0
  11. package/dist/3d/marquee.js +352 -0
  12. package/dist/3d/marquee.mjs +327 -0
  13. package/dist/3d/pin.js +46 -0
  14. package/dist/3d/pin.mjs +24 -0
  15. package/dist/accordion.js +80 -0
  16. package/dist/accordion.mjs +55 -0
  17. package/dist/alert-dialog.js +220 -0
  18. package/dist/alert-dialog.mjs +187 -0
  19. package/dist/alert.js +68 -0
  20. package/dist/alert.mjs +64 -0
  21. package/dist/animation/animated-background.js +424 -0
  22. package/dist/animation/animated-background.mjs +418 -0
  23. package/dist/animation/animated-beam.js +119 -0
  24. package/dist/animation/animated-beam.mjs +97 -0
  25. package/dist/animation/animated-cursor.js +275 -0
  26. package/dist/animation/animated-cursor.mjs +270 -0
  27. package/dist/animation/animated-icon.js +357 -0
  28. package/dist/animation/animated-icon.mjs +351 -0
  29. package/dist/animation/animated-list.js +339 -0
  30. package/dist/animation/animated-list.mjs +333 -0
  31. package/dist/animation/animated-number.js +283 -0
  32. package/dist/animation/animated-number.mjs +277 -0
  33. package/dist/animation/animated-testimonials.js +97 -0
  34. package/dist/animation/animated-testimonials.mjs +75 -0
  35. package/dist/animation/animated-tooltip.js +67 -0
  36. package/dist/animation/animated-tooltip.mjs +45 -0
  37. package/dist/animation/apple-cards-carousel.js +308 -0
  38. package/dist/animation/apple-cards-carousel.mjs +285 -0
  39. package/dist/animation/apple-hello-effect.js +60 -0
  40. package/dist/animation/apple-hello-effect.mjs +38 -0
  41. package/dist/animation/index.js +1952 -0
  42. package/dist/animation/index.mjs +1921 -0
  43. package/dist/avatar.js +71 -0
  44. package/dist/avatar.mjs +47 -0
  45. package/dist/badge.js +66 -0
  46. package/dist/badge.mjs +40 -0
  47. package/dist/blocks/index.js +1665 -0
  48. package/dist/blocks/index.mjs +1626 -0
  49. package/dist/breadcrumb.js +107 -0
  50. package/dist/breadcrumb.mjs +99 -0
  51. package/dist/calendar.js +189 -0
  52. package/dist/calendar.mjs +164 -0
  53. package/dist/carousel.js +278 -0
  54. package/dist/carousel.mjs +249 -0
  55. package/dist/checkbox.js +60 -0
  56. package/dist/checkbox.mjs +35 -0
  57. package/dist/code/block.js +226 -0
  58. package/dist/code/block.mjs +203 -0
  59. package/dist/code/compare.js +446 -0
  60. package/dist/code/compare.mjs +423 -0
  61. package/dist/code/diff.js +430 -0
  62. package/dist/code/diff.mjs +407 -0
  63. package/dist/code/editor.js +243 -0
  64. package/dist/code/editor.mjs +218 -0
  65. package/dist/code/explorer.js +291 -0
  66. package/dist/code/explorer.mjs +268 -0
  67. package/dist/code/index.js +2551 -0
  68. package/dist/code/index.mjs +2510 -0
  69. package/dist/code/preview.js +400 -0
  70. package/dist/code/preview.mjs +377 -0
  71. package/dist/code/snippet.js +274 -0
  72. package/dist/code/snippet.mjs +250 -0
  73. package/dist/code/tabs.js +75 -0
  74. package/dist/code/tabs.mjs +53 -0
  75. package/dist/code/terminal.js +437 -0
  76. package/dist/code/terminal.mjs +414 -0
  77. package/dist/collapsible.js +33 -0
  78. package/dist/collapsible.mjs +9 -0
  79. package/dist/command.js +262 -0
  80. package/dist/command.mjs +232 -0
  81. package/dist/context-menu.js +207 -0
  82. package/dist/context-menu.mjs +171 -0
  83. package/dist/device/index.js +3 -0
  84. package/dist/device/index.mjs +2 -0
  85. package/dist/dialog.js +151 -0
  86. package/dist/dialog.mjs +121 -0
  87. package/dist/dock/basic.js +174 -0
  88. package/dist/dock/basic.mjs +151 -0
  89. package/dist/dock/index.js +628 -0
  90. package/dist/dock/index.mjs +601 -0
  91. package/dist/dock/limelight-nav.js +295 -0
  92. package/dist/dock/limelight-nav.mjs +274 -0
  93. package/dist/dock/macos.js +141 -0
  94. package/dist/dock/macos.mjs +118 -0
  95. package/dist/dock/menu.js +70 -0
  96. package/dist/dock/menu.mjs +48 -0
  97. package/dist/dock/message.js +144 -0
  98. package/dist/dock/message.mjs +122 -0
  99. package/dist/drawer.js +115 -0
  100. package/dist/drawer.mjs +103 -0
  101. package/dist/dropdown-menu.js +202 -0
  102. package/dist/dropdown-menu.mjs +166 -0
  103. package/dist/finance/AdvancedChart.js +48 -0
  104. package/dist/finance/AdvancedChart.mjs +46 -0
  105. package/dist/finance/CompanyProfile.js +48 -0
  106. package/dist/finance/CompanyProfile.mjs +46 -0
  107. package/dist/finance/CryptoScreener.js +45 -0
  108. package/dist/finance/CryptoScreener.mjs +43 -0
  109. package/dist/finance/Financials.js +52 -0
  110. package/dist/finance/Financials.mjs +50 -0
  111. package/dist/finance/ForexScreener.js +46 -0
  112. package/dist/finance/ForexScreener.mjs +44 -0
  113. package/dist/finance/MarketOverview.js +104 -0
  114. package/dist/finance/MarketOverview.mjs +102 -0
  115. package/dist/finance/NewsTimeline.js +44 -0
  116. package/dist/finance/NewsTimeline.mjs +42 -0
  117. package/dist/finance/OrderEntry.js +131 -0
  118. package/dist/finance/OrderEntry.mjs +129 -0
  119. package/dist/finance/OrdersHistory.js +64 -0
  120. package/dist/finance/OrdersHistory.mjs +62 -0
  121. package/dist/finance/PositionsList.js +80 -0
  122. package/dist/finance/PositionsList.mjs +78 -0
  123. package/dist/finance/StockScreener.js +46 -0
  124. package/dist/finance/StockScreener.mjs +44 -0
  125. package/dist/finance/SymbolInfo.js +46 -0
  126. package/dist/finance/SymbolInfo.mjs +44 -0
  127. package/dist/finance/TechnicalAnalysis.js +54 -0
  128. package/dist/finance/TechnicalAnalysis.mjs +52 -0
  129. package/dist/finance/TickerTape.js +56 -0
  130. package/dist/finance/TickerTape.mjs +54 -0
  131. package/dist/finance/TradingPanel.js +191 -0
  132. package/dist/finance/TradingPanel.mjs +189 -0
  133. package/dist/finance/index.js +930 -0
  134. package/dist/finance/index.mjs +914 -0
  135. package/dist/form/index.js +155 -0
  136. package/dist/form/index.mjs +125 -0
  137. package/dist/form.js +172 -0
  138. package/dist/form.mjs +142 -0
  139. package/dist/hover-card.js +58 -0
  140. package/dist/hover-card.mjs +34 -0
  141. package/dist/index.js +10179 -0
  142. package/dist/index.mjs +9785 -0
  143. package/dist/input-otp.js +79 -0
  144. package/dist/input-otp.mjs +54 -0
  145. package/dist/lib/utils.js +28 -0
  146. package/dist/lib/utils.mjs +24 -0
  147. package/dist/navigation/index.js +98 -0
  148. package/dist/navigation/index.mjs +79 -0
  149. package/dist/navigation-menu.js +149 -0
  150. package/dist/navigation-menu.mjs +116 -0
  151. package/dist/pattern/grid-pattern.js +333 -0
  152. package/dist/pattern/grid-pattern.mjs +310 -0
  153. package/dist/pattern/index.js +333 -0
  154. package/dist/pattern/index.mjs +310 -0
  155. package/dist/popover.js +63 -0
  156. package/dist/popover.mjs +37 -0
  157. package/dist/primitives/index.js +10179 -0
  158. package/dist/primitives/index.mjs +9785 -0
  159. package/dist/primitives-export.js +10179 -0
  160. package/dist/primitives-export.mjs +9785 -0
  161. package/dist/progress.js +62 -0
  162. package/dist/progress.mjs +37 -0
  163. package/dist/project/gantt.js +65 -0
  164. package/dist/project/gantt.mjs +43 -0
  165. package/dist/project/index.js +636 -0
  166. package/dist/project/index.mjs +611 -0
  167. package/dist/project/kanban.js +597 -0
  168. package/dist/project/kanban.mjs +572 -0
  169. package/dist/project/list.js +35 -0
  170. package/dist/project/list.mjs +12 -0
  171. package/dist/radio-group.js +68 -0
  172. package/dist/radio-group.mjs +45 -0
  173. package/dist/resizable.js +72 -0
  174. package/dist/resizable.mjs +48 -0
  175. package/dist/scroll-area.js +89 -0
  176. package/dist/scroll-area.mjs +66 -0
  177. package/dist/select.js +140 -0
  178. package/dist/select.mjs +111 -0
  179. package/dist/separator.js +59 -0
  180. package/dist/separator.mjs +34 -0
  181. package/dist/sheet.js +148 -0
  182. package/dist/sheet.mjs +117 -0
  183. package/dist/skeleton.js +32 -0
  184. package/dist/skeleton.mjs +27 -0
  185. package/dist/slider.js +99 -0
  186. package/dist/slider.mjs +73 -0
  187. package/dist/sonner.js +34 -0
  188. package/dist/sonner.mjs +29 -0
  189. package/dist/switch.js +62 -0
  190. package/dist/switch.mjs +37 -0
  191. package/dist/table.js +110 -0
  192. package/dist/table.mjs +101 -0
  193. package/dist/tabs.js +82 -0
  194. package/dist/tabs.mjs +57 -0
  195. package/dist/tailwind/index.js +2023 -0
  196. package/dist/tailwind/index.mjs +2011 -0
  197. package/dist/textarea.js +78 -0
  198. package/dist/textarea.mjs +56 -0
  199. package/dist/toggle-group.js +118 -0
  200. package/dist/toggle-group.mjs +93 -0
  201. package/dist/toggle.js +71 -0
  202. package/dist/toggle.mjs +48 -0
  203. package/dist/tooltip.js +67 -0
  204. package/dist/tooltip.mjs +40 -0
  205. package/dist/types/index.js +57 -0
  206. package/dist/types/index.mjs +51 -0
  207. package/dist/ui/announcement.js +129 -0
  208. package/dist/ui/announcement.mjs +107 -0
  209. package/dist/ui/avatar-group.js +88 -0
  210. package/dist/ui/avatar-group.mjs +65 -0
  211. package/dist/ui/banner.js +85 -0
  212. package/dist/ui/banner.mjs +62 -0
  213. package/dist/ui/cursor.js +78 -0
  214. package/dist/ui/cursor.mjs +56 -0
  215. package/dist/ui/index.js +475 -0
  216. package/dist/ui/index.mjs +442 -0
  217. package/dist/ui/marquee.js +74 -0
  218. package/dist/ui/marquee.mjs +52 -0
  219. package/dist/ui/pill.js +85 -0
  220. package/dist/ui/pill.mjs +62 -0
  221. package/dist/ui/spinner.js +28 -0
  222. package/dist/ui/spinner.mjs +26 -0
  223. package/dist/ui/tags.js +101 -0
  224. package/dist/ui/tags.mjs +79 -0
  225. package/dist/ui/ticker.js +73 -0
  226. package/dist/ui/ticker.mjs +51 -0
  227. package/dist/util/index.js +463 -0
  228. package/dist/util/index.mjs +404 -0
  229. package/package.json +1 -1
package/dist/drawer.js ADDED
@@ -0,0 +1,115 @@
1
+ "use client";
2
+ 'use strict';
3
+
4
+ var vaul = require('vaul');
5
+ var clsx = require('clsx');
6
+ var tailwindMerge = require('tailwind-merge');
7
+ var jsxRuntime = require('react/jsx-runtime');
8
+
9
+ var __defProp = Object.defineProperty;
10
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
11
+ function cn(...inputs) {
12
+ return tailwindMerge.twMerge(clsx.clsx(inputs));
13
+ }
14
+ __name(cn, "cn");
15
+ var Drawer = /* @__PURE__ */ __name(({
16
+ shouldScaleBackground = false,
17
+ ...props
18
+ }) => /* @__PURE__ */ jsxRuntime.jsx(
19
+ vaul.Drawer.Root,
20
+ {
21
+ shouldScaleBackground,
22
+ ...props
23
+ }
24
+ ), "Drawer");
25
+ Drawer.displayName = "Drawer";
26
+ var DrawerTrigger = vaul.Drawer.Trigger;
27
+ var DrawerPortal = vaul.Drawer.Portal;
28
+ var DrawerClose = vaul.Drawer.Close;
29
+ var DrawerHandle = vaul.Drawer.Handle;
30
+ var DrawerOverlay = /* @__PURE__ */ __name(({
31
+ className,
32
+ ...props
33
+ }) => /* @__PURE__ */ jsxRuntime.jsx(
34
+ vaul.Drawer.Overlay,
35
+ {
36
+ className: cn("fixed inset-0 z-50 bg-black/70", className),
37
+ ...props
38
+ }
39
+ ), "DrawerOverlay");
40
+ DrawerOverlay.displayName = vaul.Drawer.Overlay.displayName;
41
+ var DrawerContent = /* @__PURE__ */ __name(({
42
+ className,
43
+ children,
44
+ ...props
45
+ }) => /* @__PURE__ */ jsxRuntime.jsxs(DrawerPortal, { children: [
46
+ /* @__PURE__ */ jsxRuntime.jsx(DrawerOverlay, {}),
47
+ /* @__PURE__ */ jsxRuntime.jsxs(
48
+ vaul.Drawer.Content,
49
+ {
50
+ className: cn(
51
+ "fixed inset-x-0 bottom-0 z-50 mt-24 flex h-auto flex-col rounded-t-[10px] border bg-gray-500 px-6 pb-6 focus:outline-hidden",
52
+ className
53
+ ),
54
+ ...props,
55
+ children: [
56
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mx-auto mt-4 h-2 w-[100px] rounded-full bg-gray-300" }),
57
+ children
58
+ ]
59
+ }
60
+ )
61
+ ] }), "DrawerContent");
62
+ DrawerContent.displayName = "DrawerContent";
63
+ var DrawerHeader = /* @__PURE__ */ __name(({
64
+ className,
65
+ ...props
66
+ }) => /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("pt-5 pb-0", className), ...props }), "DrawerHeader");
67
+ DrawerHeader.displayName = "DrawerHeader";
68
+ var DrawerFooter = /* @__PURE__ */ __name(({
69
+ className,
70
+ ...props
71
+ }) => /* @__PURE__ */ jsxRuntime.jsx(
72
+ "div",
73
+ {
74
+ className: cn("mt-auto flex flex-col gap-2 p-4", className),
75
+ ...props
76
+ }
77
+ ), "DrawerFooter");
78
+ DrawerFooter.displayName = "DrawerFooter";
79
+ var DrawerTitle = /* @__PURE__ */ __name(({
80
+ className,
81
+ ...props
82
+ }) => /* @__PURE__ */ jsxRuntime.jsx(
83
+ vaul.Drawer.Title,
84
+ {
85
+ className: cn(
86
+ "text-lg leading-none font-semibold tracking-tight",
87
+ className
88
+ ),
89
+ ...props
90
+ }
91
+ ), "DrawerTitle");
92
+ DrawerTitle.displayName = vaul.Drawer.Title.displayName;
93
+ var DrawerDescription = /* @__PURE__ */ __name(({
94
+ className,
95
+ ...props
96
+ }) => /* @__PURE__ */ jsxRuntime.jsx(
97
+ vaul.Drawer.Description,
98
+ {
99
+ className: cn("text-text-secondary text-sm", className),
100
+ ...props
101
+ }
102
+ ), "DrawerDescription");
103
+ DrawerDescription.displayName = vaul.Drawer.Description.displayName;
104
+
105
+ exports.Drawer = Drawer;
106
+ exports.DrawerClose = DrawerClose;
107
+ exports.DrawerContent = DrawerContent;
108
+ exports.DrawerDescription = DrawerDescription;
109
+ exports.DrawerFooter = DrawerFooter;
110
+ exports.DrawerHandle = DrawerHandle;
111
+ exports.DrawerHeader = DrawerHeader;
112
+ exports.DrawerOverlay = DrawerOverlay;
113
+ exports.DrawerPortal = DrawerPortal;
114
+ exports.DrawerTitle = DrawerTitle;
115
+ exports.DrawerTrigger = DrawerTrigger;
@@ -0,0 +1,103 @@
1
+ "use client";
2
+ import { Drawer as Drawer$1 } from 'vaul';
3
+ import { clsx } from 'clsx';
4
+ import { twMerge } from 'tailwind-merge';
5
+ import { jsx, jsxs } from 'react/jsx-runtime';
6
+
7
+ var __defProp = Object.defineProperty;
8
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
9
+ function cn(...inputs) {
10
+ return twMerge(clsx(inputs));
11
+ }
12
+ __name(cn, "cn");
13
+ var Drawer = /* @__PURE__ */ __name(({
14
+ shouldScaleBackground = false,
15
+ ...props
16
+ }) => /* @__PURE__ */ jsx(
17
+ Drawer$1.Root,
18
+ {
19
+ shouldScaleBackground,
20
+ ...props
21
+ }
22
+ ), "Drawer");
23
+ Drawer.displayName = "Drawer";
24
+ var DrawerTrigger = Drawer$1.Trigger;
25
+ var DrawerPortal = Drawer$1.Portal;
26
+ var DrawerClose = Drawer$1.Close;
27
+ var DrawerHandle = Drawer$1.Handle;
28
+ var DrawerOverlay = /* @__PURE__ */ __name(({
29
+ className,
30
+ ...props
31
+ }) => /* @__PURE__ */ jsx(
32
+ Drawer$1.Overlay,
33
+ {
34
+ className: cn("fixed inset-0 z-50 bg-black/70", className),
35
+ ...props
36
+ }
37
+ ), "DrawerOverlay");
38
+ DrawerOverlay.displayName = Drawer$1.Overlay.displayName;
39
+ var DrawerContent = /* @__PURE__ */ __name(({
40
+ className,
41
+ children,
42
+ ...props
43
+ }) => /* @__PURE__ */ jsxs(DrawerPortal, { children: [
44
+ /* @__PURE__ */ jsx(DrawerOverlay, {}),
45
+ /* @__PURE__ */ jsxs(
46
+ Drawer$1.Content,
47
+ {
48
+ className: cn(
49
+ "fixed inset-x-0 bottom-0 z-50 mt-24 flex h-auto flex-col rounded-t-[10px] border bg-gray-500 px-6 pb-6 focus:outline-hidden",
50
+ className
51
+ ),
52
+ ...props,
53
+ children: [
54
+ /* @__PURE__ */ jsx("div", { className: "mx-auto mt-4 h-2 w-[100px] rounded-full bg-gray-300" }),
55
+ children
56
+ ]
57
+ }
58
+ )
59
+ ] }), "DrawerContent");
60
+ DrawerContent.displayName = "DrawerContent";
61
+ var DrawerHeader = /* @__PURE__ */ __name(({
62
+ className,
63
+ ...props
64
+ }) => /* @__PURE__ */ jsx("div", { className: cn("pt-5 pb-0", className), ...props }), "DrawerHeader");
65
+ DrawerHeader.displayName = "DrawerHeader";
66
+ var DrawerFooter = /* @__PURE__ */ __name(({
67
+ className,
68
+ ...props
69
+ }) => /* @__PURE__ */ jsx(
70
+ "div",
71
+ {
72
+ className: cn("mt-auto flex flex-col gap-2 p-4", className),
73
+ ...props
74
+ }
75
+ ), "DrawerFooter");
76
+ DrawerFooter.displayName = "DrawerFooter";
77
+ var DrawerTitle = /* @__PURE__ */ __name(({
78
+ className,
79
+ ...props
80
+ }) => /* @__PURE__ */ jsx(
81
+ Drawer$1.Title,
82
+ {
83
+ className: cn(
84
+ "text-lg leading-none font-semibold tracking-tight",
85
+ className
86
+ ),
87
+ ...props
88
+ }
89
+ ), "DrawerTitle");
90
+ DrawerTitle.displayName = Drawer$1.Title.displayName;
91
+ var DrawerDescription = /* @__PURE__ */ __name(({
92
+ className,
93
+ ...props
94
+ }) => /* @__PURE__ */ jsx(
95
+ Drawer$1.Description,
96
+ {
97
+ className: cn("text-text-secondary text-sm", className),
98
+ ...props
99
+ }
100
+ ), "DrawerDescription");
101
+ DrawerDescription.displayName = Drawer$1.Description.displayName;
102
+
103
+ export { Drawer, DrawerClose, DrawerContent, DrawerDescription, DrawerFooter, DrawerHandle, DrawerHeader, DrawerOverlay, DrawerPortal, DrawerTitle, DrawerTrigger };
@@ -0,0 +1,202 @@
1
+ "use client";
2
+ 'use strict';
3
+
4
+ var DropdownMenuPrimitive = require('@radix-ui/react-dropdown-menu');
5
+ var lucideReact = require('lucide-react');
6
+ var clsx = require('clsx');
7
+ var tailwindMerge = require('tailwind-merge');
8
+ var jsxRuntime = require('react/jsx-runtime');
9
+
10
+ function _interopNamespace(e) {
11
+ if (e && e.__esModule) return e;
12
+ var n = Object.create(null);
13
+ if (e) {
14
+ Object.keys(e).forEach(function (k) {
15
+ if (k !== 'default') {
16
+ var d = Object.getOwnPropertyDescriptor(e, k);
17
+ Object.defineProperty(n, k, d.get ? d : {
18
+ enumerable: true,
19
+ get: function () { return e[k]; }
20
+ });
21
+ }
22
+ });
23
+ }
24
+ n.default = e;
25
+ return Object.freeze(n);
26
+ }
27
+
28
+ var DropdownMenuPrimitive__namespace = /*#__PURE__*/_interopNamespace(DropdownMenuPrimitive);
29
+
30
+ var __defProp = Object.defineProperty;
31
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
32
+ function cn(...inputs) {
33
+ return tailwindMerge.twMerge(clsx.clsx(inputs));
34
+ }
35
+ __name(cn, "cn");
36
+ var DropdownMenu = DropdownMenuPrimitive__namespace.Root;
37
+ var DropdownMenuTrigger = DropdownMenuPrimitive__namespace.Trigger;
38
+ var DropdownMenuGroup = DropdownMenuPrimitive__namespace.Group;
39
+ var DropdownMenuPortal = DropdownMenuPrimitive__namespace.Portal;
40
+ var DropdownMenuSub = DropdownMenuPrimitive__namespace.Sub;
41
+ var DropdownMenuRadioGroup = DropdownMenuPrimitive__namespace.RadioGroup;
42
+ var DropdownMenuSubTrigger = /* @__PURE__ */ __name(({
43
+ className,
44
+ inset,
45
+ children,
46
+ ...props
47
+ }) => /* @__PURE__ */ jsxRuntime.jsxs(
48
+ DropdownMenuPrimitive__namespace.SubTrigger,
49
+ {
50
+ className: cn(
51
+ "focus:bg-accent data-[state=open]:bg-accent flex cursor-default items-center rounded-xs px-2 py-1.5 text-sm outline-hidden select-none",
52
+ inset && "pl-8",
53
+ className
54
+ ),
55
+ ...props,
56
+ children: [
57
+ children,
58
+ /* @__PURE__ */ jsxRuntime.jsx(lucideReact.ChevronRight, { className: "ml-auto h-4 w-4" })
59
+ ]
60
+ }
61
+ ), "DropdownMenuSubTrigger");
62
+ DropdownMenuSubTrigger.displayName = DropdownMenuPrimitive__namespace.SubTrigger.displayName;
63
+ var DropdownMenuSubContent = /* @__PURE__ */ __name(({
64
+ className,
65
+ ...props
66
+ }) => /* @__PURE__ */ jsxRuntime.jsx(
67
+ DropdownMenuPrimitive__namespace.SubContent,
68
+ {
69
+ className: cn(
70
+ "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 z-[2000000000] min-w-[8rem] space-y-3 overflow-hidden rounded-md bg-gray-300 text-white shadow-lg",
71
+ className
72
+ ),
73
+ ...props
74
+ }
75
+ ), "DropdownMenuSubContent");
76
+ DropdownMenuSubContent.displayName = DropdownMenuPrimitive__namespace.SubContent.displayName;
77
+ var DropdownMenuContent = /* @__PURE__ */ __name(({
78
+ className,
79
+ sideOffset = 4,
80
+ ...props
81
+ }) => /* @__PURE__ */ jsxRuntime.jsx(DropdownMenuPrimitive__namespace.Portal, { children: /* @__PURE__ */ jsxRuntime.jsx(
82
+ DropdownMenuPrimitive__namespace.Content,
83
+ {
84
+ className: cn(
85
+ "font-inter border-divider 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 bg-bg-dark z-[2000000000] min-w-[8rem] overflow-hidden rounded-lg border px-4 py-6 text-white shadow-md",
86
+ className
87
+ ),
88
+ sideOffset,
89
+ ...props
90
+ }
91
+ ) }), "DropdownMenuContent");
92
+ DropdownMenuContent.displayName = DropdownMenuPrimitive__namespace.Content.displayName;
93
+ var DropdownMenuItem = /* @__PURE__ */ __name(({
94
+ className,
95
+ inset,
96
+ ...props
97
+ }) => /* @__PURE__ */ jsxRuntime.jsx(
98
+ DropdownMenuPrimitive__namespace.Item,
99
+ {
100
+ className: cn(
101
+ "focus:bg-bg-secondary relative flex cursor-default items-center rounded-lg px-2 py-2 text-sm outline-hidden transition-colors select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50",
102
+ inset && "pl-8",
103
+ className
104
+ ),
105
+ ...props
106
+ }
107
+ ), "DropdownMenuItem");
108
+ DropdownMenuItem.displayName = DropdownMenuPrimitive__namespace.Item.displayName;
109
+ var DropdownMenuCheckboxItem = /* @__PURE__ */ __name(({
110
+ className,
111
+ children,
112
+ checked,
113
+ ...props
114
+ }) => /* @__PURE__ */ jsxRuntime.jsxs(
115
+ DropdownMenuPrimitive__namespace.CheckboxItem,
116
+ {
117
+ checked,
118
+ className: cn(
119
+ "focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center rounded-xs py-1.5 pr-2 pl-8 text-sm outline-hidden transition-colors select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50",
120
+ className
121
+ ),
122
+ ...props,
123
+ children: [
124
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center rounded-xs bg-gray-300", children: /* @__PURE__ */ jsxRuntime.jsx(DropdownMenuPrimitive__namespace.ItemIndicator, { children: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Check, { className: "h-3 w-3" }) }) }),
125
+ children
126
+ ]
127
+ }
128
+ ), "DropdownMenuCheckboxItem");
129
+ DropdownMenuCheckboxItem.displayName = DropdownMenuPrimitive__namespace.CheckboxItem.displayName;
130
+ var DropdownMenuRadioItem = /* @__PURE__ */ __name(({
131
+ className,
132
+ children,
133
+ ...props
134
+ }) => /* @__PURE__ */ jsxRuntime.jsx(
135
+ DropdownMenuPrimitive__namespace.RadioItem,
136
+ {
137
+ className: cn(
138
+ "focus:bg-bg-secondary relative flex cursor-default items-center rounded-xs py-1.5 pr-2 pl-8 text-sm outline-hidden transition-colors select-none focus:text-white data-[disabled]:pointer-events-none data-[disabled]:opacity-50",
139
+ "hover:bg-bg-secondary data-[state=checked]:bg-bg-secondary",
140
+ className
141
+ ),
142
+ ...props,
143
+ children
144
+ }
145
+ ), "DropdownMenuRadioItem");
146
+ DropdownMenuRadioItem.displayName = DropdownMenuPrimitive__namespace.RadioItem.displayName;
147
+ var DropdownMenuLabel = /* @__PURE__ */ __name(({
148
+ className,
149
+ inset,
150
+ ...props
151
+ }) => /* @__PURE__ */ jsxRuntime.jsx(
152
+ DropdownMenuPrimitive__namespace.Label,
153
+ {
154
+ className: cn(
155
+ "text-text-secondary text-xs tracking-[2px] uppercase",
156
+ inset && "pl-8",
157
+ className
158
+ ),
159
+ ...props
160
+ }
161
+ ), "DropdownMenuLabel");
162
+ DropdownMenuLabel.displayName = DropdownMenuPrimitive__namespace.Label.displayName;
163
+ var DropdownMenuSeparator = /* @__PURE__ */ __name(({
164
+ className,
165
+ ...props
166
+ }) => /* @__PURE__ */ jsxRuntime.jsx(
167
+ DropdownMenuPrimitive__namespace.Separator,
168
+ {
169
+ className: cn("bg-divider -mx-1 my-1 h-px", className),
170
+ ...props
171
+ }
172
+ ), "DropdownMenuSeparator");
173
+ DropdownMenuSeparator.displayName = DropdownMenuPrimitive__namespace.Separator.displayName;
174
+ var DropdownMenuShortcut = /* @__PURE__ */ __name(({
175
+ className,
176
+ ...props
177
+ }) => {
178
+ return /* @__PURE__ */ jsxRuntime.jsx(
179
+ "span",
180
+ {
181
+ className: cn("ml-auto text-xs tracking-widest opacity-60", className),
182
+ ...props
183
+ }
184
+ );
185
+ }, "DropdownMenuShortcut");
186
+ DropdownMenuShortcut.displayName = "DropdownMenuShortcut";
187
+
188
+ exports.DropdownMenu = DropdownMenu;
189
+ exports.DropdownMenuCheckboxItem = DropdownMenuCheckboxItem;
190
+ exports.DropdownMenuContent = DropdownMenuContent;
191
+ exports.DropdownMenuGroup = DropdownMenuGroup;
192
+ exports.DropdownMenuItem = DropdownMenuItem;
193
+ exports.DropdownMenuLabel = DropdownMenuLabel;
194
+ exports.DropdownMenuPortal = DropdownMenuPortal;
195
+ exports.DropdownMenuRadioGroup = DropdownMenuRadioGroup;
196
+ exports.DropdownMenuRadioItem = DropdownMenuRadioItem;
197
+ exports.DropdownMenuSeparator = DropdownMenuSeparator;
198
+ exports.DropdownMenuShortcut = DropdownMenuShortcut;
199
+ exports.DropdownMenuSub = DropdownMenuSub;
200
+ exports.DropdownMenuSubContent = DropdownMenuSubContent;
201
+ exports.DropdownMenuSubTrigger = DropdownMenuSubTrigger;
202
+ exports.DropdownMenuTrigger = DropdownMenuTrigger;
@@ -0,0 +1,166 @@
1
+ "use client";
2
+ import * as DropdownMenuPrimitive from '@radix-ui/react-dropdown-menu';
3
+ import { ChevronRight, Check } from 'lucide-react';
4
+ import { clsx } from 'clsx';
5
+ import { twMerge } from 'tailwind-merge';
6
+ import { jsxs, jsx } from 'react/jsx-runtime';
7
+
8
+ var __defProp = Object.defineProperty;
9
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
10
+ function cn(...inputs) {
11
+ return twMerge(clsx(inputs));
12
+ }
13
+ __name(cn, "cn");
14
+ var DropdownMenu = DropdownMenuPrimitive.Root;
15
+ var DropdownMenuTrigger = DropdownMenuPrimitive.Trigger;
16
+ var DropdownMenuGroup = DropdownMenuPrimitive.Group;
17
+ var DropdownMenuPortal = DropdownMenuPrimitive.Portal;
18
+ var DropdownMenuSub = DropdownMenuPrimitive.Sub;
19
+ var DropdownMenuRadioGroup = DropdownMenuPrimitive.RadioGroup;
20
+ var DropdownMenuSubTrigger = /* @__PURE__ */ __name(({
21
+ className,
22
+ inset,
23
+ children,
24
+ ...props
25
+ }) => /* @__PURE__ */ jsxs(
26
+ DropdownMenuPrimitive.SubTrigger,
27
+ {
28
+ className: cn(
29
+ "focus:bg-accent data-[state=open]:bg-accent flex cursor-default items-center rounded-xs px-2 py-1.5 text-sm outline-hidden select-none",
30
+ inset && "pl-8",
31
+ className
32
+ ),
33
+ ...props,
34
+ children: [
35
+ children,
36
+ /* @__PURE__ */ jsx(ChevronRight, { className: "ml-auto h-4 w-4" })
37
+ ]
38
+ }
39
+ ), "DropdownMenuSubTrigger");
40
+ DropdownMenuSubTrigger.displayName = DropdownMenuPrimitive.SubTrigger.displayName;
41
+ var DropdownMenuSubContent = /* @__PURE__ */ __name(({
42
+ className,
43
+ ...props
44
+ }) => /* @__PURE__ */ jsx(
45
+ DropdownMenuPrimitive.SubContent,
46
+ {
47
+ className: cn(
48
+ "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 z-[2000000000] min-w-[8rem] space-y-3 overflow-hidden rounded-md bg-gray-300 text-white shadow-lg",
49
+ className
50
+ ),
51
+ ...props
52
+ }
53
+ ), "DropdownMenuSubContent");
54
+ DropdownMenuSubContent.displayName = DropdownMenuPrimitive.SubContent.displayName;
55
+ var DropdownMenuContent = /* @__PURE__ */ __name(({
56
+ className,
57
+ sideOffset = 4,
58
+ ...props
59
+ }) => /* @__PURE__ */ jsx(DropdownMenuPrimitive.Portal, { children: /* @__PURE__ */ jsx(
60
+ DropdownMenuPrimitive.Content,
61
+ {
62
+ className: cn(
63
+ "font-inter border-divider 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 bg-bg-dark z-[2000000000] min-w-[8rem] overflow-hidden rounded-lg border px-4 py-6 text-white shadow-md",
64
+ className
65
+ ),
66
+ sideOffset,
67
+ ...props
68
+ }
69
+ ) }), "DropdownMenuContent");
70
+ DropdownMenuContent.displayName = DropdownMenuPrimitive.Content.displayName;
71
+ var DropdownMenuItem = /* @__PURE__ */ __name(({
72
+ className,
73
+ inset,
74
+ ...props
75
+ }) => /* @__PURE__ */ jsx(
76
+ DropdownMenuPrimitive.Item,
77
+ {
78
+ className: cn(
79
+ "focus:bg-bg-secondary relative flex cursor-default items-center rounded-lg px-2 py-2 text-sm outline-hidden transition-colors select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50",
80
+ inset && "pl-8",
81
+ className
82
+ ),
83
+ ...props
84
+ }
85
+ ), "DropdownMenuItem");
86
+ DropdownMenuItem.displayName = DropdownMenuPrimitive.Item.displayName;
87
+ var DropdownMenuCheckboxItem = /* @__PURE__ */ __name(({
88
+ className,
89
+ children,
90
+ checked,
91
+ ...props
92
+ }) => /* @__PURE__ */ jsxs(
93
+ DropdownMenuPrimitive.CheckboxItem,
94
+ {
95
+ checked,
96
+ className: cn(
97
+ "focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center rounded-xs py-1.5 pr-2 pl-8 text-sm outline-hidden transition-colors select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50",
98
+ className
99
+ ),
100
+ ...props,
101
+ children: [
102
+ /* @__PURE__ */ jsx("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center rounded-xs bg-gray-300", children: /* @__PURE__ */ jsx(DropdownMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ jsx(Check, { className: "h-3 w-3" }) }) }),
103
+ children
104
+ ]
105
+ }
106
+ ), "DropdownMenuCheckboxItem");
107
+ DropdownMenuCheckboxItem.displayName = DropdownMenuPrimitive.CheckboxItem.displayName;
108
+ var DropdownMenuRadioItem = /* @__PURE__ */ __name(({
109
+ className,
110
+ children,
111
+ ...props
112
+ }) => /* @__PURE__ */ jsx(
113
+ DropdownMenuPrimitive.RadioItem,
114
+ {
115
+ className: cn(
116
+ "focus:bg-bg-secondary relative flex cursor-default items-center rounded-xs py-1.5 pr-2 pl-8 text-sm outline-hidden transition-colors select-none focus:text-white data-[disabled]:pointer-events-none data-[disabled]:opacity-50",
117
+ "hover:bg-bg-secondary data-[state=checked]:bg-bg-secondary",
118
+ className
119
+ ),
120
+ ...props,
121
+ children
122
+ }
123
+ ), "DropdownMenuRadioItem");
124
+ DropdownMenuRadioItem.displayName = DropdownMenuPrimitive.RadioItem.displayName;
125
+ var DropdownMenuLabel = /* @__PURE__ */ __name(({
126
+ className,
127
+ inset,
128
+ ...props
129
+ }) => /* @__PURE__ */ jsx(
130
+ DropdownMenuPrimitive.Label,
131
+ {
132
+ className: cn(
133
+ "text-text-secondary text-xs tracking-[2px] uppercase",
134
+ inset && "pl-8",
135
+ className
136
+ ),
137
+ ...props
138
+ }
139
+ ), "DropdownMenuLabel");
140
+ DropdownMenuLabel.displayName = DropdownMenuPrimitive.Label.displayName;
141
+ var DropdownMenuSeparator = /* @__PURE__ */ __name(({
142
+ className,
143
+ ...props
144
+ }) => /* @__PURE__ */ jsx(
145
+ DropdownMenuPrimitive.Separator,
146
+ {
147
+ className: cn("bg-divider -mx-1 my-1 h-px", className),
148
+ ...props
149
+ }
150
+ ), "DropdownMenuSeparator");
151
+ DropdownMenuSeparator.displayName = DropdownMenuPrimitive.Separator.displayName;
152
+ var DropdownMenuShortcut = /* @__PURE__ */ __name(({
153
+ className,
154
+ ...props
155
+ }) => {
156
+ return /* @__PURE__ */ jsx(
157
+ "span",
158
+ {
159
+ className: cn("ml-auto text-xs tracking-widest opacity-60", className),
160
+ ...props
161
+ }
162
+ );
163
+ }, "DropdownMenuShortcut");
164
+ DropdownMenuShortcut.displayName = "DropdownMenuShortcut";
165
+
166
+ export { DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger };
@@ -0,0 +1,48 @@
1
+ "use client";
2
+ 'use strict';
3
+
4
+ var react = require('react');
5
+ var jsxRuntime = require('react/jsx-runtime');
6
+
7
+ var __defProp = Object.defineProperty;
8
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
9
+ function AdvancedChart({ symbol = "NASDAQ:AAPL" }) {
10
+ const container = react.useRef(null);
11
+ react.useEffect(() => {
12
+ if (!container.current) return;
13
+ if (container.current.dataset.initialized === "true") {
14
+ return;
15
+ }
16
+ container.current.dataset.initialized = "true";
17
+ const script = document.createElement("script");
18
+ script.src = "https://s3.tradingview.com/external-embedding/embed-widget-advanced-chart.js";
19
+ script.type = "text/javascript";
20
+ script.async = true;
21
+ script.innerHTML = JSON.stringify({
22
+ width: "100%",
23
+ height: "600",
24
+ symbol,
25
+ interval: "D",
26
+ timezone: "Etc/UTC",
27
+ theme: "dark",
28
+ style: "1",
29
+ locale: "en",
30
+ allow_symbol_change: true,
31
+ calendar: false,
32
+ support_host: "https://www.tradingview.com"
33
+ });
34
+ container.current.appendChild(script);
35
+ return () => {
36
+ if (container.current) {
37
+ delete container.current.dataset.initialized;
38
+ const scripts = container.current.querySelectorAll("script");
39
+ scripts.forEach((s) => s.remove());
40
+ }
41
+ };
42
+ }, [symbol]);
43
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "tradingview-widget-container w-full h-[600px]", ref: container, children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "tradingview-widget-container__widget h-full" }) });
44
+ }
45
+ __name(AdvancedChart, "AdvancedChart");
46
+ var AdvancedChart_default = react.memo(AdvancedChart);
47
+
48
+ module.exports = AdvancedChart_default;
@@ -0,0 +1,46 @@
1
+ "use client";
2
+ import { memo, useRef, useEffect } from 'react';
3
+ import { jsx } from 'react/jsx-runtime';
4
+
5
+ var __defProp = Object.defineProperty;
6
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
7
+ function AdvancedChart({ symbol = "NASDAQ:AAPL" }) {
8
+ const container = useRef(null);
9
+ useEffect(() => {
10
+ if (!container.current) return;
11
+ if (container.current.dataset.initialized === "true") {
12
+ return;
13
+ }
14
+ container.current.dataset.initialized = "true";
15
+ const script = document.createElement("script");
16
+ script.src = "https://s3.tradingview.com/external-embedding/embed-widget-advanced-chart.js";
17
+ script.type = "text/javascript";
18
+ script.async = true;
19
+ script.innerHTML = JSON.stringify({
20
+ width: "100%",
21
+ height: "600",
22
+ symbol,
23
+ interval: "D",
24
+ timezone: "Etc/UTC",
25
+ theme: "dark",
26
+ style: "1",
27
+ locale: "en",
28
+ allow_symbol_change: true,
29
+ calendar: false,
30
+ support_host: "https://www.tradingview.com"
31
+ });
32
+ container.current.appendChild(script);
33
+ return () => {
34
+ if (container.current) {
35
+ delete container.current.dataset.initialized;
36
+ const scripts = container.current.querySelectorAll("script");
37
+ scripts.forEach((s) => s.remove());
38
+ }
39
+ };
40
+ }, [symbol]);
41
+ return /* @__PURE__ */ jsx("div", { className: "tradingview-widget-container w-full h-[600px]", ref: container, children: /* @__PURE__ */ jsx("div", { className: "tradingview-widget-container__widget h-full" }) });
42
+ }
43
+ __name(AdvancedChart, "AdvancedChart");
44
+ var AdvancedChart_default = memo(AdvancedChart);
45
+
46
+ export { AdvancedChart_default as default };