@agg-build/ui 4.22.6 → 4.24.0

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 (31) hide show
  1. package/dist/{chunk-CKHECAKV.mjs → chunk-7ORC3TUJ.mjs} +398 -239
  2. package/dist/{chunk-RCO424WO.mjs → chunk-G4KXZ5XX.mjs} +63 -66
  3. package/dist/{chunk-NV6WT3TN.mjs → chunk-HZXHDH6G.mjs} +153 -45
  4. package/dist/{chunk-H54RU7NF.mjs → chunk-MDCFCGA3.mjs} +6 -3
  5. package/dist/{chunk-SGXFMBJM.mjs → chunk-Q5NJCH5O.mjs} +19 -7
  6. package/dist/{chunk-UXLC3FFY.mjs → chunk-W2LCFCW3.mjs} +1 -1
  7. package/dist/{chunk-JR2XAAK6.mjs → chunk-YYGS6S7N.mjs} +5 -2
  8. package/dist/{event-market-J35IWO2I.mjs → event-market-YBWA2HRJ.mjs} +4 -4
  9. package/dist/events.js +10 -4
  10. package/dist/events.mjs +2 -2
  11. package/dist/index.js +2688 -2395
  12. package/dist/index.mjs +9 -7
  13. package/dist/modals.js +512 -352
  14. package/dist/modals.mjs +4 -2
  15. package/dist/pages.js +2234 -1943
  16. package/dist/pages.mjs +6 -6
  17. package/dist/styles.css +1 -1
  18. package/dist/tailwind.css +1 -1
  19. package/dist/trading.js +1139 -874
  20. package/dist/trading.mjs +2 -2
  21. package/dist/types/onboarding/index.d.mts +1 -0
  22. package/dist/types/onboarding/index.d.ts +1 -0
  23. package/dist/types/onboarding/steps/connect-novig-modal.d.mts +12 -0
  24. package/dist/types/onboarding/steps/connect-novig-modal.d.ts +12 -0
  25. package/dist/types/pages/event-market/sports-markets.d.mts +3 -1
  26. package/dist/types/pages/event-market/sports-markets.d.ts +3 -1
  27. package/dist/types/pages/user-profile/components/available-balance-card.d.mts +1 -2
  28. package/dist/types/pages/user-profile/components/available-balance-card.d.ts +1 -2
  29. package/dist/types/trading/place-order/index.place-order.utils.d.mts +7 -0
  30. package/dist/types/trading/place-order/index.place-order.utils.d.ts +7 -0
  31. package/package.json +3 -3
