@velora-dex/widget 0.1.0-rc.0 → 0.1.0-rc.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (90) hide show
  1. package/dist/components/ui/drawer.js +1 -1
  2. package/dist/components/ui/drawer.js.map +1 -1
  3. package/dist/components/web3/providers.d.ts +3 -0
  4. package/dist/components/web3/providers.d.ts.map +1 -1
  5. package/dist/components/web3/providers.js +18 -1
  6. package/dist/components/web3/providers.js.map +1 -1
  7. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenCloud/tokens.js +1 -1
  8. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenCloud/tokens.js.map +1 -1
  9. package/dist/components/widget/Drawer/Overlay.d.ts +9 -0
  10. package/dist/components/widget/Drawer/Overlay.d.ts.map +1 -0
  11. package/dist/components/widget/Drawer/Overlay.js +62 -0
  12. package/dist/components/widget/Drawer/Overlay.js.map +1 -0
  13. package/dist/components/widget/Drawer/index.d.ts.map +1 -1
  14. package/dist/components/widget/Drawer/index.js +2 -1
  15. package/dist/components/widget/Drawer/index.js.map +1 -1
  16. package/dist/components/widget/Drawer/state/useDrawerControls.d.ts +3 -0
  17. package/dist/components/widget/Drawer/state/useDrawerControls.d.ts.map +1 -1
  18. package/dist/components/widget/Drawer/state/useDrawerControls.js +1 -1
  19. package/dist/components/widget/Drawer/state/useDrawerControls.js.map +1 -1
  20. package/dist/components/widget/ReceiverAddress/state/subscriptions.d.ts.map +1 -1
  21. package/dist/components/widget/ReceiverAddress/state/subscriptions.js +1 -2
  22. package/dist/components/widget/ReceiverAddress/state/subscriptions.js.map +1 -1
  23. package/dist/components/widget/TradeOverview/TradeComplete/utils.js +1 -1
  24. package/dist/components/widget/TradeOverview/TradeComplete/utils.js.map +1 -1
  25. package/dist/core/across/utils.d.ts.map +1 -1
  26. package/dist/core/across/utils.js +1 -2
  27. package/dist/core/across/utils.js.map +1 -1
  28. package/dist/core/index.d.ts.map +1 -1
  29. package/dist/core/index.js +93 -85
  30. package/dist/core/index.js.map +1 -1
  31. package/dist/core/inputs/hooks/useTokenToInputProps.js +1 -4
  32. package/dist/core/inputs/hooks/useTokenToInputProps.js.map +1 -1
  33. package/dist/core/inputs/state/selectedTokenActionsAtom.d.ts.map +1 -1
  34. package/dist/core/inputs/state/selectedTokenActionsAtom.js +2 -2
  35. package/dist/core/inputs/state/selectedTokenActionsAtom.js.map +1 -1
  36. package/dist/core/inputs/state/store.d.ts +6 -0
  37. package/dist/core/inputs/state/store.d.ts.map +1 -0
  38. package/dist/core/inputs/state/store.js +6 -0
  39. package/dist/core/inputs/state/store.js.map +1 -0
  40. package/dist/core/logger.d.ts.map +1 -1
  41. package/dist/core/logger.js +4 -5
  42. package/dist/core/logger.js.map +1 -1
  43. package/dist/core/swapDetails/useSwapDetailsListProps.d.ts.map +1 -1
  44. package/dist/core/swapDetails/useSwapDetailsListProps.js +0 -1
  45. package/dist/core/swapDetails/useSwapDetailsListProps.js.map +1 -1
  46. package/dist/core/swapDetails/youGet.d.ts +1 -3
  47. package/dist/core/swapDetails/youGet.d.ts.map +1 -1
  48. package/dist/core/swapDetails/youGet.js +1 -3
  49. package/dist/core/swapDetails/youGet.js.map +1 -1
  50. package/dist/crosschain_token_list.json +3230 -0
  51. package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.d.ts +3 -2
  52. package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.d.ts.map +1 -1
  53. package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.js.map +1 -1
  54. package/dist/hooks/swap/prices/delta/orders/utils.d.ts +6 -6
  55. package/dist/hooks/swap/prices/delta/orders/utils.d.ts.map +1 -1
  56. package/dist/hooks/swap/prices/delta/orders/utils.js +3 -3
  57. package/dist/hooks/swap/prices/delta/orders/utils.js.map +1 -1
  58. package/dist/hooks/swap/prices/delta/queries/useDeltaOrders.d.ts +2 -1
  59. package/dist/hooks/swap/prices/delta/queries/useDeltaOrders.d.ts.map +1 -1
  60. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.d.ts +2 -1
  61. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.d.ts.map +1 -1
  62. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.js +5 -2
  63. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.js.map +1 -1
  64. package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts +4 -4
  65. package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts.map +1 -1
  66. package/dist/hooks/swap/tradeFlow/useDeltaFlow.js.map +1 -1
  67. package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.d.ts.map +1 -1
  68. package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.js +1 -1
  69. package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.js.map +1 -1
  70. package/dist/lib/constants/index.d.ts +1 -1
  71. package/dist/lib/constants/index.d.ts.map +1 -1
  72. package/dist/lib/constants/index.js +1 -1
  73. package/dist/lib/constants/index.js.map +1 -1
  74. package/dist/lib/utils/price.d.ts +2 -6
  75. package/dist/lib/utils/price.d.ts.map +1 -1
  76. package/dist/lib/utils/price.js +6 -13
  77. package/dist/lib/utils/price.js.map +1 -1
  78. package/dist/lib/utils/toasts.d.ts +2 -2
  79. package/dist/lib/utils/toasts.d.ts.map +1 -1
  80. package/dist/lib/utils/toasts.js.map +1 -1
  81. package/dist/lib/web3/privy/config.js +1 -1
  82. package/dist/lib/web3/wagmi/config.js +1 -1
  83. package/dist/styles.css +5 -5
  84. package/dist/tokens/lists/lists.json.d.ts +84 -2
  85. package/dist/tokens/lists/lists.json.js +104 -2
  86. package/dist/tokens/lists/lists.json.js.map +1 -1
  87. package/dist/tokens/lists/state/observer.js +2 -2
  88. package/dist/tokens/lists/state/observer.js.map +1 -1
  89. package/dist/tokens/lists/utils.js +1 -1
  90. package/package.json +2 -2
