@agg-market/ui 0.0.1

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 (192) hide show
  1. package/dist/badge.d.mts +26 -0
  2. package/dist/badge.d.ts +26 -0
  3. package/dist/badge.js +70 -0
  4. package/dist/badge.mjs +9 -0
  5. package/dist/button.d.mts +20 -0
  6. package/dist/button.d.ts +20 -0
  7. package/dist/button.js +197 -0
  8. package/dist/button.mjs +8 -0
  9. package/dist/card.d.mts +8 -0
  10. package/dist/card.d.ts +8 -0
  11. package/dist/card.js +84 -0
  12. package/dist/card.mjs +7 -0
  13. package/dist/chart.d.mts +40 -0
  14. package/dist/chart.d.ts +40 -0
  15. package/dist/chart.js +418 -0
  16. package/dist/chart.mjs +8 -0
  17. package/dist/chunk-2PGUPOXY.mjs +285 -0
  18. package/dist/chunk-3DV3D2LH.mjs +155 -0
  19. package/dist/chunk-44UEI6KD.mjs +280 -0
  20. package/dist/chunk-4ADCXJE6.mjs +297 -0
  21. package/dist/chunk-4GSXVVSA.mjs +64 -0
  22. package/dist/chunk-4NK2FNAG.mjs +581 -0
  23. package/dist/chunk-4XWCYUV3.mjs +355 -0
  24. package/dist/chunk-5MN6ZNFA.mjs +355 -0
  25. package/dist/chunk-6RRBINER.mjs +50 -0
  26. package/dist/chunk-765JPQDG.mjs +280 -0
  27. package/dist/chunk-7CD7GIZC.mjs +850 -0
  28. package/dist/chunk-7XRKA6XF.mjs +462 -0
  29. package/dist/chunk-AOFP74IB.mjs +850 -0
  30. package/dist/chunk-BNDFQPHF.mjs +9 -0
  31. package/dist/chunk-C4OI72SM.mjs +14 -0
  32. package/dist/chunk-CB2MLGCJ.mjs +279 -0
  33. package/dist/chunk-CKTAVEW2.mjs +212 -0
  34. package/dist/chunk-DA6KZWSK.mjs +807 -0
  35. package/dist/chunk-DBD5GHHD.mjs +147 -0
  36. package/dist/chunk-DQ6XFBYJ.mjs +37 -0
  37. package/dist/chunk-FACIYUNK.mjs +217 -0
  38. package/dist/chunk-FUJQIYOF.mjs +37 -0
  39. package/dist/chunk-FZTAHWOS.mjs +82 -0
  40. package/dist/chunk-GC3QIIH7.mjs +112 -0
  41. package/dist/chunk-GPBLZGJ2.mjs +136 -0
  42. package/dist/chunk-H4LELROL.mjs +262 -0
  43. package/dist/chunk-H7P6DIX4.mjs +262 -0
  44. package/dist/chunk-H7YEBGYY.mjs +42 -0
  45. package/dist/chunk-HJOBAMDU.mjs +142 -0
  46. package/dist/chunk-IJG5I642.mjs +462 -0
  47. package/dist/chunk-IY2AA3OL.mjs +50 -0
  48. package/dist/chunk-J6L5BLKX.mjs +136 -0
  49. package/dist/chunk-J7OETCZ7.mjs +147 -0
  50. package/dist/chunk-JLLMIPIX.mjs +42 -0
  51. package/dist/chunk-KBRLFTJT.mjs +741 -0
  52. package/dist/chunk-KDBYDMYV.mjs +64 -0
  53. package/dist/chunk-L6E6Q4C4.mjs +217 -0
  54. package/dist/chunk-LY6474C4.mjs +297 -0
  55. package/dist/chunk-M23S2DVV.mjs +581 -0
  56. package/dist/chunk-MG243DSX.mjs +44 -0
  57. package/dist/chunk-MRHSN2B7.mjs +279 -0
  58. package/dist/chunk-MXWRCVRJ.mjs +285 -0
  59. package/dist/chunk-NFYS557L.mjs +481 -0
  60. package/dist/chunk-NNSY462N.mjs +212 -0
  61. package/dist/chunk-OUOIDPGX.mjs +25 -0
  62. package/dist/chunk-P5PFQX75.mjs +31 -0
  63. package/dist/chunk-P674XRDY.mjs +481 -0
  64. package/dist/chunk-PAQ542ER.mjs +170 -0
  65. package/dist/chunk-QE46DVJG.mjs +323 -0
  66. package/dist/chunk-QXFDXXDB.mjs +792 -0
  67. package/dist/chunk-R3DRVI4J.mjs +741 -0
  68. package/dist/chunk-TTOR7JCT.mjs +155 -0
  69. package/dist/chunk-V5WIYMKS.mjs +25 -0
  70. package/dist/chunk-VAZE267Q.mjs +82 -0
  71. package/dist/chunk-VLIJ7PQK.mjs +792 -0
  72. package/dist/chunk-VYNVBJK6.mjs +44 -0
  73. package/dist/chunk-WIWJ6DIE.mjs +323 -0
  74. package/dist/chunk-XDAEEJYR.mjs +142 -0
  75. package/dist/chunk-YUIZZ6XE.mjs +31 -0
  76. package/dist/connect-button.d.mts +40 -0
  77. package/dist/connect-button.d.ts +40 -0
  78. package/dist/connect-button.js +1815 -0
  79. package/dist/connect-button.mjs +14 -0
  80. package/dist/event-list-item-details.d.mts +11 -0
  81. package/dist/event-list-item-details.d.ts +11 -0
  82. package/dist/event-list-item-details.js +2140 -0
  83. package/dist/event-list-item-details.mjs +19 -0
  84. package/dist/event-list-item-details.types-CMbXOrT-.d.ts +53 -0
  85. package/dist/event-list-item-details.types-CxWr4Qn1.d.ts +53 -0
  86. package/dist/event-list-item-details.types-DRi99PZq.d.mts +53 -0
  87. package/dist/event-list-item-details.types-DekJKeMD.d.mts +53 -0
  88. package/dist/event-list-item.d.mts +10 -0
  89. package/dist/event-list-item.d.ts +10 -0
  90. package/dist/event-list-item.js +2097 -0
  91. package/dist/event-list-item.mjs +17 -0
  92. package/dist/event-list-item.types-B1490EQm.d.mts +46 -0
  93. package/dist/event-list-item.types-B1490EQm.d.ts +46 -0
  94. package/dist/event-list-item.types-Y6IeJ4e4.d.mts +46 -0
  95. package/dist/event-list-item.types-Y6IeJ4e4.d.ts +46 -0
  96. package/dist/event-list.d.mts +9 -0
  97. package/dist/event-list.d.ts +9 -0
  98. package/dist/event-list.js +3151 -0
  99. package/dist/event-list.mjs +20 -0
  100. package/dist/event-list.types-Bpp6Vn-t.d.mts +13 -0
  101. package/dist/event-list.types-Bpp6Vn-t.d.ts +13 -0
  102. package/dist/event-list.types-CkAAUqwW.d.mts +13 -0
  103. package/dist/event-list.types-CkAAUqwW.d.ts +13 -0
  104. package/dist/event-market-page.d.mts +52 -0
  105. package/dist/event-market-page.d.ts +52 -0
  106. package/dist/event-market-page.js +5369 -0
  107. package/dist/event-market-page.mjs +29 -0
  108. package/dist/hello-world.d.mts +8 -0
  109. package/dist/hello-world.d.ts +8 -0
  110. package/dist/hello-world.js +80 -0
  111. package/dist/hello-world.mjs +8 -0
  112. package/dist/home-page.d.mts +51 -0
  113. package/dist/home-page.d.ts +51 -0
  114. package/dist/home-page.js +3415 -0
  115. package/dist/home-page.mjs +21 -0
  116. package/dist/icon.d.mts +123 -0
  117. package/dist/icon.d.ts +123 -0
  118. package/dist/icon.js +922 -0
  119. package/dist/icon.mjs +57 -0
  120. package/dist/index.d.mts +70 -0
  121. package/dist/index.d.ts +70 -0
  122. package/dist/index.js +8184 -0
  123. package/dist/index.mjs +307 -0
  124. package/dist/loading-icon.d.mts +14 -0
  125. package/dist/loading-icon.d.ts +14 -0
  126. package/dist/loading-icon.js +115 -0
  127. package/dist/loading-icon.mjs +8 -0
  128. package/dist/market-details.d.mts +73 -0
  129. package/dist/market-details.d.ts +73 -0
  130. package/dist/market-details.js +3923 -0
  131. package/dist/market-details.mjs +22 -0
  132. package/dist/modal.d.mts +66 -0
  133. package/dist/modal.d.ts +66 -0
  134. package/dist/modal.js +317 -0
  135. package/dist/modal.mjs +9 -0
  136. package/dist/number-value.d.mts +14 -0
  137. package/dist/number-value.d.ts +14 -0
  138. package/dist/number-value.js +67 -0
  139. package/dist/number-value.mjs +7 -0
  140. package/dist/onboarding-modal.d.mts +88 -0
  141. package/dist/onboarding-modal.d.ts +88 -0
  142. package/dist/onboarding-modal.js +2242 -0
  143. package/dist/onboarding-modal.mjs +24 -0
  144. package/dist/place-order.d.mts +20 -0
  145. package/dist/place-order.d.ts +20 -0
  146. package/dist/place-order.js +2916 -0
  147. package/dist/place-order.mjs +18 -0
  148. package/dist/registry-CVn79H3I.d.mts +106 -0
  149. package/dist/registry-CVn79H3I.d.ts +106 -0
  150. package/dist/search.d.mts +69 -0
  151. package/dist/search.d.ts +69 -0
  152. package/dist/search.js +1465 -0
  153. package/dist/search.mjs +12 -0
  154. package/dist/select.d.mts +19 -0
  155. package/dist/select.d.ts +19 -0
  156. package/dist/select.js +920 -0
  157. package/dist/select.mjs +11 -0
  158. package/dist/settlement.d.mts +16 -0
  159. package/dist/settlement.d.ts +16 -0
  160. package/dist/settlement.js +1769 -0
  161. package/dist/settlement.mjs +15 -0
  162. package/dist/skeleton.d.mts +22 -0
  163. package/dist/skeleton.d.ts +22 -0
  164. package/dist/skeleton.js +523 -0
  165. package/dist/skeleton.mjs +10 -0
  166. package/dist/styles.css +2 -0
  167. package/dist/switch-button.d.mts +21 -0
  168. package/dist/switch-button.d.ts +21 -0
  169. package/dist/switch-button.js +184 -0
  170. package/dist/switch-button.mjs +7 -0
  171. package/dist/tabs.d.mts +27 -0
  172. package/dist/tabs.d.ts +27 -0
  173. package/dist/tabs.js +1708 -0
  174. package/dist/tabs.mjs +12 -0
  175. package/dist/tailwind.css +2 -0
  176. package/dist/types-8VUuQVZq.d.mts +387 -0
  177. package/dist/types-8VUuQVZq.d.ts +387 -0
  178. package/dist/types-CayJ8tWA.d.mts +3 -0
  179. package/dist/types-CayJ8tWA.d.ts +3 -0
  180. package/dist/typography.d.mts +16 -0
  181. package/dist/typography.d.ts +16 -0
  182. package/dist/typography.js +62 -0
  183. package/dist/typography.mjs +7 -0
  184. package/dist/venue-logo.d.mts +12 -0
  185. package/dist/venue-logo.d.ts +12 -0
  186. package/dist/venue-logo.js +350 -0
  187. package/dist/venue-logo.mjs +10 -0
  188. package/dist/venue-logo.types-4hmCg3D3.d.ts +17 -0
  189. package/dist/venue-logo.types-B1iPJgiD.d.mts +17 -0
  190. package/dist/venue-logo.types-Bg8eXtGp.d.ts +17 -0
  191. package/dist/venue-logo.types-QNDwiQ77.d.mts +17 -0
  192. package/package.json +195 -0
