@orderly.network/trading 2.0.2 → 2.0.3-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -12,48 +12,48 @@ var utils = require('@orderly.network/utils');
12
12
  var uiConnector = require('@orderly.network/ui-connector');
13
13
  var uiTransfer = require('@orderly.network/ui-transfer');
14
14
  var uiLeverage = require('@orderly.network/ui-leverage');
15
- var ac = require('@uiw/react-split');
15
+ var uc = require('@uiw/react-split');
16
16
  var uiChainSelector = require('@orderly.network/ui-chain-selector');
17
17
  var uiScaffold = require('@orderly.network/ui-scaffold');
18
- var Ad = require('jsqr');
18
+ var _d = require('jsqr');
19
19
  var uiTradingview = require('@orderly.network/ui-tradingview');
20
20
  var uiOrderEntry = require('@orderly.network/ui-order-entry');
21
21
  var markets = require('@orderly.network/markets');
22
22
 
23
23
  function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
24
24
 
25
- var ac__default = /*#__PURE__*/_interopDefault(ac);
26
- var Ad__default = /*#__PURE__*/_interopDefault(Ad);
25
+ var uc__default = /*#__PURE__*/_interopDefault(uc);
26
+ var _d__default = /*#__PURE__*/_interopDefault(_d);
27
27
 
28
- var E=e=>{let[t,o]=hooks.useLocalStorage("unPnlPriceBasis","markPrice"),[i,r]=hooks.useLocalStorage("pnlNotionalDecimalPrecision",e?.pnlNotionalDecimalPrecision??2),[n,a]=hooks.useLocalStorage("showAllSymbol",!0),[s,l]=hooks.useLocalStorage("hideAssets",!1);return {unPnlPriceBasis:t,setUnPnlPriceBasic:o,pnlNotionalDecimalPrecision:i,setPnlNotionalDecimalPrecision:r,showAllSymbol:n,setShowAllSymbol:a,hideAssets:s,setHideAssets:l}};var Ve=e=>{let{showAllSymbol:t}=E(),[o]=hooks.usePositionStream(t?void 0:e),i=react.useMemo(()=>o.rows?.length,[o.rows?.length]);return {positionCount:reactApp.useDataTap(i)??0}};var qe=e=>{let {showAllSymbol:t}=E();`orderly_${uiOrders.TabType.pending}_pageSize`;`orderly_${uiOrders.TabType.tp_sl}_pageSize`;let [r,{total:n}]=hooks.useOrderStream({symbol:t?void 0:e,status:types.OrderStatus.INCOMPLETE,excludes:[types.AlgoOrderRootType.POSITIONAL_TP_SL,types.AlgoOrderRootType.TP_SL],size:500},{keeplive:!0}),[a,{total:s}]=hooks.useOrderStream({symbol:t?void 0:e,status:types.OrderStatus.INCOMPLETE,includes:[types.AlgoOrderRootType.POSITIONAL_TP_SL,types.AlgoOrderRootType.TP_SL],size:500},{keeplive:!0}),l=reactApp.useDataTap(n)??0,c=reactApp.useDataTap(s)??0;return {pendingOrderCount:l,tpSlOrderCount:c}};var Ue=e=>({base_dp:e("base_dp"),quote_dp:e("quote_dp"),base_tick:e("base_tick"),base:e("base"),quote:e("quote")});var ir=react.createContext({}),O=()=>react.useContext(ir),rr=e=>{let t=hooks.useSymbolsInfo()[e.symbol];return jsxRuntime.jsx(ir.Provider,{value:{...e,symbolInfo:{...Ue(t),symbol:e.symbol}},children:e.children})};var nr=e=>{let{current:t,pnlNotionalDecimalPrecision:o,sharePnLConfig:i,symbol:r,includedPendingOrder:n}=e,a=E({pnlNotionalDecimalPrecision:o}),{onSymbolChange:s}=O(),{positionCount:l}=Ve(e.symbol),{pendingOrderCount:c,tpSlOrderCount:u}=qe(e.symbol);return {current:t,sharePnLConfig:i,symbol:r,calcMode:a.unPnlPriceBasis,includedPendingOrder:n,...a,positionCount:l,pendingOrderCount:c,tpSlOrderCount:u,onSymbolChange:s}};var Jt=e=>{let{isMobile:t}=ui$1.useScreen();return t?jsxRuntime.jsx(Ua,{...e}):jsxRuntime.jsx(Ga,{...e})},Ua=e=>jsxRuntime.jsxs(ui$1.Flex,{direction:"column",gap:2,width:"100%",itemAlign:"start",p:2,className:"oui-bg-base-9 oui-rounded-b-xl",children:[jsxRuntime.jsxs(ui$1.Flex,{width:"100%",justify:"between",children:[jsxRuntime.jsx(sr,{classNames:{label:"oui-text-2xs oui-text-base-contrast-54",root:"oui-text-sm"},...e}),jsxRuntime.jsx(lr,{classNames:{label:"oui-text-2xs oui-text-base-contrast-54",root:"oui-text-sm"},...e})]}),jsxRuntime.jsx(ui$1.Divider,{className:"oui-w-full"}),jsxRuntime.jsxs(ui$1.Flex,{className:"oui-gap-[2px] oui-cursor-pointer",children:[jsxRuntime.jsx(ui$1.Checkbox,{id:"oui-checkbox-hideOtherSymbols",color:"white",checked:!e.showAllSymbol,onCheckedChange:t=>{e.setShowAllSymbol(!t);}}),jsxRuntime.jsx("label",{className:"oui-text-2xs oui-text-base-contrast-54 oui-cursor-pointer",htmlFor:"oui-checkbox-hideOtherSymbols",children:"Hide other symbols"})]})]}),Ga=e=>jsxRuntime.jsxs(ui$1.Flex,{py:2,px:3,gap:6,width:"100%",justify:"start",children:[jsxRuntime.jsx(sr,{...e,classNames:{label:"oui-text-base-contrast-54"}}),jsxRuntime.jsx(lr,{...e,classNames:{label:"oui-text-base-contrast-54"}})]}),sr=e=>{let t=typeof e.unrealPnL=="number"?e.unrealPnL>=0?"oui-text-trade-profit":"oui-text-trade-loss":"oui-text-base-contrast-80",o=typeof e.unrealPnL=="number"&&e.unrealPnlROI?e.unrealPnlROI>=0?"oui-text-success-darken":"oui-text-danger-darken":"oui-text-base-contrast-80";return jsxRuntime.jsx(ui$1.Statistic,{label:"Unreal. PnL",classNames:e.classNames,children:jsxRuntime.jsxs(ui$1.Flex,{gap:1,children:[jsxRuntime.jsx(ui$1.Text.numeral,{dp:e.pnlNotionalDecimalPrecision,rm:utils.Decimal.ROUND_DOWN,intensity:80,className:t,children:e.unrealPnL??"--"}),typeof e.unrealPnlROI<"u"&&jsxRuntime.jsx(ui$1.Text.numeral,{prefix:"(",suffix:")",rule:"percentages",size:"2xs",dp:e.pnlNotionalDecimalPrecision,rm:utils.Decimal.ROUND_DOWN,className:o,children:e.unrealPnlROI})]})})},lr=e=>jsxRuntime.jsx(ui$1.Statistic,{label:"Notional",classNames:e.classNames,children:jsxRuntime.jsx(ui$1.Text.numeral,{dp:e.pnlNotionalDecimalPrecision,rm:utils.Decimal.ROUND_DOWN,intensity:80,children:e.notional??"--"})});var ur=e=>{let{pnlNotionalDecimalPrecision:t,unPnlPriceBasis:o,symbol:i}=e,r=o,[n]=hooks.usePositionStream(i,{calcMode:r}),a=reactApp.useDataTap(n.aggregated),s=a?.total_unreal_pnl,l=a?.unrealPnlROI,c=a?.notional,{showAllSymbol:u,setShowAllSymbol:d}=E();return {pnlNotionalDecimalPrecision:t,unrealPnL:s,unrealPnlROI:l,notional:c,showAllSymbol:u,setShowAllSymbol:d}};var $e=e=>{let t=ur(e);return jsxRuntime.jsx(Jt,{...t})};var jt=e=>{let[t,o]=react.useState(!1);return jsxRuntime.jsxs(ui$1.Flex,{gap:0,children:[jsxRuntime.jsxs(ui$1.Flex,{gap:1,children:[jsxRuntime.jsx(ui$1.Checkbox,{id:"oui-checkbox-hideOtherSymbols",color:"white",checked:e.hideOtherSymbols,onCheckedChange:i=>{e.setHideOtherSymbols(i);}}),jsxRuntime.jsx("label",{className:"oui-text-xs oui-text-base-contrast-54 oui-cursor-pointer",htmlFor:"oui-checkbox-hideOtherSymbols",children:"Hide other symbols"})]}),jsxRuntime.jsxs(ui$1.DropdownMenuRoot,{open:t,onOpenChange:o,children:[jsxRuntime.jsx(ui$1.DropdownMenuTrigger,{asChild:!0,children:jsxRuntime.jsx(ui$1.Button,{size:"xs",type:"button",variant:"contained",className:"oui-bg-transparent hover:oui-bg-transparent",children:jsxRuntime.jsx(ui$1.SettingFillIcon,{size:16,color:"white",opacity:1,className:"oui-text-white/[.36] hover:oui-text-white/80"})})}),jsxRuntime.jsx(ui$1.DropdownMenuContent,{className:"oui-px-5 oui-py-3 oui-w-[360px]",alignOffset:2,align:"end",children:jsxRuntime.jsxs("div",{className:"oui-flex oui-flex-col oui-text-sm",children:[jsxRuntime.jsx(ui$1.Text,{className:"oui-text-base oui-pb-3",children:"Portfolio Settings"}),jsxRuntime.jsx(ui$1.Divider,{}),jsxRuntime.jsx(ui$1.Text,{className:"oui-pb-3 oui-text-base-contrast-54 oui-mt-2",children:"Decimal Precision for PnL & Notional"}),jsxRuntime.jsx(is,{value:e.pnlNotionalDecimalPrecision,onValueChange:i=>{e.setPnlNotionalDecimalPrecision(i),o(!1);}}),jsxRuntime.jsx(ui$1.Divider,{className:"oui-my-3"}),jsxRuntime.jsx(ui$1.Text,{className:"oui-pb-3 oui-text-base-contrast-54 oui-mt-2",children:"Unrealized PnL Price Basis"}),jsxRuntime.jsx(os,{value:e.unPnlPriceBasis,onValueChange:i=>{e.setUnPnlPriceBasic(i),o(!1);}})]})})]})]})},os=e=>{let{value:t,onValueChange:o}=e;return jsxRuntime.jsxs(ui$1.Flex,{gap:2,children:[jsxRuntime.jsx(Ke,{sel:t==="markPrice",label:"Mark price",value:"markPrice",onCheckChange:o}),jsxRuntime.jsx(Ke,{sel:t==="lastPrice",label:"Last price",value:"lastPrice",onCheckChange:o})]})},is=e=>{let{value:t,onValueChange:o}=e;return jsxRuntime.jsxs(ui$1.Flex,{gap:2,children:[jsxRuntime.jsx(Ke,{sel:t===0,label:1,value:0,onCheckChange:o}),jsxRuntime.jsx(Ke,{sel:t===1,label:.1,value:1,onCheckChange:o}),jsxRuntime.jsx(Ke,{sel:t===2,label:.01,value:2,onCheckChange:o})]})},Ke=e=>{let{sel:t,label:o,value:i,onCheckChange:r}=e;return jsxRuntime.jsxs(ui$1.Flex,{onClick:n=>{r(i),n.stopPropagation();},gap:1,className:"oui-cursor-pointer",children:[t?jsxRuntime.jsx(rs,{}):jsxRuntime.jsx(ns,{}),jsxRuntime.jsx(ui$1.Text,{size:"2xs",intensity:t?98:54,children:o})]})},rs=()=>jsxRuntime.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"currentColor",xmlns:"http://www.w3.org/2000/svg",className:"oui-fill-white",children:[jsxRuntime.jsx("path",{d:"M8.01 1.333a6.667 6.667 0 1 0 0 13.333 6.667 6.667 0 0 0 0-13.333m0 1.333a5.334 5.334 0 1 1-.001 10.667 5.334 5.334 0 0 1 0-10.667",fill:"#fff",fillOpacity:".36"}),jsxRuntime.jsx("circle",{cx:"8",cy:"8",r:"3.333"})]}),ns=()=>jsxRuntime.jsx("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:jsxRuntime.jsx("path",{d:"M8.01 1.333a6.667 6.667 0 1 0 0 13.333 6.667 6.667 0 0 0 0-13.333m0 1.333a5.334 5.334 0 1 1-.001 10.667 5.334 5.334 0 0 1 0-10.667",fill:"#fff",fillOpacity:".54"})});var dr=e=>({...e});var eo=e=>{let t=dr(e);return jsxRuntime.jsx(jt,{...t})};var oo=e=>jsxRuntime.jsxs(ui$1.Tabs,{defaultValue:e.current||"Positions",variant:"contained",trailing:jsxRuntime.jsx(eo,{pnlNotionalDecimalPrecision:e.pnlNotionalDecimalPrecision,setPnlNotionalDecimalPrecision:e.setPnlNotionalDecimalPrecision,unPnlPriceBasis:e.unPnlPriceBasis,setUnPnlPriceBasic:e.setUnPnlPriceBasic,hideOtherSymbols:!e.showAllSymbol,setHideOtherSymbols:t=>e.setShowAllSymbol(!t)}),size:"lg",className:"oui-h-full",classNames:{tabsContent:"oui-h-[calc(100%_-_32px)]"},children:[jsxRuntime.jsx(ui$1.TabPanel,{testid:"oui-testid-dataList-position-tab",value:"Positions",title:(e.positionCount??0)>0?`Positions(${e.positionCount})`:"Positions",children:jsxRuntime.jsx(fs,{...e})}),jsxRuntime.jsx(ui$1.TabPanel,{testid:"oui-testid-dataList-pending-tab",value:"Pending",title:(e.pendingOrderCount??0)>0?`Pending(${e.pendingOrderCount})`:"Pending",children:jsxRuntime.jsx(uiOrders.DesktopOrderListWidget,{type:uiOrders.TabType.pending,ordersStatus:types.OrderStatus.INCOMPLETE,symbol:e.showAllSymbol?void 0:e.symbol,onSymbolChange:e.onSymbolChange,testIds:{tableBody:"oui-testid-dataList-pending-table-body"}})}),jsxRuntime.jsx(ui$1.TabPanel,{testid:"oui-testid-dataList-tpsl-tab",value:"TP/SL",title:(e.tpSlOrderCount??0)>0?`TP/SL(${e.tpSlOrderCount})`:"TP/SL",children:jsxRuntime.jsx(uiOrders.DesktopOrderListWidget,{type:uiOrders.TabType.tp_sl,ordersStatus:types.OrderStatus.INCOMPLETE,symbol:e.showAllSymbol?void 0:e.symbol,onSymbolChange:e.onSymbolChange,testIds:{tableBody:"oui-testid-dataList-tpsl-table-body"}})}),jsxRuntime.jsx(ui$1.TabPanel,{testid:"oui-testid-dataList-filled-tab",value:"Filled",title:"Filled",children:jsxRuntime.jsx(uiOrders.DesktopOrderListWidget,{type:uiOrders.TabType.filled,symbol:e.showAllSymbol?void 0:e.symbol,pnlNotionalDecimalPrecision:e.pnlNotionalDecimalPrecision,ordersStatus:types.OrderStatus.FILLED,onSymbolChange:e.onSymbolChange,testIds:{tableBody:"oui-testid-dataList-filled-table-body"},sharePnLConfig:e.sharePnLConfig})}),jsxRuntime.jsx(ui$1.TabPanel,{testid:"oui-testid-dataList-positionHistory-tab",value:"Position history",title:"Position history",children:jsxRuntime.jsx(uiPositions.PositionHistoryWidget,{pnlNotionalDecimalPrecision:e.pnlNotionalDecimalPrecision,symbol:e.showAllSymbol?void 0:e.symbol,onSymbolChange:e.onSymbolChange})}),jsxRuntime.jsx(ui$1.TabPanel,{testid:"oui-testid-dataList-orderHistory-tab",value:"Order history",title:"Order history",children:jsxRuntime.jsx(uiOrders.DesktopOrderListWidget,{type:uiOrders.TabType.orderHistory,pnlNotionalDecimalPrecision:e.pnlNotionalDecimalPrecision,symbol:e.showAllSymbol?void 0:e.symbol,onSymbolChange:e.onSymbolChange,testIds:{tableBody:"oui-testid-dataList-orderHistory-table-body"},sharePnLConfig:e.sharePnLConfig})}),jsxRuntime.jsx(ui$1.TabPanel,{testid:"oui-testid-dataList-liquidation-tab",value:"Liquidation",title:"Liquidation",children:jsxRuntime.jsx(uiPositions.LiquidationWidget,{symbol:e.showAllSymbol?void 0:e.symbol})})]}),fs=e=>jsxRuntime.jsxs(ui$1.Flex,{direction:"column",width:"100%",height:"100%",children:[jsxRuntime.jsx($e,{pnlNotionalDecimalPrecision:e.pnlNotionalDecimalPrecision,symbol:e.showAllSymbol?void 0:e.symbol,unPnlPriceBasis:e.unPnlPriceBasis}),jsxRuntime.jsx(ui$1.Divider,{className:"oui-w-full"}),jsxRuntime.jsx(ui$1.Box,{className:"oui-h-[calc(100%_-_60px)]",width:"100%",children:jsxRuntime.jsx(uiPositions.PositionsWidget,{symbol:e.showAllSymbol?void 0:e.symbol,pnlNotionalDecimalPrecision:e.pnlNotionalDecimalPrecision,sharePnLConfig:e.sharePnLConfig,calcMode:e.calcMode,includedPendingOrder:e.includedPendingOrder,onSymbolChange:e.onSymbolChange})})]});var io=e=>{let t=nr({...e});return jsxRuntime.jsx(oo,{...t})};var ro=e=>jsxRuntime.jsxs(ui$1.Box,{className:ui$1.cn("oui-grid oui-grid-rows=[auto,1fr] oui-h-full oui-w-full",e.classNames?.root),style:e.style,children:[jsxRuntime.jsx(ui$1.Box,{className:"oui-pr-1",children:jsxRuntime.jsx(ys,{base:e.base,quote:e.quote,className:e.classNames?.listHeader})}),jsxRuntime.jsx(Ss,{data:e.data,isLoading:e.isLoading,baseDp:e.baseDp,quoteDp:e.quoteDp,classNames:e.classNames?.listItem,className:e.classNames?.list})]}),hr=e=>{let{key:t,left:o,mid:i,right:r,classNames:n}=e;return jsxRuntime.jsxs(ui$1.Grid,{cols:3,gapX:2,width:"100%",className:ui$1.cn("oui-text-xs oui-tabular-nums",n?.root),children:[jsxRuntime.jsx("div",{className:ui$1.cn("oui-flex-1",n?.left),children:o}),jsxRuntime.jsx("div",{className:ui$1.cn("oui-flex-1",n?.mid),children:i}),jsxRuntime.jsx("div",{className:ui$1.cn("oui-flex-1 oui-text-right",n?.right),children:r})]},t)},ys=e=>jsxRuntime.jsx(hr,{left:"Time",mid:`Price(${e.quote})`,right:`Qty(${e.base})`,classNames:{root:ui$1.cn("oui-text-base-contrast-54 oui-h-[32px] oui-sticky",e.className)}}),Ss=e=>jsxRuntime.jsx(ui$1.ListView,{dataSource:e.data,className:ui$1.cn("oui-last-trades-list","oui-w-full oui-h-full",e.className,"oui-overflow-auto"),contentClassName:"!oui-space-y-0 oui-pr-[-4px]",renderItem:(t,o)=>jsxRuntime.jsx(hr,{left:jsxRuntime.jsx(ui$1.Text.formatted,{rule:"date",formatString:"HH:mm:ss",children:t?.ts}),mid:utils.commifyOptional(t?.price,{fix:e.quoteDp}),right:utils.commifyOptional(t?.size,{fix:e.baseDp}),classNames:{left:ui$1.cn("oui-text-base-contrast-80",e.classNames?.left),right:ui$1.cn(t.side===types.OrderSide.BUY?"oui-text-trade-profit":"oui-text-trade-loss",e.classNames?.mid),mid:ui$1.cn(t.side===types.OrderSide.BUY?"oui-text-trade-profit":"oui-text-trade-loss",e.classNames?.right)}},o)});var xr=e=>{let{data:t,isLoading:o}=hooks.useMarketTradeStream(e),i=hooks.useSymbolsInfo()?.[e],r=i?.("base"),n=i?.("quote"),a=i?.("base_dp"),s=i?.("quote_dp");return {base:r,quote:n,data:t,isLoading:o,baseDp:a,quoteDp:s}};var Le=e=>{let t=xr(e.symbol);return jsxRuntime.jsx(ro,{...t,classNames:e.classNames,style:e.style})};function yr(e){return e.showFaucet?jsxRuntime.jsx(ui$1.Button,{variant:"outlined",fullWidth:!0,size:"md",onClick:e.getFaucet,loading:e.loading,className:"oui-text-primary-light oui-border-primary-light oui-rounded","data-testid":"oui-testid-assetView-getFaucet-button",children:"Get test USDC"}):null}function wr(){let{connectedChain:e,namespace:t}=hooks.useWalletConnector(),{state:o,account:i}=hooks.useAccount(),r=hooks.useConfig(),n=r.get("operatorUrl"),[a,{isMutating:s}]=hooks.useMutation(`${n}/v1/faucet/usdc`),[l,c]=react.useState(!1),u=react.useMemo(()=>!e||!e.id?!1:(o.status===types.AccountStatusEnum.EnableTrading||o.status===types.AccountStatusEnum.EnableTradingWithoutConnected)&&utils.isTestnet(parseInt(e.id)),[o,e]);return {getFaucet:()=>{if(l)return;c(!0);let g=`${t===types.ChainNamespace.solana?"100":"1,000"} USDC will be added to your balance. Please note this may take up to 3 minutes. Please check back later.`;return a({chain_id:i.walletAdapter?.chainId.toString(),user_address:o.address,broker_id:r.get("brokerId")}).then(m=>{if(c(!1),m.success)return ui$1.modal.alert({title:"Get test USDC",message:g,onOk:()=>new Promise(b=>b(!0))});m.message&&ui$1.toast.error(m.message);},m=>{ui$1.toast.error(m.message);})},showFaucet:u,loading:l}}function no(){let e=wr();return jsxRuntime.jsx(yr,{...e})}var Ks=()=>{let{state:e}=hooks.useAccount(),{wrongNetwork:t}=reactApp.useAppContext();return react.useMemo(()=>{if(t)return {title:"Wrong Network",description:"Please switch to a supported network to continue.",titleColor:"warning"};switch(e.status){case types.AccountStatusEnum.NotConnected:return {title:"Connect wallet",description:"Please connect your wallet before starting to trade.",titleClsName:"oui-text-transparent oui-bg-clip-text oui-gradient-brand"};case types.AccountStatusEnum.NotSignedIn:return {title:"Sign in",description:"Please sign in before starting to trade.",titleColor:"primary"};case types.AccountStatusEnum.DisabledTrading:return {title:"Enable trading",description:"Enable trading before starting to trade.",titleColor:"primary"};default:return {title:"",description:""}}},[e.status,t])},mo=({description:e,formula:t})=>jsxRuntime.jsxs("div",{className:"oui-leading-[1.5] oui-text-2xs oui-text-base-contrast-80 oui-min-w-[204px] oui-max-w-[240px]",children:[jsxRuntime.jsx("span",{children:e}),jsxRuntime.jsx(ui$1.Divider,{className:"oui-border-white/10",my:2}),jsxRuntime.jsx("span",{children:t})]}),Xs=({totalValue:e,visible:t=!0,onToggleVisibility:o})=>jsxRuntime.jsxs(ui$1.Flex,{direction:"column",gap:1,className:"oui-text-2xs",itemAlign:"center",children:[jsxRuntime.jsx(ui$1.Text.numeral,{visible:t,weight:"bold",size:"2xl",className:ui$1.gradientTextVariants({color:"brand"}),as:"div",padding:!1,dp:2,children:e??"--"}),jsxRuntime.jsxs(ui$1.Flex,{gap:1,itemAlign:"center",children:[jsxRuntime.jsx(ui$1.Text,{size:"2xs",color:"neutral",weight:"semibold",children:"My Assets (USDC)"}),jsxRuntime.jsx("button",{onClick:o,children:t?jsxRuntime.jsx(ui$1.EyeIcon,{size:18,className:"oui-text-base-contrast-54"}):jsxRuntime.jsx(ui$1.EyeCloseIcon,{size:18,className:"oui-text-base-contrast-54"})})]})]}),uo=({label:e,description:t,formula:o,visible:i,value:r,unit:n,rule:a,isConnected:s,showPercentage:l=!1,placeholder:c})=>jsxRuntime.jsxs(ui$1.Flex,{justify:"between",children:[jsxRuntime.jsx(ui$1.Tooltip,{content:jsxRuntime.jsx(mo,{description:t,formula:o}),children:jsxRuntime.jsx(ui$1.Text,{size:"2xs",color:"neutral",weight:"semibold",className:"oui-cursor-pointer oui-border-b oui-border-dashed oui-border-line-12",children:e})}),jsxRuntime.jsx(ui$1.Text.numeral,{visible:i,size:"2xs",unit:n,unitClassName:"oui-text-base-contrast-36 oui-ml-0.5",as:"div",rule:a,padding:!1,dp:2,placeholder:c,children:r||"--"})]}),Ys=({visible:e=!0,freeCollateral:t,marginRatioVal:o,renderMMR:i,isConnected:r})=>{let[n,a]=hooks.useLocalStorage("orderly_entry_asset_list_open",!1),[s,l]=react.useState(n),c=react.useCallback(()=>{l(u=>!u),setTimeout(()=>{a(!s);},0);},[]);return jsxRuntime.jsxs(ui$1.Box,{className:"oui-group",children:[jsxRuntime.jsxs(ui$1.Flex,{justify:"center",gap:1,itemAlign:"center",className:"oui-cursor-pointer",onClick:c,children:[jsxRuntime.jsx(ui$1.Divider,{className:"oui-flex-1"}),jsxRuntime.jsx(ui$1.ChevronDownIcon,{size:12,color:"white",className:ui$1.cn("oui-transition-transform",s&&"oui-rotate-180")}),jsxRuntime.jsx(ui$1.Divider,{className:"oui-flex-1"})]}),jsxRuntime.jsxs(ui$1.Box,{style:{transform:"translateZ(0)"},className:ui$1.cn("oui-space-y-1.5 oui-select-none oui-overflow-hidden","oui-transition-[max-height] oui-duration-150","group-hover:oui-will-change-[max-height]",s?"oui-max-h-[69px]":"oui-max-h-0"),children:[jsxRuntime.jsx(uo,{label:"Free collateral",description:"Free collateral for placing new orders.",formula:"Free collateral = Total balance + Total unsettlement PnL - Total position initial margin",visible:e,value:t===0?"0":t,unit:"USDC"}),jsxRuntime.jsx(uo,{label:"Margin ratio",description:"The margin ratio represents the proportion of collateral relative to the total position value.",formula:"Account margin ratio = (Total collateral value / Total position notional) * 100%",visible:e,value:o,isConnected:r,rule:"percentages",showPercentage:!0,placeholder:"--%"}),jsxRuntime.jsx(uo,{label:"Maintenance margin ratio",description:"The minimum margin ratio required to protect your positions from being liquidated. If the Margin ratio falls below the Maintenance margin ratio, the account will be liquidated.",formula:"Account maintenance margin ratio = Sum(Position notional * Symbol maintenance Margin Ratio) / Total position notional * 100%",visible:e,value:i,rule:"percentages",showPercentage:!0,placeholder:"--%"})]})]})},go=({networkId:e,isFirstTimeDeposit:t,totalValue:o,onDeposit:i,onWithdraw:r,toggleVisible:n,visible:a,freeCollateral:s,marginRatioVal:l,renderMMR:c,isConnected:u})=>{let{title:d,description:g,titleColor:m,titleClsName:b}=Ks();return jsxRuntime.jsxs(ui$1.Box,{className:"oui-relative",children:[d&&g&&jsxRuntime.jsxs(ui$1.Flex,{direction:"column",gap:1,className:"oui-mb-[32px]",children:[jsxRuntime.jsx(ui$1.Text,{size:"lg",weight:"bold",color:m||"inherit",className:b,children:d}),jsxRuntime.jsx(ui$1.Text,{size:"2xs",color:"neutral",weight:"semibold",className:"oui-text-center",children:g})]}),jsxRuntime.jsx(uiConnector.AuthGuard,{networkId:e,buttonProps:{size:"md",fullWidth:!0},children:t?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(ui$1.Box,{children:jsxRuntime.jsxs(ui$1.Flex,{direction:"column",gap:1,className:"oui-mb-[32px]",children:[jsxRuntime.jsx(ui$1.Text.gradient,{size:"lg",weight:"bold",color:"brand",children:"Deposit to start trade"}),jsxRuntime.jsx(ui$1.Text,{size:"2xs",color:"neutral",weight:"semibold",children:"You can deposit assets from various networks"})]})}),jsxRuntime.jsxs(ui$1.Button,{"data-testid":"oui-testid-assetView-deposit-button",fullWidth:!0,size:"md",onClick:i,children:[jsxRuntime.jsx(ui$1.ArrowDownShortIcon,{color:"white",opacity:1}),jsxRuntime.jsx(ui$1.Text,{children:"Deposit"})]}),jsxRuntime.jsx(ui$1.Box,{className:"oui-mt-3",children:jsxRuntime.jsx(no,{})})]}):jsxRuntime.jsxs(ui$1.Box,{className:"oui-space-y-4",children:[jsxRuntime.jsx(Xs,{totalValue:o,visible:a,onToggleVisibility:n}),jsxRuntime.jsx(Ys,{visible:a,freeCollateral:s,marginRatioVal:l,renderMMR:c,isConnected:u}),jsxRuntime.jsxs(ui$1.Flex,{gap:3,itemAlign:"center",children:[jsxRuntime.jsxs(ui$1.Button,{fullWidth:!0,color:"secondary",size:"md",onClick:r,"data-testid":"oui-testid-assetView-withdraw-button",children:[jsxRuntime.jsx(ui$1.ArrowDownShortIcon,{color:"white",opacity:1,className:"oui-rotate-180"}),jsxRuntime.jsx(ui$1.Text,{children:"Withdraw"})]}),jsxRuntime.jsxs(ui$1.Button,{"data-testid":"oui-testid-assetView-deposit-button",fullWidth:!0,size:"md",onClick:i,children:[jsxRuntime.jsx(ui$1.ArrowDownShortIcon,{color:"white",opacity:1}),jsxRuntime.jsx(ui$1.Text,{children:"Deposit"})]})]}),jsxRuntime.jsx(no,{})]})}),jsxRuntime.jsx("div",{className:"oui-pointer-events-none oui-rotate-180 oui-rounded-2xl oui-blur-[200px] oui-top-0 oui-bottom-0 oui-left-0 oui-right-0 oui-absolute",style:{background:"conic-gradient(from -40.91deg at 40.63% 50.41%, rgba(159, 115, 241, 0) -48.92deg, rgba(242, 98, 181, 0) 125.18deg, #5FC5FF 193.41deg, #FFAC89 216.02deg, #8155FF 236.07deg, #789DFF 259.95deg, rgba(159, 115, 241, 0) 311.08deg, rgba(242, 98, 181, 0) 485.18deg)"}})]})};var ho=()=>{let{state:e}=hooks.useAccount(),{wrongNetwork:t}=reactApp.useAppContext(),{totalValue:o}=hooks.useCollateral({dp:2}),i=t||e.status<types.AccountStatusEnum.EnableTrading&&e.status!==types.AccountStatusEnum.EnableTradingWithoutConnected,r=react.useMemo(()=>{let a=new Date,s=new Date;s.setDate(a.getDate()-90);let l=s.getTime(),c=a.getTime(),u=new URLSearchParams;return u.set("page","1"),u.set("size","5"),u.set("side","DEPOSIT"),u.set("status","COMPLETED"),u.set("startTime",l.toString()),u.set("endTime",c.toString()),`/v1/asset/history?${u.toString()}`},[]),{data:n}=hooks.usePrivateQuery(r,{formatter:a=>a});return {isFirstTimeDeposit:!i&&o===0&&n?.meta?.total===0,totalValue:o}},Dr=()=>{let e=hooks.useAccountInstance(),t=hooks.useMediaQuery(types.MEDIA_TABLET),{isFirstTimeDeposit:o,totalValue:i}=ho(),r=hooks.useConfig("networkId"),{state:n}=hooks.useAccount(),{freeCollateral:a}=hooks.useCollateral({dp:2}),{marginRatio:s,mmr:l}=hooks.useMarginRatio(),c=n.status>=types.AccountStatusEnum.Connected,[{aggregated:u,totalUnrealizedROI:d},g]=hooks.usePositionStream(),m=react.useMemo(()=>Math.min(10,u.notional===0?g.margin_ratio(10):s),[s,u]);react.useMemo(()=>l?new utils.Decimal(l).mul(100).todp(2,0).toFixed(2):"",[l]);let p=react.useCallback(async L=>{let D;return t?D=await ui$1.modal.show(uiTransfer.DepositAndWithdrawWithSheetId,{activeTab:L}):D=await ui$1.modal.show(uiTransfer.DepositAndWithdrawWithDialogId,{activeTab:L}),D},[t]),y=react.useCallback(async()=>p("deposit"),[t]),v=hooks.useEventEmitter(),F=react.useCallback(async()=>p("withdraw"),[t]),C=react.useCallback(async()=>e.settle().catch(L=>{if(L.code===-1104)return ui$1.toast.error("Settlement is only allowed once every 10 minutes. Please try again later."),Promise.reject(L)}).then(L=>(ui$1.toast.success("Settlement requested"),Promise.resolve(L))),[e]),[R,W]=hooks.useLocalStorage("orderly_assets_visible",!0),Ce=react.useCallback(()=>{W(L=>!L);},[R]);hooks.useWalletSubscription({onMessage:L=>{let{side:D,transStatus:H}=L;if(H==="COMPLETED"){let re=`${utils.capitalizeString(D)} completed`;ui$1.toast.success(re);}else if(H==="FAILED"){let re=`${utils.capitalizeString(D)} failed`;ui$1.toast.error(re);}v.emit("wallet:changed",L);}}),hooks.useSettleSubscription({onMessage:L=>{let{status:D}=L;switch(D){case"COMPLETED":ui$1.toast.success("Settlement completed");break;case"FAILED":ui$1.toast.error("Settlement failed");break;}}});let ie=reactApp.useDataTap(a)??void 0,he=reactApp.useDataTap(m)??void 0,De=reactApp.useDataTap(l)??void 0,Fe=reactApp.useDataTap(i)??void 0;return {onDeposit:y,onWithdraw:F,onSettle:C,visible:R,toggleVisible:Ce,networkId:r,isFirstTimeDeposit:o,totalValue:Fe,status:n.status,freeCollateral:ie,marginRatioVal:he,renderMMR:De,isConnected:c}};var bo=()=>{let e=Dr();return jsxRuntime.jsx(go,{...e})};var bt=react.createContext({cellHeight:22}),q=()=>react.useContext(bt),xt=e=>{let[t,o]=react.useState("quantity"),[i,r]=react.useState("quantity");return jsxRuntime.jsx(bt.Provider,{value:{cellHeight:e.cellHeight,onItemClick:e.onItemClick,mode:t,totalMode:i||"quantity",depth:e.depth,onModeChange:o,onTotalModeChange:r,showTotal:e.showTotal||!1,pendingOrders:e.pendingOrders,symbolInfo:e.symbolInfo},children:e.children})};var yt=e=>{let{direction:t=1}=e,o=react.useMemo(()=>{let i=Math.max(e.width,0);return t===0?{transform:`translateX(${i}%)`}:{transform:`translateX(-${i}%)`}},[e.width]);return jsxRuntime.jsx("div",{className:ui$1.cn("oui-absolute oui-right-[-100%] oui-top-0 oui-h-full oui-w-full oui-transition-transform oui-pointer-events-none",t===0&&"oui-left-[-100%]",e.className),style:o})};var Or=e=>{let{cellHeight:t,showTotal:o,onItemClick:i,depth:r,pendingOrders:n}=q(),{symbolInfo:a,currentHover:s}=e,{base_dp:l,quote_dp:c}=a,u=Number.isNaN(e.price)?0:e.accumulated/e.count*100,d=react.useMemo(()=>utils.getPrecisionByNumber(r||`${c}`),[r,c]),g=Number.isNaN(e.accumulated)?"-":e.accumulatedAmount?.toString(),m=react.useMemo(()=>{let b=ui$1.parseNumber(e.price,{dp:d,padding:!0});return n.findIndex(y=>b===ui$1.parseNumber(y,{dp:d,padding:!0}))!==-1},[n,e.price,r]);return jsxRuntime.jsxs("div",{className:"oui-flex oui-flex-row oui-pl-3 oui-tabular-nums oui-justify-between oui-text-base-contrast-80 oui-text-xs oui-relative oui-cursor-pointer",style:{height:`${t}px`},onClick:()=>{Number.isNaN(e.price)||Number.isNaN(e.quantity)||i?.([e.price,e.quantity]);},onMouseEnter:e.onMouseEnter,onMouseLeave:e.onMouseLeave,children:[jsxRuntime.jsxs("div",{className:ui$1.cn("oui-basis-7/12 oui-flex oui-flex-row oui-items-center oui-mr-2",o&&"oui-basis-5/12"),children:[jsxRuntime.jsx("div",{className:ui$1.cn("oui-flex-1 oui-text-left",e.type==="ask"?"oui-text-trade-loss":"oui-text-trade-profit"),children:jsxRuntime.jsx(ui$1.Text.numeral,{dp:d,children:e.price})}),jsxRuntime.jsx("div",{className:"oui-flex-1 oui-text-right oui-text-base-contrast-80",children:jsxRuntime.jsx(ui$1.Text.numeral,{dp:l,children:e.quantity})})]}),jsxRuntime.jsxs("div",{className:ui$1.cn("oui-basis-5/12 oui-flex oui-items-center oui-fex-row oui-overflow-hidden oui-relative oui-justify-end",o&&"oui-basis-7/12"),children:[jsxRuntime.jsx("div",{className:ui$1.cn("oui-flex-1 oui-pr-3 oui-text-right",o&&"oui-pr-3"),children:jsxRuntime.jsx(ui$1.Text.numeral,{dp:l,className:"oui-z-10",children:e.accumulated})}),o&&jsxRuntime.jsx("div",{className:"oui-flex-1 oui-text-right oui-pr-3",children:jsxRuntime.jsx(ui$1.Text.numeral,{dp:2,className:"oui-z-10",children:g})}),jsxRuntime.jsx(yt,{width:u,direction:0,className:e.type==="ask"?"oui-bg-trade-loss/10":"oui-bg-trade-profit/10"})]}),m&&jsxRuntime.jsx("div",{className:ui$1.cn("oui-absolute oui-rounded-full oui-left-[4px] oui-h-[4px] oui-w-[4px] oui-pointer-events-none",e.type==="ask"&&"oui-bg-trade-loss",e.type==="bid"&&"oui-bg-trade-profit"),style:{top:`${t/2-2}px`}}),e.isHover&&jsxRuntime.jsx("div",{className:"oui-absolute oui-bg-white oui-left-0 oui-right-0 oui-top-0 oui-bottom-0 oui-opacity-[.12]"}),s&&jsxRuntime.jsx("div",{className:ui$1.cn("oui-absolute oui-left-0 oui-right-0",e.type==="ask"&&"oui-top-0",e.type==="bid"&&"oui-bottom-0"),children:jsxRuntime.jsx(ui$1.Divider,{lineStyle:"dashed",className:ui$1.cn("oui-w-full",e.type==="bid"&&"oui-border-trade-profit",e.type==="ask"&&"oui-border-trade-loss")})})]})};var Ct=e=>{let{data:t,type:o}=e,{symbolInfo:i,depth:r}=q(),n=react.useCallback(()=>{if((t?.length||0)===0)return null;if(o==="ask"){let u=t.findIndex(d=>!Number.isNaN(d[0]));return u!=-1?t[u]:null}else {for(let u=t.length-1;u>=0;u--){let d=t[u];if(!Number.isNaN(d[0]))return d}return null}},[t,o]),a=react.useMemo(()=>r?.toString().includes(".")?r.toString().split(".")[1].length:0,[r]),s=react.useMemo(()=>t.reduce((u,d)=>Math.max(u,d[1]),0),[t]),[l,c]=react.useState(-1);return jsxRuntime.jsx("div",{className:"oui-order-book-list oui-flex oui-flex-col oui-gap-[1px]",children:t.map((u,d)=>jsxRuntime.jsx(Fl,{index:d,item:u,countQty:e.countQty,setHoverIndex:c,hoverIndex:l,type:o,maxQty:s,priceDp:a,symbolInfo:i,findMaxItem:n},d))})},Fl=e=>{let{index:t,item:o,setHoverIndex:i,type:r,maxQty:n,hoverIndex:a,priceDp:s,symbolInfo:l}=e,{base:c,quote:u,base_dp:d,quote_dp:g}=l,m=a!==-1?r==="ask"?t>=a:t<=a:!1,[b,p]=react.useState(!1),y=F=>{if(F===null)return {sumQty:0,sumQtyAmount:0,avgPrice:0};let C={sumQty:0,sumQtyAmount:0};return Number.isNaN(F[2])||(C={sumQty:F[2],sumQtyAmount:F[3]}),{...C,avgPrice:C.sumQtyAmount==0?0:C.sumQtyAmount/C.sumQty}},v=y(o);return v.avgPrice===0&&(v=y(e.findMaxItem())),jsxRuntime.jsxs(ui$1.TooltipRoot,{open:b,onOpenChange:p,children:[jsxRuntime.jsx(ui$1.TooltipTrigger,{children:jsxRuntime.jsx(Or,{background:"",price:o[0],quantity:o[1],accumulated:o[2],count:e.countQty,type:e.type,accumulatedAmount:o[3],maxQty:n,isHover:m,currentHover:a===t,symbolInfo:l,onMouseEnter:()=>{i(t),p(!0);},onMouseLeave:()=>{i(-1),p(!1);}})}),jsxRuntime.jsxs(ui$1.TooltipContent,{className:ui$1.cn("oui-max-w-[400px] oui-w-full oui-text-2xs oui-shadow-md oui-rounded-base oui-p-3 oui-bg-base-6 oui-flex oui-flex-col oui-gap-2"),align:r==="ask"?"end":"start",alignOffset:-25.4,side:"left",sideOffset:2,onPointerEnter:F=>F.preventDefault(),children:[jsxRuntime.jsx(yo,{title:"Avg. Price\u2248",content:v.avgPrice,contentDp:s}),jsxRuntime.jsx(yo,{title:`Sum (${c})`,content:v.sumQty,contentDp:d}),jsxRuntime.jsx(yo,{title:`Sum (${u})`,content:v.sumQtyAmount,contentDp:g}),jsxRuntime.jsx(ui$1.TooltipArrow,{className:"oui-fill-base-6",style:{transform:r==="ask"?"translateX(80%)":"translateX(-80%)"}})]})]})},yo=e=>{let{title:t,content:o,contentDp:i}=e;return jsxRuntime.jsxs("div",{className:"oui-flex oui-flex-row oui-justify-between oui-gap-4",children:[jsxRuntime.jsx("div",{className:"oui-text-base-contrast-36",children:t}),jsxRuntime.jsx("div",{className:"oui-text-right",children:jsxRuntime.jsx(ui$1.Text.numeral,{dp:i,children:o})})]})};var Ir=e=>{let{data:t}=e,o=react.useMemo(()=>{let i=Number.NaN,r=t.length-1;for(;Number.isNaN(i)&&r>0;)i=t[r][2],r--;return i},[t]);return jsxRuntime.jsx(Ct,{type:"bid",data:t,countQty:o})};var Mr=e=>{let{data:t}=e,o=react.useMemo(()=>{let i=Number.NaN,r=t.length,n=0;for(;Number.isNaN(i)&&n<r;)i=t[n][2],n++;return i},[t]);return jsxRuntime.jsx(Ct,{type:"ask",data:t,countQty:o})};var wt=e=>{let{markPrice:t=0,lastPrice:o,quote_dp:i,className:r,iconSize:n=18}=e,[a,s]=o,l=s<a,c=s>a;return jsxRuntime.jsxs(ui$1.Flex,{gap:1,className:ui$1.cn(c?"oui-text-trade-profit":l?"oui-text-trade-loss":"",r),children:[jsxRuntime.jsx(ui$1.Text.numeral,{dp:i,intensity:98,children:s}),jsxRuntime.jsxs(ui$1.Box,{width:19,children:[l&&jsxRuntime.jsx(ui$1.ArrowDownShortIcon,{size:n,color:"danger",opacity:1}),c&&jsxRuntime.jsx(ui$1.ArrowUpShortIcon,{size:n,color:"success",opacity:1})]})]})};var vt=e=>{let{isMobile:t}=ui$1.useScreen();return t?jsxRuntime.jsx(Gl,{...e}):jsxRuntime.jsx(Ul,{...e})},Ul=e=>{let{quote_dp:t,className:o,iconSize:i=18}=e;return jsxRuntime.jsx(ui$1.Tooltip,{content:"Obtained from a third-party oracle, the mark price is calculated as the median of three prices: the last price, the fair price based on the funding rate basis, and the fair price based on the order books.",className:"oui-max-w-[270px]",children:jsxRuntime.jsxs(ui$1.Flex,{gap:1,className:ui$1.cn("oui-cursor-pointer oui-text-2xs",o),children:[jsxRuntime.jsx(Er,{size:i}),jsxRuntime.jsx(ui$1.Text.numeral,{dp:t,color:"warning",className:"oui-underline oui-text-base oui-decoration-dashed oui-decoration-1 oui-underline-offset-4 oui-decoration-warning-darken",children:e.markPrice})]})})},Gl=e=>{let{quote_dp:t,className:o,iconSize:i=18}=e,[r,n]=react.useState(!1);return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsxs(ui$1.Flex,{gap:1,className:ui$1.cn("oui-cursor-pointer oui-text-2xs",o),onClick:()=>{n(!0);},children:[jsxRuntime.jsx(Er,{size:i}),jsxRuntime.jsx(ui$1.Text.numeral,{dp:t,color:"warning",className:"oui-underline oui-decoration-dashed oui-decoration-1 oui-underline-offset-4 oui-decoration-warning-darken",children:e.markPrice})]}),jsxRuntime.jsx(ui$1.SimpleDialog,{size:"xs",open:r,onOpenChange:n,title:"Tips",actions:{primary:{label:"OK",onClick:()=>n(!1)}},children:jsxRuntime.jsx(ui$1.Text,{children:"Obtained from a third-party oracle, the mark price is calculated as the median of three prices: the last price, the fair price based on the funding rate basis, and the fair price based on the order books."})})]})},Er=e=>jsxRuntime.jsx("svg",{width:e.size,height:e.size,viewBox:"0 0 18 18",fill:"currenColor",xmlns:"http://www.w3.org/2000/svg",className:"oui-fill-warning-darken",children:jsxRuntime.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M3.75 1.5a.75.75 0 0 1 .75.75h6a.75.75 0 0 1 .75.75v1.5h3a.75.75 0 0 1 .75.75V12a.75.75 0 0 1-.75.75H7.5a.75.75 0 0 1-.75-.75v-1.5H4.5v5.25a.75.75 0 0 1-1.5 0V2.25a.75.75 0 0 1 .75-.75M4.5 9h5.25V3.75H4.5zm6.75-3v3.75a.75.75 0 0 1-.75.75H8.25v.75h5.25V6z"})});var Ur=e=>{let{markPrice:t=0,lastPrice:o,asks:i,bids:r,symbolInfo:n}=e,{showTotal:a}=q();return jsxRuntime.jsxs("div",{className:"oui-flex oui-flex-row oui-pl-3 oui-tabular-nums oui-justify-between oui-text-base-contrast-80 oui-text-xs oui-relative oui-cursor-pointer oui-py-[6px]",children:[jsxRuntime.jsxs("div",{className:ui$1.cn("oui-basis-7/12 oui-flex oui-flex-row oui-items-center oui-mr-2 oui-justify-between",a&&"oui-basis-5/12"),children:[jsxRuntime.jsx(wt,{markPrice:t,lastPrice:o,quote_dp:n.quote_dp,className:"oui-text-base"}),jsxRuntime.jsx(vt,{markPrice:t,quote_dp:n.quote_dp})]}),jsxRuntime.jsx("div",{className:ui$1.cn("oui-basis-5/12 oui-flex oui-items-center oui-fex-row oui-overflow-hidden oui-relative oui-justify-end",a&&"oui-basis-7/12","oui-pr-3"),children:jsxRuntime.jsx(Yl,{asks:i,bids:r})})]})},Yl=e=>{let{asks:t,bids:o}=e,i=react.useMemo(()=>{if(o.length===0&&t.length===0)return 0;let r=Number.isNaN(o[0][0])?0:o[0][0],n=t.reverse().findIndex(l=>!Number.isNaN(l[0])),a=0;n!==-1&&(a=Number.isNaN(t[n][0])?0:t[n][0]);let s=new utils.Decimal(a).sub(r).div(new utils.Decimal(a).add(r).div(2));return Math.ceil(s.toNumber()*1e6+.1)/1e4},[t,o]);return jsxRuntime.jsx("div",{children:jsxRuntime.jsx(ui$1.Tooltip,{content:"Spread Ratio of the ask1 and bid1.",className:"oui-max-w-[240px]",children:jsxRuntime.jsx(ui$1.Text,{size:"2xs",intensity:36,className:"oui-cursor-pointer oui-underline oui-decoration-dashed oui-decoration-1 oui-underline-offset-4 oui-decoration-base-contrast-36",children:`${i}%`})})})};var Gr=e=>{let{showTotal:t}=q();return jsxRuntime.jsxs(ui$1.Flex,{pl:3,justify:"between",className:"oui-py-[6px]",children:[jsxRuntime.jsxs(ui$1.Flex,{gap:1,className:ui$1.cn("oui-basis-7/12",t&&"oui-basis-1/2"),children:[jsxRuntime.jsx(ui$1.Box,{width:"100%",children:jsxRuntime.jsx(Tt,{name:"Price",token:e.quote,id:"oui-order-book-header-price"})}),jsxRuntime.jsx(ui$1.Box,{width:"100%",children:jsxRuntime.jsx(Tt,{name:"Qty",token:e.base,id:"oui-order-book-header-qty",justifyEnd:!0})})]}),jsxRuntime.jsxs(ui$1.Flex,{gap:1,pr:3,className:ui$1.cn("oui-basis-5/12",t&&"oui-basis-1/2"),children:[jsxRuntime.jsx(ui$1.Box,{width:"100%",children:jsxRuntime.jsx(Tt,{name:"Total",token:e.base,id:"oui-order-book-header-total-base",justifyEnd:!0})}),t&&jsxRuntime.jsx(ui$1.Box,{width:"100%",children:jsxRuntime.jsx(Tt,{name:"Total",token:e.quote,id:"oui-order-book-header-total-quote",justifyEnd:!0})})]})]})},Tt=e=>{let{name:t,token:o,justifyEnd:i=!1}=e;return jsxRuntime.jsxs(ui$1.Flex,{id:e.id,className:ui$1.cn("oui-text-base-contrast-36 oui-text-xs oui-items-end",i&&"oui-justify-end"),children:[jsxRuntime.jsx("span",{children:t}),jsxRuntime.jsx("span",{children:`(${o})`})]})};var $r=e=>{let t=react.useMemo(()=>e.depths.map(o=>({value:o,label:`${o}`})),[e.depths]);return jsxRuntime.jsx(ui$1.Box,{pl:3,width:97,className:"oui-py-[10px]",children:jsxRuntime.jsx(ui$1.Select.options,{options:t,size:"xs",value:e.value,onValueChange:o=>{e.onChange?.(o);}})})};var Kr=e=>{let{lastPrice:t,markPrice:o,quote:i,base:r,isLoading:n,onDepthChange:a}=e,s=react.useRef(null),[l,c]=react.useState(!1),u=[{left:370,right:600},{left:740,right:800}];return react.useEffect(()=>{let d=new ResizeObserver(m=>{for(let b of m){let {inlineSize:p}=b.borderBoxSize[0];u.reduce((v,F)=>v+(p>=F.left&&p<F.right?1:0),0);c(p>=360);}}),g=s.current;return g&&d.observe(g),()=>{g&&d.unobserve(g);}},[]),jsxRuntime.jsx(xt,{cellHeight:e.cellHeight??20,onItemClick:e.onItemClick,depth:e.activeDepth,showTotal:l,pendingOrders:e.pendingOrders||[],symbolInfo:e.symbolInfo,children:jsxRuntime.jsxs(ui$1.Grid,{cols:1,rows:5,id:"oui-orderbook-desktop",ref:s,className:"oui-grid-rows-[auto,auto,1fr,auto,1fr] oui-relative oui-h-full oui-w-full",children:[jsxRuntime.jsx($r,{depths:e.depths,value:e.activeDepth,onChange:a}),jsxRuntime.jsx(Gr,{quote:i,base:r}),jsxRuntime.jsx(Mr,{data:[...e.asks]}),jsxRuntime.jsx(Ur,{lastPrice:t,markPrice:o,asks:[...e.asks],bids:[...e.bids],symbolInfo:e.symbolInfo}),jsxRuntime.jsx(Ir,{data:[...e.bids]}),n&&jsxRuntime.jsx("div",{className:"oui-absolute oui-left-0 oui-top-0 oui-right-0 oui-bottom-0 oui-z-10 oui-flex oui-items-center oui-justify-center oui-bg-bg-8/70",children:jsxRuntime.jsx(ui$1.Spinner,{})})]})})};var Yr=e=>{let{mode:t,onModeChange:o}=q(),i=react.useMemo(()=>t==="amount"?e.quote:e.base,[t,e.quote,e.base]),r=react.useMemo(()=>t==="amount"?"Value":"Qty",[t]);return jsxRuntime.jsxs(ui$1.Flex,{justify:"between",width:"100%",className:"oui-text-base-contrast-36 oui-text-2xs oui-py-[5px]",children:[jsxRuntime.jsxs(ui$1.Flex,{direction:"column",itemAlign:"start",id:"oui-order-book-header-price",children:[jsxRuntime.jsx(ui$1.Text,{children:"Price"}),jsxRuntime.jsx(ui$1.Text,{children:`(${e.quote})`})]}),jsxRuntime.jsxs(ui$1.Flex,{direction:"column",itemAlign:"end",className:"oui-cursor-pointer",onClick:()=>o?.(t==="amount"?"quantity":"amount"),children:[jsxRuntime.jsx(ui$1.Text,{children:r}),jsxRuntime.jsx(ui$1.Text,{children:`(${i})`})]})]})};var jr=e=>{let t=e.accumulated/e.count*100,{cellHeight:o,onItemClick:i,depth:r,showTotal:n,symbolInfo:a}=react.useContext(bt),{base_dp:s,quote_dp:l}=a,c=Number.isNaN(e.quantity)?"-":e.mode==="amount"?new utils.Decimal(e.quantity).mul(e.price).toString():e.quantity;n&&(c=e.quantity);let u=react.useMemo(()=>utils.getPrecisionByNumber(r||`${l}`),[r,l]);return jsxRuntime.jsxs(ui$1.Box,{className:ui$1.cn("oui-overflow-hidden oui-relative oui-cursor-pointer oui-tabular-nums oui-text-2xs oui-w-full",n&&"oui-flex-1"),style:{height:`${o}px`},onClick:d=>{Number.isNaN(e.price)||Number.isNaN(e.quantity)||i?.([e.price,e.quantity]);},children:[jsxRuntime.jsxs(ui$1.Flex,{justify:"between",children:[jsxRuntime.jsx(ui$1.Text.numeral,{color:e.type==="bid"?"buy":"sell",dp:u,children:e.price}),jsxRuntime.jsx(ui$1.Text.numeral,{dp:e.mode==="amount"?2:s,className:"oui-text-base-contrast-80",children:c})]}),Number.isNaN(t)||n?null:jsxRuntime.jsx(yt,{width:t,className:e.type==="ask"?"oui-bg-trade-loss/20":"oui-bg-trade-profit/20"})]})};var Lt=e=>{let{data:t}=e,{mode:o}=q();return jsxRuntime.jsx(ui$1.Box,{className:"oui-order-book-list oui-flex oui-flex-col oui-gap-[1px] oui-w-full",children:t.map((i,r)=>jsxRuntime.jsx(jr,{background:"",price:i[0],quantity:i[1],accumulated:i[2],count:e.countQty,type:e.type,mode:o},r))})};var tn=e=>{let{data:t}=e,o=react.useMemo(()=>{let i=Number.NaN,r=t.length-1;for(;Number.isNaN(i)&&r>0;)i=t[r][2],r--;return i},[t]);return jsxRuntime.jsx(Lt,{type:"bid",data:t,countQty:o})};var on=e=>{let{data:t}=e,o=react.useMemo(()=>{let i=Number.NaN,r=t.length,n=0;for(;Number.isNaN(i)&&n<r;)i=t[n][2],n++;return i},[t]);return jsxRuntime.jsx(Lt,{type:"ask",data:t,countQty:o})};var nn=e=>{let{symbolInfo:t}=q(),{quote_dp:o}=t;return jsxRuntime.jsxs(ui$1.Flex,{id:"oui-order-book-mark-price",className:"oui-py-[6px]",width:"100%",justify:"between",children:[jsxRuntime.jsx(wt,{markPrice:e.markPrice,lastPrice:e.lastPrice,quote_dp:o,className:"oui-text-sm",iconSize:14}),jsxRuntime.jsx(vt,{markPrice:e.markPrice,quote_dp:o,className:"oui-text-2xs",iconSize:12})]})};var sn=e=>{let t=react.useMemo(()=>e.depth.map(o=>({value:o,label:`${o}`})),[e.depth]);return jsxRuntime.jsx(ui$1.Box,{id:"oui-order-book-depth",className:"oui-pt-2 oui-w-full",children:jsxRuntime.jsx(ui$1.Picker,{options:t,fullWidth:!0,size:"sm",value:e.value,className:"oui-text-2xs oui-text-base-contrast-54",onValueChange:o=>{e.onChange?.(o);}})})};var Do=e=>{let t=e.data.est_funding_rate,o=e.data.countDown;return jsxRuntime.jsxs(ui$1.Flex,{direction:"column",itemAlign:"start",pb:2,children:[jsxRuntime.jsx(ui$1.Text,{intensity:36,size:"2xs",children:"Pred. funding rate"}),t===null?"--":jsxRuntime.jsxs("div",{className:"orderly-flex orderly-gap-1 oui-text-2xs oui-text-base-contrast-36",children:[jsxRuntime.jsx(ui$1.Text.numeral,{coloring:!0,suffix:"%",dp:4,children:t??"--"}),jsxRuntime.jsx("span",{children:" in"}),jsxRuntime.jsx("span",{children:" "+o})]})]})};var Fo=e=>({data:hooks.useFundingRate(e)});var Lo=e=>{let t=Fo(e.symbol);return jsxRuntime.jsx(Do,{...t})};var cn=e=>{let{lastPrice:t,markPrice:o,quote:i,base:r,isLoading:n,onDepthChange:a}=e,s=`PERP_${e.symbolInfo.base}_${e.symbolInfo.quote}`;return jsxRuntime.jsx(xt,{cellHeight:e.cellHeight??20,onItemClick:e.onItemClick,depth:e.activeDepth,pendingOrders:[],showTotal:!1,symbolInfo:e.symbolInfo,children:jsxRuntime.jsxs(ui$1.Flex,{direction:"column",p:2,id:"oui-orderbook-mobile",className:ui$1.cn("oui-h-full oui-wfull oui-relative",e.className),justify:"start",itemAlign:"start",children:[jsxRuntime.jsx(Lo,{symbol:s}),jsxRuntime.jsx(Yr,{quote:i,base:r}),jsxRuntime.jsx(on,{data:e.asks}),jsxRuntime.jsx(nn,{lastPrice:t,markPrice:o}),jsxRuntime.jsx(tn,{data:e.bids}),jsxRuntime.jsx(sn,{depth:e.depths||[],value:e.activeDepth,onChange:a}),n&&jsxRuntime.jsx("div",{className:"oui-absolute oui-left-0 oui-top-0 oui-right-0 oui-bottom-0 oui-z-10 oui-flex oui-items-center oui-justify-center oui-bg-base-800/70 oui-h-full oui-min-h-[420px]",children:jsxRuntime.jsx(ui$1.Spinner,{})})]})})};var Oo=e=>jsxRuntime.jsx(ui$1.Box,{className:"oui-font-semibold",width:"100%",height:"100%",children:e.isMobile?jsxRuntime.jsx(cn,{level:e.level,asks:e.asks,bids:e.bids,markPrice:e.markPrice,lastPrice:e.lastPrice,depths:e.depths,activeDepth:e.selDepth,base:e.base,quote:e.quote,isLoading:e.isLoading,onItemClick:e.onItemClick,cellHeight:e.cellHeight,onDepthChange:e.onDepthChange,className:e.className,symbolInfo:e.symbolInfo}):jsxRuntime.jsx(Kr,{level:e.level,asks:e.asks,bids:e.bids,markPrice:e.markPrice,lastPrice:e.lastPrice,depths:e.depths,activeDepth:e.selDepth,base:e.base,quote:e.quote,isLoading:e.isLoading,onItemClick:e.onItemClick,cellHeight:e.cellHeight,onDepthChange:e.onDepthChange,className:e.className,pendingOrders:e.pendingOrders,symbolInfo:e.symbolInfo})});var Ze=20,gn=104,Ro=e=>{let{symbol:t,height:o}=e,i=hooks.useSymbolsInfo()[e.symbol],[r,n]=react.useState(Ze),[a,s]=react.useState(10),{base:l,quote:c,quote_dp:u}=Ue(i),[d,{onDepthChange:g,isLoading:m,onItemClick:b,depth:p,allDepths:y}]=hooks.useOrderbookStream(t,void 0,{level:a}),v=_u(t);react.useEffect(()=>{if(o){let W=Math.floor((o-gn)/((Ze+1)*2)),Ce=(Ze+1)*2*W,ie=o-gn-Ce;ie>10?n(Ze+ie/W/2):n(Ze),s(W);}},[o]);let F=react.useMemo(()=>typeof p>"u"||typeof u>"u"?void 0:utils.removeTrailingZeros(p),[p,u]),C=react.useMemo(()=>y?.map(W=>utils.removeTrailingZeros(W))||[],[y,u]),{isMobile:R}=ui$1.useScreen();return {level:a,asks:d?.asks,bids:d?.bids,markPrice:d?.markPrice,lastPrice:d?.middlePrice,depths:C,selDepth:F,base:l,quote:c,isLoading:m,onItemClick:b,cellHeight:r,onDepthChange:g,pendingOrders:v,symbolInfo:Ue(i),isMobile:R}},_u=e=>{let[t]=hooks.useOrderStream({status:types.OrderStatus.INCOMPLETE,symbol:e});return react.useMemo(()=>t?.filter(r=>r.symbol===e).reduce((r,n)=>{let a=n.price||n.trigger_price||0;return [...r,a]},[]),[t,e])};var Re=e=>{let t=Ro({symbol:e.symbol,height:e.height});return jsxRuntime.jsx(Oo,{...t,className:e.className})};var Io=e=>{let{riskRate:t,riskRateColor:o,isConnected:i,currentLeverage:r,maxLeverage:n}=e,{isHigh:a,isMedium:s,isLow:l,isDefault:c}=o,{wrongNetwork:u}=reactApp.useAppContext(),d=u?"":a?"oui-text-danger":s?"oui-text-warning-darken":l?ui$1.gradientTextVariants({color:"brand"}):"";return jsxRuntime.jsxs(ui$1.Box,{"data-risk":"",className:"oui-space-y-2",children:[jsxRuntime.jsx(ui$1.Flex,{itemAlign:"center",justify:"start",className:"oui-w-full oui-bg-base-6 oui-rounded-full oui-h-2 oui-px-[1px]",children:jsxRuntime.jsx(ui$1.Box,{className:u?"oui-bg-gradient-to-r oui-opacity-20 oui-from-[#26fefe] oui-via-[#ff7d00] oui-to-[#d92d6b] oui-h-1.5 oui-rounded-full":a?"oui-bg-gradient-to-tr oui-from-[#791438] oui-to-[#ff447c] oui-h-1.5 oui-rounded-full":s?"oui-bg-gradient-to-tr oui-from-[#792e00] oui-to-[#ffb65d] oui-h-1.5 oui-rounded-full":l?"oui-bg-gradient-to-tr oui-from-[#59b0fe] oui-to-[#26fefe] oui-h-1.5 oui-rounded-full":"oui-bg-gradient-to-r oui-opacity-20 oui-from-[#26fefe] oui-via-[#ff7d00] oui-to-[#d92d6b] oui-h-1.5 oui-rounded-full",style:t&&t!=="--"?{width:t}:{width:"100%"}})}),jsxRuntime.jsxs(ui$1.Flex,{className:"oui-gap-2",children:[jsxRuntime.jsxs(ui$1.Flex,{direction:"column",itemAlign:"start",className:"oui-flex-1",children:[jsxRuntime.jsx(ui$1.Tooltip,{content:jsxRuntime.jsx(mo,{description:"The Risk rate is used to assess the risk level of an account. When the Risk rate reaches 100%, the account will be liquidated",formula:"Risk rate = Maintenance margin ratio / Margin ratio * 100%"}),children:jsxRuntime.jsx(ui$1.Text,{size:"2xs",color:"neutral",weight:"semibold",className:"oui-cursor-pointer oui-border-b oui-border-dashed oui-border-b-white/10",children:"Risk rate"})}),jsxRuntime.jsx(ui$1.Text,{size:"xs",color:"neutral",weight:"semibold",className:ui$1.cn(d),children:t??"--"})]}),jsxRuntime.jsxs(ui$1.Flex,{direction:"column",itemAlign:"end",className:"oui-flex-1",children:[jsxRuntime.jsx(ui$1.Tooltip,{open:!1,content:jsxRuntime.jsx("div",{children:"hint test"}),children:jsxRuntime.jsx(ui$1.Text,{size:"2xs",color:"neutral",weight:"semibold",className:"oui-cursor-pointer",children:"Max account leverage"})}),jsxRuntime.jsxs(ui$1.Flex,{className:"oui-gap-1",children:[jsxRuntime.jsx(ui$1.Text.numeral,{dp:2,padding:!1,suffix:r?"x":void 0,children:r??"--"}),jsxRuntime.jsx("span",{className:"oui-text-base-contrast-54",children:"/"}),jsxRuntime.jsxs("button",{className:"oui-flex oui-items-center oui-gap-1",onClick:()=>{ui$1.modal.show(uiLeverage.LeverageWidgetId,{currentLeverage:5});},"data-testid":"oui-testid-riskRate-leverage-button",children:[jsxRuntime.jsx(ui$1.Text.numeral,{dp:2,padding:!1,suffix:n?"x":void 0,"data-testid":"oui-testid-riskRate-leverage-value",children:n??"--"}),typeof n<"u"&&n!==null&&jsxRuntime.jsx(ui$1.EditIcon,{size:12,color:"white"})]})]})]})]})]})};var Ku=e=>{if(e===null)return {isHigh:!1,isMedium:!1,isLow:!1,isDefault:!0};let t=e<40,o=e>=40&&e<80,i=e>=80;return {isHigh:i,isMedium:o,isLow:t,isDefault:!t&&!o&&!i}},yn=()=>{let{state:e}=hooks.useAccount(),t=e.status>=types.AccountStatusEnum.EnableTrading||e.status===types.AccountStatusEnum.EnableTradingWithoutConnected,{marginRatio:o,currentLeverage:i,mmr:r}=hooks.useMarginRatio(),[n]=hooks.useLeverage(),a=react.useMemo(()=>!t||o===null||r===null?"--":o===0||r===0?"0%":`${new utils.Decimal(r).div(o).mul(100).todp(2,utils.Decimal.ROUND_UP).toString().replace(/\.?0+$/,"")}%`,[t,o,r]),s=a==="--"?null:parseFloat(a),l=react.useMemo(()=>Ku(s),[s]),c=reactApp.useDataTap(i),u=reactApp.useDataTap(n);return {riskRate:reactApp.useDataTap(a),riskRateColor:l,isConnected:t,currentLeverage:c,maxLeverage:u}};var _o=()=>{let e=yn();return jsxRuntime.jsx(Io,{...e})};var zo=e=>jsxRuntime.jsx("div",{ref:e.containerRef,className:"oui-h-full",children:(e.containerSize?.width||0)>=572?jsxRuntime.jsx(tc,{...e}):jsxRuntime.jsx(oc,{...e})}),tc=e=>jsxRuntime.jsxs(ui$1.Grid,{cols:2,width:"100%",gap:3,className:"oui-auto-rows-fr",style:{height:e.containerSize?.height},children:[jsxRuntime.jsxs(ui$1.Flex,{direction:"column",itemAlign:"start",pt:3,pb:3,r:"2xl",className:"oui-bg-base-9",children:[jsxRuntime.jsx(wn,{title:"Order book",className:"oui-pl-3 oui-text-sm"}),jsxRuntime.jsx(Re,{symbol:e.symbol,height:e.containerSize?e.containerSize.height-29-24:void 0})]}),jsxRuntime.jsxs(ui$1.Flex,{direction:"column",itemAlign:"start",py:3,r:"2xl",className:"oui-bg-base-9 oui-h-full",children:[jsxRuntime.jsx(wn,{title:"Last trades",className:"oui-text-sm oui-px-3"}),jsxRuntime.jsx(Le,{symbol:e.symbol,style:{height:e.containerSize&&e.containerSize.height-29-24},classNames:{listHeader:"oui-px-3",list:"oui-px-3"}})]})]}),oc=e=>jsxRuntime.jsx(ui$1.Box,{pt:3,pb:3,pr:0,r:"2xl",className:"oui-bg-base-9",style:{maxHeight:e.containerSize?.height},children:jsxRuntime.jsxs(ui$1.Tabs,{value:e.tab,variant:"contained",onValueChange:t=>{e.setTab(t);},classNames:{tabsList:"oui-pl-3"},size:"lg",children:[jsxRuntime.jsx(ui$1.TabPanel,{value:"orderBook",title:"Order book",children:jsxRuntime.jsx(Re,{symbol:e.symbol,height:e.containerSize?e.containerSize.height-29-18:void 0})}),jsxRuntime.jsx(ui$1.TabPanel,{value:"lastTrades",title:"Last trades",children:jsxRuntime.jsx(Le,{symbol:e.symbol,style:{height:e.containerSize&&e.containerSize.height-29-18},classNames:{root:"oui-pt-[6px]",listHeader:"oui-px-3",list:"oui-px-3"}})})]})}),wn=e=>jsxRuntime.jsx(ui$1.Text,{size:"base",intensity:80,className:ui$1.cn("oui-pb-[5px]",e.className),children:e.title});var Ho=e=>{let[t,o]=react.useState(void 0),[i,r]=react.useState("orderBook"),n=react.useRef();return react.useEffect(()=>{let a=new ResizeObserver(l=>{for(let c of l){let{width:u,height:d}=c.contentRect;o({width:u,height:d});}}),s=n.current;return s&&a.observe(s),()=>{s&&a.unobserve(s);}},[]),{symbol:e,containerSize:t,containerRef:n,tab:i,setTab:r}};var Eo=e=>{let t=Ho(e.symbol);return jsxRuntime.jsx(zo,{...t})};var kn=e=>{let{onMouseDown:t,mode:o="horizontal",...i}=e,r=react.useMemo(()=>e.className?.split(" ").includes("disable"),[e.className]),n=react.useMemo(()=>e.className?.split(" ").filter(a=>a!=="disable"),[e.className]);return jsxRuntime.jsx("div",{...i,className:ui$1.cn(n,"!oui-transition-none","!oui-shadow-none !oui-bg-transparent","hover:!oui-bg-primary-light hover:!oui-shadow-[0px_0px_4px_0px] hover:!oui-shadow-primary-light/80","active:!oui-bg-primary-light active:!oui-shadow-[0px_0px_4px_0px] active:!oui-shadow-primary-light/80","focus:!oui-bg-primary-light focus:!oui-shadow-[0px_0px_4px_0px] focus:!oui-shadow-primary-light/80",o==="horizontal"?"!oui-w-[2px] !oui-min-w-[2px] !oui-mx-1":"!oui-h-[2px] !oui-min-h-[2px] !oui-my-1",r&&"oui-pointer-events-none"),children:jsxRuntime.jsx("div",{onMouseDown:t,className:ui$1.cn("!oui-transition-none",o==="horizontal"?"after:!oui-w-[2px]":"after:!oui-h-[2px]","after:!oui-bg-transparent after:!oui-shadow-transparent")})})};var Me=e=>{let{onSizeChange:t,...o}=e;return jsxRuntime.jsx(ac__default.default,{...o,lineBar:!0,renderBar:i=>jsxRuntime.jsx(kn,{...i,mode:e.mode}),onDragEnd:(i,r,n)=>{t?.(`${r}`);}})};var Vo=e=>jsxRuntime.jsx("button",{onClick:t=>{ui$1.modal.show(uiChainSelector.ChainSelectorSheetId,{bridgeLessOnly:!1,isWrongNetwork:e.isWrongNetwork}).then(o=>{o?.chainId&&e.setChainId(o?.chainId),ui$1.toast.success("Network switched");},o=>{});},children:jsxRuntime.jsxs(ui$1.Box,{className:"oui-relative oui-rounded-t-[6px] oui-rounded-bl-[6px] oui-rounded-br-[3px] oui-bg-base-5 oui-px-2 oui-h-7 oui-flex oui-items-center",children:[jsxRuntime.jsx(ui$1.ChainIcon,{chainId:e.chainId??e.defaultChainId,size:"2xs"}),jsxRuntime.jsx("div",{className:"oui-absolute oui-right-0 oui-bottom-0",children:jsxRuntime.jsxs("svg",{width:"9",height:"9",viewBox:"0 0 9 9",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[jsxRuntime.jsx("path",{d:"M9 6V0L0 9h6a3 3 0 0 0 3-3",fill:"url(#a)"}),jsxRuntime.jsx("defs",{children:jsxRuntime.jsxs("linearGradient",{id:"a",x1:"9",y1:"4.5",x2:"0",y2:"4.5",gradientUnits:"userSpaceOnUse",children:[jsxRuntime.jsx("stop",{stopColor:"rgb(var(--oui-gradient-brand-end))"}),jsxRuntime.jsx("stop",{offset:"1",stopColor:"rgb(var(--oui-gradient-brand-start))"})]})})]})})]})});var qo=()=>{let{account:e}=hooks.useAccount(),t=hooks.useConfig(),[o,i]=react.useState(e.chainId);react.useEffect(()=>{i(e.chainId);},[e.chainId]);let r=react.useMemo(()=>{if(o)return utils.isTestnet(Number(o))},[o]),{wrongNetwork:n}=reactApp.useAppContext(),a=t.get("networkId");return {defaultChainId:react.useMemo(()=>a==="testnet"?421614:42161,[]),chainId:o,setChainId:i,isTestnetChain:r,networkId:a,isWrongNetwork:n}};var Uo=()=>{let e=qo();return jsxRuntime.jsx(Vo,{...e})};var Go=e=>jsxRuntime.jsx(uiConnector.AuthGuard,{buttonProps:{size:"sm"},children:jsxRuntime.jsx(ui$1.Button,{variant:"gradient",size:"sm",className:"oui-max-w-[83px]",onClick:t=>{e.onShowAccountSheet();},children:ui$1.formatAddress(e.address,[4,4])})});var Bn=()=>jsxRuntime.jsxs("svg",{width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",className:"oui-rounded-full",children:[jsxRuntime.jsxs("g",{clipPath:"url(#a)",children:[jsxRuntime.jsx("path",{d:"m31.002 14.493-8.326-22.51L.166.31l8.327 22.51z",fill:"#03435D"}),jsxRuntime.jsx("path",{d:"m4.456-8.716-18.03 15.84 15.84 18.03 18.03-15.84z",fill:"#157CF2"}),jsxRuntime.jsx("path",{d:"m17.548 38.67 22.825-7.416-7.416-22.825-22.826 7.416z",fill:"#F3E200"})]}),jsxRuntime.jsx("defs",{children:jsxRuntime.jsx("clipPath",{id:"a",children:jsxRuntime.jsx("rect",{width:"24",height:"24",rx:"12",fill:"#fff"})})})]}),On=()=>jsxRuntime.jsx("svg",{width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:jsxRuntime.jsx("path",{d:"M5.832 2.492A3.333 3.333 0 0 0 2.5 5.826v5a3.333 3.333 0 0 0 3.333 3.333 3.333 3.333 0 0 0 3.334 3.333h5a3.333 3.333 0 0 0 3.333-3.333v-5a3.333 3.333 0 0 0-3.333-3.333 3.333 3.333 0 0 0-3.334-3.334zm8.334 5c.92 0 1.666.746 1.666 1.667v5c0 .92-.746 1.666-1.666 1.666h-5c-.92 0-1.667-.745-1.667-1.666h3.333a3.333 3.333 0 0 0 3.334-3.334z",fill:"rgb(var(--oui-color-primary))"})}),At=e=>{let{size:t=20}=e;return jsxRuntime.jsxs("svg",{width:t,height:t,viewBox:"0 0 20 20",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[jsxRuntime.jsxs("g",{clipPath:"url(#a)",children:[jsxRuntime.jsx("path",{d:"M10 20c5.542 0 10-4.458 10-10S15.542 0 10 0 0 4.458 0 10s4.458 10 10 10",fill:"#2775CA"}),jsxRuntime.jsx("path",{d:"M13 11.473c0-1.452-.94-1.95-2.82-2.158-1.344-.166-1.613-.498-1.613-1.078s.448-.955 1.343-.955c.806 0 1.254.25 1.478.872.045.124.18.207.313.207h.717c.179 0 .313-.125.313-.29v-.042c-.179-.913-.985-1.618-2.015-1.701v-.996c0-.166-.134-.29-.358-.332h-.671c-.18 0-.314.124-.359.332v.954c-1.343.166-2.194.996-2.194 2.034 0 1.369.896 1.908 2.776 2.116 1.254.207 1.657.456 1.657 1.12s-.627 1.12-1.477 1.12c-1.165 0-1.568-.456-1.702-1.078a.32.32 0 0 0-.313-.25h-.762c-.179 0-.313.125-.313.291v.042c.179 1.037.895 1.784 2.373 1.991v.996c0 .166.134.29.358.332h.672c.18 0 .313-.124.358-.332v-.996C12.105 13.465 13 12.593 13 11.473",fill:"#fff",fillOpacity:".98"}),jsxRuntime.jsx("path",{d:"M7.74 16.57c-3.458-1.215-5.23-4.986-3.945-8.324.665-1.821 2.127-3.208 3.944-3.859.178-.086.266-.216.266-.433v-.607c0-.174-.088-.304-.266-.347-.044 0-.133 0-.177.043-4.21 1.3-6.516 5.68-5.186 9.798.798 2.428 2.704 4.292 5.186 5.072.177.087.355 0 .399-.173.044-.043.044-.087.044-.173v-.608c0-.13-.133-.303-.266-.39m4.698-13.527c-.178-.086-.355 0-.4.174-.043.043-.043.086-.043.173v.607c0 .174.133.347.266.434 3.457 1.213 5.23 4.985 3.944 8.323-.664 1.821-2.127 3.209-3.944 3.859-.178.086-.266.216-.266.433v.607c0 .174.088.304.266.347.044 0 .133 0 .177-.043 4.21-1.3 6.515-5.68 5.186-9.798-.798-2.471-2.748-4.335-5.186-5.116",fill:"#fff"})]}),jsxRuntime.jsx("defs",{children:jsxRuntime.jsx("clipPath",{id:"a",children:jsxRuntime.jsx("path",{fill:"#fff",d:"M0 0h20v20H0z"})})})]})},An=e=>{return jsxRuntime.jsxs("svg",{width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[jsxRuntime.jsxs("g",{clipPath:"url(#clip0_6403_64483)",children:[jsxRuntime.jsx("path",{d:"M10.0245 19.9493C15.5198 19.9493 19.9747 15.4944 19.9747 9.99908C19.9747 4.50371 15.5198 0.0488281 10.0245 0.0488281C4.5291 0.0488281 0.0742188 4.50371 0.0742188 9.99908C0.0742188 15.4944 4.5291 19.9493 10.0245 19.9493Z",fill:"url(#paint0_linear_6403_64483)"}),jsxRuntime.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M14.1553 4.89304C14.2199 4.94541 14.1821 5.04758 14.0989 5.04758H5.95035C5.86716 5.04758 5.82936 4.94541 5.894 4.89304C7.0223 3.97912 8.45953 3.43164 10.0246 3.43164C11.5898 3.43164 13.0269 3.97912 14.1553 4.89304Z",fill:"white"}),jsxRuntime.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M7.47013 11.7869C7.42315 11.7199 7.34748 11.6777 7.26565 11.6777H3.82985C3.75113 11.6777 3.69375 11.7525 3.71563 11.8281C4.5078 14.565 7.0326 16.566 10.0247 16.566C13.017 16.566 15.5417 14.565 16.3339 11.8281C16.3558 11.7525 16.2984 11.6777 16.2197 11.6777H12.7839C12.702 11.6777 12.6264 11.7199 12.5795 11.7869C12.0155 12.5911 11.0815 13.1167 10.0248 13.1167C8.96803 13.1167 8.03406 12.5911 7.47013 11.7869Z",fill:"white"}),jsxRuntime.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M12.3347 7.90519C12.3822 7.95756 12.449 7.9891 12.5196 7.9891H16.1137C16.1952 7.9891 16.253 7.90983 16.2261 7.83301C15.9724 7.10689 15.5948 6.43893 15.1187 5.85447C15.074 5.79961 15.0067 5.76855 14.9358 5.76855H5.11323C5.04247 5.76855 4.97512 5.79961 4.93044 5.85447C4.45429 6.43893 4.0767 7.10689 3.82306 7.83301C3.79622 7.90983 3.85398 7.9891 3.93536 7.9891H7.52952C7.60022 7.9891 7.66694 7.95756 7.71445 7.90519C8.28491 7.2763 9.10861 6.88136 10.0246 6.88136C10.9405 6.88136 11.7643 7.2763 12.3347 7.90519Z",fill:"white"}),jsxRuntime.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M13.1164 10.9586C13.0553 10.9586 13.0118 10.899 13.0284 10.8401C13.1033 10.5722 13.1433 10.2898 13.1433 9.9981C13.1433 9.58758 13.064 9.19556 12.9199 8.83657C12.8954 8.77581 12.9392 8.70801 13.0046 8.70801H16.392C16.4349 8.70801 16.472 8.73831 16.4799 8.78052C16.5538 9.17511 16.5925 9.58216 16.5925 9.9982C16.5925 10.2978 16.5724 10.5926 16.5337 10.8815C16.5277 10.9258 16.4897 10.9586 16.4451 10.9586H13.1164ZM7.02223 10.8401C7.03868 10.899 6.99532 10.9586 6.93421 10.9586H3.60551C3.56084 10.9586 3.52285 10.9258 3.5169 10.8815C3.47807 10.5926 3.45801 10.2978 3.45801 9.9982C3.45801 9.58216 3.4967 9.17511 3.57069 8.78052C3.57859 8.73831 3.61563 8.70801 3.65856 8.70801H7.04593C7.11141 8.70801 7.15516 8.77581 7.13076 8.83657C6.98657 9.19556 6.90722 9.58758 6.90722 9.9981C6.90722 10.2898 6.94728 10.5722 7.02223 10.8401Z",fill:"white"})]}),jsxRuntime.jsxs("defs",{children:[jsxRuntime.jsxs("linearGradient",{id:"paint0_linear_6403_64483",x1:"10.0245",y1:"0.0488561",x2:"10.0245",y2:"19.9493",gradientUnits:"userSpaceOnUse",children:[jsxRuntime.jsx("stop",{stopColor:"#C750FF"}),jsxRuntime.jsx("stop",{offset:"1",stopColor:"#5800E8"})]}),jsxRuntime.jsx("clipPath",{id:"clip0_6403_64483",children:jsxRuntime.jsx("rect",{width:"20",height:"20",fill:"white"})})]})]})};var $o=e=>jsxRuntime.jsxs(ui$1.Flex,{direction:"column",gap:4,children:[jsxRuntime.jsx(wc,{...e}),jsxRuntime.jsx(vc,{...e}),jsxRuntime.jsx(Pc,{...e}),jsxRuntime.jsxs(ui$1.Flex,{gap:3,width:"100%",justify:"center",children:[e.showGetTestUSDC&&jsxRuntime.jsx(ui$1.Button,{variant:"outlined",size:"md",onClick:e.onGetTestUSDC,fullWidth:!0,loading:e.gettingTestUSDC,className:"oui-border-primary-light oui-text-primary-light",children:"Get test USDC"}),jsxRuntime.jsx(ui$1.Button,{variant:"outlined",color:"danger",size:"md",onClick:e.onDisconnect,className:e.showGetTestUSDC?"oui-w-full":"oui-w-[50%]",children:"Disconnect"})]})]}),wc=e=>jsxRuntime.jsxs(ui$1.Flex,{width:"100%",justify:"between",children:[jsxRuntime.jsxs(ui$1.Flex,{gap:3,children:[jsxRuntime.jsx(Bn,{}),jsxRuntime.jsxs(ui$1.Flex,{direction:"column",justify:"start",itemAlign:"start",className:"oui-gap-[2px]",children:[jsxRuntime.jsx(ui$1.Text.formatted,{rule:"address",children:e.address}),jsxRuntime.jsx(ui$1.Text.formatted,{size:"2xs",intensity:80,prefix:jsxRuntime.jsx("div",{className:"oui-h-1 oui-w-1 oui-rounded-full oui-bg-success oui-pr-1"}),children:e.chainName})]})]}),jsxRuntime.jsx("button",{className:"oui-cursor-pointer",onClick:()=>{e.onCopyAddress();},children:jsxRuntime.jsx(On,{})})]}),vc=e=>jsxRuntime.jsxs(ui$1.Flex,{direction:"column",gap:3,r:"lg",p:3,className:"oui-bg-base-6",width:"100%",children:[jsxRuntime.jsx("button",{onClick:e.onClickReferral,className:"oui-cursor-pointer oui-w-full",children:jsxRuntime.jsxs(ui$1.Flex,{justify:"between",width:"100%",children:[jsxRuntime.jsx(ui$1.Text,{size:"2xs",children:"Referral"}),jsxRuntime.jsx(ui$1.ArrowRightShortIcon,{color:"white",opacity:.98,size:16})]})}),e.isAffiliate&&jsxRuntime.jsxs(ui$1.Flex,{gradient:"primary",p:4,r:"lg",width:"100%",angle:180,justify:"between",children:[jsxRuntime.jsxs(ui$1.Flex,{direction:"column",itemAlign:"start",children:[jsxRuntime.jsx(ui$1.Text,{size:"xs",children:"Affiliate"}),jsxRuntime.jsx(ui$1.Text,{size:"2xs",intensity:54,children:"(30d commission)"})]}),jsxRuntime.jsxs(ui$1.Flex,{className:"oui-gap-[6px]",children:[jsxRuntime.jsx(At,{}),jsxRuntime.jsx(ui$1.Text.numeral,{dp:2,padding:!1,rm:utils.Decimal.ROUND_DOWN,rule:"price",children:e.affiliateCommission30D??"--"})]})]}),e.isTrader&&jsxRuntime.jsxs(ui$1.Flex,{gradient:"success",p:4,r:"lg",width:"100%",angle:180,justify:"between",children:[jsxRuntime.jsxs(ui$1.Flex,{direction:"column",itemAlign:"start",children:[jsxRuntime.jsx(ui$1.Text,{size:"xs",children:"Trader"}),jsxRuntime.jsx(ui$1.Text,{size:"2xs",intensity:54,children:"(30d commission)"})]}),jsxRuntime.jsxs(ui$1.Flex,{className:"oui-gap-[6px]",children:[jsxRuntime.jsx(At,{}),jsxRuntime.jsx(ui$1.Text.numeral,{dp:2,padding:!1,rm:utils.Decimal.ROUND_DOWN,rule:"price",children:e.traderCommission30D??"--"})]})]})]}),Pc=e=>jsxRuntime.jsxs(ui$1.Flex,{direction:"column",gap:3,r:"lg",p:3,className:"oui-bg-base-6",width:"100%",children:[jsxRuntime.jsx("button",{onClick:e.onClickTradingRewards,className:"oui-cursor-pointer oui-w-full",children:jsxRuntime.jsxs(ui$1.Flex,{justify:"between",width:"100%",children:[jsxRuntime.jsxs("span",{className:"oui-text-2xs",children:["Trading rewards",jsxRuntime.jsx(ui$1.Text,{intensity:54,children:" (epoch "}),e.curEpochId,jsxRuntime.jsx(ui$1.Text,{intensity:54,children:" )"})]}),jsxRuntime.jsx(ui$1.ArrowRightShortIcon,{color:"white",opacity:.98,size:16})]})}),jsxRuntime.jsxs(ui$1.Flex,{p:4,r:"lg",width:"100%",angle:180,justify:"between",className:"oui-bg-gradient-to-t oui-from-[#2d0061] oui-to-[#bd6bed]",children:[jsxRuntime.jsx(ui$1.Text,{size:"2xs",intensity:80,children:"My est. rewards"}),jsxRuntime.jsxs(ui$1.Flex,{className:"oui-gap-[6px]",children:[jsxRuntime.jsx(An,{}),jsxRuntime.jsx(ui$1.Text.numeral,{dp:2,padding:!1,rm:utils.Decimal.ROUND_DOWN,rule:"price",children:e.estRewards})]})]})]});var Xo=e=>{let[t]=hooks.useLocalStorage("orderly_selected_chainId",void 0),{account:o,state:i}=hooks.useAccount(),r=o.accountId,n=o.address,{hide:a}=ui$1.useModal(),s=hooks.useConfig(),{connectedChain:l,disconnect:c,namespace:u}=hooks.useWalletConnector(),d=o.chainId||l?.id||t,g=react.useMemo(()=>d?(i.status===types.AccountStatusEnum.EnableTrading||i.status===types.AccountStatusEnum.EnableTradingWithoutConnected)&&utils.isTestnet(parseInt(d)):!1,[i.status,d]),m=Ec(d),b=s.get("operatorUrl"),p=()=>{navigator.clipboard.writeText(n??""),ui$1.toast.success("Copy success");},{affiliateCommission30D:y,traderCommission30D:v,isAffiliate:F,isTrader:C,onClickReferral:R}=zc(e.onClickReferral),{curEpochId:W,estRewards:Ce,onClickTradingRewards:ie}=Hc(e.onClickTradingRewards),he=async()=>{t&&localStorage.removeItem("orderly_selected_chainId"),await c({label:i.connectWallet?.name}),await o.disconnect(),a();},[De,{isMutating:Fe}]=hooks.useMutation(`${b}/v1/faucet/usdc`);return {accountId:r,address:n,chainId:d,chainName:m,onCopyAddress:p,affiliateCommission30D:y,onClickReferral:R,isAffiliate:F,isTrader:C,traderCommission30D:v,curEpochId:W,onClickTradingRewards:ie,estRewards:Ce,onDisconnect:he,showGetTestUSDC:g,onGetTestUSDC:()=>{if(i.status<types.AccountStatusEnum.EnableTrading&&i.status!==types.AccountStatusEnum.EnableTradingWithoutConnected)return;let D=`${u===types.ChainNamespace.solana?"100":"1,000"} USDC will be added to your balance. Please note this may take up to 3 minutes. Please check back later.`;return De({chain_id:d?.toString(),user_address:i.address,broker_id:s.get("brokerId")}).then(H=>{if(H.success)return ui$1.modal.alert({title:"Get test USDC",message:D,onOk:()=>Promise.resolve(!0)});H.message&&ui$1.toast.error(H.message);},H=>{ui$1.toast.error(H.message);})},gettingTestUSDC:Fe}},zc=e=>{let{data:t,isLoading:o,isAffiliate:i,isTrader:r}=hooks.useReferralInfo(),n=react.useMemo(()=>{if(i)return t?.referrer_info["30d_referrer_rebate"]},[t]),a=react.useMemo(()=>{if(r)return t?.referee_info["30d_referee_rebate"]},[t]);return {onClickReferral:()=>{e?.();},affiliateCommission30D:n,traderCommission30D:a,isAffiliate:i,isTrader:r}},Hc=e=>{let[t]=hooks.useCurEpochEstimate(hooks.TWType.normal),[o,i]=hooks.useEpochInfo(hooks.TWType.normal),r=react.useMemo(()=>i.curEpochInfo?.epoch_id??"--",[i]),n=react.useMemo(()=>typeof t?.est_r_wallet>"u"?"--":t?.est_r_wallet,[t]);return {curEpochId:r,estRewards:n,onClickTradingRewards:()=>{e?.();}}};function Ec(e){let[t,{findByChainId:o}]=hooks.useChains("mainnet",{pick:"network_infos",filter:r=>r.network_infos?.bridge_enable||r.network_infos?.bridgeless});return react.useMemo(()=>{let r=o(parseInt(e),"network_infos");return r?r.name:"Unknown"},[e,o])}var Yo=e=>{let t=Xo(e);return jsxRuntime.jsx($o,{...t})};var Zo=()=>{let{referral:e,tradingRewards:t,bottomSheetLeading:o}=O(),{account:i,state:r}=hooks.useAccount();return {onShowAccountSheet:()=>{ui$1.modal.sheet({title:"Account",leading:o,content:jsxRuntime.jsx(Yo,{...e,...t})});},address:i.address,status:r.status}};var Jo=()=>{let e=Zo();return jsxRuntime.jsx(Go,{...e})};var oi=e=>jsxRuntime.jsxs(ui$1.Flex,{gap:3,children:[jsxRuntime.jsxs(ui$1.Flex,{direction:"column",itemAlign:"start",className:"oui-text-[11px] oui-cursor-pointer",onClick:t=>{e.onShowPortfolioSheet();},children:[jsxRuntime.jsxs(ui$1.Flex,{children:[jsxRuntime.jsx(ui$1.Text,{intensity:54,children:"Total value"}),jsxRuntime.jsx("button",{onClick:t=>{t.stopPropagation(),t.preventDefault(),e.setHideAssets(!e.hideAssets);},className:"oui-px-1",children:e.hideAssets?jsxRuntime.jsx(ui$1.EyeIcon,{color:"primary",opacity:1,size:16,className:"oui-text-primary-light"}):jsxRuntime.jsx(ui$1.EyeCloseIcon,{color:"primary",opacity:1,size:16,className:"oui-text-primary-light"})}),jsxRuntime.jsx(Zc,{})]}),jsxRuntime.jsx(ui$1.Text.numeral,{suffix:jsxRuntime.jsx(ui$1.Text,{intensity:20,children:"\xA0USDC"}),dp:2,visible:!e.hideAssets,children:e.isEnableTrading?e.total??"--":"--"})]}),!e.wrongNetwork&&e.isEnableTrading&&jsxRuntime.jsx(ui$1.Divider,{direction:"vertical",className:"oui-h-[26px]"}),!e.wrongNetwork&&e.isEnableTrading&&jsxRuntime.jsx(ui$1.Button,{variant:"outlined",onClick:t=>{e.onShowPortfolioSheet();},className:"oui-h-[28px] oui-text-2xs oui-text-primary-light oui-border-primary-light",children:utils.commifyOptional(e.currentLeverage,{fix:2})+"x"})]}),Zc=()=>jsxRuntime.jsx("svg",{width:"8",height:"8",viewBox:"0 0 8 8",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:jsxRuntime.jsx("path",{d:"M6.456 3.48a3.5 3.5 0 0 0 .431-.567 9 9 0 0 0 .361-.654l-.648-.66-.107.185q-.071.12-.142.244a3 3 0 0 1-.27.396 1.4 1.4 0 0 1-.318.29.67.67 0 0 1-.38.114q-.307 0-.666-.194t-.742-.42q-.383-.227-.777-.42a1.7 1.7 0 0 0-.771-.194q-.401.001-.72.154a2.1 2.1 0 0 0-.57.404 2.6 2.6 0 0 0-.43.574 5 5 0 0 0-.307.646l.649.66q.165-.437.464-.833.298-.395.742-.396.347 0 .7.194.354.193.721.42.37.227.763.42.396.195.826.195.374.001.665-.155.29-.151.526-.404m.352 2.941a3.5 3.5 0 0 0 .431-.566q.196-.315.361-.654l-.648-.66-.107.184-.142.244a3 3 0 0 1-.27.396 1.4 1.4 0 0 1-.318.29.67.67 0 0 1-.38.115q-.307 0-.666-.195-.36-.193-.742-.42-.383-.226-.778-.42a1.7 1.7 0 0 0-.77-.194q-.401.001-.72.154a2.1 2.1 0 0 0-.57.405 2.6 2.6 0 0 0-.43.574 5 5 0 0 0-.307.646l.649.66q.165-.437.464-.833.297-.395.742-.396.347 0 .7.194.354.193.721.42.369.226.763.42.396.194.826.194.374.001.665-.154.29-.152.526-.404",fill:"#fff",fillOpacity:".54"})});var ii=()=>{let{account:e}=hooks.useAccount(),t=id(),o=rd(),[i,r]=react.useState(!1),n=react.useCallback(async()=>e.settle().catch(l=>{if(l.code==-1104)return ui$1.toast.error("Settlement is only allowed once every 10 minutes. Please try again later."),Promise.reject(l);if(l?.code==="ACTION_REJECTED")return ui$1.toast.error("User rejected the request."),Promise.reject(l)}).then(l=>(ui$1.toast.success("Settlement requested"),Promise.resolve(l))),[e]),a=react.useCallback(()=>{ui$1.modal.show(uiTransfer.DepositAndWithdrawWithSheetId,{activeTab:"deposit"});},[]),s=react.useCallback(()=>{ui$1.modal.show(uiTransfer.DepositAndWithdrawWithSheetId,{activeTab:"withdraw"});},[]);return {...t,...o,onSettlePnL:n,onDeposit:a,onWithdraw:s,showSliderTip:i,setShowSliderTip:r}},id=()=>{let{hideAssets:e,setHideAssets:t}=E(),o=()=>{t(!e);},{totalCollateral:i,freeCollateral:r,totalValue:n,availableBalance:a}=hooks.useCollateral({dp:2});return {hideAssets:e,toggleHideAssets:o,totalCollateral:i,freeCollateral:r,totalValue:n,availableBalance:a}},rd=()=>{let[{aggregated:e,totalUnrealizedROI:t},o]=hooks.usePositionStream(),{marginRatio:i,currentLeverage:r,mmr:n}=hooks.useMarginRatio(),a=react.useMemo(()=>Math.min(10,e.notional===0?o.margin_ratio(10):i),[i,e]),[s,{update:l,config:c,isMutating:u}]=hooks.useLeverage(),d=react.useMemo(()=>c?.map(C=>({label:`${C}x`,value:C}))||[],[c]),[g,m]=react.useState(s??0),b=c?.reduce((C,R)=>Math.max(C,Number(R),0)),p=100/((d?.length||0)-1),y=C=>{m(C);},v=async C=>{try{l({leverage:C}).then(R=>{ui$1.toast.success("Leverage updated");},R=>{ui$1.toast.error(R.message);});}catch{}},F=react.useCallback(C=>{v(C[0]);},[]);return {aggregated:e,totalUnrealizedROI:t,positionsInfo:o,marginRatio:i,marginRatioVal:a,mmr:n,currentLeverage:r,step:p,marks:d,onLeverageChange:y,onValueCommit:F,value:g,maxLeverage:b,onSaveLeverage:v}};function Wn(e,t){if(t===null)return {isRed:!1,isYellow:!1,isGreen:!0};let o=t*2,i=e<=o,r=e>o&&e<1,n=e>=1;return {high:i,mid:r,low:n}}var qn=e=>{let{size:t=20,className:o}=e;return jsxRuntime.jsx("div",{className:"oui-flex oui-justify-center oui-items-end",style:{background:"url(/images/riskLevelBg.png)",backgroundSize:"contain",backgroundRepeat:"no-repeat",backgroundPosition:"center bottom",width:`${t}px`,height:"14px"},children:jsxRuntime.jsx("div",{className:ui$1.cn("oui-relative oui-w-[2px] oui-h-[2px] oui-rounded-full oui-bg-white after:oui-block after:oui-content-[''] after:oui-absolute after:oui-right-0 after:oui-w-[10px] after:oui-h-[2px] after:oui-bg-white/50",o)})})};var ni=e=>jsxRuntime.jsxs(ui$1.Flex,{direction:"column",gap:4,width:"100%",children:[jsxRuntime.jsx(pd,{...e}),jsxRuntime.jsx(ui$1.Divider,{className:"oui-w-full"}),jsxRuntime.jsx(hd,{...e}),jsxRuntime.jsx(bd,{...e}),jsxRuntime.jsx(xd,{...e})]}),pd=e=>{let t=react.useCallback(()=>ui$1.modal.confirm({title:"Settle PnL",content:jsxRuntime.jsx(ui$1.Text,{intensity:54,size:"xs",children:"Are you sure you want to settle your PnL? Settlement will take up to 1 minute before you can withdraw your available balance."}),onCancel:()=>Promise.reject(),onOk:()=>typeof e.onSettlePnL!="function"?Promise.resolve():e.onSettlePnL().catch(i=>{})}),[]),o=e.totalUnrealizedROI>0?"oui-text-success-darken":"oui-text-danger-darken";return jsxRuntime.jsxs(ui$1.Flex,{direction:"column",gap:3,width:"100%",children:[jsxRuntime.jsxs(ui$1.Flex,{direction:"column",itemAlign:"start",width:"100%",children:[jsxRuntime.jsx(ui$1.Text.formatted,{size:"2xs",intensity:36,suffix:e.hideAssets?jsxRuntime.jsx(ui$1.EyeIcon,{opacity:1,size:16,className:"oui-text-primary-light"}):jsxRuntime.jsx(ui$1.EyeCloseIcon,{opacity:1,size:16,className:"oui-text-primary-light"}),onClick:i=>{e.toggleHideAssets();},className:"oui-cursor-pointer",children:"Total value (USDC)"}),jsxRuntime.jsx(ui$1.Text.numeral,{size:"base",dp:2,padding:!1,visible:!e.hideAssets,children:e.totalValue??"--"})]}),jsxRuntime.jsxs(ui$1.Grid,{cols:2,rows:1,width:"100%",children:[jsxRuntime.jsx(ui$1.Statistic,{label:"Unreal. PnL (USDC)",classNames:{label:"oui-text-2xs oui-text-base-contrast-36"},children:jsxRuntime.jsxs(ui$1.Flex,{gap:1,children:[jsxRuntime.jsx(ui$1.Text.numeral,{size:"xs",coloring:!0,dp:2,padding:!1,visible:!e.hideAssets,children:e.aggregated.unrealPnL}),!e.hideAssets&&jsxRuntime.jsx(ui$1.Text.numeral,{size:"xs",dp:2,padding:!1,rule:"percentages",prefix:"(",suffix:")",className:o,children:e.totalUnrealizedROI})]})}),jsxRuntime.jsx(ui$1.Statistic,{label:"Unsettled PnL (USDC)",classNames:{label:"oui-text-2xs oui-text-base-contrast-36"},children:jsxRuntime.jsxs(ui$1.Flex,{justify:"between",width:"100%",children:[jsxRuntime.jsx(ui$1.Text.numeral,{size:"xs",coloring:!0,dp:2,padding:!1,visible:!e.hideAssets,children:e.aggregated.unsettledPnL}),jsxRuntime.jsxs("button",{className:"oui-flex oui-gap-1 oui-items-center",onClick:t,children:[jsxRuntime.jsx(ui$1.RefreshIcon,{opacity:1,size:12,className:"oui-text-primary-light"}),jsxRuntime.jsx(ui$1.Text,{size:"2xs",color:"primary",children:"Settle PnL"})]})]})})]})]})},hd=e=>{let{high:t,mid:o,low:i}=Wn(e.marginRatioVal,e.mmr);return jsxRuntime.jsxs(ui$1.Grid,{cols:2,rows:1,width:"100%",children:[jsxRuntime.jsx(ui$1.Statistic,{label:"Margin Ratio",classNames:{label:"oui-text-2xs oui-text-base-contrast-36"},children:jsxRuntime.jsxs(ui$1.Flex,{gap:2,children:[jsxRuntime.jsx(ui$1.Text.numeral,{size:"xs",rule:"percentages",color:"primary",dp:2,padding:!1,visible:!e.hideAssets,children:e.marginRatioVal}),!e.hideAssets&&jsxRuntime.jsx(qn,{className:i?"oui-rotate-0":o?"oui-rotate-90":t?"oui-rotate-180":""})]})}),jsxRuntime.jsx(ui$1.Statistic,{label:"Free / Total Collateral (USDC)",classNames:{label:"oui-text-2xs oui-text-base-contrast-36"},children:jsxRuntime.jsxs(ui$1.Flex,{justify:"start",width:"100%",gap:1,children:[jsxRuntime.jsx(ui$1.Text.numeral,{size:"xs",dp:2,padding:!1,visible:!e.hideAssets,children:e.freeCollateral}),jsxRuntime.jsx(ui$1.Text,{size:"xs",children:"/"}),jsxRuntime.jsx(ui$1.Text.numeral,{size:"xs",dp:2,padding:!1,visible:!e.hideAssets,children:e.totalCollateral})]})})]})},bd=e=>jsxRuntime.jsxs(ui$1.Flex,{direction:"column",gap:2,width:"100%",children:[jsxRuntime.jsxs(ui$1.Flex,{width:"100%",justify:"between",children:[jsxRuntime.jsx(ui$1.Text,{size:"2xs",intensity:54,children:"Max account leverage"}),jsxRuntime.jsx(ui$1.Text.numeral,{size:"2xs",prefix:jsxRuntime.jsx(ui$1.Text,{size:"2xs",intensity:54,children:"Current: "}),suffix:"x",children:e.currentLeverage??"--"})]}),jsxRuntime.jsx(uiLeverage.LeverageSlider,{value:e.value,maxLeverage:e.maxLeverage,onLeverageChange:e.onLeverageChange,setShowSliderTip:e.setShowSliderTip,showSliderTip:e.showSliderTip,onValueCommit:e.onValueCommit})]});var xd=e=>jsxRuntime.jsxs(ui$1.Grid,{cols:2,rows:1,gap:3,className:"oui-grid-row-[1fr,1fr]",width:"100%",pt:2,pb:4,children:[jsxRuntime.jsx(ui$1.Button,{icon:jsxRuntime.jsx(ui$1.ArrowUpShortIcon,{color:"white",opacity:.8}),size:"md",fullWidth:!0,className:"oui-bg-base-2 hover:oui-bg-base-2/50",onClick:e.onWithdraw,children:"Withdraw"}),jsxRuntime.jsx(ui$1.Button,{icon:jsxRuntime.jsx(ui$1.ArrowDownShortIcon,{color:"white",opacity:.8}),size:"md",fullWidth:!0,onClick:e.onDeposit,children:"Deposit"})]});var ai=()=>{let e=ii();return jsxRuntime.jsx(ni,{...e})};var si=()=>{let{bottomSheetLeading:e}=O(),{hideAssets:t,setHideAssets:o}=E(),{wrongNetwork:i}=reactApp.useAppContext(),{state:r}=hooks.useAccount(),{currentLeverage:n}=hooks.useMarginRatio(),{totalValue:a}=hooks.useCollateral(),s=r.status>=types.AccountStatusEnum.EnableTrading||r.status===types.AccountStatusEnum.EnableTradingWithoutConnected,l=()=>{s&&ui$1.modal.sheet({title:"Asset & Margin",leading:e,content:jsxRuntime.jsx(ai,{})});},c=reactApp.useDataTap(a);return {currentLeverage:n,total:c,hideAssets:t,setHideAssets:o,onShowPortfolioSheet:l,wrongNetwork:i,isEnableTrading:s}};var li=()=>{let e=si();return jsxRuntime.jsx(oi,{...e})};function ui(){let[e,t]=react.useState(!1),[o,i]=hooks.useLocalStorage("orderly_qr_code_scan_tooltip_open",!0),r=()=>{t(!0);},n=()=>{t(!1);},a=s=>{Bd(s)&&(window.location.href=s);};return react.useEffect(()=>{o&&setTimeout(()=>{i(!1);},8e3);},[o]),{open:e,onOpenChange:t,showDialog:r,hideDialog:n,onScanSuccess:a,showScanTooltip:o}}function Bd(e){try{let t=new URL(e);return ["http:","https:"].includes(t.protocol)}catch{return !1}}var Kn=e=>{let t=react.useRef(null),o=react.useRef(null),i=()=>{let r=t.current,n=o.current;if(!r||!n)return;let a=n.getContext("2d");if(r.readyState===r.HAVE_ENOUGH_DATA){let s=r.videoWidth,l=r.videoHeight,c=n.width/n.height,u=s/l,d,g,m,b;u>c?(b=l,m=l*c,d=(s-m)/2,g=0):(m=s,b=s/c,d=0,g=(l-b)/2),a.drawImage(r,d,g,m,b,0,0,n.width,n.height);let p=a.getImageData(0,0,n.width,n.height),y=Ad__default.default(p.data,p.width,p.height,{inversionAttempts:"dontInvert"});y?.data&&e.onSuccess?.(y.data);}requestAnimationFrame(i);};return react.useEffect(()=>{let r=t.current;if(!(!open||!r))return navigator?.mediaDevices.getUserMedia({video:{facingMode:"environment"}}).then(n=>{r.srcObject=n,r.setAttribute("playsinline","true"),r.play(),r.onloadeddata=()=>{requestAnimationFrame(i);};}).catch(n=>{}),()=>{let n=r.srcObject;n&&n.getTracks().forEach(s=>s.stop()),r.srcObject=null;}},[t,o]),jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx("video",{ref:t,width:320,height:320,className:"oui-bg-base-10 oui-rounded-2xl oui-hidden"}),jsxRuntime.jsx("canvas",{ref:o,width:320,height:320,className:"oui-bg-base-10 oui-rounded-2xl"})]})};var ci=e=>jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(ui$1.Tooltip,{open:e.showScanTooltip,content:"Link to Desktop via QR Code",className:"oui-bg-base-6 oui-text-warning-darken oui-text-2xs oui-font-semibold",arrow:{className:"!oui-fill-base-6"},children:jsxRuntime.jsx(ui$1.Flex,{className:"oui-rounded-md oui-bg-base-5 oui-px-[6px] oui-h-7 oui-cursor-pointer",onClick:e.showDialog,children:jsxRuntime.jsx(Ed,{className:"oui-text-base-contrast-80"})})}),jsxRuntime.jsx(ui$1.SimpleDialog,{title:jsxRuntime.jsx(ui$1.Text,{weight:"semibold",children:"Confirm"}),open:e.open,onOpenChange:e.onOpenChange,size:"sm",children:jsxRuntime.jsx(Hd,{...e})})]}),Hd=e=>jsxRuntime.jsxs(ui$1.Flex,{justify:"center",direction:"column",gapY:5,children:[jsxRuntime.jsx(uiScaffold.MainLogo,{}),jsxRuntime.jsx(Kn,{onSuccess:e.onScanSuccess}),jsxRuntime.jsx(ui$1.Text,{size:"sm",intensity:98,weight:"semibold",children:"Scan QR Code"}),jsxRuntime.jsxs("span",{className:"oui-px-3 oui-text-center",children:[jsxRuntime.jsx(ui$1.Text,{size:"2xs",intensity:54,children:"Click the"}),jsxRuntime.jsx(Wd,{className:"oui-inline-block oui-text-base-contrast-80 oui-mx-1"}),jsxRuntime.jsx(ui$1.Text,{size:"2xs",intensity:54,weight:"regular",className:"oui-break-words",children:"icon in the top right corner on desktop to generate a QR code to scan."})]})]}),Ed=e=>jsxRuntime.jsx("svg",{width:"18",height:"18",viewBox:"0 0 18 18",fill:"currentColor",xmlns:"http://www.w3.org/2000/svg",...e,children:jsxRuntime.jsx("path",{d:"M5.249 2.243a3 3 0 0 0-3 3v.75a.75.75 0 0 0 1.5 0v-.75a1.5 1.5 0 0 1 1.5-1.5h2.25a.75.75 0 0 0 0-1.5zm5.25 0a.75.75 0 0 0 0 1.5h2.25a1.5 1.5 0 0 1 1.5 1.5v.75a.75.75 0 0 0 1.5 0v-.75a3 3 0 0 0-3-3zm-7.5 9a.75.75 0 0 0-.75.75v.75a3 3 0 0 0 3 3h2.25a.75.75 0 0 0 0-1.5h-2.25a1.5 1.5 0 0 1-1.5-1.5v-.75a.75.75 0 0 0-.75-.75m12 0a.75.75 0 0 0-.75.75v.75a1.5 1.5 0 0 1-1.5 1.5h-2.25a.75.75 0 0 0 0 1.5h2.25a3 3 0 0 0 3-3v-.75a.75.75 0 0 0-.75-.75M5.25 8.999a.75.75 0 0 1 .75-.75h6a.75.75 0 0 1 0 1.5H6a.75.75 0 0 1-.75-.75"})}),Wd=e=>{let{size:t=20,viewBox:o,...i}=e;return jsxRuntime.jsxs("svg",{width:t,height:t,viewBox:"0 0 20 20",fill:"currentColor",xmlns:"http://www.w3.org/2000/svg",...i,children:[jsxRuntime.jsx("path",{d:"M19.167 7.583a1.74 1.74 0 0 0-1.731-1.75h-4.038a1.74 1.74 0 0 0-1.731 1.75v8.167c0 .967.775 1.75 1.73 1.75h4.039a1.74 1.74 0 0 0 1.73-1.75zm-1.154 0v7.584H12.82V7.583A.58.58 0 0 1 13.398 7h4.038a.58.58 0 0 1 .577.583m-2.02 8.75a.58.58 0 0 1-.576.584.58.58 0 0 1-.577-.584.58.58 0 0 1 .577-.583.58.58 0 0 1 .577.583"}),jsxRuntime.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M1.666 5a2.5 2.5 0 0 1 2.5-2.5h10a2.5 2.5 0 0 1 2.5 2.5.08.08 0 0 1-.078.078h-1.51a.08.08 0 0 1-.08-.078.834.834 0 0 0-.833-.833h-10A.834.834 0 0 0 3.333 5v5.633c0 .11.09.2.2.2h7.1c.11 0 .2.09.2.2V12.3a.2.2 0 0 1-.2.2H2.7a.2.2 0 0 0-.2.2v.633c0 .511.308.834.834.834h7.3c.11 0 .2.09.2.2v1.266a.2.2 0 0 1-.2.2h-7.3c-1.465 0-2.5-1.086-2.5-2.5v-1.666c0-.392.27-.72.635-.81.107-.026.198-.113.198-.224z"})]})};var di=()=>{let e=ui();return jsxRuntime.jsx(ci,{...e})};var fi=e=>{let t=()=>e.wrongNetwork?null:e.status===types.AccountStatusEnum.EnableTradingWithoutConnected?jsxRuntime.jsx($d,{onDisconnect:e.onDisconnect}):jsxRuntime.jsx(Uo,{});return jsxRuntime.jsxs("div",{className:"oui-bg-base-9 oui-border-t oui-border-line-4",children:[jsxRuntime.jsxs(ui$1.Flex,{height:64,gap:1,justify:"between",itemAlign:"center",className:" oui-px-[14px] oui-pt-[7px]",children:[jsxRuntime.jsx(li,{}),jsxRuntime.jsxs(ui$1.Flex,{gap:2,children:[e.status!==types.AccountStatusEnum.EnableTradingWithoutConnected&&e.status<types.AccountStatusEnum.EnableTrading&&jsxRuntime.jsx(di,{}),t(),jsxRuntime.jsx(Jo,{})]})]}),jsxRuntime.jsx("div",{className:"oui-h-[env(safe-area-inset-bottom)]"})]})},$d=e=>{let[t,o]=react.useState(!1),i=()=>{o(!0);},r=()=>{o(!1);};return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(ui$1.SimpleDialog,{open:t,onOpenChange:o,title:"Tips",size:"xs",actions:{secondary:{label:"Cancel",onClick:r,size:"md",fullWidth:!0},primary:{label:"Disconnect",onClick:async()=>{await e.onDisconnect(),r();},size:"md",variant:"outlined",color:"danger"}},children:jsxRuntime.jsx(ui$1.Text,{intensity:54,size:"sm",children:"You are connected via another device. This mode is for trading only. To switch networks, deposit or withdraw assets, please disconnect and reconnect your wallet on this device."})}),jsxRuntime.jsxs(ui$1.Flex,{className:"oui-text-base-contrast oui-px-[6px]",intensity:500,height:28,r:"md",onClick:i,children:[jsxRuntime.jsx(Kd,{}),jsxRuntime.jsx(Yn,{}),jsxRuntime.jsx(Yd,{}),jsxRuntime.jsx(Yn,{}),jsxRuntime.jsx(Xd,{})]})]})},Yn=()=>jsxRuntime.jsxs(ui$1.Flex,{className:"oui-gap-x-[1px] oui-px-[1px]",children:[jsxRuntime.jsx(gi,{}),jsxRuntime.jsx(gi,{}),jsxRuntime.jsx(gi,{})]}),Kd=e=>jsxRuntime.jsx("svg",{width:"18",height:"18",viewBox:"0 0 18 18",fill:"currentColor",xmlns:"http://www.w3.org/2000/svg",...e,children:jsxRuntime.jsx("path",{d:"M4.5 2.93a2.25 2.25 0 0 0-2.25 2.25v5.25a.75.75 0 0 0-.75.75v1.5c0 1.272.93 2.25 2.25 2.25h10.5c1.318 0 2.25-.978 2.25-2.25v-1.5a.75.75 0 0 0-.75-.75V5.18a2.25 2.25 0 0 0-2.25-2.25zm0 1.5h9a.75.75 0 0 1 .75.75v5.25H3.75V5.18a.75.75 0 0 1 .75-.75M3 11.93h12v.75c0 .46-.277.75-.75.75H3.75c-.474 0-.75-.29-.75-.75z"})}),Xd=e=>jsxRuntime.jsx("svg",{width:"18",height:"18",viewBox:"0 0 18 18",fill:"currentColor",xmlns:"http://www.w3.org/2000/svg",...e,children:jsxRuntime.jsx("path",{d:"M13.498 3.715a2.25 2.25 0 0 0-2.25-2.25h-4.5a2.25 2.25 0 0 0-2.25 2.25v10.5a2.25 2.25 0 0 0 2.25 2.25h4.5a2.25 2.25 0 0 0 2.25-2.25zm-1.5 0v9.75h-6v-9.75a.75.75 0 0 1 .75-.75h4.5a.75.75 0 0 1 .75.75m-2.25 11.25a.75.75 0 1 1-1.5 0 .75.75 0 0 1 1.5 0"})}),Yd=e=>jsxRuntime.jsxs("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[jsxRuntime.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M1.007 6a5 5 0 1 1 10 0 5 5 0 0 1-10 0m7.486-2.344A.6.6 0 0 1 8.91 3.5c.15 0 .305.048.418.156a.55.55 0 0 1 0 .798L5.254 8.337a.62.62 0 0 1-.837 0L2.67 6.673a.55.55 0 0 1 0-.798.62.62 0 0 1 .837 0l1.329 1.266z",fill:"url(#a)"}),jsxRuntime.jsx("defs",{children:jsxRuntime.jsxs("linearGradient",{id:"a",x1:"11.007",y1:"5.999",x2:"1.007",y2:"5.999",gradientUnits:"userSpaceOnUse",children:[jsxRuntime.jsx("stop",{stopColor:"rgb(var(--oui-gradient-brand-end))"}),jsxRuntime.jsx("stop",{offset:"1",stopColor:"rgb(var(--oui-gradient-brand-start))"})]})})]}),gi=e=>jsxRuntime.jsxs("svg",{width:"2",height:"2",viewBox:"0 0 2 2",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[jsxRuntime.jsx("path",{d:"M.667.334a.667.667 0 1 1 0 1.333.667.667 0 0 1 0-1.333",fill:"url(#a)"}),jsxRuntime.jsx("defs",{children:jsxRuntime.jsxs("linearGradient",{id:"a",x1:"1.333",y1:"1.001",x2:"0",y2:"1.001",gradientUnits:"userSpaceOnUse",children:[jsxRuntime.jsx("stop",{stopColor:"rgb(var(--oui-gradient-brand-end))"}),jsxRuntime.jsx("stop",{offset:"1",stopColor:"rgb(var(--oui-gradient-brand-start))"})]})})]});var pi=()=>{let{wrongNetwork:e}=reactApp.useAppContext(),{account:t,state:o}=hooks.useAccount(),i=async()=>{localStorage.removeItem("orderly_selected_chainId"),await t.disconnect();};return {wrongNetwork:e,status:o.status,onDisconnect:i}};var hi=()=>{let e=pi();return jsxRuntime.jsx(fi,{...e})};var bi=()=>{let[e,t]=react.useState("chart"),{symbol:o}=O(),[i,r]=react.useState(!0);return {tab:e,setTab:t,symbol:o,toggleContentVisible:()=>{r(a=>!a);},setVisible:r,visible:i}};var Jn=e=>jsxRuntime.jsx(Le,{symbol:e.symbol,classNames:{root:"oui-px-3 ",list:"oui-min-h-[141px] oui-max-h-[202px] oui-w-full",listHeader:"oui-text-xs oui-text-base-contrast-36",listItem:{left:"oui-text-xs",mid:"oui-text-xs",right:"oui-text-xs"}}});var Ci=e=>jsxRuntime.jsxs(ui$1.Flex,{direction:"column",gap:2,children:[jsxRuntime.jsx(ze,{title:"Mark price",value:e.ticker?.mark_price,dp:e.symbolInfo.quote_dp}),jsxRuntime.jsx(ze,{title:"Index price",value:e.ticker?.index_price,dp:e.symbolInfo.quote_dp}),jsxRuntime.jsx(ze,{title:"24h volume",value:e.vol_24h,dp:e.symbolInfo.quote_dp,rule:"human",showUSDC:!0}),jsxRuntime.jsx(ze,{title:"24h high",value:e.ticker?.["24h_high"],dp:e.symbolInfo.quote_dp}),jsxRuntime.jsx(ze,{title:"24h low",value:e.ticker?.["24h_low"],dp:e.symbolInfo.quote_dp}),jsxRuntime.jsx(ze,{title:"Open interest",value:e.openInterest,dp:e.symbolInfo.quote_dp,rule:"human",showUSDC:!0})]}),ze=e=>{let{title:t,value:o,showUSDC:i,dp:r,rule:n="price"}=e;return jsxRuntime.jsxs(ui$1.Flex,{justify:"between",width:"100%",className:"oui-text-xs",children:[jsxRuntime.jsx(ui$1.Text,{intensity:36,children:t}),jsxRuntime.jsxs(ui$1.Flex,{gap:1,children:[jsxRuntime.jsx(ui$1.Text.numeral,{rule:n,dp:r,intensity:80,children:o}),i&&jsxRuntime.jsx(ui$1.Text,{intensity:36,children:"USDC"})]})]})};var wi=e=>{let{symbol:t}=e,o=hooks.useTickerStream(t),{symbolInfo:i}=O(),r=react.useMemo(()=>{let a=o?.["24h_close"],s=o?.["24h_volume"];if(a&&s&&!isNaN(a)&&!isNaN(s))return new utils.Decimal(a).mul(s).toFixed(i.quote_dp,utils.Decimal.ROUND_DOWN)},[o]),n=react.useMemo(()=>{let a=o?.mark_price,s=o?.open_interest;if(a&&s&&!isNaN(a))return new utils.Decimal(a).mul(Number(s)).toFixed(i.quote_dp,utils.Decimal.ROUND_DOWN)},[o]);return {ticker:o,symbolInfo:i,vol_24h:r,openInterest:n}};var vi=e=>{let t=wi(e);return jsxRuntime.jsx(Ci,{...t})};var ea=e=>jsxRuntime.jsx("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"currentColor",xmlns:"http://www.w3.org/2000/svg",...e,children:jsxRuntime.jsx("g",{id:"Arrows-expand",children:jsxRuntime.jsx("path",{id:"Vector",d:"M5.9989 1.00708C5.8709 1.00708 5.7369 1.05008 5.6394 1.14758L3.7959 3.00708L4.4989 3.71008L5.4989 2.72607V4.50708C5.4989 4.78308 5.7229 5.00708 5.9989 5.00708C6.2749 5.00708 6.4989 4.78308 6.4989 4.50708V2.72607L7.4989 3.71008L8.2019 3.00708L6.3584 1.14758C6.2604 1.05008 6.1269 1.00708 5.9989 1.00708ZM5.9989 7.00707C5.7229 7.00707 5.4989 7.23107 5.4989 7.50707V9.28808L4.4989 8.30407L3.7959 9.00707L5.6394 10.8666C5.8349 11.0616 6.1629 11.0616 6.3584 10.8666L8.2019 9.00707L7.4989 8.30407L6.4989 9.28808V7.50707C6.4989 7.23107 6.2749 7.00707 5.9989 7.00707Z"})})});function oa(e){return jsxRuntime.jsxs("div",{className:"oui-pb-1 oui-flex oui-flex-col oui-gap-1",style:{height:e.height},ref:e.boxRef,children:[jsxRuntime.jsx("div",{className:"oui-w-full oui-h-full",children:jsxRuntime.jsx(uiTradingview.TradingviewWidget,{symbol:e.symbol,libraryPath:e.tradingViewConfig?.library_path,mode:3,scriptSRC:e.tradingViewConfig?.scriptSRC,customCssUrl:e.tradingViewConfig?.customCssUrl})}),jsxRuntime.jsx("div",{className:"oui-relative oui-w-full",children:jsxRuntime.jsx("div",{ref:e.dragRef,className:ui$1.cn("oui-h-[1px] oui-absolute oui-left-0 oui-right-0 oui-bottom-0 oui-top-0 oui-z-10 oui-mt-[7px] oui-bg-base-contrast-12",e.dragging&&"oui-bg-primary "),children:jsxRuntime.jsx(ea,{className:ui$1.cn("oui-w-3 oui-h-3 oui-absolute oui-left-1/2 -oui-top-[5px] -oui-translate-y-[0.5px] oui-text-base-contrast-12",e.dragging&&" oui-text-primary")})})})]})}var sm=354,na=234,lm="TRADINGVIEW_MOBILE_HEIGHT";function aa(e){let[t,o]=hooks.useLocalStorage(lm,na),[i,r]=react.useState(!1),n=react.useRef(null),a=react.useRef(null),[s,l]=react.useState(0),c=react.useRef(0),u=react.useCallback(m=>{if(!a.current)return;r(!0);let b=m.touches[0],p=a.current.getBoundingClientRect();m.stopPropagation(),m.preventDefault();let y=b.clientY-p.bottom;c.current=p.top,l(y);},[]),d=react.useCallback(m=>{if(a.current&&i){m.stopPropagation(),m.preventDefault();let p=m.touches[0].clientY-c.current-s;return o(Math.min(Math.max(Math.round(p),na),sm)),!1}},[i,s]),g=react.useCallback(()=>{r(!1);},[]);return react.useEffect(()=>{let m=n.current;if(m)return m.addEventListener("touchstart",u),()=>{m.removeEventListener("touchstart",u);}},[u]),react.useEffect(()=>(document.addEventListener("touchmove",d,{passive:!1}),document.addEventListener("touchend",g),()=>{document.removeEventListener("touchmove",d),document.removeEventListener("touchend",g);}),[i,d,g]),{...e,height:t,dragging:i,dragRef:n,boxRef:a}}function sa(e){let t=aa(e);return jsxRuntime.jsx(oa,{...t})}var Di=e=>{let{tradingViewConfig:t}=O();return jsxRuntime.jsxs(ui$1.Tabs,{variant:"contained",value:e.tab,contentVisible:e.visible,onValueChange:o=>{e.setTab(o),e.setVisible(!0);},className:e.className,classNames:{tabsList:"oui-p-2",tabsContent:"oui-min-h-[176px] oui-max-h-[396px]"},style:{marginBottom:e.tab==="chart"?"8px":0},trailing:jsxRuntime.jsx("button",{className:"oui-px-5",onClick:e.toggleContentVisible,children:jsxRuntime.jsx(gm,{className:e.visible?"oui-rotate-0":"oui-rotate-180"})}),children:[jsxRuntime.jsx(ui$1.TabPanel,{title:"Chart",value:"chart",children:jsxRuntime.jsx(sa,{symbol:e.symbol,tradingViewConfig:t})}),jsxRuntime.jsx(ui$1.TabPanel,{title:"Trades",value:"trades",children:jsxRuntime.jsx(Jn,{symbol:e.symbol})}),jsxRuntime.jsx(ui$1.TabPanel,{title:"Data",value:"data",children:jsxRuntime.jsx(ui$1.Box,{px:3,children:jsxRuntime.jsx(vi,{symbol:e.symbol})})})]})},gm=e=>jsxRuntime.jsxs("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"currentColor",xmlns:"http://www.w3.org/2000/svg",className:ui$1.cn("oui-fill-base-contrast-54 hover:oui-fill-base-contrast-80",e.className),children:[jsxRuntime.jsx("path",{d:"M5.721 4.585 2.726 6.578a.51.51 0 0 0-.14.7.51.51 0 0 0 .702.14l2.714-1.806 2.715 1.806c.23.153.549.089.702-.14a.51.51 0 0 0-.14-.7L6.283 4.585a.51.51 0 0 0-.562 0"}),jsxRuntime.jsx("defs",{})]});var Fi=e=>{let t=bi();return jsxRuntime.jsx(Di,{className:e.className,...t})};var Li=e=>{let[t,o]=react.useState(0),i=react.useRef(null);return react.useEffect(()=>{let r=i.current;if(!r)return;let n=new ResizeObserver(a=>{for(let s of a)o(s.contentRect.height);});return n.observe(r),()=>{n.unobserve(r);}},[]),jsxRuntime.jsxs("div",{className:ui$1.cn("oui-grid oui-grid-cols-[4fr,6fr] oui-gap-1 oui-mx-1 ",e.className),children:[jsxRuntime.jsx("div",{className:"oui-bg-base-9 oui-rounded-xl",style:{height:`${t+16}px`},children:jsxRuntime.jsx(Re,{symbol:e.symbol,height:t?t-44:void 0})}),jsxRuntime.jsx("div",{className:"oui-bg-base-9 oui-rounded-xl oui-p-2",children:jsxRuntime.jsx(uiOrderEntry.OrderEntryWidget,{symbol:e.symbol,containerRef:i})})]})};var Bi=()=>{let{symbol:e}=O();return {symbol:e}};var Oi=e=>{let t=Bi();return jsxRuntime.jsx(Li,{className:e.className,...t})};var ua=()=>{let{appIcons:e}=reactApp.useAppConfig(),{secondary:t}=e||{};return t?.img?jsxRuntime.jsx("img",{src:t?.img,className:"oui-w-5 oui-h-5"}):t?.component?t.component:null};var Ai=e=>{let{symbol:t,sharePnLConfig:o}=e,[i,r]=react.useState("Position"),[n,a]=react.useState("Position history"),{onSymbolChange:s}=O(),l=E(),[c,{cancelAllOrders:u,cancelAllTPSLOrders:d}]=hooks.useOrderStream({}),{positionCount:g}=Ve(t),{pendingOrderCount:m,tpSlOrderCount:b}=qe(t);return {tab:i,setTab:r,subTab:n,setSubTab:a,sharePnLConfig:o,symbol:t,positionCount:g,pendingOrderCount:m,tpSlOrderCount:b,...l,onCloseAll:y=>{let v=y===uiOrders.TabType.pending?"Cancel all pending orders":y===uiOrders.TabType.tp_sl?"Cancel all TP/SL orders":"",F=y===uiOrders.TabType.pending?"Are you sure you want to cancel all of your pending orders?":y===uiOrders.TabType.tp_sl?"Are you sure you want to cancel all of your TP/SL orders?":"";ui$1.modal.confirm({title:v,content:jsxRuntime.jsx(ui$1.Text,{size:"2xs",children:F}),onOk:async()=>{try{return i==="TP/SL"?await d():await u(),Promise.resolve(!0)}catch(C){return C?.message!==void 0&&toast.error(C.message),Promise.resolve(!1)}finally{Promise.resolve();}}});},onSymbolChange:s}};var Ii=e=>jsxRuntime.jsxs(ui$1.Tabs,{value:e.tab,onValueChange:t=>e.setTab(t),size:"lg",className:e.className,classNames:{tabsList:"oui-bg-base-9 oui-rounded-t-xl oui-p-2 oui-overflow-x-scroll oui-hide-scrollbar"},children:[jsxRuntime.jsx(ui$1.TabPanel,{title:(e.positionCount??0)>0?`Position(${e.positionCount})`:"Position",value:"Position",children:jsxRuntime.jsx(Mm,{...e})}),jsxRuntime.jsx(ui$1.TabPanel,{title:(e.pendingOrderCount??0)>0?`Pending(${e.pendingOrderCount})`:"Pending",value:"Pending",children:jsxRuntime.jsx(Ri,{type:uiOrders.TabType.pending,ordersStatus:types.OrderStatus.INCOMPLETE,...e})}),jsxRuntime.jsx(ui$1.TabPanel,{title:(e.tpSlOrderCount??0)>0?`TP/SL(${e.tpSlOrderCount})`:"TP/SL",value:"TP/SL",children:jsxRuntime.jsx(Ri,{type:uiOrders.TabType.tp_sl,ordersStatus:types.OrderStatus.INCOMPLETE,...e})}),jsxRuntime.jsx(ui$1.TabPanel,{title:"History",value:"History",children:jsxRuntime.jsx(zm,{...e})}),jsxRuntime.jsx(ui$1.TabPanel,{title:"Liquidation",value:"Liquidation",children:jsxRuntime.jsx(uiPositions.MobileLiquidationWidget,{enableLoadMore:!0,symbol:e.showAllSymbol?void 0:e.symbol,classNames:{cell:"oui-p-2 oui-bg-base-9 oui-rounded-xl"}})})]}),Mm=e=>jsxRuntime.jsxs(ui$1.Flex,{direction:"column",gap:2,children:[jsxRuntime.jsx($e,{pnlNotionalDecimalPrecision:e.pnlNotionalDecimalPrecision,symbol:e.showAllSymbol?void 0:e.symbol,unPnlPriceBasis:e.unPnlPriceBasis}),jsxRuntime.jsx(uiPositions.MobilePositionsWidget,{symbol:e.showAllSymbol?void 0:e.symbol,onSymbolChange:e.onSymbolChange,sharePnLConfig:e.sharePnLConfig,pnlNotionalDecimalPrecision:e.pnlNotionalDecimalPrecision})]}),Ri=e=>jsxRuntime.jsxs(ui$1.Flex,{direction:"column",pb:2,width:"100%",children:[jsxRuntime.jsx(ui$1.Divider,{className:"oui-w-full"}),e.type!==uiOrders.TabType.orderHistory&&jsxRuntime.jsx(_m,{...e}),jsxRuntime.jsx(uiOrders.MobileOrderListWidget,{symbol:e.showAllSymbol?void 0:e.symbol,onSymbolChange:e.onSymbolChange,type:e.type,ordersStatus:e.ordersStatus,classNames:{root:"oui-w-full oui-hide-scrollbar oui-overflow-y-hidden",content:"!oui-space-y-1",cell:"oui-py-2 oui-bg-base-9 oui-p-2 oui-rounded-xl"},sharePnLConfig:e.sharePnLConfig,showFilter:e.type===uiOrders.TabType.orderHistory,filterConfig:{range:{from:void 0,to:void 0}}})]}),_m=e=>jsxRuntime.jsxs(ui$1.Flex,{px:2,py:2,width:"100%",justify:"between",gap:2,className:"oui-rounded-b-xl oui-bg-base-9",children:[jsxRuntime.jsxs(ui$1.Flex,{className:"oui-gap-[2px] oui-cursor-pointer",children:[jsxRuntime.jsx(ui$1.Checkbox,{color:"white",checked:!e.showAllSymbol,onCheckedChange:t=>{e.setShowAllSymbol(!t);}}),jsxRuntime.jsx(ui$1.Text,{size:"2xs",intensity:54,onClick:()=>{e.setShowAllSymbol(!e.showAllSymbol);},children:"Hide other symbols"})]}),jsxRuntime.jsx(ui$1.Button,{variant:"outlined",size:"xs",color:"secondary",onClick:t=>{e.onCloseAll(e.type);},children:"Close All"})]}),zm=e=>jsxRuntime.jsx("div",{className:"oui-min-h-[300px]",children:jsxRuntime.jsxs(ui$1.Tabs,{value:e.subTab,onValueChange:t=>e.setSubTab(t),size:"md",classNames:{tabsList:"oui-bg-base-9 oui-rounded-t-xl oui-p-2"},children:[jsxRuntime.jsx(ui$1.TabPanel,{title:"Position history",value:"Position history",children:jsxRuntime.jsx(uiPositions.MobilePositionHistoryWidget,{symbol:e.showAllSymbol?void 0:e.symbol,onSymbolChange:e.onSymbolChange,classNames:{cell:"oui-p-2 oui-bg-base-9 oui-rounded-xl"}})}),jsxRuntime.jsx(ui$1.TabPanel,{title:"Order history",value:"Order history",children:jsxRuntime.jsx(Ri,{type:uiOrders.TabType.orderHistory,...e})})]})});var Mi=e=>{let t=Ai(e);return jsxRuntime.jsx(Ii,{...t,className:e.className})};var ga=e=>{let t=()=>{e.onOpenMarketsSheetChange(!0);},o=jsxRuntime.jsxs(ui$1.Box,{intensity:900,px:3,height:54,children:[jsxRuntime.jsx(markets.SymbolInfoBarWidget,{symbol:e.symbol,trailing:jsxRuntime.jsx(ua,{}),onSymbol:t}),jsxRuntime.jsx(ui$1.SimpleSheet,{open:e.openMarketsSheet,onOpenChange:e.onOpenMarketsSheetChange,classNames:{body:"oui-h-full oui-pb-[env(safe-area-inset-bottom)]",content:"oui-w-[280px] !oui-p-0 oui-rounded-bl-[40px] oui-h-full "},contentProps:{side:"left",closeable:!1},children:jsxRuntime.jsx(markets.MarketsSheetWidget,{symbol:e.symbol,onSymbolChange:i=>{e.onOpenMarketsSheetChange(!1),e.onSymbolChange?.(i);}})})]});return jsxRuntime.jsxs("div",{style:{paddingBottom:"calc(64px + env(safe-area-inset-bottom))"},className:"oui-grid oui-grid-rows-[auto,1fr,auto] oui-h-screen oui-gap-1 oui-relative oui-bg-base-10",children:[jsxRuntime.jsx("header",{children:o}),jsxRuntime.jsx("div",{children:jsxRuntime.jsx(uiScaffold.MaintenanceTipsWidget,{})}),jsxRuntime.jsxs("main",{className:"oui-overflow-y-auto oui-hide-scrollbar oui-space-y-1",children:[jsxRuntime.jsx(Fi,{className:"oui-mx-1 oui-bg-base-9 oui-rounded-xl"}),jsxRuntime.jsx(Oi,{}),jsxRuntime.jsx(Mi,{symbol:e.symbol,className:"oui-mx-1 oui-rounded-xl",sharePnLConfig:e.sharePnLConfig})]}),jsxRuntime.jsx("div",{className:"oui-fixed oui-left-0 oui-right-0 oui-bottom-0",children:jsxRuntime.jsx(hi,{})})]})};var Ee=(e,t,o)=>[react.useMemo(()=>{let n=localStorage.getItem(e);return n?`${n}%`:t},[e,t,o]),n=>{localStorage.setItem(e,n);}];var pa=()=>{let[e,t]=react.useState(!1),o=O(),{state:i}=hooks.useAccount(),{wrongNetwork:r}=reactApp.useAppContext(),{isFirstTimeDeposit:n}=ho(),a=hooks.useMediaQuery("(max-width: 1279px)"),s=hooks.useMediaQuery("(min-width: 1440px)"),l=hooks.useMediaQuery("(max-width: 1680px)"),[c,u]=hooks.useLocalStorage("orderly_order_entry_side_markets_layout","right"),d=react.useMemo(()=>!r&&(i.status>=types.AccountStatusEnum.EnableTrading||i.status===types.AccountStatusEnum.EnableTradingWithoutConnected),[i.status,r]),g=react.useMemo(()=>s,[s]),m=Zm({canTrading:d,isFirstTimeDeposit:n}),b=Ym({collapsable:s}),p=Jm(c),y=jm({max2XL:a}),v={layout:c,onLayout:u,max2XL:a,min3XL:s,max4XL:l,canTrading:d,openMarketsSheet:e,onOpenMarketsSheetChange:t,horizontalDraggable:g,...b,...m,...p,...y};return {...o,...v}};function Ym(e){let{collapsable:t}=e,[o,i]=react.useState(!1),[r,n]=hooks.useLocalStorage("orderly_side_markets_collapsed",void 0),a=l=>{n(l),i(!0);},s=react.useMemo(()=>t?r:!0,[t,r]);return {collapsable:t,collapsed:s,onCollapse:a,animating:o,setAnimating:i}}function Zm(e){let{canTrading:t,isFirstTimeDeposit:o}=e,[i,r]=hooks.useLocalStorage("orderly_assets_orderEntry_margin_positions",[0,1,2]),n=(l,c)=>{let u=[...i];if(l===0&&c===u.length-1){u[c]=i[l];for(let d=0;d<u.length-1;d++)u[d]=i[d+1];}else if(l===u.length-1&&c===0){u[c]=i[l];for(let d=1;d<u.length;d++)u[d]=i[d-1];}else [u[l],u[c]]=[u[c],u[l]];r(u);},a=react.useMemo(()=>t&&!o,[t,o]);return {positions:react.useMemo(()=>a?i:[0,1,2],[a,i]),showPositionIcon:a,updatePositions:n}}function Jm(e){let[t,o]=Ee("orderly_main_split_size",void 0,e),[i,r]=Ee("orderly_datalist_split_size","350px"),[n,a]=Ee("orderly_orderbook_split_size","280px",e),[s,l]=Ee("orderly_datalist_split_height_sm","350px"),[c,u]=Ee("orderly_orderbook_split_height_sm","280px");return {orderBookSplitSize:n,setOrderbookSplitSize:a,dataListSplitSize:i,setDataListSplitSize:r,mainSplitSize:t,setMainSplitSize:o,dataListSplitHeightSM:s,setDataListSplitHeightSM:l,orderBookSplitHeightSM:c,setOrderbookSplitHeightSM:u}}function jm(e){let{max2XL:t}=e,[o,i]=react.useState(0),r=react.useRef(null);return react.useEffect(()=>{let n=r.current;if(!n||!t)return;let a=new ResizeObserver(s=>{for(let l of s){let c=l.contentRect.height;c&&i(c);}});return a.observe(n),()=>{a.unobserve(n);}},[r,t]),{orderEntryViewRef:r,orderEntryHeight:o}}function ha(e){return e?`${100-Math.min(Number(e),100)}`:""}var ba=e=>jsxRuntime.jsx(lg,{...e,children:jsxRuntime.jsxs(ui$1.Flex,{className:ui$1.cn("oui-rounded-md","oui-w-[69px] oui-h-[28px]","oui-cursor-pointer oui-transition-all","oui-bg-base-6 hover:oui-bg-base-4","oui-text-base-contrast-54 hover:oui-text-base-contrast-80"),gapX:1,ml:3,justify:"center",itemAlign:"center",children:[jsxRuntime.jsx(ug,{}),jsxRuntime.jsx(ui$1.Text,{size:"2xs",weight:"semibold",children:"Layout"})]})}),lg=e=>{let[t,o]=react.useState(!1),i=n=>jsxRuntime.jsxs(ui$1.Flex,{direction:"column",gapY:2,onClick:()=>{e.onLayout?.(n),o(!1);},className:"oui-group",children:[jsxRuntime.jsx(ui$1.Flex,{justify:n==="right"?"end":"start",className:ui$1.cn("oui-w-[148px] oui-h-[100px]","oui-bg-base-10 oui-rounded-[10px]","oui-border-[4px] oui-border-base-5 group-hover:oui-border-primary-light",e.layout===n&&"!oui-border-primary-light"),children:jsxRuntime.jsx(ui$1.Box,{p:1,children:jsxRuntime.jsx(cg,{})})}),jsxRuntime.jsxs(ui$1.Text,{size:"2xs",intensity:54,className:ui$1.cn("oui-text-base-contrast-54 group-hover:oui-text-base-contrast-80",e.layout===n&&"oui-text-base-contrast-80"),children:["Advanced (",n,")"]})]}),r=jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsxs(ui$1.Flex,{itemAlign:"center",justify:"between",mt:3,className:"oui-mb-[10px]",children:[jsxRuntime.jsx(ui$1.Text,{size:"base",intensity:98,children:"layout"}),jsxRuntime.jsx(ui$1.CloseIcon,{size:16,className:"oui-text-base-contrast-80 oui-cursor-pointer",opacity:.98,onClick:()=>{o(!1);}})]}),jsxRuntime.jsx(ui$1.Divider,{}),jsxRuntime.jsxs(ui$1.Flex,{gapX:6,mt:5,children:[i("right"),i("left")]})]});return jsxRuntime.jsxs(ui$1.DropdownMenuRoot,{open:t,onOpenChange:o,children:[jsxRuntime.jsx(ui$1.DropdownMenuTrigger,{asChild:!0,children:e.children}),jsxRuntime.jsx(ui$1.DropdownMenuPortal,{children:jsxRuntime.jsx(ui$1.DropdownMenuContent,{onCloseAutoFocus:n=>n.preventDefault(),onClick:n=>n.stopPropagation(),align:"end",className:ui$1.cn("oui-bg-base-8 oui-p-5 oui-pt-0 oui-w-[360px] oui-font-semibold"),children:r})})]})},ug=e=>jsxRuntime.jsx("svg",{width:"17",height:"16",viewBox:"0 0 17 16",fill:"currentColor",xmlns:"http://www.w3.org/2000/svg",...e,children:jsxRuntime.jsx("path",{d:"M3.832 1.994c-.736 0-1.333.597-1.333 1.333v9.334c0 .737.597 1.333 1.333 1.333H6.5c.737 0 1.333-.596 1.333-1.333V3.327c0-.736-.596-1.333-1.333-1.333zm6.667 0c-.737 0-1.333.597-1.333 1.333v2.667c0 .737.596 1.333 1.333 1.333h2.667c.736 0 1.333-.596 1.333-1.333V3.327c0-.736-.597-1.333-1.333-1.333zm.437 6.679a2.7 2.7 0 0 0-1.033.607.284.284 0 0 0-.061.339c.222.411-.01.851-.512.876a.29.29 0 0 0-.26.217c-.05.207-.07.38-.07.608 0 .19.02.407.06.599a.28.28 0 0 0 .252.217c.506.044.756.429.53.92a.28.28 0 0 0 .06.321c.296.273.635.466 1.034.59a.285.285 0 0 0 .312-.104c.31-.427.757-.428 1.05 0a.28.28 0 0 0 .313.113 2.8 2.8 0 0 0 1.042-.599.28.28 0 0 0 .06-.33c-.23-.466.035-.894.513-.902a.28.28 0 0 0 .269-.209c.048-.199.06-.372.06-.616q0-.316-.069-.616a.276.276 0 0 0-.27-.217c-.469-.001-.732-.463-.502-.868a.27.27 0 0 0-.053-.339 2.8 2.8 0 0 0-1.059-.607.274.274 0 0 0-.312.112c-.268.417-.77.425-1.033.009a.284.284 0 0 0-.321-.121m.842 1.536a1.111 1.111 0 1 1 0 2.222 1.111 1.111 0 0 1 0-2.222"})}),cg=e=>jsxRuntime.jsxs("svg",{width:"36",height:"84",viewBox:"0 0 36 84",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[jsxRuntime.jsx("rect",{width:"36",height:"17",rx:"2",fill:"#181C23"}),jsxRuntime.jsx("rect",{y:"19",width:"36",height:"54",rx:"2",fill:"#181C23"}),jsxRuntime.jsx("rect",{y:"75",width:"36",height:"9",rx:"2",fill:"#181C23"}),jsxRuntime.jsx("rect",{x:"3",y:"79",width:"30",height:"1",rx:"0.5",fill:"url(#paint0_linear_17647_26849)"}),jsxRuntime.jsx("rect",{x:"3",y:"22",width:"14",height:"6",rx:"2",fill:"#008676"}),jsxRuntime.jsx("rect",{x:"19",y:"22",width:"14",height:"6",rx:"2",fill:"#D92D6B"}),jsxRuntime.jsx("rect",{x:"3",y:"11",width:"14",height:"3",rx:"1.5",fill:"#333948"}),jsxRuntime.jsx("rect",{x:"19",y:"11",width:"14",height:"3",rx:"1.5",fill:"#335FFC"}),jsxRuntime.jsx("rect",{x:"3",y:"62",width:"30",height:"8",rx:"2",fill:"#008676"}),jsxRuntime.jsx("defs",{children:jsxRuntime.jsxs("linearGradient",{id:"paint0_linear_17647_26849",x1:"33",y1:"79.5",x2:"3",y2:"79.5",gradientUnits:"userSpaceOnUse",children:[jsxRuntime.jsx("stop",{stopColor:"#59B0FE"}),jsxRuntime.jsx("stop",{offset:"1",stopColor:"#26FEFE"})]})})]});var Qt=e=>{let{showIndicator:t=!0}=e,[o,i]=react.useState(!1);return jsxRuntime.jsxs(ui$1.Box,{intensity:900,r:"2xl",p:3,width:"100%",className:ui$1.cn("oui-relative",e.className),children:[e.children,jsxRuntime.jsx(ui$1.Tooltip,{open:o,onOpenChange:i,side:"left",align:"start",sideOffset:-4,alignOffset:-4,content:jsxRuntime.jsx(ui$1.Flex,{direction:"column",gapY:2,children:[bg,xg,yg].map((r,n)=>jsxRuntime.jsx(r,{className:ui$1.cn("oui-rounded oui-cursor-pointer hover:oui-bg-base-5",e.index===n&&"oui-bg-base-5"),onClick:()=>{e.onLayout?.(e.index,n),i(!1);}},n))}),delayDuration:0,className:ui$1.cn("oui-bg-base-9 oui-rounded","oui-border oui-border-line-12","oui-p-1"),arrow:{className:"oui-fill-transparent"},children:t&&jsxRuntime.jsx("div",{className:"oui-absolute oui-right-[1px] oui-top-[18px]",children:jsxRuntime.jsx(hg,{className:ui$1.cn("oui-text-base-contrast-20 hover:oui-text-base-contrast-80","oui-cursor-pointer")})})})]})},hg=e=>jsxRuntime.jsxs("svg",{width:"10",height:"16",viewBox:"0 0 10 16",fill:"currentColor",xmlns:"http://www.w3.org/2000/svg",...e,children:[jsxRuntime.jsx("rect",{x:"2",y:"2",width:"6",height:"2",rx:"1"}),jsxRuntime.jsx("rect",{x:"2",y:"7",width:"6",height:"2",rx:"1"}),jsxRuntime.jsx("rect",{x:"2",y:"12",width:"6",height:"2",rx:"1"})]}),bg=e=>jsxRuntime.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"currentColor",xmlns:"http://www.w3.org/2000/svg",...e,children:[jsxRuntime.jsx("rect",{x:"1.333",y:"2.667",width:"13.333",height:"4",rx:"2",fill:"rgb(var(--oui-color-primary))"}),jsxRuntime.jsx("rect",{x:"2.667",y:"12",width:"10.667",height:"1.333",rx:".667",fill:"#fff",fillOpacity:".2"}),jsxRuntime.jsx("rect",{x:"2.667",y:"8.667",width:"10.667",height:"1.333",rx:".667",fill:"#fff",fillOpacity:".2"})]}),xg=e=>jsxRuntime.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg",...e,children:[jsxRuntime.jsx("rect",{x:"1.333",y:"6",width:"13.333",height:"4",rx:"2",fill:"rgb(var(--oui-color-primary))"}),jsxRuntime.jsx("rect",{x:"2.667",y:"12",width:"10.667",height:"1.333",rx:".667",fill:"#fff",fillOpacity:".2"}),jsxRuntime.jsx("rect",{x:"2.667",y:"2.667",width:"10.667",height:"1.333",rx:".667",fill:"#fff",fillOpacity:".2"})]}),yg=e=>jsxRuntime.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg",...e,children:[jsxRuntime.jsx("rect",{x:"1.333",y:"9.333",width:"13.333",height:"4",rx:"2",fill:"rgb(var(--oui-color-primary))"}),jsxRuntime.jsx("rect",{x:"2.667",y:"6",width:"10.667",height:"1.333",rx:".667",fill:"#fff",fillOpacity:".2"}),jsxRuntime.jsx("rect",{x:"2.667",y:"2.667",width:"10.667",height:"1.333",rx:".667",fill:"#fff",fillOpacity:".2"})]});var xa=e=>{let{collapsable:t,collapsed:o,onCollapse:i,layout:r,onLayout:n,orderBookSplitSize:a,setOrderbookSplitSize:s,dataListSplitSize:l,setDataListSplitSize:c,mainSplitSize:u,setMainSplitSize:d,dataListSplitHeightSM:g,setDataListSplitHeightSM:m,orderBookSplitHeightSM:b,setOrderbookSplitHeightSM:p,max2XL:y,max4XL:v,animating:F,setAnimating:C,positions:R,updatePositions:W,canTrading:Ce,showPositionIcon:ie,horizontalDraggable:he}=e,De=6,Fe=48,L=29,D=12,H=54,re=o?70:280,Kt=280,Ca=360,at=280,wa=732,be=464,st=728,We=320,lt=600,ut=540,ct=Ce?379:277,va=Fe+L+H+be+ct+D*4,Pa=Fe+L+H+We+be+ct+D*4,Ui=jsxRuntime.jsx(markets.SideMarketsWidget,{collapsable:t,collapsed:o,onCollapse:i,symbol:e.symbol,onSymbolChange:e.onSymbolChange}),Xt=jsxRuntime.jsx(ui$1.Box,{intensity:900,pt:3,r:"2xl",height:"100%",width:re,style:{minWidth:re},className:"oui-transition-all oui-duration-150",onTransitionEnd:()=>{C(!1);},children:!F&&Ui}),Ta=react.useMemo(()=>jsxRuntime.jsx(ba,{layout:r,onLayout:n}),[r,n]),Gi=jsxRuntime.jsx(ui$1.Box,{intensity:900,r:"2xl",px:3,width:"100%",style:{minHeight:H,height:H},children:jsxRuntime.jsx(markets.SymbolInfoBarFullWidget,{symbol:e.symbol,onSymbolChange:e.onSymbolChange,trailing:Ta})}),{library_path:Na,...ka}=e.tradingViewConfig,Qi=jsxRuntime.jsx(uiTradingview.TradingviewWidget,{symbol:e.symbol,...ka,libraryPath:Na}),$i=jsxRuntime.jsx(ui$1.Box,{width:"100%",height:"100%",intensity:900,r:"2xl",style:{flex:1,minWidth:ut},className:"oui-overflow-hidden",children:Qi}),Ki=jsxRuntime.jsx(Eo,{symbol:e.symbol}),Da=jsxRuntime.jsx(ui$1.Box,{r:"2xl",height:"100%",style:{minWidth:at,maxWidth:he?wa:at,width:a},className:"oui-overflow-hidden",children:Ki}),Xi=jsxRuntime.jsx(io,{current:void 0,symbol:e.symbol,sharePnLConfig:e.sharePnLConfig}),Fa=jsxRuntime.jsx(ui$1.Box,{intensity:900,r:"2xl",p:3,style:{height:l,minHeight:ct},className:"oui-overflow-hidden",children:Xi}),La=[jsxRuntime.jsx(Qt,{className:"oui-border oui-border-line-12",index:R.findIndex(ne=>ne===0),onLayout:W,showIndicator:ie,children:jsxRuntime.jsx(bo,{})},"assets"),jsxRuntime.jsx(Qt,{index:R.findIndex(ne=>ne===1),onLayout:W,showIndicator:ie,children:jsxRuntime.jsx(uiOrderEntry.OrderEntryWidget,{symbol:e.symbol})},"orderEntry"),jsxRuntime.jsx(Qt,{index:R.findIndex(ne=>ne===2),onLayout:W,showIndicator:ie,children:jsxRuntime.jsx(_o,{})},"margin")],Yi=R.map(ne=>La[ne]),Zi=jsxRuntime.jsx(ui$1.Flex,{gapY:3,direction:"column",height:"100%",style:{minWidth:Kt,maxWidth:he?Ca:Kt,width:u},children:Yi}),Ji=jsxRuntime.jsxs(Me,{style:{flex:1,minHeight:be},onSizeChange:s,disable:!he,children:[v&&r==="right"?jsxRuntime.jsxs(ui$1.Flex,{gap:3,className:"oui-flex-1 oui-overflow-hidden",style:{minWidth:re+ut+D},children:[Xt,$i]}):$i,Da]}),Ba=()=>v&&r==="left"?jsxRuntime.jsxs(ui$1.Flex,{gapX:3,style:{minHeight:be},height:"100%",children:[Ji,Xt]}):Ji,Oa=jsxRuntime.jsxs(ui$1.Flex,{direction:"column",className:"oui-flex-1 oui-overflow-hidden",gap:3,style:{minWidth:v?re+ut+at+D*2:ut+at+D},children:[Gi,jsxRuntime.jsxs(Me,{className:"oui-w-full !oui-h-[calc(100%_-_54px_-_12px)]",mode:"vertical",onSizeChange:c,children:[Ba(),Fa]})]}),Aa=ne=>d(r==="left"?ha(ne):ne);return y?jsxRuntime.jsxs(Me,{style:{minHeight:Pa,minWidth:1024-De},className:ui$1.cn("oui-flex oui-flex-1 oui-overflow-hidden","oui-min-w-[1018px] oui-h-full oui-w-full","oui-p-3",e.className),onSizeChange:m,mode:"vertical",children:[jsxRuntime.jsxs(ui$1.Flex,{gapX:3,itemAlign:"stretch",className:ui$1.cn("oui-flex-1",r==="left"&&"oui-flex-row-reverse"),style:{minHeight:Math.max(H+We+be+D*2,e.orderEntryHeight),maxHeight:H+lt+st+D*2},children:[jsxRuntime.jsxs(ui$1.Flex,{height:"100%",className:"oui-flex-1 oui-w-[calc(100%_-_280px_-_12px)]",direction:"column",gapY:3,children:[Gi,jsxRuntime.jsxs(ui$1.Flex,{width:"100%",height:"100%",gapX:3,itemAlign:"stretch",style:{minHeight:We+be+D,maxHeight:lt+st+D},className:ui$1.cn("oui-flex-1",r==="left"&&"oui-flex-row-reverse"),children:[jsxRuntime.jsx(ui$1.Box,{intensity:900,pt:3,r:"2xl",width:re,style:{minHeight:We+be+D,maxHeight:lt+st+D},children:Ui}),jsxRuntime.jsxs(Me,{mode:"vertical",style:{width:`calc(100% - ${re}px)`},className:"oui-flex-1",onSizeChange:p,children:[jsxRuntime.jsx(ui$1.Box,{width:"100%",intensity:900,r:"2xl",style:{minHeight:We,maxHeight:lt},children:Qi}),jsxRuntime.jsx(ui$1.Box,{r:"2xl",height:"100%",width:"100%",style:{minHeight:be,maxHeight:st,height:b},className:"oui-flex-1",children:Ki})]})]})]}),jsxRuntime.jsx(ui$1.Flex,{ref:e.orderEntryViewRef,gapY:3,direction:"column",style:{width:Kt,height:"max-content"},children:Yi})]}),jsxRuntime.jsx(ui$1.Box,{intensity:900,r:"2xl",p:3,style:{height:g,minHeight:ct},className:"oui-overflow-hidden",children:Xi})]}):jsxRuntime.jsxs(ui$1.Flex,{style:{minHeight:va,minWidth:1440-De},className:ui$1.cn(e.className,r==="left"&&"oui-flex-row-reverse"),width:"100%",p:3,gap:3,children:[!v&&Xt,jsxRuntime.jsxs(Me,{className:"oui-flex oui-flex-1 oui-overflow-hidden",onSizeChange:Aa,disable:!he,children:[r==="left"&&Zi,Oa,r==="right"&&Zi]})]})};var Vi=e=>{let{isMobile:t}=ui$1.useScreen();return t?jsxRuntime.jsx(ga,{...e}):jsxRuntime.jsx(xa,{className:"oui-h-[calc(100vh_-_48px_-_29px)] oui-bg-base-10",...e})};var qi=()=>{let e=pa();return jsxRuntime.jsx(Vi,{...e})};var kg=e=>jsxRuntime.jsx(rr,{symbol:e.symbol,tradingViewConfig:e.tradingViewConfig,onSymbolChange:e.onSymbolChange,disableFeatures:e.disableFeatures,overrideFeatures:e.overrideFeatures,referral:e.referral,tradingRewards:e.tradingRewards,bottomSheetLeading:e.bottomSheetLeading,sharePnLConfig:e.sharePnLConfig,children:jsxRuntime.jsx(qi,{})});
28
+ var E=e=>{let[t,o]=hooks.useLocalStorage("unPnlPriceBasis","markPrice"),[i,r]=hooks.useLocalStorage("pnlNotionalDecimalPrecision",e?.pnlNotionalDecimalPrecision??2),[n,a]=hooks.useLocalStorage("showAllSymbol",!0),[s,l]=hooks.useLocalStorage("hideAssets",!1);return {unPnlPriceBasis:t,setUnPnlPriceBasic:o,pnlNotionalDecimalPrecision:i,setPnlNotionalDecimalPrecision:r,showAllSymbol:n,setShowAllSymbol:a,hideAssets:s,setHideAssets:l}};var Ve=e=>{let{showAllSymbol:t}=E(),[o]=hooks.usePositionStream(t?void 0:e),i=react.useMemo(()=>o.rows?.length,[o.rows?.length]);return {positionCount:reactApp.useDataTap(i)??0}};var qe=e=>{let {showAllSymbol:t}=E();`orderly_${uiOrders.TabType.pending}_pageSize`;`orderly_${uiOrders.TabType.tp_sl}_pageSize`;let [r,{total:n}]=hooks.useOrderStream({symbol:t?void 0:e,status:types.OrderStatus.INCOMPLETE,excludes:[types.AlgoOrderRootType.POSITIONAL_TP_SL,types.AlgoOrderRootType.TP_SL],size:500},{keeplive:!0}),[a,{total:s}]=hooks.useOrderStream({symbol:t?void 0:e,status:types.OrderStatus.INCOMPLETE,includes:[types.AlgoOrderRootType.POSITIONAL_TP_SL,types.AlgoOrderRootType.TP_SL],size:500},{keeplive:!0}),l=reactApp.useDataTap(n)??0,u=reactApp.useDataTap(s)??0;return {pendingOrderCount:l,tpSlOrderCount:u}};var Ue=e=>({base_dp:e("base_dp"),quote_dp:e("quote_dp"),base_tick:e("base_tick"),base:e("base"),quote:e("quote")});var ar=react.createContext({}),O=()=>react.useContext(ar),sr=e=>{let t=hooks.useSymbolsInfo()[e.symbol];return jsxRuntime.jsx(ar.Provider,{value:{...e,symbolInfo:{...Ue(t),symbol:e.symbol}},children:e.children})};var lr=e=>{let{current:t,pnlNotionalDecimalPrecision:o,sharePnLConfig:i,symbol:r,includedPendingOrder:n}=e,a=E({pnlNotionalDecimalPrecision:o}),{onSymbolChange:s}=O(),{positionCount:l}=Ve(e.symbol),{pendingOrderCount:u,tpSlOrderCount:c}=qe(e.symbol);return {current:t,sharePnLConfig:i,symbol:r,calcMode:a.unPnlPriceBasis,includedPendingOrder:n,...a,positionCount:l,pendingOrderCount:u,tpSlOrderCount:c,onSymbolChange:s}};var to=e=>{let{isMobile:t}=ui$1.useScreen();return t?jsxRuntime.jsx($a,{...e}):jsxRuntime.jsx(Ka,{...e})},$a=e=>jsxRuntime.jsxs(ui$1.Flex,{direction:"column",gap:2,width:"100%",itemAlign:"start",p:2,className:"oui-bg-base-9 oui-rounded-b-xl",children:[jsxRuntime.jsxs(ui$1.Flex,{width:"100%",justify:"between",children:[jsxRuntime.jsx(cr,{classNames:{label:"oui-text-2xs oui-text-base-contrast-54",root:"oui-text-sm"},...e}),jsxRuntime.jsx(dr,{classNames:{label:"oui-text-2xs oui-text-base-contrast-54",root:"oui-text-sm"},...e})]}),jsxRuntime.jsx(ui$1.Divider,{className:"oui-w-full"}),jsxRuntime.jsxs(ui$1.Flex,{className:"oui-gap-[2px] oui-cursor-pointer",children:[jsxRuntime.jsx(ui$1.Checkbox,{id:"oui-checkbox-hideOtherSymbols",color:"white",checked:!e.showAllSymbol,onCheckedChange:t=>{e.setShowAllSymbol(!t);}}),jsxRuntime.jsx("label",{className:"oui-text-2xs oui-text-base-contrast-54 oui-cursor-pointer",htmlFor:"oui-checkbox-hideOtherSymbols",children:"Hide other symbols"})]})]}),Ka=e=>jsxRuntime.jsxs(ui$1.Flex,{py:2,px:3,gap:6,width:"100%",justify:"start",children:[jsxRuntime.jsx(cr,{...e,classNames:{label:"oui-text-base-contrast-54"}}),jsxRuntime.jsx(dr,{...e,classNames:{label:"oui-text-base-contrast-54"}})]}),cr=e=>{let t=typeof e.unrealPnL=="number"?e.unrealPnL>=0?"oui-text-trade-profit":"oui-text-trade-loss":"oui-text-base-contrast-80",o=typeof e.unrealPnL=="number"&&e.unrealPnlROI?e.unrealPnlROI>=0?"oui-text-success-darken":"oui-text-danger-darken":"oui-text-base-contrast-80";return jsxRuntime.jsx(ui$1.Statistic,{label:"Unreal. PnL",classNames:e.classNames,children:jsxRuntime.jsxs(ui$1.Flex,{gap:1,children:[jsxRuntime.jsx(ui$1.Text.numeral,{dp:e.pnlNotionalDecimalPrecision,rm:utils.Decimal.ROUND_DOWN,intensity:80,className:t,children:e.unrealPnL??"--"}),typeof e.unrealPnlROI<"u"&&jsxRuntime.jsx(ui$1.Text.numeral,{prefix:"(",suffix:")",rule:"percentages",size:"2xs",dp:e.pnlNotionalDecimalPrecision,rm:utils.Decimal.ROUND_DOWN,className:o,children:e.unrealPnlROI})]})})},dr=e=>jsxRuntime.jsx(ui$1.Statistic,{label:"Notional",classNames:e.classNames,children:jsxRuntime.jsx(ui$1.Text.numeral,{dp:e.pnlNotionalDecimalPrecision,rm:utils.Decimal.ROUND_DOWN,intensity:80,children:e.notional??"--"})});var mr=e=>{let{pnlNotionalDecimalPrecision:t,unPnlPriceBasis:o,symbol:i}=e,r=o,[n]=hooks.usePositionStream(i,{calcMode:r}),a=reactApp.useDataTap(n.aggregated),s=a?.total_unreal_pnl,l=a?.unrealPnlROI,u=a?.notional,{showAllSymbol:c,setShowAllSymbol:d}=E();return {pnlNotionalDecimalPrecision:t,unrealPnL:s,unrealPnlROI:l,notional:u,showAllSymbol:c,setShowAllSymbol:d}};var $e=e=>{let t=mr(e);return jsxRuntime.jsx(to,{...t})};var oo=e=>{let[t,o]=react.useState(!1);return jsxRuntime.jsxs(ui$1.Flex,{gap:0,children:[jsxRuntime.jsxs(ui$1.Flex,{gap:1,children:[jsxRuntime.jsx(ui$1.Checkbox,{id:"oui-checkbox-hideOtherSymbols",color:"white",checked:e.hideOtherSymbols,onCheckedChange:i=>{e.setHideOtherSymbols(i);}}),jsxRuntime.jsx("label",{className:"oui-text-xs oui-text-base-contrast-54 oui-cursor-pointer",htmlFor:"oui-checkbox-hideOtherSymbols",children:"Hide other symbols"})]}),jsxRuntime.jsxs(ui$1.DropdownMenuRoot,{open:t,onOpenChange:o,children:[jsxRuntime.jsx(ui$1.DropdownMenuTrigger,{asChild:!0,children:jsxRuntime.jsx(ui$1.Button,{size:"xs",type:"button",variant:"contained",className:"oui-bg-transparent hover:oui-bg-transparent",children:jsxRuntime.jsx(ui$1.SettingFillIcon,{size:16,color:"white",opacity:1,className:"oui-text-white/[.36] hover:oui-text-white/80"})})}),jsxRuntime.jsx(ui$1.DropdownMenuContent,{className:"oui-px-5 oui-py-3 oui-w-[360px]",alignOffset:2,align:"end",children:jsxRuntime.jsxs("div",{className:"oui-flex oui-flex-col oui-text-sm",children:[jsxRuntime.jsx(ui$1.Text,{className:"oui-text-base oui-pb-3",children:"Portfolio Settings"}),jsxRuntime.jsx(ui$1.Divider,{}),jsxRuntime.jsx(ui$1.Text,{className:"oui-pb-3 oui-text-base-contrast-54 oui-mt-2",children:"Decimal Precision for PnL & Notional"}),jsxRuntime.jsx(as,{value:e.pnlNotionalDecimalPrecision,onValueChange:i=>{e.setPnlNotionalDecimalPrecision(i),o(!1);}}),jsxRuntime.jsx(ui$1.Divider,{className:"oui-my-3"}),jsxRuntime.jsx(ui$1.Text,{className:"oui-pb-3 oui-text-base-contrast-54 oui-mt-2",children:"Unrealized PnL Price Basis"}),jsxRuntime.jsx(ns,{value:e.unPnlPriceBasis,onValueChange:i=>{e.setUnPnlPriceBasic(i),o(!1);}})]})})]})]})},ns=e=>{let{value:t,onValueChange:o}=e;return jsxRuntime.jsxs(ui$1.Flex,{gap:2,children:[jsxRuntime.jsx(Ke,{sel:t==="markPrice",label:"Mark price",value:"markPrice",onCheckChange:o}),jsxRuntime.jsx(Ke,{sel:t==="lastPrice",label:"Last price",value:"lastPrice",onCheckChange:o})]})},as=e=>{let{value:t,onValueChange:o}=e;return jsxRuntime.jsxs(ui$1.Flex,{gap:2,children:[jsxRuntime.jsx(Ke,{sel:t===0,label:1,value:0,onCheckChange:o}),jsxRuntime.jsx(Ke,{sel:t===1,label:.1,value:1,onCheckChange:o}),jsxRuntime.jsx(Ke,{sel:t===2,label:.01,value:2,onCheckChange:o})]})},Ke=e=>{let{sel:t,label:o,value:i,onCheckChange:r}=e;return jsxRuntime.jsxs(ui$1.Flex,{onClick:n=>{r(i),n.stopPropagation();},gap:1,className:"oui-cursor-pointer",children:[t?jsxRuntime.jsx(ss,{}):jsxRuntime.jsx(ls,{}),jsxRuntime.jsx(ui$1.Text,{size:"2xs",intensity:t?98:54,children:o})]})},ss=()=>jsxRuntime.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"currentColor",xmlns:"http://www.w3.org/2000/svg",className:"oui-fill-white",children:[jsxRuntime.jsx("path",{d:"M8.01 1.333a6.667 6.667 0 1 0 0 13.333 6.667 6.667 0 0 0 0-13.333m0 1.333a5.334 5.334 0 1 1-.001 10.667 5.334 5.334 0 0 1 0-10.667",fill:"#fff",fillOpacity:".36"}),jsxRuntime.jsx("circle",{cx:"8",cy:"8",r:"3.333"})]}),ls=()=>jsxRuntime.jsx("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:jsxRuntime.jsx("path",{d:"M8.01 1.333a6.667 6.667 0 1 0 0 13.333 6.667 6.667 0 0 0 0-13.333m0 1.333a5.334 5.334 0 1 1-.001 10.667 5.334 5.334 0 0 1 0-10.667",fill:"#fff",fillOpacity:".54"})});var fr=e=>({...e});var io=e=>{let t=fr(e);return jsxRuntime.jsx(oo,{...t})};var no=e=>jsxRuntime.jsxs(ui$1.Tabs,{defaultValue:e.current||"Positions",variant:"contained",trailing:jsxRuntime.jsx(io,{pnlNotionalDecimalPrecision:e.pnlNotionalDecimalPrecision,setPnlNotionalDecimalPrecision:e.setPnlNotionalDecimalPrecision,unPnlPriceBasis:e.unPnlPriceBasis,setUnPnlPriceBasic:e.setUnPnlPriceBasic,hideOtherSymbols:!e.showAllSymbol,setHideOtherSymbols:t=>e.setShowAllSymbol(!t)}),size:"lg",className:"oui-h-full",classNames:{tabsContent:"oui-h-[calc(100%_-_32px)]"},children:[jsxRuntime.jsx(ui$1.TabPanel,{testid:"oui-testid-dataList-position-tab",value:"Positions",title:(e.positionCount??0)>0?`Positions(${e.positionCount})`:"Positions",children:jsxRuntime.jsx(bs,{...e})}),jsxRuntime.jsx(ui$1.TabPanel,{testid:"oui-testid-dataList-pending-tab",value:"Pending",title:(e.pendingOrderCount??0)>0?`Pending(${e.pendingOrderCount})`:"Pending",children:jsxRuntime.jsx(uiOrders.DesktopOrderListWidget,{type:uiOrders.TabType.pending,ordersStatus:types.OrderStatus.INCOMPLETE,symbol:e.showAllSymbol?void 0:e.symbol,onSymbolChange:e.onSymbolChange,testIds:{tableBody:"oui-testid-dataList-pending-table-body"}})}),jsxRuntime.jsx(ui$1.TabPanel,{testid:"oui-testid-dataList-tpsl-tab",value:"TP/SL",title:(e.tpSlOrderCount??0)>0?`TP/SL(${e.tpSlOrderCount})`:"TP/SL",children:jsxRuntime.jsx(uiOrders.DesktopOrderListWidget,{type:uiOrders.TabType.tp_sl,ordersStatus:types.OrderStatus.INCOMPLETE,symbol:e.showAllSymbol?void 0:e.symbol,onSymbolChange:e.onSymbolChange,testIds:{tableBody:"oui-testid-dataList-tpsl-table-body"}})}),jsxRuntime.jsx(ui$1.TabPanel,{testid:"oui-testid-dataList-filled-tab",value:"Filled",title:"Filled",children:jsxRuntime.jsx(uiOrders.DesktopOrderListWidget,{type:uiOrders.TabType.filled,symbol:e.showAllSymbol?void 0:e.symbol,pnlNotionalDecimalPrecision:e.pnlNotionalDecimalPrecision,ordersStatus:types.OrderStatus.FILLED,onSymbolChange:e.onSymbolChange,testIds:{tableBody:"oui-testid-dataList-filled-table-body"},sharePnLConfig:e.sharePnLConfig})}),jsxRuntime.jsx(ui$1.TabPanel,{testid:"oui-testid-dataList-positionHistory-tab",value:"Position history",title:"Position history",children:jsxRuntime.jsx(uiPositions.PositionHistoryWidget,{pnlNotionalDecimalPrecision:e.pnlNotionalDecimalPrecision,symbol:e.showAllSymbol?void 0:e.symbol,onSymbolChange:e.onSymbolChange})}),jsxRuntime.jsx(ui$1.TabPanel,{testid:"oui-testid-dataList-orderHistory-tab",value:"Order history",title:"Order history",children:jsxRuntime.jsx(uiOrders.DesktopOrderListWidget,{type:uiOrders.TabType.orderHistory,pnlNotionalDecimalPrecision:e.pnlNotionalDecimalPrecision,symbol:e.showAllSymbol?void 0:e.symbol,onSymbolChange:e.onSymbolChange,testIds:{tableBody:"oui-testid-dataList-orderHistory-table-body"},sharePnLConfig:e.sharePnLConfig})}),jsxRuntime.jsx(ui$1.TabPanel,{testid:"oui-testid-dataList-liquidation-tab",value:"Liquidation",title:"Liquidation",children:jsxRuntime.jsx(uiPositions.LiquidationWidget,{symbol:e.showAllSymbol?void 0:e.symbol})})]}),bs=e=>jsxRuntime.jsxs(ui$1.Flex,{direction:"column",width:"100%",height:"100%",children:[jsxRuntime.jsx($e,{pnlNotionalDecimalPrecision:e.pnlNotionalDecimalPrecision,symbol:e.showAllSymbol?void 0:e.symbol,unPnlPriceBasis:e.unPnlPriceBasis}),jsxRuntime.jsx(ui$1.Divider,{className:"oui-w-full"}),jsxRuntime.jsx(ui$1.Box,{className:"oui-h-[calc(100%_-_60px)]",width:"100%",children:jsxRuntime.jsx(uiPositions.PositionsWidget,{symbol:e.showAllSymbol?void 0:e.symbol,pnlNotionalDecimalPrecision:e.pnlNotionalDecimalPrecision,sharePnLConfig:e.sharePnLConfig,calcMode:e.calcMode,includedPendingOrder:e.includedPendingOrder,onSymbolChange:e.onSymbolChange})})]});var ao=e=>{let t=lr({...e});return jsxRuntime.jsx(no,{...t})};var so=e=>jsxRuntime.jsxs(ui$1.Box,{className:ui$1.cn("oui-grid oui-grid-rows=[auto,1fr] oui-h-full oui-w-full",e.classNames?.root),style:e.style,children:[jsxRuntime.jsx(ui$1.Box,{className:"oui-pr-1",children:jsxRuntime.jsx(ws,{base:e.base,quote:e.quote,className:e.classNames?.listHeader})}),jsxRuntime.jsx(vs,{data:e.data,isLoading:e.isLoading,baseDp:e.baseDp,quoteDp:e.quoteDp,classNames:e.classNames?.listItem,className:e.classNames?.list})]}),yr=e=>{let{key:t,left:o,mid:i,right:r,classNames:n}=e;return jsxRuntime.jsxs(ui$1.Grid,{cols:3,gapX:2,width:"100%",className:ui$1.cn("oui-text-xs oui-tabular-nums",n?.root),children:[jsxRuntime.jsx("div",{className:ui$1.cn("oui-flex-1",n?.left),children:o}),jsxRuntime.jsx("div",{className:ui$1.cn("oui-flex-1",n?.mid),children:i}),jsxRuntime.jsx("div",{className:ui$1.cn("oui-flex-1 oui-text-right",n?.right),children:r})]},t)},ws=e=>jsxRuntime.jsx(yr,{left:"Time",mid:`Price(${e.quote})`,right:`Qty(${e.base})`,classNames:{root:ui$1.cn("oui-text-base-contrast-54 oui-h-[32px] oui-sticky",e.className)}}),vs=e=>jsxRuntime.jsx(ui$1.ListView,{dataSource:e.data,className:ui$1.cn("oui-last-trades-list","oui-w-full oui-h-full",e.className,"oui-overflow-auto"),contentClassName:"!oui-space-y-0 oui-pr-[-4px]",renderItem:(t,o)=>jsxRuntime.jsx(yr,{left:jsxRuntime.jsx(ui$1.Text.formatted,{rule:"date",formatString:"HH:mm:ss",children:t?.ts}),mid:utils.commifyOptional(t?.price,{fix:e.quoteDp}),right:utils.commifyOptional(t?.size,{fix:e.baseDp}),classNames:{left:ui$1.cn("oui-text-base-contrast-80",e.classNames?.left),right:ui$1.cn(t.side===types.OrderSide.BUY?"oui-text-trade-profit":"oui-text-trade-loss",e.classNames?.mid),mid:ui$1.cn(t.side===types.OrderSide.BUY?"oui-text-trade-profit":"oui-text-trade-loss",e.classNames?.right)}},o)});var Cr=e=>{let{data:t,isLoading:o}=hooks.useMarketTradeStream(e),i=hooks.useSymbolsInfo()?.[e],r=i?.("base"),n=i?.("quote"),a=i?.("base_dp"),s=i?.("quote_dp");return {base:r,quote:n,data:t,isLoading:o,baseDp:a,quoteDp:s}};var Fe=e=>{let t=Cr(e.symbol);return jsxRuntime.jsx(so,{...t,classNames:e.classNames,style:e.style})};function wr(e){return e.showFaucet?jsxRuntime.jsx(ui$1.Button,{variant:"outlined",fullWidth:!0,size:"md",onClick:e.getFaucet,loading:e.loading,className:"oui-text-primary-light oui-border-primary-light oui-rounded","data-testid":"oui-testid-assetView-getFaucet-button",children:"Get test USDC"}):null}function Tr(){let{connectedChain:e,namespace:t}=hooks.useWalletConnector(),{state:o,account:i}=hooks.useAccount(),r=hooks.useConfig(),n=r.get("operatorUrl"),[a,{isMutating:s}]=hooks.useMutation(`${n}/v1/faucet/usdc`),[l,u]=react.useState(!1),c=react.useMemo(()=>!e||!e.id?!1:(o.status===types.AccountStatusEnum.EnableTrading||o.status===types.AccountStatusEnum.EnableTradingWithoutConnected)&&utils.isTestnet(parseInt(e.id)),[o,e]);return {getFaucet:()=>{if(l)return;u(!0);let g=`${t===types.ChainNamespace.solana?"100":"1,000"} USDC will be added to your balance. Please note this may take up to 3 minutes. Please check back later.`;return a({chain_id:i.walletAdapter?.chainId.toString(),user_address:o.address,broker_id:r.get("brokerId")}).then(m=>{if(u(!1),m.success)return ui$1.modal.alert({title:"Get test USDC",message:g,onOk:()=>new Promise(b=>b(!0))});m.message&&ui$1.toast.error(m.message);},m=>{ui$1.toast.error(m.message);})},showFaucet:c,loading:l}}function lo(){let e=Tr();return jsxRuntime.jsx(wr,{...e})}var Zs=()=>{let{state:e}=hooks.useAccount(),{wrongNetwork:t}=reactApp.useAppContext();return react.useMemo(()=>{if(t)return {title:"Wrong Network",description:"Please switch to a supported network to continue.",titleColor:"warning"};switch(e.status){case types.AccountStatusEnum.NotConnected:return {title:"Connect wallet",description:"Please connect your wallet before starting to trade.",titleClsName:"oui-text-transparent oui-bg-clip-text oui-gradient-brand"};case types.AccountStatusEnum.NotSignedIn:return {title:"Sign in",description:"Please sign in before starting to trade.",titleColor:"primary"};case types.AccountStatusEnum.DisabledTrading:return {title:"Enable trading",description:"Enable trading before starting to trade.",titleColor:"primary"};default:return {title:"",description:""}}},[e.status,t])},po=({description:e,formula:t})=>jsxRuntime.jsxs("div",{className:"oui-leading-[1.5] oui-text-2xs oui-text-base-contrast-80 oui-min-w-[204px] oui-max-w-[240px]",children:[jsxRuntime.jsx("span",{children:e}),jsxRuntime.jsx(ui$1.Divider,{className:"oui-border-white/10",my:2}),jsxRuntime.jsx("span",{children:t})]}),Js=({totalValue:e,visible:t=!0,onToggleVisibility:o})=>jsxRuntime.jsxs(ui$1.Flex,{direction:"column",gap:1,className:"oui-text-2xs",itemAlign:"center",children:[jsxRuntime.jsx(ui$1.Text.numeral,{visible:t,weight:"bold",size:"2xl",className:ui$1.gradientTextVariants({color:"brand"}),as:"div",padding:!1,dp:2,children:e??"--"}),jsxRuntime.jsxs(ui$1.Flex,{gap:1,itemAlign:"center",children:[jsxRuntime.jsx(ui$1.Text,{size:"2xs",color:"neutral",weight:"semibold",children:"My Assets (USDC)"}),jsxRuntime.jsx("button",{onClick:o,children:t?jsxRuntime.jsx(ui$1.EyeIcon,{size:18,className:"oui-text-base-contrast-54"}):jsxRuntime.jsx(ui$1.EyeCloseIcon,{size:18,className:"oui-text-base-contrast-54"})})]})]}),go=({label:e,description:t,formula:o,visible:i,value:r,unit:n,rule:a,isConnected:s,showPercentage:l=!1,placeholder:u})=>jsxRuntime.jsxs(ui$1.Flex,{justify:"between",children:[jsxRuntime.jsx(ui$1.Tooltip,{content:jsxRuntime.jsx(po,{description:t,formula:o}),children:jsxRuntime.jsx(ui$1.Text,{size:"2xs",color:"neutral",weight:"semibold",className:"oui-cursor-pointer oui-border-b oui-border-dashed oui-border-line-12",children:e})}),jsxRuntime.jsx(ui$1.Text.numeral,{visible:i,size:"2xs",unit:n,unitClassName:"oui-text-base-contrast-36 oui-ml-0.5",as:"div",rule:a,padding:!1,dp:2,placeholder:u,children:r||"--"})]}),js=({visible:e=!0,freeCollateral:t,marginRatioVal:o,renderMMR:i,isConnected:r})=>{let[n,a]=hooks.useLocalStorage("orderly_entry_asset_list_open",!1),[s,l]=react.useState(n),u=react.useCallback(()=>{l(c=>!c),setTimeout(()=>{a(!s);},0);},[]);return jsxRuntime.jsxs(ui$1.Box,{className:"oui-group",children:[jsxRuntime.jsxs(ui$1.Flex,{justify:"center",gap:1,itemAlign:"center",className:"oui-cursor-pointer",onClick:u,children:[jsxRuntime.jsx(ui$1.Divider,{className:"oui-flex-1"}),jsxRuntime.jsx(ui$1.ChevronDownIcon,{size:12,color:"white",className:ui$1.cn("oui-transition-transform",s&&"oui-rotate-180")}),jsxRuntime.jsx(ui$1.Divider,{className:"oui-flex-1"})]}),jsxRuntime.jsxs(ui$1.Box,{style:{transform:"translateZ(0)"},className:ui$1.cn("oui-space-y-1.5 oui-select-none oui-overflow-hidden","oui-transition-[max-height] oui-duration-150","group-hover:oui-will-change-[max-height]",s?"oui-max-h-[69px]":"oui-max-h-0"),children:[jsxRuntime.jsx(go,{label:"Free collateral",description:"Free collateral for placing new orders.",formula:"Free collateral = Total balance + Total unsettlement PnL - Total position initial margin",visible:e,value:t===0?"0":t,unit:"USDC"}),jsxRuntime.jsx(go,{label:"Margin ratio",description:"The margin ratio represents the proportion of collateral relative to the total position value.",formula:"Account margin ratio = (Total collateral value / Total position notional) * 100%",visible:e,value:o,isConnected:r,rule:"percentages",showPercentage:!0,placeholder:"--%"}),jsxRuntime.jsx(go,{label:"Maintenance margin ratio",description:"The minimum margin ratio required to protect your positions from being liquidated. If the Margin ratio falls below the Maintenance margin ratio, the account will be liquidated.",formula:"Account maintenance margin ratio = Sum(Position notional * Symbol maintenance Margin Ratio) / Total position notional * 100%",visible:e,value:i,rule:"percentages",showPercentage:!0,placeholder:"--%"})]})]})},ho=({networkId:e,isFirstTimeDeposit:t,totalValue:o,onDeposit:i,onWithdraw:r,toggleVisible:n,visible:a,freeCollateral:s,marginRatioVal:l,renderMMR:u,isConnected:c})=>{let{title:d,description:g,titleColor:m,titleClsName:b}=Zs();return jsxRuntime.jsxs(ui$1.Box,{className:"oui-relative",children:[d&&g&&jsxRuntime.jsxs(ui$1.Flex,{direction:"column",gap:1,className:"oui-mb-[32px]",children:[jsxRuntime.jsx(ui$1.Text,{size:"lg",weight:"bold",color:m||"inherit",className:b,children:d}),jsxRuntime.jsx(ui$1.Text,{size:"2xs",color:"neutral",weight:"semibold",className:"oui-text-center",children:g})]}),jsxRuntime.jsx(uiConnector.AuthGuard,{networkId:e,buttonProps:{size:"md",fullWidth:!0},children:t?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(ui$1.Box,{children:jsxRuntime.jsxs(ui$1.Flex,{direction:"column",gap:1,className:"oui-mb-[32px]",children:[jsxRuntime.jsx(ui$1.Text.gradient,{size:"lg",weight:"bold",color:"brand",children:"Deposit to start trade"}),jsxRuntime.jsx(ui$1.Text,{size:"2xs",color:"neutral",weight:"semibold",children:"You can deposit assets from various networks"})]})}),jsxRuntime.jsxs(ui$1.Button,{"data-testid":"oui-testid-assetView-deposit-button",fullWidth:!0,size:"md",onClick:i,children:[jsxRuntime.jsx(ui$1.ArrowDownShortIcon,{color:"white",opacity:1}),jsxRuntime.jsx(ui$1.Text,{children:"Deposit"})]}),jsxRuntime.jsx(ui$1.Box,{className:"oui-mt-3",children:jsxRuntime.jsx(lo,{})})]}):jsxRuntime.jsxs(ui$1.Box,{className:"oui-space-y-4",children:[jsxRuntime.jsx(Js,{totalValue:o,visible:a,onToggleVisibility:n}),jsxRuntime.jsx(js,{visible:a,freeCollateral:s,marginRatioVal:l,renderMMR:u,isConnected:c}),jsxRuntime.jsxs(ui$1.Flex,{gap:3,itemAlign:"center",children:[jsxRuntime.jsxs(ui$1.Button,{fullWidth:!0,color:"secondary",size:"md",onClick:r,"data-testid":"oui-testid-assetView-withdraw-button",children:[jsxRuntime.jsx(ui$1.ArrowDownShortIcon,{color:"white",opacity:1,className:"oui-rotate-180"}),jsxRuntime.jsx(ui$1.Text,{children:"Withdraw"})]}),jsxRuntime.jsxs(ui$1.Button,{"data-testid":"oui-testid-assetView-deposit-button",fullWidth:!0,size:"md",onClick:i,children:[jsxRuntime.jsx(ui$1.ArrowDownShortIcon,{color:"white",opacity:1}),jsxRuntime.jsx(ui$1.Text,{children:"Deposit"})]})]}),jsxRuntime.jsx(lo,{})]})}),jsxRuntime.jsx("div",{className:"oui-pointer-events-none oui-rotate-180 oui-rounded-2xl oui-blur-[200px] oui-top-0 oui-bottom-0 oui-left-0 oui-right-0 oui-absolute",style:{background:"conic-gradient(from -40.91deg at 40.63% 50.41%, rgba(159, 115, 241, 0) -48.92deg, rgba(242, 98, 181, 0) 125.18deg, #5FC5FF 193.41deg, #FFAC89 216.02deg, #8155FF 236.07deg, #789DFF 259.95deg, rgba(159, 115, 241, 0) 311.08deg, rgba(242, 98, 181, 0) 485.18deg)"}})]})};var yo=()=>{let{state:e}=hooks.useAccount(),{wrongNetwork:t}=reactApp.useAppContext(),{totalValue:o}=hooks.useCollateral({dp:2}),i=t||e.status<types.AccountStatusEnum.EnableTrading&&e.status!==types.AccountStatusEnum.EnableTradingWithoutConnected,r=react.useMemo(()=>{let a=new Date,s=new Date;s.setDate(a.getDate()-90);let l=s.getTime(),u=a.getTime(),c=new URLSearchParams;return c.set("page","1"),c.set("size","5"),c.set("side","DEPOSIT"),c.set("status","COMPLETED"),c.set("startTime",l.toString()),c.set("endTime",u.toString()),`/v1/asset/history?${c.toString()}`},[]),{data:n}=hooks.usePrivateQuery(r,{formatter:a=>a});return {isFirstTimeDeposit:!i&&o===0&&n?.meta?.total===0,totalValue:o}},Br=()=>{let e=hooks.useAccountInstance(),t=hooks.useMediaQuery(types.MEDIA_TABLET),{isFirstTimeDeposit:o,totalValue:i}=yo(),r=hooks.useConfig("networkId"),{state:n}=hooks.useAccount(),{freeCollateral:a}=hooks.useCollateral({dp:2}),{marginRatio:s,mmr:l}=hooks.useMarginRatio(),u=n.status>=types.AccountStatusEnum.Connected,[{aggregated:c,totalUnrealizedROI:d},g]=hooks.usePositionStream(),m=react.useMemo(()=>Math.min(10,c.notional===0?g.margin_ratio(10):s),[s,c]);react.useMemo(()=>l?new utils.Decimal(l).mul(100).todp(2,0).toFixed(2):"",[l]);let p=react.useCallback(async F=>{let D;return t?D=await ui$1.modal.show(uiTransfer.DepositAndWithdrawWithSheetId,{activeTab:F}):D=await ui$1.modal.show(uiTransfer.DepositAndWithdrawWithDialogId,{activeTab:F}),D},[t]),y=react.useCallback(async()=>p("deposit"),[t]),w=hooks.useEventEmitter(),L=react.useCallback(async()=>p("withdraw"),[t]),C=react.useCallback(async()=>e.settle().catch(F=>{if(F.code===-1104)return ui$1.toast.error("Settlement is only allowed once every 10 minutes. Please try again later."),Promise.reject(F);F.message.indexOf("Signing off chain messages with Ledger is not yet supported")!==-1&&w.emit("wallet:sign-message-with-ledger-error",{message:F.message,userAddress:e.address});}).then(F=>(ui$1.toast.success("Settlement requested"),Promise.resolve(F))),[e]),[R,W]=hooks.useLocalStorage("orderly_assets_visible",!0),Ce=react.useCallback(()=>{W(F=>!F);},[R]);hooks.useWalletSubscription({onMessage:F=>{let{side:D,transStatus:H}=F;if(H==="COMPLETED"){let re=`${utils.capitalizeString(D)} completed`;ui$1.toast.success(re);}else if(H==="FAILED"){let re=`${utils.capitalizeString(D)} failed`;ui$1.toast.error(re);}w.emit("wallet:changed",F);}}),hooks.useSettleSubscription({onMessage:F=>{let{status:D}=F;switch(D){case"COMPLETED":ui$1.toast.success("Settlement completed");break;case"FAILED":ui$1.toast.error("Settlement failed");break;}}});let ie=reactApp.useDataTap(a)??void 0,he=reactApp.useDataTap(m)??void 0,De=reactApp.useDataTap(l)??void 0,Le=reactApp.useDataTap(i)??void 0;return {onDeposit:y,onWithdraw:L,onSettle:C,visible:R,toggleVisible:Ce,networkId:r,isFirstTimeDeposit:o,totalValue:Le,status:n.status,freeCollateral:ie,marginRatioVal:he,renderMMR:De,isConnected:u}};var So=()=>{let e=Br();return jsxRuntime.jsx(ho,{...e})};var bt=react.createContext({cellHeight:22}),q=()=>react.useContext(bt),xt=e=>{let[t,o]=react.useState("quantity"),[i,r]=react.useState("quantity");return jsxRuntime.jsx(bt.Provider,{value:{cellHeight:e.cellHeight,onItemClick:e.onItemClick,mode:t,totalMode:i||"quantity",depth:e.depth,onModeChange:o,onTotalModeChange:r,showTotal:e.showTotal||!1,pendingOrders:e.pendingOrders,symbolInfo:e.symbolInfo},children:e.children})};var yt=e=>{let{direction:t=1}=e,o=react.useMemo(()=>{let i=Math.max(e.width,0);return t===0?{transform:`translateX(${i}%)`}:{transform:`translateX(-${i}%)`}},[e.width]);return jsxRuntime.jsx("div",{className:ui$1.cn("oui-absolute oui-right-[-100%] oui-top-0 oui-h-full oui-w-full oui-transition-transform oui-pointer-events-none",t===0&&"oui-left-[-100%]",e.className),style:o})};var Ir=e=>{let{cellHeight:t,showTotal:o,onItemClick:i,depth:r,pendingOrders:n}=q(),{symbolInfo:a,currentHover:s}=e,{base_dp:l,quote_dp:u}=a,c=Number.isNaN(e.price)?0:e.accumulated/e.count*100,d=react.useMemo(()=>utils.getPrecisionByNumber(r||`${u}`),[r,u]),g=Number.isNaN(e.accumulated)?"-":e.accumulatedAmount?.toString(),m=react.useMemo(()=>{let b=ui$1.parseNumber(e.price,{dp:d,padding:!0});return n.findIndex(y=>b===ui$1.parseNumber(y,{dp:d,padding:!0}))!==-1},[n,e.price,r]);return jsxRuntime.jsxs("div",{className:"oui-flex oui-flex-row oui-pl-3 oui-tabular-nums oui-justify-between oui-text-base-contrast-80 oui-text-xs oui-relative oui-cursor-pointer",style:{height:`${t}px`},onClick:()=>{Number.isNaN(e.price)||Number.isNaN(e.quantity)||i?.([e.price,e.quantity]);},onMouseEnter:e.onMouseEnter,onMouseLeave:e.onMouseLeave,children:[jsxRuntime.jsxs("div",{className:ui$1.cn("oui-basis-7/12 oui-flex oui-flex-row oui-items-center oui-mr-2",o&&"oui-basis-5/12"),children:[jsxRuntime.jsx("div",{className:ui$1.cn("oui-flex-1 oui-text-left",e.type==="ask"?"oui-text-trade-loss":"oui-text-trade-profit"),children:jsxRuntime.jsx(ui$1.Text.numeral,{dp:d,children:e.price})}),jsxRuntime.jsx("div",{className:"oui-flex-1 oui-text-right oui-text-base-contrast-80",children:jsxRuntime.jsx(ui$1.Text.numeral,{dp:l,children:e.quantity})})]}),jsxRuntime.jsxs("div",{className:ui$1.cn("oui-basis-5/12 oui-flex oui-items-center oui-fex-row oui-overflow-hidden oui-relative oui-justify-end",o&&"oui-basis-7/12"),children:[jsxRuntime.jsx("div",{className:ui$1.cn("oui-flex-1 oui-pr-3 oui-text-right",o&&"oui-pr-3"),children:jsxRuntime.jsx(ui$1.Text.numeral,{dp:l,className:"oui-z-10",children:e.accumulated})}),o&&jsxRuntime.jsx("div",{className:"oui-flex-1 oui-text-right oui-pr-3",children:jsxRuntime.jsx(ui$1.Text.numeral,{dp:2,className:"oui-z-10",children:g})}),jsxRuntime.jsx(yt,{width:c,direction:0,className:e.type==="ask"?"oui-bg-trade-loss/10":"oui-bg-trade-profit/10"})]}),m&&jsxRuntime.jsx("div",{className:ui$1.cn("oui-absolute oui-rounded-full oui-left-[4px] oui-h-[4px] oui-w-[4px] oui-pointer-events-none",e.type==="ask"&&"oui-bg-trade-loss",e.type==="bid"&&"oui-bg-trade-profit"),style:{top:`${t/2-2}px`}}),e.isHover&&jsxRuntime.jsx("div",{className:"oui-absolute oui-bg-white oui-left-0 oui-right-0 oui-top-0 oui-bottom-0 oui-opacity-[.12]"}),s&&jsxRuntime.jsx("div",{className:ui$1.cn("oui-absolute oui-left-0 oui-right-0",e.type==="ask"&&"oui-top-0",e.type==="bid"&&"oui-bottom-0"),children:jsxRuntime.jsx(ui$1.Divider,{lineStyle:"dashed",className:ui$1.cn("oui-w-full",e.type==="bid"&&"oui-border-trade-profit",e.type==="ask"&&"oui-border-trade-loss")})})]})};var Ct=e=>{let{data:t,type:o}=e,{symbolInfo:i,depth:r}=q(),n=react.useCallback(()=>{if((t?.length||0)===0)return null;if(o==="ask"){let c=t.findIndex(d=>!Number.isNaN(d[0]));return c!=-1?t[c]:null}else {for(let c=t.length-1;c>=0;c--){let d=t[c];if(!Number.isNaN(d[0]))return d}return null}},[t,o]),a=react.useMemo(()=>r?.toString().includes(".")?r.toString().split(".")[1].length:0,[r]),s=react.useMemo(()=>t.reduce((c,d)=>Math.max(c,d[1]),0),[t]),[l,u]=react.useState(-1);return jsxRuntime.jsx("div",{className:"oui-order-book-list oui-flex oui-flex-col oui-gap-[1px]",children:t.map((c,d)=>jsxRuntime.jsx(Ol,{index:d,item:c,countQty:e.countQty,setHoverIndex:u,hoverIndex:l,type:o,maxQty:s,priceDp:a,symbolInfo:i,findMaxItem:n},d))})},Ol=e=>{let{index:t,item:o,setHoverIndex:i,type:r,maxQty:n,hoverIndex:a,priceDp:s,symbolInfo:l}=e,{base:u,quote:c,base_dp:d,quote_dp:g}=l,m=a!==-1?r==="ask"?t>=a:t<=a:!1,[b,p]=react.useState(!1),y=L=>{if(L===null)return {sumQty:0,sumQtyAmount:0,avgPrice:0};let C={sumQty:0,sumQtyAmount:0};return Number.isNaN(L[2])||(C={sumQty:L[2],sumQtyAmount:L[3]}),{...C,avgPrice:C.sumQtyAmount==0?0:C.sumQtyAmount/C.sumQty}},w=y(o);return w.avgPrice===0&&(w=y(e.findMaxItem())),jsxRuntime.jsxs(ui$1.TooltipRoot,{open:b,onOpenChange:p,children:[jsxRuntime.jsx(ui$1.TooltipTrigger,{children:jsxRuntime.jsx(Ir,{background:"",price:o[0],quantity:o[1],accumulated:o[2],count:e.countQty,type:e.type,accumulatedAmount:o[3],maxQty:n,isHover:m,currentHover:a===t,symbolInfo:l,onMouseEnter:()=>{i(t),p(!0);},onMouseLeave:()=>{i(-1),p(!1);}})}),jsxRuntime.jsxs(ui$1.TooltipContent,{className:ui$1.cn("oui-max-w-[400px] oui-w-full oui-text-2xs oui-shadow-md oui-rounded-base oui-p-3 oui-bg-base-6 oui-flex oui-flex-col oui-gap-2"),align:r==="ask"?"end":"start",alignOffset:-25.4,side:"left",sideOffset:2,onPointerEnter:L=>L.preventDefault(),children:[jsxRuntime.jsx(wo,{title:"Avg. Price\u2248",content:w.avgPrice,contentDp:s}),jsxRuntime.jsx(wo,{title:`Sum (${u})`,content:w.sumQty,contentDp:d}),jsxRuntime.jsx(wo,{title:`Sum (${c})`,content:w.sumQtyAmount,contentDp:g}),jsxRuntime.jsx(ui$1.TooltipArrow,{className:"oui-fill-base-6",style:{transform:r==="ask"?"translateX(80%)":"translateX(-80%)"}})]})]})},wo=e=>{let{title:t,content:o,contentDp:i}=e;return jsxRuntime.jsxs("div",{className:"oui-flex oui-flex-row oui-justify-between oui-gap-4",children:[jsxRuntime.jsx("div",{className:"oui-text-base-contrast-36",children:t}),jsxRuntime.jsx("div",{className:"oui-text-right",children:jsxRuntime.jsx(ui$1.Text.numeral,{dp:i,children:o})})]})};var zr=e=>{let{data:t}=e,o=react.useMemo(()=>{let i=Number.NaN,r=t.length-1;for(;Number.isNaN(i)&&r>0;)i=t[r][2],r--;return i},[t]);return jsxRuntime.jsx(Ct,{type:"bid",data:t,countQty:o})};var Hr=e=>{let{data:t}=e,o=react.useMemo(()=>{let i=Number.NaN,r=t.length,n=0;for(;Number.isNaN(i)&&n<r;)i=t[n][2],n++;return i},[t]);return jsxRuntime.jsx(Ct,{type:"ask",data:t,countQty:o})};var wt=e=>{let{markPrice:t=0,lastPrice:o,quote_dp:i,className:r,iconSize:n=18}=e,[a,s]=o,l=s<a,u=s>a;return jsxRuntime.jsxs(ui$1.Flex,{gap:1,className:ui$1.cn(u?"oui-text-trade-profit":l?"oui-text-trade-loss":"",r),children:[jsxRuntime.jsx(ui$1.Text.numeral,{dp:i,intensity:98,children:s}),jsxRuntime.jsxs(ui$1.Box,{width:19,children:[l&&jsxRuntime.jsx(ui$1.ArrowDownShortIcon,{size:n,color:"danger",opacity:1}),u&&jsxRuntime.jsx(ui$1.ArrowUpShortIcon,{size:n,color:"success",opacity:1})]})]})};var vt=e=>{let{isMobile:t}=ui$1.useScreen();return t?jsxRuntime.jsx(Kl,{...e}):jsxRuntime.jsx($l,{...e})},$l=e=>{let{quote_dp:t,className:o,iconSize:i=18}=e;return jsxRuntime.jsx(ui$1.Tooltip,{content:"Obtained from a third-party oracle, the mark price is calculated as the median of three prices: the last price, the fair price based on the funding rate basis, and the fair price based on the order books.",className:"oui-max-w-[270px]",children:jsxRuntime.jsxs(ui$1.Flex,{gap:1,className:ui$1.cn("oui-cursor-pointer oui-text-2xs",o),children:[jsxRuntime.jsx(qr,{size:i}),jsxRuntime.jsx(ui$1.Text.numeral,{dp:t,color:"warning",className:"oui-underline oui-text-base oui-decoration-dashed oui-decoration-1 oui-underline-offset-4 oui-decoration-warning-darken",children:e.markPrice})]})})},Kl=e=>{let{quote_dp:t,className:o,iconSize:i=18}=e,[r,n]=react.useState(!1);return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsxs(ui$1.Flex,{gap:1,className:ui$1.cn("oui-cursor-pointer oui-text-2xs",o),onClick:()=>{n(!0);},children:[jsxRuntime.jsx(qr,{size:i}),jsxRuntime.jsx(ui$1.Text.numeral,{dp:t,color:"warning",className:"oui-underline oui-decoration-dashed oui-decoration-1 oui-underline-offset-4 oui-decoration-warning-darken",children:e.markPrice})]}),jsxRuntime.jsx(ui$1.SimpleDialog,{size:"xs",open:r,onOpenChange:n,title:"Tips",actions:{primary:{label:"OK",onClick:()=>n(!1)}},children:jsxRuntime.jsx(ui$1.Text,{children:"Obtained from a third-party oracle, the mark price is calculated as the median of three prices: the last price, the fair price based on the funding rate basis, and the fair price based on the order books."})})]})},qr=e=>jsxRuntime.jsx("svg",{width:e.size,height:e.size,viewBox:"0 0 18 18",fill:"currenColor",xmlns:"http://www.w3.org/2000/svg",className:"oui-fill-warning-darken",children:jsxRuntime.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M3.75 1.5a.75.75 0 0 1 .75.75h6a.75.75 0 0 1 .75.75v1.5h3a.75.75 0 0 1 .75.75V12a.75.75 0 0 1-.75.75H7.5a.75.75 0 0 1-.75-.75v-1.5H4.5v5.25a.75.75 0 0 1-1.5 0V2.25a.75.75 0 0 1 .75-.75M4.5 9h5.25V3.75H4.5zm6.75-3v3.75a.75.75 0 0 1-.75.75H8.25v.75h5.25V6z"})});var $r=e=>{let{markPrice:t=0,lastPrice:o,asks:i,bids:r,symbolInfo:n}=e,{showTotal:a}=q();return jsxRuntime.jsxs("div",{className:"oui-flex oui-flex-row oui-pl-3 oui-tabular-nums oui-justify-between oui-text-base-contrast-80 oui-text-xs oui-relative oui-cursor-pointer oui-py-[6px]",children:[jsxRuntime.jsxs("div",{className:ui$1.cn("oui-basis-7/12 oui-flex oui-flex-row oui-items-center oui-mr-2 oui-justify-between",a&&"oui-basis-5/12"),children:[jsxRuntime.jsx(wt,{markPrice:t,lastPrice:o,quote_dp:n.quote_dp,className:"oui-text-base"}),jsxRuntime.jsx(vt,{markPrice:t,quote_dp:n.quote_dp})]}),jsxRuntime.jsx("div",{className:ui$1.cn("oui-basis-5/12 oui-flex oui-items-center oui-fex-row oui-overflow-hidden oui-relative oui-justify-end",a&&"oui-basis-7/12","oui-pr-3"),children:jsxRuntime.jsx(jl,{asks:i,bids:r})})]})},jl=e=>{let{asks:t,bids:o}=e,i=react.useMemo(()=>{if(o.length===0&&t.length===0)return 0;let r=Number.isNaN(o[0][0])?0:o[0][0],n=t.reverse().findIndex(l=>!Number.isNaN(l[0])),a=0;n!==-1&&(a=Number.isNaN(t[n][0])?0:t[n][0]);let s=new utils.Decimal(a).sub(r).div(new utils.Decimal(a).add(r).div(2));return Math.ceil(s.toNumber()*1e6+.1)/1e4},[t,o]);return jsxRuntime.jsx("div",{children:jsxRuntime.jsx(ui$1.Tooltip,{content:"Spread Ratio of the ask1 and bid1.",className:"oui-max-w-[240px]",children:jsxRuntime.jsx(ui$1.Text,{size:"2xs",intensity:36,className:"oui-cursor-pointer oui-underline oui-decoration-dashed oui-decoration-1 oui-underline-offset-4 oui-decoration-base-contrast-36",children:`${i}%`})})})};var Kr=e=>{let{showTotal:t}=q();return jsxRuntime.jsxs(ui$1.Flex,{pl:3,justify:"between",className:"oui-py-[6px]",children:[jsxRuntime.jsxs(ui$1.Flex,{gap:1,className:ui$1.cn("oui-basis-7/12",t&&"oui-basis-1/2"),children:[jsxRuntime.jsx(ui$1.Box,{width:"100%",children:jsxRuntime.jsx(Tt,{name:"Price",token:e.quote,id:"oui-order-book-header-price"})}),jsxRuntime.jsx(ui$1.Box,{width:"100%",children:jsxRuntime.jsx(Tt,{name:"Qty",token:e.base,id:"oui-order-book-header-qty",justifyEnd:!0})})]}),jsxRuntime.jsxs(ui$1.Flex,{gap:1,pr:3,className:ui$1.cn("oui-basis-5/12",t&&"oui-basis-1/2"),children:[jsxRuntime.jsx(ui$1.Box,{width:"100%",children:jsxRuntime.jsx(Tt,{name:"Total",token:e.base,id:"oui-order-book-header-total-base",justifyEnd:!0})}),t&&jsxRuntime.jsx(ui$1.Box,{width:"100%",children:jsxRuntime.jsx(Tt,{name:"Total",token:e.quote,id:"oui-order-book-header-total-quote",justifyEnd:!0})})]})]})},Tt=e=>{let{name:t,token:o,justifyEnd:i=!1}=e;return jsxRuntime.jsxs(ui$1.Flex,{id:e.id,className:ui$1.cn("oui-text-base-contrast-36 oui-text-xs oui-items-end",i&&"oui-justify-end"),children:[jsxRuntime.jsx("span",{children:t}),jsxRuntime.jsx("span",{children:`(${o})`})]})};var Yr=e=>{let t=react.useMemo(()=>e.depths.map(o=>({value:o,label:`${o}`})),[e.depths]);return jsxRuntime.jsx(ui$1.Box,{pl:3,width:97,className:"oui-py-[10px]",children:jsxRuntime.jsx(ui$1.Select.options,{options:t,size:"xs",value:e.value,onValueChange:o=>{e.onChange?.(o);}})})};var Zr=e=>{let{lastPrice:t,markPrice:o,quote:i,base:r,isLoading:n,onDepthChange:a}=e,s=react.useRef(null),[l,u]=react.useState(!1),c=[{left:370,right:600},{left:740,right:800}];return react.useEffect(()=>{let d=new ResizeObserver(m=>{for(let b of m){let {inlineSize:p}=b.borderBoxSize[0];c.reduce((w,L)=>w+(p>=L.left&&p<L.right?1:0),0);u(p>=360);}}),g=s.current;return g&&d.observe(g),()=>{g&&d.unobserve(g);}},[]),jsxRuntime.jsx(xt,{cellHeight:e.cellHeight??20,onItemClick:e.onItemClick,depth:e.activeDepth,showTotal:l,pendingOrders:e.pendingOrders||[],symbolInfo:e.symbolInfo,children:jsxRuntime.jsxs(ui$1.Grid,{cols:1,rows:5,id:"oui-orderbook-desktop",ref:s,className:"oui-grid-rows-[auto,auto,1fr,auto,1fr] oui-relative oui-h-full oui-w-full",children:[jsxRuntime.jsx(Yr,{depths:e.depths,value:e.activeDepth,onChange:a}),jsxRuntime.jsx(Kr,{quote:i,base:r}),jsxRuntime.jsx(Hr,{data:[...e.asks]}),jsxRuntime.jsx($r,{lastPrice:t,markPrice:o,asks:[...e.asks],bids:[...e.bids],symbolInfo:e.symbolInfo}),jsxRuntime.jsx(zr,{data:[...e.bids]}),n&&jsxRuntime.jsx("div",{className:"oui-absolute oui-left-0 oui-top-0 oui-right-0 oui-bottom-0 oui-z-10 oui-flex oui-items-center oui-justify-center oui-bg-bg-8/70",children:jsxRuntime.jsx(ui$1.Spinner,{})})]})})};var jr=e=>{let{mode:t,onModeChange:o}=q(),i=react.useMemo(()=>t==="amount"?e.quote:e.base,[t,e.quote,e.base]),r=react.useMemo(()=>t==="amount"?"Value":"Qty",[t]);return jsxRuntime.jsxs(ui$1.Flex,{justify:"between",width:"100%",className:"oui-text-base-contrast-36 oui-text-2xs oui-py-[5px]",children:[jsxRuntime.jsxs(ui$1.Flex,{direction:"column",itemAlign:"start",id:"oui-order-book-header-price",children:[jsxRuntime.jsx(ui$1.Text,{children:"Price"}),jsxRuntime.jsx(ui$1.Text,{children:`(${e.quote})`})]}),jsxRuntime.jsxs(ui$1.Flex,{direction:"column",itemAlign:"end",className:"oui-cursor-pointer",onClick:()=>o?.(t==="amount"?"quantity":"amount"),children:[jsxRuntime.jsx(ui$1.Text,{children:r}),jsxRuntime.jsx(ui$1.Text,{children:`(${i})`})]})]})};var on=e=>{let t=e.accumulated/e.count*100,{cellHeight:o,onItemClick:i,depth:r,showTotal:n,symbolInfo:a}=react.useContext(bt),{base_dp:s,quote_dp:l}=a,u=Number.isNaN(e.quantity)?"-":e.mode==="amount"?new utils.Decimal(e.quantity).mul(e.price).toString():e.quantity;n&&(u=e.quantity);let c=react.useMemo(()=>utils.getPrecisionByNumber(r||`${l}`),[r,l]);return jsxRuntime.jsxs(ui$1.Box,{className:ui$1.cn("oui-overflow-hidden oui-relative oui-cursor-pointer oui-tabular-nums oui-text-2xs oui-w-full",n&&"oui-flex-1"),style:{height:`${o}px`},onClick:d=>{Number.isNaN(e.price)||Number.isNaN(e.quantity)||i?.([e.price,e.quantity]);},children:[jsxRuntime.jsxs(ui$1.Flex,{justify:"between",children:[jsxRuntime.jsx(ui$1.Text.numeral,{color:e.type==="bid"?"buy":"sell",dp:c,children:e.price}),jsxRuntime.jsx(ui$1.Text.numeral,{dp:e.mode==="amount"?2:s,className:"oui-text-base-contrast-80",children:u})]}),Number.isNaN(t)||n?null:jsxRuntime.jsx(yt,{width:t,className:e.type==="ask"?"oui-bg-trade-loss/20":"oui-bg-trade-profit/20"})]})};var Ft=e=>{let{data:t}=e,{mode:o}=q();return jsxRuntime.jsx(ui$1.Box,{className:"oui-order-book-list oui-flex oui-flex-col oui-gap-[1px] oui-w-full",children:t.map((i,r)=>jsxRuntime.jsx(on,{background:"",price:i[0],quantity:i[1],accumulated:i[2],count:e.countQty,type:e.type,mode:o},r))})};var nn=e=>{let{data:t}=e,o=react.useMemo(()=>{let i=Number.NaN,r=t.length-1;for(;Number.isNaN(i)&&r>0;)i=t[r][2],r--;return i},[t]);return jsxRuntime.jsx(Ft,{type:"bid",data:t,countQty:o})};var an=e=>{let{data:t}=e,o=react.useMemo(()=>{let i=Number.NaN,r=t.length,n=0;for(;Number.isNaN(i)&&n<r;)i=t[n][2],n++;return i},[t]);return jsxRuntime.jsx(Ft,{type:"ask",data:t,countQty:o})};var ln=e=>{let{symbolInfo:t}=q(),{quote_dp:o}=t;return jsxRuntime.jsxs(ui$1.Flex,{id:"oui-order-book-mark-price",className:"oui-py-[6px]",width:"100%",justify:"between",children:[jsxRuntime.jsx(wt,{markPrice:e.markPrice,lastPrice:e.lastPrice,quote_dp:o,className:"oui-text-sm",iconSize:14}),jsxRuntime.jsx(vt,{markPrice:e.markPrice,quote_dp:o,className:"oui-text-2xs",iconSize:12})]})};var cn=e=>{let t=react.useMemo(()=>e.depth.map(o=>({value:o,label:`${o}`})),[e.depth]);return jsxRuntime.jsx(ui$1.Box,{id:"oui-order-book-depth",className:"oui-pt-2 oui-w-full",children:jsxRuntime.jsx(ui$1.Picker,{options:t,fullWidth:!0,size:"sm",value:e.value,className:"oui-text-2xs oui-text-base-contrast-54",onValueChange:o=>{e.onChange?.(o);}})})};var Bo=e=>{let t=e.data.est_funding_rate,o=e.data.countDown;return jsxRuntime.jsxs(ui$1.Flex,{direction:"column",itemAlign:"start",pb:2,children:[jsxRuntime.jsx(ui$1.Text,{intensity:36,size:"2xs",children:"Pred. funding rate"}),t===null?"--":jsxRuntime.jsxs("div",{className:"orderly-flex orderly-gap-1 oui-text-2xs oui-text-base-contrast-36",children:[jsxRuntime.jsx(ui$1.Text.numeral,{coloring:!0,suffix:"%",dp:4,children:t??"--"}),jsxRuntime.jsx("span",{children:" in"}),jsxRuntime.jsx("span",{children:" "+o})]})]})};var Oo=e=>({data:hooks.useFundingRate(e)});var Ao=e=>{let t=Oo(e.symbol);return jsxRuntime.jsx(Bo,{...t})};var gn=e=>{let{lastPrice:t,markPrice:o,quote:i,base:r,isLoading:n,onDepthChange:a}=e,s=`PERP_${e.symbolInfo.base}_${e.symbolInfo.quote}`;return jsxRuntime.jsx(xt,{cellHeight:e.cellHeight??20,onItemClick:e.onItemClick,depth:e.activeDepth,pendingOrders:[],showTotal:!1,symbolInfo:e.symbolInfo,children:jsxRuntime.jsxs(ui$1.Flex,{direction:"column",p:2,id:"oui-orderbook-mobile",className:ui$1.cn("oui-h-full oui-wfull oui-relative",e.className),justify:"start",itemAlign:"start",children:[jsxRuntime.jsx(Ao,{symbol:s}),jsxRuntime.jsx(jr,{quote:i,base:r}),jsxRuntime.jsx(an,{data:e.asks}),jsxRuntime.jsx(ln,{lastPrice:t,markPrice:o}),jsxRuntime.jsx(nn,{data:e.bids}),jsxRuntime.jsx(cn,{depth:e.depths||[],value:e.activeDepth,onChange:a}),n&&jsxRuntime.jsx("div",{className:"oui-absolute oui-left-0 oui-top-0 oui-right-0 oui-bottom-0 oui-z-10 oui-flex oui-items-center oui-justify-center oui-bg-base-800/70 oui-h-full oui-min-h-[420px]",children:jsxRuntime.jsx(ui$1.Spinner,{})})]})})};var Io=e=>jsxRuntime.jsx(ui$1.Box,{className:"oui-font-semibold",width:"100%",height:"100%",children:e.isMobile?jsxRuntime.jsx(gn,{level:e.level,asks:e.asks,bids:e.bids,markPrice:e.markPrice,lastPrice:e.lastPrice,depths:e.depths,activeDepth:e.selDepth,base:e.base,quote:e.quote,isLoading:e.isLoading,onItemClick:e.onItemClick,cellHeight:e.cellHeight,onDepthChange:e.onDepthChange,className:e.className,symbolInfo:e.symbolInfo}):jsxRuntime.jsx(Zr,{level:e.level,asks:e.asks,bids:e.bids,markPrice:e.markPrice,lastPrice:e.lastPrice,depths:e.depths,activeDepth:e.selDepth,base:e.base,quote:e.quote,isLoading:e.isLoading,onItemClick:e.onItemClick,cellHeight:e.cellHeight,onDepthChange:e.onDepthChange,className:e.className,pendingOrders:e.pendingOrders,symbolInfo:e.symbolInfo})});var Ze=20,hn=104,_o=e=>{let{symbol:t,height:o}=e,i=hooks.useSymbolsInfo()[e.symbol],[r,n]=react.useState(Ze),[a,s]=react.useState(10),{base:l,quote:u,quote_dp:c}=Ue(i),[d,{onDepthChange:g,isLoading:m,onItemClick:b,depth:p,allDepths:y}]=hooks.useOrderbookStream(t,void 0,{level:a}),w=Eu(t);react.useEffect(()=>{if(o){let W=Math.floor((o-hn)/((Ze+1)*2)),Ce=(Ze+1)*2*W,ie=o-hn-Ce;ie>10?n(Ze+ie/W/2):n(Ze),s(W);}},[o]);let L=react.useMemo(()=>typeof p>"u"||typeof c>"u"?void 0:utils.removeTrailingZeros(p),[p,c]),C=react.useMemo(()=>y?.map(W=>utils.removeTrailingZeros(W))||[],[y,c]),{isMobile:R}=ui$1.useScreen();return {level:a,asks:d?.asks,bids:d?.bids,markPrice:d?.markPrice,lastPrice:d?.middlePrice,depths:C,selDepth:L,base:l,quote:u,isLoading:m,onItemClick:b,cellHeight:r,onDepthChange:g,pendingOrders:w,symbolInfo:Ue(i),isMobile:R}},Eu=e=>{let[t]=hooks.useOrderStream({status:types.OrderStatus.INCOMPLETE,symbol:e});return react.useMemo(()=>t?.filter(r=>r.symbol===e).reduce((r,n)=>{let a=n.price||n.trigger_price||0;return [...r,a]},[]),[t,e])};var Re=e=>{let t=_o({symbol:e.symbol,height:e.height});return jsxRuntime.jsx(Io,{...t,className:e.className})};var zo=e=>{let{riskRate:t,riskRateColor:o,isConnected:i,currentLeverage:r,maxLeverage:n}=e,{isHigh:a,isMedium:s,isLow:l,isDefault:u}=o,{wrongNetwork:c}=reactApp.useAppContext(),d=c?"":a?"oui-text-danger":s?"oui-text-warning-darken":l?ui$1.gradientTextVariants({color:"brand"}):"";return jsxRuntime.jsxs(ui$1.Box,{"data-risk":"",className:"oui-space-y-2",children:[jsxRuntime.jsx(ui$1.Flex,{itemAlign:"center",justify:"start",className:"oui-w-full oui-bg-base-6 oui-rounded-full oui-h-2 oui-px-[1px]",children:jsxRuntime.jsx(ui$1.Box,{className:c?"oui-bg-gradient-to-r oui-opacity-20 oui-from-[#26fefe] oui-via-[#ff7d00] oui-to-[#d92d6b] oui-h-1.5 oui-rounded-full":a?"oui-bg-gradient-to-tr oui-from-[#791438] oui-to-[#ff447c] oui-h-1.5 oui-rounded-full":s?"oui-bg-gradient-to-tr oui-from-[#792e00] oui-to-[#ffb65d] oui-h-1.5 oui-rounded-full":l?"oui-bg-gradient-to-tr oui-from-[#59b0fe] oui-to-[#26fefe] oui-h-1.5 oui-rounded-full":"oui-bg-gradient-to-r oui-opacity-20 oui-from-[#26fefe] oui-via-[#ff7d00] oui-to-[#d92d6b] oui-h-1.5 oui-rounded-full",style:t&&t!=="--"?{width:t}:{width:"100%"}})}),jsxRuntime.jsxs(ui$1.Flex,{className:"oui-gap-2",children:[jsxRuntime.jsxs(ui$1.Flex,{direction:"column",itemAlign:"start",className:"oui-flex-1",children:[jsxRuntime.jsx(ui$1.Tooltip,{content:jsxRuntime.jsx(po,{description:"The Risk rate is used to assess the risk level of an account. When the Risk rate reaches 100%, the account will be liquidated",formula:"Risk rate = Maintenance margin ratio / Margin ratio * 100%"}),children:jsxRuntime.jsx(ui$1.Text,{size:"2xs",color:"neutral",weight:"semibold",className:"oui-cursor-pointer oui-border-b oui-border-dashed oui-border-b-white/10",children:"Risk rate"})}),jsxRuntime.jsx(ui$1.Text,{size:"xs",color:"neutral",weight:"semibold",className:ui$1.cn(d),children:t??"--"})]}),jsxRuntime.jsxs(ui$1.Flex,{direction:"column",itemAlign:"end",className:"oui-flex-1",children:[jsxRuntime.jsx(ui$1.Tooltip,{open:!1,content:jsxRuntime.jsx("div",{children:"hint test"}),children:jsxRuntime.jsx(ui$1.Text,{size:"2xs",color:"neutral",weight:"semibold",className:"oui-cursor-pointer",children:"Max account leverage"})}),jsxRuntime.jsxs(ui$1.Flex,{className:"oui-gap-1",children:[jsxRuntime.jsx(ui$1.Text.numeral,{dp:2,padding:!1,suffix:r?"x":void 0,children:r??"--"}),jsxRuntime.jsx("span",{className:"oui-text-base-contrast-54",children:"/"}),jsxRuntime.jsxs("button",{className:"oui-flex oui-items-center oui-gap-1",onClick:()=>{ui$1.modal.show(uiLeverage.LeverageWidgetId,{currentLeverage:5});},"data-testid":"oui-testid-riskRate-leverage-button",children:[jsxRuntime.jsx(ui$1.Text.numeral,{dp:2,padding:!1,suffix:n?"x":void 0,"data-testid":"oui-testid-riskRate-leverage-value",children:n??"--"}),typeof n<"u"&&n!==null&&jsxRuntime.jsx(ui$1.EditIcon,{size:12,color:"white"})]})]})]})]})]})};var Zu=e=>{if(e===null)return {isHigh:!1,isMedium:!1,isLow:!1,isDefault:!0};let t=e<40,o=e>=40&&e<80,i=e>=80;return {isHigh:i,isMedium:o,isLow:t,isDefault:!t&&!o&&!i}},wn=()=>{let{state:e}=hooks.useAccount(),t=e.status>=types.AccountStatusEnum.EnableTrading||e.status===types.AccountStatusEnum.EnableTradingWithoutConnected,{marginRatio:o,currentLeverage:i,mmr:r}=hooks.useMarginRatio(),[n]=hooks.useLeverage(),a=react.useMemo(()=>!t||o===null||r===null?"--":o===0||r===0?"0%":`${new utils.Decimal(r).div(o).mul(100).todp(2,utils.Decimal.ROUND_UP).toString().replace(/\.?0+$/,"")}%`,[t,o,r]),s=a==="--"?null:parseFloat(a),l=react.useMemo(()=>Zu(s),[s]),u=reactApp.useDataTap(i),c=reactApp.useDataTap(n);return {riskRate:reactApp.useDataTap(a),riskRateColor:l,isConnected:t,currentLeverage:u,maxLeverage:c}};var Eo=()=>{let e=wn();return jsxRuntime.jsx(zo,{...e})};var Wo=e=>jsxRuntime.jsx("div",{ref:e.containerRef,className:"oui-h-full",children:(e.containerSize?.width||0)>=572?jsxRuntime.jsx(rc,{...e}):jsxRuntime.jsx(nc,{...e})}),rc=e=>jsxRuntime.jsxs(ui$1.Grid,{cols:2,width:"100%",gap:3,className:"oui-auto-rows-fr",style:{height:e.containerSize?.height},children:[jsxRuntime.jsxs(ui$1.Flex,{direction:"column",itemAlign:"start",pt:3,pb:3,r:"2xl",className:"oui-bg-base-9",children:[jsxRuntime.jsx(Tn,{title:"Order book",className:"oui-pl-3 oui-text-sm"}),jsxRuntime.jsx(Re,{symbol:e.symbol,height:e.containerSize?e.containerSize.height-29-24:void 0})]}),jsxRuntime.jsxs(ui$1.Flex,{direction:"column",itemAlign:"start",py:3,r:"2xl",className:"oui-bg-base-9 oui-h-full",children:[jsxRuntime.jsx(Tn,{title:"Last trades",className:"oui-text-sm oui-px-3"}),jsxRuntime.jsx(Fe,{symbol:e.symbol,style:{height:e.containerSize&&e.containerSize.height-29-24},classNames:{listHeader:"oui-px-3",list:"oui-px-3"}})]})]}),nc=e=>jsxRuntime.jsx(ui$1.Box,{pt:3,pb:3,pr:0,r:"2xl",className:"oui-bg-base-9",style:{maxHeight:e.containerSize?.height},children:jsxRuntime.jsxs(ui$1.Tabs,{value:e.tab,variant:"contained",onValueChange:t=>{e.setTab(t);},classNames:{tabsList:"oui-pl-3"},size:"lg",children:[jsxRuntime.jsx(ui$1.TabPanel,{value:"orderBook",title:"Order book",children:jsxRuntime.jsx(Re,{symbol:e.symbol,height:e.containerSize?e.containerSize.height-29-18:void 0})}),jsxRuntime.jsx(ui$1.TabPanel,{value:"lastTrades",title:"Last trades",children:jsxRuntime.jsx(Fe,{symbol:e.symbol,style:{height:e.containerSize&&e.containerSize.height-29-18},classNames:{root:"oui-pt-[6px]",listHeader:"oui-px-3",list:"oui-px-3"}})})]})}),Tn=e=>jsxRuntime.jsx(ui$1.Text,{size:"base",intensity:80,className:ui$1.cn("oui-pb-[5px]",e.className),children:e.title});var Vo=e=>{let[t,o]=react.useState(void 0),[i,r]=react.useState("orderBook"),n=react.useRef();return react.useEffect(()=>{let a=new ResizeObserver(l=>{for(let u of l){let{width:c,height:d}=u.contentRect;o({width:c,height:d});}}),s=n.current;return s&&a.observe(s),()=>{s&&a.unobserve(s);}},[]),{symbol:e,containerSize:t,containerRef:n,tab:i,setTab:r}};var qo=e=>{let t=Vo(e.symbol);return jsxRuntime.jsx(Wo,{...t})};var Fn=e=>{let{onMouseDown:t,mode:o="horizontal",...i}=e,r=react.useMemo(()=>e.className?.split(" ").includes("disable"),[e.className]),n=react.useMemo(()=>e.className?.split(" ").filter(a=>a!=="disable"),[e.className]);return jsxRuntime.jsx("div",{...i,className:ui$1.cn(n,"!oui-transition-none","!oui-shadow-none !oui-bg-transparent","hover:!oui-bg-primary-light hover:!oui-shadow-[0px_0px_4px_0px] hover:!oui-shadow-primary-light/80","active:!oui-bg-primary-light active:!oui-shadow-[0px_0px_4px_0px] active:!oui-shadow-primary-light/80","focus:!oui-bg-primary-light focus:!oui-shadow-[0px_0px_4px_0px] focus:!oui-shadow-primary-light/80",o==="horizontal"?"!oui-w-[2px] !oui-min-w-[2px] !oui-mx-1":"!oui-h-[2px] !oui-min-h-[2px] !oui-my-1",r&&"oui-pointer-events-none"),children:jsxRuntime.jsx("div",{onMouseDown:t,className:ui$1.cn("!oui-transition-none",o==="horizontal"?"after:!oui-w-[2px]":"after:!oui-h-[2px]","after:!oui-bg-transparent after:!oui-shadow-transparent")})})};var Me=e=>{let{onSizeChange:t,...o}=e;return jsxRuntime.jsx(uc__default.default,{...o,lineBar:!0,renderBar:i=>jsxRuntime.jsx(Fn,{...i,mode:e.mode}),onDragEnd:(i,r,n)=>{t?.(`${r}`);}})};var Go=e=>jsxRuntime.jsx("button",{onClick:t=>{ui$1.modal.show(uiChainSelector.ChainSelectorSheetId,{bridgeLessOnly:!1,isWrongNetwork:e.isWrongNetwork}).then(o=>{o?.chainId&&e.setChainId(o?.chainId),ui$1.toast.success("Network switched");},o=>{});},children:jsxRuntime.jsxs(ui$1.Box,{className:"oui-relative oui-rounded-t-[6px] oui-rounded-bl-[6px] oui-rounded-br-[3px] oui-bg-base-5 oui-px-2 oui-h-7 oui-flex oui-items-center",children:[jsxRuntime.jsx(ui$1.ChainIcon,{chainId:e.chainId??e.defaultChainId,size:"2xs"}),jsxRuntime.jsx("div",{className:"oui-absolute oui-right-0 oui-bottom-0",children:jsxRuntime.jsxs("svg",{width:"9",height:"9",viewBox:"0 0 9 9",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[jsxRuntime.jsx("path",{d:"M9 6V0L0 9h6a3 3 0 0 0 3-3",fill:"url(#a)"}),jsxRuntime.jsx("defs",{children:jsxRuntime.jsxs("linearGradient",{id:"a",x1:"9",y1:"4.5",x2:"0",y2:"4.5",gradientUnits:"userSpaceOnUse",children:[jsxRuntime.jsx("stop",{stopColor:"rgb(var(--oui-gradient-brand-end))"}),jsxRuntime.jsx("stop",{offset:"1",stopColor:"rgb(var(--oui-gradient-brand-start))"})]})})]})})]})});var Qo=()=>{let{account:e}=hooks.useAccount(),t=hooks.useConfig(),[o,i]=react.useState(e.chainId);react.useEffect(()=>{i(e.chainId);},[e.chainId]);let r=react.useMemo(()=>{if(o)return utils.isTestnet(Number(o))},[o]),{wrongNetwork:n}=reactApp.useAppContext(),a=t.get("networkId");return {defaultChainId:react.useMemo(()=>a==="testnet"?421614:42161,[]),chainId:o,setChainId:i,isTestnetChain:r,networkId:a,isWrongNetwork:n}};var $o=()=>{let e=Qo();return jsxRuntime.jsx(Go,{...e})};var Ko=e=>jsxRuntime.jsx(uiConnector.AuthGuard,{buttonProps:{size:"sm"},children:jsxRuntime.jsx(ui$1.Button,{variant:"gradient",size:"sm",className:"oui-max-w-[83px]",onClick:t=>{e.onShowAccountSheet();},children:ui$1.formatAddress(e.address,[4,4])})});var Rn=()=>jsxRuntime.jsxs("svg",{width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",className:"oui-rounded-full",children:[jsxRuntime.jsxs("g",{clipPath:"url(#a)",children:[jsxRuntime.jsx("path",{d:"m31.002 14.493-8.326-22.51L.166.31l8.327 22.51z",fill:"#03435D"}),jsxRuntime.jsx("path",{d:"m4.456-8.716-18.03 15.84 15.84 18.03 18.03-15.84z",fill:"#157CF2"}),jsxRuntime.jsx("path",{d:"m17.548 38.67 22.825-7.416-7.416-22.825-22.826 7.416z",fill:"#F3E200"})]}),jsxRuntime.jsx("defs",{children:jsxRuntime.jsx("clipPath",{id:"a",children:jsxRuntime.jsx("rect",{width:"24",height:"24",rx:"12",fill:"#fff"})})})]}),In=()=>jsxRuntime.jsx("svg",{width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:jsxRuntime.jsx("path",{d:"M5.832 2.492A3.333 3.333 0 0 0 2.5 5.826v5a3.333 3.333 0 0 0 3.333 3.333 3.333 3.333 0 0 0 3.334 3.333h5a3.333 3.333 0 0 0 3.333-3.333v-5a3.333 3.333 0 0 0-3.333-3.333 3.333 3.333 0 0 0-3.334-3.334zm8.334 5c.92 0 1.666.746 1.666 1.667v5c0 .92-.746 1.666-1.666 1.666h-5c-.92 0-1.667-.745-1.667-1.666h3.333a3.333 3.333 0 0 0 3.334-3.334z",fill:"rgb(var(--oui-color-primary))"})}),At=e=>{let{size:t=20}=e;return jsxRuntime.jsxs("svg",{width:t,height:t,viewBox:"0 0 20 20",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[jsxRuntime.jsxs("g",{clipPath:"url(#a)",children:[jsxRuntime.jsx("path",{d:"M10 20c5.542 0 10-4.458 10-10S15.542 0 10 0 0 4.458 0 10s4.458 10 10 10",fill:"#2775CA"}),jsxRuntime.jsx("path",{d:"M13 11.473c0-1.452-.94-1.95-2.82-2.158-1.344-.166-1.613-.498-1.613-1.078s.448-.955 1.343-.955c.806 0 1.254.25 1.478.872.045.124.18.207.313.207h.717c.179 0 .313-.125.313-.29v-.042c-.179-.913-.985-1.618-2.015-1.701v-.996c0-.166-.134-.29-.358-.332h-.671c-.18 0-.314.124-.359.332v.954c-1.343.166-2.194.996-2.194 2.034 0 1.369.896 1.908 2.776 2.116 1.254.207 1.657.456 1.657 1.12s-.627 1.12-1.477 1.12c-1.165 0-1.568-.456-1.702-1.078a.32.32 0 0 0-.313-.25h-.762c-.179 0-.313.125-.313.291v.042c.179 1.037.895 1.784 2.373 1.991v.996c0 .166.134.29.358.332h.672c.18 0 .313-.124.358-.332v-.996C12.105 13.465 13 12.593 13 11.473",fill:"#fff",fillOpacity:".98"}),jsxRuntime.jsx("path",{d:"M7.74 16.57c-3.458-1.215-5.23-4.986-3.945-8.324.665-1.821 2.127-3.208 3.944-3.859.178-.086.266-.216.266-.433v-.607c0-.174-.088-.304-.266-.347-.044 0-.133 0-.177.043-4.21 1.3-6.516 5.68-5.186 9.798.798 2.428 2.704 4.292 5.186 5.072.177.087.355 0 .399-.173.044-.043.044-.087.044-.173v-.608c0-.13-.133-.303-.266-.39m4.698-13.527c-.178-.086-.355 0-.4.174-.043.043-.043.086-.043.173v.607c0 .174.133.347.266.434 3.457 1.213 5.23 4.985 3.944 8.323-.664 1.821-2.127 3.209-3.944 3.859-.178.086-.266.216-.266.433v.607c0 .174.088.304.266.347.044 0 .133 0 .177-.043 4.21-1.3 6.515-5.68 5.186-9.798-.798-2.471-2.748-4.335-5.186-5.116",fill:"#fff"})]}),jsxRuntime.jsx("defs",{children:jsxRuntime.jsx("clipPath",{id:"a",children:jsxRuntime.jsx("path",{fill:"#fff",d:"M0 0h20v20H0z"})})})]})},Mn=e=>{return jsxRuntime.jsxs("svg",{width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[jsxRuntime.jsxs("g",{clipPath:"url(#clip0_6403_64483)",children:[jsxRuntime.jsx("path",{d:"M10.0245 19.9493C15.5198 19.9493 19.9747 15.4944 19.9747 9.99908C19.9747 4.50371 15.5198 0.0488281 10.0245 0.0488281C4.5291 0.0488281 0.0742188 4.50371 0.0742188 9.99908C0.0742188 15.4944 4.5291 19.9493 10.0245 19.9493Z",fill:"url(#paint0_linear_6403_64483)"}),jsxRuntime.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M14.1553 4.89304C14.2199 4.94541 14.1821 5.04758 14.0989 5.04758H5.95035C5.86716 5.04758 5.82936 4.94541 5.894 4.89304C7.0223 3.97912 8.45953 3.43164 10.0246 3.43164C11.5898 3.43164 13.0269 3.97912 14.1553 4.89304Z",fill:"white"}),jsxRuntime.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M7.47013 11.7869C7.42315 11.7199 7.34748 11.6777 7.26565 11.6777H3.82985C3.75113 11.6777 3.69375 11.7525 3.71563 11.8281C4.5078 14.565 7.0326 16.566 10.0247 16.566C13.017 16.566 15.5417 14.565 16.3339 11.8281C16.3558 11.7525 16.2984 11.6777 16.2197 11.6777H12.7839C12.702 11.6777 12.6264 11.7199 12.5795 11.7869C12.0155 12.5911 11.0815 13.1167 10.0248 13.1167C8.96803 13.1167 8.03406 12.5911 7.47013 11.7869Z",fill:"white"}),jsxRuntime.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M12.3347 7.90519C12.3822 7.95756 12.449 7.9891 12.5196 7.9891H16.1137C16.1952 7.9891 16.253 7.90983 16.2261 7.83301C15.9724 7.10689 15.5948 6.43893 15.1187 5.85447C15.074 5.79961 15.0067 5.76855 14.9358 5.76855H5.11323C5.04247 5.76855 4.97512 5.79961 4.93044 5.85447C4.45429 6.43893 4.0767 7.10689 3.82306 7.83301C3.79622 7.90983 3.85398 7.9891 3.93536 7.9891H7.52952C7.60022 7.9891 7.66694 7.95756 7.71445 7.90519C8.28491 7.2763 9.10861 6.88136 10.0246 6.88136C10.9405 6.88136 11.7643 7.2763 12.3347 7.90519Z",fill:"white"}),jsxRuntime.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M13.1164 10.9586C13.0553 10.9586 13.0118 10.899 13.0284 10.8401C13.1033 10.5722 13.1433 10.2898 13.1433 9.9981C13.1433 9.58758 13.064 9.19556 12.9199 8.83657C12.8954 8.77581 12.9392 8.70801 13.0046 8.70801H16.392C16.4349 8.70801 16.472 8.73831 16.4799 8.78052C16.5538 9.17511 16.5925 9.58216 16.5925 9.9982C16.5925 10.2978 16.5724 10.5926 16.5337 10.8815C16.5277 10.9258 16.4897 10.9586 16.4451 10.9586H13.1164ZM7.02223 10.8401C7.03868 10.899 6.99532 10.9586 6.93421 10.9586H3.60551C3.56084 10.9586 3.52285 10.9258 3.5169 10.8815C3.47807 10.5926 3.45801 10.2978 3.45801 9.9982C3.45801 9.58216 3.4967 9.17511 3.57069 8.78052C3.57859 8.73831 3.61563 8.70801 3.65856 8.70801H7.04593C7.11141 8.70801 7.15516 8.77581 7.13076 8.83657C6.98657 9.19556 6.90722 9.58758 6.90722 9.9981C6.90722 10.2898 6.94728 10.5722 7.02223 10.8401Z",fill:"white"})]}),jsxRuntime.jsxs("defs",{children:[jsxRuntime.jsxs("linearGradient",{id:"paint0_linear_6403_64483",x1:"10.0245",y1:"0.0488561",x2:"10.0245",y2:"19.9493",gradientUnits:"userSpaceOnUse",children:[jsxRuntime.jsx("stop",{stopColor:"#C750FF"}),jsxRuntime.jsx("stop",{offset:"1",stopColor:"#5800E8"})]}),jsxRuntime.jsx("clipPath",{id:"clip0_6403_64483",children:jsxRuntime.jsx("rect",{width:"20",height:"20",fill:"white"})})]})]})};var Yo=e=>jsxRuntime.jsxs(ui$1.Flex,{direction:"column",gap:4,children:[jsxRuntime.jsx(Tc,{...e}),jsxRuntime.jsx(Nc,{...e}),jsxRuntime.jsx(kc,{...e}),jsxRuntime.jsxs(ui$1.Flex,{gap:3,width:"100%",justify:"center",children:[e.showGetTestUSDC&&jsxRuntime.jsx(ui$1.Button,{variant:"outlined",size:"md",onClick:e.onGetTestUSDC,fullWidth:!0,loading:e.gettingTestUSDC,className:"oui-border-primary-light oui-text-primary-light",children:"Get test USDC"}),jsxRuntime.jsx(ui$1.Button,{variant:"outlined",color:"danger",size:"md",onClick:e.onDisconnect,className:e.showGetTestUSDC?"oui-w-full":"oui-w-[50%]",children:"Disconnect"})]})]}),Tc=e=>jsxRuntime.jsxs(ui$1.Flex,{width:"100%",justify:"between",children:[jsxRuntime.jsxs(ui$1.Flex,{gap:3,children:[jsxRuntime.jsx(Rn,{}),jsxRuntime.jsxs(ui$1.Flex,{direction:"column",justify:"start",itemAlign:"start",className:"oui-gap-[2px]",children:[jsxRuntime.jsx(ui$1.Text.formatted,{rule:"address",children:e.address}),jsxRuntime.jsx(ui$1.Text.formatted,{size:"2xs",intensity:80,prefix:jsxRuntime.jsx("div",{className:"oui-h-1 oui-w-1 oui-rounded-full oui-bg-success oui-pr-1"}),children:e.chainName})]})]}),jsxRuntime.jsx("button",{className:"oui-cursor-pointer",onClick:()=>{e.onCopyAddress();},children:jsxRuntime.jsx(In,{})})]}),Nc=e=>jsxRuntime.jsxs(ui$1.Flex,{direction:"column",gap:3,r:"lg",p:3,className:"oui-bg-base-6",width:"100%",children:[jsxRuntime.jsx("button",{onClick:e.onClickReferral,className:"oui-cursor-pointer oui-w-full",children:jsxRuntime.jsxs(ui$1.Flex,{justify:"between",width:"100%",children:[jsxRuntime.jsx(ui$1.Text,{size:"2xs",children:"Referral"}),jsxRuntime.jsx(ui$1.ArrowRightShortIcon,{color:"white",opacity:.98,size:16})]})}),e.isAffiliate&&jsxRuntime.jsxs(ui$1.Flex,{gradient:"primary",p:4,r:"lg",width:"100%",angle:180,justify:"between",children:[jsxRuntime.jsxs(ui$1.Flex,{direction:"column",itemAlign:"start",children:[jsxRuntime.jsx(ui$1.Text,{size:"xs",children:"Affiliate"}),jsxRuntime.jsx(ui$1.Text,{size:"2xs",intensity:54,children:"(30d commission)"})]}),jsxRuntime.jsxs(ui$1.Flex,{className:"oui-gap-[6px]",children:[jsxRuntime.jsx(At,{}),jsxRuntime.jsx(ui$1.Text.numeral,{dp:2,padding:!1,rm:utils.Decimal.ROUND_DOWN,rule:"price",children:e.affiliateCommission30D??"--"})]})]}),e.isTrader&&jsxRuntime.jsxs(ui$1.Flex,{gradient:"success",p:4,r:"lg",width:"100%",angle:180,justify:"between",children:[jsxRuntime.jsxs(ui$1.Flex,{direction:"column",itemAlign:"start",children:[jsxRuntime.jsx(ui$1.Text,{size:"xs",children:"Trader"}),jsxRuntime.jsx(ui$1.Text,{size:"2xs",intensity:54,children:"(30d commission)"})]}),jsxRuntime.jsxs(ui$1.Flex,{className:"oui-gap-[6px]",children:[jsxRuntime.jsx(At,{}),jsxRuntime.jsx(ui$1.Text.numeral,{dp:2,padding:!1,rm:utils.Decimal.ROUND_DOWN,rule:"price",children:e.traderCommission30D??"--"})]})]})]}),kc=e=>jsxRuntime.jsxs(ui$1.Flex,{direction:"column",gap:3,r:"lg",p:3,className:"oui-bg-base-6",width:"100%",children:[jsxRuntime.jsx("button",{onClick:e.onClickTradingRewards,className:"oui-cursor-pointer oui-w-full",children:jsxRuntime.jsxs(ui$1.Flex,{justify:"between",width:"100%",children:[jsxRuntime.jsxs("span",{className:"oui-text-2xs",children:["Trading rewards",jsxRuntime.jsx(ui$1.Text,{intensity:54,children:" (epoch "}),e.curEpochId,jsxRuntime.jsx(ui$1.Text,{intensity:54,children:" )"})]}),jsxRuntime.jsx(ui$1.ArrowRightShortIcon,{color:"white",opacity:.98,size:16})]})}),jsxRuntime.jsxs(ui$1.Flex,{p:4,r:"lg",width:"100%",angle:180,justify:"between",className:"oui-bg-gradient-to-t oui-from-[#2d0061] oui-to-[#bd6bed]",children:[jsxRuntime.jsx(ui$1.Text,{size:"2xs",intensity:80,children:"My est. rewards"}),jsxRuntime.jsxs(ui$1.Flex,{className:"oui-gap-[6px]",children:[jsxRuntime.jsx(Mn,{}),jsxRuntime.jsx(ui$1.Text.numeral,{dp:2,padding:!1,rm:utils.Decimal.ROUND_DOWN,rule:"price",children:e.estRewards})]})]})]});var Jo=e=>{let[t]=hooks.useLocalStorage("orderly_link_device",{}),{account:o,state:i}=hooks.useAccount(),r=o.accountId,n=o.address,{hide:a}=ui$1.useModal(),s=hooks.useConfig(),{connectedChain:l,disconnect:u,namespace:c}=hooks.useWalletConnector(),d=o.chainId||l?.id||t?.chainId,g=react.useMemo(()=>d?(i.status===types.AccountStatusEnum.EnableTrading||i.status===types.AccountStatusEnum.EnableTradingWithoutConnected)&&utils.isTestnet(parseInt(d)):!1,[i.status,d]),m=qc(d),b=s.get("operatorUrl"),p=()=>{navigator.clipboard.writeText(n??""),ui$1.toast.success("Copy success");},{affiliateCommission30D:y,traderCommission30D:w,isAffiliate:L,isTrader:C,onClickReferral:R}=Wc(e.onClickReferral),{curEpochId:W,estRewards:Ce,onClickTradingRewards:ie}=Vc(e.onClickTradingRewards),he=async()=>{localStorage.removeItem("orderly_link_device"),await u({label:i.connectWallet?.name}),await o.disconnect(),a();},[De,{isMutating:Le}]=hooks.useMutation(`${b}/v1/faucet/usdc`);return {accountId:r,address:n,chainId:d,chainName:m,onCopyAddress:p,affiliateCommission30D:y,onClickReferral:R,isAffiliate:L,isTrader:C,traderCommission30D:w,curEpochId:W,onClickTradingRewards:ie,estRewards:Ce,onDisconnect:he,showGetTestUSDC:g,onGetTestUSDC:()=>{if(i.status<types.AccountStatusEnum.EnableTrading&&i.status!==types.AccountStatusEnum.EnableTradingWithoutConnected)return;let D=`${c===types.ChainNamespace.solana?"100":"1,000"} USDC will be added to your balance. Please note this may take up to 3 minutes. Please check back later.`;return De({chain_id:d?.toString(),user_address:i.address,broker_id:s.get("brokerId")}).then(H=>{if(H.success)return ui$1.modal.alert({title:"Get test USDC",message:D,onOk:()=>Promise.resolve(!0)});H.message&&ui$1.toast.error(H.message);},H=>{ui$1.toast.error(H.message);})},gettingTestUSDC:Le}},Wc=e=>{let{data:t,isLoading:o,isAffiliate:i,isTrader:r}=hooks.useReferralInfo(),n=react.useMemo(()=>{if(i)return t?.referrer_info["30d_referrer_rebate"]},[t]),a=react.useMemo(()=>{if(r)return t?.referee_info["30d_referee_rebate"]},[t]);return {onClickReferral:()=>{e?.();},affiliateCommission30D:n,traderCommission30D:a,isAffiliate:i,isTrader:r}},Vc=e=>{let[t]=hooks.useCurEpochEstimate(hooks.TWType.normal),[o,i]=hooks.useEpochInfo(hooks.TWType.normal),r=react.useMemo(()=>i.curEpochInfo?.epoch_id??"--",[i]),n=react.useMemo(()=>typeof t?.est_r_wallet>"u"?"--":t?.est_r_wallet,[t]);return {curEpochId:r,estRewards:n,onClickTradingRewards:()=>{e?.();}}};function qc(e){let[t,{findByChainId:o}]=hooks.useChains("mainnet",{pick:"network_infos",filter:r=>r.network_infos?.bridge_enable||r.network_infos?.bridgeless});return react.useMemo(()=>{let r=o(parseInt(e),"network_infos");return r?r.name:"Unknown"},[e,o])}var jo=e=>{let t=Jo(e);return jsxRuntime.jsx(Yo,{...t})};var ei=()=>{let{referral:e,tradingRewards:t,bottomSheetLeading:o}=O(),{account:i,state:r}=hooks.useAccount();return {onShowAccountSheet:()=>{ui$1.modal.sheet({title:"Account",leading:o,content:jsxRuntime.jsx(jo,{...e,...t})});},address:i.address,status:r.status}};var ti=()=>{let e=ei();return jsxRuntime.jsx(Ko,{...e})};var ni=e=>jsxRuntime.jsxs(ui$1.Flex,{gap:3,children:[jsxRuntime.jsxs(ui$1.Flex,{direction:"column",itemAlign:"start",className:"oui-text-[11px] oui-cursor-pointer",onClick:t=>{e.onShowPortfolioSheet();},children:[jsxRuntime.jsxs(ui$1.Flex,{children:[jsxRuntime.jsx(ui$1.Text,{intensity:54,children:"Total value"}),jsxRuntime.jsx("button",{onClick:t=>{t.stopPropagation(),t.preventDefault(),e.setHideAssets(!e.hideAssets);},className:"oui-px-1",children:e.hideAssets?jsxRuntime.jsx(ui$1.EyeIcon,{color:"primary",opacity:1,size:16,className:"oui-text-primary-light"}):jsxRuntime.jsx(ui$1.EyeCloseIcon,{color:"primary",opacity:1,size:16,className:"oui-text-primary-light"})}),jsxRuntime.jsx(ed,{})]}),jsxRuntime.jsx(ui$1.Text.numeral,{suffix:jsxRuntime.jsx(ui$1.Text,{intensity:20,children:"\xA0USDC"}),dp:2,visible:!e.hideAssets,children:e.isEnableTrading?e.total??"--":"--"})]}),!e.wrongNetwork&&e.isEnableTrading&&jsxRuntime.jsx(ui$1.Divider,{direction:"vertical",className:"oui-h-[26px]"}),!e.wrongNetwork&&e.isEnableTrading&&jsxRuntime.jsx(ui$1.Button,{variant:"outlined",onClick:t=>{e.onShowPortfolioSheet();},className:"oui-h-[28px] oui-text-2xs oui-text-primary-light oui-border-primary-light",children:utils.commifyOptional(e.currentLeverage,{fix:2})+"x"})]}),ed=()=>jsxRuntime.jsx("svg",{width:"8",height:"8",viewBox:"0 0 8 8",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:jsxRuntime.jsx("path",{d:"M6.456 3.48a3.5 3.5 0 0 0 .431-.567 9 9 0 0 0 .361-.654l-.648-.66-.107.185q-.071.12-.142.244a3 3 0 0 1-.27.396 1.4 1.4 0 0 1-.318.29.67.67 0 0 1-.38.114q-.307 0-.666-.194t-.742-.42q-.383-.227-.777-.42a1.7 1.7 0 0 0-.771-.194q-.401.001-.72.154a2.1 2.1 0 0 0-.57.404 2.6 2.6 0 0 0-.43.574 5 5 0 0 0-.307.646l.649.66q.165-.437.464-.833.298-.395.742-.396.347 0 .7.194.354.193.721.42.37.227.763.42.396.195.826.195.374.001.665-.155.29-.151.526-.404m.352 2.941a3.5 3.5 0 0 0 .431-.566q.196-.315.361-.654l-.648-.66-.107.184-.142.244a3 3 0 0 1-.27.396 1.4 1.4 0 0 1-.318.29.67.67 0 0 1-.38.115q-.307 0-.666-.195-.36-.193-.742-.42-.383-.226-.778-.42a1.7 1.7 0 0 0-.77-.194q-.401.001-.72.154a2.1 2.1 0 0 0-.57.405 2.6 2.6 0 0 0-.43.574 5 5 0 0 0-.307.646l.649.66q.165-.437.464-.833.297-.395.742-.396.347 0 .7.194.354.193.721.42.369.226.763.42.396.194.826.194.374.001.665-.154.29-.152.526-.404",fill:"#fff",fillOpacity:".54"})});var ai=()=>{let{account:e}=hooks.useAccount(),t=sd(),o=ld(),i=hooks.useEventEmitter(),[r,n]=react.useState(!1),a=react.useCallback(async()=>e.settle().catch(u=>{if(u.code==-1104)return ui$1.toast.error("Settlement is only allowed once every 10 minutes. Please try again later."),Promise.reject(u);if(u.message.indexOf("Signing off chain messages with Ledger is not yet supported")!==-1)return i.emit("wallet:sign-message-with-ledger-error",{message:u.message,userAddress:e.address}),Promise.reject(u);if(u?.code==="ACTION_REJECTED")return ui$1.toast.error("User rejected the request."),Promise.reject(u)}).then(u=>(ui$1.toast.success("Settlement requested"),Promise.resolve(u))),[e]),s=react.useCallback(()=>{ui$1.modal.show(uiTransfer.DepositAndWithdrawWithSheetId,{activeTab:"deposit"});},[]),l=react.useCallback(()=>{ui$1.modal.show(uiTransfer.DepositAndWithdrawWithSheetId,{activeTab:"withdraw"});},[]);return {...t,...o,onSettlePnL:a,onDeposit:s,onWithdraw:l,showSliderTip:r,setShowSliderTip:n}},sd=()=>{let{hideAssets:e,setHideAssets:t}=E(),o=()=>{t(!e);},{totalCollateral:i,freeCollateral:r,totalValue:n,availableBalance:a}=hooks.useCollateral({dp:2});return {hideAssets:e,toggleHideAssets:o,totalCollateral:i,freeCollateral:r,totalValue:n,availableBalance:a}},ld=()=>{let[{aggregated:e,totalUnrealizedROI:t},o]=hooks.usePositionStream(),{marginRatio:i,currentLeverage:r,mmr:n}=hooks.useMarginRatio(),a=react.useMemo(()=>Math.min(10,e.notional===0?o.margin_ratio(10):i),[i,e]),[s,{update:l,config:u,isMutating:c}]=hooks.useLeverage(),d=react.useMemo(()=>u?.map(C=>({label:`${C}x`,value:C}))||[],[u]),[g,m]=react.useState(s??0),b=u?.reduce((C,R)=>Math.max(C,Number(R),0)),p=100/((d?.length||0)-1),y=C=>{m(C);},w=async C=>{try{l({leverage:C}).then(R=>{ui$1.toast.success("Leverage updated");},R=>{ui$1.toast.error(R.message);});}catch{}},L=react.useCallback(C=>{w(C[0]);},[]);return {aggregated:e,totalUnrealizedROI:t,positionsInfo:o,marginRatio:i,marginRatioVal:a,mmr:n,currentLeverage:r,step:p,marks:d,onLeverageChange:y,onValueCommit:L,value:g,maxLeverage:b,onSaveLeverage:w}};function Un(e,t){if(t===null)return {isRed:!1,isYellow:!1,isGreen:!0};let o=t*2,i=e<=o,r=e>o&&e<1,n=e>=1;return {high:i,mid:r,low:n}}var Qn=e=>{let{size:t=20,className:o}=e;return jsxRuntime.jsx("div",{className:"oui-flex oui-justify-center oui-items-end",style:{background:"url(/images/riskLevelBg.png)",backgroundSize:"contain",backgroundRepeat:"no-repeat",backgroundPosition:"center bottom",width:`${t}px`,height:"14px"},children:jsxRuntime.jsx("div",{className:ui$1.cn("oui-relative oui-w-[2px] oui-h-[2px] oui-rounded-full oui-bg-white after:oui-block after:oui-content-[''] after:oui-absolute after:oui-right-0 after:oui-w-[10px] after:oui-h-[2px] after:oui-bg-white/50",o)})})};var li=e=>jsxRuntime.jsxs(ui$1.Flex,{direction:"column",gap:4,width:"100%",children:[jsxRuntime.jsx(yd,{...e}),jsxRuntime.jsx(ui$1.Divider,{className:"oui-w-full"}),jsxRuntime.jsx(Sd,{...e}),jsxRuntime.jsx(Cd,{...e}),jsxRuntime.jsx(wd,{...e})]}),yd=e=>{let t=react.useCallback(()=>ui$1.modal.confirm({title:"Settle PnL",content:jsxRuntime.jsx(ui$1.Text,{intensity:54,size:"xs",children:"Are you sure you want to settle your PnL? Settlement will take up to 1 minute before you can withdraw your available balance."}),onCancel:()=>Promise.reject(),onOk:()=>typeof e.onSettlePnL!="function"?Promise.resolve():e.onSettlePnL().catch(i=>{})}),[]),o=e.totalUnrealizedROI>0?"oui-text-success-darken":"oui-text-danger-darken";return jsxRuntime.jsxs(ui$1.Flex,{direction:"column",gap:3,width:"100%",children:[jsxRuntime.jsxs(ui$1.Flex,{direction:"column",itemAlign:"start",width:"100%",children:[jsxRuntime.jsx(ui$1.Text.formatted,{size:"2xs",intensity:36,suffix:e.hideAssets?jsxRuntime.jsx(ui$1.EyeIcon,{opacity:1,size:16,className:"oui-text-primary-light"}):jsxRuntime.jsx(ui$1.EyeCloseIcon,{opacity:1,size:16,className:"oui-text-primary-light"}),onClick:i=>{e.toggleHideAssets();},className:"oui-cursor-pointer",children:"Total value (USDC)"}),jsxRuntime.jsx(ui$1.Text.numeral,{size:"base",dp:2,padding:!1,visible:!e.hideAssets,children:e.totalValue??"--"})]}),jsxRuntime.jsxs(ui$1.Grid,{cols:2,rows:1,width:"100%",children:[jsxRuntime.jsx(ui$1.Statistic,{label:"Unreal. PnL (USDC)",classNames:{label:"oui-text-2xs oui-text-base-contrast-36"},children:jsxRuntime.jsxs(ui$1.Flex,{gap:1,children:[jsxRuntime.jsx(ui$1.Text.numeral,{size:"xs",coloring:!0,dp:2,padding:!1,visible:!e.hideAssets,children:e.aggregated.unrealPnL}),!e.hideAssets&&jsxRuntime.jsx(ui$1.Text.numeral,{size:"xs",dp:2,padding:!1,rule:"percentages",prefix:"(",suffix:")",className:o,children:e.totalUnrealizedROI})]})}),jsxRuntime.jsx(ui$1.Statistic,{label:"Unsettled PnL (USDC)",classNames:{label:"oui-text-2xs oui-text-base-contrast-36"},children:jsxRuntime.jsxs(ui$1.Flex,{justify:"between",width:"100%",children:[jsxRuntime.jsx(ui$1.Text.numeral,{size:"xs",coloring:!0,dp:2,padding:!1,visible:!e.hideAssets,children:e.aggregated.unsettledPnL}),jsxRuntime.jsxs("button",{className:"oui-flex oui-gap-1 oui-items-center",onClick:t,children:[jsxRuntime.jsx(ui$1.RefreshIcon,{opacity:1,size:12,className:"oui-text-primary-light"}),jsxRuntime.jsx(ui$1.Text,{size:"2xs",color:"primary",children:"Settle PnL"})]})]})})]})]})},Sd=e=>{let{high:t,mid:o,low:i}=Un(e.marginRatioVal,e.mmr);return jsxRuntime.jsxs(ui$1.Grid,{cols:2,rows:1,width:"100%",children:[jsxRuntime.jsx(ui$1.Statistic,{label:"Margin Ratio",classNames:{label:"oui-text-2xs oui-text-base-contrast-36"},children:jsxRuntime.jsxs(ui$1.Flex,{gap:2,children:[jsxRuntime.jsx(ui$1.Text.numeral,{size:"xs",rule:"percentages",color:"primary",dp:2,padding:!1,visible:!e.hideAssets,children:e.marginRatioVal}),!e.hideAssets&&jsxRuntime.jsx(Qn,{className:i?"oui-rotate-0":o?"oui-rotate-90":t?"oui-rotate-180":""})]})}),jsxRuntime.jsx(ui$1.Statistic,{label:"Free / Total Collateral (USDC)",classNames:{label:"oui-text-2xs oui-text-base-contrast-36"},children:jsxRuntime.jsxs(ui$1.Flex,{justify:"start",width:"100%",gap:1,children:[jsxRuntime.jsx(ui$1.Text.numeral,{size:"xs",dp:2,padding:!1,visible:!e.hideAssets,children:e.freeCollateral}),jsxRuntime.jsx(ui$1.Text,{size:"xs",children:"/"}),jsxRuntime.jsx(ui$1.Text.numeral,{size:"xs",dp:2,padding:!1,visible:!e.hideAssets,children:e.totalCollateral})]})})]})},Cd=e=>jsxRuntime.jsxs(ui$1.Flex,{direction:"column",gap:2,width:"100%",children:[jsxRuntime.jsxs(ui$1.Flex,{width:"100%",justify:"between",children:[jsxRuntime.jsx(ui$1.Text,{size:"2xs",intensity:54,children:"Max account leverage"}),jsxRuntime.jsx(ui$1.Text.numeral,{size:"2xs",prefix:jsxRuntime.jsx(ui$1.Text,{size:"2xs",intensity:54,children:"Current: "}),suffix:"x",children:e.currentLeverage??"--"})]}),jsxRuntime.jsx(uiLeverage.LeverageSlider,{value:e.value,maxLeverage:e.maxLeverage,onLeverageChange:e.onLeverageChange,setShowSliderTip:e.setShowSliderTip,showSliderTip:e.showSliderTip,onValueCommit:e.onValueCommit})]});var wd=e=>jsxRuntime.jsxs(ui$1.Grid,{cols:2,rows:1,gap:3,className:"oui-grid-row-[1fr,1fr]",width:"100%",pt:2,pb:4,children:[jsxRuntime.jsx(ui$1.Button,{icon:jsxRuntime.jsx(ui$1.ArrowUpShortIcon,{color:"white",opacity:.8}),size:"md",fullWidth:!0,className:"oui-bg-base-2 hover:oui-bg-base-2/50",onClick:e.onWithdraw,children:"Withdraw"}),jsxRuntime.jsx(ui$1.Button,{icon:jsxRuntime.jsx(ui$1.ArrowDownShortIcon,{color:"white",opacity:.8}),size:"md",fullWidth:!0,onClick:e.onDeposit,children:"Deposit"})]});var ui=()=>{let e=ai();return jsxRuntime.jsx(li,{...e})};var ci=()=>{let{bottomSheetLeading:e}=O(),{hideAssets:t,setHideAssets:o}=E(),{wrongNetwork:i}=reactApp.useAppContext(),{state:r}=hooks.useAccount(),{currentLeverage:n}=hooks.useMarginRatio(),{totalValue:a}=hooks.useCollateral(),s=r.status>=types.AccountStatusEnum.EnableTrading||r.status===types.AccountStatusEnum.EnableTradingWithoutConnected,l=()=>{s&&ui$1.modal.sheet({title:"Asset & Margin",leading:e,content:jsxRuntime.jsx(ui,{})});},u=reactApp.useDataTap(a);return {currentLeverage:n,total:u,hideAssets:t,setHideAssets:o,onShowPortfolioSheet:l,wrongNetwork:i,isEnableTrading:s}};var di=()=>{let e=ci();return jsxRuntime.jsx(ni,{...e})};function mi(){let[e,t]=react.useState(!1),[o,i]=hooks.useLocalStorage("orderly_qr_code_scan_tooltip_open",!0),r=()=>{t(!0);},n=()=>{t(!1);},a=s=>{Id(s)&&(window.location.href=s);};return react.useEffect(()=>{o&&setTimeout(()=>{i(!1);},8e3);},[o]),{open:e,onOpenChange:t,showDialog:r,hideDialog:n,onScanSuccess:a,showScanTooltip:o}}function Id(e){try{let t=new URL(e);return ["http:","https:"].includes(t.protocol)}catch{return !1}}var _t=320,zt=320,Ht=2,Zn=e=>{let t=react.useRef(null),o=react.useRef(null),i=()=>{let r=t.current,n=o.current;if(!r||!n)return;let a=n.getContext("2d");if(r.readyState===r.HAVE_ENOUGH_DATA){let s=r.videoWidth,l=r.videoHeight,u=n.width/n.height,c=s/l,d,g,m,b;c>u?(b=l,m=l*u,d=(s-m)/2,g=0):(m=s,b=s/u,d=0,g=(l-b)/2),a.drawImage(r,d,g,m,b,0,0,n.width,n.height);let p=a.getImageData(0,0,n.width,n.height),y=_d__default.default(p.data,p.width,p.height,{inversionAttempts:"dontInvert"});y?.data&&e.onSuccess?.(y.data);}requestAnimationFrame(i);};return react.useEffect(()=>{let r=t.current;if(!(!open||!r))return navigator?.mediaDevices.getUserMedia({video:{facingMode:"environment",width:{ideal:_t*Ht},height:{ideal:zt*Ht}}}).then(n=>{r.srcObject=n,r.setAttribute("playsinline","true"),r.play(),r.onloadeddata=()=>{requestAnimationFrame(i);};}).catch(n=>{}),()=>{let n=r.srcObject;n&&n.getTracks().forEach(s=>s.stop()),r.srcObject=null;}},[t,o]),jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx("video",{ref:t,width:_t,height:zt,className:"oui-bg-base-10 oui-rounded-2xl oui-hidden"}),jsxRuntime.jsx("canvas",{ref:o,width:_t*Ht,height:zt*Ht,style:{width:_t,height:zt},className:"oui-bg-base-10 oui-rounded-2xl"})]})};var gi=e=>jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(ui$1.Tooltip,{open:e.showScanTooltip,content:"Link to Desktop via QR Code",className:"oui-bg-base-6 oui-text-warning-darken oui-text-2xs oui-font-semibold",arrow:{className:"!oui-fill-base-6"},children:jsxRuntime.jsx(ui$1.Flex,{className:"oui-rounded-md oui-bg-base-5 oui-px-[6px] oui-h-7 oui-cursor-pointer",onClick:e.showDialog,children:jsxRuntime.jsx(Ud,{className:"oui-text-base-contrast-80"})})}),jsxRuntime.jsx(ui$1.SimpleDialog,{title:jsxRuntime.jsx(ui$1.Text,{weight:"semibold",children:"Confirm"}),open:e.open,onOpenChange:e.onOpenChange,size:"sm",children:jsxRuntime.jsx(qd,{...e})})]}),qd=e=>jsxRuntime.jsxs(ui$1.Flex,{justify:"center",direction:"column",gapY:5,children:[jsxRuntime.jsx(uiScaffold.MainLogo,{}),jsxRuntime.jsx(Zn,{onSuccess:e.onScanSuccess}),jsxRuntime.jsx(ui$1.Text,{size:"sm",intensity:98,weight:"semibold",children:"Scan QR Code"}),jsxRuntime.jsxs("span",{className:"oui-px-3 oui-text-center",children:[jsxRuntime.jsx(ui$1.Text,{size:"2xs",intensity:54,children:"Click the"}),jsxRuntime.jsx(Gd,{className:"oui-inline-block oui-text-base-contrast-80 oui-mx-1"}),jsxRuntime.jsx(ui$1.Text,{size:"2xs",intensity:54,weight:"regular",className:"oui-break-words",children:"icon in the top right corner on desktop to generate a QR code to scan."})]})]}),Ud=e=>jsxRuntime.jsx("svg",{width:"18",height:"18",viewBox:"0 0 18 18",fill:"currentColor",xmlns:"http://www.w3.org/2000/svg",...e,children:jsxRuntime.jsx("path",{d:"M5.249 2.243a3 3 0 0 0-3 3v.75a.75.75 0 0 0 1.5 0v-.75a1.5 1.5 0 0 1 1.5-1.5h2.25a.75.75 0 0 0 0-1.5zm5.25 0a.75.75 0 0 0 0 1.5h2.25a1.5 1.5 0 0 1 1.5 1.5v.75a.75.75 0 0 0 1.5 0v-.75a3 3 0 0 0-3-3zm-7.5 9a.75.75 0 0 0-.75.75v.75a3 3 0 0 0 3 3h2.25a.75.75 0 0 0 0-1.5h-2.25a1.5 1.5 0 0 1-1.5-1.5v-.75a.75.75 0 0 0-.75-.75m12 0a.75.75 0 0 0-.75.75v.75a1.5 1.5 0 0 1-1.5 1.5h-2.25a.75.75 0 0 0 0 1.5h2.25a3 3 0 0 0 3-3v-.75a.75.75 0 0 0-.75-.75M5.25 8.999a.75.75 0 0 1 .75-.75h6a.75.75 0 0 1 0 1.5H6a.75.75 0 0 1-.75-.75"})}),Gd=e=>{let{size:t=20,viewBox:o,...i}=e;return jsxRuntime.jsxs("svg",{width:t,height:t,viewBox:"0 0 20 20",fill:"currentColor",xmlns:"http://www.w3.org/2000/svg",...i,children:[jsxRuntime.jsx("path",{d:"M19.167 7.583a1.74 1.74 0 0 0-1.731-1.75h-4.038a1.74 1.74 0 0 0-1.731 1.75v8.167c0 .967.775 1.75 1.73 1.75h4.039a1.74 1.74 0 0 0 1.73-1.75zm-1.154 0v7.584H12.82V7.583A.58.58 0 0 1 13.398 7h4.038a.58.58 0 0 1 .577.583m-2.02 8.75a.58.58 0 0 1-.576.584.58.58 0 0 1-.577-.584.58.58 0 0 1 .577-.583.58.58 0 0 1 .577.583"}),jsxRuntime.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M1.666 5a2.5 2.5 0 0 1 2.5-2.5h10a2.5 2.5 0 0 1 2.5 2.5.08.08 0 0 1-.078.078h-1.51a.08.08 0 0 1-.08-.078.834.834 0 0 0-.833-.833h-10A.834.834 0 0 0 3.333 5v5.633c0 .11.09.2.2.2h7.1c.11 0 .2.09.2.2V12.3a.2.2 0 0 1-.2.2H2.7a.2.2 0 0 0-.2.2v.633c0 .511.308.834.834.834h7.3c.11 0 .2.09.2.2v1.266a.2.2 0 0 1-.2.2h-7.3c-1.465 0-2.5-1.086-2.5-2.5v-1.666c0-.392.27-.72.635-.81.107-.026.198-.113.198-.224z"})]})};var fi=()=>{let e=mi();return jsxRuntime.jsx(gi,{...e})};var bi=e=>{let t=()=>e.wrongNetwork?null:e.status===types.AccountStatusEnum.EnableTradingWithoutConnected?jsxRuntime.jsx(Zd,{onDisconnect:e.onDisconnect}):jsxRuntime.jsx($o,{});return jsxRuntime.jsxs("div",{className:"oui-bg-base-9 oui-border-t oui-border-line-4",children:[jsxRuntime.jsxs(ui$1.Flex,{height:64,gap:1,justify:"between",itemAlign:"center",className:" oui-px-[14px] oui-pt-[7px]",children:[jsxRuntime.jsx(di,{}),jsxRuntime.jsxs(ui$1.Flex,{gap:2,children:[e.status!==types.AccountStatusEnum.EnableTradingWithoutConnected&&e.status<types.AccountStatusEnum.EnableTrading&&jsxRuntime.jsx(fi,{}),t(),jsxRuntime.jsx(ti,{})]})]}),jsxRuntime.jsx("div",{className:"oui-h-[env(safe-area-inset-bottom)]"})]})},Zd=e=>{let[t,o]=react.useState(!1),i=()=>{o(!0);},r=()=>{o(!1);};return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(ui$1.SimpleDialog,{open:t,onOpenChange:o,title:"Tips",size:"xs",actions:{secondary:{label:"Cancel",onClick:r,size:"md",fullWidth:!0},primary:{label:"Disconnect",onClick:async()=>{await e.onDisconnect(),r();},size:"md",variant:"outlined",color:"danger"}},children:jsxRuntime.jsx(ui$1.Text,{intensity:54,size:"sm",children:"You are connected via another device. This mode is for trading only. To switch networks, deposit or withdraw assets, please disconnect and reconnect your wallet on this device."})}),jsxRuntime.jsxs(ui$1.Flex,{className:"oui-text-base-contrast oui-px-[6px]",intensity:500,height:28,r:"md",onClick:i,children:[jsxRuntime.jsx(Jd,{}),jsxRuntime.jsx(jn,{}),jsxRuntime.jsx(em,{}),jsxRuntime.jsx(jn,{}),jsxRuntime.jsx(jd,{})]})]})},jn=()=>jsxRuntime.jsxs(ui$1.Flex,{className:"oui-gap-x-[1px] oui-px-[1px]",children:[jsxRuntime.jsx(hi,{}),jsxRuntime.jsx(hi,{}),jsxRuntime.jsx(hi,{})]}),Jd=e=>jsxRuntime.jsx("svg",{width:"18",height:"18",viewBox:"0 0 18 18",fill:"currentColor",xmlns:"http://www.w3.org/2000/svg",...e,children:jsxRuntime.jsx("path",{d:"M4.5 2.93a2.25 2.25 0 0 0-2.25 2.25v5.25a.75.75 0 0 0-.75.75v1.5c0 1.272.93 2.25 2.25 2.25h10.5c1.318 0 2.25-.978 2.25-2.25v-1.5a.75.75 0 0 0-.75-.75V5.18a2.25 2.25 0 0 0-2.25-2.25zm0 1.5h9a.75.75 0 0 1 .75.75v5.25H3.75V5.18a.75.75 0 0 1 .75-.75M3 11.93h12v.75c0 .46-.277.75-.75.75H3.75c-.474 0-.75-.29-.75-.75z"})}),jd=e=>jsxRuntime.jsx("svg",{width:"18",height:"18",viewBox:"0 0 18 18",fill:"currentColor",xmlns:"http://www.w3.org/2000/svg",...e,children:jsxRuntime.jsx("path",{d:"M13.498 3.715a2.25 2.25 0 0 0-2.25-2.25h-4.5a2.25 2.25 0 0 0-2.25 2.25v10.5a2.25 2.25 0 0 0 2.25 2.25h4.5a2.25 2.25 0 0 0 2.25-2.25zm-1.5 0v9.75h-6v-9.75a.75.75 0 0 1 .75-.75h4.5a.75.75 0 0 1 .75.75m-2.25 11.25a.75.75 0 1 1-1.5 0 .75.75 0 0 1 1.5 0"})}),em=e=>jsxRuntime.jsxs("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[jsxRuntime.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M1.007 6a5 5 0 1 1 10 0 5 5 0 0 1-10 0m7.486-2.344A.6.6 0 0 1 8.91 3.5c.15 0 .305.048.418.156a.55.55 0 0 1 0 .798L5.254 8.337a.62.62 0 0 1-.837 0L2.67 6.673a.55.55 0 0 1 0-.798.62.62 0 0 1 .837 0l1.329 1.266z",fill:"url(#a)"}),jsxRuntime.jsx("defs",{children:jsxRuntime.jsxs("linearGradient",{id:"a",x1:"11.007",y1:"5.999",x2:"1.007",y2:"5.999",gradientUnits:"userSpaceOnUse",children:[jsxRuntime.jsx("stop",{stopColor:"rgb(var(--oui-gradient-brand-end))"}),jsxRuntime.jsx("stop",{offset:"1",stopColor:"rgb(var(--oui-gradient-brand-start))"})]})})]}),hi=e=>jsxRuntime.jsxs("svg",{width:"2",height:"2",viewBox:"0 0 2 2",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[jsxRuntime.jsx("path",{d:"M.667.334a.667.667 0 1 1 0 1.333.667.667 0 0 1 0-1.333",fill:"url(#a)"}),jsxRuntime.jsx("defs",{children:jsxRuntime.jsxs("linearGradient",{id:"a",x1:"1.333",y1:"1.001",x2:"0",y2:"1.001",gradientUnits:"userSpaceOnUse",children:[jsxRuntime.jsx("stop",{stopColor:"rgb(var(--oui-gradient-brand-end))"}),jsxRuntime.jsx("stop",{offset:"1",stopColor:"rgb(var(--oui-gradient-brand-start))"})]})})]});var xi=()=>{let{wrongNetwork:e}=reactApp.useAppContext(),{account:t,state:o}=hooks.useAccount(),i=async()=>{localStorage.removeItem("orderly_link_device"),await t.disconnect();};return {wrongNetwork:e,status:o.status,onDisconnect:i}};var yi=()=>{let e=xi();return jsxRuntime.jsx(bi,{...e})};var Si=()=>{let[e,t]=react.useState("chart"),{symbol:o}=O(),[i,r]=react.useState(!0);return {tab:e,setTab:t,symbol:o,toggleContentVisible:()=>{r(a=>!a);},setVisible:r,visible:i}};var ta=e=>jsxRuntime.jsx(Fe,{symbol:e.symbol,classNames:{root:"oui-px-3 ",list:"oui-min-h-[141px] oui-max-h-[202px] oui-w-full",listHeader:"oui-text-xs oui-text-base-contrast-36",listItem:{left:"oui-text-xs",mid:"oui-text-xs",right:"oui-text-xs"}}});var Pi=e=>jsxRuntime.jsxs(ui$1.Flex,{direction:"column",gap:2,children:[jsxRuntime.jsx(ze,{title:"Mark price",value:e.ticker?.mark_price,dp:e.symbolInfo.quote_dp}),jsxRuntime.jsx(ze,{title:"Index price",value:e.ticker?.index_price,dp:e.symbolInfo.quote_dp}),jsxRuntime.jsx(ze,{title:"24h volume",value:e.vol_24h,dp:e.symbolInfo.quote_dp,rule:"human",showUSDC:!0}),jsxRuntime.jsx(ze,{title:"24h high",value:e.ticker?.["24h_high"],dp:e.symbolInfo.quote_dp}),jsxRuntime.jsx(ze,{title:"24h low",value:e.ticker?.["24h_low"],dp:e.symbolInfo.quote_dp}),jsxRuntime.jsx(ze,{title:"Open interest",value:e.openInterest,dp:e.symbolInfo.quote_dp,rule:"human",showUSDC:!0})]}),ze=e=>{let{title:t,value:o,showUSDC:i,dp:r,rule:n="price"}=e;return jsxRuntime.jsxs(ui$1.Flex,{justify:"between",width:"100%",className:"oui-text-xs",children:[jsxRuntime.jsx(ui$1.Text,{intensity:36,children:t}),jsxRuntime.jsxs(ui$1.Flex,{gap:1,children:[jsxRuntime.jsx(ui$1.Text.numeral,{rule:n,dp:r,intensity:80,children:o}),i&&jsxRuntime.jsx(ui$1.Text,{intensity:36,children:"USDC"})]})]})};var Ti=e=>{let{symbol:t}=e,o=hooks.useTickerStream(t),{symbolInfo:i}=O(),r=react.useMemo(()=>{let a=o?.["24h_close"],s=o?.["24h_volume"];if(a&&s&&!isNaN(a)&&!isNaN(s))return new utils.Decimal(a).mul(s).toFixed(i.quote_dp,utils.Decimal.ROUND_DOWN)},[o]),n=react.useMemo(()=>{let a=o?.mark_price,s=o?.open_interest;if(a&&s&&!isNaN(a))return new utils.Decimal(a).mul(Number(s)).toFixed(i.quote_dp,utils.Decimal.ROUND_DOWN)},[o]);return {ticker:o,symbolInfo:i,vol_24h:r,openInterest:n}};var Ni=e=>{let t=Ti(e);return jsxRuntime.jsx(Pi,{...t})};var ia=e=>jsxRuntime.jsx("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"currentColor",xmlns:"http://www.w3.org/2000/svg",...e,children:jsxRuntime.jsx("g",{id:"Arrows-expand",children:jsxRuntime.jsx("path",{id:"Vector",d:"M5.9989 1.00708C5.8709 1.00708 5.7369 1.05008 5.6394 1.14758L3.7959 3.00708L4.4989 3.71008L5.4989 2.72607V4.50708C5.4989 4.78308 5.7229 5.00708 5.9989 5.00708C6.2749 5.00708 6.4989 4.78308 6.4989 4.50708V2.72607L7.4989 3.71008L8.2019 3.00708L6.3584 1.14758C6.2604 1.05008 6.1269 1.00708 5.9989 1.00708ZM5.9989 7.00707C5.7229 7.00707 5.4989 7.23107 5.4989 7.50707V9.28808L4.4989 8.30407L3.7959 9.00707L5.6394 10.8666C5.8349 11.0616 6.1629 11.0616 6.3584 10.8666L8.2019 9.00707L7.4989 8.30407L6.4989 9.28808V7.50707C6.4989 7.23107 6.2749 7.00707 5.9989 7.00707Z"})})});function na(e){return jsxRuntime.jsxs("div",{className:"oui-pb-1 oui-flex oui-flex-col oui-gap-1",style:{height:e.height},ref:e.boxRef,children:[jsxRuntime.jsx("div",{className:"oui-w-full oui-h-full",children:jsxRuntime.jsx(uiTradingview.TradingviewWidget,{symbol:e.symbol,libraryPath:e.tradingViewConfig?.library_path,mode:3,scriptSRC:e.tradingViewConfig?.scriptSRC,customCssUrl:e.tradingViewConfig?.customCssUrl})}),jsxRuntime.jsx("div",{className:"oui-relative oui-w-full",children:jsxRuntime.jsx("div",{ref:e.dragRef,className:ui$1.cn("oui-h-[1px] oui-absolute oui-left-0 oui-right-0 oui-bottom-0 oui-top-0 oui-z-10 oui-mt-[7px] oui-bg-base-contrast-12",e.dragging&&"oui-bg-primary "),children:jsxRuntime.jsx(ia,{className:ui$1.cn("oui-w-3 oui-h-3 oui-absolute oui-left-1/2 -oui-top-[5px] -oui-translate-y-[0.5px] oui-text-base-contrast-12",e.dragging&&" oui-text-primary")})})})]})}var dm=354,la=234,mm="TRADINGVIEW_MOBILE_HEIGHT";function ua(e){let[t,o]=hooks.useLocalStorage(mm,la),[i,r]=react.useState(!1),n=react.useRef(null),a=react.useRef(null),[s,l]=react.useState(0),u=react.useRef(0),c=react.useCallback(m=>{if(!a.current)return;r(!0);let b=m.touches[0],p=a.current.getBoundingClientRect();m.stopPropagation(),m.preventDefault();let y=b.clientY-p.bottom;u.current=p.top,l(y);},[]),d=react.useCallback(m=>{if(a.current&&i){m.stopPropagation(),m.preventDefault();let p=m.touches[0].clientY-u.current-s;return o(Math.min(Math.max(Math.round(p),la),dm)),!1}},[i,s]),g=react.useCallback(()=>{r(!1);},[]);return react.useEffect(()=>{let m=n.current;if(m)return m.addEventListener("touchstart",c),()=>{m.removeEventListener("touchstart",c);}},[c]),react.useEffect(()=>(document.addEventListener("touchmove",d,{passive:!1}),document.addEventListener("touchend",g),()=>{document.removeEventListener("touchmove",d),document.removeEventListener("touchend",g);}),[i,d,g]),{...e,height:t,dragging:i,dragRef:n,boxRef:a}}function ca(e){let t=ua(e);return jsxRuntime.jsx(na,{...t})}var Bi=e=>{let{tradingViewConfig:t}=O();return jsxRuntime.jsxs(ui$1.Tabs,{variant:"contained",value:e.tab,contentVisible:e.visible,onValueChange:o=>{e.setTab(o),e.setVisible(!0);},className:e.className,classNames:{tabsList:"oui-p-2",tabsContent:"oui-min-h-[176px] oui-max-h-[396px]"},style:{marginBottom:e.tab==="chart"?"8px":0},trailing:jsxRuntime.jsx("button",{className:"oui-px-5",onClick:e.toggleContentVisible,children:jsxRuntime.jsx(bm,{className:e.visible?"oui-rotate-0":"oui-rotate-180"})}),children:[jsxRuntime.jsx(ui$1.TabPanel,{title:"Chart",value:"chart",children:jsxRuntime.jsx(ca,{symbol:e.symbol,tradingViewConfig:t})}),jsxRuntime.jsx(ui$1.TabPanel,{title:"Trades",value:"trades",children:jsxRuntime.jsx(ta,{symbol:e.symbol})}),jsxRuntime.jsx(ui$1.TabPanel,{title:"Data",value:"data",children:jsxRuntime.jsx(ui$1.Box,{px:3,children:jsxRuntime.jsx(Ni,{symbol:e.symbol})})})]})},bm=e=>jsxRuntime.jsxs("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"currentColor",xmlns:"http://www.w3.org/2000/svg",className:ui$1.cn("oui-fill-base-contrast-54 hover:oui-fill-base-contrast-80",e.className),children:[jsxRuntime.jsx("path",{d:"M5.721 4.585 2.726 6.578a.51.51 0 0 0-.14.7.51.51 0 0 0 .702.14l2.714-1.806 2.715 1.806c.23.153.549.089.702-.14a.51.51 0 0 0-.14-.7L6.283 4.585a.51.51 0 0 0-.562 0"}),jsxRuntime.jsx("defs",{})]});var Oi=e=>{let t=Si();return jsxRuntime.jsx(Bi,{className:e.className,...t})};var Ai=e=>{let[t,o]=react.useState(0),i=react.useRef(null);return react.useEffect(()=>{let r=i.current;if(!r)return;let n=new ResizeObserver(a=>{for(let s of a)o(s.contentRect.height);});return n.observe(r),()=>{n.unobserve(r);}},[]),jsxRuntime.jsxs("div",{className:ui$1.cn("oui-grid oui-grid-cols-[4fr,6fr] oui-gap-1 oui-mx-1 ",e.className),children:[jsxRuntime.jsx("div",{className:"oui-bg-base-9 oui-rounded-xl",style:{height:`${t+16}px`},children:jsxRuntime.jsx(Re,{symbol:e.symbol,height:t?t-44:void 0})}),jsxRuntime.jsx("div",{className:"oui-bg-base-9 oui-rounded-xl oui-p-2",children:jsxRuntime.jsx(uiOrderEntry.OrderEntryWidget,{symbol:e.symbol,containerRef:i})})]})};var Ri=()=>{let{symbol:e}=O();return {symbol:e}};var Ii=e=>{let t=Ri();return jsxRuntime.jsx(Ai,{className:e.className,...t})};var ma=()=>{let{appIcons:e}=reactApp.useAppConfig(),{secondary:t}=e||{};return t?.img?jsxRuntime.jsx("img",{src:t?.img,className:"oui-w-5 oui-h-5"}):t?.component?t.component:null};var Mi=e=>{let{symbol:t,sharePnLConfig:o}=e,[i,r]=react.useState("Position"),[n,a]=react.useState("Position history"),{onSymbolChange:s}=O(),l=E(),[u,{cancelAllOrders:c,cancelAllTPSLOrders:d}]=hooks.useOrderStream({}),{positionCount:g}=Ve(t),{pendingOrderCount:m,tpSlOrderCount:b}=qe(t);return {tab:i,setTab:r,subTab:n,setSubTab:a,sharePnLConfig:o,symbol:t,positionCount:g,pendingOrderCount:m,tpSlOrderCount:b,...l,onCloseAll:y=>{let w=y===uiOrders.TabType.pending?"Cancel all pending orders":y===uiOrders.TabType.tp_sl?"Cancel all TP/SL orders":"",L=y===uiOrders.TabType.pending?"Are you sure you want to cancel all of your pending orders?":y===uiOrders.TabType.tp_sl?"Are you sure you want to cancel all of your TP/SL orders?":"";ui$1.modal.confirm({title:w,content:jsxRuntime.jsx(ui$1.Text,{size:"2xs",children:L}),onOk:async()=>{try{return i==="TP/SL"?await d():await c(),Promise.resolve(!0)}catch(C){return C?.message!==void 0&&toast.error(C.message),Promise.resolve(!1)}finally{Promise.resolve();}}});},onSymbolChange:s}};var zi=e=>jsxRuntime.jsxs(ui$1.Tabs,{value:e.tab,onValueChange:t=>e.setTab(t),size:"lg",className:e.className,classNames:{tabsList:"oui-bg-base-9 oui-rounded-t-xl oui-p-2 oui-overflow-x-scroll oui-hide-scrollbar"},children:[jsxRuntime.jsx(ui$1.TabPanel,{title:(e.positionCount??0)>0?`Position(${e.positionCount})`:"Position",value:"Position",children:jsxRuntime.jsx(Em,{...e})}),jsxRuntime.jsx(ui$1.TabPanel,{title:(e.pendingOrderCount??0)>0?`Pending(${e.pendingOrderCount})`:"Pending",value:"Pending",children:jsxRuntime.jsx(_i,{type:uiOrders.TabType.pending,ordersStatus:types.OrderStatus.INCOMPLETE,...e})}),jsxRuntime.jsx(ui$1.TabPanel,{title:(e.tpSlOrderCount??0)>0?`TP/SL(${e.tpSlOrderCount})`:"TP/SL",value:"TP/SL",children:jsxRuntime.jsx(_i,{type:uiOrders.TabType.tp_sl,ordersStatus:types.OrderStatus.INCOMPLETE,...e})}),jsxRuntime.jsx(ui$1.TabPanel,{title:"History",value:"History",children:jsxRuntime.jsx(Vm,{...e})}),jsxRuntime.jsx(ui$1.TabPanel,{title:"Liquidation",value:"Liquidation",children:jsxRuntime.jsx(uiPositions.MobileLiquidationWidget,{enableLoadMore:!0,symbol:e.showAllSymbol?void 0:e.symbol,classNames:{cell:"oui-p-2 oui-bg-base-9 oui-rounded-xl"}})})]}),Em=e=>jsxRuntime.jsxs(ui$1.Flex,{direction:"column",gap:2,children:[jsxRuntime.jsx($e,{pnlNotionalDecimalPrecision:e.pnlNotionalDecimalPrecision,symbol:e.showAllSymbol?void 0:e.symbol,unPnlPriceBasis:e.unPnlPriceBasis}),jsxRuntime.jsx(uiPositions.MobilePositionsWidget,{symbol:e.showAllSymbol?void 0:e.symbol,onSymbolChange:e.onSymbolChange,sharePnLConfig:e.sharePnLConfig,pnlNotionalDecimalPrecision:e.pnlNotionalDecimalPrecision})]}),_i=e=>jsxRuntime.jsxs(ui$1.Flex,{direction:"column",pb:2,width:"100%",children:[jsxRuntime.jsx(ui$1.Divider,{className:"oui-w-full"}),e.type!==uiOrders.TabType.orderHistory&&jsxRuntime.jsx(Wm,{...e}),jsxRuntime.jsx(uiOrders.MobileOrderListWidget,{symbol:e.showAllSymbol?void 0:e.symbol,onSymbolChange:e.onSymbolChange,type:e.type,ordersStatus:e.ordersStatus,classNames:{root:"oui-w-full oui-hide-scrollbar oui-overflow-y-hidden",content:"!oui-space-y-1",cell:"oui-py-2 oui-bg-base-9 oui-p-2 oui-rounded-xl"},sharePnLConfig:e.sharePnLConfig,showFilter:e.type===uiOrders.TabType.orderHistory,filterConfig:{range:{from:void 0,to:void 0}}})]}),Wm=e=>jsxRuntime.jsxs(ui$1.Flex,{px:2,py:2,width:"100%",justify:"between",gap:2,className:"oui-rounded-b-xl oui-bg-base-9",children:[jsxRuntime.jsxs(ui$1.Flex,{className:"oui-gap-[2px] oui-cursor-pointer",children:[jsxRuntime.jsx(ui$1.Checkbox,{color:"white",checked:!e.showAllSymbol,onCheckedChange:t=>{e.setShowAllSymbol(!t);}}),jsxRuntime.jsx(ui$1.Text,{size:"2xs",intensity:54,onClick:()=>{e.setShowAllSymbol(!e.showAllSymbol);},children:"Hide other symbols"})]}),jsxRuntime.jsx(ui$1.Button,{variant:"outlined",size:"xs",color:"secondary",onClick:t=>{e.onCloseAll(e.type);},children:"Close All"})]}),Vm=e=>jsxRuntime.jsx("div",{className:"oui-min-h-[300px]",children:jsxRuntime.jsxs(ui$1.Tabs,{value:e.subTab,onValueChange:t=>e.setSubTab(t),size:"md",classNames:{tabsList:"oui-bg-base-9 oui-rounded-t-xl oui-p-2"},children:[jsxRuntime.jsx(ui$1.TabPanel,{title:"Position history",value:"Position history",children:jsxRuntime.jsx(uiPositions.MobilePositionHistoryWidget,{symbol:e.showAllSymbol?void 0:e.symbol,onSymbolChange:e.onSymbolChange,classNames:{cell:"oui-p-2 oui-bg-base-9 oui-rounded-xl"}})}),jsxRuntime.jsx(ui$1.TabPanel,{title:"Order history",value:"Order history",children:jsxRuntime.jsx(_i,{type:uiOrders.TabType.orderHistory,...e})})]})});var Hi=e=>{let t=Mi(e);return jsxRuntime.jsx(zi,{...t,className:e.className})};var ha=e=>{let t=()=>{e.onOpenMarketsSheetChange(!0);},o=jsxRuntime.jsxs(ui$1.Box,{intensity:900,px:3,height:54,children:[jsxRuntime.jsx(markets.SymbolInfoBarWidget,{symbol:e.symbol,trailing:jsxRuntime.jsx(ma,{}),onSymbol:t}),jsxRuntime.jsx(ui$1.SimpleSheet,{open:e.openMarketsSheet,onOpenChange:e.onOpenMarketsSheetChange,classNames:{body:"oui-h-full oui-pb-[env(safe-area-inset-bottom)]",content:"oui-w-[280px] !oui-p-0 oui-rounded-bl-[40px] oui-h-full "},contentProps:{side:"left",closeable:!1},children:jsxRuntime.jsx(markets.MarketsSheetWidget,{symbol:e.symbol,onSymbolChange:i=>{e.onOpenMarketsSheetChange(!1),e.onSymbolChange?.(i);}})})]});return jsxRuntime.jsxs("div",{style:{paddingBottom:"calc(64px + env(safe-area-inset-bottom))"},className:"oui-grid oui-grid-rows-[auto,1fr,auto] oui-h-screen oui-gap-1 oui-relative oui-bg-base-10",children:[jsxRuntime.jsx("header",{children:o}),jsxRuntime.jsx("div",{children:jsxRuntime.jsx(uiScaffold.MaintenanceTipsWidget,{})}),jsxRuntime.jsxs("main",{className:"oui-overflow-y-auto oui-hide-scrollbar oui-space-y-1",children:[jsxRuntime.jsx(Oi,{className:"oui-mx-1 oui-bg-base-9 oui-rounded-xl"}),jsxRuntime.jsx(Ii,{}),jsxRuntime.jsx(Hi,{symbol:e.symbol,className:"oui-mx-1 oui-rounded-xl",sharePnLConfig:e.sharePnLConfig})]}),jsxRuntime.jsx("div",{className:"oui-fixed oui-left-0 oui-right-0 oui-bottom-0",children:jsxRuntime.jsx(yi,{})})]})};var Ee=(e,t,o)=>[react.useMemo(()=>{let n=localStorage.getItem(e);return n?`${n}%`:t},[e,t,o]),n=>{localStorage.setItem(e,n);}];var xa=()=>{let[e,t]=react.useState(!1),o=O(),{state:i}=hooks.useAccount(),{wrongNetwork:r}=reactApp.useAppContext(),{isFirstTimeDeposit:n}=yo(),a=hooks.useMediaQuery("(max-width: 1279px)"),s=hooks.useMediaQuery("(min-width: 1440px)"),l=hooks.useMediaQuery("(max-width: 1680px)"),[u,c]=hooks.useLocalStorage("orderly_order_entry_side_markets_layout","right"),d=react.useMemo(()=>!r&&(i.status>=types.AccountStatusEnum.EnableTrading||i.status===types.AccountStatusEnum.EnableTradingWithoutConnected),[i.status,r]),g=react.useMemo(()=>s,[s]),m=tg({canTrading:d,isFirstTimeDeposit:n}),b=eg({collapsable:s}),p=og(u),y=ig({max2XL:a}),w={layout:u,onLayout:c,max2XL:a,min3XL:s,max4XL:l,canTrading:d,openMarketsSheet:e,onOpenMarketsSheetChange:t,horizontalDraggable:g,...b,...m,...p,...y};return {...o,...w}};function eg(e){let{collapsable:t}=e,[o,i]=react.useState(!1),[r,n]=hooks.useLocalStorage("orderly_side_markets_collapsed",void 0),a=l=>{n(l),i(!0);},s=react.useMemo(()=>t?r:!0,[t,r]);return {collapsable:t,collapsed:s,onCollapse:a,animating:o,setAnimating:i}}function tg(e){let{canTrading:t,isFirstTimeDeposit:o}=e,[i,r]=hooks.useLocalStorage("orderly_assets_orderEntry_margin_positions",[0,1,2]),n=(l,u)=>{let c=[...i];if(l===0&&u===c.length-1){c[u]=i[l];for(let d=0;d<c.length-1;d++)c[d]=i[d+1];}else if(l===c.length-1&&u===0){c[u]=i[l];for(let d=1;d<c.length;d++)c[d]=i[d-1];}else [c[l],c[u]]=[c[u],c[l]];r(c);},a=react.useMemo(()=>t&&!o,[t,o]);return {positions:react.useMemo(()=>a?i:[0,1,2],[a,i]),showPositionIcon:a,updatePositions:n}}function og(e){let[t,o]=Ee("orderly_main_split_size",void 0,e),[i,r]=Ee("orderly_datalist_split_size","350px"),[n,a]=Ee("orderly_orderbook_split_size","280px",e),[s,l]=Ee("orderly_datalist_split_height_sm","350px"),[u,c]=Ee("orderly_orderbook_split_height_sm","280px");return {orderBookSplitSize:n,setOrderbookSplitSize:a,dataListSplitSize:i,setDataListSplitSize:r,mainSplitSize:t,setMainSplitSize:o,dataListSplitHeightSM:s,setDataListSplitHeightSM:l,orderBookSplitHeightSM:u,setOrderbookSplitHeightSM:c}}function ig(e){let{max2XL:t}=e,[o,i]=react.useState(0),r=react.useRef(null);return react.useEffect(()=>{let n=r.current;if(!n||!t)return;let a=new ResizeObserver(s=>{for(let l of s){let u=l.contentRect.height;u&&i(u);}});return a.observe(n),()=>{a.unobserve(n);}},[r,t]),{orderEntryViewRef:r,orderEntryHeight:o}}function ya(e){return e?`${100-Math.min(Number(e),100)}`:""}var Sa=e=>jsxRuntime.jsx(mg,{...e,children:jsxRuntime.jsxs(ui$1.Flex,{className:ui$1.cn("oui-rounded-md","oui-w-[69px] oui-h-[28px]","oui-cursor-pointer oui-transition-all","oui-bg-base-6 hover:oui-bg-base-4","oui-text-base-contrast-54 hover:oui-text-base-contrast-80"),gapX:1,ml:3,justify:"center",itemAlign:"center",children:[jsxRuntime.jsx(gg,{}),jsxRuntime.jsx(ui$1.Text,{size:"2xs",weight:"semibold",children:"Layout"})]})}),mg=e=>{let[t,o]=react.useState(!1),i=n=>jsxRuntime.jsxs(ui$1.Flex,{direction:"column",gapY:2,onClick:()=>{e.onLayout?.(n),o(!1);},className:"oui-group",children:[jsxRuntime.jsx(ui$1.Flex,{justify:n==="right"?"end":"start",className:ui$1.cn("oui-w-[148px] oui-h-[100px]","oui-bg-base-10 oui-rounded-[10px]","oui-border-[4px] oui-border-base-5 group-hover:oui-border-primary-light",e.layout===n&&"!oui-border-primary-light"),children:jsxRuntime.jsx(ui$1.Box,{p:1,children:jsxRuntime.jsx(fg,{})})}),jsxRuntime.jsxs(ui$1.Text,{size:"2xs",intensity:54,className:ui$1.cn("oui-text-base-contrast-54 group-hover:oui-text-base-contrast-80",e.layout===n&&"oui-text-base-contrast-80"),children:["Advanced (",n,")"]})]}),r=jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsxs(ui$1.Flex,{itemAlign:"center",justify:"between",mt:3,className:"oui-mb-[10px]",children:[jsxRuntime.jsx(ui$1.Text,{size:"base",intensity:98,children:"layout"}),jsxRuntime.jsx(ui$1.CloseIcon,{size:16,className:"oui-text-base-contrast-80 oui-cursor-pointer",opacity:.98,onClick:()=>{o(!1);}})]}),jsxRuntime.jsx(ui$1.Divider,{}),jsxRuntime.jsxs(ui$1.Flex,{gapX:6,mt:5,children:[i("right"),i("left")]})]});return jsxRuntime.jsxs(ui$1.DropdownMenuRoot,{open:t,onOpenChange:o,children:[jsxRuntime.jsx(ui$1.DropdownMenuTrigger,{asChild:!0,children:e.children}),jsxRuntime.jsx(ui$1.DropdownMenuPortal,{children:jsxRuntime.jsx(ui$1.DropdownMenuContent,{onCloseAutoFocus:n=>n.preventDefault(),onClick:n=>n.stopPropagation(),align:"end",className:ui$1.cn("oui-bg-base-8 oui-p-5 oui-pt-0 oui-w-[360px] oui-font-semibold"),children:r})})]})},gg=e=>jsxRuntime.jsx("svg",{width:"17",height:"16",viewBox:"0 0 17 16",fill:"currentColor",xmlns:"http://www.w3.org/2000/svg",...e,children:jsxRuntime.jsx("path",{d:"M3.832 1.994c-.736 0-1.333.597-1.333 1.333v9.334c0 .737.597 1.333 1.333 1.333H6.5c.737 0 1.333-.596 1.333-1.333V3.327c0-.736-.596-1.333-1.333-1.333zm6.667 0c-.737 0-1.333.597-1.333 1.333v2.667c0 .737.596 1.333 1.333 1.333h2.667c.736 0 1.333-.596 1.333-1.333V3.327c0-.736-.597-1.333-1.333-1.333zm.437 6.679a2.7 2.7 0 0 0-1.033.607.284.284 0 0 0-.061.339c.222.411-.01.851-.512.876a.29.29 0 0 0-.26.217c-.05.207-.07.38-.07.608 0 .19.02.407.06.599a.28.28 0 0 0 .252.217c.506.044.756.429.53.92a.28.28 0 0 0 .06.321c.296.273.635.466 1.034.59a.285.285 0 0 0 .312-.104c.31-.427.757-.428 1.05 0a.28.28 0 0 0 .313.113 2.8 2.8 0 0 0 1.042-.599.28.28 0 0 0 .06-.33c-.23-.466.035-.894.513-.902a.28.28 0 0 0 .269-.209c.048-.199.06-.372.06-.616q0-.316-.069-.616a.276.276 0 0 0-.27-.217c-.469-.001-.732-.463-.502-.868a.27.27 0 0 0-.053-.339 2.8 2.8 0 0 0-1.059-.607.274.274 0 0 0-.312.112c-.268.417-.77.425-1.033.009a.284.284 0 0 0-.321-.121m.842 1.536a1.111 1.111 0 1 1 0 2.222 1.111 1.111 0 0 1 0-2.222"})}),fg=e=>jsxRuntime.jsxs("svg",{width:"36",height:"84",viewBox:"0 0 36 84",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[jsxRuntime.jsx("rect",{width:"36",height:"17",rx:"2",fill:"#181C23"}),jsxRuntime.jsx("rect",{y:"19",width:"36",height:"54",rx:"2",fill:"#181C23"}),jsxRuntime.jsx("rect",{y:"75",width:"36",height:"9",rx:"2",fill:"#181C23"}),jsxRuntime.jsx("rect",{x:"3",y:"79",width:"30",height:"1",rx:"0.5",fill:"url(#paint0_linear_17647_26849)"}),jsxRuntime.jsx("rect",{x:"3",y:"22",width:"14",height:"6",rx:"2",fill:"#008676"}),jsxRuntime.jsx("rect",{x:"19",y:"22",width:"14",height:"6",rx:"2",fill:"#D92D6B"}),jsxRuntime.jsx("rect",{x:"3",y:"11",width:"14",height:"3",rx:"1.5",fill:"#333948"}),jsxRuntime.jsx("rect",{x:"19",y:"11",width:"14",height:"3",rx:"1.5",fill:"#335FFC"}),jsxRuntime.jsx("rect",{x:"3",y:"62",width:"30",height:"8",rx:"2",fill:"#008676"}),jsxRuntime.jsx("defs",{children:jsxRuntime.jsxs("linearGradient",{id:"paint0_linear_17647_26849",x1:"33",y1:"79.5",x2:"3",y2:"79.5",gradientUnits:"userSpaceOnUse",children:[jsxRuntime.jsx("stop",{stopColor:"#59B0FE"}),jsxRuntime.jsx("stop",{offset:"1",stopColor:"#26FEFE"})]})})]});var Xt=e=>{let{showIndicator:t=!0}=e,[o,i]=react.useState(!1);return jsxRuntime.jsxs(ui$1.Box,{intensity:900,r:"2xl",p:3,width:"100%",className:ui$1.cn("oui-relative",e.className),children:[e.children,jsxRuntime.jsx(ui$1.Tooltip,{open:o,onOpenChange:i,side:"left",align:"start",sideOffset:-4,alignOffset:-4,content:jsxRuntime.jsx(ui$1.Flex,{direction:"column",gapY:2,children:[Cg,wg,vg].map((r,n)=>jsxRuntime.jsx(r,{className:ui$1.cn("oui-rounded oui-cursor-pointer hover:oui-bg-base-5",e.index===n&&"oui-bg-base-5"),onClick:()=>{e.onLayout?.(e.index,n),i(!1);}},n))}),delayDuration:0,className:ui$1.cn("oui-bg-base-9 oui-rounded","oui-border oui-border-line-12","oui-p-1"),arrow:{className:"oui-fill-transparent"},children:t&&jsxRuntime.jsx("div",{className:"oui-absolute oui-right-[1px] oui-top-[18px]",children:jsxRuntime.jsx(Sg,{className:ui$1.cn("oui-text-base-contrast-20 hover:oui-text-base-contrast-80","oui-cursor-pointer")})})})]})},Sg=e=>jsxRuntime.jsxs("svg",{width:"10",height:"16",viewBox:"0 0 10 16",fill:"currentColor",xmlns:"http://www.w3.org/2000/svg",...e,children:[jsxRuntime.jsx("rect",{x:"2",y:"2",width:"6",height:"2",rx:"1"}),jsxRuntime.jsx("rect",{x:"2",y:"7",width:"6",height:"2",rx:"1"}),jsxRuntime.jsx("rect",{x:"2",y:"12",width:"6",height:"2",rx:"1"})]}),Cg=e=>jsxRuntime.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"currentColor",xmlns:"http://www.w3.org/2000/svg",...e,children:[jsxRuntime.jsx("rect",{x:"1.333",y:"2.667",width:"13.333",height:"4",rx:"2",fill:"rgb(var(--oui-color-primary))"}),jsxRuntime.jsx("rect",{x:"2.667",y:"12",width:"10.667",height:"1.333",rx:".667",fill:"#fff",fillOpacity:".2"}),jsxRuntime.jsx("rect",{x:"2.667",y:"8.667",width:"10.667",height:"1.333",rx:".667",fill:"#fff",fillOpacity:".2"})]}),wg=e=>jsxRuntime.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg",...e,children:[jsxRuntime.jsx("rect",{x:"1.333",y:"6",width:"13.333",height:"4",rx:"2",fill:"rgb(var(--oui-color-primary))"}),jsxRuntime.jsx("rect",{x:"2.667",y:"12",width:"10.667",height:"1.333",rx:".667",fill:"#fff",fillOpacity:".2"}),jsxRuntime.jsx("rect",{x:"2.667",y:"2.667",width:"10.667",height:"1.333",rx:".667",fill:"#fff",fillOpacity:".2"})]}),vg=e=>jsxRuntime.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg",...e,children:[jsxRuntime.jsx("rect",{x:"1.333",y:"9.333",width:"13.333",height:"4",rx:"2",fill:"rgb(var(--oui-color-primary))"}),jsxRuntime.jsx("rect",{x:"2.667",y:"6",width:"10.667",height:"1.333",rx:".667",fill:"#fff",fillOpacity:".2"}),jsxRuntime.jsx("rect",{x:"2.667",y:"2.667",width:"10.667",height:"1.333",rx:".667",fill:"#fff",fillOpacity:".2"})]});var Ca=e=>{let{collapsable:t,collapsed:o,onCollapse:i,layout:r,onLayout:n,orderBookSplitSize:a,setOrderbookSplitSize:s,dataListSplitSize:l,setDataListSplitSize:u,mainSplitSize:c,setMainSplitSize:d,dataListSplitHeightSM:g,setDataListSplitHeightSM:m,orderBookSplitHeightSM:b,setOrderbookSplitHeightSM:p,max2XL:y,max4XL:w,animating:L,setAnimating:C,positions:R,updatePositions:W,canTrading:Ce,showPositionIcon:ie,horizontalDraggable:he}=e,De=6,Le=48,F=29,D=12,H=54,re=o?70:280,Zt=280,Pa=360,at=280,Ta=732,be=464,st=728,We=320,lt=600,ut=540,ct=Ce?379:277,Na=Le+F+H+be+ct+D*4,ka=Le+F+H+We+be+ct+D*4,$i=jsxRuntime.jsx(markets.SideMarketsWidget,{collapsable:t,collapsed:o,onCollapse:i,symbol:e.symbol,onSymbolChange:e.onSymbolChange}),Jt=jsxRuntime.jsx(ui$1.Box,{intensity:900,pt:3,r:"2xl",height:"100%",width:re,style:{minWidth:re},className:"oui-transition-all oui-duration-150",onTransitionEnd:()=>{C(!1);},children:!L&&$i}),Da=react.useMemo(()=>jsxRuntime.jsx(Sa,{layout:r,onLayout:n}),[r,n]),Ki=jsxRuntime.jsx(ui$1.Box,{intensity:900,r:"2xl",px:3,width:"100%",style:{minHeight:H,height:H},children:jsxRuntime.jsx(markets.SymbolInfoBarFullWidget,{symbol:e.symbol,onSymbolChange:e.onSymbolChange,trailing:Da})}),{library_path:La,...Fa}=e.tradingViewConfig,Xi=jsxRuntime.jsx(uiTradingview.TradingviewWidget,{symbol:e.symbol,...Fa,libraryPath:La}),Yi=jsxRuntime.jsx(ui$1.Box,{width:"100%",height:"100%",intensity:900,r:"2xl",style:{flex:1,minWidth:ut},className:"oui-overflow-hidden",children:Xi}),Zi=jsxRuntime.jsx(qo,{symbol:e.symbol}),Ba=jsxRuntime.jsx(ui$1.Box,{r:"2xl",height:"100%",style:{minWidth:at,maxWidth:he?Ta:at,width:a},className:"oui-overflow-hidden",children:Zi}),Ji=jsxRuntime.jsx(ao,{current:void 0,symbol:e.symbol,sharePnLConfig:e.sharePnLConfig}),Oa=jsxRuntime.jsx(ui$1.Box,{intensity:900,r:"2xl",p:3,style:{height:l,minHeight:ct},className:"oui-overflow-hidden",children:Ji}),Aa=[jsxRuntime.jsx(Xt,{className:"oui-border oui-border-line-12",index:R.findIndex(ne=>ne===0),onLayout:W,showIndicator:ie,children:jsxRuntime.jsx(So,{})},"assets"),jsxRuntime.jsx(Xt,{index:R.findIndex(ne=>ne===1),onLayout:W,showIndicator:ie,children:jsxRuntime.jsx(uiOrderEntry.OrderEntryWidget,{symbol:e.symbol})},"orderEntry"),jsxRuntime.jsx(Xt,{index:R.findIndex(ne=>ne===2),onLayout:W,showIndicator:ie,children:jsxRuntime.jsx(Eo,{})},"margin")],ji=R.map(ne=>Aa[ne]),er=jsxRuntime.jsx(ui$1.Flex,{gapY:3,direction:"column",height:"100%",style:{minWidth:Zt,maxWidth:he?Pa:Zt,width:c},children:ji}),tr=jsxRuntime.jsxs(Me,{style:{flex:1,minHeight:be},onSizeChange:s,disable:!he,children:[w&&r==="right"?jsxRuntime.jsxs(ui$1.Flex,{gap:3,className:"oui-flex-1 oui-overflow-hidden",style:{minWidth:re+ut+D},children:[Jt,Yi]}):Yi,Ba]}),Ra=()=>w&&r==="left"?jsxRuntime.jsxs(ui$1.Flex,{gapX:3,style:{minHeight:be},height:"100%",children:[tr,Jt]}):tr,Ia=jsxRuntime.jsxs(ui$1.Flex,{direction:"column",className:"oui-flex-1 oui-overflow-hidden",gap:3,style:{minWidth:w?re+ut+at+D*2:ut+at+D},children:[Ki,jsxRuntime.jsxs(Me,{className:"oui-w-full !oui-h-[calc(100%_-_54px_-_12px)]",mode:"vertical",onSizeChange:u,children:[Ra(),Oa]})]}),Ma=ne=>d(r==="left"?ya(ne):ne);return y?jsxRuntime.jsxs(Me,{style:{minHeight:ka,minWidth:1024-De},className:ui$1.cn("oui-flex oui-flex-1 oui-overflow-hidden","oui-min-w-[1018px] oui-h-full oui-w-full","oui-p-3",e.className),onSizeChange:m,mode:"vertical",children:[jsxRuntime.jsxs(ui$1.Flex,{gapX:3,itemAlign:"stretch",className:ui$1.cn("oui-flex-1",r==="left"&&"oui-flex-row-reverse"),style:{minHeight:Math.max(H+We+be+D*2,e.orderEntryHeight),maxHeight:H+lt+st+D*2},children:[jsxRuntime.jsxs(ui$1.Flex,{height:"100%",className:"oui-flex-1 oui-w-[calc(100%_-_280px_-_12px)]",direction:"column",gapY:3,children:[Ki,jsxRuntime.jsxs(ui$1.Flex,{width:"100%",height:"100%",gapX:3,itemAlign:"stretch",style:{minHeight:We+be+D,maxHeight:lt+st+D},className:ui$1.cn("oui-flex-1",r==="left"&&"oui-flex-row-reverse"),children:[jsxRuntime.jsx(ui$1.Box,{intensity:900,pt:3,r:"2xl",width:re,style:{minHeight:We+be+D,maxHeight:lt+st+D},children:$i}),jsxRuntime.jsxs(Me,{mode:"vertical",style:{width:`calc(100% - ${re}px)`},className:"oui-flex-1",onSizeChange:p,children:[jsxRuntime.jsx(ui$1.Box,{width:"100%",intensity:900,r:"2xl",style:{minHeight:We,maxHeight:lt},children:Xi}),jsxRuntime.jsx(ui$1.Box,{r:"2xl",height:"100%",width:"100%",style:{minHeight:be,maxHeight:st,height:b},className:"oui-flex-1",children:Zi})]})]})]}),jsxRuntime.jsx(ui$1.Flex,{ref:e.orderEntryViewRef,gapY:3,direction:"column",style:{width:Zt,height:"max-content"},children:ji})]}),jsxRuntime.jsx(ui$1.Box,{intensity:900,r:"2xl",p:3,style:{height:g,minHeight:ct},className:"oui-overflow-hidden",children:Ji})]}):jsxRuntime.jsxs(ui$1.Flex,{style:{minHeight:Na,minWidth:1440-De},className:ui$1.cn(e.className,r==="left"&&"oui-flex-row-reverse"),width:"100%",p:3,gap:3,children:[!w&&Jt,jsxRuntime.jsxs(Me,{className:"oui-flex oui-flex-1 oui-overflow-hidden",onSizeChange:Ma,disable:!he,children:[r==="left"&&er,Ia,r==="right"&&er]})]})};var Gi=e=>{let{isMobile:t}=ui$1.useScreen();return t?jsxRuntime.jsx(ha,{...e}):jsxRuntime.jsx(Ca,{className:"oui-h-[calc(100vh_-_48px_-_29px)] oui-bg-base-10",...e})};var Qi=()=>{let e=xa();return jsxRuntime.jsx(Gi,{...e})};var Bg=e=>jsxRuntime.jsx(sr,{symbol:e.symbol,tradingViewConfig:e.tradingViewConfig,onSymbolChange:e.onSymbolChange,disableFeatures:e.disableFeatures,overrideFeatures:e.overrideFeatures,referral:e.referral,tradingRewards:e.tradingRewards,bottomSheetLeading:e.bottomSheetLeading,sharePnLConfig:e.sharePnLConfig,children:jsxRuntime.jsx(Qi,{})});
29
29
 
30
- exports.AssetView = go;
31
- exports.AssetViewWidget = bo;
32
- exports.BottomNavBar = fi;
33
- exports.BottomNavBarWidget = hi;
34
- exports.DataList = oo;
35
- exports.DataListWidget = io;
36
- exports.LastTrades = ro;
37
- exports.LastTradesWidget = Le;
38
- exports.OrderBook = Oo;
39
- exports.OrderBookAndTrades = zo;
40
- exports.OrderBookAndTradesWidget = Eo;
30
+ exports.AssetView = ho;
31
+ exports.AssetViewWidget = So;
32
+ exports.BottomNavBar = bi;
33
+ exports.BottomNavBarWidget = yi;
34
+ exports.DataList = no;
35
+ exports.DataListWidget = ao;
36
+ exports.LastTrades = so;
37
+ exports.LastTradesWidget = Fe;
38
+ exports.OrderBook = Io;
39
+ exports.OrderBookAndTrades = Wo;
40
+ exports.OrderBookAndTradesWidget = qo;
41
41
  exports.OrderBookWidget = Re;
42
- exports.PortfolioSheet = ni;
43
- exports.PortfolioSheetWidget = ai;
44
- exports.RiskRate = Io;
45
- exports.RiskRateWidget = _o;
42
+ exports.PortfolioSheet = li;
43
+ exports.PortfolioSheetWidget = ui;
44
+ exports.RiskRate = zo;
45
+ exports.RiskRateWidget = Eo;
46
46
  exports.SplitLayout = Me;
47
- exports.Trading = Vi;
48
- exports.TradingPage = kg;
49
- exports.TradingPageContext = ir;
50
- exports.TradingPageProvider = rr;
51
- exports.TradingWidget = qi;
52
- exports.useBottomNavBarScript = pi;
53
- exports.useOrderBookAndTradesScript = Ho;
54
- exports.useOrderBookScript = Ro;
47
+ exports.Trading = Gi;
48
+ exports.TradingPage = Bg;
49
+ exports.TradingPageContext = ar;
50
+ exports.TradingPageProvider = sr;
51
+ exports.TradingWidget = Qi;
52
+ exports.useBottomNavBarScript = xi;
53
+ exports.useOrderBookAndTradesScript = Vo;
54
+ exports.useOrderBookScript = _o;
55
55
  exports.usePendingOrderCount = qe;
56
- exports.usePortfolioSheetScript = ii;
56
+ exports.usePortfolioSheetScript = ai;
57
57
  exports.usePositionsCount = Ve;
58
58
  exports.useTradingLocalStorage = E;
59
59
  exports.useTradingPageContext = O;