@@ -136,7 +136,7 @@ const DrawerContent = React.forwardRef((t0, ref) => {
136
136
  }
137
137
  let t2;
138
138
  if ($[5] !== className) {
139
- t2 = cn("group/drawer-content bg-background fixed z-50 flex h-auto flex-col", "data-[vaul-drawer-direction=top]:inset-x-0 data-[vaul-drawer-direction=top]:top-0 data-[vaul-drawer-direction=top]:mb-24 data-[vaul-drawer-direction=top]:max-h-[80vh] data-[vaul-drawer-direction=top]:rounded-b-lg data-[vaul-drawer-direction=top]:border-b", "data-[vaul-drawer-direction=bottom]:inset-x-0 data-[vaul-drawer-direction=bottom]:bottom-0 data-[vaul-drawer-direction=bottom]:mt-24 data-[vaul-drawer-direction=bottom]:max-h-[80vh] data-[vaul-drawer-direction=bottom]:rounded-xxl data-[vaul-drawer-direction=bottom]:border", "data-[vaul-drawer-direction=right]:inset-y-0 data-[vaul-drawer-direction=right]:right-0 data-[vaul-drawer-direction=right]:w-3/4 data-[vaul-drawer-direction=right]:border-l data-[vaul-drawer-direction=right]:sm:max-w-sm", "data-[vaul-drawer-direction=left]:inset-y-0 data-[vaul-drawer-direction=left]:left-0 data-[vaul-drawer-direction=left]:w-3/4 data-[vaul-drawer-direction=left]:border-r data-[vaul-drawer-direction=left]:sm:max-w-sm", "pt-[24px] px-[24px] pb-[18px] bg-contrast-9 dark:bg-contrast-3 border border-contrast-7 dark:border-contrast-4", "!select-text", className);
139
+ t2 = cn("group/drawer-content bg-background fixed z-50 flex h-auto flex-col", "data-[vaul-drawer-direction=top]:inset-x-0 data-[vaul-drawer-direction=top]:top-0 data-[vaul-drawer-direction=top]:mb-24 data-[vaul-drawer-direction=top]:max-h-[100%] data-[vaul-drawer-direction=top]:rounded-b-lg data-[vaul-drawer-direction=top]:border-b", "data-[vaul-drawer-direction=bottom]:inset-x-0 data-[vaul-drawer-direction=bottom]:bottom-0 data-[vaul-drawer-direction=bottom]:mt-24 data-[vaul-drawer-direction=bottom]:max-h-[100%] data-[vaul-drawer-direction=bottom]:rounded-xxl data-[vaul-drawer-direction=bottom]:border", "data-[vaul-drawer-direction=right]:inset-y-0 data-[vaul-drawer-direction=right]:right-0 data-[vaul-drawer-direction=right]:w-3/4 data-[vaul-drawer-direction=right]:border-l data-[vaul-drawer-direction=right]:sm:max-w-sm", "data-[vaul-drawer-direction=left]:inset-y-0 data-[vaul-drawer-direction=left]:left-0 data-[vaul-drawer-direction=left]:w-3/4 data-[vaul-drawer-direction=left]:border-r data-[vaul-drawer-direction=left]:sm:max-w-sm", "pt-[24px] px-[24px] pb-[18px] bg-contrast-9 dark:bg-contrast-3 border border-contrast-7 dark:border-contrast-4", "!select-text", className);
140
140
  $[5] = className;
141
141
  $[6] = t2;
142
142
  } else {
@@ -1 +1 @@
1
- {"version":3,"file":"drawer.js","sources":["../../../src/components/ui/drawer.tsx"],"sourcesContent":["import * as React from \"react\";\nimport { Drawer as DrawerPrimitive } from \"vaul\";\n\nimport { cn } from \"@/lib/utils\";\n\nfunction Drawer({\n ...props\n}: React.ComponentProps<typeof DrawerPrimitive.Root>) {\n return <DrawerPrimitive.Root data-slot=\"drawer\" {...props} />;\n}\n\nfunction DrawerTrigger({\n ...props\n}: React.ComponentProps<typeof DrawerPrimitive.Trigger>) {\n return <DrawerPrimitive.Trigger data-slot=\"drawer-trigger\" {...props} />;\n}\n\nfunction DrawerPortal({\n ...props\n}: React.ComponentProps<typeof DrawerPrimitive.Portal>) {\n return <DrawerPrimitive.Portal data-slot=\"drawer-portal\" {...props} />;\n}\n\nfunction DrawerClose({\n ...props\n}: React.ComponentProps<typeof DrawerPrimitive.Close>) {\n return <DrawerPrimitive.Close data-slot=\"drawer-close\" {...props} />;\n}\n\nconst DrawerOverlay = React.forwardRef<\n React.ComponentRef<typeof DrawerPrimitive.Overlay>,\n React.ComponentProps<typeof DrawerPrimitive.Overlay>\n>(({ className, ...props }, ref) => {\n return (\n <DrawerPrimitive.Overlay\n ref={ref}\n data-slot=\"drawer-overlay\"\n className={cn(\n // \"data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50\",\n className\n )}\n {...props}\n />\n );\n});\n\nDrawerOverlay.displayName = \"DrawerOverlay\";\n\nconst DrawerContent = React.forwardRef<\n React.ComponentRef<typeof DrawerPrimitive.Content>,\n React.ComponentProps<typeof DrawerPrimitive.Content>\n>(({ className, children, ...props }, ref) => {\n return (\n <DrawerPortal data-slot=\"drawer-portal\">\n <DrawerOverlay />\n <DrawerPrimitive.Content\n ref={ref}\n data-slot=\"drawer-content\"\n className={cn(\n \"group/drawer-content bg-background fixed z-50 flex h-auto flex-col\",\n \"data-[vaul-drawer-direction=top]:inset-x-0 data-[vaul-drawer-direction=top]:top-0 data-[vaul-drawer-direction=top]:mb-24 data-[vaul-drawer-direction=top]:max-h-[80vh] data-[vaul-drawer-direction=top]:rounded-b-lg data-[vaul-drawer-direction=top]:border-b\",\n \"data-[vaul-drawer-direction=bottom]:inset-x-0 data-[vaul-drawer-direction=bottom]:bottom-0 data-[vaul-drawer-direction=bottom]:mt-24 data-[vaul-drawer-direction=bottom]:max-h-[80vh] data-[vaul-drawer-direction=bottom]:rounded-xxl data-[vaul-drawer-direction=bottom]:border\",\n \"data-[vaul-drawer-direction=right]:inset-y-0 data-[vaul-drawer-direction=right]:right-0 data-[vaul-drawer-direction=right]:w-3/4 data-[vaul-drawer-direction=right]:border-l data-[vaul-drawer-direction=right]:sm:max-w-sm\",\n \"data-[vaul-drawer-direction=left]:inset-y-0 data-[vaul-drawer-direction=left]:left-0 data-[vaul-drawer-direction=left]:w-3/4 data-[vaul-drawer-direction=left]:border-r data-[vaul-drawer-direction=left]:sm:max-w-sm\",\n // align with the widget styles\n \"pt-[24px] px-[24px] pb-[18px] bg-contrast-9 dark:bg-contrast-3 border border-contrast-7 dark:border-contrast-4\",\n \"!select-text\",\n className\n )}\n {...props}\n >\n {/* Add this style to show the Drawer handle: \"group-data-[vaul-drawer-direction=bottom]/drawer-content:block\" */}\n <div className=\"bg-muted mx-auto mt-4 hidden h-2 w-[100px] shrink-0 rounded-full\" />\n {children}\n </DrawerPrimitive.Content>\n </DrawerPortal>\n );\n});\n\nDrawerContent.displayName = \"DrawerContent\";\n\nfunction DrawerHeader({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"drawer-header\"\n className={cn(\n \"flex flex-col gap-0.5 py-4 px-6 group-data-[vaul-drawer-direction=bottom]/drawer-content:text-center group-data-[vaul-drawer-direction=top]/drawer-content:text-center md:gap-1.5 md:text-left\",\n className\n )}\n {...props}\n />\n );\n}\n\nfunction DrawerFooter({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"drawer-footer\"\n className={cn(\"mt-auto flex flex-col gap-2 p-4\", className)}\n {...props}\n />\n );\n}\n\nfunction DrawerTitle({\n className,\n ...props\n}: React.ComponentProps<typeof DrawerPrimitive.Title>) {\n return (\n <DrawerPrimitive.Title\n data-slot=\"drawer-title\"\n className={cn(\"text-foreground font-semibold\", className)}\n {...props}\n />\n );\n}\n\nfunction DrawerDescription({\n className,\n ...props\n}: React.ComponentProps<typeof DrawerPrimitive.Description>) {\n return (\n <DrawerPrimitive.Description\n data-slot=\"drawer-description\"\n className={cn(\"text-muted-foreground text-sm\", className)}\n {...props}\n />\n );\n}\n\nexport {\n Drawer,\n DrawerPortal,\n DrawerOverlay,\n DrawerTrigger,\n DrawerClose,\n DrawerContent,\n DrawerHeader,\n DrawerFooter,\n DrawerTitle,\n DrawerDescription,\n};\n"],"names":["Drawer","t0","$","_c","props","t1","DrawerPortal","DrawerClose","DrawerOverlay","React","forwardRef","ref","className","cn","t2","displayName","DrawerContent","children","Symbol","for","t3","t4","DrawerHeader","DrawerTitle","DrawerPrimitive","DrawerDescription"],"mappings":";;;;;;AAKA,SAAAA,OAAAC,EAAAA,EAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,CAAA,CAAA;AAAA,EAAA,IAAAC,KAAAA;AAAA,EAAA,IAAAF,CAAAA,QAAAD,EAAAA,EAAA;AAAgB,IAAA,CAAA;AAAA,MAAA,GAAAG;AAAAA,KAAA,GAAAH,EAAAA;AAEoCC,IAAAA,CAAAA,MAAAD,EAAAA;AAAAC,IAAAA,CAAAA,MAAAE,KAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,KAAAA,GAAAF,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAG,EAAAA;AAAA,EAAA,IAAAH,CAAAA,QAAAE,KAAAA,EAAA;AAC3CC,IAAAA,EAAAA,wCAAgC,WAAA,EAAA,QAAA,EAAQ,GAAKD,KAAAA,EAAK,CAAA;AAAIF,IAAAA,CAAAA,MAAAE,KAAAA;AAAAF,IAAAA,CAAAA,MAAAG,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAH,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAAtDG,EAAAA;AAAsD;AAS/D,SAAAC,aAAAL,EAAAA,EAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,CAAA,CAAA;AAAA,EAAA,IAAAC,KAAAA;AAAA,EAAA,IAAAF,CAAAA,QAAAD,EAAAA,EAAA;AAAsB,IAAA,CAAA;AAAA,MAAA,GAAAG;AAAAA,KAAA,GAAAH,EAAAA;AAEgCC,IAAAA,CAAAA,MAAAD,EAAAA;AAAAC,IAAAA,CAAAA,MAAAE,KAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,KAAAA,GAAAF,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAG,EAAAA;AAAA,EAAA,IAAAH,CAAAA,QAAAE,KAAAA,EAAA;AAC7CC,IAAAA,EAAAA,0CAAkC,WAAA,EAAA,eAAA,EAAe,GAAKD,KAAAA,EAAK,CAAA;AAAIF,IAAAA,CAAAA,MAAAE,KAAAA;AAAAF,IAAAA,CAAAA,MAAAG,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAH,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAA/DG,EAAAA;AAA+D;AAGxE,SAAAE,YAAAN,EAAAA,EAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,CAAA,CAAA;AAAA,EAAA,IAAAC,KAAAA;AAAA,EAAA,IAAAF,CAAAA,QAAAD,EAAAA,EAAA;AAAqB,IAAA,CAAA;AAAA,MAAA,GAAAG;AAAAA,KAAA,GAAAH,EAAAA;AAEgCC,IAAAA,CAAAA,MAAAD,EAAAA;AAAAC,IAAAA,CAAAA,MAAAE,KAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,KAAAA,GAAAF,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAG,EAAAA;AAAA,EAAA,IAAAH,CAAAA,QAAAE,KAAAA,EAAA;AAC5CC,IAAAA,EAAAA,yCAAiC,WAAA,EAAA,cAAA,EAAc,GAAKD,KAAAA,EAAK,CAAA;AAAIF,IAAAA,CAAAA,MAAAE,KAAAA;AAAAF,IAAAA,CAAAA,MAAAG,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAH,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAA7DG,EAAAA;AAA6D;AAGtE,MAAMG,aAAAA,GAAgBC,KAAAA,CAAMC,UAAAA,CAG1B,CAAAT,IAAAU,GAAAA,KAAA;AAAA,EAAA,MAAAT,CAAAA,GAAAC,cAAA,CAAA,CAAA;AAAA,EAAA,IAAAS,SAAAA;AAAA,EAAA,IAAAR,KAAAA;AAAA,EAAA,IAAAF,CAAAA,QAAAD,EAAAA,EAAA;AAAC,IAAA,CAAA;AAAA,MAAAW,SAAAA;AAAAA,MAAA,GAAAR;AAAAA,KAAA,GAAAH,EAAAA;AAAuBC,IAAAA,CAAAA,MAAAD,EAAAA;AAAAC,IAAAA,CAAAA,MAAAU,SAAAA;AAAAV,IAAAA,CAAAA,MAAAE,KAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAQ,IAAAA,SAAAA,GAAAV,EAAA,CAAA,CAAA;AAAAE,IAAAA,KAAAA,GAAAF,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAG,EAAAA;AAAA,EAAA,IAAAH,CAAAA,QAAAU,SAAAA,EAAA;AAKTP,IAAAA,EAAAA,GAAAQ,GAETD,SACF,CAAA;AAACV,IAAAA,CAAAA,MAAAU,SAAAA;AAAAV,IAAAA,CAAAA,MAAAG,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAH,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAY,EAAAA;AAAA,EAAA,IAAAZ,CAAAA,CAAA,CAAA,CAAA,KAAAE,KAAAA,IAAAF,CAAAA,QAAAS,GAAAA,IAAAT,CAAAA,CAAA,CAAA,CAAA,KAAAG,EAAAA,EAAA;AANHS,IAAAA,EAAAA,2CACOH,GAAAA,EACK,aAAA,gBAAA,EACC,SAAA,EAAAN,EAAAA,EAGV,GACGD,KAAAA,EAAK,CAAA;AACTF,IAAAA,CAAAA,MAAAE,KAAAA;AAAAF,IAAAA,CAAAA,MAAAS,GAAAA;AAAAT,IAAAA,CAAAA,MAAAG,EAAAA;AAAAH,IAAAA,CAAAA,MAAAY,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAZ,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OARFY,EAAAA;AAQE,CAEL;AAEDN,aAAAA,CAAcO,WAAAA,GAAc,eAAA;AAE5B,MAAMC,aAAAA,GAAgBP,KAAAA,CAAMC,UAAAA,CAG1B,CAAAT,IAAAU,GAAAA,KAAA;AAAA,EAAA,MAAAT,CAAAA,GAAAC,cAAA,EAAA,CAAA;AAAA,EAAA,IAAAc,QAAAA;AAAA,EAAA,IAAAL,SAAAA;AAAA,EAAA,IAAAR,KAAAA;AAAA,EAAA,IAAAF,CAAAA,QAAAD,EAAAA,EAAA;AAAC,IAAA,CAAA;AAAA,MAAAW,SAAAA;AAAAA,MAAAK,QAAAA;AAAAA,MAAA,GAAAb;AAAAA,KAAA,GAAAH,EAAAA;AAAiCC,IAAAA,CAAAA,MAAAD,EAAAA;AAAAC,IAAAA,CAAAA,MAAAe,QAAAA;AAAAf,IAAAA,CAAAA,MAAAU,SAAAA;AAAAV,IAAAA,CAAAA,MAAAE,KAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAa,IAAAA,QAAAA,GAAAf,EAAA,CAAA,CAAA;AAAAU,IAAAA,SAAAA,GAAAV,EAAA,CAAA,CAAA;AAAAE,IAAAA,KAAAA,GAAAF,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAG,EAAAA;AAAA,EAAA,IAAAH,EAAA,CAAA,CAAA,KAAAgB,MAAAA,CAAAC,GAAAA,CAAA,2BAAA,CAAA,EAAA;AAG9Bd,IAAAA,EAAAA,uBAAC,aAAA,EAAA,EAAa,CAAA;AAAGH,IAAAA,CAAAA,MAAAG,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAH,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAY,EAAAA;AAAA,EAAA,IAAAZ,CAAAA,QAAAU,SAAAA,EAAA;AAIJE,IAAAA,EAAAA,GAAAD,EAAAA,CACT,sEACA,gQAAA,EACA,kRAAA,EACA,+NACA,uNAAA,EAEA,gHAAA,EACA,gBACAD,SACF,CAAA;AAACV,IAAAA,CAAAA,MAAAU,SAAAA;AAAAV,IAAAA,CAAAA,MAAAY,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAZ,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAkB,EAAAA;AAAA,EAAA,IAAAlB,EAAA,CAAA,CAAA,KAAAgB,MAAAA,CAAAC,GAAAA,CAAA,2BAAA,CAAA,EAAA;AAIDC,IAAAA,EAAAA,mBAAA,GAAA,CAAA,KAAA,EAAA,EAAe,SAAA,EAAA,kEAAA,EAAkE,CAAA;AAAGlB,IAAAA,CAAAA,MAAAkB,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAlB,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAmB,EAAAA;AAAA,EAAA,IAAAnB,CAAAA,CAAA,CAAA,CAAA,KAAAe,QAAAA,IAAAf,EAAA,CAAA,CAAA,KAAAE,KAAAA,IAAAF,CAAAA,CAAA,EAAA,CAAA,KAAAS,GAAAA,IAAAT,CAAAA,SAAAY,EAAAA,EAAA;AAnBxFO,IAAAA,EAAAA,wBAAC,YAAA,EAAA,EAAuB,WAAA,EAAA,eAAA,EACtBhB,QAAAA,EAAAA;AAAAA,MAAAA,EAAAA;AAAAA,sBACA,IAAA,qBACOM,GAAAA,EACK,aAAA,gBAAA,EACC,SAAA,EAAAG,EAAAA,KAWPV,KAAAA,EAGJgB,QAAAA,EAAAA;AAAAA,QAAAA,EAAAA;AAAAA,QACCH;AAAAA,OAAAA,EACH;AAAA,KAAA,EACF,CAAA;AAAef,IAAAA,CAAAA,MAAAe,QAAAA;AAAAf,IAAAA,CAAAA,MAAAE,KAAAA;AAAAF,IAAAA,CAAAA,OAAAS,GAAAA;AAAAT,IAAAA,CAAAA,OAAAY,EAAAA;AAAAZ,IAAAA,CAAAA,OAAAmB,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAnB,EAAA,EAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAtBfmB,EAAAA;AAsBe,CAElB;AAEDL,aAAAA,CAAcD,WAAAA,GAAc,eAAA;AAE5B,SAAAO,aAAArB,EAAAA,EAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,CAAA,CAAA;AAAA,EAAA,IAAAS,SAAAA;AAAA,EAAA,IAAAR,KAAAA;AAAA,EAAA,IAAAF,CAAAA,QAAAD,EAAAA,EAAA;AAAsB,IAAA,CAAA;AAAA,MAAAW,SAAAA;AAAAA,MAAA,GAAAR;AAAAA,KAAA,GAAAH,EAAAA;AAAoDC,IAAAA,CAAAA,MAAAD,EAAAA;AAAAC,IAAAA,CAAAA,MAAAU,SAAAA;AAAAV,IAAAA,CAAAA,MAAAE,KAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAQ,IAAAA,SAAAA,GAAAV,EAAA,CAAA,CAAA;AAAAE,IAAAA,KAAAA,GAAAF,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAG,EAAAA;AAAA,EAAA,IAAAH,CAAAA,QAAAU,SAAAA,EAAA;AAIzDP,IAAAA,EAAAA,GAAAQ,EAAAA,CACT,kMACAD,SACF,CAAA;AAACV,IAAAA,CAAAA,MAAAU,SAAAA;AAAAV,IAAAA,CAAAA,MAAAG,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAH,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAY,EAAAA;AAAA,EAAA,IAAAZ,EAAA,CAAA,CAAA,KAAAE,SAAAF,CAAAA,QAAAG,EAAAA,EAAA;AALHS,IAAAA,EAAAA,uBAAA,KAAA,EAAA,EACY,WAAA,EAAA,iBACC,SAAA,EAAAT,EAAAA,EAGV,GACGD,KAAAA,EAAK,CAAA;AACTF,IAAAA,CAAAA,MAAAE,KAAAA;AAAAF,IAAAA,CAAAA,MAAAG,EAAAA;AAAAH,IAAAA,CAAAA,MAAAY,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAZ,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAPFY,EAAAA;AAOE;AAcN,SAAAS,YAAAtB,EAAAA,EAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,CAAA,CAAA;AAAA,EAAA,IAAAS,SAAAA;AAAA,EAAA,IAAAR,KAAAA;AAAA,EAAA,IAAAF,CAAAA,QAAAD,EAAAA,EAAA;AAAqB,IAAA,CAAA;AAAA,MAAAW,SAAAA;AAAAA,MAAA,GAAAR;AAAAA,KAAA,GAAAH,EAAAA;AAGgCC,IAAAA,CAAAA,MAAAD,EAAAA;AAAAC,IAAAA,CAAAA,MAAAU,SAAAA;AAAAV,IAAAA,CAAAA,MAAAE,KAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAQ,IAAAA,SAAAA,GAAAV,EAAA,CAAA,CAAA;AAAAE,IAAAA,KAAAA,GAAAF,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAG,EAAAA;AAAA,EAAA,IAAAH,CAAAA,QAAAU,SAAAA,EAAA;AAIpCP,IAAAA,EAAAA,GAAAQ,EAAAA,CAAG,iCAAiCD,SAAS,CAAA;AAACV,IAAAA,CAAAA,MAAAU,SAAAA;AAAAV,IAAAA,CAAAA,MAAAG,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAH,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAY,EAAAA;AAAA,EAAA,IAAAZ,EAAA,CAAA,CAAA,KAAAE,SAAAF,CAAAA,QAAAG,EAAAA,EAAA;AAF3DS,IAAAA,EAAAA,mBAAA,GAAA,CAAAU,SAAA,KAAA,EAAA,EACY,aAAA,cAAA,EACC,SAAA,EAAAnB,EAAAA,EAA8C,GACrDD,KAAAA,EAAK,CAAA;AACTF,IAAAA,CAAAA,MAAAE,KAAAA;AAAAF,IAAAA,CAAAA,MAAAG,EAAAA;AAAAH,IAAAA,CAAAA,MAAAY,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAZ,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAJFY,EAAAA;AAIE;AAIN,SAAAW,kBAAAxB,EAAAA,EAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,CAAA,CAAA;AAAA,EAAA,IAAAS,SAAAA;AAAA,EAAA,IAAAR,KAAAA;AAAA,EAAA,IAAAF,CAAAA,QAAAD,EAAAA,EAAA;AAA2B,IAAA,CAAA;AAAA,MAAAW,SAAAA;AAAAA,MAAA,GAAAR;AAAAA,KAAA,GAAAH,EAAAA;AAGgCC,IAAAA,CAAAA,MAAAD,EAAAA;AAAAC,IAAAA,CAAAA,MAAAU,SAAAA;AAAAV,IAAAA,CAAAA,MAAAE,KAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAQ,IAAAA,SAAAA,GAAAV,EAAA,CAAA,CAAA;AAAAE,IAAAA,KAAAA,GAAAF,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAG,EAAAA;AAAA,EAAA,IAAAH,CAAAA,QAAAU,SAAAA,EAAA;AAI1CP,IAAAA,EAAAA,GAAAQ,EAAAA,CAAG,iCAAiCD,SAAS,CAAA;AAACV,IAAAA,CAAAA,MAAAU,SAAAA;AAAAV,IAAAA,CAAAA,MAAAG,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAH,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAY,EAAAA;AAAA,EAAA,IAAAZ,EAAA,CAAA,CAAA,KAAAE,SAAAF,CAAAA,QAAAG,EAAAA,EAAA;AAF3DS,IAAAA,EAAAA,mBAAA,GAAA,CAAAU,SAAA,WAAA,EAAA,EACY,aAAA,oBAAA,EACC,SAAA,EAAAnB,EAAAA,EAA8C,GACrDD,KAAAA,EAAK,CAAA;AACTF,IAAAA,CAAAA,MAAAE,KAAAA;AAAAF,IAAAA,CAAAA,MAAAG,EAAAA;AAAAH,IAAAA,CAAAA,MAAAY,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAZ,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAJFY,EAAAA;AAIE;;;;"}
1
+ {"version":3,"file":"drawer.js","sources":["../../../src/components/ui/drawer.tsx"],"sourcesContent":["import * as React from \"react\";\nimport { Drawer as DrawerPrimitive } from \"vaul\";\n\nimport { cn } from \"@/lib/utils\";\n\nfunction Drawer({\n ...props\n}: React.ComponentProps<typeof DrawerPrimitive.Root>) {\n return <DrawerPrimitive.Root data-slot=\"drawer\" {...props} />;\n}\n\nfunction DrawerTrigger({\n ...props\n}: React.ComponentProps<typeof DrawerPrimitive.Trigger>) {\n return <DrawerPrimitive.Trigger data-slot=\"drawer-trigger\" {...props} />;\n}\n\nfunction DrawerPortal({\n ...props\n}: React.ComponentProps<typeof DrawerPrimitive.Portal>) {\n return <DrawerPrimitive.Portal data-slot=\"drawer-portal\" {...props} />;\n}\n\nfunction DrawerClose({\n ...props\n}: React.ComponentProps<typeof DrawerPrimitive.Close>) {\n return <DrawerPrimitive.Close data-slot=\"drawer-close\" {...props} />;\n}\n\nconst DrawerOverlay = React.forwardRef<\n React.ComponentRef<typeof DrawerPrimitive.Overlay>,\n React.ComponentProps<typeof DrawerPrimitive.Overlay>\n>(({ className, ...props }, ref) => {\n return (\n <DrawerPrimitive.Overlay\n ref={ref}\n data-slot=\"drawer-overlay\"\n className={cn(\n // \"data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50\",\n className\n )}\n {...props}\n />\n );\n});\n\nDrawerOverlay.displayName = \"DrawerOverlay\";\n\nconst DrawerContent = React.forwardRef<\n React.ComponentRef<typeof DrawerPrimitive.Content>,\n React.ComponentProps<typeof DrawerPrimitive.Content>\n>(({ className, children, ...props }, ref) => {\n return (\n <DrawerPortal data-slot=\"drawer-portal\">\n <DrawerOverlay />\n <DrawerPrimitive.Content\n ref={ref}\n data-slot=\"drawer-content\"\n className={cn(\n \"group/drawer-content bg-background fixed z-50 flex h-auto flex-col\",\n \"data-[vaul-drawer-direction=top]:inset-x-0 data-[vaul-drawer-direction=top]:top-0 data-[vaul-drawer-direction=top]:mb-24 data-[vaul-drawer-direction=top]:max-h-[100%] data-[vaul-drawer-direction=top]:rounded-b-lg data-[vaul-drawer-direction=top]:border-b\",\n \"data-[vaul-drawer-direction=bottom]:inset-x-0 data-[vaul-drawer-direction=bottom]:bottom-0 data-[vaul-drawer-direction=bottom]:mt-24 data-[vaul-drawer-direction=bottom]:max-h-[100%] data-[vaul-drawer-direction=bottom]:rounded-xxl data-[vaul-drawer-direction=bottom]:border\",\n \"data-[vaul-drawer-direction=right]:inset-y-0 data-[vaul-drawer-direction=right]:right-0 data-[vaul-drawer-direction=right]:w-3/4 data-[vaul-drawer-direction=right]:border-l data-[vaul-drawer-direction=right]:sm:max-w-sm\",\n \"data-[vaul-drawer-direction=left]:inset-y-0 data-[vaul-drawer-direction=left]:left-0 data-[vaul-drawer-direction=left]:w-3/4 data-[vaul-drawer-direction=left]:border-r data-[vaul-drawer-direction=left]:sm:max-w-sm\",\n // align with the widget styles\n \"pt-[24px] px-[24px] pb-[18px] bg-contrast-9 dark:bg-contrast-3 border border-contrast-7 dark:border-contrast-4\",\n \"!select-text\",\n className\n )}\n {...props}\n >\n {/* Add this style to show the Drawer handle: \"group-data-[vaul-drawer-direction=bottom]/drawer-content:block\" */}\n <div className=\"bg-muted mx-auto mt-4 hidden h-2 w-[100px] shrink-0 rounded-full\" />\n {children}\n </DrawerPrimitive.Content>\n </DrawerPortal>\n );\n});\n\nDrawerContent.displayName = \"DrawerContent\";\n\nfunction DrawerHeader({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"drawer-header\"\n className={cn(\n \"flex flex-col gap-0.5 py-4 px-6 group-data-[vaul-drawer-direction=bottom]/drawer-content:text-center group-data-[vaul-drawer-direction=top]/drawer-content:text-center md:gap-1.5 md:text-left\",\n className\n )}\n {...props}\n />\n );\n}\n\nfunction DrawerFooter({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"drawer-footer\"\n className={cn(\"mt-auto flex flex-col gap-2 p-4\", className)}\n {...props}\n />\n );\n}\n\nfunction DrawerTitle({\n className,\n ...props\n}: React.ComponentProps<typeof DrawerPrimitive.Title>) {\n return (\n <DrawerPrimitive.Title\n data-slot=\"drawer-title\"\n className={cn(\"text-foreground font-semibold\", className)}\n {...props}\n />\n );\n}\n\nfunction DrawerDescription({\n className,\n ...props\n}: React.ComponentProps<typeof DrawerPrimitive.Description>) {\n return (\n <DrawerPrimitive.Description\n data-slot=\"drawer-description\"\n className={cn(\"text-muted-foreground text-sm\", className)}\n {...props}\n />\n );\n}\n\nexport {\n Drawer,\n DrawerPortal,\n DrawerOverlay,\n DrawerTrigger,\n DrawerClose,\n DrawerContent,\n DrawerHeader,\n DrawerFooter,\n DrawerTitle,\n DrawerDescription,\n};\n"],"names":["Drawer","t0","$","_c","props","t1","DrawerPortal","DrawerClose","DrawerOverlay","React","forwardRef","ref","className","cn","t2","displayName","DrawerContent","children","Symbol","for","t3","t4","DrawerHeader","DrawerTitle","DrawerPrimitive","DrawerDescription"],"mappings":"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"}
@@ -1,4 +1,7 @@
1
1
  export declare function Web3Providers({ children }: {
2
2
  children: React.ReactNode;
3
3
  }): import("react/jsx-runtime").JSX.Element;
4
+ export declare function JotaiProvider({ children }: {
5
+ children: React.ReactNode;
6
+ }): import("react/jsx-runtime").JSX.Element;
4
7
  //# sourceMappingURL=providers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"providers.d.ts","sourceRoot":"","sources":["../../../src/components/web3/providers.tsx"],"names":[],"mappings":"AAMA,wBAAgB,aAAa,CAAC,EAAE,QAAQ,EAAE,EAAE;IAAE,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAAE,2CAaxE"}
1
+ {"version":3,"file":"providers.d.ts","sourceRoot":"","sources":["../../../src/components/web3/providers.tsx"],"names":[],"mappings":"AAQA,wBAAgB,aAAa,CAAC,EAAE,QAAQ,EAAE,EAAE;IAAE,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAAE,2CAaxE;AAED,wBAAgB,aAAa,CAAC,EAAE,QAAQ,EAAE,EAAE;IAAE,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAAE,2CAExE"}
@@ -5,6 +5,8 @@ import { wagmiConfig } from '../../lib/web3/wagmi/config.js';
5
5
  import { WagmiProvider } from 'wagmi';
6
6
  import { queryClient } from '../../lib/queryClient.js';
7
7
  import { useIsDappMode } from '../../core/state/externalProviderAtom.js';
8
+ import { jotaiStore } from '../../core/inputs/state/store.js';
9
+ import { Provider } from 'jotai';
8
10
 
9
11
  function Web3Providers(t0) {
10
12
  const $ = distExports.c(3);
@@ -24,6 +26,21 @@ function Web3Providers(t0) {
24
26
  }
25
27
  return t2;
26
28
  }
29
+ function JotaiProvider(t0) {
30
+ const $ = distExports.c(2);
31
+ const {
32
+ children
33
+ } = t0;
34
+ let t1;
35
+ if ($[0] !== children) {
36
+ t1 = /* @__PURE__ */ jsx(Provider, { store: jotaiStore, children });
37
+ $[0] = children;
38
+ $[1] = t1;
39
+ } else {
40
+ t1 = $[1];
41
+ }
42
+ return t1;
43
+ }
27
44
 
28
- export { Web3Providers };
45
+ export { JotaiProvider, Web3Providers };
29
46
  //# sourceMappingURL=providers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"providers.js","sources":["../../../src/components/web3/providers.tsx"],"sourcesContent":["import { QueryClientProvider } from \"@tanstack/react-query\";\nimport { wagmiConfig } from \"@/lib/web3/wagmi/config\";\nimport { WagmiProvider } from \"wagmi\";\nimport { queryClient } from \"@/lib/queryClient\";\nimport { useIsDappMode } from \"@/core/state/externalProviderAtom\";\n\nexport function Web3Providers({ children }: { children: React.ReactNode }) {\n const isDappMode = useIsDappMode();\n\n return (\n <QueryClientProvider client={queryClient}>\n {/* connect on mount (eager-connect) should be controlled by the App that uses the widget\n otherwise we can get different wallets connected between the App and the widget */}\n <WagmiProvider config={wagmiConfig} reconnectOnMount={!isDappMode}>\n {/* @TODO: check if reconnectOnMount is necessary even with externalProvider in Dapp mode */}\n {children}\n </WagmiProvider>\n </QueryClientProvider>\n );\n}\n"],"names":["Web3Providers","t0","$","_c","children","isDappMode","useIsDappMode","t1","t2","queryClient","wagmiConfig"],"mappings":";;;;;;;;AAMO,SAAAA,cAAAC,EAAAA,EAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,CAAA,CAAA;AAAuB,EAAA,MAAA;AAAA,IAAAC;AAAAA,GAAA,GAAAH,EAAAA;AAC5B,EAAA,MAAAI,aAAmBC,aAAAA,EAAc;AAMyB,EAAA,MAAAC,MAACF,UAAAA;AAAU,EAAA,IAAAG,EAAAA;AAAA,EAAA,IAAAN,EAAA,CAAA,CAAA,KAAAE,YAAAF,CAAAA,QAAAK,EAAAA,EAAA;AAHnEC,IAAAA,EAAAA,mBAAA,GAAA,CAAC,mBAAA,EAAA,EAA4BC,MAAAA,EAAAA,WAAAA,EAG3B,QAAA,kBAAA,GAAA,CAAC,aAAA,EAAA,EAAsBC,MAAAA,EAAAA,WAAAA,EAA+B,gBAAA,EAAAH,EAAAA,EAEnDH,QAAAA,EACH,CAAA,EACF,CAAA;AAAsBF,IAAAA,CAAAA,MAAAE,QAAAA;AAAAF,IAAAA,CAAAA,MAAAK,EAAAA;AAAAL,IAAAA,CAAAA,MAAAM,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAN,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAPtBM,EAAAA;AAOsB;;;;"}
1
+ {"version":3,"file":"providers.js","sources":["../../../src/components/web3/providers.tsx"],"sourcesContent":["import { QueryClientProvider } from \"@tanstack/react-query\";\nimport { wagmiConfig } from \"@/lib/web3/wagmi/config\";\nimport { WagmiProvider } from \"wagmi\";\nimport { queryClient } from \"@/lib/queryClient\";\nimport { useIsDappMode } from \"@/core/state/externalProviderAtom\";\nimport { jotaiStore } from \"@/core/inputs/state/store\";\nimport { Provider } from \"jotai\";\n\nexport function Web3Providers({ children }: { children: React.ReactNode }) {\n const isDappMode = useIsDappMode();\n\n return (\n <QueryClientProvider client={queryClient}>\n {/* connect on mount (eager-connect) should be controlled by the App that uses the widget\n otherwise we can get different wallets connected between the App and the widget */}\n <WagmiProvider config={wagmiConfig} reconnectOnMount={!isDappMode}>\n {/* @TODO: check if reconnectOnMount is necessary even with externalProvider in Dapp mode */}\n {children}\n </WagmiProvider>\n </QueryClientProvider>\n );\n}\n\nexport function JotaiProvider({ children }: { children: React.ReactNode }) {\n return <Provider store={jotaiStore}>{children}</Provider>;\n}\n"],"names":["Web3Providers","t0","$","_c","children","isDappMode","useIsDappMode","t1","t2","queryClient","wagmiConfig","JotaiProvider","jotaiStore"],"mappings":";;;;;;;;;;AAQO,SAAAA,cAAAC,EAAAA,EAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,CAAA,CAAA;AAAuB,EAAA,MAAA;AAAA,IAAAC;AAAAA,GAAA,GAAAH,EAAAA;AAC5B,EAAA,MAAAI,aAAmBC,aAAAA,EAAc;AAMyB,EAAA,MAAAC,MAACF,UAAAA;AAAU,EAAA,IAAAG,EAAAA;AAAA,EAAA,IAAAN,EAAA,CAAA,CAAA,KAAAE,YAAAF,CAAAA,QAAAK,EAAAA,EAAA;AAHnEC,IAAAA,EAAAA,mBAAA,GAAA,CAAC,mBAAA,EAAA,EAA4BC,MAAAA,EAAAA,WAAAA,EAG3B,QAAA,kBAAA,GAAA,CAAC,aAAA,EAAA,EAAsBC,MAAAA,EAAAA,WAAAA,EAA+B,gBAAA,EAAAH,EAAAA,EAEnDH,QAAAA,EACH,CAAA,EACF,CAAA;AAAsBF,IAAAA,CAAAA,MAAAE,QAAAA;AAAAF,IAAAA,CAAAA,MAAAK,EAAAA;AAAAL,IAAAA,CAAAA,MAAAM,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAN,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAPtBM,EAAAA;AAOsB;AAInB,SAAAG,cAAAV,EAAAA,EAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,CAAA,CAAA;AAAuB,EAAA,MAAA;AAAA,IAAAC;AAAAA,GAAA,GAAAH,EAAAA;AAA2C,EAAA,IAAAM,EAAAA;AAAA,EAAA,IAAAL,CAAAA,QAAAE,QAAAA,EAAA;AAChEG,IAAAA,EAAAA,mBAAA,GAAA,CAAC,QAAA,EAAA,EAAgBK,KAAAA,EAAAA,UAAAA,EAAaR,QAAAA,EAAS,CAAA;AAAWF,IAAAA,CAAAA,MAAAE,QAAAA;AAAAF,IAAAA,CAAAA,MAAAK,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAL,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAAlDK,EAAAA;AAAkD;;;;"}
@@ -51,7 +51,7 @@ const chain2Tokens = {
51
51
  ],
52
52
  [polygon.id]: [{
53
53
  ...ETH_TOKEN,
54
- symbol: "MATIC"
54
+ symbol: "POL"
55
55
  }, {
56
56
  address: "0x8f3Cf7ad23Cd3CaDbD9735AFf958023239c6A063",
57
57
  symbol: "DAI"
@@ -1 +1 @@
1
- {"version":3,"file":"tokens.js","sources":["../../../../../../../src/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenCloud/tokens.ts"],"sourcesContent":["import {\n arbitrum,\n avalanche,\n base,\n bsc,\n gnosis,\n mainnet,\n optimism,\n polygon,\n sonic,\n unichain,\n} from \"@/lib/web3/wagmi/supportedChains\";\nimport type { Token } from \"@/tokens/state/types\";\nimport { ETH_ADDRESS } from \"@/tokens/constants\";\n\ntype FrequentlyTradedToken = Required<Pick<Token, \"address\" | \"symbol\">>;\n\nconst ETH_TOKEN: FrequentlyTradedToken = {\n address: ETH_ADDRESS,\n symbol: \"ETH\",\n};\n\n// tokens to display separately for quick access\n// <=6 tokens is the optimal number, takes up 2 rows\nexport const chain2Tokens: Record<number, FrequentlyTradedToken[]> = {\n [mainnet.id]: [\n ETH_TOKEN,\n { address: \"0x6B175474E89094C44Da98b954EedeAC495271d0F\", symbol: \"DAI\" },\n { address: \"0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48\", symbol: \"USDC\" },\n { address: \"0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2\", symbol: \"WETH\" },\n { address: \"0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599\", symbol: \"WBTC\" },\n { address: \"0xdAC17F958D2ee523a2206206994597C13D831ec7\", symbol: \"USDT\" },\n ],\n [bsc.id]: [\n { ...ETH_TOKEN, symbol: \"BNB\" },\n { address: \"0xe9e7CEA3DedcA5984780Bafc599bD69ADd087D56\", symbol: \"BUSD\" },\n // { address: \"0x1AF3F329e8BE154074D8769D1FFa4eE058B1DBc3\", symbol: \"DAI\" },\n { address: \"0x8AC76a51cc950d9822D68b83fE1Ad97B32Cd580d\", symbol: \"USDC\" },\n { address: \"0xbb4CdB9CBd36B01bD1cBaEBF2De08d9173bc095c\", symbol: \"WBNB\" },\n { address: \"0x7130d2A12B9BCbFAe4f2634d864A1Ee1Ce3Ead9c\", symbol: \"BTCB\" },\n { address: \"0x55d398326f99059fF775485246999027B3197955\", symbol: \"USDT\" },\n ],\n [polygon.id]: [\n { ...ETH_TOKEN, symbol: \"MATIC\" },\n { address: \"0x8f3Cf7ad23Cd3CaDbD9735AFf958023239c6A063\", symbol: \"DAI\" },\n { address: \"0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174\", symbol: \"USDC\" },\n { address: \"0x0d500B1d8E8eF31E21C99d1Db9A6444d3ADf1270\", symbol: \"WMATIC\" },\n { address: \"0x1BFD67037B42Cf73acF2047067bd4F2C47D9BfD6\", symbol: \"WBTC\" },\n { address: \"0xc2132D05D31c914a87C6611C10748AEb04B58e8F\", symbol: \"USDT\" },\n ],\n [avalanche.id]: [\n { ...ETH_TOKEN, symbol: \"AVAX\" },\n { address: \"0xB97EF9Ef8734C71904D8002F8b6Bc66Dd9c48a6E\", symbol: \"USDC\" },\n { address: \"0xB31f66AA3C1e785363F0875A1B74E27b85FD66c7\", symbol: \"WAVAX\" },\n { address: \"0x50b7545627a5162F82A992c33b87aDc75187B218\", symbol: \"WBTC.e\" },\n { address: \"0x152b9d0FdC40C096757F570A51E494bd4b943E50\", symbol: \"BTC.b\" },\n { address: \"0x9702230a8ea53601f5cd2dc00fdbc13d4df4a8c7\", symbol: \"USDT\" },\n ],\n [arbitrum.id]: [\n ETH_TOKEN,\n { address: \"0x912CE59144191C1204E64559FE8253a0e49E6548\", symbol: \"ARB\" },\n { address: \"0xFF970A61A04b1cA14834A43f5dE4533eBDDB5CC8\", symbol: \"USDC\" },\n { address: \"0x82aF49447D8a07e3bd95BD0d56f35241523fBab1\", symbol: \"WETH\" },\n { address: \"0x2f2a2543B76A4166549F7aaB2e75Bef0aefC5B0f\", symbol: \"WBTC\" },\n { address: \"0xFd086bC7CD5C481DCC9C85ebE478A1C0b69FCbb9\", symbol: \"USDT\" },\n ],\n [optimism.id]: [\n ETH_TOKEN,\n { address: \"0xDA10009cBd5D07dd0CeCc66161FC93D7c9000da1\", symbol: \"DAI\" },\n { address: \"0x7F5c764cBc14f9669B88837ca1490cCa17c31607\", symbol: \"USDC.e\" },\n { address: \"0x4200000000000000000000000000000000000042\", symbol: \"OP\" },\n { address: \"0x4200000000000000000000000000000000000006\", symbol: \"WETH\" },\n { address: \"0x68f180fcCe6836688e9084f035309E29Bf0A2095\", symbol: \"WBTC\" },\n { address: \"0x94b008aA00579c1307B0EF2c499aD98a8ce58e58\", symbol: \"USDT\" },\n ],\n [base.id]: [\n ETH_TOKEN,\n { address: \"0xd9aaec86b65d86f6a7b5b1b0c42ffa531710b6ca\", symbol: \"USDBC\" },\n { address: \"0x4200000000000000000000000000000000000006\", symbol: \"WETH\" },\n { address: \"0x2ae3f1ec7f1f5012cfeab0185bfc7aa3cf0dec22\", symbol: \"CBETH\" },\n { address: \"0xfa980ced6895ac314e7de34ef1bfae90a5add21b\", symbol: \"PRIME\" },\n ],\n [gnosis.id]: [\n { ...ETH_TOKEN, symbol: \"XDAI\" },\n { address: \"0xDDAfbb505ad214D7b80b1f830fcCc89B60fb7A83\", symbol: \"USDC\" },\n { address: \"0xe91D153E0b41518A2Ce8Dd3D7944Fa863463a97d\", symbol: \"WXDAI\" },\n { address: \"0x6A023CCd1ff6F2045C3309768eAd9E68F978f6e1\", symbol: \"WETH\" },\n { address: \"0x9C58BAcC331c9aa871AFD802DB6379a98e80CEdb\", symbol: \"GNO\" },\n { address: \"0x8e5bBbb09Ed1ebdE8674Cda39A0c169401db4252\", symbol: \"WBTC\" },\n ],\n [sonic.id]: [\n { ...ETH_TOKEN, symbol: \"S\" },\n { address: \"0x29219dd400f2Bf60E5a23d13Be72B486D4038894\", symbol: \"USDC\" },\n { address: \"0x039e2fB66102314Ce7b64Ce5Ce3E5183bc94aD38\", symbol: \"WS\" },\n { address: \"0x6047828dc181963ba44974801FF68e538dA5eaF9\", symbol: \"USDT\" },\n { address: \"0x50c42dEAcD8Fc9773493ED674b675bE577f2634b\", symbol: \"WETH\" },\n ],\n [unichain.id]: [\n ETH_TOKEN,\n { address: \"0x078d782b760474a361dda0af3839290b0ef57ad6\", symbol: \"USDC\" },\n { address: \"0x9151434b16b9763660705744891fa906f660ecc5\", symbol: \"USDT0\" },\n { address: \"0x4200000000000000000000000000000000000006\", symbol: \"WETH\" },\n ],\n};\n"],"names":["ETH_TOKEN","address","ETH_ADDRESS","symbol","chain2Tokens","mainnet","id","bsc","polygon","avalanche","arbitrum","optimism","base","gnosis","sonic","unichain"],"mappings":"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"}
1
+ {"version":3,"file":"tokens.js","sources":["../../../../../../../src/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenCloud/tokens.ts"],"sourcesContent":["import {\n arbitrum,\n avalanche,\n base,\n bsc,\n gnosis,\n mainnet,\n optimism,\n polygon,\n sonic,\n unichain,\n} from \"@/lib/web3/wagmi/supportedChains\";\nimport type { Token } from \"@/tokens/state/types\";\nimport { ETH_ADDRESS } from \"@/tokens/constants\";\n\ntype FrequentlyTradedToken = Required<Pick<Token, \"address\" | \"symbol\">>;\n\nconst ETH_TOKEN: FrequentlyTradedToken = {\n address: ETH_ADDRESS,\n symbol: \"ETH\",\n};\n\n// tokens to display separately for quick access\n// <=6 tokens is the optimal number, takes up 2 rows\nexport const chain2Tokens: Record<number, FrequentlyTradedToken[]> = {\n [mainnet.id]: [\n ETH_TOKEN,\n { address: \"0x6B175474E89094C44Da98b954EedeAC495271d0F\", symbol: \"DAI\" },\n { address: \"0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48\", symbol: \"USDC\" },\n { address: \"0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2\", symbol: \"WETH\" },\n { address: \"0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599\", symbol: \"WBTC\" },\n { address: \"0xdAC17F958D2ee523a2206206994597C13D831ec7\", symbol: \"USDT\" },\n ],\n [bsc.id]: [\n { ...ETH_TOKEN, symbol: \"BNB\" },\n { address: \"0xe9e7CEA3DedcA5984780Bafc599bD69ADd087D56\", symbol: \"BUSD\" },\n // { address: \"0x1AF3F329e8BE154074D8769D1FFa4eE058B1DBc3\", symbol: \"DAI\" },\n { address: \"0x8AC76a51cc950d9822D68b83fE1Ad97B32Cd580d\", symbol: \"USDC\" },\n { address: \"0xbb4CdB9CBd36B01bD1cBaEBF2De08d9173bc095c\", symbol: \"WBNB\" },\n { address: \"0x7130d2A12B9BCbFAe4f2634d864A1Ee1Ce3Ead9c\", symbol: \"BTCB\" },\n { address: \"0x55d398326f99059fF775485246999027B3197955\", symbol: \"USDT\" },\n ],\n [polygon.id]: [\n { ...ETH_TOKEN, symbol: \"POL\" },\n { address: \"0x8f3Cf7ad23Cd3CaDbD9735AFf958023239c6A063\", symbol: \"DAI\" },\n { address: \"0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174\", symbol: \"USDC\" },\n { address: \"0x0d500B1d8E8eF31E21C99d1Db9A6444d3ADf1270\", symbol: \"WMATIC\" },\n { address: \"0x1BFD67037B42Cf73acF2047067bd4F2C47D9BfD6\", symbol: \"WBTC\" },\n { address: \"0xc2132D05D31c914a87C6611C10748AEb04B58e8F\", symbol: \"USDT\" },\n ],\n [avalanche.id]: [\n { ...ETH_TOKEN, symbol: \"AVAX\" },\n { address: \"0xB97EF9Ef8734C71904D8002F8b6Bc66Dd9c48a6E\", symbol: \"USDC\" },\n { address: \"0xB31f66AA3C1e785363F0875A1B74E27b85FD66c7\", symbol: \"WAVAX\" },\n { address: \"0x50b7545627a5162F82A992c33b87aDc75187B218\", symbol: \"WBTC.e\" },\n { address: \"0x152b9d0FdC40C096757F570A51E494bd4b943E50\", symbol: \"BTC.b\" },\n { address: \"0x9702230a8ea53601f5cd2dc00fdbc13d4df4a8c7\", symbol: \"USDT\" },\n ],\n [arbitrum.id]: [\n ETH_TOKEN,\n { address: \"0x912CE59144191C1204E64559FE8253a0e49E6548\", symbol: \"ARB\" },\n { address: \"0xFF970A61A04b1cA14834A43f5dE4533eBDDB5CC8\", symbol: \"USDC\" },\n { address: \"0x82aF49447D8a07e3bd95BD0d56f35241523fBab1\", symbol: \"WETH\" },\n { address: \"0x2f2a2543B76A4166549F7aaB2e75Bef0aefC5B0f\", symbol: \"WBTC\" },\n { address: \"0xFd086bC7CD5C481DCC9C85ebE478A1C0b69FCbb9\", symbol: \"USDT\" },\n ],\n [optimism.id]: [\n ETH_TOKEN,\n { address: \"0xDA10009cBd5D07dd0CeCc66161FC93D7c9000da1\", symbol: \"DAI\" },\n { address: \"0x7F5c764cBc14f9669B88837ca1490cCa17c31607\", symbol: \"USDC.e\" },\n { address: \"0x4200000000000000000000000000000000000042\", symbol: \"OP\" },\n { address: \"0x4200000000000000000000000000000000000006\", symbol: \"WETH\" },\n { address: \"0x68f180fcCe6836688e9084f035309E29Bf0A2095\", symbol: \"WBTC\" },\n { address: \"0x94b008aA00579c1307B0EF2c499aD98a8ce58e58\", symbol: \"USDT\" },\n ],\n [base.id]: [\n ETH_TOKEN,\n { address: \"0xd9aaec86b65d86f6a7b5b1b0c42ffa531710b6ca\", symbol: \"USDBC\" },\n { address: \"0x4200000000000000000000000000000000000006\", symbol: \"WETH\" },\n { address: \"0x2ae3f1ec7f1f5012cfeab0185bfc7aa3cf0dec22\", symbol: \"CBETH\" },\n { address: \"0xfa980ced6895ac314e7de34ef1bfae90a5add21b\", symbol: \"PRIME\" },\n ],\n [gnosis.id]: [\n { ...ETH_TOKEN, symbol: \"XDAI\" },\n { address: \"0xDDAfbb505ad214D7b80b1f830fcCc89B60fb7A83\", symbol: \"USDC\" },\n { address: \"0xe91D153E0b41518A2Ce8Dd3D7944Fa863463a97d\", symbol: \"WXDAI\" },\n { address: \"0x6A023CCd1ff6F2045C3309768eAd9E68F978f6e1\", symbol: \"WETH\" },\n { address: \"0x9C58BAcC331c9aa871AFD802DB6379a98e80CEdb\", symbol: \"GNO\" },\n { address: \"0x8e5bBbb09Ed1ebdE8674Cda39A0c169401db4252\", symbol: \"WBTC\" },\n ],\n [sonic.id]: [\n { ...ETH_TOKEN, symbol: \"S\" },\n { address: \"0x29219dd400f2Bf60E5a23d13Be72B486D4038894\", symbol: \"USDC\" },\n { address: \"0x039e2fB66102314Ce7b64Ce5Ce3E5183bc94aD38\", symbol: \"WS\" },\n { address: \"0x6047828dc181963ba44974801FF68e538dA5eaF9\", symbol: \"USDT\" },\n { address: \"0x50c42dEAcD8Fc9773493ED674b675bE577f2634b\", symbol: \"WETH\" },\n ],\n [unichain.id]: [\n ETH_TOKEN,\n { address: \"0x078d782b760474a361dda0af3839290b0ef57ad6\", symbol: \"USDC\" },\n { address: \"0x9151434b16b9763660705744891fa906f660ecc5\", symbol: \"USDT0\" },\n { address: \"0x4200000000000000000000000000000000000006\", symbol: \"WETH\" },\n ],\n};\n"],"names":["ETH_TOKEN","address","ETH_ADDRESS","symbol","chain2Tokens","mainnet","id","bsc","polygon","avalanche","arbitrum","optimism","base","gnosis","sonic","unichain"],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ type DrawerOverlayProps = {
2
+ open: boolean;
3
+ onClick?: () => void;
4
+ closeDrawerOnClick?: boolean;
5
+ className?: string;
6
+ };
7
+ export declare function InWidgetDrawerOverlay({ open, onClick, closeDrawerOnClick, className, }: DrawerOverlayProps): import("react/jsx-runtime").JSX.Element;
8
+ export {};
9
+ //# sourceMappingURL=Overlay.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Overlay.d.ts","sourceRoot":"","sources":["../../../../src/components/widget/Drawer/Overlay.tsx"],"names":[],"mappings":"AAIA,KAAK,kBAAkB,GAAG;IACxB,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAIF,wBAAgB,qBAAqB,CAAC,EACpC,IAAI,EACJ,OAAO,EACP,kBAAyB,EACzB,SAAS,GACV,EAAE,kBAAkB,2CAuBpB"}
@@ -0,0 +1,62 @@
1
+ import { jsx } from 'react/jsx-runtime';
2
+ import { d as distExports } from '../../../_virtual/index.js';
3
+ import { cn } from '../../../lib/utils/index.js';
4
+ import { openDrawerAtom } from './state/useDrawerControls.js';
5
+ import { useSetAtom } from 'jotai';
6
+
7
+ function InWidgetDrawerOverlay(t0) {
8
+ const $ = distExports.c(12);
9
+ const {
10
+ open,
11
+ onClick,
12
+ closeDrawerOnClick: t1,
13
+ className
14
+ } = t0;
15
+ const closeDrawerOnClick = t1 === void 0 ? true : t1;
16
+ const setOpenDrawer = useSetAtom(openDrawerAtom);
17
+ const t2 = !open;
18
+ const t3 = !open;
19
+ let t4;
20
+ if ($[0] !== className || $[1] !== open || $[2] !== t2 || $[3] !== t3) {
21
+ t4 = cn("absolute inset-0 bg-gray-900 z-10 transition-opacity duration-300 rounded-xxl", {
22
+ "opacity-0": t2,
23
+ "opacity-75": open,
24
+ "pointer-events-none": t3
25
+ }, className);
26
+ $[0] = className;
27
+ $[1] = open;
28
+ $[2] = t2;
29
+ $[3] = t3;
30
+ $[4] = t4;
31
+ } else {
32
+ t4 = $[4];
33
+ }
34
+ let t5;
35
+ if ($[5] !== closeDrawerOnClick || $[6] !== onClick || $[7] !== setOpenDrawer) {
36
+ t5 = () => {
37
+ if (closeDrawerOnClick) {
38
+ setOpenDrawer(null);
39
+ }
40
+ onClick?.();
41
+ };
42
+ $[5] = closeDrawerOnClick;
43
+ $[6] = onClick;
44
+ $[7] = setOpenDrawer;
45
+ $[8] = t5;
46
+ } else {
47
+ t5 = $[8];
48
+ }
49
+ let t6;
50
+ if ($[9] !== t4 || $[10] !== t5) {
51
+ t6 = /* @__PURE__ */ jsx("div", { className: t4, onClick: t5 });
52
+ $[9] = t4;
53
+ $[10] = t5;
54
+ $[11] = t6;
55
+ } else {
56
+ t6 = $[11];
57
+ }
58
+ return t6;
59
+ }
60
+
61
+ export { InWidgetDrawerOverlay };
62
+ //# sourceMappingURL=Overlay.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Overlay.js","sources":["../../../../src/components/widget/Drawer/Overlay.tsx"],"sourcesContent":["import { cn } from \"@/lib/utils\";\nimport { openDrawerAtom } from \"./state/useDrawerControls\";\nimport { useSetAtom } from \"jotai\";\n\ntype DrawerOverlayProps = {\n open: boolean;\n onClick?: () => void;\n closeDrawerOnClick?: boolean;\n className?: string;\n};\n// Used when Partial Drawer is open,\n// darkens the Widget in the background,\n// onClick closes the Partial Drawer\nexport function InWidgetDrawerOverlay({\n open,\n onClick,\n closeDrawerOnClick = true,\n className,\n}: DrawerOverlayProps) {\n const setOpenDrawer = useSetAtom(openDrawerAtom);\n\n return (\n <div\n className={cn(\n \"absolute inset-0 bg-gray-900 z-10 transition-opacity duration-300 rounded-xxl\",\n {\n \"opacity-0\": !open,\n \"opacity-75\": open,\n // allow clicking through when no drawer is open\n \"pointer-events-none\": !open,\n },\n className\n )}\n onClick={() => {\n if (closeDrawerOnClick) {\n setOpenDrawer(null);\n }\n onClick?.();\n }}\n />\n );\n}\n"],"names":["InWidgetDrawerOverlay","t0","$","_c","open","onClick","closeDrawerOnClick","t1","className","undefined","setOpenDrawer","useSetAtom","openDrawerAtom","t2","t3","t4","cn","t5","t6"],"mappings":";;;;;;AAaO,SAAAA,sBAAAC,EAAAA,EAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,EAAA,CAAA;AAA+B,EAAA,MAAA;AAAA,IAAAC,IAAAA;AAAAA,IAAAC,OAAAA;AAAAA,IAAAC,kBAAAA,EAAAC,EAAAA;AAAAA,IAAAC;AAAAA,GAAA,GAAAP,EAAAA;AAGpC,EAAA,MAAAK,kBAAAA,GAAAC,EAAAA,KAAyBE,MAAAA,UAAzBF,EAAAA;AAGA,EAAA,MAAAG,aAAAA,GAAsBC,WAAAC,cAAyB,CAAA;AAO1B,EAAA,MAAAC,MAACT,IAAAA;AAGS,EAAA,MAAAU,MAACV,IAAAA;AAAI,EAAA,IAAAW,EAAAA;AAAA,EAAA,IAAAb,CAAAA,CAAA,CAAA,CAAA,KAAAM,SAAAA,IAAAN,EAAA,CAAA,CAAA,KAAAE,IAAAA,IAAAF,CAAAA,CAAA,CAAA,CAAA,KAAAW,EAAAA,IAAAX,CAAAA,QAAAY,EAAAA,EAAA;AANrBC,IAAAA,EAAAA,GAAAC,GACT,+EAAA,EAA+E;AAAA,MAAA,WAAA,EAEhEH,EAAAA;AAAAA,MAAK,YAAA,EACJT,IAAAA;AAAAA,MAAI,qBAAA,EAEKU;AAAAA,OAEzBN,SACF,CAAA;AAACN,IAAAA,CAAAA,MAAAM,SAAAA;AAAAN,IAAAA,CAAAA,MAAAE,IAAAA;AAAAF,IAAAA,CAAAA,MAAAW,EAAAA;AAAAX,IAAAA,CAAAA,MAAAY,EAAAA;AAAAZ,IAAAA,CAAAA,MAAAa,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAb,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAe,EAAAA;AAAA,EAAA,IAAAf,CAAAA,CAAA,CAAA,CAAA,KAAAI,kBAAAA,IAAAJ,CAAAA,QAAAG,OAAAA,IAAAH,CAAAA,CAAA,CAAA,CAAA,KAAAQ,aAAAA,EAAA;AACQO,IAAAA,EAAAA,GAAAA,MAAA;AAAA,MAAA,IACHX,kBAAAA,EAAkB;AACpBI,QAAAA,aAAAA,KAAkB,CAAA;AAAA,MAAC;AAErBL,MAAAA,OAAAA,IAAO;AAAA,IAAA,CAAA;AACRH,IAAAA,CAAAA,MAAAI,kBAAAA;AAAAJ,IAAAA,CAAAA,MAAAG,OAAAA;AAAAH,IAAAA,CAAAA,MAAAQ,aAAAA;AAAAR,IAAAA,CAAAA,MAAAe,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAf,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAgB,EAAAA;AAAA,EAAA,IAAAhB,EAAA,CAAA,CAAA,KAAAa,MAAAb,CAAAA,SAAAe,EAAAA,EAAA;AAhBHC,IAAAA,EAAAA,mBAAA,GAAA,CAAA,KAAA,EAAA,EACa,SAAA,EAAAH,EAAAA,EAUF,SAAAE,EAAAA,EAKR,CAAA;AACDf,IAAAA,CAAAA,MAAAa,EAAAA;AAAAb,IAAAA,CAAAA,OAAAe,EAAAA;AAAAf,IAAAA,CAAAA,OAAAgB,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAhB,EAAA,EAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAjBFgB,EAAAA;AAiBE;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/widget/Drawer/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,MAAM,EAOP,MAAM,wBAAwB,CAAC;AAIhC,KAAK,qBAAqB,GAAG,KAAK,CAAC,cAAc,CAAC,OAAO,MAAM,CAAC,GAAG;IACjE,IAAI,EAAE,OAAO,CAAC;IACd,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,SAAS,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B,CAAC;AAcF,wBAAgB,gBAAgB,CAAC,EAC/B,QAAQ,EACR,SAAS,EAAE,UAAU,EACrB,KAAK,EACL,WAAW,EACX,eAAe,EACf,WAAmB,EACnB,cAAqB,EAAE,+CAA+C;AACtE,GAAG,KAAK,EACT,EAAE,qBAAqB,2CAwDvB"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/widget/Drawer/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,MAAM,EAOP,MAAM,wBAAwB,CAAC;AAIhC,KAAK,qBAAqB,GAAG,KAAK,CAAC,cAAc,CAAC,OAAO,MAAM,CAAC,GAAG;IACjE,IAAI,EAAE,OAAO,CAAC;IACd,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,SAAS,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B,CAAC;AAsBF,wBAAgB,gBAAgB,CAAC,EAC/B,QAAQ,EACR,SAAS,EAAE,UAAU,EACrB,KAAK,EACL,WAAW,EACX,eAAe,EACf,WAAmB,EACnB,cAAqB,EAAE,+CAA+C;AACtE,GAAG,KAAK,EACT,EAAE,qBAAqB,2CAwDvB"}
@@ -6,6 +6,7 @@ import { XIcon } from 'lucide-react';
6
6
 
7
7
  function isElementVisibleInViewport(element) {
8
8
  const rect = element.getBoundingClientRect();
9
+ console.log("🚀 ~ isElementVisibleInViewport ~ rect:", rect, rect.top <= window.innerHeight && rect.bottom >= 0 && rect.left <= window.innerWidth && rect.right >= 0);
9
10
  return rect.top <= window.innerHeight && rect.bottom >= 0 && rect.left <= window.innerWidth && rect.right >= 0;
10
11
  }
11
12
  function ControlledDrawer(t0) {
@@ -55,7 +56,7 @@ function ControlledDrawer(t0) {
55
56
  let t3;
56
57
  if ($[9] !== props || $[10] !== scrollIntoView) {
57
58
  t3 = scrollIntoView ? (event) => {
58
- if (props.open && isElementVisibleInViewport(event.currentTarget)) {
59
+ if (props.open && !isElementVisibleInViewport(event.currentTarget)) {
59
60
  event.currentTarget.scrollIntoView({
60
61
  behavior: "smooth",
61
62
  block: "nearest",
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../src/components/widget/Drawer/index.tsx"],"sourcesContent":["import {\n Drawer,\n DrawerClose,\n DrawerContent,\n DrawerHeader,\n DrawerTitle,\n DrawerPortal,\n DrawerDescription,\n} from \"@/components/ui/drawer\";\nimport { useContainerAtom } from \"@/core/state/containerAtom\";\nimport { XIcon } from \"lucide-react\";\n\ntype ControlledDrawerProps = React.ComponentProps<typeof Drawer> & {\n open: boolean;\n children?: React.ReactNode;\n container?: HTMLElement | null;\n title?: string;\n description?: string;\n showCloseButton?: boolean;\n scrollIntoView?: boolean;\n};\n\n// Helper function to check if an element is visible in the viewport\nfunction isElementVisibleInViewport(element: HTMLElement): boolean {\n const rect = element.getBoundingClientRect();\n\n return (\n rect.top <= window.innerHeight &&\n rect.bottom >= 0 &&\n rect.left <= window.innerWidth &&\n rect.right >= 0\n );\n}\n\nexport function ControlledDrawer({\n children,\n container: _container,\n title,\n description,\n showCloseButton,\n dismissible = false,\n scrollIntoView = true, // If Drawer Opened offscreen, scroll into view\n ...props\n}: ControlledDrawerProps) {\n const drawerContainer = useContainerAtom();\n const container = _container || drawerContainer;\n\n return (\n <Drawer\n {...props}\n container={container}\n dismissible={dismissible}\n modal={false}\n >\n <DrawerPortal>\n <DrawerContent\n className=\"absolute p-0 bg-contrast-8 dark:bg-contrast-1\"\n onAnimationEnd={\n scrollIntoView\n ? (event) => {\n // only after animated to Open state to prevent jiggle\n if (\n props.open &&\n isElementVisibleInViewport(event.currentTarget)\n ) {\n // On short screens a Drawer may open offscreen and not be noticable\n event.currentTarget.scrollIntoView({\n behavior: \"smooth\",\n block: \"nearest\",\n inline: \"nearest\",\n });\n }\n }\n : undefined\n }\n >\n {(title || showCloseButton) && (\n <DrawerHeader>\n <div className=\"flex items-center justify-between\">\n <DrawerTitle className=\"font-medium text-lg text-contrast-4 dark:text-contrast-6\">\n {title}\n </DrawerTitle>\n {showCloseButton && (\n <DrawerClose\n className=\"ring-offset-background cursor-pointer focus:ring-ring data-[state=open]:bg-accent data-[state=open]:text-muted-foreground dark:text-contrast-4 rounded-xs opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\"\n onClick={props.onClose}\n >\n <XIcon />\n </DrawerClose>\n )}\n </div>\n </DrawerHeader>\n )}\n <DrawerDescription>{description}</DrawerDescription>\n {children}\n </DrawerContent>\n </DrawerPortal>\n </Drawer>\n );\n}\n"],"names":["isElementVisibleInViewport","element","rect","getBoundingClientRect","top","window","innerHeight","bottom","left","innerWidth","right","ControlledDrawer","t0","$","_c","_container","children","description","props","showCloseButton","t1","t2","title","container","dismissible","scrollIntoView","undefined","drawerContainer","useContainerAtom","t3","event","open","currentTarget","behavior","block","inline","t4","onClose","t5","t6","t7"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../../../src/components/widget/Drawer/index.tsx"],"sourcesContent":["import {\n Drawer,\n DrawerClose,\n DrawerContent,\n DrawerHeader,\n DrawerTitle,\n DrawerPortal,\n DrawerDescription,\n} from \"@/components/ui/drawer\";\nimport { useContainerAtom } from \"@/core/state/containerAtom\";\nimport { XIcon } from \"lucide-react\";\n\ntype ControlledDrawerProps = React.ComponentProps<typeof Drawer> & {\n open: boolean;\n children?: React.ReactNode;\n container?: HTMLElement | null;\n title?: string;\n description?: string;\n showCloseButton?: boolean;\n scrollIntoView?: boolean;\n};\n\n// Helper function to check if an element is visible in the viewport\nfunction isElementVisibleInViewport(element: HTMLElement): boolean {\n const rect = element.getBoundingClientRect();\n console.log(\n \"🚀 ~ isElementVisibleInViewport ~ rect:\",\n rect,\n rect.top <= window.innerHeight &&\n rect.bottom >= 0 &&\n rect.left <= window.innerWidth &&\n rect.right >= 0\n );\n\n return (\n rect.top <= window.innerHeight &&\n rect.bottom >= 0 &&\n rect.left <= window.innerWidth &&\n rect.right >= 0\n );\n}\n\nexport function ControlledDrawer({\n children,\n container: _container,\n title,\n description,\n showCloseButton,\n dismissible = false,\n scrollIntoView = true, // If Drawer Opened offscreen, scroll into view\n ...props\n}: ControlledDrawerProps) {\n const drawerContainer = useContainerAtom();\n const container = _container || drawerContainer;\n\n return (\n <Drawer\n {...props}\n container={container}\n dismissible={dismissible}\n modal={false}\n >\n <DrawerPortal>\n <DrawerContent\n className=\"absolute p-0 bg-contrast-8 dark:bg-contrast-1\"\n onAnimationEnd={\n scrollIntoView\n ? (event) => {\n // only after animated to Open state to prevent jiggle\n if (\n props.open &&\n !isElementVisibleInViewport(event.currentTarget)\n ) {\n // On short screens a Drawer may open offscreen and not be noticable\n event.currentTarget.scrollIntoView({\n behavior: \"smooth\",\n block: \"nearest\",\n inline: \"nearest\",\n });\n }\n }\n : undefined\n }\n >\n {(title || showCloseButton) && (\n <DrawerHeader>\n <div className=\"flex items-center justify-between\">\n <DrawerTitle className=\"font-medium text-lg text-contrast-4 dark:text-contrast-6\">\n {title}\n </DrawerTitle>\n {showCloseButton && (\n <DrawerClose\n className=\"ring-offset-background cursor-pointer focus:ring-ring data-[state=open]:bg-accent data-[state=open]:text-muted-foreground dark:text-contrast-4 rounded-xs opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\"\n onClick={props.onClose}\n >\n <XIcon />\n </DrawerClose>\n )}\n </div>\n </DrawerHeader>\n )}\n <DrawerDescription>{description}</DrawerDescription>\n {children}\n </DrawerContent>\n </DrawerPortal>\n </Drawer>\n );\n}\n"],"names":["isElementVisibleInViewport","element","rect","getBoundingClientRect","console","log","top","window","innerHeight","bottom","left","innerWidth","right","ControlledDrawer","t0","$","_c","_container","children","description","props","showCloseButton","t1","t2","title","container","dismissible","scrollIntoView","undefined","drawerContainer","useContainerAtom","t3","event","open","currentTarget","behavior","block","inline","t4","onClose","t5","t6","t7"],"mappings":"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"}
@@ -5,6 +5,9 @@ export type DrawerControls = {
5
5
  onOpenChange: (open: boolean) => void;
6
6
  };
7
7
  export type DrawerId = "account-button-drawer" | "trade-parameters-drawer" | "receiver-address-drawer" | `empty-select-token-drawer-${"from" | "to" | undefined}` | `select-token-drawer-${"from" | "to" | undefined}` | "wrap-eth-drawer" | "connect-wallet-drawer" | "trade-flow-drawer";
8
+ export declare const openDrawerAtom: import('jotai').PrimitiveAtom<DrawerId | null> & {
9
+ init: DrawerId | null;
10
+ };
8
11
  export declare const useOpenDrawerId: () => DrawerId | null;
9
12
  export declare const useDrawerControls: ({ onOpen: _onOpen, onClose: _onClose, drawerId, }: {
10
13
  onOpen?: () => void;
@@ -1 +1 @@
1
- {"version":3,"file":"useDrawerControls.d.ts","sourceRoot":"","sources":["../../../../../src/components/widget/Drawer/state/useDrawerControls.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,cAAc,GAAG;IAC3B,IAAI,EAAE,OAAO,CAAC;IACd,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,YAAY,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;CACvC,CAAC;AAEF,MAAM,MAAM,QAAQ,GAChB,uBAAuB,GACvB,yBAAyB,GACzB,yBAAyB,GACzB,6BAA6B,MAAM,GAAG,IAAI,GAAG,SAAS,EAAE,GACxD,uBAAuB,MAAM,GAAG,IAAI,GAAG,SAAS,EAAE,GAClD,iBAAiB,GACjB,uBAAuB,GACvB,mBAAmB,CAAC;AAIxB,eAAO,MAAM,eAAe,QAAO,QAAQ,GAAG,IAE7C,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAAI,mDAI/B;IACD,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,QAAQ,EAAE,QAAQ,CAAC;CACpB,KAAG,cAwCH,CAAC;AAmBF;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,kCAAkC,QAAO;IACpD,YAAY,EAAE,KAAK,CAAC,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IACrD,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAAC;IAC1B,iBAAiB,EAAE,OAAO,CAAC;IAC3B,YAAY,EAAE,OAAO,CAAC;CAsEvB,CAAC"}
1
+ {"version":3,"file":"useDrawerControls.d.ts","sourceRoot":"","sources":["../../../../../src/components/widget/Drawer/state/useDrawerControls.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,cAAc,GAAG;IAC3B,IAAI,EAAE,OAAO,CAAC;IACd,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,YAAY,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;CACvC,CAAC;AAEF,MAAM,MAAM,QAAQ,GAChB,uBAAuB,GACvB,yBAAyB,GACzB,yBAAyB,GACzB,6BAA6B,MAAM,GAAG,IAAI,GAAG,SAAS,EAAE,GACxD,uBAAuB,MAAM,GAAG,IAAI,GAAG,SAAS,EAAE,GAClD,iBAAiB,GACjB,uBAAuB,GACvB,mBAAmB,CAAC;AAExB,eAAO,MAAM,cAAc;;CAA8B,CAAC;AAE1D,eAAO,MAAM,eAAe,QAAO,QAAQ,GAAG,IAE7C,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAAI,mDAI/B;IACD,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,QAAQ,EAAE,QAAQ,CAAC;CACpB,KAAG,cAwCH,CAAC;AAmBF;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,kCAAkC,QAAO;IACpD,YAAY,EAAE,KAAK,CAAC,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IACrD,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAAC;IAC1B,iBAAiB,EAAE,OAAO,CAAC;IAC3B,YAAY,EAAE,OAAO,CAAC;CAsEvB,CAAC"}
@@ -174,5 +174,5 @@ const useDrawerContainerHeightTransition = () => {
174
174
  return t4;
175
175
  };
176
176
 
177
- export { useDrawerContainerHeightTransition, useDrawerControls, useOpenDrawerId };
177
+ export { openDrawerAtom, useDrawerContainerHeightTransition, useDrawerControls, useOpenDrawerId };
178
178
  //# sourceMappingURL=useDrawerControls.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useDrawerControls.js","sources":["../../../../../src/components/widget/Drawer/state/useDrawerControls.ts"],"sourcesContent":["import { useLogger } from \"@/core/logger\";\nimport { atom, useAtom, useAtomValue } from \"jotai\";\nimport { useLayoutEffect, useRef } from \"react\";\n\nexport type DrawerControls = {\n open: boolean;\n onOpen: () => void;\n onClose: () => void;\n onOpenChange: (open: boolean) => void;\n};\n\nexport type DrawerId =\n | \"account-button-drawer\"\n | \"trade-parameters-drawer\"\n | \"receiver-address-drawer\"\n | `empty-select-token-drawer-${\"from\" | \"to\" | undefined}`\n | `select-token-drawer-${\"from\" | \"to\" | undefined}`\n | \"wrap-eth-drawer\"\n | \"connect-wallet-drawer\"\n | \"trade-flow-drawer\";\n\nconst openDrawerAtom = atom<DrawerId | null>(null);\n\nexport const useOpenDrawerId = (): DrawerId | null => {\n return useAtomValue(openDrawerAtom);\n};\n\nexport const useDrawerControls = ({\n onOpen: _onOpen,\n onClose: _onClose,\n drawerId,\n}: {\n onOpen?: () => void;\n onClose?: () => void;\n drawerId: DrawerId;\n}): DrawerControls => {\n const [openDrawer, setOpenDrawer] = useAtom(openDrawerAtom);\n\n const open = openDrawer === drawerId;\n\n const logger = useLogger(\"DRAWER\");\n\n const onOpen = () => {\n logger.info(\"onOpen\", drawerId);\n setOpenDrawer(drawerId);\n _onOpen?.();\n };\n const onClose = () => {\n logger.info(\"onClose\", drawerId);\n setOpenDrawer((currentOpenDrawer) => {\n // only reset openDrawer if closing the drawer that is currently open,\n // so that we don't interfere with other drawers that are opening at the same time\n if (currentOpenDrawer === drawerId) {\n return null;\n }\n return currentOpenDrawer;\n });\n _onClose?.();\n };\n\n const onOpenChange = (open: boolean) => {\n if (open) {\n onOpen();\n } else {\n onClose();\n }\n };\n\n return {\n open,\n // expect onOpenChange not to be triggered for a controlled <Drawer open={open}/>.\n onOpenChange,\n onOpen,\n onClose,\n };\n};\n\n/**\n * Drawer IDs that should be considered full-cover drawers.\n *\n * When a full-cover drawer opens, the widget container height is transitioned to a fixed 590px height.\n * When the drawer closes, the widget container height is transitioned back to the natural height.\n */\nconst fullCoverDrawers = new Set<DrawerId>([\n \"trade-flow-drawer\",\n \"select-token-drawer-from\",\n \"select-token-drawer-to\",\n \"empty-select-token-drawer-from\",\n \"empty-select-token-drawer-to\",\n]);\n\nconst DRAWER_HEIGHT = 590;\nconst transition = \"height 0.3s ease-in-out\";\n\n/**\n * Hook that manages smooth height transitions for the main widget container when full-cover drawers open/close.\n *\n * When a full-cover drawer opens, this hook smoothly animates the widget height from its natural height\n * to a fixed 590px height. When the drawer closes, it animates back to the original height and then\n * resets to auto for natural sizing.\n *\n * This prevents jarring height jumps and provides a polished user experience during drawer interactions.\n *\n * @returns {Object} containerRef - React ref that should be attached to the widget container element\n *\n * @example\n * const { containerRef } = useDrawerContainerHeightTransition();\n * return <div ref={containerRef} className=\"widget-container\">...</div>\n */\nexport const useDrawerContainerHeightTransition = (): {\n containerRef: React.RefObject<HTMLDivElement | null>;\n drawerId: DrawerId | null;\n isDrawerFullCover: boolean;\n isDrawerOpen: boolean;\n} => {\n const containerRef = useRef<HTMLDivElement>(null);\n const previousHeightRef = useRef<number | null>(null);\n\n const currentDrawerId = useOpenDrawerId();\n const isDrawerFullCover =\n !!currentDrawerId && fullCoverDrawers.has(currentDrawerId);\n\n useLayoutEffect(() => {\n if (containerRef.current) {\n const container = containerRef.current;\n\n if (isDrawerFullCover) {\n // Get current height\n const currentHeight = container.scrollHeight;\n // widget will be fully covered by the drawer, won't see the transition\n const shouldSkipTransition = currentHeight <= DRAWER_HEIGHT;\n if (shouldSkipTransition) {\n return;\n }\n previousHeightRef.current = currentHeight;\n container.style.overflow = \"hidden\";\n\n // Set current height first (no transition)\n container.style.transition = \"none\";\n container.style.height = `${currentHeight}px`;\n\n // Use requestAnimationFrame to ensure the first height is painted\n requestAnimationFrame(() => {\n // Enable transition and set target height\n container.style.transition = transition;\n container.style.height = `${DRAWER_HEIGHT}px`;\n });\n } else if (previousHeightRef.current !== null) {\n // Only transition back if we have a previous height\n container.style.transition = transition;\n container.style.height = `${previousHeightRef.current}px`;\n previousHeightRef.current = null;\n\n // After transition completes, reset to auto\n const onTransitionEnd = (event: TransitionEvent) => {\n if (\n event.target === container &&\n event.propertyName === \"height\" &&\n event.type === \"transitionend\"\n ) {\n container.style.height = \"auto\";\n container.style.transition = \"\";\n container.style.overflow = \"\";\n\n container.removeEventListener(\"transitionend\", onTransitionEnd);\n }\n };\n container.addEventListener(\"transitionend\", onTransitionEnd);\n\n return () => {\n // cleanup just in case\n container.removeEventListener(\"transitionend\", onTransitionEnd);\n };\n }\n }\n }, [isDrawerFullCover]);\n\n return {\n containerRef,\n drawerId: currentDrawerId,\n isDrawerFullCover,\n isDrawerOpen: !!currentDrawerId,\n };\n};\n"],"names":["openDrawerAtom","atom","useOpenDrawerId","useAtomValue","useDrawerControls","t0","$","_c","onOpen","_onOpen","onClose","_onClose","drawerId","openDrawer","setOpenDrawer","useAtom","open","logger","useLogger","t1","info","t2","currentOpenDrawer","t3","open_0","onOpenChange","t4","fullCoverDrawers","Set","DRAWER_HEIGHT","transition","useDrawerContainerHeightTransition","containerRef","useRef","previousHeightRef","currentDrawerId","has","isDrawerFullCover","current","container","currentHeight","scrollHeight","shouldSkipTransition","style","overflow","height","requestAnimationFrame","onTransitionEnd","event","target","propertyName","type","removeEventListener","addEventListener","useLayoutEffect","isDrawerOpen"],"mappings":"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"}
1
+ {"version":3,"file":"useDrawerControls.js","sources":["../../../../../src/components/widget/Drawer/state/useDrawerControls.ts"],"sourcesContent":["import { useLogger } from \"@/core/logger\";\nimport { atom, useAtom, useAtomValue } from \"jotai\";\nimport { useLayoutEffect, useRef } from \"react\";\n\nexport type DrawerControls = {\n open: boolean;\n onOpen: () => void;\n onClose: () => void;\n onOpenChange: (open: boolean) => void;\n};\n\nexport type DrawerId =\n | \"account-button-drawer\"\n | \"trade-parameters-drawer\"\n | \"receiver-address-drawer\"\n | `empty-select-token-drawer-${\"from\" | \"to\" | undefined}`\n | `select-token-drawer-${\"from\" | \"to\" | undefined}`\n | \"wrap-eth-drawer\"\n | \"connect-wallet-drawer\"\n | \"trade-flow-drawer\";\n\nexport const openDrawerAtom = atom<DrawerId | null>(null);\n\nexport const useOpenDrawerId = (): DrawerId | null => {\n return useAtomValue(openDrawerAtom);\n};\n\nexport const useDrawerControls = ({\n onOpen: _onOpen,\n onClose: _onClose,\n drawerId,\n}: {\n onOpen?: () => void;\n onClose?: () => void;\n drawerId: DrawerId;\n}): DrawerControls => {\n const [openDrawer, setOpenDrawer] = useAtom(openDrawerAtom);\n\n const open = openDrawer === drawerId;\n\n const logger = useLogger(\"DRAWER\");\n\n const onOpen = () => {\n logger.info(\"onOpen\", drawerId);\n setOpenDrawer(drawerId);\n _onOpen?.();\n };\n const onClose = () => {\n logger.info(\"onClose\", drawerId);\n setOpenDrawer((currentOpenDrawer) => {\n // only reset openDrawer if closing the drawer that is currently open,\n // so that we don't interfere with other drawers that are opening at the same time\n if (currentOpenDrawer === drawerId) {\n return null;\n }\n return currentOpenDrawer;\n });\n _onClose?.();\n };\n\n const onOpenChange = (open: boolean) => {\n if (open) {\n onOpen();\n } else {\n onClose();\n }\n };\n\n return {\n open,\n // expect onOpenChange not to be triggered for a controlled <Drawer open={open}/>.\n onOpenChange,\n onOpen,\n onClose,\n };\n};\n\n/**\n * Drawer IDs that should be considered full-cover drawers.\n *\n * When a full-cover drawer opens, the widget container height is transitioned to a fixed 590px height.\n * When the drawer closes, the widget container height is transitioned back to the natural height.\n */\nconst fullCoverDrawers = new Set<DrawerId>([\n \"trade-flow-drawer\",\n \"select-token-drawer-from\",\n \"select-token-drawer-to\",\n \"empty-select-token-drawer-from\",\n \"empty-select-token-drawer-to\",\n]);\n\nconst DRAWER_HEIGHT = 590;\nconst transition = \"height 0.3s ease-in-out\";\n\n/**\n * Hook that manages smooth height transitions for the main widget container when full-cover drawers open/close.\n *\n * When a full-cover drawer opens, this hook smoothly animates the widget height from its natural height\n * to a fixed 590px height. When the drawer closes, it animates back to the original height and then\n * resets to auto for natural sizing.\n *\n * This prevents jarring height jumps and provides a polished user experience during drawer interactions.\n *\n * @returns {Object} containerRef - React ref that should be attached to the widget container element\n *\n * @example\n * const { containerRef } = useDrawerContainerHeightTransition();\n * return <div ref={containerRef} className=\"widget-container\">...</div>\n */\nexport const useDrawerContainerHeightTransition = (): {\n containerRef: React.RefObject<HTMLDivElement | null>;\n drawerId: DrawerId | null;\n isDrawerFullCover: boolean;\n isDrawerOpen: boolean;\n} => {\n const containerRef = useRef<HTMLDivElement>(null);\n const previousHeightRef = useRef<number | null>(null);\n\n const currentDrawerId = useOpenDrawerId();\n const isDrawerFullCover =\n !!currentDrawerId && fullCoverDrawers.has(currentDrawerId);\n\n useLayoutEffect(() => {\n if (containerRef.current) {\n const container = containerRef.current;\n\n if (isDrawerFullCover) {\n // Get current height\n const currentHeight = container.scrollHeight;\n // widget will be fully covered by the drawer, won't see the transition\n const shouldSkipTransition = currentHeight <= DRAWER_HEIGHT;\n if (shouldSkipTransition) {\n return;\n }\n previousHeightRef.current = currentHeight;\n container.style.overflow = \"hidden\";\n\n // Set current height first (no transition)\n container.style.transition = \"none\";\n container.style.height = `${currentHeight}px`;\n\n // Use requestAnimationFrame to ensure the first height is painted\n requestAnimationFrame(() => {\n // Enable transition and set target height\n container.style.transition = transition;\n container.style.height = `${DRAWER_HEIGHT}px`;\n });\n } else if (previousHeightRef.current !== null) {\n // Only transition back if we have a previous height\n container.style.transition = transition;\n container.style.height = `${previousHeightRef.current}px`;\n previousHeightRef.current = null;\n\n // After transition completes, reset to auto\n const onTransitionEnd = (event: TransitionEvent) => {\n if (\n event.target === container &&\n event.propertyName === \"height\" &&\n event.type === \"transitionend\"\n ) {\n container.style.height = \"auto\";\n container.style.transition = \"\";\n container.style.overflow = \"\";\n\n container.removeEventListener(\"transitionend\", onTransitionEnd);\n }\n };\n container.addEventListener(\"transitionend\", onTransitionEnd);\n\n return () => {\n // cleanup just in case\n container.removeEventListener(\"transitionend\", onTransitionEnd);\n };\n }\n }\n }, [isDrawerFullCover]);\n\n return {\n containerRef,\n drawerId: currentDrawerId,\n isDrawerFullCover,\n isDrawerOpen: !!currentDrawerId,\n };\n};\n"],"names":["openDrawerAtom","atom","useOpenDrawerId","useAtomValue","useDrawerControls","t0","$","_c","onOpen","_onOpen","onClose","_onClose","drawerId","openDrawer","setOpenDrawer","useAtom","open","logger","useLogger","t1","info","t2","currentOpenDrawer","t3","open_0","onOpenChange","t4","fullCoverDrawers","Set","DRAWER_HEIGHT","transition","useDrawerContainerHeightTransition","containerRef","useRef","previousHeightRef","currentDrawerId","has","isDrawerFullCover","current","container","currentHeight","scrollHeight","shouldSkipTransition","style","overflow","height","requestAnimationFrame","onTransitionEnd","event","target","propertyName","type","removeEventListener","addEventListener","useLayoutEffect","isDrawerOpen"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"subscriptions.d.ts","sourceRoot":"","sources":["../../../../../src/components/widget/ReceiverAddress/state/subscriptions.ts"],"names":[],"mappings":"AAaA,wBAAgB,yBAAyB,iDA6BxC"}
1
+ {"version":3,"file":"subscriptions.d.ts","sourceRoot":"","sources":["../../../../../src/components/widget/ReceiverAddress/state/subscriptions.ts"],"names":[],"mappings":"AAaA,wBAAgB,yBAAyB,iDA2BxC"}
@@ -1,10 +1,10 @@
1
1
  import { wagmiConfig } from '../../../../lib/web3/wagmi/config.js';
2
2
  import { watchAccount } from '@wagmi/core';
3
- import { getDefaultStore } from 'jotai';
4
3
  import { receiverAddressAtom } from './receiverAddressAtom.js';
5
4
  import { queryClient } from '../../../../lib/queryClient.js';
6
5
  import { isSupportedChainId } from '../../../../lib/web3/wagmi/utils.js';
7
6
  import { constructIsContractAtAddressQueryKey, getIsContractAtAddress } from '../../../../hooks/getCode/query.js';
7
+ import { jotaiStore } from '../../../../core/inputs/state/store.js';
8
8
 
9
9
  function subscribeToAccountChanges() {
10
10
  return watchAccount(wagmiConfig, {
@@ -12,7 +12,6 @@ function subscribeToAccountChanges() {
12
12
  address,
13
13
  chainId
14
14
  }) => {
15
- const jotaiStore = getDefaultStore();
16
15
  if (!address || chainId === void 0 || !isSupportedChainId(chainId)) {
17
16
  jotaiStore.set(receiverAddressAtom, void 0);
18
17
  return;
@@ -1 +1 @@
1
- {"version":3,"file":"subscriptions.js","sources":["../../../../../src/components/widget/ReceiverAddress/state/subscriptions.ts"],"sourcesContent":["import { wagmiConfig } from \"@/lib/web3/wagmi/config\";\nimport { watchAccount } from \"@wagmi/core\";\nimport { getDefaultStore } from \"jotai\";\nimport { receiverAddressAtom } from \"./receiverAddressAtom\";\n\nimport { queryClient } from \"@/lib/queryClient\";\n\nimport { isSupportedChainId } from \"@/lib/web3/wagmi/utils\";\nimport {\n constructIsContractAtAddressQueryKey,\n getIsContractAtAddress,\n} from \"@/hooks/getCode/query\";\n\nexport function subscribeToAccountChanges() {\n return watchAccount(wagmiConfig, {\n onChange: async ({ address, chainId }) => {\n const jotaiStore = getDefaultStore();\n\n // reset the receiver address if the address is not valid or chainId is not supported\n if (!address || chainId === undefined || !isSupportedChainId(chainId)) {\n jotaiStore.set(receiverAddressAtom, undefined);\n return;\n }\n\n const queryKey = constructIsContractAtAddressQueryKey({\n chainId,\n address,\n });\n\n const isContractAtAddressResult = await queryClient.ensureQueryData({\n queryKey,\n queryFn: () =>\n getIsContractAtAddress({\n address,\n chainId,\n }),\n });\n\n if (isContractAtAddressResult?.isEOA)\n jotaiStore.set(receiverAddressAtom, address);\n },\n });\n}\n"],"names":["subscribeToAccountChanges","watchAccount","wagmiConfig","onChange","address","chainId","jotaiStore","getDefaultStore","undefined","isSupportedChainId","set","receiverAddressAtom","queryKey","constructIsContractAtAddressQueryKey","isContractAtAddressResult","queryClient","ensureQueryData","queryFn","getIsContractAtAddress","isEOA"],"mappings":";;;;;;;;AAaO,SAASA,yBAAAA,GAA4B;AAC1C,EAAA,OAAOC,aAAaC,WAAAA,EAAa;AAAA,IAC/BC,UAAU,OAAO;AAAA,MAAEC,OAAAA;AAAAA,MAASC;AAAAA,KAAQ,KAAM;AACxC,MAAA,MAAMC,aAAaC,eAAAA,EAAgB;AAGnC,MAAA,IAAI,CAACH,OAAAA,IAAWC,OAAAA,KAAYG,UAAa,CAACC,kBAAAA,CAAmBJ,OAAO,CAAA,EAAG;AACrEC,QAAAA,UAAAA,CAAWI,GAAAA,CAAIC,qBAAqBH,MAAS,CAAA;AAC7C,QAAA;AAAA,MACF;AAEA,MAAA,MAAMI,WAAWC,oCAAAA,CAAqC;AAAA,QACpDR,OAAAA;AAAAA,QACAD;AAAAA,OACD,CAAA;AAED,MAAA,MAAMU,yBAAAA,GAA4B,MAAMC,WAAAA,CAAYC,eAAAA,CAAgB;AAAA,QAClEJ,QAAAA;AAAAA,QACAK,OAAAA,EAASA,MACPC,sBAAAA,CAAuB;AAAA,UACrBd,OAAAA;AAAAA,UACAC;AAAAA,SACD;AAAA,OACJ,CAAA;AAED,MAAA,IAAIS,yBAAAA,EAA2BK,KAAAA,EAC7Bb,UAAAA,CAAWI,GAAAA,CAAIC,qBAAqBP,OAAO,CAAA;AAAA,IAC/C;AAAA,GACD,CAAA;AACH;;;;"}
1
+ {"version":3,"file":"subscriptions.js","sources":["../../../../../src/components/widget/ReceiverAddress/state/subscriptions.ts"],"sourcesContent":["import { wagmiConfig } from \"@/lib/web3/wagmi/config\";\nimport { watchAccount } from \"@wagmi/core\";\nimport { receiverAddressAtom } from \"./receiverAddressAtom\";\n\nimport { queryClient } from \"@/lib/queryClient\";\n\nimport { isSupportedChainId } from \"@/lib/web3/wagmi/utils\";\nimport {\n constructIsContractAtAddressQueryKey,\n getIsContractAtAddress,\n} from \"@/hooks/getCode/query\";\nimport { jotaiStore } from \"@/core/inputs/state/store\";\n\nexport function subscribeToAccountChanges() {\n return watchAccount(wagmiConfig, {\n onChange: async ({ address, chainId }) => {\n // reset the receiver address if the address is not valid or chainId is not supported\n if (!address || chainId === undefined || !isSupportedChainId(chainId)) {\n jotaiStore.set(receiverAddressAtom, undefined);\n return;\n }\n\n const queryKey = constructIsContractAtAddressQueryKey({\n chainId,\n address,\n });\n\n const isContractAtAddressResult = await queryClient.ensureQueryData({\n queryKey,\n queryFn: () =>\n getIsContractAtAddress({\n address,\n chainId,\n }),\n });\n\n if (isContractAtAddressResult?.isEOA)\n jotaiStore.set(receiverAddressAtom, address);\n },\n });\n}\n"],"names":["subscribeToAccountChanges","watchAccount","wagmiConfig","onChange","address","chainId","undefined","isSupportedChainId","jotaiStore","set","receiverAddressAtom","queryKey","constructIsContractAtAddressQueryKey","isContractAtAddressResult","queryClient","ensureQueryData","queryFn","getIsContractAtAddress","isEOA"],"mappings":";;;;;;;;AAaO,SAASA,yBAAAA,GAA4B;AAC1C,EAAA,OAAOC,aAAaC,WAAAA,EAAa;AAAA,IAC/BC,UAAU,OAAO;AAAA,MAAEC,OAAAA;AAAAA,MAASC;AAAAA,KAAQ,KAAM;AAExC,MAAA,IAAI,CAACD,OAAAA,IAAWC,OAAAA,KAAYC,UAAa,CAACC,kBAAAA,CAAmBF,OAAO,CAAA,EAAG;AACrEG,QAAAA,UAAAA,CAAWC,GAAAA,CAAIC,qBAAqBJ,MAAS,CAAA;AAC7C,QAAA;AAAA,MACF;AAEA,MAAA,MAAMK,WAAWC,oCAAAA,CAAqC;AAAA,QACpDP,OAAAA;AAAAA,QACAD;AAAAA,OACD,CAAA;AAED,MAAA,MAAMS,yBAAAA,GAA4B,MAAMC,WAAAA,CAAYC,eAAAA,CAAgB;AAAA,QAClEJ,QAAAA;AAAAA,QACAK,OAAAA,EAASA,MACPC,sBAAAA,CAAuB;AAAA,UACrBb,OAAAA;AAAAA,UACAC;AAAAA,SACD;AAAA,OACJ,CAAA;AAED,MAAA,IAAIQ,yBAAAA,EAA2BK,KAAAA,EAC7BV,UAAAA,CAAWC,GAAAA,CAAIC,qBAAqBN,OAAO,CAAA;AAAA,IAC/C;AAAA,GACD,CAAA;AACH;;;;"}
@@ -120,7 +120,7 @@ function getSurplusAmounts({
120
120
  if (!txs || txs.length === 0) {
121
121
  return null;
122
122
  }
123
- const expectedAmount = BigInt(result.deltaOrder.lastOrderState?.order.expectedDestAmount || result.deltaOrder.sentOrder.order.expectedDestAmount);
123
+ const expectedAmount = BigInt(result.deltaOrder.lastOrderState?.order.expectedAmount || result.deltaOrder.sentOrder.order.expectedAmount);
124
124
  const actualReceived = txs.reduce((acc, tx) => {
125
125
  return acc + BigInt(tx.receivedAmount);
126
126
  }, 0n);
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sources":["../../../../../src/components/widget/TradeOverview/TradeComplete/utils.ts"],"sourcesContent":["import { formatTokenBalanceClean } from \"@/lib/utils/formatTokenBalance\";\nimport type { TradeFlowResult } from \"@/hooks/swap/tradeFlow/common/types\";\nimport { calcRate } from \"@/lib/utils/rate\";\nimport type { MinTradeFlowToken } from \"../TradeDetails\";\nimport type Big from \"big.js\";\nimport type { Address } from \"viem\";\nimport type { TokenTransfers } from \"@/tokens/utils/transferAmountsFromReceipt\";\n\ntype ResultAmounts = {\n fromAmountWei: string;\n toAmountWei: string;\n fromAmountUnit: string;\n toAmountUnit: string;\n rateStr: string | null;\n rate?: Big;\n rateFormatted?: string;\n};\n\ntype RawAmountsAndSide = {\n fromAmountWei: string;\n toAmountWei: string;\n tokensMap: Record<Address, TokenTransfers>;\n isBuy: boolean;\n};\n\ntype ResultAmountsInput = {\n fromAmountWei?: string | bigint;\n toAmountWei?: string | bigint;\n isBuy?: boolean;\n fromToken: MinTradeFlowToken;\n toToken: MinTradeFlowToken;\n};\n\nexport function getExpectedTransferAmounts({\n result,\n}: {\n result?: TradeFlowResult;\n}): RawAmountsAndSide | undefined {\n if (!result) {\n return;\n }\n\n if (result.tradeFlowType === \"deltaOrder\") {\n const { srcToken, destToken } = result.deltaOrder.sentOrder.order;\n\n const fromAmountWei =\n result.deltaOrder.lastOrderState?.order.srcAmount ||\n result.deltaOrder.sentOrder.order.srcAmount;\n const toAmountWei =\n result.deltaOrder.lastOrderState?.order.destAmount ||\n result.deltaOrder.sentOrder.order.destAmount;\n\n const tokensMap = {\n [srcToken]: {\n // token was sent\n token: srcToken as Address,\n sentAmount: BigInt(fromAmountWei),\n receivedAmount: 0n,\n },\n [destToken]: {\n // token was received\n token: destToken as Address,\n sentAmount: 0n,\n receivedAmount: BigInt(toAmountWei),\n },\n };\n\n return {\n fromAmountWei,\n toAmountWei,\n tokensMap,\n // @TODO add BUY support for Delta when available\n isBuy: false,\n };\n }\n\n const { srcToken, destToken } = result.marketPrice;\n const fromAmountWei = result.marketPrice.srcAmount;\n const toAmountWei = result.marketPrice.destAmount;\n\n const tokensMap = {\n [srcToken]: {\n token: srcToken as Address,\n sentAmount: BigInt(fromAmountWei),\n receivedAmount: 0n,\n },\n [destToken]: {\n token: destToken as Address,\n sentAmount: 0n,\n receivedAmount: BigInt(toAmountWei),\n },\n };\n\n return {\n fromAmountWei,\n toAmountWei,\n tokensMap,\n isBuy: result.marketPrice.side === \"BUY\",\n };\n}\n\nexport function getResultAmounts({\n fromAmountWei,\n toAmountWei,\n isBuy,\n fromToken,\n toToken,\n}: ResultAmountsInput): ResultAmounts {\n if (!fromAmountWei || !toAmountWei || isBuy === undefined) {\n return {\n fromAmountWei: \"0\",\n toAmountWei: \"0\",\n fromAmountUnit: \"0\",\n toAmountUnit: \"0\",\n rateStr: null,\n };\n }\n\n const fromAmountUnit = formatTokenBalanceClean(\n fromAmountWei,\n fromToken.decimals\n );\n const toAmountUnit = formatTokenBalanceClean(toAmountWei, toToken.decimals);\n\n const { srcToken, destToken, srcAmount, destAmount } = isBuy\n ? {\n srcToken: fromToken,\n destToken: toToken,\n srcAmount: fromAmountUnit,\n destAmount: toAmountUnit,\n }\n : {\n srcToken: toToken,\n destToken: fromToken,\n srcAmount: toAmountUnit,\n destAmount: fromAmountUnit,\n };\n\n const rates = calcRate(srcAmount, destAmount);\n const rateStr = rates\n ? `1 ${srcToken.symbol ?? srcToken.address} = ${rates.rateFormatted} ${destToken.symbol ?? destToken.address}`\n : null;\n\n return {\n fromAmountWei: fromAmountWei.toString(),\n toAmountWei: toAmountWei.toString(),\n fromAmountUnit,\n toAmountUnit,\n ...rates,\n rateStr,\n };\n}\n\ntype SurplusAmounts = {\n expectedAmount: bigint;\n receivedAmount: bigint;\n diffWei: bigint;\n diffUnit: string;\n surplusStr: string | null;\n};\n\ntype SurplusAmountsInput = {\n result?: TradeFlowResult;\n toToken: MinTradeFlowToken;\n};\n\nexport function getSurplusAmounts({\n result,\n toToken,\n}: SurplusAmountsInput): SurplusAmounts | null {\n if (!result) {\n return null;\n }\n\n if (result.tradeFlowType !== \"deltaOrder\") {\n // @TODO add surplus calc from SwapTx Receipt\n return null;\n }\n\n const txs = result.deltaOrder.lastOrderState?.transactions;\n if (!txs || txs.length === 0) {\n return null;\n }\n\n // @TODO check that expectedDestAmount is the amount show at Order creation, not destAmount (=minAmount)\n const expectedAmount = BigInt(\n result.deltaOrder.lastOrderState?.order.expectedDestAmount ||\n result.deltaOrder.sentOrder.order.expectedDestAmount\n );\n\n const actualReceived = txs.reduce((acc, tx) => {\n return acc + BigInt(tx.receivedAmount);\n }, 0n);\n\n const diffWei = actualReceived - expectedAmount;\n\n const diffUnit = formatTokenBalanceClean(diffWei, toToken.decimals, 2);\n // don't show 0.00%\n const surplusStr = Number(diffUnit) > 0 ? diffUnit : null;\n\n return {\n expectedAmount,\n receivedAmount: actualReceived,\n diffWei,\n diffUnit,\n surplusStr,\n };\n}\n"],"names":["getExpectedTransferAmounts","result","tradeFlowType","srcToken","destToken","deltaOrder","sentOrder","order","fromAmountWei","lastOrderState","srcAmount","toAmountWei","destAmount","tokensMap","token","sentAmount","BigInt","receivedAmount","isBuy","marketPrice","side","getResultAmounts","fromToken","toToken","undefined","fromAmountUnit","toAmountUnit","rateStr","formatTokenBalanceClean","decimals","rates","calcRate","symbol","address","rateFormatted","toString","getSurplusAmounts","txs","transactions","length","expectedAmount","expectedDestAmount","actualReceived","reduce","acc","tx","diffWei","diffUnit","surplusStr","Number"],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sources":["../../../../../src/components/widget/TradeOverview/TradeComplete/utils.ts"],"sourcesContent":["import { formatTokenBalanceClean } from \"@/lib/utils/formatTokenBalance\";\nimport type { TradeFlowResult } from \"@/hooks/swap/tradeFlow/common/types\";\nimport { calcRate } from \"@/lib/utils/rate\";\nimport type { MinTradeFlowToken } from \"../TradeDetails\";\nimport type Big from \"big.js\";\nimport type { Address } from \"viem\";\nimport type { TokenTransfers } from \"@/tokens/utils/transferAmountsFromReceipt\";\n\ntype ResultAmounts = {\n fromAmountWei: string;\n toAmountWei: string;\n fromAmountUnit: string;\n toAmountUnit: string;\n rateStr: string | null;\n rate?: Big;\n rateFormatted?: string;\n};\n\ntype RawAmountsAndSide = {\n fromAmountWei: string;\n toAmountWei: string;\n tokensMap: Record<Address, TokenTransfers>;\n isBuy: boolean;\n};\n\ntype ResultAmountsInput = {\n fromAmountWei?: string | bigint;\n toAmountWei?: string | bigint;\n isBuy?: boolean;\n fromToken: MinTradeFlowToken;\n toToken: MinTradeFlowToken;\n};\n\nexport function getExpectedTransferAmounts({\n result,\n}: {\n result?: TradeFlowResult;\n}): RawAmountsAndSide | undefined {\n if (!result) {\n return;\n }\n\n if (result.tradeFlowType === \"deltaOrder\") {\n const { srcToken, destToken } = result.deltaOrder.sentOrder.order;\n\n const fromAmountWei =\n result.deltaOrder.lastOrderState?.order.srcAmount ||\n result.deltaOrder.sentOrder.order.srcAmount;\n const toAmountWei =\n result.deltaOrder.lastOrderState?.order.destAmount ||\n result.deltaOrder.sentOrder.order.destAmount;\n\n const tokensMap = {\n [srcToken]: {\n // token was sent\n token: srcToken as Address,\n sentAmount: BigInt(fromAmountWei),\n receivedAmount: 0n,\n },\n [destToken]: {\n // token was received\n token: destToken as Address,\n sentAmount: 0n,\n receivedAmount: BigInt(toAmountWei),\n },\n };\n\n return {\n fromAmountWei,\n toAmountWei,\n tokensMap,\n // @TODO add BUY support for Delta when available\n isBuy: false,\n };\n }\n\n const { srcToken, destToken } = result.marketPrice;\n const fromAmountWei = result.marketPrice.srcAmount;\n const toAmountWei = result.marketPrice.destAmount;\n\n const tokensMap = {\n [srcToken]: {\n token: srcToken as Address,\n sentAmount: BigInt(fromAmountWei),\n receivedAmount: 0n,\n },\n [destToken]: {\n token: destToken as Address,\n sentAmount: 0n,\n receivedAmount: BigInt(toAmountWei),\n },\n };\n\n return {\n fromAmountWei,\n toAmountWei,\n tokensMap,\n isBuy: result.marketPrice.side === \"BUY\",\n };\n}\n\nexport function getResultAmounts({\n fromAmountWei,\n toAmountWei,\n isBuy,\n fromToken,\n toToken,\n}: ResultAmountsInput): ResultAmounts {\n if (!fromAmountWei || !toAmountWei || isBuy === undefined) {\n return {\n fromAmountWei: \"0\",\n toAmountWei: \"0\",\n fromAmountUnit: \"0\",\n toAmountUnit: \"0\",\n rateStr: null,\n };\n }\n\n const fromAmountUnit = formatTokenBalanceClean(\n fromAmountWei,\n fromToken.decimals\n );\n const toAmountUnit = formatTokenBalanceClean(toAmountWei, toToken.decimals);\n\n const { srcToken, destToken, srcAmount, destAmount } = isBuy\n ? {\n srcToken: fromToken,\n destToken: toToken,\n srcAmount: fromAmountUnit,\n destAmount: toAmountUnit,\n }\n : {\n srcToken: toToken,\n destToken: fromToken,\n srcAmount: toAmountUnit,\n destAmount: fromAmountUnit,\n };\n\n const rates = calcRate(srcAmount, destAmount);\n const rateStr = rates\n ? `1 ${srcToken.symbol ?? srcToken.address} = ${rates.rateFormatted} ${destToken.symbol ?? destToken.address}`\n : null;\n\n return {\n fromAmountWei: fromAmountWei.toString(),\n toAmountWei: toAmountWei.toString(),\n fromAmountUnit,\n toAmountUnit,\n ...rates,\n rateStr,\n };\n}\n\ntype SurplusAmounts = {\n expectedAmount: bigint;\n receivedAmount: bigint;\n diffWei: bigint;\n diffUnit: string;\n surplusStr: string | null;\n};\n\ntype SurplusAmountsInput = {\n result?: TradeFlowResult;\n toToken: MinTradeFlowToken;\n};\n\nexport function getSurplusAmounts({\n result,\n toToken,\n}: SurplusAmountsInput): SurplusAmounts | null {\n if (!result) {\n return null;\n }\n\n if (result.tradeFlowType !== \"deltaOrder\") {\n // @TODO add surplus calc from SwapTx Receipt\n return null;\n }\n\n const txs = result.deltaOrder.lastOrderState?.transactions;\n if (!txs || txs.length === 0) {\n return null;\n }\n\n // @TODO check that expectedDestAmount is the amount show at Order creation, not destAmount (=minAmount)\n const expectedAmount = BigInt(\n result.deltaOrder.lastOrderState?.order.expectedAmount ||\n result.deltaOrder.sentOrder.order.expectedAmount\n );\n\n const actualReceived = txs.reduce((acc, tx) => {\n return acc + BigInt(tx.receivedAmount);\n }, 0n);\n\n const diffWei = actualReceived - expectedAmount;\n\n const diffUnit = formatTokenBalanceClean(diffWei, toToken.decimals, 2);\n // don't show 0.00%\n const surplusStr = Number(diffUnit) > 0 ? diffUnit : null;\n\n return {\n expectedAmount,\n receivedAmount: actualReceived,\n diffWei,\n diffUnit,\n surplusStr,\n };\n}\n"],"names":["getExpectedTransferAmounts","result","tradeFlowType","srcToken","destToken","deltaOrder","sentOrder","order","fromAmountWei","lastOrderState","srcAmount","toAmountWei","destAmount","tokensMap","token","sentAmount","BigInt","receivedAmount","isBuy","marketPrice","side","getResultAmounts","fromToken","toToken","undefined","fromAmountUnit","toAmountUnit","rateStr","formatTokenBalanceClean","decimals","rates","calcRate","symbol","address","rateFormatted","toString","getSurplusAmounts","txs","transactions","length","expectedAmount","actualReceived","reduce","acc","tx","diffWei","diffUnit","surplusStr","Number"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/core/across/utils.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAGjE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE/D,wBAAgB,iBAAiB,CAAC,EAChC,WAAW,EACX,SAAS,GACV,EAAE;IACD,WAAW,EAAE,gBAAgB,CAAC;IAC9B,SAAS,EAAE,gBAAgB,CAAC;CAC7B,GAAG,OAAO,CAUV;AAED,wBAAgB,wBAAwB,CAAC,EACvC,WAAW,EACX,SAAS,GACV,EAAE;IACD,WAAW,EAAE,gBAAgB,CAAC;IAC9B,SAAS,EAAE,gBAAgB,CAAC;CAC7B,GAAG,aAAa,GAAG,SAAS,CAkB5B;AAED,KAAK,sBAAsB,GAAG;IAC5B,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;IAC9B,WAAW,EAAE,gBAAgB,CAAC;IAC9B,SAAS,EAAE,gBAAgB,CAAC;CAC7B,CAAC;AAEF,wBAAgB,iBAAiB,CAAC,EAChC,KAAK,EACL,WAAW,EACX,SAAS,GACV,EAAE,sBAAsB,GAAG,OAAO,GAAG,SAAS,CAa9C"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/core/across/utils.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAEjE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAG/D,wBAAgB,iBAAiB,CAAC,EAChC,WAAW,EACX,SAAS,GACV,EAAE;IACD,WAAW,EAAE,gBAAgB,CAAC;IAC9B,SAAS,EAAE,gBAAgB,CAAC;CAC7B,GAAG,OAAO,CAUV;AAED,wBAAgB,wBAAwB,CAAC,EACvC,WAAW,EACX,SAAS,GACV,EAAE;IACD,WAAW,EAAE,gBAAgB,CAAC;IAC9B,SAAS,EAAE,gBAAgB,CAAC;CAC7B,GAAG,aAAa,GAAG,SAAS,CAiB5B;AAED,KAAK,sBAAsB,GAAG;IAC5B,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;IAC9B,WAAW,EAAE,gBAAgB,CAAC;IAC9B,SAAS,EAAE,gBAAgB,CAAC;CAC7B,CAAC;AAEF,wBAAgB,iBAAiB,CAAC,EAChC,KAAK,EACL,WAAW,EACX,SAAS,GACV,EAAE,sBAAsB,GAAG,OAAO,GAAG,SAAS,CAa9C"}
@@ -1,6 +1,6 @@
1
1
  import { queryClient } from '../../lib/queryClient.js';
2
2
  import { fromListsAtom } from '../../tokens/state/tokensAtom.js';
3
- import { getDefaultStore } from 'jotai';
3
+ import { jotaiStore } from '../inputs/state/store.js';
4
4
 
5
5
  function isAcrossAvailable({
6
6
  chainIdFrom,
@@ -17,7 +17,6 @@ function findFirstTokenFromAcross({
17
17
  }) {
18
18
  const cachedBridgeInfo = queryClient.getQueryData(["swap/delta/bridge-info"]);
19
19
  if (!cachedBridgeInfo) return;
20
- const jotaiStore = getDefaultStore();
21
20
  const tokenMap = jotaiStore.get(fromListsAtom).listByChainId[toChainId]?.addressMap;
22
21
  const acrossTokens = cachedBridgeInfo[fromChainId]?.[toChainId];
23
22
  const tokenToAddress = acrossTokens?.find((address) => tokenMap?.[address.toLowerCase()]);