@@ -0,0 +1,2242 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __defProps = Object.defineProperties;
5
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
6
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
7
+ var __getOwnPropNames = Object.getOwnPropertyNames;
8
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
9
+ var __getProtoOf = Object.getPrototypeOf;
10
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
11
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
12
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
13
+ var __spreadValues = (a, b) => {
14
+ for (var prop in b || (b = {}))
15
+ if (__hasOwnProp.call(b, prop))
16
+ __defNormalProp(a, prop, b[prop]);
17
+ if (__getOwnPropSymbols)
18
+ for (var prop of __getOwnPropSymbols(b)) {
19
+ if (__propIsEnum.call(b, prop))
20
+ __defNormalProp(a, prop, b[prop]);
21
+ }
22
+ return a;
23
+ };
24
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
25
+ var __objRest = (source, exclude) => {
26
+ var target = {};
27
+ for (var prop in source)
28
+ if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
29
+ target[prop] = source[prop];
30
+ if (source != null && __getOwnPropSymbols)
31
+ for (var prop of __getOwnPropSymbols(source)) {
32
+ if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
33
+ target[prop] = source[prop];
34
+ }
35
+ return target;
36
+ };
37
+ var __export = (target, all) => {
38
+ for (var name in all)
39
+ __defProp(target, name, { get: all[name], enumerable: true });
40
+ };
41
+ var __copyProps = (to, from, except, desc) => {
42
+ if (from && typeof from === "object" || typeof from === "function") {
43
+ for (let key of __getOwnPropNames(from))
44
+ if (!__hasOwnProp.call(to, key) && key !== except)
45
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
46
+ }
47
+ return to;
48
+ };
49
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
50
+ // If the importer is in node compatibility mode or this is not an ESM
51
+ // file that has been converted to a CommonJS file using a Babel-
52
+ // compatible transform (i.e. "__esModule" has not been set), then set
53
+ // "default" to the CommonJS "module.exports" for node compatibility.
54
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
55
+ mod
56
+ ));
57
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
58
+ var __async = (__this, __arguments, generator) => {
59
+ return new Promise((resolve, reject) => {
60
+ var fulfilled = (value) => {
61
+ try {
62
+ step(generator.next(value));
63
+ } catch (e) {
64
+ reject(e);
65
+ }
66
+ };
67
+ var rejected = (value) => {
68
+ try {
69
+ step(generator.throw(value));
70
+ } catch (e) {
71
+ reject(e);
72
+ }
73
+ };
74
+ var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
75
+ step((generator = generator.apply(__this, __arguments)).next());
76
+ });
77
+ };
78
+
79
+ // src/onboarding/index.tsx
80
+ var onboarding_exports = {};
81
+ __export(onboarding_exports, {
82
+ ConnectAccountsStep: () => ConnectAccountsStep,
83
+ ConnectKalshiModal: () => ConnectKalshiModal,
84
+ ConnectOnchainModal: () => ConnectOnchainModal,
85
+ HowItWorksStep: () => HowItWorksStep,
86
+ OnboardingModal: () => OnboardingModal,
87
+ ProfileSetupStep: () => ProfileSetupStep
88
+ });
89
+ module.exports = __toCommonJS(onboarding_exports);
90
+ var import_react4 = require("react");
91
+ var import_hooks9 = require("@agg-market/hooks");
92
+ var Dialog4 = __toESM(require("@radix-ui/react-dialog"));
93
+
94
+ // src/primitives/modal/index.tsx
95
+ var Dialog = __toESM(require("@radix-ui/react-dialog"));
96
+ var import_hooks = require("@agg-market/hooks");
97
+
98
+ // src/constants.ts
99
+ var AGG_ROOT_CLASS_NAME = "agg-root";
100
+
101
+ // src/shared/utils.ts
102
+ var cn = (...values) => values.filter(Boolean).join(" ");
103
+ var getMotionClassName = (enabled, ...values) => {
104
+ if (!enabled)
105
+ return void 0;
106
+ return cn(...values);
107
+ };
108
+
109
+ // src/primitives/icon/types.ts
110
+ var getIconA11yProps = (title) => ({
111
+ role: title ? "img" : "presentation",
112
+ "aria-hidden": title ? void 0 : true
113
+ });
114
+
115
+ // src/primitives/icon/svg/close.tsx
116
+ var import_jsx_runtime = require("react/jsx-runtime");
117
+ var CloseIcon = (_a) => {
118
+ var _b = _a, { title, className } = _b, props = __objRest(_b, ["title", "className"]);
119
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
120
+ "svg",
121
+ __spreadProps(__spreadValues(__spreadValues({
122
+ width: "16",
123
+ height: "16",
124
+ viewBox: "0 0 16 16",
125
+ fill: "none",
126
+ xmlns: "http://www.w3.org/2000/svg",
127
+ className
128
+ }, getIconA11yProps(title)), props), {
129
+ children: [
130
+ title ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)("title", { children: title }) : null,
131
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
132
+ "path",
133
+ {
134
+ d: "M12 4L4 12M4 4l8 8",
135
+ stroke: "currentColor",
136
+ strokeWidth: "2",
137
+ strokeLinecap: "round",
138
+ strokeLinejoin: "round"
139
+ }
140
+ )
141
+ ]
142
+ })
143
+ );
144
+ };
145
+ CloseIcon.displayName = "CloseIcon";
146
+
147
+ // src/primitives/modal/index.tsx
148
+ var import_jsx_runtime2 = require("react/jsx-runtime");
149
+ var Modal = ({
150
+ open,
151
+ onOpenChange,
152
+ children,
153
+ "aria-label": _ariaLabel,
154
+ "aria-labelledby": _ariaLabelledBy
155
+ }) => {
156
+ return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(Dialog.Root, { open, onOpenChange, children });
157
+ };
158
+ var ModalContainer = ({
159
+ children,
160
+ maxWidth = "600px",
161
+ classNames,
162
+ "aria-label": ariaLabel,
163
+ "aria-labelledby": ariaLabelledBy
164
+ }) => {
165
+ const { rootClassName, enableAnimations } = (0, import_hooks.useSdkUiConfig)();
166
+ const overlayAnimationClassName = enableAnimations ? "motion-safe:data-[state=open]:animate-agg-modal-overlay-in motion-safe:data-[state=closed]:animate-agg-modal-overlay-out motion-reduce:animate-none" : void 0;
167
+ const panelAnimationClassName = enableAnimations ? "motion-safe:data-[state=open]:animate-agg-modal-panel-in motion-safe:data-[state=closed]:animate-agg-modal-panel-out motion-reduce:animate-none" : void 0;
168
+ return /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)(Dialog.Portal, { children: [
169
+ /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
170
+ Dialog.Overlay,
171
+ {
172
+ className: cn(
173
+ "fixed inset-0 z-agg-overlay bg-agg-overlay",
174
+ overlayAnimationClassName,
175
+ classNames == null ? void 0 : classNames.overlay
176
+ )
177
+ }
178
+ ),
179
+ /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
180
+ Dialog.Content,
181
+ {
182
+ className: cn(
183
+ "fixed inset-0 z-agg-modal",
184
+ "flex items-center justify-center p-4",
185
+ "sm:p-5",
186
+ classNames == null ? void 0 : classNames.content
187
+ ),
188
+ "aria-label": ariaLabel,
189
+ "aria-labelledby": ariaLabelledBy,
190
+ onCloseAutoFocus: (event) => {
191
+ event.preventDefault();
192
+ },
193
+ children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
194
+ "div",
195
+ {
196
+ className: cn(
197
+ AGG_ROOT_CLASS_NAME,
198
+ rootClassName,
199
+ "flex w-full max-h-[calc(100%-2rem)] flex-col font-agg-sans",
200
+ "rounded-agg-2xl border border-agg-separator",
201
+ "bg-agg-secondary text-agg-foreground shadow-agg-modal",
202
+ "origin-bottom overflow-hidden will-change-transform",
203
+ panelAnimationClassName,
204
+ classNames == null ? void 0 : classNames.container
205
+ ),
206
+ "data-agg-animations": enableAnimations ? "true" : "false",
207
+ style: { maxWidth },
208
+ children
209
+ }
210
+ )
211
+ }
212
+ )
213
+ ] });
214
+ };
215
+ Modal.Container = ModalContainer;
216
+ var ModalHeader = ({
217
+ title,
218
+ subtitle,
219
+ leftElement,
220
+ rightElement,
221
+ hideClose = false,
222
+ closeIcon,
223
+ classNames,
224
+ children,
225
+ hideBorder = false
226
+ }) => {
227
+ const { enableAnimations } = (0, import_hooks.useSdkUiConfig)();
228
+ const labels = (0, import_hooks.useLabels)();
229
+ const defaultCloseIcon = /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(CloseIcon, { className: "h-6 w-6" });
230
+ const resolvedCloseIcon = closeIcon != null ? closeIcon : defaultCloseIcon;
231
+ return /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)(
232
+ "div",
233
+ {
234
+ className: cn(
235
+ "flex flex-col",
236
+ "sticky top-0 z-20",
237
+ "bg-agg-secondary",
238
+ hideBorder ? "border-0" : "border-b border-agg-separator",
239
+ subtitle ? "min-h-20" : "min-h-16",
240
+ classNames == null ? void 0 : classNames.root
241
+ ),
242
+ children: [
243
+ /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)(
244
+ "div",
245
+ {
246
+ className: cn(
247
+ "flex items-center justify-between",
248
+ "px-4 py-4",
249
+ "sm:px-8 sm:py-6",
250
+ subtitle && "sm:py-4",
251
+ children ? "pb-3 sm:pb-4" : void 0,
252
+ classNames == null ? void 0 : classNames.container
253
+ ),
254
+ children: [
255
+ leftElement ? /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_jsx_runtime2.Fragment, { children: leftElement }) : null,
256
+ /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)("div", { className: cn("max-w-[calc(100%-1rem)] flex-1", classNames == null ? void 0 : classNames.titleContainer), children: [
257
+ /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
258
+ Dialog.Title,
259
+ {
260
+ className: cn(
261
+ !title && "invisible",
262
+ "flex items-center text-agg-lg font-agg-bold leading-agg-6",
263
+ "sm:text-agg-2xl sm:leading-agg-8",
264
+ "text-ellipsis overflow-hidden whitespace-nowrap",
265
+ classNames == null ? void 0 : classNames.title
266
+ ),
267
+ children: title
268
+ }
269
+ ),
270
+ subtitle ? /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
271
+ "span",
272
+ {
273
+ className: cn(
274
+ "text-agg-sm leading-agg-4 text-agg-muted-foreground sm:leading-agg-5",
275
+ classNames == null ? void 0 : classNames.subtitle
276
+ ),
277
+ children: subtitle
278
+ }
279
+ ) : null
280
+ ] }),
281
+ /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)("div", { className: "flex flex-row gap-6 items-center justify-end", children: [
282
+ rightElement ? /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_jsx_runtime2.Fragment, { children: rightElement }) : null,
283
+ !hideClose && /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
284
+ Dialog.Close,
285
+ {
286
+ className: cn(
287
+ "outline-0 flex items-center hover:cursor-pointer justify-center text-agg-foreground hover:text-agg-foreground/80",
288
+ getMotionClassName(enableAnimations, "transition-colors"),
289
+ classNames == null ? void 0 : classNames.close
290
+ ),
291
+ "aria-label": labels.common.close,
292
+ children: resolvedCloseIcon
293
+ }
294
+ )
295
+ ] })
296
+ ]
297
+ }
298
+ ),
299
+ children ? /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("div", { children }) : null
300
+ ]
301
+ }
302
+ );
303
+ };
304
+ Modal.Header = ModalHeader;
305
+ var ModalBody = ({ children, classNames }) => {
306
+ return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
307
+ "div",
308
+ {
309
+ className: cn(
310
+ "grow overflow-y-auto",
311
+ "px-4 py-6",
312
+ "sm:p-8",
313
+ "bg-agg-secondary text-agg-foreground",
314
+ classNames == null ? void 0 : classNames.root
315
+ ),
316
+ children
317
+ }
318
+ );
319
+ };
320
+ Modal.Body = ModalBody;
321
+ var ModalFooter = ({
322
+ children,
323
+ classNames,
324
+ hideBorder = false
325
+ }) => {
326
+ return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
327
+ "div",
328
+ {
329
+ className: cn(
330
+ "sticky bottom-0",
331
+ "bg-agg-secondary",
332
+ "flex h-[73px] w-full flex-row items-center justify-between gap-3",
333
+ "border-agg-separator p-4",
334
+ "sm:h-20 sm:justify-end sm:px-8 sm:py-5",
335
+ hideBorder ? "border-0" : "border-t",
336
+ classNames == null ? void 0 : classNames.root
337
+ ),
338
+ children
339
+ }
340
+ );
341
+ };
342
+ Modal.Footer = ModalFooter;
343
+ Modal.displayName = "Modal";
344
+
345
+ // src/onboarding/onboarding-modal.constants.ts
346
+ var HOW_IT_WORKS_FEATURE_KEYS = [
347
+ "createAccount",
348
+ "linkAccounts",
349
+ "bestPrices",
350
+ "stayInControl"
351
+ ];
352
+ var ONBOARDING_STEPS = {
353
+ HOW_IT_WORKS: 0,
354
+ PROFILE_SETUP: 1,
355
+ CONNECT_ACCOUNTS: 2
356
+ };
357
+ var ONCHAIN_VENUES = [
358
+ "polymarket",
359
+ "opinion",
360
+ "probable"
361
+ ];
362
+
363
+ // src/onboarding/steps/how-it-works.tsx
364
+ var import_hooks3 = require("@agg-market/hooks");
365
+
366
+ // src/primitives/button/index.tsx
367
+ var import_hooks2 = require("@agg-market/hooks");
368
+
369
+ // src/primitives/icon/icon.constants.ts
370
+ var iconSizeClasses = {
371
+ xxs: "h-2 w-2",
372
+ xs: "h-3 w-3",
373
+ s: "h-4 w-4",
374
+ m: "h-6 w-6",
375
+ l: "h-8 w-8",
376
+ xl: "h-10 w-10",
377
+ xxl: "h-12 w-12"
378
+ };
379
+
380
+ // src/primitives/button/button.constants.ts
381
+ var sizeClasses = {
382
+ xxs: cn("h-6 px-2.5 gap-1", "text-agg-xs leading-agg-4"),
383
+ xs: cn("h-7 px-3 gap-1", "text-agg-xs leading-agg-4"),
384
+ s: cn("h-8 px-4 gap-1.5", "text-agg-sm leading-agg-5"),
385
+ m: cn("h-9 px-5 gap-1.5", "text-agg-sm leading-agg-5"),
386
+ l: cn("h-10 px-6 gap-2", "text-agg-base leading-agg-6"),
387
+ xl: cn("h-11 px-7 gap-2", "text-agg-base leading-agg-6"),
388
+ xxl: cn("h-12 px-8 gap-2", "text-agg-base leading-agg-6")
389
+ };
390
+ var iconSizeClasses2 = {
391
+ xxs: iconSizeClasses.xs,
392
+ xs: iconSizeClasses.xs,
393
+ s: iconSizeClasses.s,
394
+ m: iconSizeClasses.s,
395
+ l: iconSizeClasses.s,
396
+ xl: iconSizeClasses.s,
397
+ xxl: iconSizeClasses.s
398
+ };
399
+ var iconSlotClasses = {
400
+ xxs: "[&_svg]:h-3 [&_svg]:w-3",
401
+ xs: "[&_svg]:h-3 [&_svg]:w-3",
402
+ s: "[&_svg]:h-4 [&_svg]:w-4",
403
+ m: "[&_svg]:h-4 [&_svg]:w-4",
404
+ l: "[&_svg]:h-4 [&_svg]:w-4",
405
+ xl: "[&_svg]:h-4 [&_svg]:w-4",
406
+ xxl: "[&_svg]:h-4 [&_svg]:w-4"
407
+ };
408
+ var variantClasses = {
409
+ primary: cn(
410
+ "bg-agg-primary text-agg-on-primary",
411
+ "hover:bg-agg-primary-hover",
412
+ "disabled:bg-agg-separator disabled:text-agg-on-primary",
413
+ "focus-visible:ring-agg-primary-hover"
414
+ ),
415
+ secondary: cn(
416
+ "border border-agg-separator bg-agg-secondary text-agg-foreground",
417
+ "hover:bg-agg-secondary-hover",
418
+ "disabled:bg-agg-secondary disabled:text-agg-muted-foreground disabled:border-agg-separator",
419
+ "focus-visible:ring-agg-separator"
420
+ ),
421
+ tertiary: cn(
422
+ "bg-transparent text-agg-foreground",
423
+ "hover:bg-agg-secondary-hover",
424
+ "disabled:bg-transparent disabled:text-agg-muted-foreground",
425
+ "focus-visible:ring-agg-separator"
426
+ )
427
+ };
428
+ var baseButtonClasses = cn(
429
+ "cursor-pointer disabled:cursor-not-allowed",
430
+ "inline-flex items-center justify-center rounded-agg-full font-agg-sans font-agg-bold text-center",
431
+ "whitespace-nowrap",
432
+ "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-offset-agg-secondary"
433
+ );
434
+
435
+ // src/primitives/button/index.tsx
436
+ var import_jsx_runtime3 = require("react/jsx-runtime");
437
+ var Button = (_a) => {
438
+ var _b = _a, {
439
+ children,
440
+ variant = "primary",
441
+ size = "m",
442
+ isLoading = false,
443
+ disabled,
444
+ prefix,
445
+ suffix,
446
+ type = "button",
447
+ className,
448
+ "aria-label": ariaLabel
449
+ } = _b, other = __objRest(_b, [
450
+ "children",
451
+ "variant",
452
+ "size",
453
+ "isLoading",
454
+ "disabled",
455
+ "prefix",
456
+ "suffix",
457
+ "type",
458
+ "className",
459
+ "aria-label"
460
+ ]);
461
+ const { enableAnimations } = (0, import_hooks2.useSdkUiConfig)();
462
+ const isDisabled = disabled || isLoading;
463
+ return /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
464
+ "button",
465
+ __spreadProps(__spreadValues({
466
+ type,
467
+ className: cn(
468
+ baseButtonClasses,
469
+ getMotionClassName(enableAnimations, "transition-colors"),
470
+ sizeClasses[size],
471
+ iconSlotClasses[size],
472
+ variantClasses[variant],
473
+ className
474
+ ),
475
+ disabled: isDisabled,
476
+ "aria-busy": isLoading,
477
+ "aria-label": ariaLabel
478
+ }, other), {
479
+ children: isLoading ? /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
480
+ "span",
481
+ {
482
+ className: cn(
483
+ "inline-block rounded-agg-full border-2 border-current border-r-transparent",
484
+ getMotionClassName(enableAnimations, "animate-spin"),
485
+ iconSizeClasses2[size]
486
+ ),
487
+ "aria-hidden": "true"
488
+ }
489
+ ) : /* @__PURE__ */ (0, import_jsx_runtime3.jsxs)(import_jsx_runtime3.Fragment, { children: [
490
+ prefix != null ? prefix : null,
491
+ /* @__PURE__ */ (0, import_jsx_runtime3.jsx)("span", { children }),
492
+ suffix != null ? suffix : null
493
+ ] })
494
+ })
495
+ );
496
+ };
497
+ Button.displayName = "Button";
498
+
499
+ // src/primitives/icon/svg/arrow-trend-up.tsx
500
+ var import_jsx_runtime4 = require("react/jsx-runtime");
501
+ var ArrowTrendUpIcon = (_a) => {
502
+ var _b = _a, { title, className } = _b, props = __objRest(_b, ["title", "className"]);
503
+ return /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)(
504
+ "svg",
505
+ __spreadProps(__spreadValues(__spreadValues({
506
+ viewBox: "0 0 16 16",
507
+ className,
508
+ fill: "none"
509
+ }, getIconA11yProps(title)), props), {
510
+ children: [
511
+ title ? /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("title", { children: title }) : null,
512
+ /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
513
+ "path",
514
+ {
515
+ d: "M2 11.5L6.5 7L9.5 10L14 5.5",
516
+ stroke: "currentColor",
517
+ strokeWidth: "1.5",
518
+ strokeLinecap: "round",
519
+ strokeLinejoin: "round"
520
+ }
521
+ ),
522
+ /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
523
+ "path",
524
+ {
525
+ d: "M10.5 5.5H14V9",
526
+ stroke: "currentColor",
527
+ strokeWidth: "1.5",
528
+ strokeLinecap: "round",
529
+ strokeLinejoin: "round"
530
+ }
531
+ )
532
+ ]
533
+ })
534
+ );
535
+ };
536
+ ArrowTrendUpIcon.displayName = "ArrowTrendUpIcon";
537
+
538
+ // src/primitives/icon/svg/arrows-to-dot.tsx
539
+ var import_jsx_runtime5 = require("react/jsx-runtime");
540
+ var ArrowsToDotIcon = (_a) => {
541
+ var _b = _a, { title, className } = _b, props = __objRest(_b, ["title", "className"]);
542
+ return /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)(
543
+ "svg",
544
+ __spreadProps(__spreadValues(__spreadValues({
545
+ viewBox: "0 0 16 16",
546
+ className,
547
+ fill: "none"
548
+ }, getIconA11yProps(title)), props), {
549
+ children: [
550
+ title ? /* @__PURE__ */ (0, import_jsx_runtime5.jsx)("title", { children: title }) : null,
551
+ /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
552
+ "path",
553
+ {
554
+ d: "M8 2V5M8 11V14M2 8H5M11 8H14M3.76 3.76L5.9 5.9M10.1 10.1L12.24 12.24M12.24 3.76L10.1 5.9M5.9 10.1L3.76 12.24",
555
+ stroke: "currentColor",
556
+ strokeWidth: "1.25",
557
+ strokeLinecap: "round",
558
+ strokeLinejoin: "round"
559
+ }
560
+ ),
561
+ /* @__PURE__ */ (0, import_jsx_runtime5.jsx)("circle", { cx: "8", cy: "8", r: "1.5", fill: "currentColor" })
562
+ ]
563
+ })
564
+ );
565
+ };
566
+ ArrowsToDotIcon.displayName = "ArrowsToDotIcon";
567
+
568
+ // src/primitives/icon/svg/best-prices.tsx
569
+ var import_jsx_runtime6 = require("react/jsx-runtime");
570
+ var BestPricesIcon = (_a) => {
571
+ var _b = _a, { title, className } = _b, props = __objRest(_b, ["title", "className"]);
572
+ return /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(
573
+ "svg",
574
+ __spreadProps(__spreadValues(__spreadValues({
575
+ width: "28",
576
+ height: "28",
577
+ viewBox: "0 0 28 28",
578
+ fill: "none",
579
+ xmlns: "http://www.w3.org/2000/svg",
580
+ className
581
+ }, getIconA11yProps(title)), props), {
582
+ children: [
583
+ title ? /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("title", { children: title }) : null,
584
+ /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("g", { clipPath: "url(#clip0_best_prices)", children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
585
+ "path",
586
+ {
587
+ d: "M12.8333 27.4167C12.8333 27.7387 12.572 28 12.25 28H5.25C2.3555 28 0 25.6445 0 22.75V5.25117C0 2.35667 2.35433 0 5.25 0H18.0833C20.9778 0 23.3333 2.35433 23.3333 5.24883V8.74883C23.3333 9.07083 23.0732 9.33217 22.75 9.33217C22.4268 9.33217 22.1667 9.07083 22.1667 8.74883V5.24883C22.1667 2.99717 20.3338 1.1655 18.0833 1.1655H5.25C2.99833 1.1655 1.16667 2.99833 1.16667 5.25V22.7488C1.16667 25.0005 2.9995 26.8322 5.25 26.8322H12.25C12.572 26.8322 12.8333 27.0947 12.8333 27.4167ZM27.8297 27.8297C27.7153 27.944 27.566 28 27.4167 28C27.2673 28 27.118 27.9428 27.0037 27.8297L23.0102 23.8362C21.6837 24.9748 19.964 25.6667 18.0822 25.6667C13.9008 25.6667 10.4988 22.2647 10.4988 18.0833C10.4988 13.902 13.9008 10.5 18.0822 10.5C22.2635 10.5 25.6655 13.902 25.6655 18.0833C25.6655 19.964 24.9725 21.6837 23.835 23.0113L27.8285 27.0048C28.056 27.2323 28.0572 27.6022 27.8297 27.8297ZM24.5 18.0833C24.5 14.546 21.6218 11.6667 18.0833 11.6667C14.5448 11.6667 11.6667 14.546 11.6667 18.0833C11.6667 21.6207 14.5448 24.5 18.0833 24.5C21.6218 24.5 24.5 21.6207 24.5 18.0833ZM7.58333 5.83333H5.25C4.928 5.83333 4.66667 6.09467 4.66667 6.41667C4.66667 6.73867 4.928 7 5.25 7H7.58333C7.90533 7 8.16667 6.73867 8.16667 6.41667C8.16667 6.09467 7.90533 5.83333 7.58333 5.83333ZM7.58333 17.5H5.25C4.928 17.5 4.66667 17.7613 4.66667 18.0833C4.66667 18.4053 4.928 18.6667 5.25 18.6667H7.58333C7.90533 18.6667 8.16667 18.4053 8.16667 18.0833C8.16667 17.7613 7.90533 17.5 7.58333 17.5ZM11.0833 5.83333C10.7613 5.83333 10.5 6.09467 10.5 6.41667C10.5 6.73867 10.7613 7 11.0833 7H18.0833C18.4053 7 18.6667 6.73867 18.6667 6.41667C18.6667 6.09467 18.4053 5.83333 18.0833 5.83333H11.0833ZM7.58333 11.6667H5.25C4.928 11.6667 4.66667 11.928 4.66667 12.25C4.66667 12.572 4.928 12.8333 5.25 12.8333H7.58333C7.90533 12.8333 8.16667 12.572 8.16667 12.25C8.16667 11.928 7.90533 11.6667 7.58333 11.6667ZM21.1668 16.4862L18.0098 19.5405C17.6167 19.9255 16.9762 19.9302 16.583 19.5452L14.9928 17.976C14.7642 17.7497 14.3943 17.752 14.168 17.9807C13.9417 18.2105 13.944 18.5803 14.1738 18.8055L15.7652 20.377C16.1875 20.79 16.7417 20.9965 17.2958 20.9965C17.85 20.9965 18.4053 20.7888 18.8253 20.3747L21.9788 17.325C22.2098 17.101 22.2168 16.7312 21.9928 16.5002C21.77 16.2692 21.399 16.2645 21.1668 16.4862Z",
588
+ fill: "currentColor"
589
+ }
590
+ ) }),
591
+ /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("defs", { children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("clipPath", { id: "clip0_best_prices", children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("rect", { width: "28", height: "28", fill: "white" }) }) })
592
+ ]
593
+ })
594
+ );
595
+ };
596
+ BestPricesIcon.displayName = "BestPricesIcon";
597
+
598
+ // src/primitives/icon/svg/check-circle.tsx
599
+ var import_jsx_runtime7 = require("react/jsx-runtime");
600
+ var CheckCircleIcon = (_a) => {
601
+ var _b = _a, { title, className } = _b, props = __objRest(_b, ["title", "className"]);
602
+ return /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(
603
+ "svg",
604
+ __spreadProps(__spreadValues(__spreadValues({
605
+ width: "24",
606
+ height: "24",
607
+ viewBox: "0 0 24 24",
608
+ fill: "none",
609
+ xmlns: "http://www.w3.org/2000/svg",
610
+ className
611
+ }, getIconA11yProps(title)), props), {
612
+ children: [
613
+ title ? /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("title", { children: title }) : null,
614
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("g", { clipPath: "url(#clip0_check_circle)", children: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
615
+ "path",
616
+ {
617
+ d: "M12 0C5.383 0 0 5.383 0 12C0 18.617 5.383 24 12 24C18.617 24 24 18.617 24 12C24 5.383 18.617 0 12 0ZM18.2 10.512L13.774 14.857C12.991 15.625 11.983 16.008 10.974 16.008C9.976 16.008 8.978 15.632 8.198 14.879L6.299 13.012C5.905 12.625 5.9 11.992 6.287 11.598C6.673 11.203 7.308 11.198 7.701 11.586L9.594 13.447C10.37 14.197 11.595 14.193 12.375 13.429L16.8 9.085C17.193 8.697 17.824 8.704 18.214 9.098C18.601 9.492 18.595 10.125 18.2 10.512Z",
618
+ fill: "currentColor"
619
+ }
620
+ ) }),
621
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("defs", { children: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("clipPath", { id: "clip0_check_circle", children: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("rect", { width: "24", height: "24", fill: "white" }) }) })
622
+ ]
623
+ })
624
+ );
625
+ };
626
+ CheckCircleIcon.displayName = "CheckCircleIcon";
627
+
628
+ // src/primitives/icon/svg/chevron-down.tsx
629
+ var import_jsx_runtime8 = require("react/jsx-runtime");
630
+ var ChevronDownIcon = (_a) => {
631
+ var _b = _a, { title, className } = _b, props = __objRest(_b, ["title", "className"]);
632
+ return /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(
633
+ "svg",
634
+ __spreadProps(__spreadValues(__spreadValues({
635
+ viewBox: "0 0 14 14",
636
+ className,
637
+ fill: "none"
638
+ }, getIconA11yProps(title)), props), {
639
+ children: [
640
+ title ? /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("title", { children: title }) : null,
641
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
642
+ "path",
643
+ {
644
+ d: "M3.25 5.25L7 9L10.75 5.25",
645
+ stroke: "currentColor",
646
+ strokeWidth: "1.5",
647
+ strokeLinecap: "round",
648
+ strokeLinejoin: "round"
649
+ }
650
+ )
651
+ ]
652
+ })
653
+ );
654
+ };
655
+ ChevronDownIcon.displayName = "ChevronDownIcon";
656
+
657
+ // src/primitives/icon/svg/chevron-right.tsx
658
+ var import_jsx_runtime9 = require("react/jsx-runtime");
659
+ var ChevronRightIcon = (_a) => {
660
+ var _b = _a, { title, className } = _b, props = __objRest(_b, ["title", "className"]);
661
+ return /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)(
662
+ "svg",
663
+ __spreadProps(__spreadValues(__spreadValues({
664
+ viewBox: "0 0 16 16",
665
+ className,
666
+ fill: "none"
667
+ }, getIconA11yProps(title)), props), {
668
+ children: [
669
+ title ? /* @__PURE__ */ (0, import_jsx_runtime9.jsx)("title", { children: title }) : null,
670
+ /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
671
+ "path",
672
+ {
673
+ d: "M10.2665 6.56563L7.20654 3.50563C7.08163 3.38146 6.91266 3.31177 6.73653 3.31177C6.56041 3.31177 6.39144 3.38146 6.26653 3.50563C6.20405 3.5676 6.15445 3.64134 6.12061 3.72258C6.08676 3.80382 6.06934 3.89095 6.06934 3.97896C6.06934 4.06697 6.08676 4.15411 6.12061 4.23535C6.15445 4.31659 6.20405 4.39032 6.26653 4.4523L9.3332 7.50563C9.39569 7.5676 9.44528 7.64134 9.47913 7.72258C9.51298 7.80382 9.5304 7.89095 9.5304 7.97896C9.5304 8.06697 9.51298 8.15411 9.47913 8.23535C9.44528 8.31659 9.39569 8.39032 9.3332 8.4523L6.26653 11.5056C6.141 11.6303 6.07012 11.7997 6.0695 11.9766C6.06887 12.1535 6.13855 12.3234 6.2632 12.449C6.38785 12.5745 6.55727 12.6454 6.73418 12.646C6.91109 12.6466 7.081 12.5769 7.20654 12.4523L10.2665 9.3923C10.6411 9.0173 10.8514 8.50896 10.8514 7.97896C10.8514 7.44896 10.6411 6.94063 10.2665 6.56563Z",
674
+ fill: "currentColor"
675
+ }
676
+ )
677
+ ]
678
+ })
679
+ );
680
+ };
681
+ ChevronRightIcon.displayName = "ChevronRightIcon";
682
+
683
+ // src/primitives/icon/svg/chevron-up.tsx
684
+ var import_jsx_runtime10 = require("react/jsx-runtime");
685
+ var ChevronUpIcon = (_a) => {
686
+ var _b = _a, { title, className } = _b, props = __objRest(_b, ["title", "className"]);
687
+ return /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)(
688
+ "svg",
689
+ __spreadProps(__spreadValues(__spreadValues({
690
+ viewBox: "0 0 14 14",
691
+ className,
692
+ fill: "none"
693
+ }, getIconA11yProps(title)), props), {
694
+ children: [
695
+ title ? /* @__PURE__ */ (0, import_jsx_runtime10.jsx)("title", { children: title }) : null,
696
+ /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
697
+ "path",
698
+ {
699
+ d: "M3.25 8.75L7 5L10.75 8.75",
700
+ stroke: "currentColor",
701
+ strokeWidth: "1.5",
702
+ strokeLinecap: "round",
703
+ strokeLinejoin: "round"
704
+ }
705
+ )
706
+ ]
707
+ })
708
+ );
709
+ };
710
+ ChevronUpIcon.displayName = "ChevronUpIcon";
711
+
712
+ // src/primitives/icon/svg/create-account.tsx
713
+ var import_jsx_runtime11 = require("react/jsx-runtime");
714
+ var CreateAccountIcon = (_a) => {
715
+ var _b = _a, { title, className } = _b, props = __objRest(_b, ["title", "className"]);
716
+ return /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)(
717
+ "svg",
718
+ __spreadProps(__spreadValues(__spreadValues({
719
+ width: "28",
720
+ height: "28",
721
+ viewBox: "0 0 28 28",
722
+ fill: "none",
723
+ xmlns: "http://www.w3.org/2000/svg",
724
+ className
725
+ }, getIconA11yProps(title)), props), {
726
+ children: [
727
+ title ? /* @__PURE__ */ (0, import_jsx_runtime11.jsx)("title", { children: title }) : null,
728
+ /* @__PURE__ */ (0, import_jsx_runtime11.jsx)("g", { clipPath: "url(#clip0_create_account)", children: /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
729
+ "path",
730
+ {
731
+ d: "M22.1667 4.66667V0.583333C22.1667 0.261333 22.428 0 22.75 0C23.072 0 23.3333 0.261333 23.3333 0.583333V4.66667H27.4167C27.7387 4.66667 28 4.928 28 5.25C28 5.572 27.7387 5.83333 27.4167 5.83333H23.3333V9.91667C23.3333 10.2387 23.072 10.5 22.75 10.5C22.428 10.5 22.1667 10.2387 22.1667 9.91667V5.83333H18.0833C17.7613 5.83333 17.5 5.572 17.5 5.25C17.5 4.928 17.7613 4.66667 18.0833 4.66667H22.1667ZM18.6667 11.6667C18.6667 14.2403 16.5737 16.3333 14 16.3333C11.4263 16.3333 9.33333 14.2403 9.33333 11.6667C9.33333 9.093 11.4263 7 14 7C16.5737 7 18.6667 9.093 18.6667 11.6667ZM17.5 11.6667C17.5 9.737 15.9297 8.16667 14 8.16667C12.0703 8.16667 10.5 9.737 10.5 11.6667C10.5 13.5963 12.0703 15.1667 14 15.1667C15.9297 15.1667 17.5 13.5963 17.5 11.6667ZM27.3922 9.90617C27.7958 11.2292 28 12.6058 28 14C28 21.7198 21.7198 28 14 28C6.28017 28 0 21.7198 0 14C0 6.28017 6.28017 0 14 0C15.4548 0 16.8898 0.221667 18.2607 0.660333C18.5675 0.758333 18.7367 1.08617 18.6387 1.393C18.5395 1.69983 18.2105 1.87017 17.9048 1.771C16.6483 1.36967 15.3335 1.1655 13.9988 1.1655C6.92417 1.16667 1.16667 6.92417 1.16667 14C1.16667 18.5197 3.521 22.4933 7.063 24.78C7.5005 21.3383 10.4417 18.6667 14 18.6667C17.5583 18.6667 20.4995 21.3383 20.937 24.78C24.4778 22.4933 26.8333 18.5197 26.8333 14C26.8333 12.7213 26.6467 11.459 26.2757 10.2468C26.1823 9.93883 26.355 9.61217 26.6642 9.51883C26.9722 9.422 27.2977 9.59933 27.3922 9.90617ZM14 26.8333C16.0918 26.8333 18.0623 26.32 19.8088 25.4287C19.6805 22.3253 17.1348 19.8333 14 19.8333C10.8652 19.8333 8.31833 22.3242 8.19117 25.4287C9.93767 26.32 11.9082 26.8333 14 26.8333Z",
732
+ fill: "currentColor"
733
+ }
734
+ ) }),
735
+ /* @__PURE__ */ (0, import_jsx_runtime11.jsx)("defs", { children: /* @__PURE__ */ (0, import_jsx_runtime11.jsx)("clipPath", { id: "clip0_create_account", children: /* @__PURE__ */ (0, import_jsx_runtime11.jsx)("rect", { width: "28", height: "28", fill: "white" }) }) })
736
+ ]
737
+ })
738
+ );
739
+ };
740
+ CreateAccountIcon.displayName = "CreateAccountIcon";
741
+
742
+ // src/primitives/icon/svg/disconnect.tsx
743
+ var import_jsx_runtime12 = require("react/jsx-runtime");
744
+ var DisconnectIcon = (_a) => {
745
+ var _b = _a, { title, className } = _b, props = __objRest(_b, ["title", "className"]);
746
+ return /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(
747
+ "svg",
748
+ __spreadProps(__spreadValues(__spreadValues({
749
+ viewBox: "0 0 16 16",
750
+ className,
751
+ fill: "none"
752
+ }, getIconA11yProps(title)), props), {
753
+ children: [
754
+ title ? /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("title", { children: title }) : null,
755
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
756
+ "path",
757
+ {
758
+ d: "M6.5 3H4a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h2.5",
759
+ stroke: "currentColor",
760
+ strokeWidth: "1.5",
761
+ strokeLinecap: "round"
762
+ }
763
+ ),
764
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
765
+ "path",
766
+ {
767
+ d: "M9.5 5.5 12 8m0 0-2.5 2.5M12 8H6",
768
+ stroke: "currentColor",
769
+ strokeWidth: "1.5",
770
+ strokeLinecap: "round",
771
+ strokeLinejoin: "round"
772
+ }
773
+ )
774
+ ]
775
+ })
776
+ );
777
+ };
778
+ DisconnectIcon.displayName = "DisconnectIcon";
779
+
780
+ // src/primitives/icon/svg/download.tsx
781
+ var import_jsx_runtime13 = require("react/jsx-runtime");
782
+ var DownloadIcon = (_a) => {
783
+ var _b = _a, { title, className } = _b, props = __objRest(_b, ["title", "className"]);
784
+ return /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(
785
+ "svg",
786
+ __spreadProps(__spreadValues(__spreadValues({
787
+ viewBox: "0 0 16 16",
788
+ className,
789
+ fill: "none"
790
+ }, getIconA11yProps(title)), props), {
791
+ children: [
792
+ title ? /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("title", { children: title }) : null,
793
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
794
+ "path",
795
+ {
796
+ d: "M8 2.5v7m0 0 2.5-2.5M8 9.5 5.5 7",
797
+ stroke: "currentColor",
798
+ strokeWidth: "1.5",
799
+ strokeLinecap: "round",
800
+ strokeLinejoin: "round"
801
+ }
802
+ ),
803
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("path", { d: "M2.5 12.5h11", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round" })
804
+ ]
805
+ })
806
+ );
807
+ };
808
+ DownloadIcon.displayName = "DownloadIcon";
809
+
810
+ // src/primitives/icon/svg/dots-horizontal.tsx
811
+ var import_jsx_runtime14 = require("react/jsx-runtime");
812
+ var DotsHorizontalIcon = (_a) => {
813
+ var _b = _a, { title, className } = _b, props = __objRest(_b, ["title", "className"]);
814
+ return /* @__PURE__ */ (0, import_jsx_runtime14.jsxs)(
815
+ "svg",
816
+ __spreadProps(__spreadValues(__spreadValues({
817
+ viewBox: "0 0 16 16",
818
+ className,
819
+ fill: "none"
820
+ }, getIconA11yProps(title)), props), {
821
+ children: [
822
+ title ? /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("title", { children: title }) : null,
823
+ /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("circle", { cx: "3.5", cy: "8", r: "1.25", fill: "currentColor" }),
824
+ /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("circle", { cx: "8", cy: "8", r: "1.25", fill: "currentColor" }),
825
+ /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("circle", { cx: "12.5", cy: "8", r: "1.25", fill: "currentColor" })
826
+ ]
827
+ })
828
+ );
829
+ };
830
+ DotsHorizontalIcon.displayName = "DotsHorizontalIcon";
831
+
832
+ // src/primitives/icon/svg/link-accounts.tsx
833
+ var import_jsx_runtime15 = require("react/jsx-runtime");
834
+ var LinkAccountsIcon = (_a) => {
835
+ var _b = _a, { title, className } = _b, props = __objRest(_b, ["title", "className"]);
836
+ return /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(
837
+ "svg",
838
+ __spreadProps(__spreadValues(__spreadValues({
839
+ width: "28",
840
+ height: "28",
841
+ viewBox: "0 0 28 28",
842
+ fill: "none",
843
+ xmlns: "http://www.w3.org/2000/svg",
844
+ className
845
+ }, getIconA11yProps(title)), props), {
846
+ children: [
847
+ title ? /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("title", { children: title }) : null,
848
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("g", { clipPath: "url(#clip0_link_accounts)", children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
849
+ "path",
850
+ {
851
+ d: "M28 18.0835C28 22.2648 24.598 25.6668 20.4167 25.6668H14.5833C10.402 25.6668 7 22.2648 7 18.0835C7 13.9022 10.402 10.5002 14.5833 10.5002H16.9167C17.2387 10.5002 17.5 10.7615 17.5 11.0835C17.5 11.4055 17.2387 11.6668 16.9167 11.6668H14.5833C11.0448 11.6668 8.16667 14.5462 8.16667 18.0835C8.16667 21.6208 11.0448 24.5002 14.5833 24.5002H20.4167C23.9552 24.5002 26.8333 21.6208 26.8333 18.0835C26.8333 15.7992 25.6037 13.67 23.625 12.5243C23.3462 12.3633 23.2505 12.0063 23.4127 11.7275C23.5725 11.4487 23.9283 11.3507 24.2095 11.514C26.5475 12.8662 28.0012 15.3827 28.0012 18.0823L28 18.0835ZM4.375 15.476C2.39517 14.3315 1.16667 12.2012 1.16667 9.91683C1.16667 6.3795 4.04483 3.50016 7.58333 3.50016H13.4167C16.9552 3.50016 19.8333 6.3795 19.8333 9.91683C19.8333 13.4542 16.9552 16.3335 13.4167 16.3335H11.0833C10.7613 16.3335 10.5 16.5948 10.5 16.9168C10.5 17.2388 10.7613 17.5002 11.0833 17.5002H13.4167C17.598 17.5002 21 14.0982 21 9.91683C21 5.7355 17.598 2.3335 13.4167 2.3335H7.58333C3.402 2.3335 0 5.7355 0 9.91683C0 12.6153 1.4525 15.133 3.79167 16.4852C4.0705 16.6462 4.4275 16.5517 4.5885 16.2717C4.75067 15.994 4.655 15.6358 4.37617 15.4748L4.375 15.476Z",
852
+ fill: "currentColor"
853
+ }
854
+ ) }),
855
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("defs", { children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("clipPath", { id: "clip0_link_accounts", children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("rect", { width: "28", height: "28", fill: "white" }) }) })
856
+ ]
857
+ })
858
+ );
859
+ };
860
+ LinkAccountsIcon.displayName = "LinkAccountsIcon";
861
+
862
+ // src/primitives/icon/svg/profile.tsx
863
+ var import_jsx_runtime16 = require("react/jsx-runtime");
864
+ var ProfileIcon = (_a) => {
865
+ var _b = _a, { title, className } = _b, props = __objRest(_b, ["title", "className"]);
866
+ return /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(
867
+ "svg",
868
+ __spreadProps(__spreadValues(__spreadValues({
869
+ viewBox: "0 0 16 16",
870
+ className,
871
+ fill: "none"
872
+ }, getIconA11yProps(title)), props), {
873
+ children: [
874
+ title ? /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("title", { children: title }) : null,
875
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
876
+ "path",
877
+ {
878
+ d: "M8 8.25a2.75 2.75 0 1 0 0-5.5 2.75 2.75 0 0 0 0 5.5Z",
879
+ stroke: "currentColor",
880
+ strokeWidth: "1.5"
881
+ }
882
+ ),
883
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
884
+ "path",
885
+ {
886
+ d: "M3 13.5a5 5 0 0 1 10 0",
887
+ stroke: "currentColor",
888
+ strokeWidth: "1.5",
889
+ strokeLinecap: "round"
890
+ }
891
+ )
892
+ ]
893
+ })
894
+ );
895
+ };
896
+ ProfileIcon.displayName = "ProfileIcon";
897
+
898
+ // src/primitives/icon/svg/revenue-alt.tsx
899
+ var import_jsx_runtime17 = require("react/jsx-runtime");
900
+ var RevenueAltIcon = (_a) => {
901
+ var _b = _a, { title, className } = _b, props = __objRest(_b, ["title", "className"]);
902
+ return /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(
903
+ "svg",
904
+ __spreadProps(__spreadValues(__spreadValues({
905
+ viewBox: "0 0 20 20",
906
+ className,
907
+ fill: "none"
908
+ }, getIconA11yProps(title)), props), {
909
+ children: [
910
+ title ? /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("title", { children: title }) : null,
911
+ /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
912
+ "path",
913
+ {
914
+ d: "M3 14V6M3 6L1.5 7.5M3 6L4.5 7.5M17 6V14M17 14L15.5 12.5M17 14L18.5 12.5",
915
+ stroke: "currentColor",
916
+ strokeWidth: "1.5",
917
+ strokeLinecap: "round",
918
+ strokeLinejoin: "round"
919
+ }
920
+ ),
921
+ /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
922
+ "path",
923
+ {
924
+ d: "M10 5.5V14.5M12.5 7.4C12.5 6.55 11.38 5.86 10 5.86C8.62 5.86 7.5 6.55 7.5 7.4C7.5 8.25 8.62 8.94 10 8.94C11.38 8.94 12.5 9.63 12.5 10.48C12.5 11.33 11.38 12.02 10 12.02C8.62 12.02 7.5 11.33 7.5 10.48",
925
+ stroke: "currentColor",
926
+ strokeWidth: "1.5",
927
+ strokeLinecap: "round",
928
+ strokeLinejoin: "round"
929
+ }
930
+ )
931
+ ]
932
+ })
933
+ );
934
+ };
935
+ RevenueAltIcon.displayName = "RevenueAltIcon";
936
+
937
+ // src/primitives/icon/svg/search.tsx
938
+ var import_jsx_runtime18 = require("react/jsx-runtime");
939
+ var SearchIcon = (_a) => {
940
+ var _b = _a, { title, className } = _b, props = __objRest(_b, ["title", "className"]);
941
+ return /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(
942
+ "svg",
943
+ __spreadProps(__spreadValues(__spreadValues({
944
+ viewBox: "0 0 16 16",
945
+ fill: "none",
946
+ xmlns: "http://www.w3.org/2000/svg",
947
+ className
948
+ }, getIconA11yProps(title)), props), {
949
+ children: [
950
+ title ? /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("title", { children: title }) : null,
951
+ /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
952
+ "path",
953
+ {
954
+ d: "M7.3335 12.3333C10.0949 12.3333 12.3335 10.0947 12.3335 7.33329C12.3335 4.57187 10.0949 2.33329 7.3335 2.33329C4.57208 2.33329 2.3335 4.57187 2.3335 7.33329C2.3335 10.0947 4.57208 12.3333 7.3335 12.3333Z",
955
+ stroke: "currentColor",
956
+ strokeWidth: "1.3",
957
+ strokeLinecap: "round",
958
+ strokeLinejoin: "round"
959
+ }
960
+ ),
961
+ /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
962
+ "path",
963
+ {
964
+ d: "M13.6668 13.6666L11.1667 11.1666",
965
+ stroke: "currentColor",
966
+ strokeWidth: "1.3",
967
+ strokeLinecap: "round",
968
+ strokeLinejoin: "round"
969
+ }
970
+ )
971
+ ]
972
+ })
973
+ );
974
+ };
975
+ SearchIcon.displayName = "SearchIcon";
976
+
977
+ // src/primitives/icon/svg/shield-trust.tsx
978
+ var import_jsx_runtime19 = require("react/jsx-runtime");
979
+ var ShieldTrustIcon = (_a) => {
980
+ var _b = _a, { title, className } = _b, props = __objRest(_b, ["title", "className"]);
981
+ return /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)(
982
+ "svg",
983
+ __spreadProps(__spreadValues(__spreadValues({
984
+ viewBox: "0 0 16 16",
985
+ className,
986
+ fill: "none"
987
+ }, getIconA11yProps(title)), props), {
988
+ children: [
989
+ title ? /* @__PURE__ */ (0, import_jsx_runtime19.jsx)("title", { children: title }) : null,
990
+ /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
991
+ "path",
992
+ {
993
+ d: "M8 1.25L13.5 3.25V7.08C13.5 10.09 11.62 12.74 8 14.75C4.38 12.74 2.5 10.09 2.5 7.08V3.25L8 1.25Z",
994
+ fill: "currentColor"
995
+ }
996
+ ),
997
+ /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
998
+ "path",
999
+ {
1000
+ d: "M5.5 8.2L7.2 9.9L10.8 6.3",
1001
+ stroke: "white",
1002
+ strokeWidth: "1.4",
1003
+ strokeLinecap: "round",
1004
+ strokeLinejoin: "round"
1005
+ }
1006
+ )
1007
+ ]
1008
+ })
1009
+ );
1010
+ };
1011
+ ShieldTrustIcon.displayName = "ShieldTrustIcon";
1012
+
1013
+ // src/primitives/icon/svg/stay-in-control.tsx
1014
+ var import_jsx_runtime20 = require("react/jsx-runtime");
1015
+ var StayInControlIcon = (_a) => {
1016
+ var _b = _a, { title, className } = _b, props = __objRest(_b, ["title", "className"]);
1017
+ return /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(
1018
+ "svg",
1019
+ __spreadProps(__spreadValues(__spreadValues({
1020
+ width: "28",
1021
+ height: "28",
1022
+ viewBox: "0 0 28 28",
1023
+ fill: "none",
1024
+ xmlns: "http://www.w3.org/2000/svg",
1025
+ className
1026
+ }, getIconA11yProps(title)), props), {
1027
+ children: [
1028
+ title ? /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("title", { children: title }) : null,
1029
+ /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)("g", { clipPath: "url(#clip0_stay_in_control)", children: [
1030
+ /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
1031
+ "path",
1032
+ {
1033
+ d: "M14 27.9406C13.9102 27.9406 13.8215 27.9196 13.7387 27.8788L13.2428 27.6314C10.6832 26.3504 2.32983 21.5753 2.32983 13.8648L2.33217 7.62776C2.33217 5.36093 3.77767 3.35776 5.93017 2.64493L13.8168 0.0292617C13.9358 -0.010405 14.0653 -0.010405 14.1832 0.0292617L22.0687 2.64376C24.2212 3.35776 25.6667 5.36093 25.6667 7.6266L25.6632 13.8636C25.6632 22.6113 17.2958 26.6584 14.7315 27.6909L14.217 27.8974C14.147 27.9254 14.0723 27.9394 13.9988 27.9394L14 27.9406ZM14 1.19826L6.29767 3.7521C4.6235 4.30743 3.5 5.86493 3.5 7.62776L3.49767 13.8648C3.49767 20.9056 11.3563 25.3844 13.7655 26.5884L14.0268 26.7191L14.2975 26.6106C16.6903 25.6481 24.4977 21.8833 24.4977 13.8659L24.5012 7.62893C24.5012 5.8661 23.3765 4.3086 21.7035 3.75326L14 1.19826Z",
1034
+ fill: "currentColor"
1035
+ }
1036
+ ),
1037
+ /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
1038
+ "path",
1039
+ {
1040
+ d: "M12.8112 17.5001C12.0633 17.5001 11.3155 17.2154 10.7462 16.6461L7.18083 13.2569C6.94749 13.0352 6.93816 12.6654 7.15983 12.4321C7.38149 12.1999 7.75016 12.1894 7.98466 12.4111L11.5605 15.8107C12.2535 16.5026 13.363 16.5037 14.0455 15.8212L20.5928 9.49791C20.8262 9.27508 21.196 9.28208 21.4177 9.51308C21.6417 9.74408 21.6358 10.1139 21.4037 10.3379L14.8622 16.6542C14.2987 17.2177 13.5543 17.5012 12.81 17.5012L12.8112 17.5001Z",
1041
+ fill: "currentColor"
1042
+ }
1043
+ )
1044
+ ] }),
1045
+ /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("defs", { children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("clipPath", { id: "clip0_stay_in_control", children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("rect", { width: "28", height: "28", fill: "white" }) }) })
1046
+ ]
1047
+ })
1048
+ );
1049
+ };
1050
+ StayInControlIcon.displayName = "StayInControlIcon";
1051
+
1052
+ // src/primitives/icon/svg/triangle-down.tsx
1053
+ var import_jsx_runtime21 = require("react/jsx-runtime");
1054
+ var TriangleDownIcon = (_a) => {
1055
+ var _b = _a, { title, className } = _b, props = __objRest(_b, ["title", "className"]);
1056
+ return /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)(
1057
+ "svg",
1058
+ __spreadProps(__spreadValues(__spreadValues({
1059
+ viewBox: "0 0 8 8",
1060
+ className,
1061
+ fill: "none"
1062
+ }, getIconA11yProps(title)), props), {
1063
+ children: [
1064
+ title ? /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("title", { children: title }) : null,
1065
+ /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)("g", { transform: "scale(1,-1) translate(0,-8)", clipPath: "url(#triangle_up)", children: [
1066
+ /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
1067
+ "path",
1068
+ {
1069
+ d: "M3.99989 1.6805L6.23917 6.72896H1.76061L3.99989 1.6805ZM3.99989 0.366097C3.87788 0.36535 3.75832 0.400347 3.65596 0.466768C3.55361 0.53319 3.47295 0.628129 3.42393 0.739866L0.362237 7.63838H7.63755L4.57737 0.739866C4.52825 0.62789 4.44735 0.532789 4.3447 0.46635C4.24205 0.39991 4.12216 0.365052 3.99989 0.366097Z",
1070
+ fill: "currentColor"
1071
+ }
1072
+ ),
1073
+ /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
1074
+ "path",
1075
+ {
1076
+ d: "M4.00167 0.00284122C4.19344 0.00214978 4.38147 0.0566837 4.54252 0.160923C4.70445 0.265758 4.83154 0.416026 4.90931 0.592539L7.9697 7.4913L8.19705 8.00195H-0.197266L3.09048 0.593427C3.16804 0.41669 3.29625 0.26688 3.45815 0.161811C3.61872 0.0576301 3.80589 0.00261591 3.99723 0.00284122H3.99989L4.00256 0.00195312L4.00167 0.00284122ZM3.99989 0.366097C3.87788 0.36535 3.75832 0.400347 3.65596 0.466768L3.58337 0.521491C3.51516 0.581467 3.46071 0.656022 3.42393 0.739866L0.362237 7.63838H7.63755L4.57737 0.739866C4.54053 0.655873 4.48567 0.581521 4.4173 0.521491L4.3447 0.46635C4.24205 0.39991 4.12216 0.365052 3.99989 0.366097ZM6.23917 6.72896H1.76061L3.99989 1.6805L6.23917 6.72896ZM2.31961 6.36519H5.68018L3.99989 2.57655L2.31961 6.36519Z",
1077
+ fill: "currentColor"
1078
+ }
1079
+ )
1080
+ ] }),
1081
+ /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("defs", { children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("clipPath", { id: "triangle_up", children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("rect", { width: "8", height: "8", fill: "white" }) }) })
1082
+ ]
1083
+ })
1084
+ );
1085
+ };
1086
+ TriangleDownIcon.displayName = "TriangleDownIcon";
1087
+
1088
+ // src/primitives/icon/svg/triangle-up.tsx
1089
+ var import_jsx_runtime22 = require("react/jsx-runtime");
1090
+ var TriangleUpIcon = (_a) => {
1091
+ var _b = _a, { title, className } = _b, props = __objRest(_b, ["title", "className"]);
1092
+ return /* @__PURE__ */ (0, import_jsx_runtime22.jsxs)(
1093
+ "svg",
1094
+ __spreadProps(__spreadValues(__spreadValues({
1095
+ viewBox: "0 0 8 8",
1096
+ className,
1097
+ fill: "none"
1098
+ }, getIconA11yProps(title)), props), {
1099
+ children: [
1100
+ title ? /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("title", { children: title }) : null,
1101
+ /* @__PURE__ */ (0, import_jsx_runtime22.jsxs)("g", { clipPath: "url(#triangle_up)", children: [
1102
+ /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
1103
+ "path",
1104
+ {
1105
+ d: "M3.99989 1.6805L6.23917 6.72896H1.76061L3.99989 1.6805ZM3.99989 0.366097C3.87788 0.36535 3.75832 0.400347 3.65596 0.466768C3.55361 0.53319 3.47295 0.628129 3.42393 0.739866L0.362237 7.63838H7.63755L4.57737 0.739866C4.52825 0.62789 4.44735 0.532789 4.3447 0.46635C4.24205 0.39991 4.12216 0.365052 3.99989 0.366097Z",
1106
+ fill: "currentColor"
1107
+ }
1108
+ ),
1109
+ /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
1110
+ "path",
1111
+ {
1112
+ d: "M4.00167 0.00284122C4.19344 0.00214978 4.38147 0.0566837 4.54252 0.160923C4.70445 0.265758 4.83154 0.416026 4.90931 0.592539L7.9697 7.4913L8.19705 8.00195H-0.197266L3.09048 0.593427C3.16804 0.41669 3.29625 0.26688 3.45815 0.161811C3.61872 0.0576301 3.80589 0.00261591 3.99723 0.00284122H3.99989L4.00256 0.00195312L4.00167 0.00284122ZM3.99989 0.366097C3.87788 0.36535 3.75832 0.400347 3.65596 0.466768L3.58337 0.521491C3.51516 0.581467 3.46071 0.656022 3.42393 0.739866L0.362237 7.63838H7.63755L4.57737 0.739866C4.54053 0.655873 4.48567 0.581521 4.4173 0.521491L4.3447 0.46635C4.24205 0.39991 4.12216 0.365052 3.99989 0.366097ZM6.23917 6.72896H1.76061L3.99989 1.6805L6.23917 6.72896ZM2.31961 6.36519H5.68018L3.99989 2.57655L2.31961 6.36519Z",
1113
+ fill: "currentColor"
1114
+ }
1115
+ )
1116
+ ] }),
1117
+ /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("defs", { children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("clipPath", { id: "triangle_up", children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("rect", { width: "8", height: "8", fill: "white" }) }) })
1118
+ ]
1119
+ })
1120
+ );
1121
+ };
1122
+ TriangleUpIcon.displayName = "TriangleUpIcon";
1123
+
1124
+ // src/primitives/icon/svg/upload.tsx
1125
+ var import_jsx_runtime23 = require("react/jsx-runtime");
1126
+ var UploadIcon = (_a) => {
1127
+ var _b = _a, { title, className } = _b, props = __objRest(_b, ["title", "className"]);
1128
+ return /* @__PURE__ */ (0, import_jsx_runtime23.jsxs)(
1129
+ "svg",
1130
+ __spreadProps(__spreadValues(__spreadValues({
1131
+ viewBox: "0 0 16 16",
1132
+ className,
1133
+ fill: "none"
1134
+ }, getIconA11yProps(title)), props), {
1135
+ children: [
1136
+ title ? /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("title", { children: title }) : null,
1137
+ /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
1138
+ "path",
1139
+ {
1140
+ d: "M8 13.5v-7m0 0 2.5 2.5M8 6.5 5.5 9",
1141
+ stroke: "currentColor",
1142
+ strokeWidth: "1.5",
1143
+ strokeLinecap: "round",
1144
+ strokeLinejoin: "round"
1145
+ }
1146
+ ),
1147
+ /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("path", { d: "M2.5 3.5h11", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round" })
1148
+ ]
1149
+ })
1150
+ );
1151
+ };
1152
+ UploadIcon.displayName = "UploadIcon";
1153
+
1154
+ // src/primitives/icon/svg/wallet-avatar.tsx
1155
+ var import_jsx_runtime24 = require("react/jsx-runtime");
1156
+ function WalletAvatarIcon(_a) {
1157
+ var _b = _a, { title, className } = _b, props = __objRest(_b, ["title", "className"]);
1158
+ return /* @__PURE__ */ (0, import_jsx_runtime24.jsxs)(
1159
+ "svg",
1160
+ __spreadProps(__spreadValues(__spreadValues({
1161
+ fill: "none",
1162
+ className,
1163
+ viewBox: "0 0 16 16"
1164
+ }, getIconA11yProps(title)), props), {
1165
+ children: [
1166
+ title ? /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("title", { children: title }) : null,
1167
+ /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("circle", { cx: "8", cy: "5.25", r: "2.25", fill: "currentColor" }),
1168
+ /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("path", { d: "M3.75 12.75a4.25 4.25 0 0 1 8.5 0v.25h-8.5v-.25Z", fill: "currentColor" })
1169
+ ]
1170
+ })
1171
+ );
1172
+ }
1173
+ WalletAvatarIcon.displayName = "WalletAvatarIcon";
1174
+
1175
+ // src/primitives/icon/svg/warning.tsx
1176
+ var import_jsx_runtime25 = require("react/jsx-runtime");
1177
+ var WarningIcon = (_a) => {
1178
+ var _b = _a, { title, className } = _b, props = __objRest(_b, ["title", "className"]);
1179
+ return /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(
1180
+ "svg",
1181
+ __spreadProps(__spreadValues(__spreadValues({
1182
+ width: "14",
1183
+ height: "14",
1184
+ viewBox: "0 0 14 14",
1185
+ fill: "none",
1186
+ xmlns: "http://www.w3.org/2000/svg",
1187
+ className
1188
+ }, getIconA11yProps(title)), props), {
1189
+ children: [
1190
+ title ? /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("title", { children: title }) : null,
1191
+ /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("g", { clipPath: "url(#clip0_warning)", children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
1192
+ "path",
1193
+ {
1194
+ d: "M6.41665 8.16675V4.66675C6.41665 4.34591 6.67915 4.08341 6.99998 4.08341C7.32082 4.08341 7.58332 4.34591 7.58332 4.66675V8.16675C7.58332 8.48758 7.32082 8.75008 6.99998 8.75008C6.67915 8.75008 6.41665 8.48758 6.41665 8.16675ZM6.99998 9.33341C6.51582 9.33341 6.12498 9.72425 6.12498 10.2084C6.12498 10.6926 6.51582 11.0834 6.99998 11.0834C7.48415 11.0834 7.87498 10.6926 7.87498 10.2084C7.87498 9.72425 7.48415 9.33341 6.99998 9.33341ZM13.755 12.1801C13.3467 12.9676 12.4892 13.4167 11.4158 13.4167H2.58998C1.51082 13.4167 0.659151 12.9676 0.250818 12.1801C-0.163348 11.3867 -0.0466818 10.3717 0.542485 9.52008L5.23248 2.10008C5.64665 1.50508 6.29998 1.16675 6.99998 1.16675C7.69999 1.16675 8.35332 1.50508 8.74998 2.08258L13.4633 9.53175C14.0525 10.3834 14.1633 11.3926 13.7492 12.1801H13.755ZM12.5008 10.1851C12.5008 10.1851 12.4892 10.1734 12.4892 10.1617L7.78165 2.72425C7.61248 2.48508 7.32082 2.33341 6.99998 2.33341C6.67915 2.33341 6.38749 2.48508 6.20665 2.74758L1.51082 10.1617C1.14915 10.6751 1.06748 11.2351 1.27748 11.6376C1.48165 12.0342 1.94832 12.2501 2.58415 12.2501H11.4042C12.04 12.2501 12.5067 12.0342 12.7108 11.6376C12.9208 11.2351 12.8392 10.6751 12.495 10.1851H12.5008Z",
1195
+ fill: "currentColor"
1196
+ }
1197
+ ) }),
1198
+ /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("defs", { children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("clipPath", { id: "clip0_warning", children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("rect", { width: "14", height: "14", fill: "white" }) }) })
1199
+ ]
1200
+ })
1201
+ );
1202
+ };
1203
+ WarningIcon.displayName = "WarningIcon";
1204
+
1205
+ // src/primitives/icon/registry.ts
1206
+ var iconRegistry = {
1207
+ "arrow-trend-up": ArrowTrendUpIcon,
1208
+ "arrows-to-dot": ArrowsToDotIcon,
1209
+ "best-prices": BestPricesIcon,
1210
+ "check-circle": CheckCircleIcon,
1211
+ "chevron-down": ChevronDownIcon,
1212
+ "chevron-right": ChevronRightIcon,
1213
+ "chevron-up": ChevronUpIcon,
1214
+ close: CloseIcon,
1215
+ "create-account": CreateAccountIcon,
1216
+ disconnect: DisconnectIcon,
1217
+ download: DownloadIcon,
1218
+ "dots-horizontal": DotsHorizontalIcon,
1219
+ "link-accounts": LinkAccountsIcon,
1220
+ profile: ProfileIcon,
1221
+ "revenue-alt": RevenueAltIcon,
1222
+ search: SearchIcon,
1223
+ "shield-trust": ShieldTrustIcon,
1224
+ "stay-in-control": StayInControlIcon,
1225
+ "triangle-down": TriangleDownIcon,
1226
+ "triangle-up": TriangleUpIcon,
1227
+ upload: UploadIcon,
1228
+ "wallet-avatar": WalletAvatarIcon,
1229
+ warning: WarningIcon
1230
+ };
1231
+ var iconNames = Object.keys(iconRegistry);
1232
+
1233
+ // src/primitives/icon/icon.utils.ts
1234
+ var resolveIconStyle = (color, style) => {
1235
+ if (!color)
1236
+ return style;
1237
+ return __spreadProps(__spreadValues({}, style), {
1238
+ color
1239
+ });
1240
+ };
1241
+
1242
+ // src/primitives/icon/index.tsx
1243
+ var import_jsx_runtime26 = require("react/jsx-runtime");
1244
+ var Icon = (_a) => {
1245
+ var _b = _a, {
1246
+ name,
1247
+ color,
1248
+ size = "m",
1249
+ className = "text-agg-primary",
1250
+ style
1251
+ } = _b, props = __objRest(_b, [
1252
+ "name",
1253
+ "color",
1254
+ "size",
1255
+ "className",
1256
+ "style"
1257
+ ]);
1258
+ const Component = iconRegistry[name];
1259
+ const resolvedStyle = resolveIconStyle(color, style);
1260
+ const resolvedClassName = cn(iconSizeClasses[size], className);
1261
+ return /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(Component, __spreadValues({ color, className: resolvedClassName, style: resolvedStyle }, props));
1262
+ };
1263
+ Icon.displayName = "Icon";
1264
+
1265
+ // src/onboarding/steps/how-it-works.tsx
1266
+ var import_jsx_runtime27 = require("react/jsx-runtime");
1267
+ var defaultIcons = {
1268
+ createAccount: /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(CreateAccountIcon, { className: "h-[28px] w-[28px] text-agg-muted-foreground" }),
1269
+ linkAccounts: /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(LinkAccountsIcon, { className: "h-[28px] w-[28px] text-agg-muted-foreground" }),
1270
+ bestPrices: /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(BestPricesIcon, { className: "h-[28px] w-[28px] text-agg-muted-foreground" }),
1271
+ stayInControl: /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(StayInControlIcon, { className: "h-[28px] w-[28px] text-agg-muted-foreground" })
1272
+ };
1273
+ var HowItWorksStep = ({ onContinue, icons }) => {
1274
+ const labels = (0, import_hooks3.useLabels)();
1275
+ return /* @__PURE__ */ (0, import_jsx_runtime27.jsxs)("div", { className: "flex flex-col gap-6", children: [
1276
+ /* @__PURE__ */ (0, import_jsx_runtime27.jsx)("h2", { className: "text-center text-agg-2xl font-agg-bold text-agg-foreground sm:text-agg-3xl", children: labels.onboarding.howItWorks.title }),
1277
+ /* @__PURE__ */ (0, import_jsx_runtime27.jsx)("div", { className: "flex flex-col gap-3", children: HOW_IT_WORKS_FEATURE_KEYS.map((featureKey) => {
1278
+ var _a;
1279
+ const icon = (_a = icons == null ? void 0 : icons[featureKey]) != null ? _a : defaultIcons[featureKey];
1280
+ const feature = labels.onboarding.howItWorks.features[featureKey];
1281
+ return /* @__PURE__ */ (0, import_jsx_runtime27.jsxs)(
1282
+ "div",
1283
+ {
1284
+ className: cn(
1285
+ "flex items-center gap-4 p-4 sm:p-5",
1286
+ "rounded-agg-lg",
1287
+ "bg-agg-secondary-hover"
1288
+ ),
1289
+ children: [
1290
+ /* @__PURE__ */ (0, import_jsx_runtime27.jsxs)("div", { className: "flex flex-col flex-1 min-w-0 gap-[6px]", children: [
1291
+ /* @__PURE__ */ (0, import_jsx_runtime27.jsx)("p", { className: "text-agg-base font-agg-bold leading-agg-6 text-agg-foreground", children: feature.title }),
1292
+ /* @__PURE__ */ (0, import_jsx_runtime27.jsx)("p", { className: "text-agg-sm leading-agg-5 text-agg-foreground", children: feature.description })
1293
+ ] }),
1294
+ icon ? /* @__PURE__ */ (0, import_jsx_runtime27.jsx)("div", { className: "hidden shrink-0 items-center justify-center text-agg-muted-foreground sm:flex", children: icon }) : null
1295
+ ]
1296
+ },
1297
+ featureKey
1298
+ );
1299
+ }) }),
1300
+ /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(Button, { variant: "primary", size: "l", className: "w-full", onClick: onContinue, children: labels.onboarding.howItWorks.continue })
1301
+ ] });
1302
+ };
1303
+ HowItWorksStep.displayName = "HowItWorksStep";
1304
+
1305
+ // src/onboarding/steps/profile-setup.tsx
1306
+ var import_react = require("react");
1307
+ var import_hooks4 = require("@agg-market/hooks");
1308
+ var import_jsx_runtime28 = require("react/jsx-runtime");
1309
+ var ProfileSetupStep = ({ onContinue }) => {
1310
+ const labels = (0, import_hooks4.useLabels)();
1311
+ const [username, setUsername] = (0, import_react.useState)("");
1312
+ const [avatarFile, setAvatarFile] = (0, import_react.useState)();
1313
+ const [avatarPreview, setAvatarPreview] = (0, import_react.useState)();
1314
+ const fileInputRef = (0, import_react.useRef)(null);
1315
+ const handleAvatarClick = (0, import_react.useCallback)(() => {
1316
+ var _a;
1317
+ (_a = fileInputRef.current) == null ? void 0 : _a.click();
1318
+ }, []);
1319
+ const handleFileChange = (0, import_react.useCallback)((e) => {
1320
+ var _a;
1321
+ const file = (_a = e.target.files) == null ? void 0 : _a[0];
1322
+ if (!file)
1323
+ return;
1324
+ setAvatarFile(file);
1325
+ const reader = new FileReader();
1326
+ reader.onload = (event) => {
1327
+ var _a2;
1328
+ setAvatarPreview((_a2 = event.target) == null ? void 0 : _a2.result);
1329
+ };
1330
+ reader.readAsDataURL(file);
1331
+ }, []);
1332
+ const handleContinue = (0, import_react.useCallback)(() => {
1333
+ onContinue({
1334
+ username,
1335
+ avatarFile,
1336
+ avatarPreview
1337
+ });
1338
+ }, [username, avatarFile, avatarPreview, onContinue]);
1339
+ return /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)("div", { className: "flex flex-col gap-6 sm:gap-8", children: [
1340
+ /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("h2", { className: "text-center text-agg-2xl font-agg-bold text-agg-foreground sm:text-agg-3xl", children: labels.onboarding.profileSetup.title }),
1341
+ /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)("div", { className: "flex justify-center", children: [
1342
+ /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
1343
+ "button",
1344
+ {
1345
+ type: "button",
1346
+ onClick: handleAvatarClick,
1347
+ className: cn(
1348
+ "relative flex items-center justify-center",
1349
+ "h-[80px] w-[80px]",
1350
+ "rounded-agg-full",
1351
+ "border-2 border-dashed border-agg-separator",
1352
+ "bg-agg-secondary",
1353
+ "hover:border-agg-muted-foreground hover:bg-agg-secondary-hover",
1354
+ "transition-colors cursor-pointer",
1355
+ "overflow-hidden"
1356
+ ),
1357
+ "aria-label": labels.onboarding.profileSetup.uploadProfilePictureAria,
1358
+ children: avatarPreview ? /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
1359
+ "img",
1360
+ {
1361
+ src: avatarPreview,
1362
+ alt: labels.onboarding.profileSetup.profilePreviewAlt,
1363
+ className: "h-full w-full object-cover"
1364
+ }
1365
+ ) : /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(ProfileIcon, { className: "h-8 w-8 text-agg-muted-foreground" })
1366
+ }
1367
+ ),
1368
+ /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
1369
+ "input",
1370
+ {
1371
+ ref: fileInputRef,
1372
+ type: "file",
1373
+ accept: "image/*",
1374
+ onChange: handleFileChange,
1375
+ className: "hidden",
1376
+ "aria-hidden": "true"
1377
+ }
1378
+ )
1379
+ ] }),
1380
+ /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)("div", { className: "flex flex-col gap-2", children: [
1381
+ /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
1382
+ "label",
1383
+ {
1384
+ htmlFor: "onboarding-username",
1385
+ className: "text-agg-sm font-agg-bold text-agg-foreground",
1386
+ children: labels.onboarding.profileSetup.usernameLabel
1387
+ }
1388
+ ),
1389
+ /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
1390
+ "input",
1391
+ {
1392
+ id: "onboarding-username",
1393
+ type: "text",
1394
+ value: username,
1395
+ onChange: (e) => setUsername(e.target.value),
1396
+ placeholder: labels.onboarding.profileSetup.usernamePlaceholder,
1397
+ className: cn(
1398
+ "w-full px-4 py-3",
1399
+ "rounded-agg-xl",
1400
+ "border border-agg-separator",
1401
+ "bg-agg-secondary text-agg-foreground",
1402
+ "placeholder:text-agg-muted-foreground",
1403
+ "outline-none",
1404
+ "focus:border-agg-primary focus:ring-1 focus:ring-agg-primary",
1405
+ "transition-colors",
1406
+ "text-agg-sm sm:text-agg-base"
1407
+ )
1408
+ }
1409
+ )
1410
+ ] }),
1411
+ /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(Button, { variant: "primary", size: "l", className: "w-full", onClick: handleContinue, children: labels.onboarding.profileSetup.continue })
1412
+ ] });
1413
+ };
1414
+ ProfileSetupStep.displayName = "ProfileSetupStep";
1415
+
1416
+ // src/onboarding/steps/connect-accounts.tsx
1417
+ var import_hooks6 = require("@agg-market/hooks");
1418
+
1419
+ // src/primitives/venue-logo/index.tsx
1420
+ var import_hooks5 = require("@agg-market/hooks");
1421
+
1422
+ // src/primitives/venue-logo/logo-props.ts
1423
+ var DEFAULT_MONOCHROME_COLOR = "#000000";
1424
+ var resolveLogoPrimaryColor = ({
1425
+ brandColor,
1426
+ isColor = true,
1427
+ color
1428
+ }) => {
1429
+ if (typeof color === "string" && color.trim())
1430
+ return color;
1431
+ if (!isColor)
1432
+ return DEFAULT_MONOCHROME_COLOR;
1433
+ return brandColor;
1434
+ };
1435
+
1436
+ // src/primitives/venue-logo/svg/logo-kalshi.tsx
1437
+ var import_jsx_runtime29 = require("react/jsx-runtime");
1438
+ var KALSHI_GREEN = "#18C590";
1439
+ var LogoKalshiIcon = (_a) => {
1440
+ var _b = _a, {
1441
+ title,
1442
+ className,
1443
+ isColor = true,
1444
+ color
1445
+ } = _b, props = __objRest(_b, [
1446
+ "title",
1447
+ "className",
1448
+ "isColor",
1449
+ "color"
1450
+ ]);
1451
+ const primaryColor = resolveLogoPrimaryColor({
1452
+ brandColor: KALSHI_GREEN,
1453
+ isColor,
1454
+ color
1455
+ });
1456
+ return /* @__PURE__ */ (0, import_jsx_runtime29.jsxs)(
1457
+ "svg",
1458
+ __spreadProps(__spreadValues(__spreadValues({
1459
+ viewBox: "0 0 100 100",
1460
+ className,
1461
+ fill: "none"
1462
+ }, getIconA11yProps(title)), props), {
1463
+ children: [
1464
+ title ? /* @__PURE__ */ (0, import_jsx_runtime29.jsx)("title", { children: title }) : null,
1465
+ /* @__PURE__ */ (0, import_jsx_runtime29.jsx)("path", { d: "M20 10H36V90H20V10Z", fill: primaryColor }),
1466
+ /* @__PURE__ */ (0, import_jsx_runtime29.jsx)("path", { d: "M44 50L74 10H92L62 50L92 90H74L44 50Z", fill: primaryColor })
1467
+ ]
1468
+ })
1469
+ );
1470
+ };
1471
+ LogoKalshiIcon.displayName = "LogoKalshiIcon";
1472
+
1473
+ // src/primitives/venue-logo/svg/logo-opinion.tsx
1474
+ var import_jsx_runtime30 = require("react/jsx-runtime");
1475
+ var OPINION_BLACK = "#000000";
1476
+ var OPINION_WHITE = "#FFFFFF";
1477
+ var LogoOpinionIcon = (_a) => {
1478
+ var _b = _a, {
1479
+ title,
1480
+ className,
1481
+ isColor = true,
1482
+ color
1483
+ } = _b, props = __objRest(_b, [
1484
+ "title",
1485
+ "className",
1486
+ "isColor",
1487
+ "color"
1488
+ ]);
1489
+ const primaryColor = resolveLogoPrimaryColor({
1490
+ brandColor: OPINION_BLACK,
1491
+ isColor,
1492
+ color
1493
+ });
1494
+ const accentColor = (color == null ? void 0 : color.trim()) ? primaryColor : OPINION_WHITE;
1495
+ return /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)(
1496
+ "svg",
1497
+ __spreadProps(__spreadValues(__spreadValues({
1498
+ viewBox: "0 0 100 100",
1499
+ className,
1500
+ fill: "none"
1501
+ }, getIconA11yProps(title)), props), {
1502
+ children: [
1503
+ title ? /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("title", { children: title }) : null,
1504
+ /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("circle", { cx: "50", cy: "50", r: "40", fill: primaryColor }),
1505
+ /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
1506
+ "rect",
1507
+ {
1508
+ x: "21",
1509
+ y: "18",
1510
+ width: "8",
1511
+ height: "64",
1512
+ rx: "4",
1513
+ transform: "rotate(-7 21 18)",
1514
+ fill: accentColor
1515
+ }
1516
+ ),
1517
+ /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
1518
+ "rect",
1519
+ {
1520
+ x: "37",
1521
+ y: "12",
1522
+ width: "8",
1523
+ height: "76",
1524
+ rx: "4",
1525
+ transform: "rotate(-4 37 12)",
1526
+ fill: accentColor
1527
+ }
1528
+ ),
1529
+ /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
1530
+ "rect",
1531
+ {
1532
+ x: "53",
1533
+ y: "12",
1534
+ width: "8",
1535
+ height: "76",
1536
+ rx: "4",
1537
+ transform: "rotate(-4 53 12)",
1538
+ fill: accentColor
1539
+ }
1540
+ ),
1541
+ /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
1542
+ "rect",
1543
+ {
1544
+ x: "69",
1545
+ y: "18",
1546
+ width: "8",
1547
+ height: "64",
1548
+ rx: "4",
1549
+ transform: "rotate(-7 69 18)",
1550
+ fill: accentColor
1551
+ }
1552
+ ),
1553
+ /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("rect", { x: "12", y: "44", width: "76", height: "12", fill: primaryColor })
1554
+ ]
1555
+ })
1556
+ );
1557
+ };
1558
+ LogoOpinionIcon.displayName = "LogoOpinionIcon";
1559
+
1560
+ // src/primitives/venue-logo/svg/logo-polymarket.tsx
1561
+ var import_jsx_runtime31 = require("react/jsx-runtime");
1562
+ var POLYMARKET_BLUE = "#3861FB";
1563
+ var LogoPolymarketIcon = (_a) => {
1564
+ var _b = _a, {
1565
+ title,
1566
+ className,
1567
+ isColor = true,
1568
+ color
1569
+ } = _b, props = __objRest(_b, [
1570
+ "title",
1571
+ "className",
1572
+ "isColor",
1573
+ "color"
1574
+ ]);
1575
+ const primaryColor = resolveLogoPrimaryColor({
1576
+ brandColor: POLYMARKET_BLUE,
1577
+ isColor,
1578
+ color
1579
+ });
1580
+ return /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(
1581
+ "svg",
1582
+ __spreadProps(__spreadValues(__spreadValues({
1583
+ viewBox: "0 0 100 100",
1584
+ className,
1585
+ fill: "none"
1586
+ }, getIconA11yProps(title)), props), {
1587
+ children: [
1588
+ title ? /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("title", { children: title }) : null,
1589
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
1590
+ "path",
1591
+ {
1592
+ d: "M18 10L78 2V98L18 88V10Z",
1593
+ stroke: primaryColor,
1594
+ strokeWidth: "8",
1595
+ strokeLinejoin: "round"
1596
+ }
1597
+ ),
1598
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("path", { d: "M18 32L78 44", stroke: primaryColor, strokeWidth: "8", strokeLinecap: "round" }),
1599
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("path", { d: "M18 58L78 70", stroke: primaryColor, strokeWidth: "8", strokeLinecap: "round" })
1600
+ ]
1601
+ })
1602
+ );
1603
+ };
1604
+ LogoPolymarketIcon.displayName = "LogoPolymarketIcon";
1605
+
1606
+ // src/primitives/venue-logo/svg/logo-probable.tsx
1607
+ var import_jsx_runtime32 = require("react/jsx-runtime");
1608
+ var PROBABLE_ORANGE = "#F85B22";
1609
+ var LogoProbableIcon = (_a) => {
1610
+ var _b = _a, {
1611
+ title,
1612
+ className,
1613
+ isColor = true,
1614
+ color
1615
+ } = _b, props = __objRest(_b, [
1616
+ "title",
1617
+ "className",
1618
+ "isColor",
1619
+ "color"
1620
+ ]);
1621
+ const primaryColor = resolveLogoPrimaryColor({
1622
+ brandColor: PROBABLE_ORANGE,
1623
+ isColor,
1624
+ color
1625
+ });
1626
+ return /* @__PURE__ */ (0, import_jsx_runtime32.jsxs)(
1627
+ "svg",
1628
+ __spreadProps(__spreadValues(__spreadValues({
1629
+ viewBox: "0 0 100 100",
1630
+ className,
1631
+ fill: "none"
1632
+ }, getIconA11yProps(title)), props), {
1633
+ children: [
1634
+ title ? /* @__PURE__ */ (0, import_jsx_runtime32.jsx)("title", { children: title }) : null,
1635
+ /* @__PURE__ */ (0, import_jsx_runtime32.jsx)("rect", { x: "20", y: "16", width: "60", height: "12", fill: primaryColor }),
1636
+ /* @__PURE__ */ (0, import_jsx_runtime32.jsx)("rect", { x: "18", y: "36", width: "64", height: "46", rx: "23", fill: primaryColor }),
1637
+ /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
1638
+ "rect",
1639
+ {
1640
+ x: "32",
1641
+ y: "50",
1642
+ width: "40",
1643
+ height: "18",
1644
+ rx: "9",
1645
+ fill: isColor && !color ? "white" : primaryColor
1646
+ }
1647
+ ),
1648
+ /* @__PURE__ */ (0, import_jsx_runtime32.jsx)("circle", { cx: "61", cy: "59", r: "7", fill: primaryColor })
1649
+ ]
1650
+ })
1651
+ );
1652
+ };
1653
+ LogoProbableIcon.displayName = "LogoProbableIcon";
1654
+
1655
+ // src/primitives/venue-logo/venue-logo.constants.ts
1656
+ var venueLogoRegistry = {
1657
+ kalshi: LogoKalshiIcon,
1658
+ polymarket: LogoPolymarketIcon,
1659
+ opinion: LogoOpinionIcon,
1660
+ probable: LogoProbableIcon
1661
+ };
1662
+ var venueLogoNames = Object.keys(venueLogoRegistry);
1663
+ var sizeClasses2 = {
1664
+ xxs: "h-2 w-2",
1665
+ xs: "h-3 w-3",
1666
+ s: "h-4 w-4",
1667
+ m: "h-6 w-6",
1668
+ l: "h-8 w-8",
1669
+ xl: "h-10 w-10",
1670
+ xxl: "h-12 w-12"
1671
+ };
1672
+
1673
+ // src/primitives/venue-logo/index.tsx
1674
+ var import_jsx_runtime33 = require("react/jsx-runtime");
1675
+ var VenueLogo = ({
1676
+ venue,
1677
+ isColor = true,
1678
+ isMonochromatic = false,
1679
+ color,
1680
+ size = "m",
1681
+ className,
1682
+ ariaLabel,
1683
+ title
1684
+ }) => {
1685
+ const labels = (0, import_hooks5.useLabels)();
1686
+ const Component = venueLogoRegistry[venue];
1687
+ const sizeClass = sizeClasses2[size];
1688
+ const resolvedIsColor = isMonochromatic ? false : isColor;
1689
+ return /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
1690
+ Component,
1691
+ {
1692
+ className: cn("shrink-0", sizeClass, className),
1693
+ isColor: resolvedIsColor,
1694
+ color,
1695
+ "aria-label": ariaLabel != null ? ariaLabel : labels.venues[venue],
1696
+ title
1697
+ }
1698
+ );
1699
+ };
1700
+ VenueLogo.displayName = "VenueLogo";
1701
+
1702
+ // src/onboarding/steps/connect-accounts.tsx
1703
+ var import_jsx_runtime34 = require("react/jsx-runtime");
1704
+ var OnchainVenueLogos = () => {
1705
+ return /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("div", { className: "flex -space-x-1.5", children: ONCHAIN_VENUES.map((venue, index) => /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
1706
+ "div",
1707
+ {
1708
+ className: "overflow-hidden rounded-agg-lg",
1709
+ style: { zIndex: ONCHAIN_VENUES.length - index },
1710
+ children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(VenueLogo, { venue, size: "l" })
1711
+ },
1712
+ venue
1713
+ )) });
1714
+ };
1715
+ var VenueCard = ({
1716
+ logos,
1717
+ title,
1718
+ mobileTitle,
1719
+ description,
1720
+ mobileDescription,
1721
+ onConnect,
1722
+ connected = false
1723
+ }) => {
1724
+ const labels = (0, import_hooks6.useLabels)();
1725
+ const action = connected ? /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(CheckCircleIcon, { className: "h-6 w-6 text-agg-success" }) : /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
1726
+ Button,
1727
+ {
1728
+ variant: "tertiary",
1729
+ size: "m",
1730
+ className: "h-auto p-0 text-agg-primary hover:bg-transparent hover:text-agg-primary-hover",
1731
+ onClick: onConnect,
1732
+ children: labels.onboarding.connectAccounts.connect
1733
+ }
1734
+ );
1735
+ const mobileAction = connected ? /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(CheckCircleIcon, { className: "h-6 w-6 text-agg-success" }) : /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
1736
+ Button,
1737
+ {
1738
+ variant: "tertiary",
1739
+ size: "m",
1740
+ className: "h-auto p-0 text-agg-primary hover:bg-transparent hover:text-agg-primary-hover",
1741
+ onClick: onConnect,
1742
+ suffix: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(ChevronRightIcon, { className: "h-4 w-4" }),
1743
+ children: labels.onboarding.connectAccounts.connectAccount
1744
+ }
1745
+ );
1746
+ return /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)(
1747
+ "div",
1748
+ {
1749
+ className: cn(
1750
+ "rounded-agg-lg p-4 sm:p-5",
1751
+ connected ? "bg-agg-success/5" : "bg-agg-secondary-hover"
1752
+ ),
1753
+ children: [
1754
+ /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)("div", { className: "hidden sm:flex items-center gap-4", children: [
1755
+ /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("div", { className: "shrink-0", children: logos }),
1756
+ /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)("div", { className: "flex-1 min-w-0", children: [
1757
+ /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("p", { className: "text-agg-base font-agg-bold text-agg-foreground", children: title }),
1758
+ /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("p", { className: "mt-0.5 text-agg-sm text-agg-muted-foreground", children: description })
1759
+ ] }),
1760
+ /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("div", { className: "shrink-0", children: action })
1761
+ ] }),
1762
+ /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)("div", { className: "flex flex-col gap-3 sm:hidden", children: [
1763
+ /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("div", { className: "shrink-0", children: logos }),
1764
+ /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)("div", { children: [
1765
+ /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("p", { className: "text-agg-base font-agg-bold text-agg-foreground", children: mobileTitle != null ? mobileTitle : title }),
1766
+ /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("p", { className: "mt-0.5 text-agg-sm text-agg-muted-foreground", children: mobileDescription != null ? mobileDescription : description })
1767
+ ] }),
1768
+ /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("div", { children: mobileAction })
1769
+ ] })
1770
+ ]
1771
+ }
1772
+ );
1773
+ };
1774
+ var ConnectAccountsStep = ({
1775
+ onConnectOnchain,
1776
+ onConnectKalshi,
1777
+ onContinue,
1778
+ connectedOnchain = false,
1779
+ connectedKalshi = false
1780
+ }) => {
1781
+ const labels = (0, import_hooks6.useLabels)();
1782
+ const canContinue = connectedOnchain || connectedKalshi;
1783
+ return /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)("div", { className: "flex flex-col gap-6", children: [
1784
+ /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("h2", { className: "text-center text-agg-2xl font-agg-bold text-agg-foreground sm:text-agg-3xl", children: labels.onboarding.connectAccounts.title }),
1785
+ /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)("div", { className: "flex flex-col gap-3", children: [
1786
+ /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
1787
+ VenueCard,
1788
+ {
1789
+ logos: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(OnchainVenueLogos, {}),
1790
+ title: labels.onboarding.connectAccounts.onchainTitle,
1791
+ mobileTitle: labels.onboarding.connectAccounts.onchainMobileTitle(
1792
+ ONCHAIN_VENUES.length - 1
1793
+ ),
1794
+ description: labels.onboarding.connectAccounts.onchainDescription,
1795
+ mobileDescription: labels.onboarding.connectAccounts.onchainMobileDescription,
1796
+ onConnect: onConnectOnchain,
1797
+ connected: connectedOnchain
1798
+ }
1799
+ ),
1800
+ /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
1801
+ VenueCard,
1802
+ {
1803
+ logos: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("div", { className: "overflow-hidden rounded-agg-lg", children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(VenueLogo, { venue: "kalshi", size: "l" }) }),
1804
+ title: labels.onboarding.connectAccounts.kalshiTitle,
1805
+ mobileTitle: labels.onboarding.connectAccounts.kalshiMobileTitle,
1806
+ description: labels.onboarding.connectAccounts.kalshiDescription,
1807
+ mobileDescription: labels.onboarding.connectAccounts.kalshiMobileDescription,
1808
+ onConnect: onConnectKalshi,
1809
+ connected: connectedKalshi
1810
+ }
1811
+ )
1812
+ ] }),
1813
+ /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
1814
+ Button,
1815
+ {
1816
+ variant: "primary",
1817
+ size: "l",
1818
+ className: "w-full",
1819
+ onClick: onContinue,
1820
+ disabled: !canContinue,
1821
+ children: labels.onboarding.connectAccounts.continue
1822
+ }
1823
+ )
1824
+ ] });
1825
+ };
1826
+ ConnectAccountsStep.displayName = "ConnectAccountsStep";
1827
+
1828
+ // src/onboarding/steps/connect-kalshi-modal.tsx
1829
+ var import_react2 = require("react");
1830
+ var import_hooks7 = require("@agg-market/hooks");
1831
+ var Dialog2 = __toESM(require("@radix-ui/react-dialog"));
1832
+ var import_jsx_runtime35 = require("react/jsx-runtime");
1833
+ var ConnectKalshiModal = ({
1834
+ open,
1835
+ onOpenChange,
1836
+ onVerify
1837
+ }) => {
1838
+ const labels = (0, import_hooks7.useLabels)();
1839
+ const [apiKeyId, setApiKeyId] = (0, import_react2.useState)("");
1840
+ const [privateKey, setPrivateKey] = (0, import_react2.useState)("");
1841
+ const [verifying, setVerifying] = (0, import_react2.useState)(false);
1842
+ const [error, setError] = (0, import_react2.useState)();
1843
+ const canVerify = apiKeyId.trim().length > 0 && privateKey.trim().length > 0;
1844
+ const handleCancel = (0, import_react2.useCallback)(() => {
1845
+ onOpenChange(false);
1846
+ }, [onOpenChange]);
1847
+ const handleVerify = (0, import_react2.useCallback)(() => __async(void 0, null, function* () {
1848
+ if (!canVerify || verifying)
1849
+ return;
1850
+ setVerifying(true);
1851
+ setError(void 0);
1852
+ try {
1853
+ const credentials = {
1854
+ apiKeyId: apiKeyId.trim(),
1855
+ privateKey: privateKey.trim()
1856
+ };
1857
+ yield onVerify(credentials);
1858
+ setApiKeyId("");
1859
+ setPrivateKey("");
1860
+ onOpenChange(false);
1861
+ } catch (err) {
1862
+ setError(
1863
+ err instanceof Error ? err.message : labels.onboarding.connectKalshiModal.fallbackError
1864
+ );
1865
+ } finally {
1866
+ setVerifying(false);
1867
+ }
1868
+ }), [
1869
+ apiKeyId,
1870
+ canVerify,
1871
+ labels.onboarding.connectKalshiModal.fallbackError,
1872
+ onOpenChange,
1873
+ onVerify,
1874
+ privateKey,
1875
+ verifying
1876
+ ]);
1877
+ const handleOpenChange = (0, import_react2.useCallback)(
1878
+ (value) => {
1879
+ if (value) {
1880
+ setApiKeyId("");
1881
+ setPrivateKey("");
1882
+ setError(void 0);
1883
+ setVerifying(false);
1884
+ }
1885
+ onOpenChange(value);
1886
+ },
1887
+ [onOpenChange]
1888
+ );
1889
+ return /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(Modal, { open, onOpenChange: handleOpenChange, children: /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)(Modal.Container, { maxWidth: "600px", "aria-label": labels.onboarding.connectKalshiModal.ariaLabel, children: [
1890
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(Dialog2.Title, { className: "sr-only", children: labels.onboarding.connectKalshiModal.title }),
1891
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(Modal.Header, { hideClose: false, hideBorder: true }),
1892
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(Modal.Body, { classNames: { root: "px-5 pt-0 pb-6 sm:px-8 sm:pt-0 sm:pb-8" }, children: /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)("div", { className: "flex flex-col gap-8 items-center", children: [
1893
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("div", { className: "overflow-hidden rounded-agg-lg", children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(VenueLogo, { venue: "kalshi", size: "xl" }) }),
1894
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)("div", { className: "flex flex-col gap-4 items-center text-center", children: [
1895
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("h2", { className: "text-agg-2xl font-agg-bold text-agg-foreground", children: labels.onboarding.connectKalshiModal.title }),
1896
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("p", { className: "text-agg-base leading-agg-6 text-agg-foreground", children: labels.onboarding.connectKalshiModal.description })
1897
+ ] }),
1898
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)("div", { className: "flex flex-col gap-4 w-full", children: [
1899
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)("div", { className: "flex flex-col gap-3 rounded-agg-xl bg-agg-secondary-hover p-4", children: [
1900
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)("div", { className: "flex flex-col gap-1", children: [
1901
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("p", { className: "text-agg-xs font-agg-bold uppercase leading-agg-4 text-agg-muted-foreground", children: labels.onboarding.connectKalshiModal.stepOne.label }),
1902
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("p", { className: "text-agg-sm font-agg-bold leading-agg-5 text-agg-foreground", children: labels.onboarding.connectKalshiModal.stepOne.title })
1903
+ ] }),
1904
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)("div", { className: "space-y-0 text-agg-sm leading-agg-5 text-agg-foreground", children: [
1905
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("p", { children: labels.onboarding.connectKalshiModal.stepOne.instructions.signIn }),
1906
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)("p", { children: [
1907
+ labels.onboarding.connectKalshiModal.stepOne.instructions.goToProfilePrefix,
1908
+ " ",
1909
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("span", { className: "font-agg-bold", children: labels.onboarding.connectKalshiModal.stepOne.instructions.profileText }),
1910
+ labels.onboarding.connectKalshiModal.stepOne.instructions.goToProfileSeparator,
1911
+ " ",
1912
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("span", { className: "text-agg-muted-foreground", children: labels.onboarding.connectKalshiModal.stepOne.instructions.profileUrl })
1913
+ ] }),
1914
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)("p", { children: [
1915
+ labels.onboarding.connectKalshiModal.stepOne.instructions.clickCreateKeyPrefix,
1916
+ " ",
1917
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("span", { className: "font-agg-bold", children: labels.onboarding.connectKalshiModal.stepOne.instructions.createKeyText }),
1918
+ labels.onboarding.connectKalshiModal.stepOne.instructions.clickCreateKeySuffix
1919
+ ] }),
1920
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)("p", { children: [
1921
+ labels.onboarding.connectKalshiModal.stepOne.instructions.selectPermissionsPrefix,
1922
+ " ",
1923
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("span", { className: "font-agg-bold", children: labels.onboarding.connectKalshiModal.stepOne.instructions.readWriteText }),
1924
+ labels.onboarding.connectKalshiModal.stepOne.instructions.selectPermissionsSuffix
1925
+ ] }),
1926
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("p", { children: labels.onboarding.connectKalshiModal.stepOne.instructions.createKey })
1927
+ ] }),
1928
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)("p", { className: "text-agg-sm leading-agg-5 text-agg-foreground", children: [
1929
+ labels.onboarding.connectKalshiModal.stepOne.footerLineOne,
1930
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("br", {}),
1931
+ labels.onboarding.connectKalshiModal.stepOne.footerLineTwo
1932
+ ] })
1933
+ ] }),
1934
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)("div", { className: "flex flex-col gap-3 rounded-agg-xl bg-agg-secondary-hover p-4", children: [
1935
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)("div", { className: "flex flex-col gap-1", children: [
1936
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("p", { className: "text-agg-xs font-agg-bold uppercase leading-agg-4 text-agg-muted-foreground", children: labels.onboarding.connectKalshiModal.stepTwo.label }),
1937
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("p", { className: "text-agg-sm font-agg-bold leading-agg-5 text-agg-foreground", children: labels.onboarding.connectKalshiModal.stepTwo.title })
1938
+ ] }),
1939
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("p", { className: "text-agg-sm leading-agg-5 text-agg-foreground", children: labels.onboarding.connectKalshiModal.stepTwo.description }),
1940
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)("div", { className: "flex flex-col gap-2", children: [
1941
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
1942
+ "label",
1943
+ {
1944
+ htmlFor: "kalshi-api-key-id",
1945
+ className: "text-agg-sm font-agg-bold text-agg-foreground",
1946
+ children: labels.onboarding.connectKalshiModal.stepTwo.apiKeyIdLabel
1947
+ }
1948
+ ),
1949
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
1950
+ "input",
1951
+ {
1952
+ id: "kalshi-api-key-id",
1953
+ type: "text",
1954
+ value: apiKeyId,
1955
+ onChange: (e) => setApiKeyId(e.target.value),
1956
+ placeholder: labels.onboarding.connectKalshiModal.stepTwo.apiKeyIdPlaceholder,
1957
+ className: cn(
1958
+ "w-full px-3 py-2.5 h-10",
1959
+ "rounded-agg-md border border-agg-separator",
1960
+ "bg-agg-secondary text-agg-base text-agg-foreground",
1961
+ "placeholder:text-agg-muted-foreground",
1962
+ "outline-none",
1963
+ "focus:border-agg-primary focus:ring-1 focus:ring-agg-primary",
1964
+ "transition-colors"
1965
+ )
1966
+ }
1967
+ )
1968
+ ] }),
1969
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)("div", { className: "flex flex-col gap-2", children: [
1970
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
1971
+ "label",
1972
+ {
1973
+ htmlFor: "kalshi-private-key",
1974
+ className: "text-agg-sm font-agg-bold text-agg-foreground",
1975
+ children: labels.onboarding.connectKalshiModal.stepTwo.privateKeyLabel
1976
+ }
1977
+ ),
1978
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
1979
+ "textarea",
1980
+ {
1981
+ id: "kalshi-private-key",
1982
+ value: privateKey,
1983
+ onChange: (e) => setPrivateKey(e.target.value),
1984
+ placeholder: labels.onboarding.connectKalshiModal.stepTwo.privateKeyPlaceholder,
1985
+ rows: 3,
1986
+ className: cn(
1987
+ "w-full px-3 py-2.5",
1988
+ "rounded-agg-md border border-agg-separator",
1989
+ "bg-agg-secondary text-agg-base text-agg-foreground",
1990
+ "placeholder:text-agg-muted-foreground",
1991
+ "outline-none resize-none",
1992
+ "focus:border-agg-primary focus:ring-1 focus:ring-agg-primary",
1993
+ "transition-colors"
1994
+ )
1995
+ }
1996
+ )
1997
+ ] })
1998
+ ] })
1999
+ ] }),
2000
+ error ? /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)("div", { className: "flex items-center gap-2 w-full", children: [
2001
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(WarningIcon, { className: "h-3.5 w-3.5 shrink-0 text-agg-error" }),
2002
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("p", { className: "text-agg-sm leading-agg-5 text-agg-error", children: error })
2003
+ ] }) : null,
2004
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)("div", { className: "flex items-center justify-between w-full", children: [
2005
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("p", { className: "text-agg-base text-agg-foreground", children: labels.onboarding.connectKalshiModal.help.label }),
2006
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)("div", { className: "flex items-center gap-3", children: [
2007
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
2008
+ "a",
2009
+ {
2010
+ href: "#",
2011
+ className: "text-agg-base font-agg-bold text-agg-primary hover:underline",
2012
+ children: labels.onboarding.connectKalshiModal.help.docsLinkLabel
2013
+ }
2014
+ ),
2015
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("span", { className: "h-3 w-px bg-agg-separator" }),
2016
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
2017
+ "a",
2018
+ {
2019
+ href: "#",
2020
+ className: "text-agg-base font-agg-bold text-agg-primary hover:underline",
2021
+ children: labels.onboarding.connectKalshiModal.help.tutorialLinkLabel
2022
+ }
2023
+ )
2024
+ ] })
2025
+ ] }),
2026
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)("div", { className: "flex items-center gap-3 justify-center", children: [
2027
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(Button, { variant: "secondary", size: "m", onClick: handleCancel, children: labels.onboarding.connectKalshiModal.actions.cancel }),
2028
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
2029
+ Button,
2030
+ {
2031
+ variant: "primary",
2032
+ size: "m",
2033
+ onClick: handleVerify,
2034
+ disabled: !canVerify,
2035
+ isLoading: verifying,
2036
+ children: labels.onboarding.connectKalshiModal.actions.verifyConnection
2037
+ }
2038
+ )
2039
+ ] })
2040
+ ] }) })
2041
+ ] }) });
2042
+ };
2043
+ ConnectKalshiModal.displayName = "ConnectKalshiModal";
2044
+
2045
+ // src/onboarding/steps/connect-onchain-modal.tsx
2046
+ var import_react3 = require("react");
2047
+ var import_hooks8 = require("@agg-market/hooks");
2048
+ var Dialog3 = __toESM(require("@radix-ui/react-dialog"));
2049
+ var import_jsx_runtime36 = require("react/jsx-runtime");
2050
+ var ConnectOnchainModal = ({
2051
+ open,
2052
+ onOpenChange,
2053
+ onConnect
2054
+ }) => {
2055
+ const labels = (0, import_hooks8.useLabels)();
2056
+ const [connecting, setConnecting] = (0, import_react3.useState)(false);
2057
+ const [error, setError] = (0, import_react3.useState)();
2058
+ const handleCancel = (0, import_react3.useCallback)(() => {
2059
+ onOpenChange(false);
2060
+ }, [onOpenChange]);
2061
+ const handleConnect = (0, import_react3.useCallback)(() => __async(void 0, null, function* () {
2062
+ if (connecting)
2063
+ return;
2064
+ setConnecting(true);
2065
+ setError(void 0);
2066
+ try {
2067
+ yield onConnect();
2068
+ onOpenChange(false);
2069
+ } catch (err) {
2070
+ setError(
2071
+ err instanceof Error ? err.message : labels.onboarding.connectOnchainModal.fallbackError
2072
+ );
2073
+ } finally {
2074
+ setConnecting(false);
2075
+ }
2076
+ }), [connecting, labels.onboarding.connectOnchainModal.fallbackError, onConnect, onOpenChange]);
2077
+ const handleOpenChange = (0, import_react3.useCallback)(
2078
+ (value) => {
2079
+ if (value) {
2080
+ setError(void 0);
2081
+ setConnecting(false);
2082
+ }
2083
+ onOpenChange(value);
2084
+ },
2085
+ [onOpenChange]
2086
+ );
2087
+ return /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(Modal, { open, onOpenChange: handleOpenChange, children: /* @__PURE__ */ (0, import_jsx_runtime36.jsxs)(
2088
+ Modal.Container,
2089
+ {
2090
+ maxWidth: "600px",
2091
+ "aria-label": labels.onboarding.connectOnchainModal.ariaLabel,
2092
+ children: [
2093
+ /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(Dialog3.Title, { className: "sr-only", children: labels.onboarding.connectOnchainModal.title }),
2094
+ /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(Modal.Header, { hideClose: false, hideBorder: true }),
2095
+ /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(Modal.Body, { classNames: { root: "px-5 pt-0 pb-6 sm:px-8 sm:pt-0 sm:pb-8" }, children: /* @__PURE__ */ (0, import_jsx_runtime36.jsxs)("div", { className: "flex flex-col gap-8 items-center", children: [
2096
+ /* @__PURE__ */ (0, import_jsx_runtime36.jsxs)("div", { className: "flex flex-col gap-4 items-center text-center", children: [
2097
+ /* @__PURE__ */ (0, import_jsx_runtime36.jsx)("h2", { className: "text-agg-2xl font-agg-bold text-agg-foreground", children: labels.onboarding.connectOnchainModal.title }),
2098
+ /* @__PURE__ */ (0, import_jsx_runtime36.jsx)("p", { className: "text-agg-base leading-agg-6 text-agg-foreground", children: labels.onboarding.connectOnchainModal.description })
2099
+ ] }),
2100
+ /* @__PURE__ */ (0, import_jsx_runtime36.jsxs)("div", { className: "flex w-full flex-col items-center gap-4 rounded-agg-xl bg-agg-secondary-hover p-6", children: [
2101
+ /* @__PURE__ */ (0, import_jsx_runtime36.jsx)("p", { className: "text-agg-sm font-agg-bold uppercase leading-agg-5 text-agg-muted-foreground", children: labels.onboarding.connectOnchainModal.supportedVenuesLabel }),
2102
+ /* @__PURE__ */ (0, import_jsx_runtime36.jsx)("div", { className: "flex flex-wrap items-center justify-center gap-x-4 gap-y-3", children: ONCHAIN_VENUES.map((venue, index) => /* @__PURE__ */ (0, import_jsx_runtime36.jsxs)("div", { className: "flex items-center gap-[6px]", children: [
2103
+ index > 0 && /* @__PURE__ */ (0, import_jsx_runtime36.jsx)("span", { className: "mr-2.5 h-3 w-px bg-agg-separator" }),
2104
+ /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(VenueLogo, { venue, size: "m", className: "h-5 w-5" }),
2105
+ /* @__PURE__ */ (0, import_jsx_runtime36.jsx)("span", { className: "text-agg-base text-agg-foreground", children: labels.venues[venue] })
2106
+ ] }, venue)) })
2107
+ ] }),
2108
+ /* @__PURE__ */ (0, import_jsx_runtime36.jsxs)("div", { className: "flex flex-col gap-6 items-center", children: [
2109
+ /* @__PURE__ */ (0, import_jsx_runtime36.jsxs)("div", { className: "flex flex-col gap-3 items-center", children: [
2110
+ error ? /* @__PURE__ */ (0, import_jsx_runtime36.jsxs)("div", { className: "flex items-center gap-2", children: [
2111
+ /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(WarningIcon, { className: "h-3.5 w-3.5 shrink-0 text-agg-error" }),
2112
+ /* @__PURE__ */ (0, import_jsx_runtime36.jsx)("p", { className: "text-agg-sm leading-agg-5 text-agg-error", children: error })
2113
+ ] }) : null,
2114
+ /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(Button, { variant: "primary", size: "l", onClick: handleConnect, isLoading: connecting, children: labels.onboarding.connectOnchainModal.connect })
2115
+ ] }),
2116
+ /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
2117
+ Button,
2118
+ {
2119
+ variant: "tertiary",
2120
+ size: "m",
2121
+ className: "h-auto p-0 text-agg-primary hover:bg-transparent hover:text-agg-primary-hover",
2122
+ onClick: handleCancel,
2123
+ children: labels.onboarding.connectOnchainModal.cancel
2124
+ }
2125
+ )
2126
+ ] })
2127
+ ] }) })
2128
+ ]
2129
+ }
2130
+ ) });
2131
+ };
2132
+ ConnectOnchainModal.displayName = "ConnectOnchainModal";
2133
+
2134
+ // src/onboarding/index.tsx
2135
+ var import_jsx_runtime37 = require("react/jsx-runtime");
2136
+ var OnboardingModal = ({
2137
+ open,
2138
+ onOpenChange,
2139
+ onProfileSubmit,
2140
+ onConnectOnchain,
2141
+ onConnectKalshi,
2142
+ onComplete,
2143
+ howItWorksIcons,
2144
+ connectedOnchain = false,
2145
+ connectedKalshi = false
2146
+ }) => {
2147
+ var _a;
2148
+ const labels = (0, import_hooks9.useLabels)();
2149
+ const [step, setStep] = (0, import_react4.useState)(ONBOARDING_STEPS.HOW_IT_WORKS);
2150
+ const stepLabels = {
2151
+ [ONBOARDING_STEPS.HOW_IT_WORKS]: labels.onboarding.modal.stepHowItWorks,
2152
+ [ONBOARDING_STEPS.PROFILE_SETUP]: labels.onboarding.modal.stepProfileSetup,
2153
+ [ONBOARDING_STEPS.CONNECT_ACCOUNTS]: labels.onboarding.modal.stepConnectAccounts
2154
+ };
2155
+ const resolvedTitle = (_a = stepLabels[step]) != null ? _a : labels.onboarding.modal.title;
2156
+ const [kalshiModalOpen, setKalshiModalOpen] = (0, import_react4.useState)(false);
2157
+ const [kalshiConnected, setKalshiConnected] = (0, import_react4.useState)(false);
2158
+ const [onchainModalOpen, setOnchainModalOpen] = (0, import_react4.useState)(false);
2159
+ const [onchainConnected, setOnchainConnected] = (0, import_react4.useState)(false);
2160
+ (0, import_react4.useEffect)(() => {
2161
+ if (open) {
2162
+ setStep(ONBOARDING_STEPS.HOW_IT_WORKS);
2163
+ setKalshiConnected(false);
2164
+ setOnchainConnected(false);
2165
+ }
2166
+ }, [open]);
2167
+ const handleHowItWorksContinue = (0, import_react4.useCallback)(() => {
2168
+ setStep(ONBOARDING_STEPS.PROFILE_SETUP);
2169
+ }, []);
2170
+ const handleProfileContinue = (0, import_react4.useCallback)(
2171
+ (data) => {
2172
+ onProfileSubmit == null ? void 0 : onProfileSubmit(data);
2173
+ setStep(ONBOARDING_STEPS.CONNECT_ACCOUNTS);
2174
+ },
2175
+ [onProfileSubmit]
2176
+ );
2177
+ const handleConnectContinue = (0, import_react4.useCallback)(() => {
2178
+ onComplete == null ? void 0 : onComplete();
2179
+ }, [onComplete]);
2180
+ const handleOpenOnchainModal = (0, import_react4.useCallback)(() => {
2181
+ setOnchainModalOpen(true);
2182
+ }, []);
2183
+ const handleOnchainConnect = (0, import_react4.useCallback)(() => __async(void 0, null, function* () {
2184
+ yield onConnectOnchain == null ? void 0 : onConnectOnchain();
2185
+ setOnchainConnected(true);
2186
+ }), [onConnectOnchain]);
2187
+ const handleOpenKalshiModal = (0, import_react4.useCallback)(() => {
2188
+ setKalshiModalOpen(true);
2189
+ }, []);
2190
+ const handleKalshiVerify = (0, import_react4.useCallback)(
2191
+ (credentials) => __async(void 0, null, function* () {
2192
+ yield onConnectKalshi == null ? void 0 : onConnectKalshi(credentials);
2193
+ setKalshiConnected(true);
2194
+ }),
2195
+ [onConnectKalshi]
2196
+ );
2197
+ return /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)(import_jsx_runtime37.Fragment, { children: [
2198
+ /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(Modal, { open, onOpenChange, children: /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)(Modal.Container, { maxWidth: "600px", "aria-label": resolvedTitle, children: [
2199
+ /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(Dialog4.Title, { className: "sr-only", children: resolvedTitle }),
2200
+ /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)(Modal.Body, { classNames: { root: "px-5 py-6 sm:px-10 sm:py-8" }, children: [
2201
+ step === ONBOARDING_STEPS.HOW_IT_WORKS && /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(HowItWorksStep, { onContinue: handleHowItWorksContinue, icons: howItWorksIcons }),
2202
+ step === ONBOARDING_STEPS.PROFILE_SETUP && /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(ProfileSetupStep, { onContinue: handleProfileContinue }),
2203
+ step === ONBOARDING_STEPS.CONNECT_ACCOUNTS && /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
2204
+ ConnectAccountsStep,
2205
+ {
2206
+ onConnectOnchain: handleOpenOnchainModal,
2207
+ onConnectKalshi: handleOpenKalshiModal,
2208
+ onContinue: handleConnectContinue,
2209
+ connectedOnchain: connectedOnchain || onchainConnected,
2210
+ connectedKalshi: connectedKalshi || kalshiConnected
2211
+ }
2212
+ )
2213
+ ] })
2214
+ ] }) }),
2215
+ /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
2216
+ ConnectOnchainModal,
2217
+ {
2218
+ open: onchainModalOpen,
2219
+ onOpenChange: setOnchainModalOpen,
2220
+ onConnect: handleOnchainConnect
2221
+ }
2222
+ ),
2223
+ /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
2224
+ ConnectKalshiModal,
2225
+ {
2226
+ open: kalshiModalOpen,
2227
+ onOpenChange: setKalshiModalOpen,
2228
+ onVerify: handleKalshiVerify
2229
+ }
2230
+ )
2231
+ ] });
2232
+ };
2233
+ OnboardingModal.displayName = "OnboardingModal";
2234
+ // Annotate the CommonJS export names for ESM import in node:
2235
+ 0 && (module.exports = {
2236
+ ConnectAccountsStep,
2237
+ ConnectKalshiModal,
2238
+ ConnectOnchainModal,
2239
+ HowItWorksStep,
2240
+ OnboardingModal,
2241
+ ProfileSetupStep
2242
+ });