package/dist/modals.js CHANGED
@@ -83,6 +83,7 @@ __export(modals_exports, {
83
83
  CARD_NETWORK_OPTIONS: () => CARD_NETWORK_OPTIONS,
84
84
  ConnectAccountsStep: () => ConnectAccountsStep,
85
85
  ConnectKalshiModal: () => ConnectKalshiModal,
86
+ ConnectNovigModal: () => ConnectNovigModal,
86
87
  ConnectOnchainModal: () => ConnectOnchainModal,
87
88
  ConnectProphetxModal: () => ConnectProphetxModal,
88
89
  DepositModal: () => DepositModal,
@@ -7728,9 +7729,9 @@ var WithdrawModal = (props) => {
7728
7729
  WithdrawModal.displayName = "WithdrawModal";
7729
7730
 
7730
7731
  // src/onboarding/index.tsx
7731
- var import_react19 = require("react");
7732
- var import_hooks41 = require("@agg-build/hooks");
7733
- var Dialog5 = __toESM(require("@radix-ui/react-dialog"));
7732
+ var import_react20 = require("react");
7733
+ var import_hooks42 = require("@agg-build/hooks");
7734
+ var Dialog6 = __toESM(require("@radix-ui/react-dialog"));
7734
7735
 
7735
7736
  // src/onboarding/onboarding-modal.constants.ts
7736
7737
  var import_sdk12 = require("@agg-build/sdk");
@@ -9591,8 +9592,166 @@ function ConnectProphetxModal({
9591
9592
  );
9592
9593
  }
9593
9594
 
9594
- // src/onboarding/index.tsx
9595
+ // src/onboarding/steps/connect-novig-modal.tsx
9596
+ var import_hooks41 = require("@agg-build/hooks");
9597
+ var import_sdk15 = require("@agg-build/sdk");
9598
+ var Dialog5 = __toESM(require("@radix-ui/react-dialog"));
9599
+ var import_react19 = require("react");
9595
9600
  var import_jsx_runtime142 = require("react/jsx-runtime");
9601
+ function ConnectNovigModal({
9602
+ open,
9603
+ onOpenChange,
9604
+ onVerify,
9605
+ onDisconnect,
9606
+ allowExistingConnection = false
9607
+ }) {
9608
+ const copy = (0, import_hooks41.useLabels)().onboarding.connectNovigModal;
9609
+ const common = (0, import_hooks41.useLabels)().common;
9610
+ const { novigExecutionMode, disabledVenues, isLoading } = (0, import_hooks41.useAppConfig)();
9611
+ const id = (0, import_react19.useId)();
9612
+ const [keyId, setKeyId] = (0, import_react19.useState)("");
9613
+ const [privateKey, setPrivateKey] = (0, import_react19.useState)("");
9614
+ const [pending, setPending] = (0, import_react19.useState)(false);
9615
+ const [disconnecting, setDisconnecting] = (0, import_react19.useState)(false);
9616
+ const [disconnectError, setDisconnectError] = (0, import_react19.useState)(false);
9617
+ const busy = pending || disconnecting;
9618
+ const [connected, setConnected] = (0, import_react19.useState)(false);
9619
+ const [error, setError] = (0, import_react19.useState)(false);
9620
+ (0, import_react19.useEffect)(() => {
9621
+ if (!open) {
9622
+ setKeyId("");
9623
+ setPrivateKey("");
9624
+ setError(false);
9625
+ setDisconnectError(false);
9626
+ setConnected(false);
9627
+ }
9628
+ }, [open]);
9629
+ if (isLoading || !allowExistingConnection && (novigExecutionMode !== "direct" || disabledVenues.includes(import_sdk15.Venue.novig)))
9630
+ return null;
9631
+ return /* @__PURE__ */ (0, import_jsx_runtime142.jsx)(
9632
+ Modal,
9633
+ {
9634
+ open,
9635
+ onOpenChange: (value) => {
9636
+ if (!busy) onOpenChange(value);
9637
+ },
9638
+ children: /* @__PURE__ */ (0, import_jsx_runtime142.jsx)(Modal.Container, { maxWidth: "480px", "aria-label": copy.title, children: /* @__PURE__ */ (0, import_jsx_runtime142.jsxs)(Modal.Body, { classNames: { root: "relative !p-6" }, children: [
9639
+ /* @__PURE__ */ (0, import_jsx_runtime142.jsx)(
9640
+ Dialog5.Close,
9641
+ {
9642
+ "aria-label": common.close,
9643
+ disabled: busy,
9644
+ className: "absolute right-4 top-4 cursor-pointer disabled:cursor-not-allowed",
9645
+ children: /* @__PURE__ */ (0, import_jsx_runtime142.jsx)(Icon, { name: "close", size: "medium" })
9646
+ }
9647
+ ),
9648
+ /* @__PURE__ */ (0, import_jsx_runtime142.jsxs)(
9649
+ "form",
9650
+ {
9651
+ className: "flex flex-col gap-4",
9652
+ onSubmit: (event) => __async(null, null, function* () {
9653
+ event.preventDefault();
9654
+ if (busy || !keyId.trim() || !privateKey.trim()) return;
9655
+ setPending(true);
9656
+ setError(false);
9657
+ try {
9658
+ yield onVerify({ keyId: keyId.trim(), privateKey: privateKey.trim() });
9659
+ setKeyId("");
9660
+ setPrivateKey("");
9661
+ setConnected(true);
9662
+ } catch (e) {
9663
+ setError(true);
9664
+ } finally {
9665
+ setPending(false);
9666
+ }
9667
+ }),
9668
+ children: [
9669
+ /* @__PURE__ */ (0, import_jsx_runtime142.jsx)(VenueLogo, { venue: import_sdk15.Venue.novig, size: "large" }),
9670
+ /* @__PURE__ */ (0, import_jsx_runtime142.jsx)(Dialog5.Title, { className: "text-agg-xl font-agg-bold text-agg-foreground", children: copy.title }),
9671
+ /* @__PURE__ */ (0, import_jsx_runtime142.jsx)(Dialog5.Description, { className: "text-agg-sm text-agg-muted-foreground", children: copy.description }),
9672
+ /* @__PURE__ */ (0, import_jsx_runtime142.jsx)("p", { className: "text-agg-sm text-agg-muted-foreground", children: copy.fundingNotice }),
9673
+ connected ? /* @__PURE__ */ (0, import_jsx_runtime142.jsxs)(import_jsx_runtime142.Fragment, { children: [
9674
+ /* @__PURE__ */ (0, import_jsx_runtime142.jsx)("p", { role: "status", children: copy.connected }),
9675
+ /* @__PURE__ */ (0, import_jsx_runtime142.jsx)(Button, { type: "button", onClick: () => onOpenChange(false), children: copy.done })
9676
+ ] }) : /* @__PURE__ */ (0, import_jsx_runtime142.jsxs)(import_jsx_runtime142.Fragment, { children: [
9677
+ /* @__PURE__ */ (0, import_jsx_runtime142.jsx)(
9678
+ "a",
9679
+ {
9680
+ className: "text-agg-sm text-agg-primary underline",
9681
+ href: "https://docs.novig.com/api/quickstart",
9682
+ target: "_blank",
9683
+ rel: "noopener noreferrer",
9684
+ children: copy.instructions
9685
+ }
9686
+ ),
9687
+ /* @__PURE__ */ (0, import_jsx_runtime142.jsx)("label", { htmlFor: `${id}-access`, className: "text-agg-sm text-agg-foreground", children: copy.keyId }),
9688
+ /* @__PURE__ */ (0, import_jsx_runtime142.jsx)(
9689
+ "input",
9690
+ {
9691
+ id: `${id}-access`,
9692
+ type: "password",
9693
+ autoComplete: "off",
9694
+ spellCheck: false,
9695
+ className: "rounded-agg-md border border-agg-border bg-agg-secondary p-3 text-agg-foreground",
9696
+ value: keyId,
9697
+ onChange: (e) => setKeyId(e.target.value),
9698
+ disabled: busy,
9699
+ required: true
9700
+ }
9701
+ ),
9702
+ /* @__PURE__ */ (0, import_jsx_runtime142.jsx)("label", { htmlFor: `${id}-secret`, className: "text-agg-sm text-agg-foreground", children: copy.privateKey }),
9703
+ /* @__PURE__ */ (0, import_jsx_runtime142.jsx)(
9704
+ "textarea",
9705
+ {
9706
+ id: `${id}-secret`,
9707
+ rows: 5,
9708
+ autoComplete: "new-password",
9709
+ spellCheck: false,
9710
+ className: "rounded-agg-md border border-agg-border bg-agg-secondary p-3 text-agg-foreground",
9711
+ value: privateKey,
9712
+ onChange: (e) => setPrivateKey(e.target.value),
9713
+ disabled: busy,
9714
+ required: true
9715
+ }
9716
+ ),
9717
+ error ? /* @__PURE__ */ (0, import_jsx_runtime142.jsx)("p", { role: "alert", className: "text-agg-sm text-agg-error", children: copy.error }) : null,
9718
+ /* @__PURE__ */ (0, import_jsx_runtime142.jsx)(Button, { type: "submit", disabled: busy || !keyId.trim() || !privateKey.trim(), children: pending ? copy.verifying : copy.verify })
9719
+ ] }),
9720
+ allowExistingConnection && onDisconnect ? /* @__PURE__ */ (0, import_jsx_runtime142.jsx)(
9721
+ Button,
9722
+ {
9723
+ type: "button",
9724
+ variant: "secondary",
9725
+ disabled: busy,
9726
+ onClick: () => __async(null, null, function* () {
9727
+ setDisconnecting(true);
9728
+ setDisconnectError(false);
9729
+ setError(false);
9730
+ try {
9731
+ yield onDisconnect();
9732
+ setKeyId("");
9733
+ setPrivateKey("");
9734
+ onOpenChange(false);
9735
+ } catch (e) {
9736
+ setDisconnectError(true);
9737
+ } finally {
9738
+ setDisconnecting(false);
9739
+ }
9740
+ }),
9741
+ children: disconnecting ? copy.disconnecting : copy.disconnect
9742
+ }
9743
+ ) : null,
9744
+ disconnectError ? /* @__PURE__ */ (0, import_jsx_runtime142.jsx)("p", { role: "alert", className: "text-agg-sm text-agg-error", children: copy.disconnectError }) : null
9745
+ ]
9746
+ }
9747
+ )
9748
+ ] }) })
9749
+ }
9750
+ );
9751
+ }
9752
+
9753
+ // src/onboarding/index.tsx
9754
+ var import_jsx_runtime143 = require("react/jsx-runtime");
9596
9755
  var OnboardingModal = ({
9597
9756
  open,
9598
9757
  onOpenChange,
@@ -9603,55 +9762,55 @@ var OnboardingModal = ({
9603
9762
  connectedOnchain = false
9604
9763
  }) => {
9605
9764
  var _a;
9606
- const labels = (0, import_hooks41.useLabels)();
9607
- const [step, setStep] = (0, import_react19.useState)(ONBOARDING_STEPS.HOW_IT_WORKS);
9765
+ const labels = (0, import_hooks42.useLabels)();
9766
+ const [step, setStep] = (0, import_react20.useState)(ONBOARDING_STEPS.HOW_IT_WORKS);
9608
9767
  const stepLabels = {
9609
9768
  [ONBOARDING_STEPS.HOW_IT_WORKS]: labels.onboarding.modal.stepHowItWorks,
9610
9769
  [ONBOARDING_STEPS.PROFILE_SETUP]: labels.onboarding.modal.stepProfileSetup,
9611
9770
  [ONBOARDING_STEPS.CONNECT_ACCOUNTS]: labels.onboarding.modal.stepConnectAccounts
9612
9771
  };
9613
9772
  const resolvedTitle = (_a = stepLabels[step]) != null ? _a : labels.onboarding.modal.title;
9614
- const [onchainModalOpen, setOnchainModalOpen] = (0, import_react19.useState)(false);
9615
- const [onchainConnected, setOnchainConnected] = (0, import_react19.useState)(false);
9616
- (0, import_react19.useEffect)(() => {
9773
+ const [onchainModalOpen, setOnchainModalOpen] = (0, import_react20.useState)(false);
9774
+ const [onchainConnected, setOnchainConnected] = (0, import_react20.useState)(false);
9775
+ (0, import_react20.useEffect)(() => {
9617
9776
  if (open) {
9618
9777
  setStep(ONBOARDING_STEPS.HOW_IT_WORKS);
9619
9778
  setOnchainConnected(false);
9620
9779
  }
9621
9780
  }, [open]);
9622
- const handleHowItWorksContinue = (0, import_react19.useCallback)(() => {
9781
+ const handleHowItWorksContinue = (0, import_react20.useCallback)(() => {
9623
9782
  setStep(ONBOARDING_STEPS.PROFILE_SETUP);
9624
9783
  }, []);
9625
- const handleProfileContinue = (0, import_react19.useCallback)(
9784
+ const handleProfileContinue = (0, import_react20.useCallback)(
9626
9785
  (data) => {
9627
9786
  onProfileSubmit == null ? void 0 : onProfileSubmit(data);
9628
9787
  setStep(ONBOARDING_STEPS.CONNECT_ACCOUNTS);
9629
9788
  },
9630
9789
  [onProfileSubmit]
9631
9790
  );
9632
- const handleConnectContinue = (0, import_react19.useCallback)(() => {
9791
+ const handleConnectContinue = (0, import_react20.useCallback)(() => {
9633
9792
  onComplete == null ? void 0 : onComplete();
9634
9793
  }, [onComplete]);
9635
- const handleOpenOnchainModal = (0, import_react19.useCallback)(() => {
9794
+ const handleOpenOnchainModal = (0, import_react20.useCallback)(() => {
9636
9795
  setOnchainModalOpen(true);
9637
9796
  }, []);
9638
- const handleOnchainConnect = (0, import_react19.useCallback)(() => __async(null, null, function* () {
9797
+ const handleOnchainConnect = (0, import_react20.useCallback)(() => __async(null, null, function* () {
9639
9798
  yield onConnectOnchain == null ? void 0 : onConnectOnchain();
9640
9799
  setOnchainConnected(true);
9641
9800
  }), [onConnectOnchain]);
9642
- return /* @__PURE__ */ (0, import_jsx_runtime142.jsxs)(import_jsx_runtime142.Fragment, { children: [
9643
- /* @__PURE__ */ (0, import_jsx_runtime142.jsx)(Modal, { open, onOpenChange, children: /* @__PURE__ */ (0, import_jsx_runtime142.jsxs)(
9801
+ return /* @__PURE__ */ (0, import_jsx_runtime143.jsxs)(import_jsx_runtime143.Fragment, { children: [
9802
+ /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(Modal, { open, onOpenChange, children: /* @__PURE__ */ (0, import_jsx_runtime143.jsxs)(
9644
9803
  Modal.Container,
9645
9804
  {
9646
9805
  maxWidth: "600px",
9647
9806
  "aria-label": resolvedTitle,
9648
9807
  classNames: { container: "!rounded-agg-lg" },
9649
9808
  children: [
9650
- /* @__PURE__ */ (0, import_jsx_runtime142.jsx)(Dialog5.Title, { className: "sr-only", children: resolvedTitle }),
9651
- /* @__PURE__ */ (0, import_jsx_runtime142.jsxs)(Modal.Body, { classNames: { root: "px-5 py-6 sm:px-10 sm:py-8" }, children: [
9652
- step === ONBOARDING_STEPS.HOW_IT_WORKS && /* @__PURE__ */ (0, import_jsx_runtime142.jsx)(HowItWorksStep, { onContinue: handleHowItWorksContinue, icons: howItWorksIcons }),
9653
- step === ONBOARDING_STEPS.PROFILE_SETUP && /* @__PURE__ */ (0, import_jsx_runtime142.jsx)(ProfileSetupStep, { onContinue: handleProfileContinue }),
9654
- step === ONBOARDING_STEPS.CONNECT_ACCOUNTS && /* @__PURE__ */ (0, import_jsx_runtime142.jsx)(
9809
+ /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(Dialog6.Title, { className: "sr-only", children: resolvedTitle }),
9810
+ /* @__PURE__ */ (0, import_jsx_runtime143.jsxs)(Modal.Body, { classNames: { root: "px-5 py-6 sm:px-10 sm:py-8" }, children: [
9811
+ step === ONBOARDING_STEPS.HOW_IT_WORKS && /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(HowItWorksStep, { onContinue: handleHowItWorksContinue, icons: howItWorksIcons }),
9812
+ step === ONBOARDING_STEPS.PROFILE_SETUP && /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(ProfileSetupStep, { onContinue: handleProfileContinue }),
9813
+ step === ONBOARDING_STEPS.CONNECT_ACCOUNTS && /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(
9655
9814
  ConnectAccountsStep,
9656
9815
  {
9657
9816
  onConnectOnchain: handleOpenOnchainModal,
@@ -9663,7 +9822,7 @@ var OnboardingModal = ({
9663
9822
  ]
9664
9823
  }
9665
9824
  ) }),
9666
- /* @__PURE__ */ (0, import_jsx_runtime142.jsx)(
9825
+ /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(
9667
9826
  ConnectOnchainModal,
9668
9827
  {
9669
9828
  open: onchainModalOpen,
@@ -9676,8 +9835,8 @@ var OnboardingModal = ({
9676
9835
  OnboardingModal.displayName = "OnboardingModal";
9677
9836
 
9678
9837
  // src/paper-trading/paper-trading-badge.tsx
9679
- var import_hooks42 = require("@agg-build/hooks");
9680
- var import_jsx_runtime143 = require("react/jsx-runtime");
9838
+ var import_hooks43 = require("@agg-build/hooks");
9839
+ var import_jsx_runtime144 = require("react/jsx-runtime");
9681
9840
  var PaperTradingBadge = ({
9682
9841
  placement = "chip",
9683
9842
  isAuthenticated = false,
@@ -9686,8 +9845,8 @@ var PaperTradingBadge = ({
9686
9845
  showWhenAuthenticated = false,
9687
9846
  classNames
9688
9847
  }) => {
9689
- const labels = (0, import_hooks42.useLabels)();
9690
- const { isPaperMode, isResolving } = (0, import_hooks42.useResolvedExecutionMode)();
9848
+ const labels = (0, import_hooks43.useLabels)();
9849
+ const { isPaperMode, isResolving } = (0, import_hooks43.useResolvedExecutionMode)();
9691
9850
  if (!forceVisible && (isResolving || !isPaperMode)) return null;
9692
9851
  if (placement === "brand" && isAuthenticated && !forceVisible && !showWhenAuthenticated) {
9693
9852
  return null;
@@ -9697,7 +9856,7 @@ var PaperTradingBadge = ({
9697
9856
  chip: "inline-flex",
9698
9857
  signedOut: "hidden md:inline-flex"
9699
9858
  }[placement];
9700
- return /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(
9859
+ return /* @__PURE__ */ (0, import_jsx_runtime144.jsx)(
9701
9860
  Tooltip,
9702
9861
  {
9703
9862
  content: labels.paperTrading.badgeTooltip,
@@ -9715,13 +9874,13 @@ var PaperTradingBadge = ({
9715
9874
  classNames == null ? void 0 : classNames.tooltip
9716
9875
  )
9717
9876
  },
9718
- children: /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(
9877
+ children: /* @__PURE__ */ (0, import_jsx_runtime144.jsx)(
9719
9878
  "span",
9720
9879
  {
9721
9880
  className: cn("agg-paper-trading-badge items-center", placementClassName, classNames == null ? void 0 : classNames.root),
9722
9881
  "data-testid": "agg-paper-trading-badge",
9723
9882
  "data-placement": placement,
9724
- children: /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(
9883
+ children: /* @__PURE__ */ (0, import_jsx_runtime144.jsx)(
9725
9884
  "span",
9726
9885
  {
9727
9886
  className: cn(
@@ -9746,22 +9905,22 @@ var PaperTradingBadge = ({
9746
9905
  PaperTradingBadge.displayName = "PaperTradingBadge";
9747
9906
 
9748
9907
  // src/paper-trading/paper-trading-onboarding.tsx
9749
- var import_hooks44 = require("@agg-build/hooks");
9908
+ var import_hooks45 = require("@agg-build/hooks");
9750
9909
 
9751
9910
  // src/paper-trading/paper-onboarding-modal.tsx
9752
- var import_react20 = require("react");
9753
- var import_hooks43 = require("@agg-build/hooks");
9754
- var import_jsx_runtime144 = require("react/jsx-runtime");
9911
+ var import_react21 = require("react");
9912
+ var import_hooks44 = require("@agg-build/hooks");
9913
+ var import_jsx_runtime145 = require("react/jsx-runtime");
9755
9914
  var PaperOnboardingModal = ({
9756
9915
  open,
9757
9916
  onDismiss,
9758
9917
  startingBalanceLabel,
9759
9918
  classNames
9760
9919
  }) => {
9761
- const labels = (0, import_hooks43.useLabels)();
9920
+ const labels = (0, import_hooks44.useLabels)();
9762
9921
  const copy = labels.paperTrading.onboarding;
9763
- const [stepIndex, setStepIndex] = (0, import_react20.useState)(0);
9764
- const steps = (0, import_react20.useMemo)(
9922
+ const [stepIndex, setStepIndex] = (0, import_react21.useState)(0);
9923
+ const steps = (0, import_react21.useMemo)(
9765
9924
  () => [
9766
9925
  {
9767
9926
  key: "realMarkets",
@@ -9788,17 +9947,17 @@ var PaperOnboardingModal = ({
9788
9947
  const isFirst = stepIndex === 0;
9789
9948
  const isLast = stepIndex === total - 1;
9790
9949
  const step = steps[stepIndex];
9791
- const handleBack = (0, import_react20.useCallback)(() => {
9950
+ const handleBack = (0, import_react21.useCallback)(() => {
9792
9951
  setStepIndex((current) => Math.max(0, current - 1));
9793
9952
  }, []);
9794
- const handleNext = (0, import_react20.useCallback)(() => {
9953
+ const handleNext = (0, import_react21.useCallback)(() => {
9795
9954
  if (isLast) {
9796
9955
  onDismiss();
9797
9956
  return;
9798
9957
  }
9799
9958
  setStepIndex((current) => Math.min(total - 1, current + 1));
9800
9959
  }, [isLast, onDismiss, total]);
9801
- const handleOpenChange = (0, import_react20.useCallback)(
9960
+ const handleOpenChange = (0, import_react21.useCallback)(
9802
9961
  (next) => {
9803
9962
  if (next) return;
9804
9963
  setStepIndex(0);
@@ -9806,7 +9965,7 @@ var PaperOnboardingModal = ({
9806
9965
  },
9807
9966
  [onDismiss]
9808
9967
  );
9809
- return /* @__PURE__ */ (0, import_jsx_runtime144.jsx)(Modal, { open, onOpenChange: handleOpenChange, children: /* @__PURE__ */ (0, import_jsx_runtime144.jsx)(
9968
+ return /* @__PURE__ */ (0, import_jsx_runtime145.jsx)(Modal, { open, onOpenChange: handleOpenChange, children: /* @__PURE__ */ (0, import_jsx_runtime145.jsx)(
9810
9969
  Modal.Container,
9811
9970
  {
9812
9971
  maxWidth: "480px",
@@ -9824,9 +9983,9 @@ var PaperOnboardingModal = ({
9824
9983
  // Only the radius needs overriding, from the container's default 16.
9825
9984
  container: cn("rounded-agg-xl! md:rounded-agg-xl!", classNames == null ? void 0 : classNames.card)
9826
9985
  },
9827
- children: /* @__PURE__ */ (0, import_jsx_runtime144.jsxs)("div", { className: cn("agg-paper-onboarding", "flex w-full flex-col gap-5 p-6"), children: [
9828
- /* @__PURE__ */ (0, import_jsx_runtime144.jsxs)("div", { className: "flex w-full items-start justify-center gap-5", children: [
9829
- /* @__PURE__ */ (0, import_jsx_runtime144.jsx)(
9986
+ children: /* @__PURE__ */ (0, import_jsx_runtime145.jsxs)("div", { className: cn("agg-paper-onboarding", "flex w-full flex-col gap-5 p-6"), children: [
9987
+ /* @__PURE__ */ (0, import_jsx_runtime145.jsxs)("div", { className: "flex w-full items-start justify-center gap-5", children: [
9988
+ /* @__PURE__ */ (0, import_jsx_runtime145.jsx)(
9830
9989
  "div",
9831
9990
  {
9832
9991
  className: cn(
@@ -9834,12 +9993,12 @@ var PaperOnboardingModal = ({
9834
9993
  "rounded-agg-lg bg-agg-primary/10 text-agg-primary",
9835
9994
  classNames == null ? void 0 : classNames.icon
9836
9995
  ),
9837
- children: /* @__PURE__ */ (0, import_jsx_runtime144.jsx)(Icon, { name: step.icon, className: "!h-6 !w-6", "aria-hidden": "true" })
9996
+ children: /* @__PURE__ */ (0, import_jsx_runtime145.jsx)(Icon, { name: step.icon, className: "!h-6 !w-6", "aria-hidden": "true" })
9838
9997
  }
9839
9998
  ),
9840
- /* @__PURE__ */ (0, import_jsx_runtime144.jsxs)("div", { className: "flex min-w-0 flex-1 flex-col gap-2 break-words", children: [
9841
- /* @__PURE__ */ (0, import_jsx_runtime144.jsxs)("div", { className: "flex flex-col gap-1", children: [
9842
- /* @__PURE__ */ (0, import_jsx_runtime144.jsx)(
9999
+ /* @__PURE__ */ (0, import_jsx_runtime145.jsxs)("div", { className: "flex min-w-0 flex-1 flex-col gap-2 break-words", children: [
10000
+ /* @__PURE__ */ (0, import_jsx_runtime145.jsxs)("div", { className: "flex flex-col gap-1", children: [
10001
+ /* @__PURE__ */ (0, import_jsx_runtime145.jsx)(
9843
10002
  "p",
9844
10003
  {
9845
10004
  className: cn(
@@ -9852,7 +10011,7 @@ var PaperOnboardingModal = ({
9852
10011
  children: copy.stepEyebrow({ current: stepIndex + 1, total })
9853
10012
  }
9854
10013
  ),
9855
- /* @__PURE__ */ (0, import_jsx_runtime144.jsx)(
10014
+ /* @__PURE__ */ (0, import_jsx_runtime145.jsx)(
9856
10015
  "p",
9857
10016
  {
9858
10017
  className: cn(
@@ -9863,11 +10022,11 @@ var PaperOnboardingModal = ({
9863
10022
  }
9864
10023
  )
9865
10024
  ] }),
9866
- /* @__PURE__ */ (0, import_jsx_runtime144.jsx)("p", { className: cn("text-agg-sm leading-agg-5 text-agg-foreground", classNames == null ? void 0 : classNames.body), children: step.body })
10025
+ /* @__PURE__ */ (0, import_jsx_runtime145.jsx)("p", { className: cn("text-agg-sm leading-agg-5 text-agg-foreground", classNames == null ? void 0 : classNames.body), children: step.body })
9867
10026
  ] })
9868
10027
  ] }),
9869
- /* @__PURE__ */ (0, import_jsx_runtime144.jsxs)("div", { className: cn("flex w-full items-center justify-between", classNames == null ? void 0 : classNames.footer), children: [
9870
- /* @__PURE__ */ (0, import_jsx_runtime144.jsx)("div", { className: cn("flex items-center gap-1", classNames == null ? void 0 : classNames.dots), "aria-hidden": "true", children: steps.map((dotStep, index) => /* @__PURE__ */ (0, import_jsx_runtime144.jsx)(
10028
+ /* @__PURE__ */ (0, import_jsx_runtime145.jsxs)("div", { className: cn("flex w-full items-center justify-between", classNames == null ? void 0 : classNames.footer), children: [
10029
+ /* @__PURE__ */ (0, import_jsx_runtime145.jsx)("div", { className: cn("flex items-center gap-1", classNames == null ? void 0 : classNames.dots), "aria-hidden": "true", children: steps.map((dotStep, index) => /* @__PURE__ */ (0, import_jsx_runtime145.jsx)(
9871
10030
  "span",
9872
10031
  {
9873
10032
  className: cn(
@@ -9877,8 +10036,8 @@ var PaperOnboardingModal = ({
9877
10036
  },
9878
10037
  dotStep.key
9879
10038
  )) }),
9880
- /* @__PURE__ */ (0, import_jsx_runtime144.jsxs)("div", { className: "flex items-start gap-3", children: [
9881
- /* @__PURE__ */ (0, import_jsx_runtime144.jsx)(
10039
+ /* @__PURE__ */ (0, import_jsx_runtime145.jsxs)("div", { className: "flex items-start gap-3", children: [
10040
+ /* @__PURE__ */ (0, import_jsx_runtime145.jsx)(
9882
10041
  Button,
9883
10042
  {
9884
10043
  variant: "secondary",
@@ -9888,7 +10047,7 @@ var PaperOnboardingModal = ({
9888
10047
  children: isFirst ? copy.skip : copy.back
9889
10048
  }
9890
10049
  ),
9891
- /* @__PURE__ */ (0, import_jsx_runtime144.jsx)(
10050
+ /* @__PURE__ */ (0, import_jsx_runtime145.jsx)(
9892
10051
  Button,
9893
10052
  {
9894
10053
  variant: "primary",
@@ -9907,15 +10066,15 @@ var PaperOnboardingModal = ({
9907
10066
  PaperOnboardingModal.displayName = "PaperOnboardingModal";
9908
10067
 
9909
10068
  // src/paper-trading/paper-trading-onboarding.tsx
9910
- var import_jsx_runtime145 = require("react/jsx-runtime");
10069
+ var import_jsx_runtime146 = require("react/jsx-runtime");
9911
10070
  var FALLBACK_STARTING_BALANCE = 1e4;
9912
10071
  var PaperTradingOnboarding = ({
9913
10072
  classNames
9914
10073
  }) => {
9915
- const { isOpen, dismiss } = (0, import_hooks44.usePaperOnboarding)();
9916
- const { paperStartingBalance } = (0, import_hooks44.useAppConfig)();
10074
+ const { isOpen, dismiss } = (0, import_hooks45.usePaperOnboarding)();
10075
+ const { paperStartingBalance } = (0, import_hooks45.useAppConfig)();
9917
10076
  if (!isOpen) return null;
9918
- return /* @__PURE__ */ (0, import_jsx_runtime145.jsx)(
10077
+ return /* @__PURE__ */ (0, import_jsx_runtime146.jsx)(
9919
10078
  PaperOnboardingModal,
9920
10079
  {
9921
10080
  open: true,
@@ -9930,24 +10089,24 @@ var PaperTradingOnboarding = ({
9930
10089
  PaperTradingOnboarding.displayName = "PaperTradingOnboarding";
9931
10090
 
9932
10091
  // src/profile/index.tsx
9933
- var import_react28 = require("react");
9934
- var import_hooks52 = require("@agg-build/hooks");
9935
- var import_sdk16 = require("@agg-build/sdk");
10092
+ var import_react29 = require("react");
10093
+ var import_hooks53 = require("@agg-build/hooks");
10094
+ var import_sdk17 = require("@agg-build/sdk");
9936
10095
 
9937
10096
  // src/trading/manage-betdex-account-modal.tsx
9938
- var import_react25 = require("react");
9939
- var import_hooks49 = require("@agg-build/hooks");
9940
- var Dialog6 = __toESM(require("@radix-ui/react-dialog"));
10097
+ var import_react26 = require("react");
10098
+ var import_hooks50 = require("@agg-build/hooks");
10099
+ var Dialog7 = __toESM(require("@radix-ui/react-dialog"));
9941
10100
 
9942
10101
  // src/pages/user-profile/components/betdex-account-card.tsx
9943
- var import_react23 = require("react");
9944
- var import_hooks47 = require("@agg-build/hooks");
9945
- var import_sdk15 = require("@agg-build/sdk");
10102
+ var import_react24 = require("react");
10103
+ var import_hooks48 = require("@agg-build/hooks");
10104
+ var import_sdk16 = require("@agg-build/sdk");
9946
10105
 
9947
10106
  // src/pages/user-profile/components/betdex-account-transfers.tsx
9948
- var import_react21 = require("react");
9949
- var import_hooks45 = require("@agg-build/hooks");
9950
- var import_jsx_runtime146 = require("react/jsx-runtime");
10107
+ var import_react22 = require("react");
10108
+ var import_hooks46 = require("@agg-build/hooks");
10109
+ var import_jsx_runtime147 = require("react/jsx-runtime");
9951
10110
  function hostedWithdrawalRaw(value) {
9952
10111
  var _a;
9953
10112
  const match = /^([0-9]{1,26})(?:\.([0-9]{1,6}))?$/.exec(value.trim());
@@ -9967,15 +10126,15 @@ function BetdexAccountTransfers({
9967
10126
  canDeposit,
9968
10127
  onWalletDeposit
9969
10128
  }) {
9970
- const labels = (0, import_hooks45.useLabels)().userProfile.hostedBetdex;
9971
- const transfer = (0, import_hooks45.useHostedVenueTransfers)(accountId, environment);
9972
- const [showWithdraw, setShowWithdraw] = (0, import_react21.useState)(false);
9973
- const wallet = (0, import_hooks45.useDepositAddresses)({
10129
+ const labels = (0, import_hooks46.useLabels)().userProfile.hostedBetdex;
10130
+ const transfer = (0, import_hooks46.useHostedVenueTransfers)(accountId, environment);
10131
+ const [showWithdraw, setShowWithdraw] = (0, import_react22.useState)(false);
10132
+ const wallet = (0, import_hooks46.useDepositAddresses)({
9974
10133
  enabled: transfer.isAvailable && environment === "production" && showWithdraw
9975
10134
  });
9976
- const [amount2, setAmount] = (0, import_react21.useState)("");
9977
- const [destination, setDestination] = (0, import_react21.useState)("");
9978
- const [actionError, setActionError] = (0, import_react21.useState)(false);
10135
+ const [amount2, setAmount] = (0, import_react22.useState)("");
10136
+ const [destination, setDestination] = (0, import_react22.useState)("");
10137
+ const [actionError, setActionError] = (0, import_react22.useState)(false);
9979
10138
  const raw = hostedWithdrawalRaw(amount2);
9980
10139
  const withinBalance = raw !== null && (availableRaw === void 0 || BigInt(raw) <= BigInt(availableRaw));
9981
10140
  const validDestination = /^[1-9A-HJ-NP-Za-km-z]{32,44}$/.test(destination.trim());
@@ -9986,9 +10145,9 @@ function BetdexAccountTransfers({
9986
10145
  void work().catch(() => setActionError(true));
9987
10146
  };
9988
10147
  if (!transfer.isAvailable) return null;
9989
- return /* @__PURE__ */ (0, import_jsx_runtime146.jsxs)("div", { className: "flex flex-col gap-3 border-t border-agg-separator pt-3", children: [
9990
- /* @__PURE__ */ (0, import_jsx_runtime146.jsxs)("div", { className: "flex flex-wrap gap-2", children: [
9991
- canDeposit && environment === "production" && onWalletDeposit ? /* @__PURE__ */ (0, import_jsx_runtime146.jsx)(
10148
+ return /* @__PURE__ */ (0, import_jsx_runtime147.jsxs)("div", { className: "flex flex-col gap-3 border-t border-agg-separator pt-3", children: [
10149
+ /* @__PURE__ */ (0, import_jsx_runtime147.jsxs)("div", { className: "flex flex-wrap gap-2", children: [
10150
+ canDeposit && environment === "production" && onWalletDeposit ? /* @__PURE__ */ (0, import_jsx_runtime147.jsx)(
9992
10151
  Button,
9993
10152
  {
9994
10153
  type: "button",
@@ -10003,7 +10162,7 @@ function BetdexAccountTransfers({
10003
10162
  children: labels.fromWallet
10004
10163
  }
10005
10164
  ) : null,
10006
- canDeposit ? /* @__PURE__ */ (0, import_jsx_runtime146.jsx)(
10165
+ canDeposit ? /* @__PURE__ */ (0, import_jsx_runtime147.jsx)(
10007
10166
  Button,
10008
10167
  {
10009
10168
  type: "button",
@@ -10016,7 +10175,7 @@ function BetdexAccountTransfers({
10016
10175
  children: labels.deposit
10017
10176
  }
10018
10177
  ) : null,
10019
- /* @__PURE__ */ (0, import_jsx_runtime146.jsx)(
10178
+ /* @__PURE__ */ (0, import_jsx_runtime147.jsx)(
10020
10179
  Button,
10021
10180
  {
10022
10181
  type: "button",
@@ -10028,11 +10187,11 @@ function BetdexAccountTransfers({
10028
10187
  }
10029
10188
  )
10030
10189
  ] }),
10031
- transfer.deposit.data ? /* @__PURE__ */ (0, import_jsx_runtime146.jsxs)("div", { className: "flex flex-col gap-2 agg-type-caption", children: [
10032
- /* @__PURE__ */ (0, import_jsx_runtime146.jsx)("p", { className: "text-agg-muted-foreground", children: labels.depositInstructions[environment] }),
10033
- /* @__PURE__ */ (0, import_jsx_runtime146.jsxs)("label", { className: "flex flex-col gap-1 text-agg-muted-foreground", children: [
10190
+ transfer.deposit.data ? /* @__PURE__ */ (0, import_jsx_runtime147.jsxs)("div", { className: "flex flex-col gap-2 agg-type-caption", children: [
10191
+ /* @__PURE__ */ (0, import_jsx_runtime147.jsx)("p", { className: "text-agg-muted-foreground", children: labels.depositInstructions[environment] }),
10192
+ /* @__PURE__ */ (0, import_jsx_runtime147.jsxs)("label", { className: "flex flex-col gap-1 text-agg-muted-foreground", children: [
10034
10193
  labels.depositAddress,
10035
- /* @__PURE__ */ (0, import_jsx_runtime146.jsx)(
10194
+ /* @__PURE__ */ (0, import_jsx_runtime147.jsx)(
10036
10195
  "input",
10037
10196
  {
10038
10197
  readOnly: true,
@@ -10043,20 +10202,20 @@ function BetdexAccountTransfers({
10043
10202
  )
10044
10203
  ] })
10045
10204
  ] }) : null,
10046
- transfer.deposit.isError || transfer.withdrawal.isError || transfer.storageError || actionError ? /* @__PURE__ */ (0, import_jsx_runtime146.jsx)("p", { role: "alert", className: "agg-type-caption text-agg-error", children: labels.transferUnavailable }) : null,
10047
- transfer.request ? /* @__PURE__ */ (0, import_jsx_runtime146.jsxs)("div", { className: "flex flex-col gap-2 agg-type-caption", children: [
10048
- /* @__PURE__ */ (0, import_jsx_runtime146.jsxs)("p", { children: [
10205
+ transfer.deposit.isError || transfer.withdrawal.isError || transfer.storageError || actionError ? /* @__PURE__ */ (0, import_jsx_runtime147.jsx)("p", { role: "alert", className: "agg-type-caption text-agg-error", children: labels.transferUnavailable }) : null,
10206
+ transfer.request ? /* @__PURE__ */ (0, import_jsx_runtime147.jsxs)("div", { className: "flex flex-col gap-2 agg-type-caption", children: [
10207
+ /* @__PURE__ */ (0, import_jsx_runtime147.jsxs)("p", { children: [
10049
10208
  labels.withdrawalAmount,
10050
10209
  ": ",
10051
10210
  amountText(transfer.request.amountRaw)
10052
10211
  ] }),
10053
- /* @__PURE__ */ (0, import_jsx_runtime146.jsxs)("p", { className: "break-all", children: [
10212
+ /* @__PURE__ */ (0, import_jsx_runtime147.jsxs)("p", { className: "break-all", children: [
10054
10213
  labels.withdrawalDestination,
10055
10214
  ": ",
10056
10215
  transfer.request.destinationAddress
10057
10216
  ] }),
10058
- /* @__PURE__ */ (0, import_jsx_runtime146.jsx)("p", { role: "status", children: result ? labels.withdrawalStatuses[result.status] : labels.withdrawalUnknown }),
10059
- terminal ? /* @__PURE__ */ (0, import_jsx_runtime146.jsx)(
10217
+ /* @__PURE__ */ (0, import_jsx_runtime147.jsx)("p", { role: "status", children: result ? labels.withdrawalStatuses[result.status] : labels.withdrawalUnknown }),
10218
+ terminal ? /* @__PURE__ */ (0, import_jsx_runtime147.jsx)(
10060
10219
  Button,
10061
10220
  {
10062
10221
  type: "button",
@@ -10071,7 +10230,7 @@ function BetdexAccountTransfers({
10071
10230
  },
10072
10231
  children: labels.withdrawalNew
10073
10232
  }
10074
- ) : /* @__PURE__ */ (0, import_jsx_runtime146.jsx)(
10233
+ ) : /* @__PURE__ */ (0, import_jsx_runtime147.jsx)(
10075
10234
  Button,
10076
10235
  {
10077
10236
  type: "button",
@@ -10084,7 +10243,7 @@ function BetdexAccountTransfers({
10084
10243
  children: result ? labels.withdrawalCheck : labels.withdrawalRetry
10085
10244
  }
10086
10245
  )
10087
- ] }) : showWithdraw ? /* @__PURE__ */ (0, import_jsx_runtime146.jsxs)(
10246
+ ] }) : showWithdraw ? /* @__PURE__ */ (0, import_jsx_runtime147.jsxs)(
10088
10247
  "form",
10089
10248
  {
10090
10249
  className: "flex flex-col gap-3",
@@ -10094,9 +10253,9 @@ function BetdexAccountTransfers({
10094
10253
  run(() => transfer.submit(raw, destination.trim()));
10095
10254
  },
10096
10255
  children: [
10097
- /* @__PURE__ */ (0, import_jsx_runtime146.jsxs)("label", { className: "flex flex-col gap-1 agg-type-caption text-agg-muted-foreground", children: [
10256
+ /* @__PURE__ */ (0, import_jsx_runtime147.jsxs)("label", { className: "flex flex-col gap-1 agg-type-caption text-agg-muted-foreground", children: [
10098
10257
  labels.withdrawalAmount,
10099
- /* @__PURE__ */ (0, import_jsx_runtime146.jsx)(
10258
+ /* @__PURE__ */ (0, import_jsx_runtime147.jsx)(
10100
10259
  "input",
10101
10260
  {
10102
10261
  inputMode: "decimal",
@@ -10107,7 +10266,7 @@ function BetdexAccountTransfers({
10107
10266
  }
10108
10267
  )
10109
10268
  ] }),
10110
- environment === "production" ? /* @__PURE__ */ (0, import_jsx_runtime146.jsx)(
10269
+ environment === "production" ? /* @__PURE__ */ (0, import_jsx_runtime147.jsx)(
10111
10270
  Button,
10112
10271
  {
10113
10272
  type: "button",
@@ -10122,9 +10281,9 @@ function BetdexAccountTransfers({
10122
10281
  children: labels.toWallet
10123
10282
  }
10124
10283
  ) : null,
10125
- /* @__PURE__ */ (0, import_jsx_runtime146.jsxs)("label", { className: "flex flex-col gap-1 agg-type-caption text-agg-muted-foreground", children: [
10284
+ /* @__PURE__ */ (0, import_jsx_runtime147.jsxs)("label", { className: "flex flex-col gap-1 agg-type-caption text-agg-muted-foreground", children: [
10126
10285
  labels.withdrawalDestination,
10127
- /* @__PURE__ */ (0, import_jsx_runtime146.jsx)(
10286
+ /* @__PURE__ */ (0, import_jsx_runtime147.jsx)(
10128
10287
  "input",
10129
10288
  {
10130
10289
  autoComplete: "off",
@@ -10135,7 +10294,7 @@ function BetdexAccountTransfers({
10135
10294
  }
10136
10295
  )
10137
10296
  ] }),
10138
- /* @__PURE__ */ (0, import_jsx_runtime146.jsx)(
10297
+ /* @__PURE__ */ (0, import_jsx_runtime147.jsx)(
10139
10298
  Button,
10140
10299
  {
10141
10300
  type: "submit",
@@ -10154,9 +10313,9 @@ function BetdexAccountTransfers({
10154
10313
  }
10155
10314
 
10156
10315
  // src/pages/user-profile/components/betdex-account-activity.tsx
10157
- var import_react22 = require("react");
10158
- var import_hooks46 = require("@agg-build/hooks");
10159
- var import_jsx_runtime147 = require("react/jsx-runtime");
10316
+ var import_react23 = require("react");
10317
+ var import_hooks47 = require("@agg-build/hooks");
10318
+ var import_jsx_runtime148 = require("react/jsx-runtime");
10160
10319
  function amount(raw) {
10161
10320
  const negative = raw.startsWith("-");
10162
10321
  const digits = (negative ? raw.slice(1) : raw).padStart(19, "0");
@@ -10167,36 +10326,36 @@ function BetdexAccountActivity({
10167
10326
  accountId,
10168
10327
  environment
10169
10328
  }) {
10170
- const labels = (0, import_hooks46.useLabels)().userProfile.hostedBetdex;
10171
- const [page, setPage] = (0, import_react22.useState)(0);
10172
- const { activity, isAvailable } = (0, import_hooks46.useHostedVenueActivity)("betdex", page);
10329
+ const labels = (0, import_hooks47.useLabels)().userProfile.hostedBetdex;
10330
+ const [page, setPage] = (0, import_react23.useState)(0);
10331
+ const { activity, isAvailable } = (0, import_hooks47.useHostedVenueActivity)("betdex", page);
10173
10332
  if (!isAvailable) return null;
10174
10333
  const data = activity.data;
10175
10334
  const valid = (data == null ? void 0 : data.accountId) === accountId && data.environment === environment && data.page === page;
10176
10335
  const unavailable = activity.isError || !!data && !valid;
10177
- return /* @__PURE__ */ (0, import_jsx_runtime147.jsxs)(
10336
+ return /* @__PURE__ */ (0, import_jsx_runtime148.jsxs)(
10178
10337
  "section",
10179
10338
  {
10180
10339
  "aria-label": labels.activityTitle,
10181
10340
  className: "flex flex-col gap-3 border-t border-agg-separator pt-3",
10182
10341
  children: [
10183
- /* @__PURE__ */ (0, import_jsx_runtime147.jsx)("h4", { className: "agg-type-label text-agg-foreground", children: labels.activityTitle }),
10184
- /* @__PURE__ */ (0, import_jsx_runtime147.jsx)("p", { className: "agg-type-caption text-agg-muted-foreground", children: labels.activityDescription }),
10185
- activity.isPending ? /* @__PURE__ */ (0, import_jsx_runtime147.jsx)(SkeletonBlock, { className: "h-16 w-full" }) : null,
10186
- unavailable ? /* @__PURE__ */ (0, import_jsx_runtime147.jsx)("p", { role: "status", className: "agg-type-caption text-agg-muted-foreground", children: labels.activityUnavailable }) : null,
10187
- valid && !unavailable ? data.items.length ? /* @__PURE__ */ (0, import_jsx_runtime147.jsx)("ul", { className: "flex flex-col gap-3 agg-type-caption", children: data.items.map((item) => /* @__PURE__ */ (0, import_jsx_runtime147.jsxs)("li", { className: "flex flex-col gap-1", children: [
10188
- /* @__PURE__ */ (0, import_jsx_runtime147.jsxs)("div", { className: "flex justify-between gap-3 text-agg-foreground", children: [
10189
- /* @__PURE__ */ (0, import_jsx_runtime147.jsx)("span", { children: labels.activityCodes[item.code] }),
10190
- /* @__PURE__ */ (0, import_jsx_runtime147.jsxs)("span", { className: "break-all tabular-nums", children: [
10342
+ /* @__PURE__ */ (0, import_jsx_runtime148.jsx)("h4", { className: "agg-type-label text-agg-foreground", children: labels.activityTitle }),
10343
+ /* @__PURE__ */ (0, import_jsx_runtime148.jsx)("p", { className: "agg-type-caption text-agg-muted-foreground", children: labels.activityDescription }),
10344
+ activity.isPending ? /* @__PURE__ */ (0, import_jsx_runtime148.jsx)(SkeletonBlock, { className: "h-16 w-full" }) : null,
10345
+ unavailable ? /* @__PURE__ */ (0, import_jsx_runtime148.jsx)("p", { role: "status", className: "agg-type-caption text-agg-muted-foreground", children: labels.activityUnavailable }) : null,
10346
+ valid && !unavailable ? data.items.length ? /* @__PURE__ */ (0, import_jsx_runtime148.jsx)("ul", { className: "flex flex-col gap-3 agg-type-caption", children: data.items.map((item) => /* @__PURE__ */ (0, import_jsx_runtime148.jsxs)("li", { className: "flex flex-col gap-1", children: [
10347
+ /* @__PURE__ */ (0, import_jsx_runtime148.jsxs)("div", { className: "flex justify-between gap-3 text-agg-foreground", children: [
10348
+ /* @__PURE__ */ (0, import_jsx_runtime148.jsx)("span", { children: labels.activityCodes[item.code] }),
10349
+ /* @__PURE__ */ (0, import_jsx_runtime148.jsxs)("span", { className: "break-all tabular-nums", children: [
10191
10350
  amount(item.amountRaw),
10192
10351
  " ",
10193
10352
  data.asset
10194
10353
  ] })
10195
10354
  ] }),
10196
- /* @__PURE__ */ (0, import_jsx_runtime147.jsx)("time", { dateTime: item.createdAt, className: "text-agg-muted-foreground", children: new Date(item.createdAt).toLocaleString() })
10197
- ] }, item.id)) }) : /* @__PURE__ */ (0, import_jsx_runtime147.jsx)("p", { className: "agg-type-caption text-agg-muted-foreground", children: labels.activityEmpty }) : null,
10198
- /* @__PURE__ */ (0, import_jsx_runtime147.jsxs)("div", { className: "flex flex-wrap gap-2", children: [
10199
- /* @__PURE__ */ (0, import_jsx_runtime147.jsx)(
10355
+ /* @__PURE__ */ (0, import_jsx_runtime148.jsx)("time", { dateTime: item.createdAt, className: "text-agg-muted-foreground", children: new Date(item.createdAt).toLocaleString() })
10356
+ ] }, item.id)) }) : /* @__PURE__ */ (0, import_jsx_runtime148.jsx)("p", { className: "agg-type-caption text-agg-muted-foreground", children: labels.activityEmpty }) : null,
10357
+ /* @__PURE__ */ (0, import_jsx_runtime148.jsxs)("div", { className: "flex flex-wrap gap-2", children: [
10358
+ /* @__PURE__ */ (0, import_jsx_runtime148.jsx)(
10200
10359
  Button,
10201
10360
  {
10202
10361
  type: "button",
@@ -10207,7 +10366,7 @@ function BetdexAccountActivity({
10207
10366
  children: labels.activityPrevious
10208
10367
  }
10209
10368
  ),
10210
- /* @__PURE__ */ (0, import_jsx_runtime147.jsx)(
10369
+ /* @__PURE__ */ (0, import_jsx_runtime148.jsx)(
10211
10370
  Button,
10212
10371
  {
10213
10372
  type: "button",
@@ -10220,7 +10379,7 @@ function BetdexAccountActivity({
10220
10379
  children: labels.activityNext
10221
10380
  }
10222
10381
  ),
10223
- /* @__PURE__ */ (0, import_jsx_runtime147.jsx)(
10382
+ /* @__PURE__ */ (0, import_jsx_runtime148.jsx)(
10224
10383
  Button,
10225
10384
  {
10226
10385
  type: "button",
@@ -10240,46 +10399,46 @@ function BetdexAccountActivity({
10240
10399
  }
10241
10400
 
10242
10401
  // src/pages/user-profile/components/betdex-account-card.tsx
10243
- var import_jsx_runtime148 = require("react/jsx-runtime");
10402
+ var import_jsx_runtime149 = require("react/jsx-runtime");
10244
10403
  function BetdexAccountCard({
10245
10404
  onWalletDeposit
10246
10405
  } = {}) {
10247
10406
  var _a;
10248
- const [showActivity, setShowActivity] = (0, import_react23.useState)(false);
10249
- const labels = (0, import_hooks47.useLabels)().userProfile.hostedBetdex;
10250
- const { account, provision, isAvailable } = (0, import_hooks47.useHostedVenueAccount)("betdex");
10407
+ const [showActivity, setShowActivity] = (0, import_react24.useState)(false);
10408
+ const labels = (0, import_hooks48.useLabels)().userProfile.hostedBetdex;
10409
+ const { account, provision, isAvailable } = (0, import_hooks48.useHostedVenueAccount)("betdex");
10251
10410
  const data = account.data;
10252
10411
  if (!isAvailable || (data == null ? void 0 : data.status) === "disabled") return null;
10253
10412
  const pending = provision.isPending || (data == null ? void 0 : data.status) === "provisioning";
10254
10413
  const canCreate = (data == null ? void 0 : data.status) === "not_created" && data.provisioningEnabled;
10255
10414
  const rawLabel = (raw) => formatUsd(Number(raw) / 1e6);
10256
- return /* @__PURE__ */ (0, import_jsx_runtime148.jsxs)(
10415
+ return /* @__PURE__ */ (0, import_jsx_runtime149.jsxs)(
10257
10416
  "section",
10258
10417
  {
10259
10418
  "aria-label": labels.title,
10260
10419
  className: "flex flex-col gap-3 rounded-agg-xl border border-agg-separator bg-agg-secondary p-5",
10261
10420
  children: [
10262
- /* @__PURE__ */ (0, import_jsx_runtime148.jsxs)("div", { className: "flex items-center gap-2", children: [
10263
- /* @__PURE__ */ (0, import_jsx_runtime148.jsx)(VenueLogo, { venue: import_sdk15.Venue.betdex, size: "small", className: "size-4" }),
10264
- /* @__PURE__ */ (0, import_jsx_runtime148.jsx)("h3", { className: "agg-type-label text-agg-foreground", children: labels.title })
10421
+ /* @__PURE__ */ (0, import_jsx_runtime149.jsxs)("div", { className: "flex items-center gap-2", children: [
10422
+ /* @__PURE__ */ (0, import_jsx_runtime149.jsx)(VenueLogo, { venue: import_sdk16.Venue.betdex, size: "small", className: "size-4" }),
10423
+ /* @__PURE__ */ (0, import_jsx_runtime149.jsx)("h3", { className: "agg-type-label text-agg-foreground", children: labels.title })
10265
10424
  ] }),
10266
- /* @__PURE__ */ (0, import_jsx_runtime148.jsx)("p", { className: "agg-type-caption text-agg-muted-foreground", children: labels.description }),
10267
- (data == null ? void 0 : data.environment) === "sandbox" ? /* @__PURE__ */ (0, import_jsx_runtime148.jsx)("p", { className: "agg-type-caption text-agg-warning", children: labels.sandbox }) : null,
10268
- account.isPending ? /* @__PURE__ */ (0, import_jsx_runtime148.jsx)(SkeletonBlock, { className: "h-10 w-full" }) : null,
10269
- (data == null ? void 0 : data.status) === "active" && data.balanceStatus === "available" && data.balance && !account.isError ? /* @__PURE__ */ (0, import_jsx_runtime148.jsx)("dl", { className: "flex flex-col gap-2 agg-type-caption", children: [
10425
+ /* @__PURE__ */ (0, import_jsx_runtime149.jsx)("p", { className: "agg-type-caption text-agg-muted-foreground", children: labels.description }),
10426
+ (data == null ? void 0 : data.environment) === "sandbox" ? /* @__PURE__ */ (0, import_jsx_runtime149.jsx)("p", { className: "agg-type-caption text-agg-warning", children: labels.sandbox }) : null,
10427
+ account.isPending ? /* @__PURE__ */ (0, import_jsx_runtime149.jsx)(SkeletonBlock, { className: "h-10 w-full" }) : null,
10428
+ (data == null ? void 0 : data.status) === "active" && data.balanceStatus === "available" && data.balance && !account.isError ? /* @__PURE__ */ (0, import_jsx_runtime149.jsx)("dl", { className: "flex flex-col gap-2 agg-type-caption", children: [
10270
10429
  [labels.total, data.balance.totalRaw],
10271
10430
  [labels.available, data.balance.availableRaw],
10272
10431
  [labels.reserved, data.balance.unmatchedExposureRaw]
10273
- ].map(([label2, raw]) => /* @__PURE__ */ (0, import_jsx_runtime148.jsxs)("div", { className: "flex justify-between gap-3", children: [
10274
- /* @__PURE__ */ (0, import_jsx_runtime148.jsx)("dt", { className: "text-agg-muted-foreground", children: label2 }),
10275
- /* @__PURE__ */ (0, import_jsx_runtime148.jsx)("dd", { className: "text-agg-foreground", children: rawLabel(raw) })
10432
+ ].map(([label2, raw]) => /* @__PURE__ */ (0, import_jsx_runtime149.jsxs)("div", { className: "flex justify-between gap-3", children: [
10433
+ /* @__PURE__ */ (0, import_jsx_runtime149.jsx)("dt", { className: "text-agg-muted-foreground", children: label2 }),
10434
+ /* @__PURE__ */ (0, import_jsx_runtime149.jsx)("dd", { className: "text-agg-foreground", children: rawLabel(raw) })
10276
10435
  ] }, label2)) }) : null,
10277
- pending ? /* @__PURE__ */ (0, import_jsx_runtime148.jsx)("p", { role: "status", className: "agg-type-caption text-agg-muted-foreground", children: labels.provisioning }) : null,
10278
- (data == null ? void 0 : data.status) === "suspended" ? /* @__PURE__ */ (0, import_jsx_runtime148.jsx)("p", { role: "status", className: "agg-type-caption text-agg-muted-foreground", children: labels.suspended }) : null,
10279
- account.isError || (data == null ? void 0 : data.status) === "unavailable" || (data == null ? void 0 : data.balanceStatus) === "unavailable" ? /* @__PURE__ */ (0, import_jsx_runtime148.jsx)("p", { role: "status", className: "agg-type-caption text-agg-muted-foreground", children: labels.unavailable }) : null,
10280
- (data == null ? void 0 : data.status) === "not_created" && !data.provisioningEnabled ? /* @__PURE__ */ (0, import_jsx_runtime148.jsx)("p", { className: "agg-type-caption text-agg-muted-foreground", children: labels.provisioningUnavailable }) : null,
10281
- provision.isError ? /* @__PURE__ */ (0, import_jsx_runtime148.jsx)("p", { role: "alert", className: "agg-type-caption text-agg-error", children: labels.creationFailed }) : null,
10282
- canCreate || (data == null ? void 0 : data.status) === "provisioning" ? /* @__PURE__ */ (0, import_jsx_runtime148.jsx)(
10436
+ pending ? /* @__PURE__ */ (0, import_jsx_runtime149.jsx)("p", { role: "status", className: "agg-type-caption text-agg-muted-foreground", children: labels.provisioning }) : null,
10437
+ (data == null ? void 0 : data.status) === "suspended" ? /* @__PURE__ */ (0, import_jsx_runtime149.jsx)("p", { role: "status", className: "agg-type-caption text-agg-muted-foreground", children: labels.suspended }) : null,
10438
+ account.isError || (data == null ? void 0 : data.status) === "unavailable" || (data == null ? void 0 : data.balanceStatus) === "unavailable" ? /* @__PURE__ */ (0, import_jsx_runtime149.jsx)("p", { role: "status", className: "agg-type-caption text-agg-muted-foreground", children: labels.unavailable }) : null,
10439
+ (data == null ? void 0 : data.status) === "not_created" && !data.provisioningEnabled ? /* @__PURE__ */ (0, import_jsx_runtime149.jsx)("p", { className: "agg-type-caption text-agg-muted-foreground", children: labels.provisioningUnavailable }) : null,
10440
+ provision.isError ? /* @__PURE__ */ (0, import_jsx_runtime149.jsx)("p", { role: "alert", className: "agg-type-caption text-agg-error", children: labels.creationFailed }) : null,
10441
+ canCreate || (data == null ? void 0 : data.status) === "provisioning" ? /* @__PURE__ */ (0, import_jsx_runtime149.jsx)(
10283
10442
  Button,
10284
10443
  {
10285
10444
  type: "button",
@@ -10292,7 +10451,7 @@ function BetdexAccountCard({
10292
10451
  children: (data == null ? void 0 : data.status) === "provisioning" ? labels.checkSetup : labels.createAccount
10293
10452
  }
10294
10453
  ) : null,
10295
- /* @__PURE__ */ (0, import_jsx_runtime148.jsx)(
10454
+ /* @__PURE__ */ (0, import_jsx_runtime149.jsx)(
10296
10455
  Button,
10297
10456
  {
10298
10457
  type: "button",
@@ -10305,11 +10464,11 @@ function BetdexAccountCard({
10305
10464
  children: labels.refresh
10306
10465
  }
10307
10466
  ),
10308
- (data == null ? void 0 : data.accountId) && data.environment && ["active", "suspended"].includes(data.status) ? /* @__PURE__ */ (0, import_jsx_runtime148.jsxs)(import_jsx_runtime148.Fragment, { children: [
10309
- /* @__PURE__ */ (0, import_jsx_runtime148.jsxs)("details", { className: "group/agg-betdex-funds border-t border-agg-separator pt-3", children: [
10310
- /* @__PURE__ */ (0, import_jsx_runtime148.jsxs)("summary", { className: "flex min-h-11 cursor-pointer list-none items-center justify-between gap-3 text-agg-sm font-agg-bold text-agg-primary focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-agg-primary [&::-webkit-details-marker]:hidden", children: [
10467
+ (data == null ? void 0 : data.accountId) && data.environment && ["active", "suspended"].includes(data.status) ? /* @__PURE__ */ (0, import_jsx_runtime149.jsxs)(import_jsx_runtime149.Fragment, { children: [
10468
+ /* @__PURE__ */ (0, import_jsx_runtime149.jsxs)("details", { className: "group/agg-betdex-funds border-t border-agg-separator pt-3", children: [
10469
+ /* @__PURE__ */ (0, import_jsx_runtime149.jsxs)("summary", { className: "flex min-h-11 cursor-pointer list-none items-center justify-between gap-3 text-agg-sm font-agg-bold text-agg-primary focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-agg-primary [&::-webkit-details-marker]:hidden", children: [
10311
10470
  labels.manageFunds,
10312
- /* @__PURE__ */ (0, import_jsx_runtime148.jsx)(
10471
+ /* @__PURE__ */ (0, import_jsx_runtime149.jsx)(
10313
10472
  Icon,
10314
10473
  {
10315
10474
  name: "chevron-down",
@@ -10318,7 +10477,7 @@ function BetdexAccountCard({
10318
10477
  }
10319
10478
  )
10320
10479
  ] }),
10321
- /* @__PURE__ */ (0, import_jsx_runtime148.jsx)(
10480
+ /* @__PURE__ */ (0, import_jsx_runtime149.jsx)(
10322
10481
  BetdexAccountTransfers,
10323
10482
  {
10324
10483
  accountId: data.accountId,
@@ -10330,7 +10489,7 @@ function BetdexAccountCard({
10330
10489
  `transfers:${data.accountId}:${data.environment}`
10331
10490
  )
10332
10491
  ] }),
10333
- /* @__PURE__ */ (0, import_jsx_runtime148.jsx)(
10492
+ /* @__PURE__ */ (0, import_jsx_runtime149.jsx)(
10334
10493
  Button,
10335
10494
  {
10336
10495
  type: "button",
@@ -10341,7 +10500,7 @@ function BetdexAccountCard({
10341
10500
  children: showActivity ? labels.hideActivity : labels.showActivity
10342
10501
  }
10343
10502
  ),
10344
- showActivity ? /* @__PURE__ */ (0, import_jsx_runtime148.jsx)(
10503
+ showActivity ? /* @__PURE__ */ (0, import_jsx_runtime149.jsx)(
10345
10504
  BetdexAccountActivity,
10346
10505
  {
10347
10506
  accountId: data.accountId,
@@ -10356,15 +10515,15 @@ function BetdexAccountCard({
10356
10515
  }
10357
10516
 
10358
10517
  // src/pages/user-profile/components/betdex-wallet-deposit.tsx
10359
- var import_react24 = require("react");
10360
- var import_hooks48 = require("@agg-build/hooks");
10518
+ var import_react25 = require("react");
10519
+ var import_hooks49 = require("@agg-build/hooks");
10361
10520
  var import_withdraw2 = require("@agg-build/hooks/withdraw");
10362
- var import_jsx_runtime149 = require("react/jsx-runtime");
10521
+ var import_jsx_runtime150 = require("react/jsx-runtime");
10363
10522
  function BetdexWalletDeposit({
10364
10523
  address,
10365
10524
  onClose
10366
10525
  }) {
10367
- const labels = (0, import_hooks48.useLabels)().userProfile.hostedBetdex;
10526
+ const labels = (0, import_hooks49.useLabels)().userProfile.hostedBetdex;
10368
10527
  const flow = (0, import_withdraw2.useWithdrawFlow)({
10369
10528
  open: true,
10370
10529
  onOpenChange: (open) => {
@@ -10372,12 +10531,12 @@ function BetdexWalletDeposit({
10372
10531
  }
10373
10532
  });
10374
10533
  const { onWithdrawDestinationChange, onWithdrawNetworkChange, onWithdrawTokenChange } = flow;
10375
- (0, import_react24.useEffect)(() => {
10534
+ (0, import_react25.useEffect)(() => {
10376
10535
  onWithdrawDestinationChange(address);
10377
10536
  onWithdrawNetworkChange("792703809");
10378
10537
  onWithdrawTokenChange("USDC");
10379
10538
  }, [address, onWithdrawDestinationChange, onWithdrawNetworkChange, onWithdrawTokenChange]);
10380
- return /* @__PURE__ */ (0, import_jsx_runtime149.jsx)(
10539
+ return /* @__PURE__ */ (0, import_jsx_runtime150.jsx)(
10381
10540
  WithdrawModal,
10382
10541
  __spreadProps(__spreadValues({}, flow), {
10383
10542
  transferTarget: {
@@ -10391,35 +10550,35 @@ function BetdexWalletDeposit({
10391
10550
  }
10392
10551
 
10393
10552
  // src/trading/manage-betdex-account-modal.tsx
10394
- var import_jsx_runtime150 = require("react/jsx-runtime");
10553
+ var import_jsx_runtime151 = require("react/jsx-runtime");
10395
10554
  function ManageBetdexAccountModal({
10396
10555
  open,
10397
10556
  onOpenChange,
10398
10557
  userId
10399
10558
  }) {
10400
- const labels = (0, import_hooks49.useLabels)();
10401
- const [fundingTarget, setFundingTarget] = (0, import_react25.useState)(
10559
+ const labels = (0, import_hooks50.useLabels)();
10560
+ const [fundingTarget, setFundingTarget] = (0, import_react26.useState)(
10402
10561
  null
10403
10562
  );
10404
10563
  const currentTarget = (fundingTarget == null ? void 0 : fundingTarget.userId) === userId ? fundingTarget : null;
10405
- (0, import_react25.useEffect)(() => {
10564
+ (0, import_react26.useEffect)(() => {
10406
10565
  if (!open) setFundingTarget(null);
10407
10566
  }, [open]);
10408
- (0, import_react25.useEffect)(() => setFundingTarget(null), [userId]);
10409
- return /* @__PURE__ */ (0, import_jsx_runtime150.jsxs)(import_jsx_runtime150.Fragment, { children: [
10410
- /* @__PURE__ */ (0, import_jsx_runtime150.jsx)(Modal, { open: open && !currentTarget, onOpenChange, children: /* @__PURE__ */ (0, import_jsx_runtime150.jsxs)(Modal.Container, { maxWidth: "600px", "aria-label": labels.trading.manageBetdexAccount, children: [
10411
- /* @__PURE__ */ (0, import_jsx_runtime150.jsx)(
10412
- Dialog6.Close,
10567
+ (0, import_react26.useEffect)(() => setFundingTarget(null), [userId]);
10568
+ return /* @__PURE__ */ (0, import_jsx_runtime151.jsxs)(import_jsx_runtime151.Fragment, { children: [
10569
+ /* @__PURE__ */ (0, import_jsx_runtime151.jsx)(Modal, { open: open && !currentTarget, onOpenChange, children: /* @__PURE__ */ (0, import_jsx_runtime151.jsxs)(Modal.Container, { maxWidth: "600px", "aria-label": labels.trading.manageBetdexAccount, children: [
10570
+ /* @__PURE__ */ (0, import_jsx_runtime151.jsx)(
10571
+ Dialog7.Close,
10413
10572
  {
10414
10573
  "aria-label": labels.common.close,
10415
10574
  className: "absolute right-4 top-4 z-10 flex size-11 cursor-pointer items-center justify-center rounded-agg-full text-agg-muted-foreground hover:bg-agg-quaternary focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-agg-accent",
10416
- children: /* @__PURE__ */ (0, import_jsx_runtime150.jsx)(Icon, { name: "close", size: "medium" })
10575
+ children: /* @__PURE__ */ (0, import_jsx_runtime151.jsx)(Icon, { name: "close", size: "medium" })
10417
10576
  }
10418
10577
  ),
10419
- /* @__PURE__ */ (0, import_jsx_runtime150.jsxs)(Modal.Body, { classNames: { root: "!px-5 !py-16" }, children: [
10420
- /* @__PURE__ */ (0, import_jsx_runtime150.jsx)(Dialog6.Title, { className: "sr-only", children: labels.trading.manageBetdexAccount }),
10421
- /* @__PURE__ */ (0, import_jsx_runtime150.jsx)(Dialog6.Description, { className: "sr-only", children: labels.userProfile.hostedBetdex.description }),
10422
- open ? /* @__PURE__ */ (0, import_jsx_runtime150.jsx)(
10578
+ /* @__PURE__ */ (0, import_jsx_runtime151.jsxs)(Modal.Body, { classNames: { root: "!px-5 !py-16" }, children: [
10579
+ /* @__PURE__ */ (0, import_jsx_runtime151.jsx)(Dialog7.Title, { className: "sr-only", children: labels.trading.manageBetdexAccount }),
10580
+ /* @__PURE__ */ (0, import_jsx_runtime151.jsx)(Dialog7.Description, { className: "sr-only", children: labels.userProfile.hostedBetdex.description }),
10581
+ open ? /* @__PURE__ */ (0, import_jsx_runtime151.jsx)(
10423
10582
  BetdexAccountCard,
10424
10583
  {
10425
10584
  onWalletDeposit: userId ? (address) => setFundingTarget({ userId, address }) : void 0
@@ -10427,7 +10586,7 @@ function ManageBetdexAccountModal({
10427
10586
  ) : null
10428
10587
  ] })
10429
10588
  ] }) }),
10430
- open && currentTarget ? /* @__PURE__ */ (0, import_jsx_runtime150.jsx)(
10589
+ open && currentTarget ? /* @__PURE__ */ (0, import_jsx_runtime151.jsx)(
10431
10590
  BetdexWalletDeposit,
10432
10591
  {
10433
10592
  address: currentTarget.address,
@@ -10453,9 +10612,9 @@ var getProfileTabItems = () => [
10453
10612
  ];
10454
10613
 
10455
10614
  // src/profile/tabs/about-tab.tsx
10456
- var import_react26 = require("react");
10457
- var import_hooks50 = require("@agg-build/hooks");
10458
- var import_jsx_runtime151 = require("react/jsx-runtime");
10615
+ var import_react27 = require("react");
10616
+ var import_hooks51 = require("@agg-build/hooks");
10617
+ var import_jsx_runtime152 = require("react/jsx-runtime");
10459
10618
  var AboutTab = ({
10460
10619
  avatarPreview,
10461
10620
  onDeleteProfile: _onDeleteProfile,
@@ -10465,13 +10624,13 @@ var AboutTab = ({
10465
10624
  draftAvatarPreview,
10466
10625
  avatarError: _avatarError
10467
10626
  }) => {
10468
- const labels = (0, import_hooks50.useLabels)();
10469
- const fileInputRef = (0, import_react26.useRef)(null);
10470
- const handleAvatarClick = (0, import_react26.useCallback)(() => {
10627
+ const labels = (0, import_hooks51.useLabels)();
10628
+ const fileInputRef = (0, import_react27.useRef)(null);
10629
+ const handleAvatarClick = (0, import_react27.useCallback)(() => {
10471
10630
  var _a;
10472
10631
  (_a = fileInputRef.current) == null ? void 0 : _a.click();
10473
10632
  }, []);
10474
- const handleFileChange = (0, import_react26.useCallback)(
10633
+ const handleFileChange = (0, import_react27.useCallback)(
10475
10634
  (e) => {
10476
10635
  var _a;
10477
10636
  const file = (_a = e.target.files) == null ? void 0 : _a[0];
@@ -10487,8 +10646,8 @@ var AboutTab = ({
10487
10646
  );
10488
10647
  const resolvedPreview = draftAvatarPreview != null ? draftAvatarPreview : avatarPreview;
10489
10648
  const hasAvatarPreview = Boolean(resolvedPreview);
10490
- return /* @__PURE__ */ (0, import_jsx_runtime151.jsx)("div", { className: "agg-profile-about flex flex-col gap-8", children: /* @__PURE__ */ (0, import_jsx_runtime151.jsxs)("div", { className: "agg-profile-avatar-section flex w-full items-center gap-6", children: [
10491
- /* @__PURE__ */ (0, import_jsx_runtime151.jsxs)(
10649
+ return /* @__PURE__ */ (0, import_jsx_runtime152.jsx)("div", { className: "agg-profile-about flex flex-col gap-8", children: /* @__PURE__ */ (0, import_jsx_runtime152.jsxs)("div", { className: "agg-profile-avatar-section flex w-full items-center gap-6", children: [
10650
+ /* @__PURE__ */ (0, import_jsx_runtime152.jsxs)(
10492
10651
  "button",
10493
10652
  {
10494
10653
  type: "button",
@@ -10505,13 +10664,13 @@ var AboutTab = ({
10505
10664
  ),
10506
10665
  "aria-label": labels.onboarding.profileSetup.uploadProfilePictureAria,
10507
10666
  children: [
10508
- !hasAvatarPreview ? /* @__PURE__ */ (0, import_jsx_runtime151.jsx)(
10667
+ !hasAvatarPreview ? /* @__PURE__ */ (0, import_jsx_runtime152.jsx)(
10509
10668
  "svg",
10510
10669
  {
10511
10670
  "aria-hidden": true,
10512
10671
  viewBox: "0 0 80 80",
10513
10672
  className: "pointer-events-none absolute inset-0 h-full w-full text-agg-separator group-hover:text-agg-muted-foreground",
10514
- children: /* @__PURE__ */ (0, import_jsx_runtime151.jsx)(
10673
+ children: /* @__PURE__ */ (0, import_jsx_runtime152.jsx)(
10515
10674
  "circle",
10516
10675
  {
10517
10676
  cx: "40",
@@ -10525,18 +10684,18 @@ var AboutTab = ({
10525
10684
  )
10526
10685
  }
10527
10686
  ) : null,
10528
- resolvedPreview ? /* @__PURE__ */ (0, import_jsx_runtime151.jsx)(
10687
+ resolvedPreview ? /* @__PURE__ */ (0, import_jsx_runtime152.jsx)(
10529
10688
  RemoteImage,
10530
10689
  {
10531
10690
  src: resolvedPreview,
10532
10691
  alt: labels.onboarding.profileSetup.profilePreviewAlt,
10533
10692
  className: "h-full w-full object-cover"
10534
10693
  }
10535
- ) : /* @__PURE__ */ (0, import_jsx_runtime151.jsx)(Icon, { name: "profile", className: "h-7 w-7 text-agg-muted-foreground" })
10694
+ ) : /* @__PURE__ */ (0, import_jsx_runtime152.jsx)(Icon, { name: "profile", className: "h-7 w-7 text-agg-muted-foreground" })
10536
10695
  ]
10537
10696
  }
10538
10697
  ),
10539
- /* @__PURE__ */ (0, import_jsx_runtime151.jsx)(
10698
+ /* @__PURE__ */ (0, import_jsx_runtime152.jsx)(
10540
10699
  "input",
10541
10700
  {
10542
10701
  ref: fileInputRef,
@@ -10547,8 +10706,8 @@ var AboutTab = ({
10547
10706
  "aria-hidden": "true"
10548
10707
  }
10549
10708
  ),
10550
- /* @__PURE__ */ (0, import_jsx_runtime151.jsxs)("div", { className: "agg-form-section flex min-w-0 flex-1 flex-col gap-2", children: [
10551
- /* @__PURE__ */ (0, import_jsx_runtime151.jsx)(
10709
+ /* @__PURE__ */ (0, import_jsx_runtime152.jsxs)("div", { className: "agg-form-section flex min-w-0 flex-1 flex-col gap-2", children: [
10710
+ /* @__PURE__ */ (0, import_jsx_runtime152.jsx)(
10552
10711
  "label",
10553
10712
  {
10554
10713
  htmlFor: "profile-username",
@@ -10556,7 +10715,7 @@ var AboutTab = ({
10556
10715
  children: "Username"
10557
10716
  }
10558
10717
  ),
10559
- /* @__PURE__ */ (0, import_jsx_runtime151.jsx)(
10718
+ /* @__PURE__ */ (0, import_jsx_runtime152.jsx)(
10560
10719
  "input",
10561
10720
  {
10562
10721
  id: "profile-username",
@@ -10583,9 +10742,9 @@ var AboutTab = ({
10583
10742
  AboutTab.displayName = "AboutTab";
10584
10743
 
10585
10744
  // src/profile/tabs/accounts-wallets-tab.tsx
10586
- var import_jsx_runtime152 = require("react/jsx-runtime");
10587
- var SectionTitle = ({ children }) => /* @__PURE__ */ (0, import_jsx_runtime152.jsx)("h3", { className: "text-agg-sm font-agg-bold leading-agg-5 text-agg-foreground", children });
10588
- var AccountRow = ({ children, className }) => /* @__PURE__ */ (0, import_jsx_runtime152.jsx)(
10745
+ var import_jsx_runtime153 = require("react/jsx-runtime");
10746
+ var SectionTitle = ({ children }) => /* @__PURE__ */ (0, import_jsx_runtime153.jsx)("h3", { className: "text-agg-sm font-agg-bold leading-agg-5 text-agg-foreground", children });
10747
+ var AccountRow = ({ children, className }) => /* @__PURE__ */ (0, import_jsx_runtime153.jsx)(
10589
10748
  "div",
10590
10749
  {
10591
10750
  className: cn(
@@ -10601,11 +10760,11 @@ var AccountIdentity = ({
10601
10760
  icon,
10602
10761
  label: label2,
10603
10762
  iconClassName
10604
- }) => /* @__PURE__ */ (0, import_jsx_runtime152.jsxs)("div", { className: "flex min-w-0 items-center gap-3", children: [
10605
- /* @__PURE__ */ (0, import_jsx_runtime152.jsx)("span", { className: cn("flex h-5 w-5 shrink-0 items-center justify-center", iconClassName), children: /* @__PURE__ */ (0, import_jsx_runtime152.jsx)(Icon, { name: icon, size: "small", color: "currentColor" }) }),
10606
- /* @__PURE__ */ (0, import_jsx_runtime152.jsx)("span", { className: "truncate text-agg-base font-agg-normal leading-6 text-agg-foreground", children: label2 })
10763
+ }) => /* @__PURE__ */ (0, import_jsx_runtime153.jsxs)("div", { className: "flex min-w-0 items-center gap-3", children: [
10764
+ /* @__PURE__ */ (0, import_jsx_runtime153.jsx)("span", { className: cn("flex h-5 w-5 shrink-0 items-center justify-center", iconClassName), children: /* @__PURE__ */ (0, import_jsx_runtime153.jsx)(Icon, { name: icon, size: "small", color: "currentColor" }) }),
10765
+ /* @__PURE__ */ (0, import_jsx_runtime153.jsx)("span", { className: "truncate text-agg-base font-agg-normal leading-6 text-agg-foreground", children: label2 })
10607
10766
  ] });
10608
- var ConnectTextButton = ({ onClick }) => /* @__PURE__ */ (0, import_jsx_runtime152.jsx)(
10767
+ var ConnectTextButton = ({ onClick }) => /* @__PURE__ */ (0, import_jsx_runtime153.jsx)(
10609
10768
  "button",
10610
10769
  {
10611
10770
  type: "button",
@@ -10614,7 +10773,7 @@ var ConnectTextButton = ({ onClick }) => /* @__PURE__ */ (0, import_jsx_runtime1
10614
10773
  children: "Connect"
10615
10774
  }
10616
10775
  );
10617
- var DisconnectTextButton = ({ onClick }) => /* @__PURE__ */ (0, import_jsx_runtime152.jsx)(
10776
+ var DisconnectTextButton = ({ onClick }) => /* @__PURE__ */ (0, import_jsx_runtime153.jsx)(
10618
10777
  "button",
10619
10778
  {
10620
10779
  type: "button",
@@ -10623,7 +10782,7 @@ var DisconnectTextButton = ({ onClick }) => /* @__PURE__ */ (0, import_jsx_runti
10623
10782
  children: "Disconnect"
10624
10783
  }
10625
10784
  );
10626
- var VerifiedBadge = () => /* @__PURE__ */ (0, import_jsx_runtime152.jsx)(Icon, { name: "check-badge", size: "small", color: "var(--agg-color-primary, #536dfe)" });
10785
+ var VerifiedBadge = () => /* @__PURE__ */ (0, import_jsx_runtime153.jsx)(Icon, { name: "check-badge", size: "small", color: "var(--agg-color-primary, #536dfe)" });
10627
10786
  var getWalletIconName = (wallet) => {
10628
10787
  const chain = wallet.chain.toLowerCase();
10629
10788
  if (chain === "solana" || chain === "svm") {
@@ -10641,12 +10800,12 @@ var ConnectedAccountRow = ({
10641
10800
  onDisconnect
10642
10801
  }) => {
10643
10802
  const displayLabel = connected ? connectedLabel != null ? connectedLabel : label2 : label2;
10644
- return /* @__PURE__ */ (0, import_jsx_runtime152.jsxs)(AccountRow, { className: "agg-social-account-row gap-4", children: [
10645
- /* @__PURE__ */ (0, import_jsx_runtime152.jsxs)("div", { className: "flex min-w-0 items-center gap-3", children: [
10646
- /* @__PURE__ */ (0, import_jsx_runtime152.jsx)(AccountIdentity, { icon, label: displayLabel, iconClassName }),
10647
- connected ? /* @__PURE__ */ (0, import_jsx_runtime152.jsx)(VerifiedBadge, {}) : null
10803
+ return /* @__PURE__ */ (0, import_jsx_runtime153.jsxs)(AccountRow, { className: "agg-social-account-row gap-4", children: [
10804
+ /* @__PURE__ */ (0, import_jsx_runtime153.jsxs)("div", { className: "flex min-w-0 items-center gap-3", children: [
10805
+ /* @__PURE__ */ (0, import_jsx_runtime153.jsx)(AccountIdentity, { icon, label: displayLabel, iconClassName }),
10806
+ connected ? /* @__PURE__ */ (0, import_jsx_runtime153.jsx)(VerifiedBadge, {}) : null
10648
10807
  ] }),
10649
- connected ? /* @__PURE__ */ (0, import_jsx_runtime152.jsx)(DisconnectTextButton, { onClick: onDisconnect }) : /* @__PURE__ */ (0, import_jsx_runtime152.jsx)(ConnectTextButton, { onClick: onConnect })
10808
+ connected ? /* @__PURE__ */ (0, import_jsx_runtime153.jsx)(DisconnectTextButton, { onClick: onDisconnect }) : /* @__PURE__ */ (0, import_jsx_runtime153.jsx)(ConnectTextButton, { onClick: onConnect })
10650
10809
  ] });
10651
10810
  };
10652
10811
  var AccountsWalletsTab = ({
@@ -10665,11 +10824,11 @@ var AccountsWalletsTab = ({
10665
10824
  const google = socialAccounts == null ? void 0 : socialAccounts.google;
10666
10825
  const apple = socialAccounts == null ? void 0 : socialAccounts.apple;
10667
10826
  const hasEmail = Boolean(email);
10668
- return /* @__PURE__ */ (0, import_jsx_runtime152.jsxs)("div", { className: "agg-accounts-wallets-tab flex flex-col gap-6", children: [
10669
- /* @__PURE__ */ (0, import_jsx_runtime152.jsxs)("div", { className: "agg-social-accounts-section flex flex-col gap-3", children: [
10670
- /* @__PURE__ */ (0, import_jsx_runtime152.jsx)(SectionTitle, { children: "Connected accounts" }),
10671
- /* @__PURE__ */ (0, import_jsx_runtime152.jsxs)("div", { className: "agg-social-accounts-list flex flex-col gap-4", children: [
10672
- /* @__PURE__ */ (0, import_jsx_runtime152.jsx)(
10827
+ return /* @__PURE__ */ (0, import_jsx_runtime153.jsxs)("div", { className: "agg-accounts-wallets-tab flex flex-col gap-6", children: [
10828
+ /* @__PURE__ */ (0, import_jsx_runtime153.jsxs)("div", { className: "agg-social-accounts-section flex flex-col gap-3", children: [
10829
+ /* @__PURE__ */ (0, import_jsx_runtime153.jsx)(SectionTitle, { children: "Connected accounts" }),
10830
+ /* @__PURE__ */ (0, import_jsx_runtime153.jsxs)("div", { className: "agg-social-accounts-list flex flex-col gap-4", children: [
10831
+ /* @__PURE__ */ (0, import_jsx_runtime153.jsx)(
10673
10832
  ConnectedAccountRow,
10674
10833
  {
10675
10834
  icon: "google",
@@ -10681,7 +10840,7 @@ var AccountsWalletsTab = ({
10681
10840
  onDisconnect: onDisconnectGoogle
10682
10841
  }
10683
10842
  ),
10684
- /* @__PURE__ */ (0, import_jsx_runtime152.jsx)(
10843
+ /* @__PURE__ */ (0, import_jsx_runtime153.jsx)(
10685
10844
  ConnectedAccountRow,
10686
10845
  {
10687
10846
  icon: "apple",
@@ -10693,7 +10852,7 @@ var AccountsWalletsTab = ({
10693
10852
  onDisconnect: onDisconnectApple
10694
10853
  }
10695
10854
  ),
10696
- /* @__PURE__ */ (0, import_jsx_runtime152.jsx)(
10855
+ /* @__PURE__ */ (0, import_jsx_runtime153.jsx)(
10697
10856
  ConnectedAccountRow,
10698
10857
  {
10699
10858
  icon: "twitter",
@@ -10705,7 +10864,7 @@ var AccountsWalletsTab = ({
10705
10864
  onDisconnect: onDisconnectTwitter
10706
10865
  }
10707
10866
  ),
10708
- /* @__PURE__ */ (0, import_jsx_runtime152.jsx)(
10867
+ /* @__PURE__ */ (0, import_jsx_runtime153.jsx)(
10709
10868
  ConnectedAccountRow,
10710
10869
  {
10711
10870
  icon: "email",
@@ -10718,12 +10877,12 @@ var AccountsWalletsTab = ({
10718
10877
  )
10719
10878
  ] })
10720
10879
  ] }),
10721
- wallets.length > 0 ? /* @__PURE__ */ (0, import_jsx_runtime152.jsxs)("div", { className: "agg-wallets-section flex flex-col gap-3", children: [
10722
- /* @__PURE__ */ (0, import_jsx_runtime152.jsx)(SectionTitle, { children: "Wallets" }),
10723
- /* @__PURE__ */ (0, import_jsx_runtime152.jsx)("div", { className: "flex flex-col gap-2", children: wallets.map((wallet) => {
10880
+ wallets.length > 0 ? /* @__PURE__ */ (0, import_jsx_runtime153.jsxs)("div", { className: "agg-wallets-section flex flex-col gap-3", children: [
10881
+ /* @__PURE__ */ (0, import_jsx_runtime153.jsx)(SectionTitle, { children: "Wallets" }),
10882
+ /* @__PURE__ */ (0, import_jsx_runtime153.jsx)("div", { className: "flex flex-col gap-2", children: wallets.map((wallet) => {
10724
10883
  var _a;
10725
- return /* @__PURE__ */ (0, import_jsx_runtime152.jsx)(AccountRow, { className: "gap-4", children: /* @__PURE__ */ (0, import_jsx_runtime152.jsxs)("div", { className: "flex min-w-0 items-center gap-3", children: [
10726
- /* @__PURE__ */ (0, import_jsx_runtime152.jsx)(
10884
+ return /* @__PURE__ */ (0, import_jsx_runtime153.jsx)(AccountRow, { className: "gap-4", children: /* @__PURE__ */ (0, import_jsx_runtime153.jsxs)("div", { className: "flex min-w-0 items-center gap-3", children: [
10885
+ /* @__PURE__ */ (0, import_jsx_runtime153.jsx)(
10727
10886
  AccountIdentity,
10728
10887
  {
10729
10888
  icon: getWalletIconName(wallet),
@@ -10731,7 +10890,7 @@ var AccountsWalletsTab = ({
10731
10890
  label: (_a = wallet.displayAddress) != null ? _a : wallet.address
10732
10891
  }
10733
10892
  ),
10734
- /* @__PURE__ */ (0, import_jsx_runtime152.jsx)(VerifiedBadge, {})
10893
+ /* @__PURE__ */ (0, import_jsx_runtime153.jsx)(VerifiedBadge, {})
10735
10894
  ] }) }, `${wallet.chain}:${wallet.address}`);
10736
10895
  }) })
10737
10896
  ] }) : null
@@ -10740,9 +10899,9 @@ var AccountsWalletsTab = ({
10740
10899
  AccountsWalletsTab.displayName = "AccountsWalletsTab";
10741
10900
 
10742
10901
  // src/profile/tabs/trading-access-tab.tsx
10743
- var import_hooks51 = require("@agg-build/hooks");
10744
- var import_react27 = require("react");
10745
- var import_jsx_runtime153 = require("react/jsx-runtime");
10902
+ var import_hooks52 = require("@agg-build/hooks");
10903
+ var import_react28 = require("react");
10904
+ var import_jsx_runtime154 = require("react/jsx-runtime");
10746
10905
  var TRADING_ACCESS_VENUES = [
10747
10906
  "kalshi",
10748
10907
  "betdex",
@@ -10759,8 +10918,8 @@ var TRADING_ACCESS_VENUES = [
10759
10918
  "pred"
10760
10919
  ];
10761
10920
  var TRADING_ACCESS_VENUE_ITEMS = TRADING_ACCESS_VENUES.map((id) => ({ id }));
10762
- var SectionTitle2 = ({ children }) => /* @__PURE__ */ (0, import_jsx_runtime153.jsx)("h3", { className: "text-agg-sm font-agg-bold leading-agg-5 text-agg-foreground", children });
10763
- var AccessRow = ({ children }) => /* @__PURE__ */ (0, import_jsx_runtime153.jsx)(
10921
+ var SectionTitle2 = ({ children }) => /* @__PURE__ */ (0, import_jsx_runtime154.jsx)("h3", { className: "text-agg-sm font-agg-bold leading-agg-5 text-agg-foreground", children });
10922
+ var AccessRow = ({ children }) => /* @__PURE__ */ (0, import_jsx_runtime154.jsx)(
10764
10923
  "div",
10765
10924
  {
10766
10925
  className: cn(
@@ -10772,17 +10931,17 @@ var AccessRow = ({ children }) => /* @__PURE__ */ (0, import_jsx_runtime153.jsx)
10772
10931
  }
10773
10932
  );
10774
10933
  var AvailableStatus = () => {
10775
- const labels = (0, import_hooks51.useLabels)();
10776
- return /* @__PURE__ */ (0, import_jsx_runtime153.jsxs)("div", { className: "flex items-center gap-2", children: [
10777
- /* @__PURE__ */ (0, import_jsx_runtime153.jsx)(Icon, { name: "check-badge", size: "small", className: "text-agg-primary" }),
10778
- /* @__PURE__ */ (0, import_jsx_runtime153.jsx)("span", { className: "text-agg-sm font-agg-normal leading-agg-5 text-agg-foreground whitespace-nowrap", children: labels.trading.tradingAccessAvailable })
10934
+ const labels = (0, import_hooks52.useLabels)();
10935
+ return /* @__PURE__ */ (0, import_jsx_runtime154.jsxs)("div", { className: "flex items-center gap-2", children: [
10936
+ /* @__PURE__ */ (0, import_jsx_runtime154.jsx)(Icon, { name: "check-badge", size: "small", className: "text-agg-primary" }),
10937
+ /* @__PURE__ */ (0, import_jsx_runtime154.jsx)("span", { className: "text-agg-sm font-agg-normal leading-agg-5 text-agg-foreground whitespace-nowrap", children: labels.trading.tradingAccessAvailable })
10779
10938
  ] });
10780
10939
  };
10781
10940
  var GeoblockedStatus = () => {
10782
- const labels = (0, import_hooks51.useLabels)();
10783
- return /* @__PURE__ */ (0, import_jsx_runtime153.jsxs)("div", { className: "flex items-center gap-2 text-agg-muted-foreground", children: [
10784
- /* @__PURE__ */ (0, import_jsx_runtime153.jsx)(Icon, { name: "warning-filled", size: "small", color: "currentColor" }),
10785
- /* @__PURE__ */ (0, import_jsx_runtime153.jsx)("span", { className: "text-agg-sm font-agg-normal leading-agg-5 whitespace-nowrap", children: labels.trading.venueUnavailableInRegion })
10941
+ const labels = (0, import_hooks52.useLabels)();
10942
+ return /* @__PURE__ */ (0, import_jsx_runtime154.jsxs)("div", { className: "flex items-center gap-2 text-agg-muted-foreground", children: [
10943
+ /* @__PURE__ */ (0, import_jsx_runtime154.jsx)(Icon, { name: "warning-filled", size: "small", color: "currentColor" }),
10944
+ /* @__PURE__ */ (0, import_jsx_runtime154.jsx)("span", { className: "text-agg-sm font-agg-normal leading-agg-5 whitespace-nowrap", children: labels.trading.venueUnavailableInRegion })
10786
10945
  ] });
10787
10946
  };
10788
10947
  var TradingAccessTab = ({
@@ -10792,26 +10951,26 @@ var TradingAccessTab = ({
10792
10951
  onConfigureBetdex
10793
10952
  }) => {
10794
10953
  var _a;
10795
- const labels = (0, import_hooks51.useLabels)();
10796
- const { disabledVenues, isLoading: isAppConfigLoading } = (0, import_hooks51.useAppConfig)();
10797
- const { isLocationBlocked } = (0, import_hooks51.useGeoBlock)();
10954
+ const labels = (0, import_hooks52.useLabels)();
10955
+ const { disabledVenues, isLoading: isAppConfigLoading } = (0, import_hooks52.useAppConfig)();
10956
+ const { isLocationBlocked } = (0, import_hooks52.useGeoBlock)();
10798
10957
  const hasBetdexAccount = (_a = venueAccounts == null ? void 0 : venueAccounts.some((account) => account.venue === "betdex")) != null ? _a : false;
10799
- const visibleVenues = (0, import_react27.useMemo)(() => {
10800
- const visible = (0, import_hooks51.getVisibleVenuesByConfig)(TRADING_ACCESS_VENUE_ITEMS, disabledVenues);
10958
+ const visibleVenues = (0, import_react28.useMemo)(() => {
10959
+ const visible = (0, import_hooks52.getVisibleVenuesByConfig)(TRADING_ACCESS_VENUE_ITEMS, disabledVenues);
10801
10960
  return TRADING_ACCESS_VENUE_ITEMS.filter(
10802
10961
  (item) => visible.includes(item) || item.id === "betdex" && hasBetdexAccount
10803
10962
  );
10804
10963
  }, [disabledVenues, hasBetdexAccount]);
10805
- return /* @__PURE__ */ (0, import_jsx_runtime153.jsxs)("div", { className: "agg-trading-access-section flex flex-col gap-4", children: [
10806
- /* @__PURE__ */ (0, import_jsx_runtime153.jsx)(SectionTitle2, { children: labels.trading.tradingAccessVenues }),
10807
- /* @__PURE__ */ (0, import_jsx_runtime153.jsx)("div", { className: "flex flex-col gap-3", children: visibleVenues.map(({ id: venue }) => {
10964
+ return /* @__PURE__ */ (0, import_jsx_runtime154.jsxs)("div", { className: "agg-trading-access-section flex flex-col gap-4", children: [
10965
+ /* @__PURE__ */ (0, import_jsx_runtime154.jsx)(SectionTitle2, { children: labels.trading.tradingAccessVenues }),
10966
+ /* @__PURE__ */ (0, import_jsx_runtime154.jsx)("div", { className: "flex flex-col gap-3", children: visibleVenues.map(({ id: venue }) => {
10808
10967
  var _a2;
10809
10968
  const venueAccount = venueAccounts == null ? void 0 : venueAccounts.find((account) => account.venue === venue);
10810
10969
  const isKalshi = venue === "kalshi";
10811
10970
  const isBetdex = venue === "betdex";
10812
10971
  const canManageBetdex = isBetdex && hasBetdexAccount && !isAppConfigLoading;
10813
10972
  const isConnected = (venueAccount == null ? void 0 : venueAccount.status) === "active";
10814
- const availabilityState = (0, import_hooks51.getVenueAvailabilityState)({
10973
+ const availabilityState = (0, import_hooks52.getVenueAvailabilityState)({
10815
10974
  venueId: venue,
10816
10975
  disabledVenues,
10817
10976
  isConfigLoading: (isKalshi || isBetdex) && isAppConfigLoading,
@@ -10819,12 +10978,12 @@ var TradingAccessTab = ({
10819
10978
  });
10820
10979
  const displayName = (_a2 = venueLogoLabels[venue]) != null ? _a2 : venue;
10821
10980
  if (availabilityState === "hidden" && !canManageBetdex) return null;
10822
- return /* @__PURE__ */ (0, import_jsx_runtime153.jsxs)(AccessRow, { children: [
10823
- /* @__PURE__ */ (0, import_jsx_runtime153.jsxs)("div", { className: "flex min-w-0 items-center gap-3", children: [
10824
- /* @__PURE__ */ (0, import_jsx_runtime153.jsx)(VenueLogo, { venue, size: "small" }),
10825
- /* @__PURE__ */ (0, import_jsx_runtime153.jsx)("span", { className: "truncate text-agg-base font-agg-normal leading-6 text-agg-foreground", children: displayName })
10981
+ return /* @__PURE__ */ (0, import_jsx_runtime154.jsxs)(AccessRow, { children: [
10982
+ /* @__PURE__ */ (0, import_jsx_runtime154.jsxs)("div", { className: "flex min-w-0 items-center gap-3", children: [
10983
+ /* @__PURE__ */ (0, import_jsx_runtime154.jsx)(VenueLogo, { venue, size: "small" }),
10984
+ /* @__PURE__ */ (0, import_jsx_runtime154.jsx)("span", { className: "truncate text-agg-base font-agg-normal leading-6 text-agg-foreground", children: displayName })
10826
10985
  ] }),
10827
- isBetdex && (availabilityState === "available" || canManageBetdex) ? /* @__PURE__ */ (0, import_jsx_runtime153.jsx)(
10986
+ isBetdex && (availabilityState === "available" || canManageBetdex) ? /* @__PURE__ */ (0, import_jsx_runtime154.jsx)(
10828
10987
  "button",
10829
10988
  {
10830
10989
  type: "button",
@@ -10834,7 +10993,7 @@ var TradingAccessTab = ({
10834
10993
  className: "min-h-11 shrink-0 cursor-pointer text-agg-sm font-agg-bold leading-agg-5 text-agg-primary whitespace-nowrap focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-agg-primary disabled:cursor-not-allowed disabled:opacity-60",
10835
10994
  children: labels.trading.configureBetdexAccount
10836
10995
  }
10837
- ) : availabilityState === "geoblocked" ? /* @__PURE__ */ (0, import_jsx_runtime153.jsx)(GeoblockedStatus, {}) : isKalshi && !isConnected ? /* @__PURE__ */ (0, import_jsx_runtime153.jsx)(
10996
+ ) : availabilityState === "geoblocked" ? /* @__PURE__ */ (0, import_jsx_runtime154.jsx)(GeoblockedStatus, {}) : isKalshi && !isConnected ? /* @__PURE__ */ (0, import_jsx_runtime154.jsx)(
10838
10997
  "button",
10839
10998
  {
10840
10999
  type: "button",
@@ -10843,9 +11002,9 @@ var TradingAccessTab = ({
10843
11002
  className: "shrink-0 cursor-pointer text-agg-sm font-agg-bold leading-agg-5 text-agg-primary whitespace-nowrap focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-agg-primary disabled:cursor-not-allowed disabled:opacity-60",
10844
11003
  children: labels.trading.tradingAccessAddKalshiAccount
10845
11004
  }
10846
- ) : isKalshi ? /* @__PURE__ */ (0, import_jsx_runtime153.jsxs)("div", { className: "flex items-center gap-4", children: [
10847
- /* @__PURE__ */ (0, import_jsx_runtime153.jsx)(AvailableStatus, {}),
10848
- onDisconnectKalshi ? /* @__PURE__ */ (0, import_jsx_runtime153.jsx)(
11005
+ ) : isKalshi ? /* @__PURE__ */ (0, import_jsx_runtime154.jsxs)("div", { className: "flex items-center gap-4", children: [
11006
+ /* @__PURE__ */ (0, import_jsx_runtime154.jsx)(AvailableStatus, {}),
11007
+ onDisconnectKalshi ? /* @__PURE__ */ (0, import_jsx_runtime154.jsx)(
10849
11008
  "button",
10850
11009
  {
10851
11010
  type: "button",
@@ -10854,7 +11013,7 @@ var TradingAccessTab = ({
10854
11013
  children: labels.auth.disconnect
10855
11014
  }
10856
11015
  ) : null
10857
- ] }) : /* @__PURE__ */ (0, import_jsx_runtime153.jsx)(AvailableStatus, {})
11016
+ ] }) : /* @__PURE__ */ (0, import_jsx_runtime154.jsx)(AvailableStatus, {})
10858
11017
  ] }, venue);
10859
11018
  }) })
10860
11019
  ] });
@@ -10862,7 +11021,7 @@ var TradingAccessTab = ({
10862
11021
  TradingAccessTab.displayName = "TradingAccessTab";
10863
11022
 
10864
11023
  // src/profile/index.tsx
10865
- var import_jsx_runtime154 = require("react/jsx-runtime");
11024
+ var import_jsx_runtime155 = require("react/jsx-runtime");
10866
11025
  var ProfileModal = ({
10867
11026
  open,
10868
11027
  onOpenChange,
@@ -10886,35 +11045,35 @@ var ProfileModal = ({
10886
11045
  onDisconnectExchange
10887
11046
  }) => {
10888
11047
  var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j;
10889
- const client = (0, import_hooks52.useAggClient)();
10890
- const { user } = (0, import_hooks52.useAggAuthState)();
11048
+ const client = (0, import_hooks53.useAggClient)();
11049
+ const { user } = (0, import_hooks53.useAggAuthState)();
10891
11050
  const toastCtx = useOptionalToast();
10892
- const [activeTab, setActiveTab] = (0, import_react28.useState)(PROFILE_TAB_KEYS.PROFILE_ACCOUNTS);
10893
- const profileTabItems = (0, import_react28.useMemo)(() => getProfileTabItems(), []);
11051
+ const [activeTab, setActiveTab] = (0, import_react29.useState)(PROFILE_TAB_KEYS.PROFILE_ACCOUNTS);
11052
+ const profileTabItems = (0, import_react29.useMemo)(() => getProfileTabItems(), []);
10894
11053
  const resolvedInitialUsername = (_a = username != null ? username : user == null ? void 0 : user.username) != null ? _a : "";
10895
- const [draftUsername, setDraftUsername] = (0, import_react28.useState)(resolvedInitialUsername);
10896
- const [draftAvatarFile, setDraftAvatarFile] = (0, import_react28.useState)();
10897
- const [draftAvatarPreview, setDraftAvatarPreview] = (0, import_react28.useState)();
10898
- const [isSaving, setIsSaving] = (0, import_react28.useState)(false);
10899
- const [avatarTypeError, setAvatarTypeError] = (0, import_react28.useState)(null);
10900
- const [isConnectKalshiModalOpen, setIsConnectKalshiModalOpen] = (0, import_react28.useState)(false);
10901
- const [betdexAccountUserId, setBetdexAccountUserId] = (0, import_react28.useState)(null);
11054
+ const [draftUsername, setDraftUsername] = (0, import_react29.useState)(resolvedInitialUsername);
11055
+ const [draftAvatarFile, setDraftAvatarFile] = (0, import_react29.useState)();
11056
+ const [draftAvatarPreview, setDraftAvatarPreview] = (0, import_react29.useState)();
11057
+ const [isSaving, setIsSaving] = (0, import_react29.useState)(false);
11058
+ const [avatarTypeError, setAvatarTypeError] = (0, import_react29.useState)(null);
11059
+ const [isConnectKalshiModalOpen, setIsConnectKalshiModalOpen] = (0, import_react29.useState)(false);
11060
+ const [betdexAccountUserId, setBetdexAccountUserId] = (0, import_react29.useState)(null);
10902
11061
  const isBetdexAccountModalOpen = !!(user == null ? void 0 : user.id) && betdexAccountUserId === user.id;
10903
- const { data: kalshiStatus, refetch: refetchKalshiStatus } = (0, import_hooks52.useVenueKeyStatus)(
10904
- import_sdk16.Venue.kalshi,
11062
+ const { data: kalshiStatus, refetch: refetchKalshiStatus } = (0, import_hooks53.useVenueKeyStatus)(
11063
+ import_sdk17.Venue.kalshi,
10905
11064
  open
10906
11065
  );
10907
- (0, import_react28.useEffect)(() => {
11066
+ (0, import_react29.useEffect)(() => {
10908
11067
  var _a2;
10909
11068
  setDraftUsername((_a2 = username != null ? username : user == null ? void 0 : user.username) != null ? _a2 : "");
10910
11069
  }, [username, user == null ? void 0 : user.username]);
10911
- (0, import_react28.useEffect)(() => {
11070
+ (0, import_react29.useEffect)(() => {
10912
11071
  if (open) return;
10913
11072
  setIsConnectKalshiModalOpen(false);
10914
11073
  setBetdexAccountUserId(null);
10915
11074
  }, [open]);
10916
- (0, import_react28.useEffect)(() => setBetdexAccountUserId(null), [user == null ? void 0 : user.id]);
10917
- const handleOpenChange = (0, import_react28.useCallback)(
11075
+ (0, import_react29.useEffect)(() => setBetdexAccountUserId(null), [user == null ? void 0 : user.id]);
11076
+ const handleOpenChange = (0, import_react29.useCallback)(
10918
11077
  (isOpen) => {
10919
11078
  var _a2;
10920
11079
  if (!isOpen) {
@@ -10938,7 +11097,7 @@ var ProfileModal = ({
10938
11097
  setDraftAvatarPreview
10939
11098
  ]
10940
11099
  );
10941
- const handleDraftAvatarChange = (0, import_react28.useCallback)(
11100
+ const handleDraftAvatarChange = (0, import_react29.useCallback)(
10942
11101
  (file, preview) => {
10943
11102
  const ACCEPTED_AVATAR_TYPES = ["image/jpeg", "image/png", "image/gif", "image/webp"];
10944
11103
  if (file && !ACCEPTED_AVATAR_TYPES.includes(file.type)) {
@@ -10953,7 +11112,7 @@ var ProfileModal = ({
10953
11112
  );
10954
11113
  const originalUsername = (_b = username != null ? username : user == null ? void 0 : user.username) != null ? _b : "";
10955
11114
  const hasChanges = draftUsername !== originalUsername || draftAvatarFile !== void 0;
10956
- const handleSave = (0, import_react28.useCallback)(() => __async(null, null, function* () {
11115
+ const handleSave = (0, import_react29.useCallback)(() => __async(null, null, function* () {
10957
11116
  var _a2, _b2, _c2;
10958
11117
  setIsSaving(true);
10959
11118
  try {
@@ -11008,16 +11167,16 @@ var ProfileModal = ({
11008
11167
  originalUsername,
11009
11168
  toastCtx
11010
11169
  ]);
11011
- const handleCancel = (0, import_react28.useCallback)(() => {
11170
+ const handleCancel = (0, import_react29.useCallback)(() => {
11012
11171
  handleOpenChange(false);
11013
11172
  }, [handleOpenChange]);
11014
- const handleVerifyKalshi = (0, import_react28.useCallback)(
11173
+ const handleVerifyKalshi = (0, import_react29.useCallback)(
11015
11174
  (credentials) => __async(null, null, function* () {
11016
11175
  if (onConnectKalshi) {
11017
11176
  yield onConnectKalshi(credentials);
11018
11177
  } else {
11019
11178
  yield client.upsertVenueKey({
11020
- venue: import_sdk16.Venue.kalshi,
11179
+ venue: import_sdk17.Venue.kalshi,
11021
11180
  credentials: {
11022
11181
  keyId: credentials.apiKeyId,
11023
11182
  privateKey: credentials.privateKey
@@ -11029,12 +11188,12 @@ var ProfileModal = ({
11029
11188
  }),
11030
11189
  [client, onConnectKalshi, refetchKalshiStatus]
11031
11190
  );
11032
- const handleDisconnectKalshi = (0, import_react28.useCallback)(() => __async(null, null, function* () {
11033
- yield client.deleteVenueKey(import_sdk16.Venue.kalshi);
11191
+ const handleDisconnectKalshi = (0, import_react29.useCallback)(() => __async(null, null, function* () {
11192
+ yield client.deleteVenueKey(import_sdk17.Venue.kalshi);
11034
11193
  yield refetchKalshiStatus();
11035
- onDisconnectExchange == null ? void 0 : onDisconnectExchange(import_sdk16.Venue.kalshi);
11194
+ onDisconnectExchange == null ? void 0 : onDisconnectExchange(import_sdk17.Venue.kalshi);
11036
11195
  }), [client, onDisconnectExchange, refetchKalshiStatus]);
11037
- const resolvedVenueAccounts = (0, import_react28.useMemo)(() => {
11196
+ const resolvedVenueAccounts = (0, import_react29.useMemo)(() => {
11038
11197
  var _a2;
11039
11198
  const nonKalshiAccounts = (_a2 = user == null ? void 0 : user.venueAccounts) == null ? void 0 : _a2.filter((account) => account.venue !== "kalshi");
11040
11199
  if (!kalshiStatus) return user == null ? void 0 : user.venueAccounts;
@@ -11043,7 +11202,7 @@ var ProfileModal = ({
11043
11202
  ...nonKalshiAccounts != null ? nonKalshiAccounts : [],
11044
11203
  {
11045
11204
  id: "kalshi-venue-key",
11046
- venue: import_sdk16.Venue.kalshi,
11205
+ venue: import_sdk17.Venue.kalshi,
11047
11206
  status: "active",
11048
11207
  kycStatus: kalshiStatus.kycStatus
11049
11208
  }
@@ -11090,7 +11249,7 @@ var ProfileModal = ({
11090
11249
  if (typeof window === "undefined") return;
11091
11250
  ((_a2 = window.top) != null ? _a2 : window).location.assign(url);
11092
11251
  };
11093
- const surfaceError = (0, import_react28.useCallback)(
11252
+ const surfaceError = (0, import_react29.useCallback)(
11094
11253
  (err, title2) => {
11095
11254
  const message = (err == null ? void 0 : err.message) || "Something went wrong. Please try again.";
11096
11255
  if (toastCtx) {
@@ -11101,7 +11260,7 @@ var ProfileModal = ({
11101
11260
  },
11102
11261
  [toastCtx]
11103
11262
  );
11104
- const handleConnectTwitter = (0, import_react28.useCallback)(() => __async(null, null, function* () {
11263
+ const handleConnectTwitter = (0, import_react29.useCallback)(() => __async(null, null, function* () {
11105
11264
  try {
11106
11265
  const result = yield client.linkAccount({
11107
11266
  provider: "twitter",
@@ -11115,7 +11274,7 @@ var ProfileModal = ({
11115
11274
  surfaceError(err, "Could not connect X (Twitter)");
11116
11275
  }
11117
11276
  }), [client, onConnectTwitter, surfaceError]);
11118
- const handleConnectGoogle = (0, import_react28.useCallback)(() => __async(null, null, function* () {
11277
+ const handleConnectGoogle = (0, import_react29.useCallback)(() => __async(null, null, function* () {
11119
11278
  try {
11120
11279
  const result = yield client.linkAccount({
11121
11280
  provider: "google",
@@ -11129,7 +11288,7 @@ var ProfileModal = ({
11129
11288
  surfaceError(err, "Could not connect Google");
11130
11289
  }
11131
11290
  }), [client, onConnectGoogle, surfaceError]);
11132
- const handleConnectApple = (0, import_react28.useCallback)(() => __async(null, null, function* () {
11291
+ const handleConnectApple = (0, import_react29.useCallback)(() => __async(null, null, function* () {
11133
11292
  try {
11134
11293
  const result = yield client.linkAccount({
11135
11294
  provider: "apple",
@@ -11143,7 +11302,7 @@ var ProfileModal = ({
11143
11302
  surfaceError(err, "Could not connect Apple");
11144
11303
  }
11145
11304
  }), [client, onConnectApple, surfaceError]);
11146
- const handleDisconnectTwitter = (0, import_react28.useCallback)(() => __async(null, null, function* () {
11305
+ const handleDisconnectTwitter = (0, import_react29.useCallback)(() => __async(null, null, function* () {
11147
11306
  try {
11148
11307
  yield client.disconnectAccount("twitter");
11149
11308
  yield client.getCurrentUser();
@@ -11152,7 +11311,7 @@ var ProfileModal = ({
11152
11311
  surfaceError(err, "Could not disconnect X (Twitter)");
11153
11312
  }
11154
11313
  }), [client, onDisconnectTwitter, surfaceError]);
11155
- const handleDisconnectGoogle = (0, import_react28.useCallback)(() => __async(null, null, function* () {
11314
+ const handleDisconnectGoogle = (0, import_react29.useCallback)(() => __async(null, null, function* () {
11156
11315
  try {
11157
11316
  yield client.disconnectAccount("google");
11158
11317
  yield client.getCurrentUser();
@@ -11161,7 +11320,7 @@ var ProfileModal = ({
11161
11320
  surfaceError(err, "Could not disconnect Google");
11162
11321
  }
11163
11322
  }), [client, onDisconnectGoogle, surfaceError]);
11164
- const handleDisconnectApple = (0, import_react28.useCallback)(() => __async(null, null, function* () {
11323
+ const handleDisconnectApple = (0, import_react29.useCallback)(() => __async(null, null, function* () {
11165
11324
  try {
11166
11325
  yield client.disconnectAccount("apple");
11167
11326
  yield client.getCurrentUser();
@@ -11170,7 +11329,7 @@ var ProfileModal = ({
11170
11329
  surfaceError(err, "Could not disconnect Apple");
11171
11330
  }
11172
11331
  }), [client, onDisconnectApple, surfaceError]);
11173
- const handleConnectEmail = (0, import_react28.useCallback)(() => __async(null, null, function* () {
11332
+ const handleConnectEmail = (0, import_react29.useCallback)(() => __async(null, null, function* () {
11174
11333
  var _a2;
11175
11334
  const typedEmail = typeof window !== "undefined" ? (_a2 = window.prompt("Enter your email to receive a magic link")) == null ? void 0 : _a2.trim() : void 0;
11176
11335
  if (!typedEmail) return;
@@ -11189,7 +11348,7 @@ var ProfileModal = ({
11189
11348
  surfaceError(err, "Could not connect email");
11190
11349
  }
11191
11350
  }), [client, onConnectEmail, surfaceError, toastCtx]);
11192
- const handleDisconnectWallet = (0, import_react28.useCallback)(
11351
+ const handleDisconnectWallet = (0, import_react29.useCallback)(
11193
11352
  (wallet) => __async(null, null, function* () {
11194
11353
  const normalizedChain = wallet.chain.toLowerCase();
11195
11354
  const provider = normalizedChain === "solana" || normalizedChain === "svm" ? "solana_wallet" : "wallet";
@@ -11203,7 +11362,7 @@ var ProfileModal = ({
11203
11362
  }),
11204
11363
  [client, onDisconnectWallet, surfaceError]
11205
11364
  );
11206
- const providerActionMap = (0, import_react28.useMemo)(
11365
+ const providerActionMap = (0, import_react29.useMemo)(
11207
11366
  () => ({
11208
11367
  twitter: {
11209
11368
  connect: () => {
@@ -11245,7 +11404,7 @@ var ProfileModal = ({
11245
11404
  handleDisconnectTwitter
11246
11405
  ]
11247
11406
  );
11248
- const resolvedWallets = (0, import_react28.useMemo)(() => {
11407
+ const resolvedWallets = (0, import_react29.useMemo)(() => {
11249
11408
  var _a2, _b2;
11250
11409
  if (wallets) return wallets;
11251
11410
  const walletAccounts = (_b2 = (_a2 = user == null ? void 0 : user.accounts) == null ? void 0 : _a2.filter((account) => {
@@ -11264,13 +11423,13 @@ var ProfileModal = ({
11264
11423
  };
11265
11424
  });
11266
11425
  }, [user == null ? void 0 : user.accounts, wallets]);
11267
- return /* @__PURE__ */ (0, import_jsx_runtime154.jsxs)(
11426
+ return /* @__PURE__ */ (0, import_jsx_runtime155.jsxs)(
11268
11427
  Modal,
11269
11428
  {
11270
11429
  open: open && !isConnectKalshiModalOpen && !isBetdexAccountModalOpen,
11271
11430
  onOpenChange: handleOpenChange,
11272
11431
  children: [
11273
- /* @__PURE__ */ (0, import_jsx_runtime154.jsxs)(
11432
+ /* @__PURE__ */ (0, import_jsx_runtime155.jsxs)(
11274
11433
  Modal.Container,
11275
11434
  {
11276
11435
  maxWidth: "800px",
@@ -11279,8 +11438,8 @@ var ProfileModal = ({
11279
11438
  container: cn("agg-profile-modal", "min-h-[37.5rem]")
11280
11439
  },
11281
11440
  children: [
11282
- /* @__PURE__ */ (0, import_jsx_runtime154.jsx)(Modal.Header, { title: "Edit Profile", classNames: { root: "agg-profile-modal-header" } }),
11283
- /* @__PURE__ */ (0, import_jsx_runtime154.jsx)("div", { className: "agg-profile-tabs sm:hidden w-full", children: /* @__PURE__ */ (0, import_jsx_runtime154.jsx)(
11441
+ /* @__PURE__ */ (0, import_jsx_runtime155.jsx)(Modal.Header, { title: "Edit Profile", classNames: { root: "agg-profile-modal-header" } }),
11442
+ /* @__PURE__ */ (0, import_jsx_runtime155.jsx)("div", { className: "agg-profile-tabs sm:hidden w-full", children: /* @__PURE__ */ (0, import_jsx_runtime155.jsx)(
11284
11443
  Tabs,
11285
11444
  {
11286
11445
  className: "w-full [&>div]:w-full",
@@ -11289,14 +11448,14 @@ var ProfileModal = ({
11289
11448
  items: profileTabItems.map((tab) => ({
11290
11449
  value: tab.value,
11291
11450
  label: tab.label,
11292
- icon: /* @__PURE__ */ (0, import_jsx_runtime154.jsx)(Icon, { name: tab.icon, size: "small" })
11451
+ icon: /* @__PURE__ */ (0, import_jsx_runtime155.jsx)(Icon, { name: tab.icon, size: "small" })
11293
11452
  })),
11294
11453
  value: activeTab,
11295
11454
  onChange: (val) => setActiveTab(val)
11296
11455
  }
11297
11456
  ) }),
11298
- /* @__PURE__ */ (0, import_jsx_runtime154.jsx)(Modal.Body, { classNames: { root: cn("agg-profile-modal-body", "overflow-x-visible") }, children: /* @__PURE__ */ (0, import_jsx_runtime154.jsxs)("div", { className: "agg-profile-layout flex flex-col sm:flex-row sm:gap-10", children: [
11299
- /* @__PURE__ */ (0, import_jsx_runtime154.jsx)("div", { className: "shrink-0", children: /* @__PURE__ */ (0, import_jsx_runtime154.jsx)(
11457
+ /* @__PURE__ */ (0, import_jsx_runtime155.jsx)(Modal.Body, { classNames: { root: cn("agg-profile-modal-body", "overflow-x-visible") }, children: /* @__PURE__ */ (0, import_jsx_runtime155.jsxs)("div", { className: "agg-profile-layout flex flex-col sm:flex-row sm:gap-10", children: [
11458
+ /* @__PURE__ */ (0, import_jsx_runtime155.jsx)("div", { className: "shrink-0", children: /* @__PURE__ */ (0, import_jsx_runtime155.jsx)(
11300
11459
  "nav",
11301
11460
  {
11302
11461
  className: cn(
@@ -11312,7 +11471,7 @@ var ProfileModal = ({
11312
11471
  "aria-label": "Profile sections",
11313
11472
  children: profileTabItems.map((tab) => {
11314
11473
  const isActive = activeTab === tab.value;
11315
- return /* @__PURE__ */ (0, import_jsx_runtime154.jsxs)(
11474
+ return /* @__PURE__ */ (0, import_jsx_runtime155.jsxs)(
11316
11475
  "button",
11317
11476
  {
11318
11477
  type: "button",
@@ -11328,9 +11487,9 @@ var ProfileModal = ({
11328
11487
  isActive ? "font-agg-normal text-agg-foreground bg-agg-secondary-hover" : "font-agg-normal text-agg-foreground"
11329
11488
  ),
11330
11489
  children: [
11331
- isActive ? /* @__PURE__ */ (0, import_jsx_runtime154.jsx)("div", { className: "absolute left-0 top-0 bottom-0 w-1 bg-agg-primary" }) : null,
11332
- /* @__PURE__ */ (0, import_jsx_runtime154.jsx)(Icon, { name: tab.icon, size: "small", color: "currentColor" }),
11333
- /* @__PURE__ */ (0, import_jsx_runtime154.jsx)("span", { className: "shrink-0 whitespace-nowrap", children: tab.label })
11490
+ isActive ? /* @__PURE__ */ (0, import_jsx_runtime155.jsx)("div", { className: "absolute left-0 top-0 bottom-0 w-1 bg-agg-primary" }) : null,
11491
+ /* @__PURE__ */ (0, import_jsx_runtime155.jsx)(Icon, { name: tab.icon, size: "small", color: "currentColor" }),
11492
+ /* @__PURE__ */ (0, import_jsx_runtime155.jsx)("span", { className: "shrink-0 whitespace-nowrap", children: tab.label })
11334
11493
  ]
11335
11494
  },
11336
11495
  tab.value
@@ -11338,9 +11497,9 @@ var ProfileModal = ({
11338
11497
  })
11339
11498
  }
11340
11499
  ) }),
11341
- /* @__PURE__ */ (0, import_jsx_runtime154.jsxs)("div", { className: "agg-profile-content min-w-0 flex-1", children: [
11342
- activeTab === PROFILE_TAB_KEYS.PROFILE_ACCOUNTS ? /* @__PURE__ */ (0, import_jsx_runtime154.jsxs)("div", { className: "agg-profile-accounts-tab flex flex-col gap-8", children: [
11343
- /* @__PURE__ */ (0, import_jsx_runtime154.jsx)(
11500
+ /* @__PURE__ */ (0, import_jsx_runtime155.jsxs)("div", { className: "agg-profile-content min-w-0 flex-1", children: [
11501
+ activeTab === PROFILE_TAB_KEYS.PROFILE_ACCOUNTS ? /* @__PURE__ */ (0, import_jsx_runtime155.jsxs)("div", { className: "agg-profile-accounts-tab flex flex-col gap-8", children: [
11502
+ /* @__PURE__ */ (0, import_jsx_runtime155.jsx)(
11344
11503
  AboutTab,
11345
11504
  {
11346
11505
  username: username != null ? username : user == null ? void 0 : user.username,
@@ -11354,7 +11513,7 @@ var ProfileModal = ({
11354
11513
  avatarError: avatarTypeError
11355
11514
  }
11356
11515
  ),
11357
- /* @__PURE__ */ (0, import_jsx_runtime154.jsx)(
11516
+ /* @__PURE__ */ (0, import_jsx_runtime155.jsx)(
11358
11517
  AccountsWalletsTab,
11359
11518
  {
11360
11519
  socialAccounts: resolvedSocialAccounts,
@@ -11373,7 +11532,7 @@ var ProfileModal = ({
11373
11532
  }
11374
11533
  )
11375
11534
  ] }) : null,
11376
- activeTab === PROFILE_TAB_KEYS.TRADING_ACCESS ? /* @__PURE__ */ (0, import_jsx_runtime154.jsx)(
11535
+ activeTab === PROFILE_TAB_KEYS.TRADING_ACCESS ? /* @__PURE__ */ (0, import_jsx_runtime155.jsx)(
11377
11536
  TradingAccessTab,
11378
11537
  {
11379
11538
  venueAccounts: resolvedVenueAccounts,
@@ -11385,9 +11544,9 @@ var ProfileModal = ({
11385
11544
  ) : null
11386
11545
  ] })
11387
11546
  ] }) }),
11388
- /* @__PURE__ */ (0, import_jsx_runtime154.jsxs)(Modal.Footer, { classNames: { root: "agg-profile-modal-footer" }, children: [
11389
- /* @__PURE__ */ (0, import_jsx_runtime154.jsx)(Button, { variant: "secondary", size: "large", onClick: handleCancel, className: "min-w-[120px]", children: "Cancel" }),
11390
- /* @__PURE__ */ (0, import_jsx_runtime154.jsx)(
11547
+ /* @__PURE__ */ (0, import_jsx_runtime155.jsxs)(Modal.Footer, { classNames: { root: "agg-profile-modal-footer" }, children: [
11548
+ /* @__PURE__ */ (0, import_jsx_runtime155.jsx)(Button, { variant: "secondary", size: "large", onClick: handleCancel, className: "min-w-[120px]", children: "Cancel" }),
11549
+ /* @__PURE__ */ (0, import_jsx_runtime155.jsx)(
11391
11550
  Button,
11392
11551
  {
11393
11552
  variant: "primary",
@@ -11402,7 +11561,7 @@ var ProfileModal = ({
11402
11561
  ]
11403
11562
  }
11404
11563
  ),
11405
- /* @__PURE__ */ (0, import_jsx_runtime154.jsx)(
11564
+ /* @__PURE__ */ (0, import_jsx_runtime155.jsx)(
11406
11565
  ManageBetdexAccountModal,
11407
11566
  {
11408
11567
  userId: user == null ? void 0 : user.id,
@@ -11414,7 +11573,7 @@ var ProfileModal = ({
11414
11573
  },
11415
11574
  (_j = user == null ? void 0 : user.id) != null ? _j : "signed-out"
11416
11575
  ),
11417
- /* @__PURE__ */ (0, import_jsx_runtime154.jsx)(
11576
+ /* @__PURE__ */ (0, import_jsx_runtime155.jsx)(
11418
11577
  ConnectKalshiModal,
11419
11578
  {
11420
11579
  open: open && isConnectKalshiModalOpen,
@@ -11429,33 +11588,33 @@ var ProfileModal = ({
11429
11588
  ProfileModal.displayName = "ProfileModal";
11430
11589
 
11431
11590
  // src/geo-block-modal/index.tsx
11432
- var import_hooks53 = require("@agg-build/hooks");
11433
- var import_react29 = require("react");
11434
- var import_jsx_runtime155 = require("react/jsx-runtime");
11591
+ var import_hooks54 = require("@agg-build/hooks");
11592
+ var import_react30 = require("react");
11593
+ var import_jsx_runtime156 = require("react/jsx-runtime");
11435
11594
  var GeoBlockModal = ({
11436
11595
  open,
11437
11596
  onOpenChange,
11438
11597
  onConfirm,
11439
11598
  classNames
11440
11599
  }) => {
11441
- const labels = (0, import_hooks53.useLabels)();
11442
- const handleConfirm = (0, import_react29.useCallback)(() => {
11600
+ const labels = (0, import_hooks54.useLabels)();
11601
+ const handleConfirm = (0, import_react30.useCallback)(() => {
11443
11602
  onConfirm == null ? void 0 : onConfirm();
11444
11603
  onOpenChange(false);
11445
11604
  }, [onConfirm, onOpenChange]);
11446
- return /* @__PURE__ */ (0, import_jsx_runtime155.jsx)(
11605
+ return /* @__PURE__ */ (0, import_jsx_runtime156.jsx)(
11447
11606
  Modal,
11448
11607
  {
11449
11608
  open,
11450
11609
  onOpenChange,
11451
11610
  "aria-label": labels.trading.geoBlockModalAriaLabel,
11452
- children: /* @__PURE__ */ (0, import_jsx_runtime155.jsxs)(
11611
+ children: /* @__PURE__ */ (0, import_jsx_runtime156.jsxs)(
11453
11612
  Modal.Container,
11454
11613
  {
11455
11614
  maxWidth: "480px",
11456
11615
  classNames: { container: cn("!rounded-agg-2xl", classNames == null ? void 0 : classNames.container) },
11457
11616
  children: [
11458
- /* @__PURE__ */ (0, import_jsx_runtime155.jsx)(
11617
+ /* @__PURE__ */ (0, import_jsx_runtime156.jsx)(
11459
11618
  Modal.Header,
11460
11619
  {
11461
11620
  title: "",
@@ -11467,19 +11626,19 @@ var GeoBlockModal = ({
11467
11626
  }
11468
11627
  }
11469
11628
  ),
11470
- /* @__PURE__ */ (0, import_jsx_runtime155.jsx)(Modal.Body, { classNames: { root: cn("!px-10 !pt-0 !pb-12", classNames == null ? void 0 : classNames.body) }, children: /* @__PURE__ */ (0, import_jsx_runtime155.jsxs)("div", { className: "flex flex-col items-center gap-8", children: [
11471
- /* @__PURE__ */ (0, import_jsx_runtime155.jsx)(
11629
+ /* @__PURE__ */ (0, import_jsx_runtime156.jsx)(Modal.Body, { classNames: { root: cn("!px-10 !pt-0 !pb-12", classNames == null ? void 0 : classNames.body) }, children: /* @__PURE__ */ (0, import_jsx_runtime156.jsxs)("div", { className: "flex flex-col items-center gap-8", children: [
11630
+ /* @__PURE__ */ (0, import_jsx_runtime156.jsx)(
11472
11631
  Icon,
11473
11632
  {
11474
11633
  name: "internet-security",
11475
11634
  className: "h-[60px] w-[60px] text-agg-muted-foreground"
11476
11635
  }
11477
11636
  ),
11478
- /* @__PURE__ */ (0, import_jsx_runtime155.jsxs)("div", { className: "flex flex-col items-center gap-3 text-center", children: [
11479
- /* @__PURE__ */ (0, import_jsx_runtime155.jsx)("h2", { className: "text-agg-2xl font-agg-bold leading-agg-8 text-agg-foreground", children: labels.trading.geoBlockModalTitle }),
11480
- /* @__PURE__ */ (0, import_jsx_runtime155.jsx)("p", { className: "text-agg-base font-agg-normal leading-agg-6 text-agg-foreground", children: labels.trading.geoBlockModalDescription })
11637
+ /* @__PURE__ */ (0, import_jsx_runtime156.jsxs)("div", { className: "flex flex-col items-center gap-3 text-center", children: [
11638
+ /* @__PURE__ */ (0, import_jsx_runtime156.jsx)("h2", { className: "text-agg-2xl font-agg-bold leading-agg-8 text-agg-foreground", children: labels.trading.geoBlockModalTitle }),
11639
+ /* @__PURE__ */ (0, import_jsx_runtime156.jsx)("p", { className: "text-agg-base font-agg-normal leading-agg-6 text-agg-foreground", children: labels.trading.geoBlockModalDescription })
11481
11640
  ] }),
11482
- /* @__PURE__ */ (0, import_jsx_runtime155.jsx)(
11641
+ /* @__PURE__ */ (0, import_jsx_runtime156.jsx)(
11483
11642
  Button,
11484
11643
  {
11485
11644
  variant: "secondary",
@@ -11499,27 +11658,27 @@ var GeoBlockModal = ({
11499
11658
  GeoBlockModal.displayName = "GeoBlockModal";
11500
11659
 
11501
11660
  // src/geo-block-banner/index.tsx
11502
- var import_hooks54 = require("@agg-build/hooks");
11503
- var import_jsx_runtime156 = require("react/jsx-runtime");
11661
+ var import_hooks55 = require("@agg-build/hooks");
11662
+ var import_jsx_runtime157 = require("react/jsx-runtime");
11504
11663
  var GeoBlockBanner = ({
11505
11664
  venue,
11506
11665
  termsUrl = AGG_TERMS_OF_SERVICE_URL,
11507
11666
  className
11508
11667
  }) => {
11509
- const labels = (0, import_hooks54.useLabels)();
11668
+ const labels = (0, import_hooks55.useLabels)();
11510
11669
  const message = venue ? labels.trading.geoBlockVenueMessage(venue) : labels.trading.geoBlockGenericMessage;
11511
- return /* @__PURE__ */ (0, import_jsx_runtime156.jsxs)(
11670
+ return /* @__PURE__ */ (0, import_jsx_runtime157.jsxs)(
11512
11671
  "div",
11513
11672
  {
11514
11673
  className: cn("flex items-center gap-5 rounded-agg-lg bg-agg-secondary-hover p-3", className),
11515
11674
  role: "status",
11516
11675
  children: [
11517
- /* @__PURE__ */ (0, import_jsx_runtime156.jsxs)("p", { className: "min-w-0 flex-1 text-agg-xs leading-agg-4 text-agg-foreground", children: [
11676
+ /* @__PURE__ */ (0, import_jsx_runtime157.jsxs)("p", { className: "min-w-0 flex-1 text-agg-xs leading-agg-4 text-agg-foreground", children: [
11518
11677
  message,
11519
- /* @__PURE__ */ (0, import_jsx_runtime156.jsx)("a", { href: termsUrl, className: "underline", target: "_blank", rel: "noreferrer noopener", children: labels.trading.geoBlockTermsLink }),
11678
+ /* @__PURE__ */ (0, import_jsx_runtime157.jsx)("a", { href: termsUrl, className: "underline", target: "_blank", rel: "noreferrer noopener", children: labels.trading.geoBlockTermsLink }),
11520
11679
  labels.trading.geoBlockMessageSuffix
11521
11680
  ] }),
11522
- /* @__PURE__ */ (0, import_jsx_runtime156.jsx)(Icon, { name: "internet-security", className: "h-6 w-6 shrink-0 text-agg-muted-foreground" })
11681
+ /* @__PURE__ */ (0, import_jsx_runtime157.jsx)(Icon, { name: "internet-security", className: "h-6 w-6 shrink-0 text-agg-muted-foreground" })
11523
11682
  ]
11524
11683
  }
11525
11684
  );
@@ -11527,9 +11686,9 @@ var GeoBlockBanner = ({
11527
11686
  GeoBlockBanner.displayName = "GeoBlockBanner";
11528
11687
 
11529
11688
  // src/kyc/shared-kyc-modal.tsx
11530
- var import_hooks55 = require("@agg-build/hooks");
11531
- var Dialog7 = __toESM(require("@radix-ui/react-dialog"));
11532
- var import_jsx_runtime157 = require("react/jsx-runtime");
11689
+ var import_hooks56 = require("@agg-build/hooks");
11690
+ var Dialog8 = __toESM(require("@radix-ui/react-dialog"));
11691
+ var import_jsx_runtime158 = require("react/jsx-runtime");
11533
11692
  var SharedKycModal = ({
11534
11693
  open,
11535
11694
  state = "initial",
@@ -11537,46 +11696,46 @@ var SharedKycModal = ({
11537
11696
  onOpenChange,
11538
11697
  onStartVerification
11539
11698
  }) => {
11540
- const labels = (0, import_hooks55.useLabels)();
11699
+ const labels = (0, import_hooks56.useLabels)();
11541
11700
  const modalLabels = labels.trading.sharedKyc.modal;
11542
11701
  const isInitiating = state === "initiating";
11543
11702
  const handleOpenChange = (nextOpen) => {
11544
11703
  if (isInitiating && !nextOpen) return;
11545
11704
  onOpenChange(nextOpen);
11546
11705
  };
11547
- return /* @__PURE__ */ (0, import_jsx_runtime157.jsx)(Modal, { open, onOpenChange: handleOpenChange, children: /* @__PURE__ */ (0, import_jsx_runtime157.jsxs)(
11706
+ return /* @__PURE__ */ (0, import_jsx_runtime158.jsx)(Modal, { open, onOpenChange: handleOpenChange, children: /* @__PURE__ */ (0, import_jsx_runtime158.jsxs)(
11548
11707
  Modal.Container,
11549
11708
  {
11550
11709
  maxWidth: "420px",
11551
11710
  "aria-label": modalLabels.ariaLabel,
11552
11711
  classNames: { container: "!rounded-agg-2xl" },
11553
11712
  children: [
11554
- /* @__PURE__ */ (0, import_jsx_runtime157.jsx)("div", { className: "flex h-14 shrink-0 items-center justify-end px-5", children: /* @__PURE__ */ (0, import_jsx_runtime157.jsx)(
11555
- Dialog7.Close,
11713
+ /* @__PURE__ */ (0, import_jsx_runtime158.jsx)("div", { className: "flex h-14 shrink-0 items-center justify-end px-5", children: /* @__PURE__ */ (0, import_jsx_runtime158.jsx)(
11714
+ Dialog8.Close,
11556
11715
  {
11557
11716
  "aria-label": labels.common.close,
11558
11717
  disabled: isInitiating,
11559
11718
  className: "flex size-11 cursor-pointer items-center justify-center rounded-agg-full text-agg-foreground hover:bg-agg-secondary-hover focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-agg-primary disabled:cursor-not-allowed disabled:opacity-50",
11560
- children: /* @__PURE__ */ (0, import_jsx_runtime157.jsx)(Icon, { name: "close", size: "small", "aria-hidden": "true" })
11719
+ children: /* @__PURE__ */ (0, import_jsx_runtime158.jsx)(Icon, { name: "close", size: "small", "aria-hidden": "true" })
11561
11720
  }
11562
11721
  ) }),
11563
- /* @__PURE__ */ (0, import_jsx_runtime157.jsx)(Modal.Body, { classNames: { root: "!px-8 !pb-9 !pt-0" }, children: state === "success" ? /* @__PURE__ */ (0, import_jsx_runtime157.jsxs)(
11722
+ /* @__PURE__ */ (0, import_jsx_runtime158.jsx)(Modal.Body, { classNames: { root: "!px-8 !pb-9 !pt-0" }, children: state === "success" ? /* @__PURE__ */ (0, import_jsx_runtime158.jsxs)(
11564
11723
  "div",
11565
11724
  {
11566
11725
  className: "flex flex-col items-center gap-6 text-center",
11567
11726
  role: "status",
11568
11727
  "aria-live": "polite",
11569
11728
  children: [
11570
- /* @__PURE__ */ (0, import_jsx_runtime157.jsx)("div", { className: "flex size-12 items-center justify-center rounded-agg-full border border-agg-success bg-agg-success/10 text-agg-success", children: /* @__PURE__ */ (0, import_jsx_runtime157.jsx)(Icon, { name: "success-check", className: "size-5", "aria-hidden": "true" }) }),
11571
- /* @__PURE__ */ (0, import_jsx_runtime157.jsxs)("div", { className: "flex flex-col items-center gap-2", children: [
11572
- /* @__PURE__ */ (0, import_jsx_runtime157.jsx)(Dialog7.Title, { children: /* @__PURE__ */ (0, import_jsx_runtime157.jsx)(Typography, { as: "span", variant: "body-large-strong", children: modalLabels.successTitle }) }),
11573
- /* @__PURE__ */ (0, import_jsx_runtime157.jsx)(Dialog7.Description, { children: /* @__PURE__ */ (0, import_jsx_runtime157.jsx)(Typography, { as: "span", variant: "label", className: "text-pretty text-agg-foreground", children: modalLabels.successDescription }) })
11729
+ /* @__PURE__ */ (0, import_jsx_runtime158.jsx)("div", { className: "flex size-12 items-center justify-center rounded-agg-full border border-agg-success bg-agg-success/10 text-agg-success", children: /* @__PURE__ */ (0, import_jsx_runtime158.jsx)(Icon, { name: "success-check", className: "size-5", "aria-hidden": "true" }) }),
11730
+ /* @__PURE__ */ (0, import_jsx_runtime158.jsxs)("div", { className: "flex flex-col items-center gap-2", children: [
11731
+ /* @__PURE__ */ (0, import_jsx_runtime158.jsx)(Dialog8.Title, { children: /* @__PURE__ */ (0, import_jsx_runtime158.jsx)(Typography, { as: "span", variant: "body-large-strong", children: modalLabels.successTitle }) }),
11732
+ /* @__PURE__ */ (0, import_jsx_runtime158.jsx)(Dialog8.Description, { children: /* @__PURE__ */ (0, import_jsx_runtime158.jsx)(Typography, { as: "span", variant: "label", className: "text-pretty text-agg-foreground", children: modalLabels.successDescription }) })
11574
11733
  ] }),
11575
- /* @__PURE__ */ (0, import_jsx_runtime157.jsx)(Button, { variant: "secondary", size: "large", onClick: () => handleOpenChange(false), children: modalLabels.done })
11734
+ /* @__PURE__ */ (0, import_jsx_runtime158.jsx)(Button, { variant: "secondary", size: "large", onClick: () => handleOpenChange(false), children: modalLabels.done })
11576
11735
  ]
11577
11736
  }
11578
- ) : /* @__PURE__ */ (0, import_jsx_runtime157.jsxs)("div", { className: "flex flex-col items-center gap-6 text-center", children: [
11579
- /* @__PURE__ */ (0, import_jsx_runtime157.jsx)(
11737
+ ) : /* @__PURE__ */ (0, import_jsx_runtime158.jsxs)("div", { className: "flex flex-col items-center gap-6 text-center", children: [
11738
+ /* @__PURE__ */ (0, import_jsx_runtime158.jsx)(
11580
11739
  Icon,
11581
11740
  {
11582
11741
  name: "user-trust",
@@ -11584,11 +11743,11 @@ var SharedKycModal = ({
11584
11743
  "aria-hidden": "true"
11585
11744
  }
11586
11745
  ),
11587
- /* @__PURE__ */ (0, import_jsx_runtime157.jsxs)("div", { className: "flex flex-col items-center gap-2", children: [
11588
- /* @__PURE__ */ (0, import_jsx_runtime157.jsx)(Dialog7.Title, { children: /* @__PURE__ */ (0, import_jsx_runtime157.jsx)(Typography, { as: "span", variant: "body-large-strong", children: state === "pending" ? modalLabels.pendingTitle : modalLabels.title }) }),
11589
- /* @__PURE__ */ (0, import_jsx_runtime157.jsx)(Dialog7.Description, { children: /* @__PURE__ */ (0, import_jsx_runtime157.jsx)(Typography, { as: "span", variant: "label", className: "text-pretty text-agg-foreground", children: state === "pending" ? modalLabels.pendingDescription : modalLabels.freeDescription }) })
11746
+ /* @__PURE__ */ (0, import_jsx_runtime158.jsxs)("div", { className: "flex flex-col items-center gap-2", children: [
11747
+ /* @__PURE__ */ (0, import_jsx_runtime158.jsx)(Dialog8.Title, { children: /* @__PURE__ */ (0, import_jsx_runtime158.jsx)(Typography, { as: "span", variant: "body-large-strong", children: state === "pending" ? modalLabels.pendingTitle : modalLabels.title }) }),
11748
+ /* @__PURE__ */ (0, import_jsx_runtime158.jsx)(Dialog8.Description, { children: /* @__PURE__ */ (0, import_jsx_runtime158.jsx)(Typography, { as: "span", variant: "label", className: "text-pretty text-agg-foreground", children: state === "pending" ? modalLabels.pendingDescription : modalLabels.freeDescription }) })
11590
11749
  ] }),
11591
- state === "error" || state === "pending" && errorMessage ? /* @__PURE__ */ (0, import_jsx_runtime157.jsx)(
11750
+ state === "error" || state === "pending" && errorMessage ? /* @__PURE__ */ (0, import_jsx_runtime158.jsx)(
11592
11751
  InlineAlert,
11593
11752
  {
11594
11753
  tone: "error",
@@ -11596,8 +11755,8 @@ var SharedKycModal = ({
11596
11755
  message: errorMessage || modalLabels.error
11597
11756
  }
11598
11757
  ) : null,
11599
- /* @__PURE__ */ (0, import_jsx_runtime157.jsxs)("div", { className: "flex flex-col items-center gap-4", children: [
11600
- /* @__PURE__ */ (0, import_jsx_runtime157.jsx)(
11758
+ /* @__PURE__ */ (0, import_jsx_runtime158.jsxs)("div", { className: "flex flex-col items-center gap-4", children: [
11759
+ /* @__PURE__ */ (0, import_jsx_runtime158.jsx)(
11601
11760
  Button,
11602
11761
  {
11603
11762
  variant: "primary",
@@ -11609,7 +11768,7 @@ var SharedKycModal = ({
11609
11768
  children: state === "pending" ? modalLabels.checkStatus : modalLabels.startVerification
11610
11769
  }
11611
11770
  ),
11612
- /* @__PURE__ */ (0, import_jsx_runtime157.jsx)(
11771
+ /* @__PURE__ */ (0, import_jsx_runtime158.jsx)(
11613
11772
  Button,
11614
11773
  {
11615
11774
  variant: "tertiary",
@@ -11631,6 +11790,7 @@ SharedKycModal.displayName = "SharedKycModal";
11631
11790
  CARD_NETWORK_OPTIONS,
11632
11791
  ConnectAccountsStep,
11633
11792
  ConnectKalshiModal,
11793
+ ConnectNovigModal,
11634
11794
  ConnectOnchainModal,
11635
11795
  ConnectProphetxModal,
11636
11796
  DepositModal,