@orderly.network/ui-order-entry 2.6.2 → 2.6.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
@@ -1,29 +1,31 @@
1
1
  'use strict';
2
2
 
3
- var Yr = require('react');
3
+ var Li = require('react');
4
4
  var hooks = require('@orderly.network/hooks');
5
5
  var i18n = require('@orderly.network/i18n');
6
6
  var reactApp = require('@orderly.network/react-app');
7
7
  var types = require('@orderly.network/types');
8
8
  var ui = require('@orderly.network/ui');
9
- var uiLeverage = require('@orderly.network/ui-leverage');
10
9
  var uiTpsl = require('@orderly.network/ui-tpsl');
11
- var utils = require('@orderly.network/utils');
12
10
  var jsxRuntime = require('react/jsx-runtime');
13
- var perp = require('@orderly.network/perp');
11
+ var ramda = require('ramda');
14
12
  var uiConnector = require('@orderly.network/ui-connector');
13
+ var utils = require('@orderly.network/utils');
14
+ var perp = require('@orderly.network/perp');
15
+ var uiLeverage = require('@orderly.network/ui-leverage');
15
16
 
16
17
  function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
17
18
 
18
- var Yr__default = /*#__PURE__*/_interopDefault(Yr);
19
+ var Li__default = /*#__PURE__*/_interopDefault(Li);
19
20
 
20
- var fo=e=>e>=0&&e<50?"oui-text-success":e>=50&&e<80?"oui-text-warning":e>=80?"oui-text-danger":"",_t=e=>{let{t:r}=i18n.useTranslation(),{ltv_threshold:t,negative_usdc_threshold:i,isThresholdLoading:s,holdingData:n=[],currentLtv:a,onConvert:u}=e;return jsxRuntime.jsxs(ui.Flex,{gap:1,className:"oui-w-72 oui-max-w-72",direction:"column",children:[jsxRuntime.jsxs(ui.Flex,{width:"100%",justify:"between",itemAlign:"center",children:[jsxRuntime.jsx(ui.Text,{intensity:36,size:"xs",children:r("common.assets")}),jsxRuntime.jsx(ui.Text,{intensity:36,size:"xs",children:r("transfer.deposit.collateralContribution")})]}),n.map((g,f)=>jsxRuntime.jsxs(ui.Flex,{width:"100%",justify:"between",itemAlign:"center",children:[jsxRuntime.jsx(ui.Text,{intensity:80,size:"xs",children:g.token}),jsxRuntime.jsx(ui.Text,{size:"xs",intensity:80,className:ui.cn(Number(g.collateralContribution)<0&&"oui-text-warning"),children:utils.removeTrailingZeros(g.collateralContribution)})]},`item-${f}`)),jsxRuntime.jsx(ui.Divider,{className:"oui-w-full"}),jsxRuntime.jsxs(ui.Flex,{width:"100%",justify:"between",itemAlign:"center",children:[jsxRuntime.jsx(ui.Text,{intensity:36,size:"xs",children:r("transfer.LTV.currentLTV")}),jsxRuntime.jsxs(ui.Text,{size:"xs",intensity:36,className:ui.cn("oui-select-none",fo(a)),children:[a,"%"]})]}),jsxRuntime.jsx(ui.Text,{className:"oui-py-2",intensity:54,size:"2xs",children:r("transfer.LTV.tooltip",{threshold:s?"-":t,usdcThreshold:s?"-":i})}),jsxRuntime.jsx(ui.Button,{fullWidth:true,size:"md",variant:"outlined",color:"secondary",onClick:u,children:r("transfer.convert.convertAssets")})]})};var Oo=()=>{let{data:e,error:r,isLoading:t}=hooks.useQuery("/v1/public/auto_convert_threshold",{errorRetryCount:3});return {ltv_threshold:new utils.Decimal(e?.ltv_threshold??0).mul(100).toNumber(),negative_usdc_threshold:e?.negative_usdc_threshold,isLoading:t,error:r}},ht=()=>{let{data:e=[],isLoading:r}=hooks.useHoldingStream(),{ltv_threshold:t,negative_usdc_threshold:i,isLoading:s}=Oo(),n=hooks.useTokensInfo(),{data:a}=hooks.useIndexPricesStream(),u=e.map(p=>{let y=n?.find(({token:T})=>T===p.token),l=p.token==="USDC"?1:a?.[`PERP_${p.token}_USDC`]??0,m=y?perp.account.collateralRatio({baseWeight:y.base_weight??0,discountFactor:y.discount_factor??0,collateralQty:p.holding,collateralCap:y?.user_max_qty??p.holding,indexPrice:l}):utils.zero,S=perp.account.collateralContribution({collateralQty:p.holding,collateralCap:y?.user_max_qty??p.holding,collateralRatio:m.toNumber(),indexPrice:l});return {...p,collateralContribution:S}}),g=hooks.useComputedLTV(),f=Yr.useCallback(async()=>ui.modal.show("ConvertDialogId"),[]);return {holdingData:u,isHoldingLoading:r,ltv_threshold:t,negative_usdc_threshold:i,isThresholdLoading:s,currentLtv:g,onConvert:f}};var Je=()=>{let e=ht();return jsxRuntime.jsx(_t,{...e})};var rr=e=>{let{pinned:r,orderTypeExtra:t}=e,{t:i}=i18n.useTranslation(),s=n=>a=>{e.onValueChange&&e.onValueChange("order_type_ext",a?n:"");};return Yr.useEffect(()=>{e.onValueChange?.("visible_quantity",e.hidden?0:1);},[e.hidden]),jsxRuntime.jsxs("div",{className:"oui-text-base-contrast-54",children:[jsxRuntime.jsxs(ui.Flex,{justify:r?"start":"between",mb:3,width:r?"unset":"100%",className:"oui-gap-x-2 md:oui-gap-x-3",wrap:"wrap",gapY:1,children:[jsxRuntime.jsxs(ui.Flex,{itemAlign:"center",children:[jsxRuntime.jsx(ui.Checkbox,{"data-testid":"oui-testid-orderEntry-postOnly-checkBox",id:"toggle_order_post_only",className:"oui-peer",color:"white",variant:"radio",disabled:!e.showExtra,checked:t===types.OrderType.POST_ONLY,onCheckedChange:s(types.OrderType.POST_ONLY)}),jsxRuntime.jsx("label",{htmlFor:"toggle_order_post_only",className:ui.cn("oui-text-2xs oui-ml-1 peer-data-[disabled]:oui-text-base-contrast-20","oui-break-normal oui-whitespace-nowrap"),children:i("orderEntry.orderType.postOnly")})]}),jsxRuntime.jsxs(ui.Flex,{itemAlign:"center",children:[jsxRuntime.jsx(ui.Checkbox,{"data-testid":"oui-testid-orderEntry-ioc-checkBox",id:"toggle_order_iov",color:"white",className:"oui-peer",variant:"radio",checked:t===types.OrderType.IOC,onCheckedChange:s(types.OrderType.IOC),disabled:!e.showExtra}),jsxRuntime.jsx("label",{htmlFor:"toggle_order_iov",className:ui.cn("oui-text-2xs oui-ml-1 peer-data-[disabled]:oui-text-base-contrast-20","oui-break-normal oui-whitespace-nowrap"),children:i("orderEntry.orderType.ioc")})]}),jsxRuntime.jsxs(ui.Flex,{itemAlign:"center",children:[jsxRuntime.jsx(ui.Checkbox,{"data-testid":"oui-testid-orderEntry-fox-checkBox",id:"toggle_order_fok",color:"white",variant:"radio",className:"oui-peer",checked:t===types.OrderType.FOK,onCheckedChange:s(types.OrderType.FOK),disabled:!e.showExtra}),jsxRuntime.jsx("label",{htmlFor:"toggle_order_fok",className:ui.cn("oui-text-2xs oui-ml-1 peer-data-[disabled]:oui-text-base-contrast-20","oui-break-normal oui-whitespace-nowrap"),children:i("orderEntry.orderType.fok")})]})]}),jsxRuntime.jsxs(ui.Flex,{gapX:6,children:[jsxRuntime.jsxs(ui.Flex,{children:[jsxRuntime.jsx(ui.Checkbox,{"data-testid":"oui-testid-orderEntry-orderConfirm-checkBox",id:"toggle_order_confirm",color:"white",checked:e.needConfirm,onCheckedChange:n=>{e.setNeedConfirm(!!n);}}),jsxRuntime.jsx("label",{htmlFor:"toggle_order_confirm",className:"oui-text-2xs oui-ml-1",children:i("orderEntry.orderConfirm")})]}),jsxRuntime.jsxs(ui.Flex,{children:[jsxRuntime.jsx(ui.Checkbox,{"data-testid":"oui-testid-orderEntry-hidden-checkBox",id:"toggle_order_hidden",color:"white",checked:e.hidden,onCheckedChange:n=>{e.setHidden(n);}}),jsxRuntime.jsx("label",{htmlFor:"toggle_order_hidden",className:"oui-text-2xs oui-ml-1",children:i("orderEntry.hidden")})]})]}),!r&&jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(ui.Divider,{className:"oui-my-3"}),jsxRuntime.jsxs(ui.Flex,{children:[jsxRuntime.jsx(ui.Switch,{"data-testid":"oui-testid-orderEntry-additional-keepVisible-switch",id:"toggle_order_keep_visible",onCheckedChange:n=>{e.setPinned(n);}}),jsxRuntime.jsx("label",{htmlFor:"toggle_order_keep_visible",className:"oui-text-2xs oui-ml-1",children:i("orderEntry.keepVisible")})]})]})]})};var or=()=>({});var et=e=>{let r=or();return jsxRuntime.jsx(rr,{...r,...e})};function Be(e){let{order_type:r,order_type_ext:t}=e,i=[types.OrderType.ASK,types.OrderType.BID].includes(t);return r?r===types.OrderType.LIMIT&&i:i}function ir(e,r){if([types.BBOOrderType.COUNTERPARTY1,types.BBOOrderType.COUNTERPARTY5].includes(e))return r===types.OrderSide.BUY?types.OrderType.ASK:types.OrderType.BID;if([types.BBOOrderType.QUEUE1,types.BBOOrderType.QUEUE5].includes(e))return r===types.OrderSide.BUY?types.OrderType.BID:types.OrderType.ASK}function nr(e){if([types.BBOOrderType.COUNTERPARTY1,types.BBOOrderType.QUEUE1].includes(e))return types.OrderLevel.ONE;if([types.BBOOrderType.COUNTERPARTY5,types.BBOOrderType.QUEUE5].includes(e))return types.OrderLevel.FIVE}function sr(e){let{type:r,side:t,level:i}=e;if(r===types.OrderType.ASK){if(i===types.OrderLevel.ONE)return t===types.OrderSide.BUY?types.BBOOrderType.COUNTERPARTY1:types.BBOOrderType.QUEUE1;if(i===types.OrderLevel.FIVE)return t===types.OrderSide.BUY?types.BBOOrderType.COUNTERPARTY5:types.BBOOrderType.QUEUE5}if(r===types.OrderType.BID){if(i===types.OrderLevel.ONE)return t===types.OrderSide.BUY?types.BBOOrderType.QUEUE1:types.BBOOrderType.COUNTERPARTY1;if(i===types.OrderLevel.FIVE)return t===types.OrderSide.BUY?types.BBOOrderType.QUEUE5:types.BBOOrderType.COUNTERPARTY5}}function ar(e){let r=e?.data?.rows||[];if(r.length>0){let t=r.length,i=r.filter(s=>s.success).length;return i===t?i18n.i18n.t("orderEntry.scaledOrder.fullySuccessful",{total:t}):i===0?i18n.i18n.t("orderEntry.scaledOrder.allFailed"):i18n.i18n.t("orderEntry.scaledOrder.partiallySuccessful",{successCount:i,total:t})}}var Pt=e=>{let{symbolInfo:r,order:t,onConfirm:i,onCancel:s}=e,{quote_dp:n,base_dp:a}=r,{side:u,order_type:g,order_type_ext:f,level:p,symbol:y}=t,{t:l}=i18n.useTranslation(),[{rows:m}]=hooks.usePositionStream(y),T=m?.[0]?.position_qty,[N,L]=hooks.useLocalStorage("orderly_order_confirm",true),E=()=>t.position_type===types.PositionType.FULL?jsxRuntime.jsx(ui.Text,{children:l("tpsl.positionType.full")}):jsxRuntime.jsx(ui.Text,{children:l("tpsl.positionType.partial")}),A=()=>{if(g===types.OrderType.MARKET||g===types.OrderType.STOP_MARKET)return jsxRuntime.jsx(ui.Text,{intensity:80,children:l("common.marketPrice")});if(Be({order_type:g,order_type_ext:f})){let B=sr({type:f,side:u,level:p}),se={[types.BBOOrderType.COUNTERPARTY1]:l("orderEntry.bbo.counterparty1"),[types.BBOOrderType.COUNTERPARTY5]:l("orderEntry.bbo.counterparty5"),[types.BBOOrderType.QUEUE1]:l("orderEntry.bbo.queue1"),[types.BBOOrderType.QUEUE5]:l("orderEntry.bbo.queue5")}[B];return jsxRuntime.jsx(ui.Text,{intensity:80,children:se})}return jsxRuntime.jsx(ui.Text.numeral,{unit:"USDC",rule:"price",className:"oui-text-base-contrast",unitClassName:"oui-text-base-contrast-36 oui-ml-1",dp:n,padding:false,children:t.order_price})},z=({price:B,isOrderPrice:se,isEnable:Y,colorType:M})=>Y?!B&&se?jsxRuntime.jsx(ui.Text,{className:"oui-text-base-contrast-36",children:l("common.marketPrice")}):jsxRuntime.jsx(ui.Text.numeral,{unit:"USDC",rule:"price",className:ui.cn("oui-text-base-contrast",M==="TP"?"oui-text-trade-profit":"oui-text-trade-loss"),unitClassName:"oui-text-base-contrast-36 oui-ml-1",dp:n,padding:false,children:B}):jsxRuntime.jsx(ui.Text,{className:"oui-text-base-contrast-36",children:"-- USDC"}),Q=Yr.useMemo(()=>{if(!T||!t.order_quantity)return null;let B=new utils.Decimal(t.order_quantity);return t.position_type===types.PositionType.FULL&&(B=B.plus(new utils.Decimal(T))),jsxRuntime.jsxs(ui.Flex,{justify:"between",children:[jsxRuntime.jsx(ui.Text,{children:t.position_type===types.PositionType.FULL?l("common.positionQty"):l("common.orderQty")}),jsxRuntime.jsx(ui.Text.numeral,{rule:"price",dp:a,padding:false,className:"oui-text-base-contrast",children:B.toNumber()})]})},[t,T,l]);return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsxs(ui.Flex,{justify:"between",children:[jsxRuntime.jsx(ui.Text.formatted,{rule:"symbol",showIcon:true,children:t.symbol}),jsxRuntime.jsxs(ui.Flex,{justify:"end",gapX:1,children:[jsxRuntime.jsx(qo,{type:g}),u===types.OrderSide.BUY?jsxRuntime.jsx(ui.Badge,{color:"buy",size:"sm",children:l("common.buy")}):jsxRuntime.jsx(ui.Badge,{color:"sell",size:"sm",children:l("common.sell")})]})]}),jsxRuntime.jsx(ui.Divider,{className:"oui-my-4"}),jsxRuntime.jsxs("div",{className:ui.textVariants({size:"sm",intensity:54,className:"oui-space-y-1"}),children:[jsxRuntime.jsxs(ui.Flex,{justify:"between",children:[jsxRuntime.jsx(ui.Text,{children:l("common.orderQty")}),jsxRuntime.jsx(ui.Text.numeral,{rule:"price",dp:a,padding:false,className:"oui-text-base-contrast",children:t.order_quantity})]}),t.trigger_price?jsxRuntime.jsxs(ui.Flex,{justify:"between",children:[jsxRuntime.jsx(ui.Text,{children:l("common.trigger")}),jsxRuntime.jsx(ui.Text.numeral,{unit:"USDC",rule:"price",className:"oui-text-base-contrast",unitClassName:"oui-text-base-contrast-36 oui-ml-1",dp:n,padding:false,children:t.trigger_price})]}):null,jsxRuntime.jsxs(ui.Flex,{justify:"between",children:[jsxRuntime.jsx(ui.Text,{children:l("common.price")}),A()]}),jsxRuntime.jsxs(ui.Flex,{justify:"between",children:[jsxRuntime.jsx(ui.Text,{children:l("common.estTotal")}),jsxRuntime.jsx(ui.Text.numeral,{unit:"USDC",rule:"price",dp:n,padding:false,className:"oui-text-base-contrast",unitClassName:"oui-text-base-contrast-36 oui-ml-1",children:t.total})]})]}),t.tp_trigger_price||t.sl_trigger_price?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(ui.Divider,{className:"oui-my-4"}),jsxRuntime.jsxs("div",{className:ui.textVariants({size:"sm",intensity:54,className:"oui-space-y-1 oui-w-full oui-flex oui-flex-col oui-gap-3"}),children:[jsxRuntime.jsx(ui.Text,{className:"oui-text-base-contrast",children:E()}),Q,jsxRuntime.jsxs(ui.Flex,{direction:"column",justify:"between",itemAlign:"start",gap:1,className:"oui-w-full",children:[jsxRuntime.jsxs(ui.Flex,{justify:"between",className:"oui-w-full",children:[jsxRuntime.jsx(ui.Text,{children:l("tpsl.tpTriggerPrice")}),z({price:t.tp_trigger_price??"",isOrderPrice:false,isEnable:!!t.tp_trigger_price,colorType:"TP"})]}),jsxRuntime.jsxs(ui.Flex,{justify:"between",className:"oui-w-full",children:[jsxRuntime.jsx(ui.Text,{children:l("tpsl.tpOrderPrice")}),z({price:t.tp_order_price??"",isOrderPrice:true,isEnable:!!t.tp_trigger_price,colorType:"TP"})]})]}),jsxRuntime.jsxs(ui.Flex,{direction:"column",justify:"between",itemAlign:"start",gap:1,className:"oui-w-full",children:[jsxRuntime.jsxs(ui.Flex,{justify:"between",className:"oui-w-full",children:[jsxRuntime.jsx(ui.Text,{children:l("tpsl.slTriggerPrice")}),z({price:t.sl_trigger_price??"",isOrderPrice:false,isEnable:!!t.sl_trigger_price,colorType:"SL"})]}),jsxRuntime.jsxs(ui.Flex,{justify:"between",className:"oui-w-full",children:[jsxRuntime.jsx(ui.Text,{children:l("tpsl.slOrderPrice")}),z({price:t.sl_order_price??"",isOrderPrice:true,isEnable:!!t.sl_trigger_price,colorType:"SL"})]})]})]})]}):null,jsxRuntime.jsxs(ui.Flex,{gapX:1,pt:4,pb:5,children:[jsxRuntime.jsx(ui.Checkbox,{id:"orderConfirm",color:"white",onCheckedChange:B=>{L(!B);}}),jsxRuntime.jsx("label",{htmlFor:"orderConfirm",className:ui.textVariants({size:"xs",intensity:54}),children:l("orderEntry.disableOrderConfirm")})]}),jsxRuntime.jsxs(ui.Grid,{cols:2,gapX:3,children:[jsxRuntime.jsx(ui.Button,{color:"secondary",size:"md",onClick:()=>s(),children:l("common.cancel")}),jsxRuntime.jsx(ui.Button,{size:"md",onClick:()=>i(),children:l("common.confirm")})]})]})};Pt.displayName="OrderConfirmDialog";var qo=e=>{let{t:r}=i18n.useTranslation(),t=Yr.useMemo(()=>{switch(e.type){case types.OrderType.LIMIT:return r("orderEntry.orderType.limit");case types.OrderType.MARKET:return r("common.marketPrice");case types.OrderType.STOP_LIMIT:return r("orderEntry.orderType.stopLimit");case types.OrderType.STOP_MARKET:return r("orderEntry.orderType.stopMarket");default:return ""}},[e.type]);return jsxRuntime.jsx(ui.Badge,{color:"neutral",size:"sm",children:t})},Uo=e=>{let{close:r,resolve:t,reject:i,...s}=e;return jsxRuntime.jsx(Pt,{...s,onCancel:()=>{i(),r();},onConfirm:()=>{t(),r();}})},Nt="orderConfirm";ui.registerSimpleDialog(Nt,Uo,{size:"sm",title:()=>i18n.i18n.t("orderEntry.orderConfirm")});var wt=e=>{let{order:r,symbolInfo:t,dataSource:i,national:s,askAndBid:n,totalQuantity:a}=e,{base:u,quote:g,base_dp:f,quote_dp:p}=t,{t:y}=i18n.useTranslation(),l=()=>{e.reject(),e.close?.();},m=()=>{e.resolve(),e.close?.();},S=Yr.useMemo(()=>[{title:y("common.symbol"),dataIndex:"symbol",width:125,render:(T,N)=>jsxRuntime.jsxs(ui.Flex,{gap:2,children:[jsxRuntime.jsx("div",{className:ui.cn("oui-h-[38px] oui-w-1 oui-shrink-0 oui-rounded-[1px]",N.side===types.OrderSide.BUY?"oui-bg-trade-profit":"oui-bg-trade-loss")}),jsxRuntime.jsxs(ui.Flex,{direction:"column",itemAlign:"start",children:[jsxRuntime.jsxs(ui.Flex,{gapX:1,children:[jsxRuntime.jsx(ui.TokenIcon,{symbol:T,className:"oui-size-3"}),jsxRuntime.jsx(ui.Text.formatted,{rule:"symbol",size:"xs",formatString:"base-type",children:T})]}),jsxRuntime.jsx(ui.Badge,{color:"neutral",size:"xs",children:y("orderEntry.orderType.limit")})]})]})},{title:y("common.quantity"),dataIndex:"order_quantity",width:100,render:(T,N)=>jsxRuntime.jsx(ui.Text.numeral,{rule:"price",dp:f,padding:false,color:N.side===types.OrderSide.BUY?"buy":"sell",children:T})},{title:y("common.orderPrice"),dataIndex:"order_price",width:100,render:(T,N)=>{let L=!!(N.side===types.OrderSide.BUY?n?.[0]&&Number(T)>=n?.[0]:n?.[1]&&Number(T)<=n?.[1]);return jsxRuntime.jsxs(ui.Flex,{gapX:1,children:[jsxRuntime.jsx(ui.Text.numeral,{rule:"price",dp:p,children:T}),L&&jsxRuntime.jsx(ui.Tooltip,{content:y("orderEntry.confirmScaledOrder.orderPrice.warning"),className:"oui-w-[240px] oui-text-2xs oui-font-semibold oui-text-base-contrast-80",children:jsxRuntime.jsx(jo,{className:"oui-text-warning-darken"})})]})}}],[y,t,n,f,p]);return jsxRuntime.jsxs("div",{className:"oui-font-semibold",children:[jsxRuntime.jsx(ui.DataTable,{classNames:{root:ui.cn("oui-bg-base-7","oui-rounded-lg","oui-overflow-hidden",r.orders?.length>=6&&"oui-h-[320px]"),scroll:"!oui-min-h-[130px]"},dataSource:i,columns:S,bordered:true,onRow:()=>({className:ui.cn("oui-h-[50px]")})}),jsxRuntime.jsxs("div",{className:"oui-mb-5 oui-mt-4 oui-text-2xs",children:[jsxRuntime.jsxs(ui.Flex,{justify:"between",children:[jsxRuntime.jsx(ui.Text,{children:y("orderEntry.totalOrders")}),jsxRuntime.jsx(ui.Text,{intensity:80,children:r.orders?.length})]}),jsxRuntime.jsxs(ui.Flex,{justify:"between",mt:2,children:[jsxRuntime.jsx(ui.Text,{children:y("orderEntry.totalQuantity")}),jsxRuntime.jsx(ui.Text.numeral,{rule:"price",unit:u,dp:f,padding:false,intensity:80,unitClassName:"oui-text-base-contrast-36 oui-ml-1",children:a})]}),jsxRuntime.jsxs(ui.Flex,{justify:"between",mt:2,children:[jsxRuntime.jsx(ui.Text,{children:y("common.notional")}),jsxRuntime.jsx(ui.Text.numeral,{rule:"price",unit:g,dp:p,padding:false,intensity:80,unitClassName:"oui-text-base-contrast-36 oui-ml-1",children:s})]})]}),jsxRuntime.jsxs(ui.Grid,{cols:2,gapX:3,children:[jsxRuntime.jsx(ui.Button,{color:"secondary",size:"md",onClick:l,children:y("common.cancel")}),jsxRuntime.jsx(ui.Button,{size:"md",onClick:m,children:y("common.confirm")})]})]})},jo=Yr.forwardRef((e,r)=>jsxRuntime.jsx("svg",{width:"12",height:"13",viewBox:"0 0 12 13",fill:"currentColor",xmlns:"http://www.w3.org/2000/svg",ref:r,...e,children:jsxRuntime.jsx("path",{d:"M5.99951 1.50708C3.23811 1.50708 0.999512 3.74558 0.999512 6.50708C0.999512 9.26858 3.23811 11.5071 5.99951 11.5071C8.76091 11.5071 10.9995 9.26858 10.9995 6.50708C10.9995 3.74558 8.76091 1.50708 5.99951 1.50708ZM5.99951 4.00708C6.27566 4.00708 6.49951 4.23108 6.49951 4.50708C6.49951 4.78308 6.27566 5.00708 5.99951 5.00708C5.72336 5.00708 5.49951 4.78308 5.49951 4.50708C5.49951 4.23108 5.72336 4.00708 5.99951 4.00708ZM5.99951 5.50708C6.27566 5.50708 6.49951 5.73108 6.49951 6.00708V8.50708C6.49951 8.78308 6.27566 9.00708 5.99951 9.00708C5.72336 9.00708 5.49951 8.78308 5.49951 8.50708V6.00708C5.49951 5.73108 5.72336 5.50708 5.99951 5.50708Z"})}));function Ft(e){let{order:r,symbolInfo:t}=e,i=r.orders,[s,n]=Yr.useState(),a=hooks.useEventEmitter(),u=Yr.useMemo(()=>i.reduce((p,y)=>p.add(new utils.Decimal(y.order_price).mul(y.order_quantity)),utils.zero).toNumber(),[i]),g=Yr.useMemo(()=>i.reduce((p,y)=>p.add(new utils.Decimal(y.order_quantity)),utils.zero).toString(),[i,t.base_dp]);return Yr.useEffect(()=>{let f=p=>{let y=p.asks?.[p.asks.length-1]?.[0],l=p.bids?.[0]?.[0];n([y,l]);};return a.on("orderbook:update",f),()=>{a.off("orderbook:update",f);}},[]),{dataSource:i,national:u,askAndBid:s,totalQuantity:g}}var xr=e=>{let r=Ft(e);return jsxRuntime.jsx(wt,{...e,...r})},rt="scaledOrderConfirm";ui.registerSimpleDialog(rt,xr,{size:"md",title:()=>i18n.i18n.t("orderEntry.confirmScaledOrder"),contentProps:{}});var kt=e=>{let{t:r}=i18n.useTranslation(),{takerFeeRate:t,makerFeeRate:i}=e,{widgetConfigs:s}=reactApp.useAppContext(),n=jsxRuntime.jsxs(ui.Flex,{width:"100%",itemAlign:"center",justify:"between",children:[jsxRuntime.jsx(ui.Text,{size:"2xs",children:r("common.fees")}),jsxRuntime.jsx(uiConnector.AuthGuard,{fallback:()=>jsxRuntime.jsxs(ui.Text,{size:"2xs",children:[r("portfolio.feeTier.column.taker"),": --% /"," ",r("portfolio.feeTier.column.maker"),": --%"]}),children:jsxRuntime.jsxs(ui.Flex,{gap:1,children:[jsxRuntime.jsxs(ui.Text,{size:"2xs",children:[r("portfolio.feeTier.column.taker"),":"]}),jsxRuntime.jsx(ui.Text,{size:"2xs",className:"oui-text-base-contrast-80",children:t}),jsxRuntime.jsx(ui.Text,{size:"2xs",children:"/"}),jsxRuntime.jsxs(ui.Text,{size:"2xs",children:[r("portfolio.feeTier.column.maker"),":"]}),jsxRuntime.jsx(ui.Text,{size:"2xs",className:"oui-text-base-contrast-80",children:i})]})})]}),a=s?.orderEntry?.fees?.trailing;return typeof a=="function"?a(n):n};var Rt=()=>{let{data:e}=hooks.useAccountInfo(),r=Yr.useMemo(()=>{let i=e?.futures_taker_fee_rate;if(!(typeof i>"u"))return `${new utils.Decimal(i).mul(.01).toString()}%`},[e]),t=Yr.useMemo(()=>{let i=e?.futures_maker_fee_rate;if(!(typeof i>"u"))return `${new utils.Decimal(i).mul(.01).toString()}%`},[e]);return {takerFeeRate:r,makerFeeRate:t}};var At=()=>{let e=Rt();return jsxRuntime.jsx(kt,{...e})};var De=Yr.createContext({}),Cr=De.Provider;var vr=e=>{let{t:r}=i18n.useTranslation(),{className:t,...i}=e,s=()=>{ui.modal.dialog({title:r("common.tips"),size:"sm",content:jsxRuntime.jsx(fi,{value:e.value})});};return jsxRuntime.jsxs(ui.Flex,{direction:"column",itemAlign:"start",justify:"center",p:2,r:"base",width:"100%",intensity:600,className:ui.cn("oui-t-rounded oui-text-base-contrast-36","oui-border oui-border-solid oui-border-line",t),children:[jsxRuntime.jsx(ui.Text,{size:"2xs",className:"oui-cursor-pointer oui-border-b oui-border-dashed oui-border-line-12",onClick:s,children:r("orderEntry.quantityDistribution")}),jsxRuntime.jsx(gi,{...i})]})},fi=e=>{let{t:r}=i18n.useTranslation(),[t,i]=Yr.useState(types.DistributionType.FLAT);Yr.useEffect(()=>{i([types.DistributionType.FLAT,types.DistributionType.ASCENDING,types.DistributionType.DESCENDING].includes(e.value)?e.value:types.DistributionType.FLAT);},[e.value]);let s=Yr.useMemo(()=>[{type:types.DistributionType.FLAT,title:r("orderEntry.distributionType.flat"),description:r("orderEntry.distributionType.flat.description"),formula:`${r("orderEntry.skew")} = 1`,quantity:jsxRuntime.jsx(yi,{})},{type:types.DistributionType.ASCENDING,title:r("orderEntry.distributionType.ascending"),description:r("orderEntry.distributionType.ascending.description"),formula:`${r("orderEntry.skew")} > 1`,quantity:jsxRuntime.jsx(bi,{})},{type:types.DistributionType.DESCENDING,title:r("orderEntry.distributionType.descending"),description:r("orderEntry.distributionType.descending.description"),formula:`0 < ${r("orderEntry.skew")} < 1`,quantity:jsxRuntime.jsx(xi,{})}],[]),n=Yr.useMemo(()=>s.find(a=>a.type===t),[s,t]);return jsxRuntime.jsxs("div",{className:"oui-text-2xs oui-font-semibold oui-text-base-contrast-54",children:[jsxRuntime.jsxs(ui.Flex,{direction:"column",itemAlign:"start",gapY:1,children:[jsxRuntime.jsx(ui.Text,{intensity:80,children:r("orderEntry.quantityDistribution.description")}),jsxRuntime.jsx(ui.Text,{children:r("orderEntry.quantityDistribution.formula")})]}),jsxRuntime.jsxs(ui.Flex,{intensity:600,p:1,r:"base",mt:3,itemAlign:"start",children:[jsxRuntime.jsx(ui.Flex,{direction:"column",itemAlign:"start",children:s.map(a=>jsxRuntime.jsx(ui.Box,{intensity:t===a.type?500:600,width:78,p:2,className:"oui-cursor-pointer oui-rounded-l",onClick:()=>{i(a.type);},children:jsxRuntime.jsx(ui.Text,{children:a.title})},a.title))}),jsxRuntime.jsxs(ui.Flex,{direction:"column",itemAlign:"start",gapY:1,p:2,intensity:500,width:"100%",className:ui.cn("oui-rounded-r",t===types.DistributionType.FLAT&&"oui-rounded-bl",t===types.DistributionType.ASCENDING&&"oui-rounded-l",t===types.DistributionType.DESCENDING&&"oui-rounded-tl"),children:[jsxRuntime.jsx("div",{children:n?.formula}),jsxRuntime.jsx(ui.Text,{children:n?.description}),jsxRuntime.jsx(ui.Flex,{width:"100%",justify:"center",children:n?.quantity}),jsxRuntime.jsxs(ui.Flex,{width:"100%",gapX:1,justify:"center",children:[jsxRuntime.jsx(ui.Text,{className:"oui-text-base-1",children:r("common.price")}),jsxRuntime.jsx(Ti,{})]})]})]})]})},gi=e=>{let{value:r,onValueChange:t}=e,{t:i}=i18n.useTranslation(),s=a=>u=>{t(a);},n=Yr.useMemo(()=>({[types.DistributionType.FLAT]:i("orderEntry.distributionType.flat"),[types.DistributionType.ASCENDING]:i("orderEntry.distributionType.ascending.abbr"),[types.DistributionType.DESCENDING]:i("orderEntry.distributionType.descending.abbr"),[types.DistributionType.CUSTOM]:i("orderEntry.distributionType.custom")}),[i]);return jsxRuntime.jsx(ui.Flex,{className:ui.cn("oui-gap-x-[6px] lg:oui-gap-x-2"),wrap:"wrap",children:Object.values(types.DistributionType).map(a=>jsxRuntime.jsxs(ui.Flex,{itemAlign:"center",children:[jsxRuntime.jsx(ui.Checkbox,{id:`distribution-type-${a}`,color:"white",variant:"radio",checked:r===a,onCheckedChange:s(a)}),jsxRuntime.jsx("label",{htmlFor:`distribution-type-${a}`,className:ui.cn("oui-text-2xs","oui-ml-1","oui-whitespace-nowrap oui-break-normal"),children:n[a]})]},a))})},yi=()=>jsxRuntime.jsxs("svg",{width:"218",height:"40",viewBox:"0 0 218 40",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[jsxRuntime.jsx("rect",{x:"18",y:"18",width:"181",height:"4",fill:"rgb(var(--oui-color-base-2))"}),jsxRuntime.jsx("circle",{cx:"15",cy:"20",r:"6",fill:"rgb(var(--oui-color-base-2))",stroke:"rgb(var(--oui-color-base-5))",strokeWidth:"2"}),jsxRuntime.jsx("circle",{cx:"62",cy:"20",r:"6",fill:"rgb(var(--oui-color-base-2))",stroke:"rgb(var(--oui-color-base-5))",strokeWidth:"2"}),jsxRuntime.jsx("circle",{cx:"109",cy:"20",r:"6",fill:"rgb(var(--oui-color-base-2))",stroke:"rgb(var(--oui-color-base-5))",strokeWidth:"2"}),jsxRuntime.jsx("circle",{cx:"156",cy:"20",r:"6",fill:"rgb(var(--oui-color-base-2))",stroke:"rgb(var(--oui-color-base-5))",strokeWidth:"2"}),jsxRuntime.jsx("circle",{cx:"203",cy:"20",r:"6",fill:"rgb(var(--oui-color-base-2))",stroke:"rgb(var(--oui-color-base-5))",strokeWidth:"2"})]}),bi=()=>jsxRuntime.jsxs("svg",{width:"218",height:"40",viewBox:"0 0 218 40",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[jsxRuntime.jsx("rect",{x:"18",y:"18",width:"181",height:"4",fill:"rgb(var(--oui-color-base-2))"}),jsxRuntime.jsx("circle",{cx:"15",cy:"20",r:"4.28571",fill:"rgb(var(--oui-color-base-2))",stroke:"rgb(var(--oui-color-base-5))",strokeWidth:"1.42857"}),jsxRuntime.jsx("circle",{cx:"62",cy:"20",r:"5.14286",fill:"rgb(var(--oui-color-base-2))",stroke:"rgb(var(--oui-color-base-5))",strokeWidth:"1.71429"}),jsxRuntime.jsx("circle",{cx:"109",cy:"20",r:"6",fill:"rgb(var(--oui-color-base-2))",stroke:"rgb(var(--oui-color-base-5))",strokeWidth:"2"}),jsxRuntime.jsx("circle",{cx:"156",cy:"20",r:"6.85714",fill:"rgb(var(--oui-color-base-2))",stroke:"rgb(var(--oui-color-base-5))",strokeWidth:"2.28571"}),jsxRuntime.jsx("circle",{cx:"203",cy:"20",r:"7.71429",fill:"rgb(var(--oui-color-base-2))",stroke:"rgb(var(--oui-color-base-5))",strokeWidth:"2.57143"})]}),xi=()=>jsxRuntime.jsxs("svg",{width:"218",height:"40",viewBox:"0 0 218 40",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[jsxRuntime.jsx("rect",{width:"181",height:"4",transform:"matrix(-1 0 0 1 200 18)",fill:"rgb(var(--oui-color-base-2))"}),jsxRuntime.jsx("circle",{cx:"5",cy:"5",r:"4.28571",transform:"matrix(-1 0 0 1 208 15)",fill:"rgb(var(--oui-color-base-2))",stroke:"rgb(var(--oui-color-base-5))",strokeWidth:"1.42857"}),jsxRuntime.jsx("circle",{cx:"6",cy:"6",r:"5.14286",transform:"matrix(-1 0 0 1 162 14)",fill:"rgb(var(--oui-color-base-2))",stroke:"rgb(var(--oui-color-base-5))",strokeWidth:"1.71429"}),jsxRuntime.jsx("circle",{cx:"7",cy:"7",r:"6",transform:"matrix(-1 0 0 1 116 13)",fill:"rgb(var(--oui-color-base-2))",stroke:"rgb(var(--oui-color-base-5))",strokeWidth:"2"}),jsxRuntime.jsx("circle",{cx:"8",cy:"8",r:"6.85714",transform:"matrix(-1 0 0 1 70 12)",fill:"rgb(var(--oui-color-base-2))",stroke:"rgb(var(--oui-color-base-5))",strokeWidth:"2.28571"}),jsxRuntime.jsx("circle",{cx:"9",cy:"9",r:"7.71429",transform:"matrix(-1 0 0 1 24 11)",fill:"rgb(var(--oui-color-base-2))",stroke:"rgb(var(--oui-color-base-5))",strokeWidth:"2.57143"})]}),Ti=()=>jsxRuntime.jsx("svg",{width:"176",height:"8",viewBox:"0 0 176 8",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:jsxRuntime.jsx("path",{d:"M175.354 4.35355C175.549 4.15829 175.549 3.84171 175.354 3.64645L172.172 0.464466C171.976 0.269204 171.66 0.269204 171.464 0.464466C171.269 0.659728 171.269 0.976311 171.464 1.17157L174.293 4L171.464 6.82843C171.269 7.02369 171.269 7.34027 171.464 7.53553C171.66 7.7308 171.976 7.7308 172.172 7.53553L175.354 4.35355ZM0 4V4.5H175V4V3.5H0V4Z",fill:"rgb(var(--oui-color-base-1))"})});var Oi=e=>jsxRuntime.jsx(ui.Text,{size:"2xs",intensity:36,children:e}),Or=e=>{let{base:r,quote:t}=e,i=Yr.useMemo(()=>[{name:t},{name:r}],[r,t]);return jsxRuntime.jsx(ui.Select.tokens,{variant:"text",size:"xs",iconSize:"2xs",tokens:i,classNames:{trigger:ui.cn("oui-absolute oui-right-0 oui-top-1","oui-w-full oui-justify-end")},value:e.value,onValueChange:e.onValueChange,valueFormatter:Oi,contentProps:{align:"end",alignOffset:-1,sideOffset:-4,className:"oui-border oui-border-line-6"}})};var Lr=[.01,.05,.1],wr=Yr.forwardRef((e,r)=>{let{t}=i18n.useTranslation(),[i,s]=Yr.useState(),[n,a]=Yr.useState(""),[u,g]=Yr.useState(void 0);Yr.useImperativeHandle(r,()=>({getValue:()=>n?new utils.Decimal(n)?.toNumber():i})),Yr.useEffect(()=>{e.initialValue&&!Lr.includes(e.initialValue)?a(e.initialValue.toString()):s(e.initialValue);},[e.initialValue,open]);let f=l=>{s(l),a(""),g(void 0);},p=l=>{if(!l){a(l);return}let m=new utils.Decimal(l);s(void 0),m.gt(3)?(a("3"),g(t("orderEntry.slippage.error.exceed"))):(a(l),g(void 0));},y=e.isMobile?jsxRuntime.jsx("button",{onClick:()=>{ui.modal.alert({title:t("common.tips"),message:jsxRuntime.jsx(ui.Text,{size:"2xs",children:t("orderEntry.slippage.tips")})});},children:jsxRuntime.jsx(ui.ExclamationFillIcon,{className:"oui-text-base-contrast-54",size:16})}):jsxRuntime.jsx(ui.Tooltip,{content:jsxRuntime.jsx(ui.Text,{intensity:80,size:"2xs",children:t("orderEntry.slippage.tips")}),className:"oui-w-[260px] oui-bg-base-6",arrow:{className:"oui-fill-base-6"},children:jsxRuntime.jsx(ui.TooltipTrigger,{children:jsxRuntime.jsx(ui.ExclamationFillIcon,{className:"oui-text-base-contrast-54",size:16})})});return jsxRuntime.jsxs("div",{className:"oui-text-2xs",children:[jsxRuntime.jsxs(ui.Flex,{mb:2,gapX:1,children:[jsxRuntime.jsx(ui.Text,{size:"xs",children:t("orderEntry.slippage")}),y]}),jsxRuntime.jsxs(ui.Flex,{gapX:2,children:[Lr.map(l=>jsxRuntime.jsx(Ri,{value:l,isActive:i===l,onClick:()=>{f(l);}},l)),jsxRuntime.jsx(ui.Input,{suffix:"%",formatters:[ui.inputFormatter.numberFormatter,ui.inputFormatter.dpFormatter(2)],value:n,onValueChange:p,classNames:{root:ui.cn("oui-rounded-md oui-bg-base-6","oui-h-[40px] oui-w-[74px]"),input:"oui-text-base-contrast",additional:"oui-pl-1"}})]}),!!u&&jsxRuntime.jsx(ui.Box,{mt:5,className:"-oui-mb-5",children:jsxRuntime.jsx(ui.Text,{size:"2xs",color:"danger",children:u})})]})}),Ri=({value:e,isActive:r,onClick:t})=>jsxRuntime.jsx(ui.Flex,{intensity:600,justify:"center",itemAlign:"center",r:"md",width:74,height:40,className:ui.cn("oui-cursor-pointer oui-select-none",r&&"oui-bg-primary-light"),onClick:t,children:jsxRuntime.jsxs(ui.Text,{size:"sm",intensity:80,children:[e,"%"]})});var Fr=e=>{let{t:r}=i18n.useTranslation(),[t,{setTrue:i,setFalse:s,toggle:n}]=hooks.useBoolean(false),{isMobile:a}=ui.useScreen(),u=Yr.useRef(null),g=()=>{let f=u.current?.getValue();return e.setSlippage(f?f.toString():"1"),s(),Promise.resolve(true)};return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(ui.SimpleDialog,{open:t,onOpenChange:n,title:r("common.settings"),contentProps:{size:a?"xs":"sm"},actions:{primary:{disabled:false,label:r("common.save"),onClick:g},secondary:{label:r("common.cancel"),onClick:()=>s()}},children:jsxRuntime.jsx(wr,{ref:u,isMobile:a,initialValue:e.slippage?Number(e.slippage):void 0})}),jsxRuntime.jsxs(ui.Flex,{justify:"between",children:[jsxRuntime.jsx(ui.Text,{size:"2xs",children:r("orderEntry.slippage")}),jsxRuntime.jsx(uiConnector.AuthGuard,{fallback:()=>jsxRuntime.jsxs(ui.Text,{size:"2xs",children:[r("orderEntry.slippage.est"),": -% / ",r("common.max"),": --%"]}),children:jsxRuntime.jsxs(ui.Flex,{gap:1,children:[jsxRuntime.jsx(ui.Text.numeral,{size:"2xs",rule:"percentages",prefix:`${r("orderEntry.slippage.est")}: `,suffix:` / ${r("common.max")}: `,children:e.estSlippage??0}),jsxRuntime.jsx("button",{className:"oui-text-2xs",onClick:()=>i(),children:jsxRuntime.jsxs(ui.Flex,{className:"oui-gap-0.5",as:"span",children:[jsxRuntime.jsx(ui.Text,{size:"2xs",className:"oui-text-primary",children:`${e.slippage||"-"}%`}),jsxRuntime.jsx(ui.EditIcon,{className:"oui-text-primary oui-hidden md:oui-block",size:12,opacity:1})]})})]})})]})]})};var kr=e=>jsxRuntime.jsx(Fr,{...e});var Ut=Yr.createContext({}),st=()=>Yr.useContext(Ut);var Ar=e=>{let{type:r,values:t,quote_dp:i}=e,{t:s}=i18n.useTranslation(),[n,a]=Yr.useState(true),{mode:u,setMode:g,tipsEle:f}=st(),[p,y]=Yr.useState(false),[l,m]=Yr.useState(false),S=Yr.useMemo(()=>{switch(u){case "Offset":return `${r.toLowerCase()}_offset`;case "Offset%":return `${r.toLowerCase()}_offset_percentage`;default:return `${r.toLowerCase()}_pnl`}},[u]),[T,N]=Yr.useState(t[u]);Yr.useEffect(()=>{l||N(t[u]);},[t,u,l]);let L=Yr.useMemo(()=>[{label:s("tpsl.pnl"),value:"PnL",testId:"PnL_menu_item"},{label:s("tpsl.offset"),value:"Offset",testId:"Offset_mneu_item"},{label:`${s("tpsl.offset")}%`,value:"Offset%",testId:"Offset%_menu_item"}],[s]),E=Yr.useMemo(()=>({PnL:s("tpsl.pnl"),Offset:s("tpsl.offset"),"Offset%":`${s("tpsl.offset")}%`}),[s]),A=Yr.useRef("");return {mode:u,modes:L,modeLabelMap:E,formatter:Y=>{let{dp:M=2}=Y;return {onRenderBefore:(b,j)=>(b=`${b}`,n&&r==="SL"&&u==="PnL"&&(b=b.startsWith("-")?b:"-"+b),b===""||b==="-"?"":u==="Offset%"?`${new utils.Decimal(b.replace(new RegExp(A.current.replace(".","\\.")+"$"),"")).mul(100).todp(2,4).toString()}${A.current}`:(u==="Offset"&&(b=utils.todpIfNeed(b,M)),`${b}`)),onSendBefore:b=>{if(/^\-?0{2,}$/.test(b))return "0";if(u==="Offset%"){if(b!==""){b=utils.todpIfNeed(b,2);let j=b.match(/\.0{0,2}$/);j?A.current=j[0]:A.current="",b=new utils.Decimal(b).div(100).toString(),b=`${b}${A.current}`;}}else u==="PnL"&&r==="SL"&&n?b=b.startsWith("-")?b:"-"+b:b=utils.todpIfNeed(b,M);return b===""||b==="-"?"":b}}},onModeChange:Y=>{g(Y);},onFocus:()=>{y(true),m(true);},onBlur:()=>{y(false),m(false),e.onChange(S,T);},value:T,onValueChange:Y=>{N(Y),e.onChange(S,Y);},quote_dp:i,tips:p?f:void 0,setFocus:a}};var Vr=e=>{let{mode:r,modes:t,modeLabelMap:i,onModeChange:s,onValueChange:n,quote:a,quote_dp:u,value:g,type:f,tips:p,onFocus:y,onBlur:l,setFocus:m}=e,[S,T]=Yr.useState(r),[N,L]=Yr.useState(r==="Offset%"?"%":a);Yr.useEffect(()=>{T(r),L(r==="Offset%"?"%":a);},[r]),Yr.useEffect(()=>{T(g?"":r);},[g]);let E=Yr.useMemo(()=>`${f.toLowerCase()}_${r.toLowerCase()}`,[]);return jsxRuntime.jsx(ui.Input.tooltip,{prefix:i[S]||S,size:"md",placeholder:N,id:E,align:"right",value:g,tooltip:p,tooltipProps:{content:{side:e.type==="TP"?"top":"bottom"}},"data-testid":e.testIds?.input,autoComplete:"off",onValueChange:n,formatters:[e.formatter({dp:u,mode:r,type:f}),ui.inputFormatter.currencyFormatter],classNames:{root:f==="TP"?"oui-text-trade-profit":"oui-text-trade-loss",additional:"oui-text-base-contrast-54",input:"oui-text-inherit"},onFocus:()=>{T(""),L(""),m(true),y();},onBlur:()=>{T(g?"":r),L(r==="Offset%"?"%":a),l();},suffix:jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[r==="Offset%"&&!!g&&jsxRuntime.jsx(ui.Text,{size:"2xs",color:"inherit",className:"oui-ml-[2px]",children:"%"}),jsxRuntime.jsx(rn,{mode:r,modes:t,onModeChange:A=>s(A.value),testId:e.testIds?.dropDown})]})})},rn=e=>jsxRuntime.jsx(ui.SimpleDropdownMenu,{currentValue:e.mode,menu:e.modes,align:"end",size:"xs",className:"oui-min-w-[80px]",onCloseAutoFocus:r=>r.preventDefault(),onSelect:r=>e.onModeChange(r),children:jsxRuntime.jsx("button",{className:"oui-p-2","data-testid":e.testId,children:jsxRuntime.jsx(ui.CaretDownIcon,{size:12,color:"white"})})});var Dr=e=>{let{testIds:r,quote:t,...i}=e,s=Ar(i);return jsxRuntime.jsx(Vr,{...s,testIds:r,quote:t,type:e.type})};var Wt=e=>{let{type:r,values:t,children:i}=e,[s,n]=hooks.useLocalStorage("TP/SL_Mode","Offset%"),{t:a}=i18n.useTranslation(),u=Yr.useMemo(()=>!t.PnL||!t.trigger_price?null:jsxRuntime.jsxs(ui.Flex,{children:[jsxRuntime.jsx("span",{className:"oui-text-xs oui-text-base-contrast-54",children:s==="PnL"?a("orderEntry.estRoi"):a("orderEntry.estPnL")}),s==="PnL"?jsxRuntime.jsx(ui.Text.numeral,{rule:"percentages",className:ui.cn("oui-ml-1 oui-text-xs",r==="TP"?"oui-text-trade-profit":"oui-text-trade-loss"),children:t.ROI}):jsxRuntime.jsx(ui.Text.numeral,{rule:"price",className:ui.cn("oui-ml-1 oui-text-xs",r==="TP"?"oui-text-trade-profit":"oui-text-trade-loss"),children:t.PnL})]}),[s,t.ROI,t.PnL,t.trigger_price]),g=Yr.useMemo(()=>({mode:s,setMode:n,tipsEle:u}),[s,n,u]);return jsxRuntime.jsx(Ut.Provider,{value:g,children:i})};var Kr=e=>{let r=Yr__default.default.useRef(null),{t}=i18n.useTranslation();return Yr.useEffect(()=>{e.orderType!==types.OrderType.LIMIT&&e.orderType!==types.OrderType.MARKET&&e.onSwitchChanged(false);},[e.orderType]),e.orderType!==types.OrderType.LIMIT&&e.orderType!==types.OrderType.MARKET||e.isReduceOnly?null:jsxRuntime.jsxs("div",{children:[jsxRuntime.jsxs(ui.Flex,{itemAlign:"center",justify:"between",children:[jsxRuntime.jsxs(ui.Flex,{itemAlign:"center",gapX:1,children:[jsxRuntime.jsx(ui.Switch,{id:"order_entry_tpsl",className:"oui-h-[14px]",checked:e.switchState,disabled:e.orderType!==types.OrderType.LIMIT&&e.orderType!==types.OrderType.MARKET||e.isReduceOnly,onCheckedChange:i=>{e.onSwitchChanged(i);}}),jsxRuntime.jsx("label",{htmlFor:"order_entry_tpsl",className:"oui-text-xs",children:t("common.tpsl")})]}),jsxRuntime.jsxs(ui.Flex,{itemAlign:"center",gapX:1,onClick:e.showTPSLAdvanced,className:ui.cn("oui-group oui-invisible",e.switchState&&"oui-visible"),children:[jsxRuntime.jsx(ui.Text,{className:"oui-text-sm oui-cursor-pointer group-hover:oui-text-base-contrast",children:t("tpsl.advanced")}),jsxRuntime.jsx(ui.SettingFillIcon,{size:12,className:"oui-text-base-contrast-54 group-hover:oui-text-base-contrast oui-cursor-pointer",opacity:1,onClick:e.showTPSLAdvanced})]})]}),jsxRuntime.jsx("div",{className:ui.cn("oui-max-h-0 oui-overflow-hidden oui-transition-all",e.switchState&&"oui-max-h-[120px]"),onTransitionEnd:()=>{r.current?.style.setProperty("opacity",e.switchState?"1":"0");},children:jsxRuntime.jsx(Hr,{ref:r,setOrderValue:e.setOrderValue,onChange:e.onChange,values:e.values,errors:e.errors,quote_dp:e.quote_dp})})]})},Hr=Yr__default.default.forwardRef((e,r)=>{let{parseErrorMsg:t}=reactApp.useOrderEntryFormErrorMsg(e.errors);return jsxRuntime.jsxs("div",{ref:r,className:"oui-space-y-1 oui-px-px oui-py-2 oui-transition-all",children:[jsxRuntime.jsx(uiTpsl.TPSLPositionTypeWidget,{value:e.values.position_type,onChange:e.onChange}),jsxRuntime.jsx(Wt,{values:e.values.tp,type:"TP",children:jsxRuntime.jsx(Wr,{type:"TP",error:t("tp_trigger_price"),onChange:e.onChange,values:e.values.tp,quote_dp:e.quote_dp,testIds:{first:"oui-testid-orderEntry-tpsl-tpPrice-input",second:"oui-testid-orderEntry-tpsl-tpPnl-input",dropDown:"oui-testid-orderEntry-tpsl-tp-dropDown-trigger-button"}})}),jsxRuntime.jsx(Wt,{values:e.values.sl,type:"SL",children:jsxRuntime.jsx(Wr,{type:"SL",error:t("sl_trigger_price"),onChange:e.onChange,values:e.values.sl,quote_dp:e.quote_dp,testIds:{first:"oui-testid-orderEntry-tpsl-slPrice-input",second:"oui-testid-orderEntry-tpsl-slPnl-input",dropDown:"oui-testid-orderEntry-tpsl-sl-dropDown-trigger-button"}})})]})});Hr.displayName="TPSLInputForm";var _n=e=>{let{t:r}=i18n.useTranslation(),{errorMsgVisible:t}=Yr.useContext(De),{tipsEle:i}=st(),[s,n]=Yr.useState(`${e.type} Price`),[a,u]=Yr.useState("USDC"),[g,f]=Yr.useState(false),[p,y]=Yr.useState(false),[l,m]=Yr.useState(e.values.trigger_price??"");Yr.useEffect(()=>{p||m(e.values.trigger_price??"");},[e.values.trigger_price,p]);let S=Yr.useMemo(()=>e.error&&t?e.error:g?i:null,[e.error,t,g,i]),T=A=>{let z=e.type==="TP"?r("tpsl.tpPrice"):r("tpsl.slPrice");return A&&(z=e.type==="TP"?r("tpsl.tp"):r("tpsl.sl")),z},N=A=>{m(A),e.onChange(A);};Yr.useEffect(()=>{n(T(e.values.trigger_price)),p||m(e.values.trigger_price??"");},[e.type,e.values.trigger_price]);let L=()=>{n(e.type==="TP"?r("tpsl.tp"):r("tpsl.sl")),u(""),f(true),y(true);},E=()=>{n(T(e.values.trigger_price)),u("USDC"),f(false),y(false),e.onChange(l);};return jsxRuntime.jsx(ui.Input.tooltip,{"data-testid":e.testId,prefix:s,size:"md",placeholder:a,align:"right",onFocus:L,onBlur:E,tooltip:S,tooltipProps:{content:{side:e.type==="TP"?"top":"bottom"}},color:e.error?"danger":void 0,autoComplete:"off",value:l,classNames:{additional:"oui-text-base-contrast-54",root:"oui-pr-2 md:oui-pr-3",prefix:"oui-pr-1 md:oui-pr-2"},onValueChange:N,formatters:[ui.inputFormatter.numberFormatter,ui.inputFormatter.dpFormatter(e.quote_dp??2),ui.inputFormatter.currencyFormatter]})},Wr=e=>{let r=e.type==="SL"?"sl_trigger_price":"tp_trigger_price";return jsxRuntime.jsxs(ui.Grid,{cols:2,gapX:1,children:[jsxRuntime.jsx(_n,{testId:e.testIds?.first,type:e.type,error:e.error,values:e.values??"",onChange:t=>{e.onChange(r,t);},quote_dp:e.quote_dp}),jsxRuntime.jsx(Dr,{testIds:{input:e.testIds?.second,dropDown:e.testIds?.dropDown},onChange:e.onChange,quote:"USDC",quote_dp:2,type:e.type,values:{PnL:e.values.PnL,Offset:e.values.Offset,"Offset%":e.values["Offset%"],ROI:e.values.ROI}})]})};var Qn=[],jt=e=>{let{side:r,formattedOrder:t,setOrderValue:i,setOrderValues:s,symbolInfo:n,maxQty:a,freeCollateral:u,helper:g,submit:f,metaState:p,bboStatus:y,bboType:l,onBBOChange:m,toggleBBO:S,disableFeatures:T,currentLtv:N,fillMiddleValue:L,soundAlert:E,setSoundAlert:A}=e,{curLeverage:z}=hooks.useLeverage(),{t:Q}=i18n.useTranslation(),{isMobile:B}=ui.useScreen(),[se,Y]=Yr.useState(false),{errors:M,validated:b}=p,[j,fe]=Yr.useState(false),[J,xe]=hooks.useLocalStorage("orderly_order_confirm",true),[Te,ke]=hooks.useLocalStorage("orderly-order-additional-pinned",true),[ft,ae]=Yr.useState(false),[We,Ye]=hooks.useLocalStorage("orderly-order-hidden",false),[_e,gt]=hooks.useLocalStorage("orderly-slippage","1",{parseJSON:c=>!c||c==='""'?"1":JSON.parse(c)}),{notification:yt}=hooks.useOrderlyContext(),Ge=Yr.useId(),{parseErrorMsg:Ke}=reactApp.useOrderEntryFormErrorMsg(b?M:null),le=Yr.useMemo(()=>r===types.OrderSide.BUY?Q("orderEntry.buyLong"):Q("orderEntry.sellShort"),[r,Q]);Yr.useEffect(()=>{b&&fe(true);},[b]),Yr.useEffect(()=>{e.disableFeatures?.includes("slippageSetting")||(_e?i("slippage",Number(_e)):i("slippage",void 0));},[_e,e.disableFeatures]),Yr.useEffect(()=>{let c=C=>{C.target.closest("#order-entry-submit-button")||fe(Xe=>Xe&&false);};return j?document.addEventListener("click",c):document.removeEventListener("click",c),()=>{document.removeEventListener("click",c);}},[j]);let He=()=>{let c=t.order_type===types.OrderType.SCALED;g.validate().then(C=>c?ui.modal.show(rt,{order:C,symbolInfo:n,size:B?"sm":"md"}):J?ui.modal.show(Nt,{order:t,symbolInfo:n}):true,C=>(C.slippage&&ui.toast.error(Q("orderEntry.slippage.error.max")),fe(true),Promise.reject())).then(()=>f({resetOnSuccess:false}).then(C=>{if(!C.success&&C.message)ui.toast.error(C.message);else if(C.success&&c){let V=ar(C);V&&ui.toast.success(V);}})).catch(C=>{C?.message&&ui.toast.error(C.message);});},bt=()=>{g.validate().then(()=>{ae(true);},c=>{let C=new Set(["tp_trigger_price","sl_trigger_price"]);Object.keys(c).every(V=>C.has(V))&&ae(true);});},xt=c=>{c.side!==t.side&&i("side",c.side),s({position_type:c.position_type,tp_order_type:c.tp_order_type,tp_pnl:c.tp_pnl,tp_offset:c.tp_offset,tp_offset_percentage:c.tp_offset_percentage,tp_ROI:c.tp_ROI,tp_trigger_price:c.tp_trigger_price,tp_order_price:c.tp_order_price,sl_order_type:c.sl_order_type,sl_trigger_price:c.sl_trigger_price,sl_order_price:c.sl_order_price,sl_pnl:c.sl_pnl,sl_offset:c.sl_offset,sl_offset_percentage:c.sl_offset_percentage,sl_ROI:c.sl_ROI}),ae(false),Y(true);},Tt=()=>{Y(false),s({tp_trigger_price:void 0,tp_order_price:void 0,tp_order_type:types.OrderType.MARKET,sl_trigger_price:void 0,sl_order_price:void 0,sl_order_type:types.OrderType.MARKET,tp_pnl:void 0,sl_pnl:void 0,position_type:types.PositionType.FULL});},$e=B&&e.canTrade,he=typeof N=="number"&&!Number.isNaN(N)&&N>0;Yr.useEffect(()=>{Y(false);},[e.symbol]);let je=!!yt?.orderFilled?.media,d=Te?null:jsxRuntime.jsx(Jn,{pinned:Te,setPinned:ke,needConfirm:J,setNeedConfirm:xe,onValueChange:i,orderTypeExtra:t.order_type_ext,showExtra:t.order_type===types.OrderType.LIMIT&&!e.tpslSwitch,hidden:We,setHidden:Ye}),P=Yr.useMemo(()=>({errorMsgVisible:j}),[j]);return jsxRuntime.jsxs(Cr,{value:P,children:[jsxRuntime.jsxs("div",{className:"oui-space-y-2 oui-text-base-contrast-54 xl:oui-space-y-3",ref:e.containerRef,children:[jsxRuntime.jsxs(ui.Flex,{gapX:2,className:"oui-flex-col oui-gap-y-3 lg:oui-flex-row",children:[jsxRuntime.jsxs("div",{className:ui.cn("oui-grid oui-w-full oui-flex-1 oui-gap-x-2 lg:oui-flex lg:oui-gap-x-[6px]",$e?"oui-grid-cols-3":"oui-grid-cols-2"),children:[jsxRuntime.jsx(ui.Button,{onClick:()=>{e.setOrderValue("side",types.OrderSide.BUY);},size:"md",fullWidth:true,"data-type":types.OrderSide.BUY,className:ui.cn(r===types.OrderSide.BUY&&e.canTrade?"oui-bg-success-darken hover:oui-bg-success-darken/80 active:oui-bg-success-darken/80":"oui-bg-base-7 oui-text-base-contrast-36 hover:oui-bg-base-6 active:oui-bg-base-6"),"data-testid":"oui-testid-orderEntry-side-buy-button",children:Q("common.buy")}),jsxRuntime.jsx(ui.Button,{onClick:()=>{e.setOrderValue("side",types.OrderSide.SELL);},"data-type":types.OrderSide.SELL,fullWidth:true,size:"md",className:ui.cn(r===types.OrderSide.SELL&&e.canTrade?"oui-bg-danger-darken hover:oui-bg-danger-darken/80 active:oui-bg-danger-darken/80":"oui-bg-base-7 oui-text-base-contrast-36 hover:oui-bg-base-6 active:oui-bg-base-6"),"data-testid":"oui-testid-orderEntry-side-sell-button",children:Q("common.sell")}),$e&&jsxRuntime.jsx(ui.Button,{size:"md",fullWidth:true,trailing:jsxRuntime.jsx(ui.CaretRightIcon,{size:12,className:"oui-text-base-contrast-36"}),onClick:()=>{ui.modal.show(uiLeverage.LeverageWidgetWithSheetId,{currentLeverage:z});},className:ui.cn("oui-bg-base-7 oui-text-primary-light hover:oui-bg-base-6 active:oui-bg-base-6"),children:utils.commifyOptional(z,{fix:2})+"x"})]}),jsxRuntime.jsx("div",{className:"oui-w-full lg:oui-flex-1",children:jsxRuntime.jsx(Hn,{type:t.order_type,side:r,canTrade:e.canTrade,onChange:c=>{i("order_type",c);}})})]}),jsxRuntime.jsxs(ui.Flex,{itemAlign:"center",justify:"between",children:[jsxRuntime.jsx(ui.Text,{size:"2xs",children:Q("common.available")}),jsxRuntime.jsxs(ui.Flex,{itemAlign:"center",justify:"center",gap:1,children:[he&&jsxRuntime.jsx(ui.Tooltip,{className:"oui-bg-base-6 oui-p-2",content:jsxRuntime.jsx(Je,{}),children:jsxRuntime.jsx(ui.InfoCircleIcon,{className:"oui-cursor-pointer oui-text-warning oui-opacity-80"})}),jsxRuntime.jsx(ui.Text.numeral,{unit:n.quote,size:"2xs",className:"oui-text-base-contrast-80",unitClassName:"oui-ml-1 oui-text-base-contrast-54",dp:2,padding:false,children:e.canTrade?u:0})]})]}),t.order_type===types.OrderType.SCALED?jsxRuntime.jsx(ts,{type:e.type,symbolInfo:n,values:{order_quantity:t.order_quantity,total:t.total,side:t.side,end_price:t.end_price,start_price:t.start_price,total_orders:t.total_orders,distribution_type:t.distribution_type,skew:t.skew},onChange:(c,C)=>{e.setOrderValue(c,C);},onValuesChange:e.setOrderValues,onBlur:e.onBlur,onFocus:e.onFocus,parseErrorMsg:Ke,quantityUnit:e.quantityUnit,setQuantityUnit:e.setQuantityUnit,errors:M}):jsxRuntime.jsx(Yn,{type:e.type,symbolInfo:n,values:{order_quantity:t.order_quantity,price:t.order_price,trigger_price:t.trigger_price,total:t.total,level:t.level,side:t.side,order_type_ext:t.order_type_ext},onChange:(c,C)=>{e.setOrderValue(c,C);},onValuesChange:e.setOrderValues,refs:e.refs,onBlur:e.onBlur,onFocus:e.onFocus,bbo:{bboStatus:y,bboType:l,onBBOChange:m,toggleBBO:S},priceInputContainerWidth:e.priceInputContainerWidth,parseErrorMsg:Ke,fillMiddleValue:L}),jsxRuntime.jsx(Kn,{canTrade:e.canTrade,maxQty:a,currentQtyPercentage:e.currentQtyPercentage,value:t.order_quantity?Number(t.order_quantity):0,tick:n.base_tick,dp:n.base_dp,setMaxQty:e.setMaxQty,onValueChange:c=>{i("order_quantity",c);},side:e.side}),jsxRuntime.jsx(ui.ThrottledButton,{fullWidth:true,id:"order-entry-submit-button","data-type":types.OrderSide.BUY,className:ui.cn(r===types.OrderSide.BUY?"orderly-order-entry-submit-button-buy oui-bg-success-darken hover:oui-bg-success-darken/80 active:oui-bg-success-darken/80":"orderly-order-entry-submit-button-sell oui-bg-danger-darken hover:oui-bg-danger-darken/80 active:oui-bg-danger-darken/80"),onClick:()=>{He();},loading:e.isMutating,disabled:!e.canTrade,children:le}),jsxRuntime.jsx(Zn,{canTrade:e.canTrade,quote:n.quote,estLiqPrice:e.estLiqPrice,estLeverage:e.estLeverage,currentLeverage:e.currentLeverage,slippage:_e,dp:n.quote_dp,setSlippage:gt,estSlippage:e.estSlippage,orderType:t.order_type,disableFeatures:T}),jsxRuntime.jsx(ui.Divider,{className:"oui-w-full"}),se?jsxRuntime.jsx(Xn,{order:t,symbolInfo:e.symbolInfo,errors:b?M:null,onEdit:()=>{ae(true);},onDelete:()=>{Tt();}}):jsxRuntime.jsx(Kr,{quote_dp:e.symbolInfo.quote_dp,switchState:e.tpslSwitch,onSwitchChanged:e.setTpslSwitch,orderType:t.order_type,errors:b?M:null,isReduceOnly:t.reduce_only,setOrderValue:e.setOrderValue,values:{position_type:t.position_type??types.PositionType.PARTIAL,tp:{trigger_price:t.tp_trigger_price??"",PnL:t.tp_pnl??"",Offset:t.tp_offset??"","Offset%":t.tp_offset_percentage??"",ROI:t.tp_ROI??""},sl:{trigger_price:t.sl_trigger_price??"",PnL:t.sl_pnl??"",Offset:t.sl_offset??"","Offset%":t.sl_offset_percentage??"",ROI:t.sl_ROI??""}},showTPSLAdvanced:bt,onChange:(c,C)=>{e.setOrderValue(c,C);}}),jsxRuntime.jsxs(ui.Flex,{justify:"between",itemAlign:"center",className:"!oui-mt-0 xl:!oui-mt-3",children:[jsxRuntime.jsxs(ui.Flex,{itemAlign:"center",gapX:1,children:[jsxRuntime.jsx(ui.Switch,{"data-testid":"oui-testid-orderEntry-reduceOnly-switch",className:"oui-h-[14px]",id:"reduceOnly",checked:e.formattedOrder.reduce_only,onCheckedChange:c=>{e.setOrderValue("reduce_only",c);}}),jsxRuntime.jsx("label",{htmlFor:"reduceOnly",className:"oui-text-xs",children:Q("orderEntry.reduceOnly")})]}),!je&&d]}),je&&jsxRuntime.jsxs(ui.Flex,{justify:"between",itemAlign:"center",className:"!oui-mt-0 xl:!oui-mt-3",children:[jsxRuntime.jsxs(ui.Flex,{itemAlign:"center",gapX:1,children:[jsxRuntime.jsx(ui.Switch,{className:"oui-h-[14px]",id:Ge,checked:E,onCheckedChange:c=>A(c)}),jsxRuntime.jsx("label",{htmlFor:Ge,className:"oui-text-xs",children:Q("orderEntry.soundAlerts")})]}),d]}),Te&&jsxRuntime.jsxs(ui.Box,{p:2,r:"md",intensity:700,position:"relative",children:[jsxRuntime.jsx(et,{pinned:Te,setPinned:ke,needConfirm:J,setNeedConfirm:xe,onValueChange:i,orderTypeExtra:t.order_type_ext,showExtra:t.order_type===types.OrderType.LIMIT&&!e.tpslSwitch,hidden:We,setHidden:Ye}),jsxRuntime.jsx(Wn,{onClick:()=>{ke(false);},className:"oui-absolute oui-right-2 oui-top-2 oui-group","data-testid":"oui-testid-orderEntry-pinned-button"})]})]}),jsxRuntime.jsx(ui.SimpleSheet,{open:ft,onOpenChange:ae,classNames:{body:"oui-h-full oui-pb-0 oui-border-none",overlay:"!oui-bg-base-10/60",content:ui.cn("oui-rounded-[16px] oui-border-none !oui-p-0",B?"oui-inset-y-0 oui-right-0 oui-w-[280px]":"!oui-bottom-[40px] oui-right-3 oui-top-[44px] !oui-h-auto oui-w-[360px]")},contentProps:{side:"right",closeable:false},children:jsxRuntime.jsx(uiTpsl.TPSLAdvancedWidget,{setOrderValue:i,order:t,onSubmit:xt,onClose:()=>{ae(false);}})})]})},jr="M10.007 1.302a.74.74 0 0 0-.486.214c-1.033.989-1.349 1.815-.972 2.948-.88.675-1.437.84-2.536.84-1.503 0-2.484.182-3.152.85v.02a1.583 1.583 0 0 0 0 2.248l1.867 1.882-3.181 3.18c-.26.26-.28.696-.02.956.261.26.699.26.959 0l3.193-3.194 1.87 1.861a1.585 1.585 0 0 0 2.25 0h.02c.668-.667.854-1.523.854-3.144 0-1.03.212-1.758.852-2.523 1.233.361 1.95.015 2.961-.995a.68.68 0 0 0 .188-.48c0-.234-.06-.593-.209-1.04a5.34 5.34 0 0 0-1.312-2.103 5.35 5.35 0 0 0-2.104-1.312c-.448-.15-.808-.208-1.042-.208",Wn=e=>{let[r,t]=Yr.useState(jr);return jsxRuntime.jsx("button",{...e,children:jsxRuntime.jsx("svg",{width:16,height:16,viewBox:"0 0 16 16",fill:"currentColor",xmlns:"http://www.w3.org/2000/svg",onMouseEnter:()=>{t('M10.008 1.302a.74.74 0 0 0-.486.214c-1.033.989-1.349 1.815-.972 2.948-.88.675-1.437.84-2.536.84-1.503 0-2.484.182-3.152.85v.02a1.583 1.583 0 0 0 0 2.248l1.867 1.882-3.181 3.18c-.26.26-.28.696-.02.956.261.26.699.26.959 0l3.193-3.194 1.87 1.861a1.585 1.585 0 0 0 2.25 0h.02c.668-.667.854-1.523.854-3.144 0-1.03.212-1.758.853-2.523 1.232.361 1.95.015 2.96-.995a.68.68 0 0 0 .188-.48c0-.234-.06-.593-.209-1.04a5.34 5.34 0 0 0-1.312-2.103A5.35 5.35 0 0 0 11.05 1.51c-.448-.15-.808-.208-1.042-.208m.258 1.37c.708.131 1.421.6 1.93 1.107.507.508.94 1.13 1.119 1.945-.636.61-1.026.658-1.662.323a.67.67 0 0 0-.779.117c-1.214 1.213-1.533 2.314-1.533 3.8 0 1.292-.076 1.773-.48 2.206-.113.123-.27.104-.374 0L3.799 7.486a.24.24 0 0 1-.017-.34c.239-.29.769-.515 2.226-.514 1.742.001 2.668-.448 3.812-1.52a.67.67 0 0 0 .125-.77c-.343-.686-.29-1.047.321-1.67"');},onMouseLeave:()=>{t(jr);},className:"oui-text-primary-darken ",children:jsxRuntime.jsx("path",{d:r})})})},Yn=e=>{let{type:r,symbolInfo:t,values:i,onFocus:s,onBlur:n,bbo:a,parseErrorMsg:u,fillMiddleValue:g}=e,{t:f}=i18n.useTranslation(),p=a.bboStatus==="on",y=r===types.OrderType.LIMIT?jsxRuntime.jsxs(ui.Flex,{direction:"column",itemAlign:"end",className:"oui-text-2xs",children:[t.quote,jsxRuntime.jsxs(ui.Flex,{justify:"end",itemAlign:"center",gap:2,children:[jsxRuntime.jsx(ui.Flex,{px:3,height:20,justify:"center",itemAlign:"center",r:"base",className:ui.cn("oui-mt-[2px] oui-cursor-pointer oui-select-none oui-border",a.bboStatus==="on"?"oui-border-primary":"oui-border-line-12",a.bboStatus==="disabled"&&"oui-cursor-not-allowed"),onClick:()=>{a.bboStatus==="disabled"?ui.modal.dialog({title:f("common.tips"),size:"xs",content:jsxRuntime.jsx(ui.Text,{intensity:54,children:f("orderEntry.bbo.disabled.tips")})}):a.toggleBBO();},children:jsxRuntime.jsx(ui.Text,{className:ui.cn(a.bboStatus==="on"&&"oui-text-primary",a.bboStatus==="off"&&"oui-text-base-contrast-54",a.bboStatus==="disabled"&&"oui-text-base-contrast-20"),children:f("orderEntry.bbo")})}),jsxRuntime.jsx(ui.Text,{className:ui.cn("oui-select-none","oui-cursor-pointer oui-text-primary"),onClick:g,children:"Mid"})]})]}):t.quote;return jsxRuntime.jsxs("div",{className:"oui-space-y-1",children:[r===types.OrderType.STOP_LIMIT||r===types.OrderType.STOP_MARKET?jsxRuntime.jsx("div",{className:"oui-group",children:jsxRuntime.jsx(Z,{label:f("common.trigger"),suffix:t.quote,error:u("trigger_price"),id:"trigger",ref:e.refs.triggerPriceInputRef,value:i.trigger_price,onChange:l=>{e.onChange("trigger_price",l);},formatters:[ui.inputFormatter.dpFormatter(t.quote_dp)],onFocus:s(1),onBlur:n(1)})}):null,r===types.OrderType.LIMIT||r===types.OrderType.STOP_LIMIT?jsxRuntime.jsxs("div",{ref:e.refs.priceInputContainerRef,className:"oui-relative oui-w-full oui-group",children:[jsxRuntime.jsx(Z,{label:f("common.price"),suffix:y,id:"price",value:i.price,error:u("order_price"),ref:e.refs.priceInputRef,onChange:l=>{e.onChange("order_price",l);},formatters:[ui.inputFormatter.dpFormatter(t.quote_dp)],onFocus:s(0),onBlur:n(0),readonly:p,classNames:{root:ui.cn(p&&"focus-within:oui-outline-transparent "),input:ui.cn(p&&"oui-cursor-auto")}}),a.bboStatus==="on"&&jsxRuntime.jsx("div",{className:ui.cn("oui-absolute oui-left-0 oui-bottom-1"),children:jsxRuntime.jsx(es,{value:a.bboType,onChange:a.onBBOChange,contentStyle:{width:e.priceInputContainerWidth}})})]}):null,jsxRuntime.jsxs(ui.Grid,{cols:2,className:"oui-group oui-space-x-1",children:[jsxRuntime.jsx(Z,{label:f("common.qty"),suffix:t.base,id:"order_quantity_input",name:"order_quantity_input",className:"!oui-rounded-r",value:i.order_quantity,error:u("order_quantity"),onChange:l=>{e.onChange("order_quantity",l);},formatters:[ui.inputFormatter.dpFormatter(t.base_dp)],onFocus:s(2),onBlur:n(2)}),jsxRuntime.jsx(Z,{label:`${f("common.total")}\u2248`,suffix:t.quote,id:"total",className:"!oui-rounded-l",value:i.total,error:u("total"),onChange:l=>{e.onChange("total",l);},onFocus:s(3),onBlur:n(3),formatters:[ui.inputFormatter.dpFormatter(t.quote_dp)]})]})]})},Z=Yr.forwardRef((e,r)=>{let{placeholder:t="0"}=e,{errorMsgVisible:i}=Yr.useContext(De);return jsxRuntime.jsx(ui.Input.tooltip,{ref:r,tooltip:i?e.error:void 0,autoComplete:"off",autoFocus:e.autoFocus,size:"lg",placeholder:e.readonly?"":t,id:e.id,name:e.name,color:e.error?"danger":void 0,prefix:jsxRuntime.jsx(Gn,{id:e.id,className:e.classNames?.prefix,children:e.label}),suffix:e.suffix,value:e.readonly?"":e.value||"",onValueChange:e.onChange,onFocus:s=>{e.onFocus?.(s);},onBlur:s=>{e.onBlur?.(s);},formatters:e.overrideFormatters||[...e.formatters??Qn,ui.inputFormatter.numberFormatter,ui.inputFormatter.currencyFormatter,ui.inputFormatter.decimalPointFormatter],classNames:{root:ui.cn("orderly-order-entry oui-relative oui-h-[54px] oui-rounded oui-border oui-border-solid oui-border-line oui-px-2 oui-py-1 group-first:oui-rounded-t-xl group-last:oui-rounded-b-xl",e.className,e.classNames?.root),input:ui.cn("oui-mb-1 oui-mt-5 oui-h-5",e?.classNames?.input),suffix:ui.cn("oui-absolute oui-right-0 oui-top-0 oui-justify-start oui-py-2 oui-text-2xs oui-text-base-contrast-36",e.classNames?.suffix)},readOnly:e.readonly})});Z.displayName="CustomInput";var Gn=e=>jsxRuntime.jsx("label",{htmlFor:e.id,className:ui.cn("oui-absolute oui-left-2 oui-top-[7px] oui-text-2xs oui-text-base-contrast-36",e.className),children:e.children}),Kn=e=>{let{canTrade:r}=e,{t}=i18n.useTranslation(),i=Yr.useMemo(()=>r?e.side===types.OrderSide.BUY?"buy":"sell":void 0,[e.side,r]),s=Yr.useMemo(()=>e.side===types.OrderSide.BUY?t("orderEntry.maxBuy"):t("orderEntry.maxSell"),[e.side,t]);return jsxRuntime.jsxs("div",{children:[jsxRuntime.jsx(ui.Slider.single,{disabled:e.maxQty===0||!r,value:e.value,color:i,markCount:4,showTip:true,max:e.maxQty,step:e.tick,onValueChange:e.onValueChange}),jsxRuntime.jsxs(ui.Flex,{justify:"between",className:"oui-pt-1 xl:oui-pt-2",children:[jsxRuntime.jsx(ui.Text.numeral,{rule:"percentages",size:"2xs",color:i,dp:2,padding:false,children:r?e.currentQtyPercentage:0}),jsxRuntime.jsxs(ui.Flex,{children:[jsxRuntime.jsx("button",{className:ui.textVariants({size:"2xs",className:"oui-mr-1"}),onClick:()=>e.setMaxQty(),"data-testid":"oui-testid-orderEntry-maxQty-value-button",children:s}),jsxRuntime.jsx(ui.Text.numeral,{size:"2xs",color:i,dp:e.dp,padding:false,"data-testid":"oui-testid-orderEntry-maxQty-value",children:r?e.maxQty:0})]})]})]})},Hn=e=>{let{t:r}=i18n.useTranslation(),t=Yr.useMemo(()=>[{label:r("orderEntry.orderType.limitOrder"),value:types.OrderType.LIMIT},{label:r("orderEntry.orderType.marketOrder"),value:types.OrderType.MARKET},{label:r("orderEntry.orderType.stopLimit"),value:types.OrderType.STOP_LIMIT},{label:r("orderEntry.orderType.stopMarket"),value:types.OrderType.STOP_MARKET},{label:r("orderEntry.orderType.scaledOrder"),value:types.OrderType.SCALED}],[r]),i=Yr.useMemo(()=>({[types.OrderType.LIMIT]:r("orderEntry.orderType.limit"),[types.OrderType.MARKET]:r("common.marketPrice"),[types.OrderType.STOP_LIMIT]:r("orderEntry.orderType.stopLimit"),[types.OrderType.STOP_MARKET]:r("orderEntry.orderType.stopMarket"),[types.OrderType.SCALED]:r("orderEntry.orderType.scaledOrder")}),[r]);return jsxRuntime.jsx(ui.Select.options,{testid:"oui-testid-orderEntry-orderType-button",currentValue:e.type,value:e.type,options:t,onValueChange:e.onChange,contentProps:{className:"oui-bg-base-8 oui-w-full"},valueFormatter:(s,n)=>{if(!t.find(g=>g.value===s))return jsxRuntime.jsx(ui.Text,{size:"xs",children:n.placeholder});let u=i[s];return jsxRuntime.jsx(ui.Text,{size:"xs",color:e.canTrade?e.side===types.OrderSide.BUY?"buy":"sell":void 0,children:u})},size:"md"})},$n=e=>jsxRuntime.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:e.size,height:e.size,viewBox:"0 0 12 12",fill:"currentColor",...e,children:jsxRuntime.jsx("path",{d:"M5.99903 0.976562C5.44653 0.976562 4.99903 1.42406 4.99903 1.97656H2.49902C2.22302 1.97656 1.99902 2.20056 1.99902 2.47656C1.99902 2.75256 2.22302 2.97656 2.49902 2.97656H9.49903C9.77503 2.97656 9.99903 2.75256 9.99903 2.47656C9.99903 2.20056 9.77503 1.97656 9.49903 1.97656H6.99903C6.99903 1.42406 6.55153 0.976562 5.99903 0.976562ZM2.49902 3.97655V8.97654C2.49902 10.0715 3.40152 10.961 4.49903 10.961L7.51453 10.9765C8.61203 10.9765 9.49903 10.074 9.49903 8.97654V3.97655H2.49902ZM4.99903 5.47655C5.27503 5.47655 5.49903 5.70055 5.49903 5.97655V8.97654C5.49903 9.25254 5.27503 9.47654 4.99903 9.47654C4.72303 9.47654 4.49903 9.25254 4.49903 8.97654V5.97655C4.49903 5.70055 4.72303 5.47655 4.99903 5.47655ZM6.99903 5.47655C7.27503 5.47655 7.49903 5.70055 7.49903 5.97655V8.97654C7.49903 9.25254 7.27503 9.47654 6.99903 9.47654C6.72303 9.47654 6.49903 9.25254 6.49903 8.97654V5.97655C6.49903 5.70055 6.72303 5.47655 6.99903 5.47655Z"})}),jn=e=>jsxRuntime.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 12 12",width:e.size,height:e.size,fill:"currentColor",...e,children:jsxRuntime.jsx("path",{d:"M8.49779 0.976562C8.36529 0.976562 8.23229 1.02357 8.13829 1.11707C7.86029 1.39507 6.85979 2.39558 6.63779 2.61808L2.13529 7.12059L1.63479 7.62059C1.56529 7.69059 1.52929 7.78958 1.50979 7.88658L1.00979 10.3881C0.939788 10.7381 1.23779 11.0361 1.58779 10.9666C1.90079 10.9036 3.77679 10.5286 4.08929 10.4661C4.18629 10.4466 4.28529 10.4106 4.35529 10.3411L4.85529 9.84059L9.35779 5.33808C9.58029 5.11608 10.5808 4.11506 10.8588 3.83756C10.9523 3.74356 10.9993 3.61056 10.9993 3.47806C10.9993 2.65956 10.7908 2.07456 10.3583 1.63306C9.92179 1.18756 9.33879 0.976562 8.49779 0.976562ZM8.69479 1.98606C9.14629 2.01256 9.43879 2.11608 9.63929 2.32108C9.84429 2.53008 9.97379 2.82008 10.0018 3.26258C9.72779 3.53608 9.32679 3.93106 8.99829 4.25956C8.60179 3.86306 8.11279 3.37407 7.71629 2.97757C8.04529 2.64907 8.42129 2.25956 8.69479 1.98606ZM6.99729 3.69657L8.27929 4.97858L4.49579 8.76207L3.21379 7.48009L6.99729 3.69657ZM2.49479 8.19908L3.77679 9.48107L3.72979 9.52809C3.39979 9.59409 2.73329 9.73359 2.11929 9.85659L2.44779 8.24608L2.49479 8.19908Z"})});function Xn(e){let{order:r,symbolInfo:t,onEdit:i,onDelete:s,errors:n}=e,{parseErrorMsg:a}=reactApp.useOrderEntryFormErrorMsg(n),{t:u}=i18n.useTranslation(),g=()=>{let p=a("tp_trigger_price");return r.tp_trigger_price||r.tp_order_price?jsxRuntime.jsxs(ui.Flex,{direction:"column",itemAlign:"start",className:"oui-w-full",gap:4,children:[jsxRuntime.jsxs(ui.Flex,{direction:"column",itemAlign:"start",justify:"between",gapY:1,className:"oui-w-full",children:[jsxRuntime.jsxs(ui.Flex,{justify:"between",className:"oui-w-full",children:[jsxRuntime.jsx(ui.Text,{children:u("tpsl.tpTriggerPrice")}),jsxRuntime.jsx(ui.Text.numeral,{suffix:jsxRuntime.jsx(ui.Text,{className:"oui-text-base-contrast-36 oui-ml-1",children:t.quote}),className:"oui-text-base-contrast",dp:t.quote_dp,children:r.tp_trigger_price??""})]}),jsxRuntime.jsxs(ui.Flex,{justify:"between",className:"oui-w-full",children:[jsxRuntime.jsx(ui.Text,{children:u("tpsl.tpOrderPrice")}),r.tp_order_type===types.OrderType.LIMIT?jsxRuntime.jsx(ui.Text.numeral,{suffix:jsxRuntime.jsx(ui.Text,{className:"oui-text-base-contrast-36 oui-ml-1",children:t.quote}),className:"oui-text-base-contrast",dp:t.quote_dp,children:r.tp_order_price??""}):jsxRuntime.jsx(ui.Text,{className:"oui-text-base-contrast",children:"Market"})]}),jsxRuntime.jsxs(ui.Flex,{justify:"between",className:"oui-w-full",children:[jsxRuntime.jsx(ui.Text,{children:u("tpsl.totalEstTpPnl")}),jsxRuntime.jsx(ui.Text.numeral,{suffix:jsxRuntime.jsx(ui.Text,{className:"oui-ml-1 oui-text-base-contrast-36",children:t.quote}),coloring:true,dp:2,children:Number(r.tp_pnl)})]})]}),p&&jsxRuntime.jsxs(ui.Flex,{justify:"start",itemAlign:"start",gap:2,className:"oui-w-full",children:[jsxRuntime.jsx("div",{className:"oui-relative oui-top-[7px] oui-w-1 oui-h-1 oui-bg-danger oui-rounded-full"}),jsxRuntime.jsx(ui.Text,{className:"oui-text-danger",children:p})]})]}):null},f=()=>{if(r.sl_trigger_price||r.sl_order_price){let p=a("sl_trigger_price");return jsxRuntime.jsx(ui.Flex,{direction:"column",itemAlign:"start",className:"oui-w-full",gap:4,children:jsxRuntime.jsxs(ui.Flex,{direction:"column",itemAlign:"start",justify:"between",gapY:1,className:"oui-w-full",children:[jsxRuntime.jsxs(ui.Flex,{justify:"between",className:"oui-w-full",children:[jsxRuntime.jsx(ui.Text,{children:u("tpsl.slTriggerPrice")}),jsxRuntime.jsx(ui.Text.numeral,{suffix:jsxRuntime.jsx(ui.Text,{className:"oui-text-base-contrast-36 oui-ml-1",children:t.quote}),className:"oui-text-base-contrast",dp:t.quote_dp,children:r.sl_trigger_price??""})]}),jsxRuntime.jsxs(ui.Flex,{justify:"between",className:"oui-w-full",children:[jsxRuntime.jsx(ui.Text,{children:u("tpsl.slOrderPrice")}),r.sl_order_type===types.OrderType.LIMIT?jsxRuntime.jsx(ui.Text.numeral,{suffix:jsxRuntime.jsx(ui.Text,{className:"oui-text-base-contrast-36 oui-ml-1",children:t.quote}),className:"oui-text-base-contrast",dp:t.quote_dp,children:r.sl_order_price??""}):jsxRuntime.jsx(ui.Text,{className:"oui-text-base-contrast",children:"Market"})]}),jsxRuntime.jsxs(ui.Flex,{justify:"between",className:"oui-w-full",children:[jsxRuntime.jsx(ui.Text,{children:u("tpsl.totalEstSlPnl")}),jsxRuntime.jsx(ui.Text.numeral,{coloring:true,suffix:jsxRuntime.jsx(ui.Text,{className:"oui-ml-1 oui-text-base-contrast-36",children:t.quote}),dp:2,children:Number(r.sl_pnl)})]}),p&&jsxRuntime.jsxs(ui.Flex,{justify:"start",itemAlign:"start",gap:2,className:"oui-w-full",children:[jsxRuntime.jsx("div",{className:"oui-relative oui-top-[7px] oui-w-1 oui-h-1 oui-bg-danger oui-rounded-full"}),jsxRuntime.jsx(ui.Text,{className:"oui-text-danger",children:p})]})]})})}return null};return jsxRuntime.jsxs(ui.Flex,{direction:"column",itemAlign:"start",className:"oui-w-full oui-text-2xs",gap:4,children:[jsxRuntime.jsxs(ui.Flex,{justify:"between",itemAlign:"start",className:"oui-w-full",children:[jsxRuntime.jsx(ui.Text,{children:u("tpsl.advanced.title")}),jsxRuntime.jsxs(ui.Flex,{gap:2,children:[jsxRuntime.jsx($n,{size:12,className:"oui-cursor-pointer oui-text-base-contrast-54 hover:oui-text-base-contrast",opacity:1,onClick:s}),jsxRuntime.jsx(jn,{size:12,className:"oui-cursor-pointer oui-text-base-contrast-54 hover:oui-text-base-contrast",onClick:i})]})]}),jsxRuntime.jsxs(ui.Flex,{justify:"between",itemAlign:"start",className:"oui-w-full",children:[jsxRuntime.jsx(ui.Text,{children:u("tpsl.mode")}),jsxRuntime.jsx(ui.Text,{className:"oui-text-base-contrast",children:r.position_type===types.PositionType.FULL?u("tpsl.fullPosition"):u("tpsl.partialPosition")})]}),g(),f(),jsxRuntime.jsx(ui.Divider,{className:"oui-w-full oui-mb-2"})]})}function Zn(e){let{canTrade:r}=e,{t}=i18n.useTranslation();return jsxRuntime.jsxs("div",{className:"oui-space-y-[2px] xl:oui-space-y-1",children:[jsxRuntime.jsxs(ui.Flex,{justify:"between",children:[jsxRuntime.jsx(ui.Text,{size:"2xs",children:t("orderEntry.estLiqPrice")}),jsxRuntime.jsx(ui.Text.numeral,{unit:e.quote,size:"2xs",dp:e.dp,className:"oui-text-base-contrast-80",unitClassName:"oui-ml-1 oui-text-base-contrast-36",children:r?e.estLiqPrice??"--":"--"})]}),jsxRuntime.jsxs(ui.Flex,{justify:"between",children:[jsxRuntime.jsx(ui.Text,{size:"2xs",children:t("leverage.accountLeverage")}),jsxRuntime.jsxs(ui.Flex,{gapX:1,className:ui.textVariants({size:"2xs",intensity:80}),children:[jsxRuntime.jsx(ui.Text.numeral,{unit:r?"x":void 0,children:r?e.currentLeverage??"--":"--"}),e.estLeverage&&jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:jsxRuntime.jsx("path",{d:"M2.505 4.997c0-.23.186-.416.416-.416H6.07L4.833 3.332l.586-.585 1.964 1.95a.42.42 0 0 1 .122.3.42.42 0 0 1-.122.3l-1.964 1.95-.586-.585L6.07 5.413H2.921a.416.416 0 0 1-.416-.416",fill:"#fff",fillOpacity:".54"})}),jsxRuntime.jsx("span",{children:`${e.estLeverage}x`})]})]})]}),e.orderType===types.OrderType.MARKET&&!e.disableFeatures?.includes("slippageSetting")&&jsxRuntime.jsx(kr,{slippage:e.slippage,setSlippage:e.setSlippage,estSlippage:e.estSlippage}),!e.disableFeatures?.includes("feesInfo")&&jsxRuntime.jsx(At,{})]})}var Jn=e=>{let[r,t]=Yr.useState(false);return jsxRuntime.jsxs(ui.PopoverRoot,{open:r,onOpenChange:t,children:[jsxRuntime.jsx(ui.PopoverTrigger,{asChild:true,children:jsxRuntime.jsx("button",{"data-testid":"oui-testid-orderEntry-additional-button",onClick:()=>{t(true);},children:jsxRuntime.jsx("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"currentColor",xmlns:"http://www.w3.org/2000/svg",className:"oui-fill-white/[.36] hover:oui-fill-white/80",children:jsxRuntime.jsx("path",{d:"M3.332 2.665a.667.667 0 0 0-.667.667v1.333c0 .368.299.667.667.667h1.333a.667.667 0 0 0 .667-.667V3.332a.667.667 0 0 0-.667-.667zm4 0a.667.667 0 0 0-.667.667v1.333c0 .368.299.667.667.667h1.333a.667.667 0 0 0 .667-.667V3.332a.667.667 0 0 0-.667-.667zm4 0a.667.667 0 0 0-.667.667v1.333c0 .368.299.667.667.667h1.333a.667.667 0 0 0 .667-.667V3.332a.667.667 0 0 0-.667-.667zm-8 4a.667.667 0 0 0-.667.667v1.333c0 .368.299.667.667.667h1.333a.667.667 0 0 0 .667-.667V7.332a.667.667 0 0 0-.667-.667zm4 0a.667.667 0 0 0-.667.667v1.333c0 .368.299.667.667.667h1.333a.667.667 0 0 0 .667-.667V7.332a.667.667 0 0 0-.667-.667zm4 0a.667.667 0 0 0-.667.667v1.333c0 .368.299.667.667.667h1.333a.667.667 0 0 0 .667-.667V7.332a.667.667 0 0 0-.667-.667zm-8 4a.667.667 0 0 0-.667.667v1.333c0 .368.299.667.667.667h1.333a.667.667 0 0 0 .667-.667v-1.333a.667.667 0 0 0-.667-.667zm4 0a.667.667 0 0 0-.667.667v1.333c0 .368.299.667.667.667h1.333a.667.667 0 0 0 .667-.667v-1.333a.667.667 0 0 0-.667-.667zm4 0a.667.667 0 0 0-.667.667v1.333c0 .368.299.667.667.667h1.333a.667.667 0 0 0 .667-.667v-1.333a.667.667 0 0 0-.667-.667z"})})})}),jsxRuntime.jsx(ui.PopoverContent,{side:"top",align:"end",className:"oui-w-[230px]",children:jsxRuntime.jsx(et,{...e})})]})},es=e=>{let{t:r}=i18n.useTranslation(),t=[{label:r("orderEntry.bbo.counterparty1"),value:types.BBOOrderType.COUNTERPARTY1},{label:r("orderEntry.bbo.counterparty5"),value:types.BBOOrderType.COUNTERPARTY5},{label:r("orderEntry.bbo.queue1"),value:types.BBOOrderType.QUEUE1},{label:r("orderEntry.bbo.queue5"),value:types.BBOOrderType.QUEUE5}];return jsxRuntime.jsx(ui.Select.options,{testid:"oui-testid-orderEntry-bbo-orderType-button",currentValue:e.value,value:e.value,options:t,onValueChange:e.onChange,contentProps:{className:"oui-bg-base-8 oui-w-full",style:e.contentStyle},size:"sm",classNames:{trigger:"oui-border-none oui-bg-transparent"},valueFormatter:(i,s)=>{let n=t.find(a=>a.value===i);return jsxRuntime.jsx(ui.Box,{children:jsxRuntime.jsx(ui.Text,{size:"sm",children:n?.label})})}})},ts=e=>{let{symbolInfo:r,values:t,onFocus:i,onBlur:s,parseErrorMsg:n,quantityUnit:a,setQuantityUnit:u,errors:g}=e,{base:f,quote:p,base_dp:y,quote_dp:l}=r,{t:m}=i18n.useTranslation(),S=a==="base",T=S?f:p,N=t.distribution_type===types.DistributionType.CUSTOM,L=jsxRuntime.jsx(Or,{base:f,quote:p,value:T,onValueChange:E=>{u(E===f?"base":"quote");}});return jsxRuntime.jsxs("div",{className:"oui-space-y-1",children:[jsxRuntime.jsx(Z,{label:m("orderEntry.startPrice"),suffix:p,id:"order_start_price_input",value:t.start_price,error:n("start_price"),onChange:E=>{e.onChange("start_price",E);},formatters:[ui.inputFormatter.dpFormatter(l)],onFocus:i(4),onBlur:s(4),classNames:{root:"oui-rounded-t-xl"}}),jsxRuntime.jsx(Z,{label:m("orderEntry.endPrice"),suffix:p,id:"order_end_price_input",value:t.end_price,error:n("end_price"),onChange:E=>{e.onChange("end_price",E);},formatters:[ui.inputFormatter.dpFormatter(l)],onFocus:i(5),onBlur:s(5)}),jsxRuntime.jsxs(ui.Grid,{cols:2,className:"oui-group oui-space-x-1",children:[S?jsxRuntime.jsx(Z,{label:m("common.qty"),suffix:L,id:"order_quantity_input",name:"order_quantity_input",className:"!oui-rounded-r",value:t.order_quantity,error:n("order_quantity",`${g?.order_quantity?.value} ${f}`),onChange:E=>{e.onChange("order_quantity",E);},formatters:[ui.inputFormatter.dpFormatter(y)],onFocus:i(2),onBlur:s(2)}):jsxRuntime.jsx(Z,{label:m("common.qty"),suffix:L,id:"order_total_input",name:"order_total_input",className:"!oui-rounded-r",value:t.total,error:n("order_quantity",`${g?.total?.value} ${p}`),onChange:E=>{e.onChange("total",E);},formatters:[ui.inputFormatter.dpFormatter(l)],onFocus:i(3),onBlur:s(3)}),jsxRuntime.jsx(Z,{label:m("orderEntry.totalOrders"),placeholder:"2-20",id:"order_total_orders_input",className:"!oui-rounded-l",value:t.total_orders,error:n("total_orders"),onChange:E=>{e.onChange("total_orders",E);},overrideFormatters:[ui.inputFormatter.numberFormatter,ui.inputFormatter.dpFormatter(0)],onFocus:i(6),onBlur:s(6)})]}),jsxRuntime.jsx(vr,{value:t.distribution_type,onValueChange:E=>{e.onChange("distribution_type",E);},className:ui.cn(!N&&"oui-rounded-b-xl")}),N&&jsxRuntime.jsx(Z,{id:"order_skew_input",label:m("orderEntry.skew"),value:t.skew,error:n("skew"),onChange:E=>{e.onChange("skew",E);},onFocus:i(7),onBlur:s(7),overrideFormatters:[ui.inputFormatter.rangeFormatter({min:0,max:100,dp:2}),ui.inputFormatter.dpFormatter(2)],classNames:{root:"oui-rounded-b-xl"}})]})};var ao=e=>Number.isNaN(Number(e))?0:Number(e),ys="orderly_order_sound_alert",Jt=e=>{let[r,t]=hooks.useLocalStorage("orderly-order-entry-order-type",types.OrderType.LIMIT),[i,s]=hooks.useLocalStorage("orderly-order-entry-order-side",types.OrderSide.BUY),[n,a]=hooks.useLocalStorage("orderly_order_bbo_type",void 0),[u,g]=hooks.useLocalStorage("orderly_order_quantity_unit","quote"),{notification:f}=hooks.useOrderlyContext(),[p,y]=hooks.useLocalStorage(ys,f?.orderFilled?.defaultOpen??false),l=Yr.useRef(n),{formattedOrder:m,setValue:S,setValues:T,symbolInfo:N,...L}=hooks.useOrderEntry(e.symbol,{initialOrder:{symbol:e.symbol,order_type:r,position_type:types.PositionType.PARTIAL,side:i}}),[E,A]=hooks.useLocalStorage("orderly-order-entry-tp_sl-switch",false),{state:z}=hooks.useAccount(),{wrongNetwork:Q,disabledConnect:B}=reactApp.useAppContext(),se=Yr.useMemo(()=>!Q&&!B&&(z.status===types.AccountStatusEnum.EnableTrading||z.status===types.AccountStatusEnum.EnableTradingWithoutConnected),[z.status,Q,B]),{currentLeverage:Y}=hooks.useMarginRatio(),M=hooks.useEventEmitter(),b=Yr.useRef(8),j=Yr.useRef(5),fe=Yr.useRef(null),J=Yr.useRef(null),xe=Yr.useRef(null),[Te,ke]=Yr.useState(0),ft=Yr.useMemo(()=>Number(m.order_quantity)>=Number(L.maxQty)?1:ui.convertValueToPercentage(Number(m.order_quantity??0),0,L.maxQty)/100,[m.order_quantity,L.maxQty]),ae=()=>{if(N.base_tick<1||m.order_type===types.OrderType.SCALED||!m.order_quantity)return;let d=hooks.utils.formatNumber(m?.order_quantity,new utils.Decimal(N?.base_tick||"0").toNumber());S("order_quantity",d,{shouldUpdateLastChangedField:false});},We=d=>P=>{b.current=d,[4,5].includes(b.current)&&(j.current=d);},Ye=d=>P=>{setTimeout(()=>{b.current===d&&(b.current=8);},300),d===2&&ae();},_e=()=>{T({tp_trigger_price:"",sl_trigger_price:"",position_type:types.PositionType.FULL});},gt=()=>{T({order_type_ext:void 0,position_type:types.PositionType.FULL});},yt=()=>{S("order_quantity",L.maxQty);},Ge=(d,P,c)=>{if(d==="order_type"&&t(P),d==="side"&&s(P),d==="reduce_only"&&P||d==="order_type"&&(P===types.OrderType.STOP_LIMIT||P===types.OrderType.STOP_MARKET)){let C={tp_trigger_price:"",sl_trigger_price:"",[d]:P};d==="order_type"&&(C.order_type_ext=""),T(C);return}if(d==="order_type"&&P!==types.OrderType.LIMIT){let C={level:void 0,order_type_ext:void 0,[d]:P};T(C);return}if(d==="order_type"&&P===types.OrderType.SCALED){T({distribution_type:types.DistributionType.FLAT,[d]:P});return}S(d,P,c);},Ke=d=>{A(d),d?gt():_e();},le=Yr.useMemo(()=>E||[types.OrderType.POST_ONLY,types.OrderType.IOC,types.OrderType.FOK].includes(m.order_type_ext)?"disabled":n&&m.order_type===types.OrderType.LIMIT?"on":"off",[E,m.order_type_ext,m.order_type,n]),He=()=>{n?(a(void 0),T({order_type_ext:void 0,level:void 0})):a(l.current||types.BBOOrderType.COUNTERPARTY1);},bt=d=>{a(d),l.current=d;};Yr.useEffect(()=>{if(le==="disabled"){let{order_type_ext:d}=m;T({order_type_ext:Be({order_type_ext:d})?void 0:d,level:void 0});}},[le,m.order_type_ext]),Yr.useEffect(()=>{if(le==="on"){let d=ir(n,m.side),P=nr(n);T({order_type_ext:d,level:P});}},[n,le,m.side]),Yr.useEffect(()=>{let d=P=>{S("order_price",P);};return M.on("update:orderPrice",d),()=>{M.off("update:orderPrice",d);}},[]),Yr.useEffect(()=>{let d=c=>{requestAnimationFrame(()=>{c?.focus();});},P=c=>{let C=utils.removeTrailingZeros(c[0]),{order_type:V,order_type_ext:Xe}=m;if(b.current===1&&(V===types.OrderType.STOP_LIMIT||V===types.OrderType.STOP_MARKET)){S("trigger_price",C),d(fe.current);return}if(Be({order_type:V,order_type_ext:Xe})){a(void 0),T({order_type_ext:void 0,level:void 0}),requestAnimationFrame(()=>{M.emit("update:orderPrice",C);}),d(J.current);return}if(V===types.OrderType.STOP_LIMIT||V===types.OrderType.LIMIT){S("order_price",C),d(J.current);return}if(V===types.OrderType.STOP_MARKET){S("trigger_price",C),d(fe.current);return}if(V===types.OrderType.MARKET){a(void 0),T({order_type:types.OrderType.LIMIT,order_price:C}),d(J.current);return}if(V===types.OrderType.SCALED&&j.current){let lo=j.current===4?"start_price":"end_price";S(lo,C),d(J.current);return}S("order_price",C),d(J.current);};return M.on("orderbook:item:click",P),()=>{M.off("orderbook:item:click",P);}},[m,N]),Yr.useEffect(()=>{let d=xe.current;if(!d)return;let P=new ResizeObserver(c=>{for(let C of c){let V=C.contentRect.width;V&&ke(V);}});return P.observe(d),()=>{P.unobserve(d);}},[xe,m.order_type_ext]),Yr.useEffect(()=>{L.reset(),L.resetMetaState();},[e.symbol]),Yr.useEffect(()=>{m.order_type===types.OrderType.SCALED&&!m.distribution_type&&S("distribution_type",types.DistributionType.FLAT);},[m.order_type,m.distribution_type]);let xt=hooks.useComputedLTV(),[Tt,$e]=Yr.useState([0,0]),he=hooks.useDebouncedCallback(d=>{$e([d.asks?.[d.asks.length-1]?.[0],d.bids?.[0]?.[0]]);},200);Yr.useEffect(()=>(M.on("orderbook:update",he),()=>{M.off("orderbook:update",he),he.cancel();}),[he]);let je=()=>{if(le==="on"&&He(),m.order_type===types.OrderType.LIMIT){let[d=0,P=0]=Tt,c=new utils.Decimal(ao(d)).add(ao(P)).div(2).toNumber();requestAnimationFrame(()=>{M.emit("update:orderPrice",c);});}};return {...L,currentQtyPercentage:ft,side:m.side,type:m.order_type,level:m.level,setOrderValue:Ge,setOrderValues:T,currentLeverage:Y,formattedOrder:m,tpslSwitch:E,setTpslSwitch:Ke,setMaxQty:yt,symbolInfo:N,onFocus:We,onBlur:Ye,refs:{triggerPriceInputRef:fe,priceInputRef:J,priceInputContainerRef:xe},canTrade:se,bboStatus:le,bboType:n,onBBOChange:bt,toggleBBO:He,priceInputContainerWidth:Te,currentLtv:xt,fillMiddleValue:je,quantityUnit:u,setQuantityUnit:g,symbol:e.symbol,soundAlert:p,setSoundAlert:y}};var bs=e=>{let r=Jt(e);return jsxRuntime.jsx(jt,{...r,containerRef:e.containerRef,disableFeatures:e.disableFeatures})};
21
+ var Qe=e=>{let{pinned:t,orderTypeExtra:r}=e,{t:o}=i18n.useTranslation(),i=n=>s=>{e.onValueChange&&e.onValueChange("order_type_ext",s?n:"");};return Li.useEffect(()=>{e.onValueChange?.("visible_quantity",e.hidden?0:1);},[e.hidden]),jsxRuntime.jsxs("div",{className:"oui-text-base-contrast-54",children:[jsxRuntime.jsxs(ui.Flex,{justify:t?"start":"between",mb:3,width:t?"unset":"100%",className:"oui-gap-x-2 md:oui-gap-x-3",wrap:"wrap",gapY:1,children:[jsxRuntime.jsxs(ui.Flex,{itemAlign:"center",children:[jsxRuntime.jsx(ui.Checkbox,{"data-testid":"oui-testid-orderEntry-postOnly-checkBox",id:"toggle_order_post_only",className:"oui-peer",color:"white",variant:"radio",disabled:!e.showExtra,checked:r===types.OrderType.POST_ONLY,onCheckedChange:i(types.OrderType.POST_ONLY)}),jsxRuntime.jsx("label",{htmlFor:"toggle_order_post_only",className:ui.cn("oui-ml-1 oui-text-2xs peer-data-[disabled]:oui-text-base-contrast-20","oui-whitespace-nowrap oui-break-normal"),children:o("orderEntry.orderType.postOnly")})]}),jsxRuntime.jsxs(ui.Flex,{itemAlign:"center",children:[jsxRuntime.jsx(ui.Checkbox,{"data-testid":"oui-testid-orderEntry-ioc-checkBox",id:"toggle_order_iov",color:"white",className:"oui-peer",variant:"radio",checked:r===types.OrderType.IOC,onCheckedChange:i(types.OrderType.IOC),disabled:!e.showExtra}),jsxRuntime.jsx("label",{htmlFor:"toggle_order_iov",className:ui.cn("oui-ml-1 oui-text-2xs peer-data-[disabled]:oui-text-base-contrast-20","oui-whitespace-nowrap oui-break-normal"),children:o("orderEntry.orderType.ioc")})]}),jsxRuntime.jsxs(ui.Flex,{itemAlign:"center",children:[jsxRuntime.jsx(ui.Checkbox,{"data-testid":"oui-testid-orderEntry-fox-checkBox",id:"toggle_order_fok",color:"white",variant:"radio",className:"oui-peer",checked:r===types.OrderType.FOK,onCheckedChange:i(types.OrderType.FOK),disabled:!e.showExtra}),jsxRuntime.jsx("label",{htmlFor:"toggle_order_fok",className:ui.cn("oui-ml-1 oui-text-2xs peer-data-[disabled]:oui-text-base-contrast-20","oui-whitespace-nowrap oui-break-normal"),children:o("orderEntry.orderType.fok")})]})]}),jsxRuntime.jsxs(ui.Flex,{gapX:6,children:[jsxRuntime.jsxs(ui.Flex,{children:[jsxRuntime.jsx(ui.Checkbox,{"data-testid":"oui-testid-orderEntry-orderConfirm-checkBox",id:"toggle_order_confirm",color:"white",checked:e.needConfirm,onCheckedChange:n=>{e.setNeedConfirm(!!n);}}),jsxRuntime.jsx("label",{htmlFor:"toggle_order_confirm",className:"oui-ml-1 oui-text-2xs",children:o("orderEntry.orderConfirm")})]}),jsxRuntime.jsxs(ui.Flex,{children:[jsxRuntime.jsx(ui.Checkbox,{"data-testid":"oui-testid-orderEntry-hidden-checkBox",id:"toggle_order_hidden",color:"white",checked:e.hidden,onCheckedChange:n=>{e.setHidden(n);}}),jsxRuntime.jsx("label",{htmlFor:"toggle_order_hidden",className:"oui-ml-1 oui-text-2xs",children:o("orderEntry.hidden")})]})]}),!t&&jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(ui.Divider,{className:"oui-my-3"}),jsxRuntime.jsxs(ui.Flex,{children:[jsxRuntime.jsx(ui.Switch,{"data-testid":"oui-testid-orderEntry-additional-keepVisible-switch",id:"toggle_order_keep_visible",onCheckedChange:n=>{e.setPinned(n);}}),jsxRuntime.jsx("label",{htmlFor:"toggle_order_keep_visible",className:"oui-ml-1 oui-text-2xs",children:o("orderEntry.keepVisible")})]})]})]})};function jr(e){let[t,r]=Li.useState(false);return jsxRuntime.jsxs(ui.PopoverRoot,{open:t,onOpenChange:r,children:[jsxRuntime.jsx(ui.PopoverTrigger,{asChild:true,children:jsxRuntime.jsx("button",{"data-testid":"oui-testid-orderEntry-additional-button",onClick:()=>{r(true);},children:jsxRuntime.jsx("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"currentColor",xmlns:"http://www.w3.org/2000/svg",className:"oui-fill-white/[.36] hover:oui-fill-white/80",children:jsxRuntime.jsx("path",{d:"M3.332 2.665a.667.667 0 0 0-.667.667v1.333c0 .368.299.667.667.667h1.333a.667.667 0 0 0 .667-.667V3.332a.667.667 0 0 0-.667-.667zm4 0a.667.667 0 0 0-.667.667v1.333c0 .368.299.667.667.667h1.333a.667.667 0 0 0 .667-.667V3.332a.667.667 0 0 0-.667-.667zm4 0a.667.667 0 0 0-.667.667v1.333c0 .368.299.667.667.667h1.333a.667.667 0 0 0 .667-.667V3.332a.667.667 0 0 0-.667-.667zm-8 4a.667.667 0 0 0-.667.667v1.333c0 .368.299.667.667.667h1.333a.667.667 0 0 0 .667-.667V7.332a.667.667 0 0 0-.667-.667zm4 0a.667.667 0 0 0-.667.667v1.333c0 .368.299.667.667.667h1.333a.667.667 0 0 0 .667-.667V7.332a.667.667 0 0 0-.667-.667zm4 0a.667.667 0 0 0-.667.667v1.333c0 .368.299.667.667.667h1.333a.667.667 0 0 0 .667-.667V7.332a.667.667 0 0 0-.667-.667zm-8 4a.667.667 0 0 0-.667.667v1.333c0 .368.299.667.667.667h1.333a.667.667 0 0 0 .667-.667v-1.333a.667.667 0 0 0-.667-.667zm4 0a.667.667 0 0 0-.667.667v1.333c0 .368.299.667.667.667h1.333a.667.667 0 0 0 .667-.667v-1.333a.667.667 0 0 0-.667-.667zm4 0a.667.667 0 0 0-.667.667v1.333c0 .368.299.667.667.667h1.333a.667.667 0 0 0 .667-.667v-1.333a.667.667 0 0 0-.667-.667z"})})})}),jsxRuntime.jsx(ui.PopoverContent,{side:"top",align:"end",className:"oui-w-[230px]",children:jsxRuntime.jsx(Qe,{...e})})]})}var Xr="M10.007 1.302a.74.74 0 0 0-.486.214c-1.033.989-1.349 1.815-.972 2.948-.88.675-1.437.84-2.536.84-1.503 0-2.484.182-3.152.85v.02a1.583 1.583 0 0 0 0 2.248l1.867 1.882-3.181 3.18c-.26.26-.28.696-.02.956.261.26.699.26.959 0l3.193-3.194 1.87 1.861a1.585 1.585 0 0 0 2.25 0h.02c.668-.667.854-1.523.854-3.144 0-1.03.212-1.758.852-2.523 1.233.361 1.95.015 2.961-.995a.68.68 0 0 0 .188-.48c0-.234-.06-.593-.209-1.04a5.34 5.34 0 0 0-1.312-2.103 5.35 5.35 0 0 0-2.104-1.312c-.448-.15-.808-.208-1.042-.208",Jr=e=>{let[t,r]=Li.useState(Xr);return jsxRuntime.jsx("button",{...e,children:jsxRuntime.jsx("svg",{width:16,height:16,viewBox:"0 0 16 16",fill:"currentColor",xmlns:"http://www.w3.org/2000/svg",focusable:false,onMouseEnter:()=>{r('M10.008 1.302a.74.74 0 0 0-.486.214c-1.033.989-1.349 1.815-.972 2.948-.88.675-1.437.84-2.536.84-1.503 0-2.484.182-3.152.85v.02a1.583 1.583 0 0 0 0 2.248l1.867 1.882-3.181 3.18c-.26.26-.28.696-.02.956.261.26.699.26.959 0l3.193-3.194 1.87 1.861a1.585 1.585 0 0 0 2.25 0h.02c.668-.667.854-1.523.854-3.144 0-1.03.212-1.758.853-2.523 1.232.361 1.95.015 2.96-.995a.68.68 0 0 0 .188-.48c0-.234-.06-.593-.209-1.04a5.34 5.34 0 0 0-1.312-2.103A5.35 5.35 0 0 0 11.05 1.51c-.448-.15-.808-.208-1.042-.208m.258 1.37c.708.131 1.421.6 1.93 1.107.507.508.94 1.13 1.119 1.945-.636.61-1.026.658-1.662.323a.67.67 0 0 0-.779.117c-1.214 1.213-1.533 2.314-1.533 3.8 0 1.292-.076 1.773-.48 2.206-.113.123-.27.104-.374 0L3.799 7.486a.24.24 0 0 1-.017-.34c.239-.29.769-.515 2.226-.514 1.742.001 2.668-.448 3.812-1.52a.67.67 0 0 0 .125-.77c-.343-.686-.29-1.047.321-1.67"');},onMouseLeave:()=>{r(Xr);},className:"oui-text-primary-darken",children:jsxRuntime.jsx("path",{d:t})})})};function to(e){let{order:t,symbolInfo:r,onEdit:o,onDelete:i,errors:n}=e,{getErrorMsg:s}=reactApp.useOrderEntryFormErrorMsg(n),{t:a}=i18n.useTranslation(),u=()=>{let d=s("tp_trigger_price");return t.tp_trigger_price||t.tp_order_price?jsxRuntime.jsxs(ui.Flex,{direction:"column",itemAlign:"start",className:"oui-w-full",gap:4,children:[jsxRuntime.jsxs(ui.Flex,{direction:"column",itemAlign:"start",justify:"between",gapY:1,className:"oui-w-full",children:[jsxRuntime.jsxs(ui.Flex,{justify:"between",className:"oui-w-full",children:[jsxRuntime.jsx(ui.Text,{children:a("tpsl.tpTriggerPrice")}),jsxRuntime.jsx(ui.Text.numeral,{suffix:jsxRuntime.jsx(ui.Text,{className:"oui-ml-1 oui-text-base-contrast-36",children:r.quote}),className:"oui-text-base-contrast",dp:r.quote_dp,children:t.tp_trigger_price??""})]}),jsxRuntime.jsxs(ui.Flex,{justify:"between",className:"oui-w-full",children:[jsxRuntime.jsx(ui.Text,{children:a("tpsl.tpOrderPrice")}),t.tp_order_type===types.OrderType.LIMIT?jsxRuntime.jsx(ui.Text.numeral,{suffix:jsxRuntime.jsx(ui.Text,{className:"oui-ml-1 oui-text-base-contrast-36",children:r.quote}),className:"oui-text-base-contrast",dp:r.quote_dp,children:t.tp_order_price??""}):jsxRuntime.jsx(ui.Text,{className:"oui-text-base-contrast",children:"Market"})]}),jsxRuntime.jsxs(ui.Flex,{justify:"between",className:"oui-w-full",children:[jsxRuntime.jsx(ui.Text,{children:a("tpsl.totalEstTpPnl")}),jsxRuntime.jsx(ui.Text.numeral,{suffix:jsxRuntime.jsx(ui.Text,{className:"oui-ml-1 oui-text-base-contrast-36",children:r.quote}),coloring:true,dp:2,children:Number(t.tp_pnl)})]})]}),d&&jsxRuntime.jsxs(ui.Flex,{justify:"start",itemAlign:"start",gap:2,className:"oui-w-full",children:[jsxRuntime.jsx("div",{className:"oui-relative oui-top-[7px] oui-size-1 oui-rounded-full oui-bg-danger"}),jsxRuntime.jsx(ui.Text,{className:"oui-text-danger",children:d})]})]}):null},l=()=>{if(t.sl_trigger_price||t.sl_order_price){let d=s("sl_trigger_price");return jsxRuntime.jsx(ui.Flex,{direction:"column",itemAlign:"start",className:"oui-w-full",gap:4,children:jsxRuntime.jsxs(ui.Flex,{direction:"column",itemAlign:"start",justify:"between",gapY:1,className:"oui-w-full",children:[jsxRuntime.jsxs(ui.Flex,{justify:"between",className:"oui-w-full",children:[jsxRuntime.jsx(ui.Text,{children:a("tpsl.slTriggerPrice")}),jsxRuntime.jsx(ui.Text.numeral,{suffix:jsxRuntime.jsx(ui.Text,{className:"oui-ml-1 oui-text-base-contrast-36",children:r.quote}),className:"oui-text-base-contrast",dp:r.quote_dp,children:t.sl_trigger_price??""})]}),jsxRuntime.jsxs(ui.Flex,{justify:"between",className:"oui-w-full",children:[jsxRuntime.jsx(ui.Text,{children:a("tpsl.slOrderPrice")}),t.sl_order_type===types.OrderType.LIMIT?jsxRuntime.jsx(ui.Text.numeral,{suffix:jsxRuntime.jsx(ui.Text,{className:"oui-ml-1 oui-text-base-contrast-36",children:r.quote}),className:"oui-text-base-contrast",dp:r.quote_dp,children:t.sl_order_price??""}):jsxRuntime.jsx(ui.Text,{className:"oui-text-base-contrast",children:"Market"})]}),jsxRuntime.jsxs(ui.Flex,{justify:"between",className:"oui-w-full",children:[jsxRuntime.jsx(ui.Text,{children:a("tpsl.totalEstSlPnl")}),jsxRuntime.jsx(ui.Text.numeral,{coloring:true,suffix:jsxRuntime.jsx(ui.Text,{className:"oui-ml-1 oui-text-base-contrast-36",children:r.quote}),dp:2,children:Number(t.sl_pnl)})]}),d&&jsxRuntime.jsxs(ui.Flex,{justify:"start",itemAlign:"start",gap:2,className:"oui-w-full",children:[jsxRuntime.jsx("div",{className:"oui-relative oui-top-[7px] oui-size-1 oui-rounded-full oui-bg-danger"}),jsxRuntime.jsx(ui.Text,{className:"oui-text-danger",children:d})]})]})})}return null};return jsxRuntime.jsxs(ui.Flex,{direction:"column",itemAlign:"start",className:"oui-w-full oui-text-2xs",gap:4,children:[jsxRuntime.jsxs(ui.Flex,{justify:"between",itemAlign:"start",className:"oui-w-full",children:[jsxRuntime.jsx(ui.Text,{children:a("tpsl.advanced.title")}),jsxRuntime.jsxs(ui.Flex,{gap:2,children:[jsxRuntime.jsx(un,{size:12,className:"oui-cursor-pointer oui-text-base-contrast-54 hover:oui-text-base-contrast",opacity:1,onClick:i}),jsxRuntime.jsx(dn,{size:12,className:"oui-cursor-pointer oui-text-base-contrast-54 hover:oui-text-base-contrast",onClick:o})]})]}),jsxRuntime.jsxs(ui.Flex,{justify:"between",itemAlign:"start",className:"oui-w-full",children:[jsxRuntime.jsx(ui.Text,{children:a("tpsl.mode")}),jsxRuntime.jsx(ui.Text,{className:"oui-text-base-contrast",children:t.position_type===types.PositionType.FULL?a("tpsl.fullPosition"):a("tpsl.partialPosition")})]}),u(),l(),jsxRuntime.jsx(ui.Divider,{className:"oui-mb-2 oui-w-full"})]})}var un=e=>jsxRuntime.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:e.size,height:e.size,viewBox:"0 0 12 12",fill:"currentColor",...e,children:jsxRuntime.jsx("path",{d:"M5.99903 0.976562C5.44653 0.976562 4.99903 1.42406 4.99903 1.97656H2.49902C2.22302 1.97656 1.99902 2.20056 1.99902 2.47656C1.99902 2.75256 2.22302 2.97656 2.49902 2.97656H9.49903C9.77503 2.97656 9.99903 2.75256 9.99903 2.47656C9.99903 2.20056 9.77503 1.97656 9.49903 1.97656H6.99903C6.99903 1.42406 6.55153 0.976562 5.99903 0.976562ZM2.49902 3.97655V8.97654C2.49902 10.0715 3.40152 10.961 4.49903 10.961L7.51453 10.9765C8.61203 10.9765 9.49903 10.074 9.49903 8.97654V3.97655H2.49902ZM4.99903 5.47655C5.27503 5.47655 5.49903 5.70055 5.49903 5.97655V8.97654C5.49903 9.25254 5.27503 9.47654 4.99903 9.47654C4.72303 9.47654 4.49903 9.25254 4.49903 8.97654V5.97655C4.49903 5.70055 4.72303 5.47655 4.99903 5.47655ZM6.99903 5.47655C7.27503 5.47655 7.49903 5.70055 7.49903 5.97655V8.97654C7.49903 9.25254 7.27503 9.47654 6.99903 9.47654C6.72303 9.47654 6.49903 9.25254 6.49903 8.97654V5.97655C6.49903 5.70055 6.72303 5.47655 6.99903 5.47655Z"})}),dn=e=>jsxRuntime.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 12 12",width:e.size,height:e.size,fill:"currentColor",...e,children:jsxRuntime.jsx("path",{d:"M8.49779 0.976562C8.36529 0.976562 8.23229 1.02357 8.13829 1.11707C7.86029 1.39507 6.85979 2.39558 6.63779 2.61808L2.13529 7.12059L1.63479 7.62059C1.56529 7.69059 1.52929 7.78958 1.50979 7.88658L1.00979 10.3881C0.939788 10.7381 1.23779 11.0361 1.58779 10.9666C1.90079 10.9036 3.77679 10.5286 4.08929 10.4661C4.18629 10.4466 4.28529 10.4106 4.35529 10.3411L4.85529 9.84059L9.35779 5.33808C9.58029 5.11608 10.5808 4.11506 10.8588 3.83756C10.9523 3.74356 10.9993 3.61056 10.9993 3.47806C10.9993 2.65956 10.7908 2.07456 10.3583 1.63306C9.92179 1.18756 9.33879 0.976562 8.49779 0.976562ZM8.69479 1.98606C9.14629 2.01256 9.43879 2.11608 9.63929 2.32108C9.84429 2.53008 9.97379 2.82008 10.0018 3.26258C9.72779 3.53608 9.32679 3.93106 8.99829 4.25956C8.60179 3.86306 8.11279 3.37407 7.71629 2.97757C8.04529 2.64907 8.42129 2.25956 8.69479 1.98606ZM6.99729 3.69657L8.27929 4.97858L4.49579 8.76207L3.21379 7.48009L6.99729 3.69657ZM2.49479 8.19908L3.77679 9.48107L3.72979 9.52809C3.39979 9.59409 2.73329 9.73359 2.11929 9.85659L2.44779 8.24608L2.49479 8.19908Z"})});var tt=Li__default.default.forwardRef((e,t)=>{let r=Li.useId();return jsxRuntime.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:14,height:14,viewBox:"0 0 14 14",fill:"currentColor",ref:t,focusable:false,...e,children:[jsxRuntime.jsx("path",{d:"M6.16411 1.53106C6.61974 1.07566 7.35888 1.07551 7.81442 1.53106L8.48833 2.20496C8.6797 2.39624 8.93064 2.51452 9.19755 2.54106L9.3132 2.54676H10.2662C10.9104 2.54691 11.4328 3.06926 11.4329 3.71343V4.66647C11.4329 4.97589 11.5559 5.27312 11.7747 5.49191L12.4492 6.16582C12.9047 6.62142 12.9047 7.36054 12.4492 7.81613L11.7753 8.49004L11.6972 8.57549C11.5272 8.78302 11.433 9.04426 11.4329 9.31491V10.2685L11.4272 10.3876C11.3715 10.9366 10.9348 11.373 10.3859 11.4289L10.2662 11.4352H9.3132L9.19755 11.4409C8.93066 11.4674 8.67969 11.5857 8.48833 11.777L7.81442 12.4509L7.72555 12.5306C7.29789 12.8795 6.68066 12.8794 6.25297 12.5306L6.16411 12.4509L5.4902 11.777C5.29887 11.5857 5.04786 11.4675 4.78097 11.4409L4.66533 11.4352H3.71171L3.59265 11.4289C3.04358 11.3731 2.60705 10.9367 2.55131 10.3876L2.54505 10.2685V9.31491C2.54499 9.04416 2.45089 8.78306 2.28072 8.57549L2.20325 8.49004L1.52934 7.81613C1.10213 7.38905 1.07534 6.71297 1.44902 6.25469L1.52934 6.16582L2.20382 5.49191C2.42248 5.27314 2.54505 4.97579 2.54505 4.66647V3.71343C2.54513 3.10945 3.00442 2.61221 3.59265 2.55246L3.71171 2.54676H4.66533L4.78097 2.54106C5.00968 2.51826 5.22694 2.4281 5.40475 2.28244L5.4902 2.20496L6.16411 1.53106ZM6.31507 3.02983C5.87756 3.46727 5.28401 3.71336 4.66533 3.71343H3.71171V4.66647C3.71171 5.28521 3.46614 5.87922 3.02869 6.31678L2.35421 6.99069L3.02812 7.6646C3.46577 8.10214 3.71164 8.69607 3.71171 9.31491V10.2685H4.66533C5.28396 10.2686 5.87757 10.5142 6.31507 10.9515L6.98898 11.6255L7.66289 10.9515C8.10045 10.5141 8.69446 10.2685 9.3132 10.2685H10.2662V9.31491C10.2663 8.69604 10.5127 8.10214 10.9504 7.6646L11.6243 6.99069L10.9498 6.31678C10.5122 5.8792 10.2662 5.28531 10.2662 4.66647V3.71343H9.3132C8.69438 3.71343 8.10047 3.46739 7.66289 3.02983L6.98898 2.35592L6.31507 3.02983ZM8.52934 4.64255C8.7571 4.41479 9.12639 4.41489 9.35421 4.64255C9.58202 4.87035 9.58202 5.23961 9.35421 5.46742L5.4657 9.35593C5.2379 9.58372 4.86863 9.58373 4.64083 9.35593C4.41318 9.12811 4.41308 8.75881 4.64083 8.53106L8.52934 4.64255ZM8.66435 7.83265C9.1245 7.83272 9.49777 8.2059 9.49777 8.66607C9.49769 9.12616 9.12445 9.49941 8.66435 9.49948C8.20419 9.49948 7.83101 9.12621 7.83094 8.66607C7.83094 8.20586 8.20415 7.83265 8.66435 7.83265ZM5.33126 4.49956C5.79141 4.49963 6.16468 4.87282 6.16468 5.33298C6.1646 5.79307 5.79136 6.16575 5.33126 6.16582C4.87111 6.16582 4.49793 5.79311 4.49785 5.33298C4.49785 4.87277 4.87106 4.49956 5.33126 4.49956Z",fill:`url(#${r})`}),jsxRuntime.jsx("defs",{children:jsxRuntime.jsxs("linearGradient",{id:r,x1:"12.7908",y1:"6.99084",x2:"1.1875",y2:"6.99084",gradientUnits:"userSpaceOnUse",children:[jsxRuntime.jsx("stop",{stopColor:"rgb(var(--oui-gradient-brand-end))"}),jsxRuntime.jsx("stop",{stopColor:"rgb(var(--oui-gradient-brand-start))",offset:1})]})})]})});process.env.NODE_ENV!=="production"&&(tt.displayName="EffectiveFee");var xn=e=>{let{content:t}=e,{isMobile:r}=ui.useScreen(),{t:o}=i18n.useTranslation();return r?jsxRuntime.jsx(tt,{onClick:()=>{ui.modal.dialog({title:o("common.tips"),content:t});}}):jsxRuntime.jsx(ui.Tooltip,{content:t,className:"oui-p-1.5 oui-text-base-contrast-54",children:jsxRuntime.jsx(tt,{className:"oui-cursor-pointer"})})},Ut=e=>{let{t}=i18n.useTranslation(),{effectiveTakerFee:r,effectiveMakerFee:o}=e,{widgetConfigs:i}=reactApp.useAppContext(),n=jsxRuntime.jsxs(ui.Flex,{itemAlign:"center",justify:"between",width:"100%",gap:1,children:[jsxRuntime.jsxs(ui.Flex,{width:"100%",itemAlign:"center",justify:"between",children:[jsxRuntime.jsx(ui.Text,{className:"oui-truncate",size:"2xs",children:t("common.fees")}),jsxRuntime.jsx(uiConnector.AuthGuard,{fallback:()=>jsxRuntime.jsxs(ui.Text,{className:"oui-truncate",size:"2xs",children:[t("portfolio.feeTier.column.taker"),": --% /"," ",t("portfolio.feeTier.column.maker"),": --%"]}),children:jsxRuntime.jsxs(ui.Flex,{gap:1,children:[jsxRuntime.jsxs(ui.Text,{className:"oui-truncate",size:"2xs",children:[t("portfolio.feeTier.column.taker"),":"]}),jsxRuntime.jsx(ui.Text,{size:"2xs",className:"oui-text-base-contrast-80",children:r}),jsxRuntime.jsx(ui.Text,{size:"2xs",children:"/"}),jsxRuntime.jsxs(ui.Text,{className:"oui-truncate",size:"2xs",children:[t("portfolio.feeTier.column.maker"),":"]}),jsxRuntime.jsx(ui.Text,{size:"2xs",className:"oui-text-base-contrast-80",children:o})]})})]}),jsxRuntime.jsx(xn,{content:t("portfolio.feeTier.effectiveFee.tooltip")})]}),s=i?.orderEntry?.fees?.trailing;return typeof s=="function"?s(n):n};var Qt=e=>jsxRuntime.jsx(Ut,{...e});var Gt=e=>{let{t}=i18n.useTranslation(),{takerFee:r,makerFee:o}=e,{widgetConfigs:i}=reactApp.useAppContext(),n=jsxRuntime.jsx(ui.Flex,{itemAlign:"center",justify:"between",width:"100%",gap:1,children:jsxRuntime.jsxs(ui.Flex,{width:"100%",itemAlign:"center",justify:"between",children:[jsxRuntime.jsx(ui.Text,{className:"oui-truncate",size:"2xs",children:t("common.fees")}),jsxRuntime.jsx(uiConnector.AuthGuard,{fallback:()=>jsxRuntime.jsxs(ui.Text,{className:"oui-truncate",size:"2xs",children:[t("portfolio.feeTier.column.taker"),": --% /"," ",t("portfolio.feeTier.column.maker"),": --%"]}),children:jsxRuntime.jsxs(ui.Flex,{gap:1,children:[jsxRuntime.jsxs(ui.Text,{className:"oui-truncate",size:"2xs",children:[t("portfolio.feeTier.column.taker"),":"]}),jsxRuntime.jsx(ui.Text,{size:"2xs",className:"oui-text-base-contrast-80",children:r}),jsxRuntime.jsx(ui.Text,{size:"2xs",children:"/"}),jsxRuntime.jsxs(ui.Text,{className:"oui-truncate",size:"2xs",children:[t("portfolio.feeTier.column.maker"),":"]}),jsxRuntime.jsx(ui.Text,{size:"2xs",className:"oui-text-base-contrast-80",children:o})]})})]})}),s=i?.orderEntry?.fees?.trailing;return typeof s=="function"?s(n):n};var Ht=e=>jsxRuntime.jsx(Gt,{...e});var Pn=e=>typeof e<"u"&&e!==null,Yt=()=>{let{refereeRebate:e,...t}=hooks.useFeeState();return Pn(e)?jsxRuntime.jsx(Qt,{...ramda.pick(["effectiveTakerFee","effectiveMakerFee"],t)}):jsxRuntime.jsx(Ht,{...ramda.pick(["takerFee","makerFee"],t)})};var uo=[.01,.05,.1],po=Li.forwardRef((e,t)=>{let{t:r}=i18n.useTranslation(),[o,i]=Li.useState(),[n,s]=Li.useState(""),[a,u]=Li.useState(void 0);Li.useImperativeHandle(t,()=>({getValue:()=>n?new utils.Decimal(n)?.toNumber():o})),Li.useEffect(()=>{e.initialValue&&!uo.includes(e.initialValue)?s(e.initialValue.toString()):i(e.initialValue);},[e.initialValue,open]);let l=m=>{i(m),s(""),u(void 0);},d=m=>{if(!m){s(m);return}let p=new utils.Decimal(m);i(void 0),p.gt(3)?(s("3"),u(r("orderEntry.slippage.error.exceed"))):(s(m),u(void 0));},c=e.isMobile?jsxRuntime.jsx("button",{onClick:()=>{ui.modal.alert({title:r("common.tips"),message:jsxRuntime.jsx(ui.Text,{size:"2xs",children:r("orderEntry.slippage.tips")})});},children:jsxRuntime.jsx(ui.ExclamationFillIcon,{className:"oui-text-base-contrast-54",size:16})}):jsxRuntime.jsx(ui.Tooltip,{content:jsxRuntime.jsx(ui.Text,{intensity:80,size:"2xs",children:r("orderEntry.slippage.tips")}),className:"oui-w-[260px] oui-bg-base-6",arrow:{className:"oui-fill-base-6"},children:jsxRuntime.jsx(ui.TooltipTrigger,{children:jsxRuntime.jsx(ui.ExclamationFillIcon,{className:"oui-text-base-contrast-54",size:16})})});return jsxRuntime.jsxs("div",{className:"oui-text-2xs",children:[jsxRuntime.jsxs(ui.Flex,{mb:2,gapX:1,children:[jsxRuntime.jsx(ui.Text,{size:"xs",children:r("orderEntry.slippage")}),c]}),jsxRuntime.jsxs(ui.Flex,{gapX:2,children:[uo.map(m=>jsxRuntime.jsx(An,{value:m,isActive:o===m,onClick:()=>{l(m);}},m)),jsxRuntime.jsx(ui.Input,{suffix:"%",formatters:[ui.inputFormatter.numberFormatter,ui.inputFormatter.dpFormatter(2)],value:n,onValueChange:d,classNames:{root:ui.cn("oui-rounded-md oui-bg-base-6","oui-h-[40px] oui-w-[74px]"),input:"oui-text-base-contrast",additional:"oui-pl-1"}})]}),!!a&&jsxRuntime.jsx(ui.Box,{mt:5,className:"-oui-mb-5",children:jsxRuntime.jsx(ui.Text,{size:"2xs",color:"danger",children:a})})]})}),An=({value:e,isActive:t,onClick:r})=>jsxRuntime.jsx(ui.Flex,{intensity:600,justify:"center",itemAlign:"center",r:"md",width:74,height:40,className:ui.cn("oui-cursor-pointer oui-select-none",t&&"oui-bg-primary-light"),onClick:r,children:jsxRuntime.jsxs(ui.Text,{size:"sm",intensity:80,children:[e,"%"]})});var mo=e=>{let{t}=i18n.useTranslation(),[r,{setTrue:o,setFalse:i,toggle:n}]=hooks.useBoolean(false),{isMobile:s}=ui.useScreen(),a=Li.useRef(null),u=()=>{let l=a.current?.getValue();return e.setSlippage(l?l.toString():"1"),i(),Promise.resolve(true)};return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(ui.SimpleDialog,{open:r,onOpenChange:n,title:t("common.settings"),contentProps:{size:s?"xs":"sm"},actions:{primary:{disabled:false,label:t("common.save"),onClick:u},secondary:{label:t("common.cancel"),onClick:()=>i()}},children:jsxRuntime.jsx(po,{ref:a,isMobile:s,initialValue:e.slippage?Number(e.slippage):void 0})}),jsxRuntime.jsxs(ui.Flex,{justify:"between",children:[jsxRuntime.jsx(ui.Text,{size:"2xs",children:t("orderEntry.slippage")}),jsxRuntime.jsx(uiConnector.AuthGuard,{fallback:()=>jsxRuntime.jsxs(ui.Text,{size:"2xs",children:[t("orderEntry.slippage.est"),": -% / ",t("common.max"),": --%"]}),children:jsxRuntime.jsxs(ui.Flex,{gap:1,children:[jsxRuntime.jsx(ui.Text.numeral,{size:"2xs",rule:"percentages",prefix:`${t("orderEntry.slippage.est")}: `,suffix:` / ${t("common.max")}: `,children:e.estSlippage??0}),jsxRuntime.jsx("button",{className:"oui-text-2xs",onClick:()=>o(),children:jsxRuntime.jsxs(ui.Flex,{className:"oui-gap-0.5",as:"span",children:[jsxRuntime.jsx(ui.Text,{size:"2xs",className:"oui-text-primary",children:`${e.slippage||"-"}%`}),jsxRuntime.jsx(ui.EditIcon,{className:"oui-text-primary oui-hidden md:oui-block",size:12,opacity:1})]})})]})})]})]})};var fo=e=>jsxRuntime.jsx(mo,{...e});function go(e){let{canTrade:t,disableFeatures:r,orderType:o}=e,{t:i}=i18n.useTranslation();return jsxRuntime.jsxs("div",{className:"oui-space-y-[2px] xl:oui-space-y-1",children:[jsxRuntime.jsxs(ui.Flex,{justify:"between",children:[jsxRuntime.jsx(ui.Text,{size:"2xs",children:i("orderEntry.estLiqPrice")}),jsxRuntime.jsx(ui.Text.numeral,{unit:e.quote,size:"2xs",dp:e.dp,className:"oui-text-base-contrast-80",unitClassName:"oui-ml-1 oui-text-base-contrast-36",children:t?e.estLiqPrice??"--":"--"})]}),jsxRuntime.jsxs(ui.Flex,{justify:"between",children:[jsxRuntime.jsx(ui.Text,{size:"2xs",children:i("leverage.accountLeverage")}),jsxRuntime.jsxs(ui.Flex,{gapX:1,className:ui.textVariants({size:"2xs",intensity:80}),children:[jsxRuntime.jsx(ui.Text.numeral,{unit:t?"x":void 0,children:t?e.currentLeverage??"--":"--"}),e.estLeverage&&jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:jsxRuntime.jsx("path",{d:"M2.505 4.997c0-.23.186-.416.416-.416H6.07L4.833 3.332l.586-.585 1.964 1.95a.42.42 0 0 1 .122.3.42.42 0 0 1-.122.3l-1.964 1.95-.586-.585L6.07 5.413H2.921a.416.416 0 0 1-.416-.416",fill:"#fff",fillOpacity:".54"})}),jsxRuntime.jsx("span",{children:`${e.estLeverage}x`})]})]})]}),o===types.OrderType.MARKET&&!r?.includes("slippageSetting")&&jsxRuntime.jsx(fo,{slippage:e.slippage,setSlippage:e.setSlippage,estSlippage:e.estSlippage}),!r?.includes("feesInfo")&&jsxRuntime.jsx(Yt,{})]})}var Jn=e=>e>=0&&e<50?"oui-text-success":e>=50&&e<80?"oui-text-warning":e>=80?"oui-text-danger":"",Xt=e=>{let{t}=i18n.useTranslation(),{ltv_threshold:r,negative_usdc_threshold:o,isThresholdLoading:i,holdingData:n=[],currentLtv:s,onConvert:a}=e;return jsxRuntime.jsxs(ui.Flex,{gap:1,className:"oui-w-72 oui-max-w-72",direction:"column",children:[jsxRuntime.jsxs(ui.Flex,{width:"100%",justify:"between",itemAlign:"center",children:[jsxRuntime.jsx(ui.Text,{intensity:36,size:"xs",children:t("common.assets")}),jsxRuntime.jsx(ui.Text,{intensity:36,size:"xs",children:t("transfer.deposit.collateralContribution")})]}),n.map((u,l)=>jsxRuntime.jsxs(ui.Flex,{width:"100%",justify:"between",itemAlign:"center",children:[jsxRuntime.jsx(ui.Text,{intensity:80,size:"xs",children:u.token}),jsxRuntime.jsx(ui.Text,{size:"xs",intensity:80,className:ui.cn(Number(u.collateralContribution)<0&&"oui-text-warning"),children:utils.removeTrailingZeros(u.collateralContribution)})]},`item-${l}`)),jsxRuntime.jsx(ui.Divider,{className:"oui-w-full"}),jsxRuntime.jsxs(ui.Flex,{width:"100%",justify:"between",itemAlign:"center",children:[jsxRuntime.jsx(ui.Text,{intensity:36,size:"xs",children:t("transfer.LTV.currentLTV")}),jsxRuntime.jsxs(ui.Text,{size:"xs",intensity:36,className:ui.cn("oui-select-none",Jn(s)),children:[s,"%"]})]}),jsxRuntime.jsx(ui.Text,{className:"oui-py-2",intensity:54,size:"2xs",children:t("transfer.LTV.tooltip",{threshold:i?"-":r,usdcThreshold:i?"-":o})}),jsxRuntime.jsx(ui.Button,{fullWidth:true,size:"md",variant:"outlined",color:"secondary",onClick:a,children:t("transfer.convert.convertAssets")})]})};var us=()=>{let{data:e,error:t,isLoading:r}=hooks.useQuery("/v1/public/auto_convert_threshold",{errorRetryCount:3});return {ltv_threshold:new utils.Decimal(e?.ltv_threshold??0).mul(100).toNumber(),negative_usdc_threshold:e?.negative_usdc_threshold,isLoading:r,error:t}},Jt=()=>{let{data:e=[],isLoading:t}=hooks.useHoldingStream(),{ltv_threshold:r,negative_usdc_threshold:o,isLoading:i}=us(),n=hooks.useTokensInfo(),{getIndexPrice:s}=hooks.useIndexPricesStream(),a=e.map(d=>{let c=n?.find(({token:T})=>T===d.token),m=s(d.token),p=c?perp.account.collateralRatio({baseWeight:c.base_weight??0,discountFactor:c.discount_factor??0,collateralQty:d.holding,collateralCap:c?.user_max_qty??d.holding,indexPrice:m}):utils.zero,C=perp.account.collateralContribution({collateralQty:d.holding,collateralCap:c?.user_max_qty??d.holding,collateralRatio:p.toNumber(),indexPrice:m});return {...d,collateralContribution:C}}),u=hooks.useComputedLTV(),l=Li.useCallback(async()=>ui.modal.show("ConvertDialogId"),[]);return {holdingData:a,isHoldingLoading:t,ltv_threshold:r,negative_usdc_threshold:o,isThresholdLoading:i,currentLtv:u,onConvert:l}};var st=()=>{let e=Jt();return jsxRuntime.jsx(Xt,{...e})};var Co=e=>{let{canTrade:t,currentLtv:r,quote:o,freeCollateral:i}=e,{t:n}=i18n.useTranslation(),s=Li.useMemo(()=>typeof r=="number"&&!Number.isNaN(r)&&r>0,[r]);return jsxRuntime.jsxs(ui.Flex,{itemAlign:"center",justify:"between",children:[jsxRuntime.jsx(ui.Text,{size:"2xs",children:n("common.available")}),jsxRuntime.jsxs(ui.Flex,{itemAlign:"center",justify:"center",gap:1,children:[s&&jsxRuntime.jsx(ui.Tooltip,{className:"oui-bg-base-6 oui-p-2",content:jsxRuntime.jsx(st,{}),children:jsxRuntime.jsx(ui.InfoCircleIcon,{className:"oui-cursor-pointer oui-text-warning oui-opacity-80"})}),jsxRuntime.jsx(ui.Text.numeral,{unit:o,size:"2xs",className:"oui-text-base-contrast-80",unitClassName:"oui-ml-1 oui-text-base-contrast-54",dp:2,padding:false,children:t?i:0})]})]})};function ke(e){let{order_type:t,order_type_ext:r}=e,o=[types.OrderType.ASK,types.OrderType.BID].includes(r);return t?t===types.OrderType.LIMIT&&o:o}function Oo(e,t){if([types.BBOOrderType.COUNTERPARTY1,types.BBOOrderType.COUNTERPARTY5].includes(e))return t===types.OrderSide.BUY?types.OrderType.ASK:types.OrderType.BID;if([types.BBOOrderType.QUEUE1,types.BBOOrderType.QUEUE5].includes(e))return t===types.OrderSide.BUY?types.OrderType.BID:types.OrderType.ASK}function vo(e){if([types.BBOOrderType.COUNTERPARTY1,types.BBOOrderType.QUEUE1].includes(e))return types.OrderLevel.ONE;if([types.BBOOrderType.COUNTERPARTY5,types.BBOOrderType.QUEUE5].includes(e))return types.OrderLevel.FIVE}function ho(e){let{type:t,side:r,level:o}=e;if(t===types.OrderType.ASK){if(o===types.OrderLevel.ONE)return r===types.OrderSide.BUY?types.BBOOrderType.COUNTERPARTY1:types.BBOOrderType.QUEUE1;if(o===types.OrderLevel.FIVE)return r===types.OrderSide.BUY?types.BBOOrderType.COUNTERPARTY5:types.BBOOrderType.QUEUE5}if(t===types.OrderType.BID){if(o===types.OrderLevel.ONE)return r===types.OrderSide.BUY?types.BBOOrderType.QUEUE1:types.BBOOrderType.COUNTERPARTY1;if(o===types.OrderLevel.FIVE)return r===types.OrderSide.BUY?types.BBOOrderType.QUEUE5:types.BBOOrderType.COUNTERPARTY5}}function Po(e){let t=e?.data?.rows||[];if(t.length>0){let r=t.length,o=t.filter(i=>i.success).length;return o===r?i18n.i18n.t("orderEntry.scaledOrder.fullySuccessful",{total:r}):o===0?i18n.i18n.t("orderEntry.scaledOrder.allFailed"):i18n.i18n.t("orderEntry.scaledOrder.partiallySuccessful",{successCount:o,total:r})}}var tr=e=>Number.isNaN(Number(e))?0:Number(e);var nr=e=>{let{symbolInfo:t,order:r,onConfirm:o,onCancel:i}=e,{quote:n,quote_dp:s,base_dp:a}=t,{side:u,order_type:l,order_type_ext:d,level:c,symbol:m}=r,{t:p}=i18n.useTranslation(),[{rows:C}]=hooks.usePositionStream(m),P=C?.[0]?.position_qty,[O,E]=hooks.useLocalStorage("orderly_order_confirm",true),S=()=>r.position_type===types.PositionType.FULL?jsxRuntime.jsx(ui.Text,{children:p("tpsl.positionType.full")}):jsxRuntime.jsx(ui.Text,{children:p("tpsl.positionType.partial")}),X=()=>{if(l===types.OrderType.MARKET||l===types.OrderType.STOP_MARKET)return jsxRuntime.jsx(ui.Text,{intensity:80,children:p("common.marketPrice")});if(ke({order_type:l,order_type_ext:d})){let k=ho({type:d,side:u,level:c}),ae={[types.BBOOrderType.COUNTERPARTY1]:p("orderEntry.bbo.counterparty1"),[types.BBOOrderType.COUNTERPARTY5]:p("orderEntry.bbo.counterparty5"),[types.BBOOrderType.QUEUE1]:p("orderEntry.bbo.queue1"),[types.BBOOrderType.QUEUE5]:p("orderEntry.bbo.queue5")}[k];return jsxRuntime.jsx(ui.Text,{intensity:80,children:ae})}return jsxRuntime.jsx(ui.Text.numeral,{unit:n,rule:"price",className:"oui-text-base-contrast",unitClassName:"oui-text-base-contrast-36 oui-ml-1",dp:s,padding:false,children:r.order_price})},J=({price:k,isOrderPrice:ae,isEnable:ee,colorType:fe})=>ee?!k&&ae?jsxRuntime.jsx(ui.Text,{className:"oui-text-base-contrast-36",children:p("common.marketPrice")}):jsxRuntime.jsx(ui.Text.numeral,{unit:"USDC",rule:"price",className:ui.cn("oui-text-base-contrast",fe==="TP"?"oui-text-trade-profit":"oui-text-trade-loss"),unitClassName:"oui-text-base-contrast-36 oui-ml-1",dp:s,padding:false,children:k}):jsxRuntime.jsx(ui.Text,{className:"oui-text-base-contrast-36",children:"-- USDC"}),$=()=>{if(!P||!r.order_quantity)return null;let k=new utils.Decimal(r.order_quantity);return r.position_type===types.PositionType.FULL&&(k=k.plus(new utils.Decimal(P??0))),jsxRuntime.jsxs(ui.Flex,{justify:"between",children:[jsxRuntime.jsx(ui.Text,{children:r.position_type===types.PositionType.FULL?p("common.positionQty"):p("common.orderQty")}),jsxRuntime.jsx(ui.Text.numeral,{rule:"price",dp:a,padding:false,className:"oui-text-base-contrast",children:k.toNumber()})]})},se=()=>{if(l===types.OrderType.TRAILING_STOP){let{activated_price:k,callback_value:ae,callback_rate:ee}=r,fe=ee?jsxRuntime.jsxs(ui.Flex,{justify:"between",children:[jsxRuntime.jsx(ui.Text,{children:p("orderEntry.trailingRate")}),jsxRuntime.jsxs(ui.Text,{className:"oui-text-base-contrast",children:[ee,"%"]})]}):jsxRuntime.jsx(lt,{title:p("orderEntry.trailingValue"),value:ae,unit:n,dp:s});return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[k&&jsxRuntime.jsx(lt,{title:p("common.triggerPrice"),value:k,unit:n,dp:s}),fe]})}return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsxs(ui.Flex,{justify:"between",children:[jsxRuntime.jsx(ui.Text,{children:p("common.price")}),X()]}),jsxRuntime.jsx(lt,{title:p("common.estTotal"),value:r.total,unit:n,dp:s})]})},Y=jsxRuntime.jsxs(ui.Flex,{justify:"between",children:[jsxRuntime.jsx(ui.Text.formatted,{rule:"symbol",showIcon:true,children:r.symbol}),jsxRuntime.jsxs(ui.Flex,{justify:"end",gapX:1,children:[jsxRuntime.jsx(hs,{type:l}),u===types.OrderSide.BUY?jsxRuntime.jsx(ui.Badge,{color:"buy",size:"sm",children:p("common.buy")}):jsxRuntime.jsx(ui.Badge,{color:"sell",size:"sm",children:p("common.sell")})]})]}),Z=jsxRuntime.jsxs(ui.Flex,{justify:"between",children:[jsxRuntime.jsx(ui.Text,{children:p("common.orderQty")}),jsxRuntime.jsx(ui.Text.numeral,{rule:"price",dp:a,padding:false,className:"oui-text-base-contrast",children:r.order_quantity})]}),f=(l===types.OrderType.STOP_LIMIT||l===types.OrderType.STOP_MARKET&&r.trigger_price)&&jsxRuntime.jsx(lt,{title:p("common.trigger"),value:r.trigger_price,unit:n,dp:s}),U=(r.tp_trigger_price||r.sl_trigger_price)&&jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(ui.Divider,{className:"oui-my-4"}),jsxRuntime.jsxs("div",{className:ui.textVariants({size:"sm",intensity:54,className:"oui-space-y-1 oui-w-full oui-flex oui-flex-col oui-gap-3"}),children:[jsxRuntime.jsx(ui.Text,{className:"oui-text-base-contrast",children:S()}),$(),jsxRuntime.jsxs(ui.Flex,{direction:"column",justify:"between",itemAlign:"start",gap:1,className:"oui-w-full",children:[jsxRuntime.jsxs(ui.Flex,{justify:"between",className:"oui-w-full",children:[jsxRuntime.jsx(ui.Text,{children:p("tpsl.tpTriggerPrice")}),J({price:r.tp_trigger_price??"",isOrderPrice:false,isEnable:!!r.tp_trigger_price,colorType:"TP"})]}),jsxRuntime.jsxs(ui.Flex,{justify:"between",className:"oui-w-full",children:[jsxRuntime.jsx(ui.Text,{children:p("tpsl.tpOrderPrice")}),J({price:r.tp_order_price??"",isOrderPrice:true,isEnable:!!r.tp_trigger_price,colorType:"TP"})]})]}),jsxRuntime.jsxs(ui.Flex,{direction:"column",justify:"between",itemAlign:"start",gap:1,className:"oui-w-full",children:[jsxRuntime.jsxs(ui.Flex,{justify:"between",className:"oui-w-full",children:[jsxRuntime.jsx(ui.Text,{children:p("tpsl.slTriggerPrice")}),J({price:r.sl_trigger_price??"",isOrderPrice:false,isEnable:!!r.sl_trigger_price,colorType:"SL"})]}),jsxRuntime.jsxs(ui.Flex,{justify:"between",className:"oui-w-full",children:[jsxRuntime.jsx(ui.Text,{children:p("tpsl.slOrderPrice")}),J({price:r.sl_order_price??"",isOrderPrice:true,isEnable:!!r.sl_trigger_price,colorType:"SL"})]})]})]})]}),Te=jsxRuntime.jsxs(ui.Flex,{gapX:1,pt:4,pb:5,children:[jsxRuntime.jsx(ui.Checkbox,{id:"orderConfirm",color:"white",onCheckedChange:k=>{E(!k);}}),jsxRuntime.jsx("label",{htmlFor:"orderConfirm",className:ui.textVariants({size:"xs",intensity:54}),children:p("orderEntry.disableOrderConfirm")})]}),_e=jsxRuntime.jsxs(ui.Grid,{cols:2,gapX:3,children:[jsxRuntime.jsx(ui.Button,{color:"secondary",size:"md",onClick:()=>i(),children:p("common.cancel")}),jsxRuntime.jsx(ui.Button,{size:"md",onClick:()=>o(),children:p("common.confirm")})]});return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[Y,jsxRuntime.jsx(ui.Divider,{className:"oui-my-4"}),jsxRuntime.jsxs("div",{className:ui.textVariants({size:"sm",intensity:54,className:"oui-space-y-1"}),children:[Z,f,se()]}),U,Te,_e]})},lt=e=>{let{title:t,value:r,unit:o,dp:i}=e;return jsxRuntime.jsxs(ui.Flex,{justify:"between",children:[jsxRuntime.jsx(ui.Text,{children:t}),jsxRuntime.jsx(ui.Text.numeral,{unit:o,rule:"price",dp:i,padding:false,className:"oui-text-base-contrast",unitClassName:"oui-text-base-contrast-36 oui-ml-1",children:r})]})};nr.displayName="OrderConfirmDialog";var hs=e=>{let{t}=i18n.useTranslation(),r=Li.useMemo(()=>{switch(e.type){case types.OrderType.LIMIT:return t("orderEntry.orderType.limit");case types.OrderType.MARKET:return t("common.marketPrice");case types.OrderType.STOP_LIMIT:return t("orderEntry.orderType.stopLimit");case types.OrderType.STOP_MARKET:return t("orderEntry.orderType.stopMarket");case types.OrderType.TRAILING_STOP:return t("orderEntry.orderType.trailingStop");default:return ""}},[e.type]);return jsxRuntime.jsx(ui.Badge,{color:"neutral",size:"sm",children:r})},Ps=e=>{let{close:t,resolve:r,reject:o,...i}=e;return jsxRuntime.jsx(nr,{...i,onCancel:()=>{o(),t();},onConfirm:()=>{r(),t();}})},sr="orderConfirm";ui.registerSimpleDialog(sr,Ps,{size:"sm",title:()=>i18n.i18n.t("orderEntry.orderConfirm")});var ur=e=>{let{order:t,symbolInfo:r,dataSource:o,national:i,askAndBid:n,totalQuantity:s}=e,{base:a,quote:u,base_dp:l,quote_dp:d}=r,{t:c}=i18n.useTranslation(),m=()=>{e.reject(),e.close?.();},p=()=>{e.resolve(),e.close?.();},C=Li.useMemo(()=>[{title:c("common.symbol"),dataIndex:"symbol",width:125,render:(T,P)=>jsxRuntime.jsxs(ui.Flex,{gap:2,children:[jsxRuntime.jsx("div",{className:ui.cn("oui-h-[38px] oui-w-1 oui-shrink-0 oui-rounded-[1px]",P.side===types.OrderSide.BUY?"oui-bg-trade-profit":"oui-bg-trade-loss")}),jsxRuntime.jsxs(ui.Flex,{direction:"column",itemAlign:"start",children:[jsxRuntime.jsxs(ui.Flex,{gapX:1,children:[jsxRuntime.jsx(ui.TokenIcon,{symbol:T,className:"oui-size-3"}),jsxRuntime.jsx(ui.Text.formatted,{rule:"symbol",size:"xs",formatString:"base-type",children:T})]}),jsxRuntime.jsx(ui.Badge,{color:"neutral",size:"xs",children:c("orderEntry.orderType.limit")})]})]})},{title:c("common.quantity"),dataIndex:"order_quantity",width:100,render:(T,P)=>jsxRuntime.jsx(ui.Text.numeral,{rule:"price",dp:l,padding:false,color:P.side===types.OrderSide.BUY?"buy":"sell",children:T})},{title:c("common.orderPrice"),dataIndex:"order_price",width:100,render:(T,P)=>{let O=!!(P.side===types.OrderSide.BUY?n?.[0]&&Number(T)>=n?.[0]:n?.[1]&&Number(T)<=n?.[1]);return jsxRuntime.jsxs(ui.Flex,{gapX:1,children:[jsxRuntime.jsx(ui.Text.numeral,{rule:"price",dp:d,children:T}),O&&jsxRuntime.jsx(ui.Tooltip,{content:c("orderEntry.confirmScaledOrder.orderPrice.warning"),className:"oui-w-[240px] oui-text-2xs oui-font-semibold oui-text-base-contrast-80",children:jsxRuntime.jsx(Rs,{className:"oui-text-warning-darken"})})]})}}],[c,r,n,l,d]);return jsxRuntime.jsxs("div",{className:"oui-font-semibold",children:[jsxRuntime.jsx(ui.DataTable,{classNames:{root:ui.cn("oui-bg-base-7","oui-rounded-lg","oui-overflow-hidden",t.orders?.length>=6&&"oui-h-[320px]"),scroll:"!oui-min-h-[130px]"},dataSource:o,columns:C,bordered:true,onRow:()=>({className:ui.cn("oui-h-[50px]")})}),jsxRuntime.jsxs("div",{className:"oui-mb-5 oui-mt-4 oui-text-2xs",children:[jsxRuntime.jsxs(ui.Flex,{justify:"between",children:[jsxRuntime.jsx(ui.Text,{children:c("orderEntry.totalOrders")}),jsxRuntime.jsx(ui.Text,{intensity:80,children:t.orders?.length})]}),jsxRuntime.jsxs(ui.Flex,{justify:"between",mt:2,children:[jsxRuntime.jsx(ui.Text,{children:c("orderEntry.totalQuantity")}),jsxRuntime.jsx(ui.Text.numeral,{rule:"price",unit:a,dp:l,padding:false,intensity:80,unitClassName:"oui-text-base-contrast-36 oui-ml-1",children:s})]}),jsxRuntime.jsxs(ui.Flex,{justify:"between",mt:2,children:[jsxRuntime.jsx(ui.Text,{children:c("common.notional")}),jsxRuntime.jsx(ui.Text.numeral,{rule:"price",unit:u,dp:d,padding:false,intensity:80,unitClassName:"oui-text-base-contrast-36 oui-ml-1",children:i})]})]}),jsxRuntime.jsxs(ui.Grid,{cols:2,gapX:3,children:[jsxRuntime.jsx(ui.Button,{color:"secondary",size:"md",onClick:m,children:c("common.cancel")}),jsxRuntime.jsx(ui.Button,{size:"md",onClick:p,children:c("common.confirm")})]})]})},Rs=Li.forwardRef((e,t)=>jsxRuntime.jsx("svg",{width:"12",height:"13",viewBox:"0 0 12 13",fill:"currentColor",xmlns:"http://www.w3.org/2000/svg",ref:t,...e,children:jsxRuntime.jsx("path",{d:"M5.99951 1.50708C3.23811 1.50708 0.999512 3.74558 0.999512 6.50708C0.999512 9.26858 3.23811 11.5071 5.99951 11.5071C8.76091 11.5071 10.9995 9.26858 10.9995 6.50708C10.9995 3.74558 8.76091 1.50708 5.99951 1.50708ZM5.99951 4.00708C6.27566 4.00708 6.49951 4.23108 6.49951 4.50708C6.49951 4.78308 6.27566 5.00708 5.99951 5.00708C5.72336 5.00708 5.49951 4.78308 5.49951 4.50708C5.49951 4.23108 5.72336 4.00708 5.99951 4.00708ZM5.99951 5.50708C6.27566 5.50708 6.49951 5.73108 6.49951 6.00708V8.50708C6.49951 8.78308 6.27566 9.00708 5.99951 9.00708C5.72336 9.00708 5.49951 8.78308 5.49951 8.50708V6.00708C5.49951 5.73108 5.72336 5.50708 5.99951 5.50708Z"})}));function dt(){let e=hooks.useEventEmitter(),[t,r]=Li.useState([0,0]),o=hooks.useDebouncedCallback(i=>{let n=i.asks?.[i.asks.length-1]?.[0],s=i.bids?.[0]?.[0];r([n,s]);},200);return Li.useEffect(()=>(e.on("orderbook:update",o),()=>{e.off("orderbook:update",o),o.cancel();}),[o]),t}function dr(e){let{order:t,symbolInfo:r}=e,o=t.orders,i=dt(),n=Li.useMemo(()=>o.reduce((u,l)=>u.add(new utils.Decimal(l.order_price).mul(l.order_quantity)),utils.zero).toNumber(),[o]),s=Li.useMemo(()=>o.reduce((u,l)=>u.add(new utils.Decimal(l.order_quantity)),utils.zero).toString(),[o,r.base_dp]);return {dataSource:o,national:n,askAndBid:i,totalQuantity:s}}var Ro=e=>{let t=dr(e);return jsxRuntime.jsx(ur,{...e,...t})},ct="scaledOrderConfirm";ui.registerSimpleDialog(ct,Ro,{size:"md",title:()=>i18n.i18n.t("orderEntry.confirmScaledOrder"),contentProps:{}});var Vo=e=>{let{t}=i18n.useTranslation(),r=Li.useMemo(()=>[{label:t("orderEntry.orderType.limitOrder"),value:types.OrderType.LIMIT},{label:t("orderEntry.orderType.marketOrder"),value:types.OrderType.MARKET},{label:t("orderEntry.orderType.stopLimit"),value:types.OrderType.STOP_LIMIT},{label:t("orderEntry.orderType.stopMarket"),value:types.OrderType.STOP_MARKET},{label:t("orderEntry.orderType.scaledOrder"),value:types.OrderType.SCALED},{label:t("orderEntry.orderType.trailingStop"),value:types.OrderType.TRAILING_STOP}],[t]),o=Li.useMemo(()=>({[types.OrderType.LIMIT]:t("orderEntry.orderType.limit"),[types.OrderType.MARKET]:t("common.marketPrice"),[types.OrderType.STOP_LIMIT]:t("orderEntry.orderType.stopLimit"),[types.OrderType.STOP_MARKET]:t("orderEntry.orderType.stopMarket"),[types.OrderType.SCALED]:t("orderEntry.orderType.scaledOrder"),[types.OrderType.TRAILING_STOP]:t("orderEntry.orderType.trailingStop")}),[t]);return jsxRuntime.jsx(ui.Select.options,{testid:"oui-testid-orderEntry-orderType-button",currentValue:e.type,value:e.type,options:r,onValueChange:e.onChange,contentProps:{className:"oui-bg-base-8 oui-w-full"},valueFormatter:(i,n)=>{if(!r.find(u=>u.value===i))return jsxRuntime.jsx(ui.Text,{size:"xs",children:n.placeholder});let a=o[i];return jsxRuntime.jsx(ui.Text,{size:"xs",color:e.canTrade?e.side===types.OrderSide.BUY?"buy":"sell":void 0,children:a})},size:"md"})};function qo(e){let{isMobile:t,canTrade:r,side:o,order_type:i,curLeverage:n,setOrderValue:s}=e,{t:a}=i18n.useTranslation(),u=t&&r;return jsxRuntime.jsxs(ui.Flex,{gapX:2,className:"oui-flex-col oui-gap-y-3 lg:oui-flex-row",children:[jsxRuntime.jsxs("div",{className:ui.cn("oui-grid oui-w-full oui-flex-1 oui-gap-x-2 lg:oui-flex lg:oui-gap-x-[6px]",u?"oui-grid-cols-3":"oui-grid-cols-2"),children:[jsxRuntime.jsx(ui.Button,{onClick:()=>{e.setOrderValue("side",types.OrderSide.BUY);},size:"md",fullWidth:true,"data-type":types.OrderSide.BUY,className:ui.cn(o===types.OrderSide.BUY&&r?"oui-bg-success-darken hover:oui-bg-success-darken/80 active:oui-bg-success-darken/80":"oui-bg-base-7 oui-text-base-contrast-36 hover:oui-bg-base-6 active:oui-bg-base-6"),"data-testid":"oui-testid-orderEntry-side-buy-button",children:a("common.buy")}),jsxRuntime.jsx(ui.Button,{onClick:()=>{e.setOrderValue("side",types.OrderSide.SELL);},"data-type":types.OrderSide.SELL,fullWidth:true,size:"md",className:ui.cn(o===types.OrderSide.SELL&&e.canTrade?"oui-bg-danger-darken hover:oui-bg-danger-darken/80 active:oui-bg-danger-darken/80":"oui-bg-base-7 oui-text-base-contrast-36 hover:oui-bg-base-6 active:oui-bg-base-6"),"data-testid":"oui-testid-orderEntry-side-sell-button",children:a("common.sell")}),u&&jsxRuntime.jsx(ui.Button,{size:"md",fullWidth:true,trailing:jsxRuntime.jsx(ui.CaretRightIcon,{size:12,className:"oui-text-base-contrast-36"}),onClick:()=>{ui.modal.show(uiLeverage.LeverageWidgetWithSheetId,{currentLeverage:n});},className:ui.cn("oui-bg-base-7 oui-text-primary-light hover:oui-bg-base-6 active:oui-bg-base-6"),children:utils.commifyOptional(n,{fix:2})+"x"})]}),jsxRuntime.jsx("div",{className:"oui-w-full lg:oui-flex-1",children:jsxRuntime.jsx(Vo,{type:i,side:o,canTrade:r,onChange:l=>{s("order_type",l);}})})]})}var mr=Li.createContext({}),v=()=>Li.useContext(mr);var Do=e=>{let{errorMsgVisible:t,symbolInfo:r,onFocus:o,onBlur:i,getErrorMsg:n,setOrderValue:s,setOrderValues:a,currentFocusInput:u,errors:l,priceInputRef:d,priceInputContainerRef:c,triggerPriceInputRef:m,activatedPriceInputRef:p}=e,C=Li.useMemo(()=>({errorMsgVisible:t,symbolInfo:r,onFocus:o,onBlur:i,getErrorMsg:n,setOrderValue:s,setOrderValues:a,currentFocusInput:u,errors:l,priceInputRef:d,priceInputContainerRef:c,triggerPriceInputRef:m,activatedPriceInputRef:p}),[t,r,o,i,n,s,a,u,l,d,c,m,p]);return jsxRuntime.jsx(mr.Provider,{value:C,children:e.children})};var L=Li.forwardRef((e,t)=>{let{placeholder:r="0"}=e,{errorMsgVisible:o}=v();return jsxRuntime.jsx(ui.Input.tooltip,{ref:t,tooltip:o?e.error:void 0,autoComplete:"off",autoFocus:e.autoFocus,size:"lg",placeholder:e.readonly?"":r,id:e.id,name:e.name,color:e.error?"danger":void 0,prefix:jsxRuntime.jsx(ia,{id:e.id,className:e.classNames?.prefix,children:e.label}),suffix:e.suffix,value:e.readonly?"":e.value||"",onValueChange:e.onChange,onFocus:i=>{e.onFocus?.(i);},onBlur:i=>{e.onBlur?.(i);},formatters:e.overrideFormatters||[...e.formatters??types.EMPTY_LIST,ui.inputFormatter.numberFormatter,ui.inputFormatter.currencyFormatter,ui.inputFormatter.decimalPointFormatter],classNames:{root:ui.cn("orderly-order-entry oui-relative oui-h-[54px] oui-rounded oui-border oui-border-solid oui-border-line oui-px-2 oui-py-1 group-first:oui-rounded-t-xl group-last:oui-rounded-b-xl",e.className,e.classNames?.root),input:ui.cn("oui-mb-1 oui-mt-5 oui-h-5",e?.classNames?.input),suffix:ui.cn("oui-absolute oui-right-0 oui-top-0 oui-justify-start oui-py-2 oui-text-2xs oui-text-base-contrast-36",e.classNames?.suffix)},readOnly:e.readonly})});L.displayName="CustomInput";var ia=e=>jsxRuntime.jsx("label",{htmlFor:e.id,className:ui.cn("oui-absolute oui-left-2 oui-top-[7px] oui-text-2xs oui-text-base-contrast-36",e.className),children:e.children});var zo=e=>{let{t}=i18n.useTranslation(),r=Li.useMemo(()=>[{label:t("orderEntry.bbo.counterparty1"),value:types.BBOOrderType.COUNTERPARTY1},{label:t("orderEntry.bbo.counterparty5"),value:types.BBOOrderType.COUNTERPARTY5},{label:t("orderEntry.bbo.queue1"),value:types.BBOOrderType.QUEUE1},{label:t("orderEntry.bbo.queue5"),value:types.BBOOrderType.QUEUE5}],[]);return jsxRuntime.jsx(ui.Select.options,{testid:"oui-testid-orderEntry-bbo-orderType-button",currentValue:e.value,value:e.value,options:r,onValueChange:e.onChange,contentProps:{className:"oui-bg-base-8 oui-w-full",style:e.contentStyle},size:"sm",classNames:{trigger:"oui-border-none oui-bg-transparent"},valueFormatter:(o,i)=>{let n=r.find(s=>s.value===o);return jsxRuntime.jsx(ui.Box,{children:jsxRuntime.jsx(ui.Text,{size:"sm",children:n?.label})})}})};var Qo=e=>{let{quote:t,bbo:r,fillMiddleValue:o}=e,{t:i}=i18n.useTranslation();return jsxRuntime.jsxs(ui.Flex,{direction:"column",itemAlign:"end",className:ui.cn("oui-order-entry-limit-price-input-suffix","oui-text-2xs"),children:[t,jsxRuntime.jsxs(ui.Flex,{justify:"end",itemAlign:"center",gap:2,children:[jsxRuntime.jsx(ui.Flex,{px:3,height:20,justify:"center",itemAlign:"center",r:"base",className:ui.cn("oui-mt-[2px] oui-cursor-pointer oui-select-none oui-border",r.bboStatus==="on"?"oui-border-primary":"oui-border-line-12",r.bboStatus==="disabled"&&"oui-cursor-not-allowed"),onClick:()=>{r.bboStatus==="disabled"?ui.modal.dialog({title:i("common.tips"),size:"xs",content:jsxRuntime.jsx(ui.Text,{intensity:54,children:i("orderEntry.bbo.disabled.tips")})}):r.toggleBBO();},children:jsxRuntime.jsx(ui.Text,{className:ui.cn(r.bboStatus==="on"&&"oui-text-primary",r.bboStatus==="off"&&"oui-text-base-contrast-54",r.bboStatus==="disabled"&&"oui-text-base-contrast-20"),children:i("orderEntry.bbo")})}),jsxRuntime.jsx(ui.Text,{className:ui.cn("oui-select-none","oui-cursor-pointer oui-text-primary"),onClick:o,children:"Mid"})]})]})};var Wo=e=>{let{bbo:t}=e,{t:r}=i18n.useTranslation(),{symbolInfo:o,onFocus:i,onBlur:n,getErrorMsg:s,setOrderValue:a,priceInputRef:u,priceInputContainerRef:l}=v(),{quote:d,quote_dp:c}=o,m=t.bboStatus==="on",p=e.order_type===types.OrderType.LIMIT?jsxRuntime.jsx(Qo,{quote:d,bbo:t,fillMiddleValue:e.fillMiddleValue}):d;return jsxRuntime.jsxs("div",{ref:l,className:"oui-group oui-relative oui-w-full",children:[jsxRuntime.jsx(L,{id:"order_price_input",name:"order_price_input",label:r("common.price"),suffix:p,value:e.order_price,onChange:C=>{a("order_price",C);},error:s("order_price"),formatters:[ui.inputFormatter.dpFormatter(c)],onFocus:i(1),onBlur:n(1),readonly:m,ref:u,classNames:{root:ui.cn(m&&"focus-within:oui-outline-transparent "),input:ui.cn(m&&"oui-cursor-auto")}}),t.bboStatus==="on"&&jsxRuntime.jsx("div",{className:ui.cn("oui-absolute oui-bottom-1 oui-left-0"),children:jsxRuntime.jsx(zo,{value:t.bboType,onChange:t.onBBOChange,contentStyle:{width:e.priceInputContainerWidth}})})]})};var Ze=Li.memo(e=>{let{t}=i18n.useTranslation(),{symbolInfo:r,onFocus:o,onBlur:i,getErrorMsg:n,setOrderValue:s}=v(),{base:a,quote:u,base_dp:l,quote_dp:d}=r;return jsxRuntime.jsxs(ui.Grid,{cols:2,className:"oui-group oui-space-x-1",children:[jsxRuntime.jsx(L,{id:"order_quantity_input",name:"order_quantity_input",label:t("common.qty"),suffix:a,error:n("order_quantity"),value:e.order_quantity,onChange:c=>{s("order_quantity",c);},formatters:[ui.inputFormatter.dpFormatter(l)],onFocus:o(3),onBlur:i(3),className:"!oui-rounded-r"}),jsxRuntime.jsx(L,{id:"order_total_input",name:"order_total_input",label:`${t("common.total")}\u2248`,suffix:u,error:n("total"),value:e.total,onChange:c=>{s("total",c);},formatters:[ui.inputFormatter.dpFormatter(d)],onFocus:o(4),onBlur:i(4)})]})});Ze.displayName="QtyAndTotalInput";var Yo=Li.memo(e=>{let{t}=i18n.useTranslation(),{setOrderValue:r}=v(),o=()=>{ui.modal.dialog({title:t("common.tips"),size:"sm",content:jsxRuntime.jsx(Ea,{value:e.distribution_type})});};return jsxRuntime.jsxs(ui.Flex,{direction:"column",itemAlign:"start",justify:"center",p:2,r:"base",width:"100%",intensity:600,className:ui.cn("oui-t-rounded oui-text-base-contrast-36","oui-border oui-border-solid oui-border-line",e.className),children:[jsxRuntime.jsx(ui.Text,{size:"2xs",className:"oui-cursor-pointer oui-border-b oui-border-dashed oui-border-line-12",onClick:o,children:t("orderEntry.quantityDistribution")}),jsxRuntime.jsx(Sa,{value:e.distribution_type,onValueChange:i=>{r("distribution_type",i);}})]})}),Ea=e=>{let{t}=i18n.useTranslation(),[r,o]=Li.useState(types.DistributionType.FLAT);Li.useEffect(()=>{o([types.DistributionType.FLAT,types.DistributionType.ASCENDING,types.DistributionType.DESCENDING].includes(e.value)?e.value:types.DistributionType.FLAT);},[e.value]);let i=Li.useMemo(()=>[{type:types.DistributionType.FLAT,title:t("orderEntry.distributionType.flat"),description:t("orderEntry.distributionType.flat.description"),formula:`${t("orderEntry.skew")} = 1`,quantity:jsxRuntime.jsx(Ia,{})},{type:types.DistributionType.ASCENDING,title:t("orderEntry.distributionType.ascending"),description:t("orderEntry.distributionType.ascending.description"),formula:`${t("orderEntry.skew")} > 1`,quantity:jsxRuntime.jsx(La,{})},{type:types.DistributionType.DESCENDING,title:t("orderEntry.distributionType.descending"),description:t("orderEntry.distributionType.descending.description"),formula:`0 < ${t("orderEntry.skew")} < 1`,quantity:jsxRuntime.jsx(Fa,{})}],[]),n=Li.useMemo(()=>i.find(s=>s.type===r),[i,r]);return jsxRuntime.jsxs("div",{className:"oui-text-2xs oui-font-semibold oui-text-base-contrast-54",children:[jsxRuntime.jsxs(ui.Flex,{direction:"column",itemAlign:"start",gapY:1,children:[jsxRuntime.jsx(ui.Text,{intensity:80,children:t("orderEntry.quantityDistribution.description")}),jsxRuntime.jsx(ui.Text,{children:t("orderEntry.quantityDistribution.formula")})]}),jsxRuntime.jsxs(ui.Flex,{intensity:600,p:1,r:"base",mt:3,itemAlign:"start",children:[jsxRuntime.jsx(ui.Flex,{direction:"column",itemAlign:"start",children:i.map(s=>jsxRuntime.jsx(ui.Box,{intensity:r===s.type?500:600,width:78,p:2,className:"oui-cursor-pointer oui-rounded-l",onClick:()=>{o(s.type);},children:jsxRuntime.jsx(ui.Text,{children:s.title})},s.title))}),jsxRuntime.jsxs(ui.Flex,{direction:"column",itemAlign:"start",gapY:1,p:2,intensity:500,width:"100%",className:ui.cn("oui-rounded-r",r===types.DistributionType.FLAT&&"oui-rounded-bl",r===types.DistributionType.ASCENDING&&"oui-rounded-l",r===types.DistributionType.DESCENDING&&"oui-rounded-tl"),children:[jsxRuntime.jsx("div",{children:n?.formula}),jsxRuntime.jsx(ui.Text,{children:n?.description}),jsxRuntime.jsx(ui.Flex,{width:"100%",justify:"center",children:n?.quantity}),jsxRuntime.jsxs(ui.Flex,{width:"100%",gapX:1,justify:"center",children:[jsxRuntime.jsx(ui.Text,{className:"oui-text-base-1",children:t("common.price")}),jsxRuntime.jsx(Na,{})]})]})]})]})},Sa=e=>{let{value:t,onValueChange:r}=e,{t:o}=i18n.useTranslation(),i=s=>a=>{r(s);},n=Li.useMemo(()=>({[types.DistributionType.FLAT]:o("orderEntry.distributionType.flat"),[types.DistributionType.ASCENDING]:o("orderEntry.distributionType.ascending.abbr"),[types.DistributionType.DESCENDING]:o("orderEntry.distributionType.descending.abbr"),[types.DistributionType.CUSTOM]:o("orderEntry.distributionType.custom")}),[o]);return jsxRuntime.jsx(ui.Flex,{className:ui.cn("oui-gap-x-[6px] lg:oui-gap-x-2"),wrap:"wrap",children:Object.values(types.DistributionType).map(s=>jsxRuntime.jsxs(ui.Flex,{itemAlign:"center",children:[jsxRuntime.jsx(ui.Checkbox,{id:`distribution-type-${s}`,color:"white",variant:"radio",checked:t===s,onCheckedChange:i(s)}),jsxRuntime.jsx("label",{htmlFor:`distribution-type-${s}`,className:ui.cn("oui-text-2xs","oui-ml-1","oui-whitespace-nowrap oui-break-normal"),children:n[s]})]},s))})},Ia=()=>jsxRuntime.jsxs("svg",{width:"218",height:"40",viewBox:"0 0 218 40",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[jsxRuntime.jsx("rect",{x:"18",y:"18",width:"181",height:"4",fill:"rgb(var(--oui-color-base-2))"}),jsxRuntime.jsx("circle",{cx:"15",cy:"20",r:"6",fill:"rgb(var(--oui-color-base-2))",stroke:"rgb(var(--oui-color-base-5))",strokeWidth:"2"}),jsxRuntime.jsx("circle",{cx:"62",cy:"20",r:"6",fill:"rgb(var(--oui-color-base-2))",stroke:"rgb(var(--oui-color-base-5))",strokeWidth:"2"}),jsxRuntime.jsx("circle",{cx:"109",cy:"20",r:"6",fill:"rgb(var(--oui-color-base-2))",stroke:"rgb(var(--oui-color-base-5))",strokeWidth:"2"}),jsxRuntime.jsx("circle",{cx:"156",cy:"20",r:"6",fill:"rgb(var(--oui-color-base-2))",stroke:"rgb(var(--oui-color-base-5))",strokeWidth:"2"}),jsxRuntime.jsx("circle",{cx:"203",cy:"20",r:"6",fill:"rgb(var(--oui-color-base-2))",stroke:"rgb(var(--oui-color-base-5))",strokeWidth:"2"})]}),La=()=>jsxRuntime.jsxs("svg",{width:"218",height:"40",viewBox:"0 0 218 40",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[jsxRuntime.jsx("rect",{x:"18",y:"18",width:"181",height:"4",fill:"rgb(var(--oui-color-base-2))"}),jsxRuntime.jsx("circle",{cx:"15",cy:"20",r:"4.28571",fill:"rgb(var(--oui-color-base-2))",stroke:"rgb(var(--oui-color-base-5))",strokeWidth:"1.42857"}),jsxRuntime.jsx("circle",{cx:"62",cy:"20",r:"5.14286",fill:"rgb(var(--oui-color-base-2))",stroke:"rgb(var(--oui-color-base-5))",strokeWidth:"1.71429"}),jsxRuntime.jsx("circle",{cx:"109",cy:"20",r:"6",fill:"rgb(var(--oui-color-base-2))",stroke:"rgb(var(--oui-color-base-5))",strokeWidth:"2"}),jsxRuntime.jsx("circle",{cx:"156",cy:"20",r:"6.85714",fill:"rgb(var(--oui-color-base-2))",stroke:"rgb(var(--oui-color-base-5))",strokeWidth:"2.28571"}),jsxRuntime.jsx("circle",{cx:"203",cy:"20",r:"7.71429",fill:"rgb(var(--oui-color-base-2))",stroke:"rgb(var(--oui-color-base-5))",strokeWidth:"2.57143"})]}),Fa=()=>jsxRuntime.jsxs("svg",{width:"218",height:"40",viewBox:"0 0 218 40",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[jsxRuntime.jsx("rect",{width:"181",height:"4",transform:"matrix(-1 0 0 1 200 18)",fill:"rgb(var(--oui-color-base-2))"}),jsxRuntime.jsx("circle",{cx:"5",cy:"5",r:"4.28571",transform:"matrix(-1 0 0 1 208 15)",fill:"rgb(var(--oui-color-base-2))",stroke:"rgb(var(--oui-color-base-5))",strokeWidth:"1.42857"}),jsxRuntime.jsx("circle",{cx:"6",cy:"6",r:"5.14286",transform:"matrix(-1 0 0 1 162 14)",fill:"rgb(var(--oui-color-base-2))",stroke:"rgb(var(--oui-color-base-5))",strokeWidth:"1.71429"}),jsxRuntime.jsx("circle",{cx:"7",cy:"7",r:"6",transform:"matrix(-1 0 0 1 116 13)",fill:"rgb(var(--oui-color-base-2))",stroke:"rgb(var(--oui-color-base-5))",strokeWidth:"2"}),jsxRuntime.jsx("circle",{cx:"8",cy:"8",r:"6.85714",transform:"matrix(-1 0 0 1 70 12)",fill:"rgb(var(--oui-color-base-2))",stroke:"rgb(var(--oui-color-base-5))",strokeWidth:"2.28571"}),jsxRuntime.jsx("circle",{cx:"9",cy:"9",r:"7.71429",transform:"matrix(-1 0 0 1 24 11)",fill:"rgb(var(--oui-color-base-2))",stroke:"rgb(var(--oui-color-base-5))",strokeWidth:"2.57143"})]}),Na=()=>jsxRuntime.jsx("svg",{width:"176",height:"8",viewBox:"0 0 176 8",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:jsxRuntime.jsx("path",{d:"M175.354 4.35355C175.549 4.15829 175.549 3.84171 175.354 3.64645L172.172 0.464466C171.976 0.269204 171.66 0.269204 171.464 0.464466C171.269 0.659728 171.269 0.976311 171.464 1.17157L174.293 4L171.464 6.82843C171.269 7.02369 171.269 7.34027 171.464 7.53553C171.66 7.7308 171.976 7.7308 172.172 7.53553L175.354 4.35355ZM0 4V4.5H175V4V3.5H0V4Z",fill:"rgb(var(--oui-color-base-1))"})});var vr=Li.memo(e=>{let{t}=i18n.useTranslation(),{symbolInfo:r,onFocus:o,onBlur:i,getErrorMsg:n,setOrderValue:s}=v(),{quote:a,quote_dp:u}=r;return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(L,{label:t("orderEntry.startPrice"),suffix:a,id:"order_start_price_input",value:e.start_price,error:n("start_price"),onChange:l=>{s("start_price",l);},formatters:[ui.inputFormatter.dpFormatter(u)],onFocus:o(5),onBlur:i(5),classNames:{root:"oui-rounded-t-xl"}}),jsxRuntime.jsx(L,{label:t("orderEntry.endPrice"),suffix:a,id:"order_end_price_input",value:e.end_price,error:n("end_price"),onChange:l=>{s("end_price",l);},formatters:[ui.inputFormatter.dpFormatter(u)],onFocus:o(6),onBlur:i(6)})]})});vr.displayName="ScaledPriceInput";var Da=e=>jsxRuntime.jsx(ui.Text,{size:"2xs",intensity:36,children:e}),Zo=e=>{let{base:t,quote:r}=e,o=Li.useMemo(()=>[{name:r},{name:t}],[t,r]);return jsxRuntime.jsx(ui.Select.tokens,{variant:"text",size:"xs",iconSize:"2xs",tokens:o,classNames:{trigger:ui.cn("oui-absolute oui-right-0 oui-top-1","oui-w-full oui-justify-end")},value:e.value,onValueChange:e.onValueChange,valueFormatter:Da,contentProps:{align:"end",alignOffset:-1,sideOffset:-4,className:"oui-border oui-border-line-6"}})};var Jo=Li.memo(e=>{let{t}=i18n.useTranslation(),{errors:r,symbolInfo:o,onFocus:i,onBlur:n,getErrorMsg:s,setOrderValue:a}=v(),[u,l]=hooks.useLocalStorage("orderly_order_quantity_unit","quote"),{base:d,quote:c,base_dp:m,quote_dp:p}=o,C=u==="base",P=jsxRuntime.jsx(Zo,{base:d,quote:c,value:C?d:c,onValueChange:O=>{l(O===d?"base":"quote");}});return C?jsxRuntime.jsx(L,{label:t("common.qty"),suffix:P,id:"order_quantity_input",name:"order_quantity_input",className:"!oui-rounded-r",value:e.order_quantity,error:s("order_quantity",`${r?.order_quantity?.value} ${d}`),onChange:O=>{a("order_quantity",O);},formatters:[ui.inputFormatter.dpFormatter(m)],onFocus:i(3),onBlur:n(3)}):jsxRuntime.jsx(L,{label:t("common.qty"),suffix:P,id:"order_total_input",name:"order_total_input",className:"!oui-rounded-r",value:e.total,error:s("order_quantity",`${r?.total?.value} ${c}`),onChange:O=>{a("total",O);},formatters:[ui.inputFormatter.dpFormatter(p)],onFocus:i(4),onBlur:n(4)})});var ti=Li.memo(e=>{let{t}=i18n.useTranslation(),{onFocus:r,onBlur:o,getErrorMsg:i,setOrderValue:n}=v();return jsxRuntime.jsx(L,{id:"order_skew_input",label:t("orderEntry.skew"),value:e.skew,error:i("skew"),onChange:s=>{n("skew",s);},onFocus:r(8),onBlur:o(8),overrideFormatters:[ui.inputFormatter.rangeFormatter({min:0,max:100,dp:2}),ui.inputFormatter.dpFormatter(2)],classNames:{root:"oui-rounded-b-xl"}})});var oi=Li.memo(e=>{let{t}=i18n.useTranslation(),{onFocus:r,onBlur:o,getErrorMsg:i,setOrderValue:n}=v();return jsxRuntime.jsx(L,{label:t("orderEntry.totalOrders"),placeholder:"2-20",id:"order_total_orders_input",className:"!oui-rounded-l",value:e.total_orders,error:i("total_orders"),onChange:s=>{n("total_orders",s);},overrideFormatters:[ui.inputFormatter.numberFormatter,ui.inputFormatter.dpFormatter(0)],onFocus:r(7),onBlur:o(7)})});var ni=e=>{let{values:t}=e,r=t.distribution_type===types.DistributionType.CUSTOM;return jsxRuntime.jsxs("div",{className:"oui-space-y-1",children:[jsxRuntime.jsx(vr,{start_price:t.start_price,end_price:t.end_price}),jsxRuntime.jsxs(ui.Grid,{cols:2,className:"oui-group oui-space-x-1",children:[jsxRuntime.jsx(Jo,{order_quantity:t.order_quantity,total:t.total}),jsxRuntime.jsx(oi,{total_orders:t.total_orders})]}),jsxRuntime.jsx(Yo,{distribution_type:t.distribution_type,className:ui.cn(!r&&"oui-rounded-b-xl")}),r&&jsxRuntime.jsx(ti,{skew:t.skew})]})};var Er=Li.memo(e=>{let{t}=i18n.useTranslation(),{symbolInfo:r,onFocus:o,onBlur:i,getErrorMsg:n,setOrderValue:s,triggerPriceInputRef:a}=v();return jsxRuntime.jsx("div",{className:"oui-group",children:jsxRuntime.jsx("div",{className:"oui-group",children:jsxRuntime.jsx(L,{ref:a,id:"order_trigger_price_input",name:"order_trigger_price_input",label:t("common.trigger"),suffix:r.quote,value:e.trigger_price,onChange:u=>{s("trigger_price",u);},error:n("trigger_price"),formatters:[ui.inputFormatter.dpFormatter(r.quote_dp)],onFocus:o(2),onBlur:i(2)})})})});Er.displayName="TriggerPriceInput";var Sr=Li.memo(e=>{let{t}=i18n.useTranslation(),{symbolInfo:r,onFocus:o,onBlur:i,getErrorMsg:n,setOrderValue:s,activatedPriceInputRef:a}=v();return jsxRuntime.jsx("div",{className:"oui-group",children:jsxRuntime.jsx(L,{ref:a,id:"order_activated_price_input",name:"order_activated_price_input",label:t("common.triggerPrice"),placeholder:`0 (${t("common.optional")})`,suffix:r.quote,error:n("activated_price"),value:e.activated_price,onChange:u=>{s("activated_price",u);},formatters:[ui.inputFormatter.dpFormatter(r.quote_dp)],onFocus:o(9),onBlur:i(9)})})});Sr.displayName="ActivePriceInput";var ll=[1,2,3,5],Ir=Li.memo(e=>{let{setOrderValue:t}=v();return jsxRuntime.jsx(ui.Flex,{gapX:2,className:e.className,children:ll.map(r=>{let o=r.toString(),i=e.callback_rate===o;return jsxRuntime.jsx(ui.Flex,{justify:"center",itemAlign:"center",width:46,height:18,className:ui.cn("oui-cursor-pointer oui-select-none","oui-rounded oui-border",i?"oui-border-base-contrast-36":"oui-border-line-12"),onClick:()=>{t("callback_rate",o),e.onClick?.(o);},children:jsxRuntime.jsxs(ui.Text,{size:"2xs",intensity:i?80:36,weight:"semibold",children:[r,"%"]})},r)})})});Ir.displayName="CallbackRatePercentages";var Lr=Li.memo(e=>{let{quote:t}=e,r=Li.useMemo(()=>[{label:t,value:types.TrailingCallbackType.VALUE},{label:"%",value:types.TrailingCallbackType.RATE}],[t]);return jsxRuntime.jsx(ui.Select.options,{variant:"text",size:"xs",options:r,classNames:{trigger:ui.cn("oui-absolute oui-right-0 oui-top-1","oui-w-[124px] oui-justify-end","oui-text-base-contrast-36")},value:e.value,onValueChange:e.onValueChange,contentProps:{align:"end",alignOffset:-1,sideOffset:-4,className:"oui-border oui-border-line-6"}})});Lr.displayName="trailingCallbackSelect";var Nr=Li.memo(e=>{let{callback_value:t,callback_rate:r}=e,{t:o}=i18n.useTranslation(),{symbolInfo:i,onFocus:n,onBlur:s,getErrorMsg:a,setOrderValue:u,setOrderValues:l}=v(),{quote:d,quote_dp:c}=i,m=Li.useRef(),p=Li.useRef(),[C,T]=hooks.useLocalStorage("orderly_order_trailing_callback_type",types.TrailingCallbackType.VALUE),P=Li.useCallback(E=>{T(E),E===types.TrailingCallbackType.RATE?(m.current=t,l({callback_value:"",callback_rate:p.current})):(p.current=r,l({callback_value:m.current,callback_rate:""}));},[t,r]),O=jsxRuntime.jsx(Lr,{quote:d,value:C,onValueChange:P});return C===types.TrailingCallbackType.RATE?jsxRuntime.jsxs("div",{className:"oui-relative",children:[jsxRuntime.jsx(L,{id:"order_callback_rate_input",name:"order_callback_rate_input",label:o("orderEntry.trailingRate"),suffix:O,error:a("callback_rate"),value:r,onChange:E=>{u("callback_rate",E);},formatters:[ui.inputFormatter.dpFormatter(1)],onFocus:E=>{n(11)(E);},onBlur:E=>{s(11)(E);},classNames:{root:"oui-h-[68px]",input:"oui-mb-5",prefix:"!oui-top-1"}}),jsxRuntime.jsx(Ir,{className:"oui-absolute oui-bottom-1 oui-left-2",callback_rate:r})]}):jsxRuntime.jsx(L,{id:"order_callback_value_input",name:"order_callback_value_input",label:o("orderEntry.trailingValue"),suffix:O,error:a("callback_value"),value:t,onChange:E=>{u("callback_value",E);},formatters:[ui.inputFormatter.dpFormatter(c)],onFocus:n(10),onBlur:s(10),classNames:{input:"!oui-mb-[6px]",prefix:"!oui-top-1"}})});Nr.displayName="TrailingCallbackInput";var pi=e=>{let{values:t}=e;return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(Sr,{activated_price:t.activated_price}),jsxRuntime.jsx(Nr,{callback_value:t.callback_value,callback_rate:t.callback_rate}),jsxRuntime.jsx(Ze,{order_quantity:t.order_quantity,total:t.total})]})};function mi(e){let{values:t}=e,r=t.order_type;if(r===types.OrderType.SCALED)return jsxRuntime.jsx(ni,{values:t});if(r===types.OrderType.TRAILING_STOP)return jsxRuntime.jsx(pi,{values:t});let o=r===types.OrderType.STOP_LIMIT||r===types.OrderType.STOP_MARKET,i=r===types.OrderType.LIMIT||r===types.OrderType.STOP_LIMIT,n=o&&jsxRuntime.jsx(Er,{trigger_price:t.trigger_price}),s=i&&jsxRuntime.jsx(Wo,{order_type:t.order_type,order_price:t.order_price,bbo:e.bbo,fillMiddleValue:e.fillMiddleValue,priceInputContainerWidth:e.priceInputContainerWidth});return jsxRuntime.jsxs("div",{className:"oui-space-y-1",children:[n,s,jsxRuntime.jsx(Ze,{order_quantity:t.order_quantity,total:t.total})]})}var bi=e=>{let{canTrade:t,order_quantity:r,maxQty:o}=e,{t:i}=i18n.useTranslation(),n=Li.useMemo(()=>t?e.side===types.OrderSide.BUY?"buy":"sell":void 0,[e.side,t]),s=Li.useMemo(()=>e.side===types.OrderSide.BUY?i("orderEntry.maxBuy"):i("orderEntry.maxSell"),[e.side,i]),a=Li.useMemo(()=>r?Number(r):0,[r]),u=Li.useMemo(()=>r?Number(r)>=Number(o)?1:ui.convertValueToPercentage(Number(r??0),0,o)/100:0,[r,o]);return jsxRuntime.jsxs("div",{children:[jsxRuntime.jsx(ui.Slider.single,{disabled:o===0||!t,value:a,color:n,markCount:4,showTip:true,max:o,step:e.tick,onValueChange:e.onValueChange}),jsxRuntime.jsxs(ui.Flex,{justify:"between",className:"oui-pt-1 xl:oui-pt-2",children:[jsxRuntime.jsx(ui.Text.numeral,{rule:"percentages",size:"2xs",color:n,dp:2,padding:false,children:t?u:0}),jsxRuntime.jsxs(ui.Flex,{children:[jsxRuntime.jsx("button",{className:ui.textVariants({size:"2xs",className:"oui-mr-1"}),onClick:()=>e.setMaxQty(),"data-testid":"oui-testid-orderEntry-maxQty-value-button",children:s}),jsxRuntime.jsx(ui.Text.numeral,{size:"2xs",color:n,dp:e.dp,padding:false,"data-testid":"oui-testid-orderEntry-maxQty-value",children:t?o:0})]})]})]})};var Rr=Li.createContext({}),Ot=()=>Li.useContext(Rr);var Ti=e=>{let{type:t,values:r,quote_dp:o}=e,{t:i}=i18n.useTranslation(),[n,s]=Li.useState(true),{mode:a,setMode:u,tipsEle:l}=Ot(),[d,c]=Li.useState(false),[m,p]=Li.useState(false),C=Li.useMemo(()=>{switch(a){case "Offset":return `${t.toLowerCase()}_offset`;case "Offset%":return `${t.toLowerCase()}_offset_percentage`;default:return `${t.toLowerCase()}_pnl`}},[a]),[T,P]=Li.useState(r[a]);Li.useEffect(()=>{m||P(r[a]);},[r,a,m]);let O=Li.useMemo(()=>[{label:i("tpsl.pnl"),value:"PnL",testId:"PnL_menu_item"},{label:i("tpsl.offset"),value:"Offset",testId:"Offset_mneu_item"},{label:`${i("tpsl.offset")}%`,value:"Offset%",testId:"Offset%_menu_item"}],[i]),E=Li.useMemo(()=>({PnL:i("tpsl.pnl"),Offset:i("tpsl.offset"),"Offset%":`${i("tpsl.offset")}%`}),[i]),S=Li.useRef("");return {mode:a,modes:O,modeLabelMap:E,formatter:Y=>{let{dp:Z=2}=Y;return {onRenderBefore:(f,U)=>(f=`${f}`,n&&t==="SL"&&a==="PnL"&&(f=f.startsWith("-")?f:"-"+f),f===""||f==="-"?"":a==="Offset%"?`${new utils.Decimal(f.replace(new RegExp(S.current.replace(".","\\.")+"$"),"")).mul(100).todp(2,4).toString()}${S.current}`:(a==="Offset"&&(f=utils.todpIfNeed(f,Z)),`${f}`)),onSendBefore:f=>{if(/^\-?0{2,}$/.test(f))return "0";if(a==="Offset%"){if(f!==""){f=utils.todpIfNeed(f,2);let U=f.match(/\.0{0,2}$/);U?S.current=U[0]:S.current="",f=new utils.Decimal(f).div(100).toString(),f=`${f}${S.current}`;}}else a==="PnL"&&t==="SL"&&n?f=f.startsWith("-")?f:"-"+f:f=utils.todpIfNeed(f,Z);return f===""||f==="-"?"":f}}},onModeChange:Y=>{u(Y);},onFocus:()=>{c(true),p(true);},onBlur:()=>{c(false),p(false),e.onChange(C,T);},value:T,onValueChange:Y=>{P(Y),e.onChange(C,Y);},quote_dp:o,tips:d?l:void 0,setFocus:s}};var Oi=e=>{let{mode:t,modes:r,modeLabelMap:o,onModeChange:i,onValueChange:n,quote:s,quote_dp:a,value:u,type:l,tips:d,onFocus:c,onBlur:m,setFocus:p}=e,[C,T]=Li.useState(t),[P,O]=Li.useState(t==="Offset%"?"%":s);Li.useEffect(()=>{T(t),O(t==="Offset%"?"%":s);},[t]),Li.useEffect(()=>{T(u?"":t);},[u]);let E=Li.useMemo(()=>`${l.toLowerCase()}_${t.toLowerCase()}`,[]);return jsxRuntime.jsx(ui.Input.tooltip,{prefix:o[C]||C,size:"md",placeholder:P,id:E,align:"right",value:u,tooltip:d,tooltipProps:{content:{side:e.type==="TP"?"top":"bottom"}},"data-testid":e.testIds?.input,autoComplete:"off",onValueChange:n,formatters:[e.formatter({dp:a,mode:t,type:l}),ui.inputFormatter.currencyFormatter],classNames:{root:l==="TP"?"oui-text-trade-profit":"oui-text-trade-loss",additional:"oui-text-base-contrast-54",input:"oui-text-inherit"},onFocus:()=>{T(""),O(""),p(true),c();},onBlur:()=>{T(u?"":t),O(t==="Offset%"?"%":s),m();},suffix:jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[t==="Offset%"&&!!u&&jsxRuntime.jsx(ui.Text,{size:"2xs",color:"inherit",className:"oui-ml-[2px]",children:"%"}),jsxRuntime.jsx(ql,{mode:t,modes:r,onModeChange:S=>i(S.value),testId:e.testIds?.dropDown})]})})},ql=e=>jsxRuntime.jsx(ui.SimpleDropdownMenu,{currentValue:e.mode,menu:e.modes,align:"end",size:"xs",className:"oui-min-w-[80px]",onCloseAutoFocus:t=>t.preventDefault(),onSelect:t=>e.onModeChange(t),children:jsxRuntime.jsx("button",{className:"oui-p-2","data-testid":e.testId,children:jsxRuntime.jsx(ui.CaretDownIcon,{size:12,color:"white"})})});var vi=e=>{let{testIds:t,quote:r,...o}=e,i=Ti(o);return jsxRuntime.jsx(Oi,{...i,testIds:t,quote:r,type:e.type})};var Vr=e=>{let{type:t,values:r,children:o}=e,[i,n]=hooks.useLocalStorage("TP/SL_Mode","Offset%"),{t:s}=i18n.useTranslation(),a=Li.useMemo(()=>!r.PnL||!r.trigger_price?null:jsxRuntime.jsxs(ui.Flex,{children:[jsxRuntime.jsx("span",{className:"oui-text-xs oui-text-base-contrast-54",children:i==="PnL"?s("orderEntry.estRoi"):s("orderEntry.estPnL")}),i==="PnL"?jsxRuntime.jsx(ui.Text.numeral,{rule:"percentages",className:ui.cn("oui-ml-1 oui-text-xs",t==="TP"?"oui-text-trade-profit":"oui-text-trade-loss"),children:r.ROI}):jsxRuntime.jsx(ui.Text.numeral,{rule:"price",className:ui.cn("oui-ml-1 oui-text-xs",t==="TP"?"oui-text-trade-profit":"oui-text-trade-loss"),children:r.PnL})]}),[i,r.ROI,r.PnL,r.trigger_price]),u=Li.useMemo(()=>({mode:i,setMode:n,tipsEle:a}),[i,n,a]);return jsxRuntime.jsx(Rr.Provider,{value:u,children:o})};var Ni=e=>{let t=Li__default.default.useRef(null),{t:r}=i18n.useTranslation();return Li.useEffect(()=>{e.orderType!==types.OrderType.LIMIT&&e.orderType!==types.OrderType.MARKET&&e.onSwitchChanged(false);},[e.orderType]),e.orderType!==types.OrderType.LIMIT&&e.orderType!==types.OrderType.MARKET||e.isReduceOnly?null:jsxRuntime.jsxs("div",{children:[jsxRuntime.jsxs(ui.Flex,{itemAlign:"center",justify:"between",children:[jsxRuntime.jsxs(ui.Flex,{itemAlign:"center",gapX:1,children:[jsxRuntime.jsx(ui.Switch,{id:"order_entry_tpsl",className:"oui-h-[14px]",checked:e.switchState,disabled:e.orderType!==types.OrderType.LIMIT&&e.orderType!==types.OrderType.MARKET||e.isReduceOnly,onCheckedChange:o=>{e.onSwitchChanged(o);}}),jsxRuntime.jsx("label",{htmlFor:"order_entry_tpsl",className:"oui-text-xs",children:r("common.tpsl")})]}),jsxRuntime.jsxs(ui.Flex,{itemAlign:"center",gapX:1,onClick:e.showTPSLAdvanced,className:ui.cn("oui-group oui-invisible",e.switchState&&"oui-visible"),children:[jsxRuntime.jsx(ui.Text,{className:"oui-text-sm oui-cursor-pointer group-hover:oui-text-base-contrast",children:r("tpsl.advanced")}),jsxRuntime.jsx(ui.SettingFillIcon,{size:12,className:"oui-text-base-contrast-54 group-hover:oui-text-base-contrast oui-cursor-pointer",opacity:1,onClick:e.showTPSLAdvanced})]})]}),jsxRuntime.jsx("div",{className:ui.cn("oui-max-h-0 oui-overflow-hidden oui-transition-all",e.switchState&&"oui-max-h-[120px]"),onTransitionEnd:()=>{t.current?.style.setProperty("opacity",e.switchState?"1":"0");},children:jsxRuntime.jsx(wi,{ref:t,setOrderValue:e.setOrderValue,onChange:e.onChange,values:e.values,errors:e.errors,quote_dp:e.quote_dp})})]})},wi=Li__default.default.forwardRef((e,t)=>{let{getErrorMsg:r}=reactApp.useOrderEntryFormErrorMsg(e.errors);return jsxRuntime.jsxs("div",{ref:t,className:"oui-space-y-1 oui-px-px oui-py-2 oui-transition-all",children:[jsxRuntime.jsx(uiTpsl.TPSLPositionTypeWidget,{value:e.values.position_type,onChange:e.onChange}),jsxRuntime.jsx(Vr,{values:e.values.tp,type:"TP",children:jsxRuntime.jsx(Ii,{type:"TP",error:r("tp_trigger_price"),onChange:e.onChange,values:e.values.tp,quote_dp:e.quote_dp,testIds:{first:"oui-testid-orderEntry-tpsl-tpPrice-input",second:"oui-testid-orderEntry-tpsl-tpPnl-input",dropDown:"oui-testid-orderEntry-tpsl-tp-dropDown-trigger-button"}})}),jsxRuntime.jsx(Vr,{values:e.values.sl,type:"SL",children:jsxRuntime.jsx(Ii,{type:"SL",error:r("sl_trigger_price"),onChange:e.onChange,values:e.values.sl,quote_dp:e.quote_dp,testIds:{first:"oui-testid-orderEntry-tpsl-slPrice-input",second:"oui-testid-orderEntry-tpsl-slPnl-input",dropDown:"oui-testid-orderEntry-tpsl-sl-dropDown-trigger-button"}})})]})});wi.displayName="TPSLInputForm";var tu=e=>{let{t}=i18n.useTranslation(),{errorMsgVisible:r}=v(),{tipsEle:o}=Ot(),[i,n]=Li.useState(`${e.type} Price`),[s,a]=Li.useState("USDC"),[u,l]=Li.useState(false),[d,c]=Li.useState(false),[m,p]=Li.useState(e.values.trigger_price??"");Li.useEffect(()=>{d||p(e.values.trigger_price??"");},[e.values.trigger_price,d]);let C=Li.useMemo(()=>e.error&&r?e.error:u?o:null,[e.error,r,u,o]),T=S=>{let X=e.type==="TP"?t("tpsl.tpPrice"):t("tpsl.slPrice");return S&&(X=e.type==="TP"?t("tpsl.tp"):t("tpsl.sl")),X},P=S=>{p(S),e.onChange(S);};Li.useEffect(()=>{n(T(e.values.trigger_price)),d||p(e.values.trigger_price??"");},[e.type,e.values.trigger_price]);let O=()=>{n(e.type==="TP"?t("tpsl.tp"):t("tpsl.sl")),a(""),l(true),c(true);},E=()=>{n(T(e.values.trigger_price)),a("USDC"),l(false),c(false),e.onChange(m);};return jsxRuntime.jsx(ui.Input.tooltip,{"data-testid":e.testId,prefix:i,size:"md",placeholder:s,align:"right",onFocus:O,onBlur:E,tooltip:C,tooltipProps:{content:{side:e.type==="TP"?"top":"bottom"}},color:e.error?"danger":void 0,autoComplete:"off",value:m,classNames:{additional:"oui-text-base-contrast-54",root:"oui-pr-2 md:oui-pr-3",prefix:"oui-pr-1 md:oui-pr-2"},onValueChange:P,formatters:[ui.inputFormatter.numberFormatter,ui.inputFormatter.dpFormatter(e.quote_dp??2),ui.inputFormatter.currencyFormatter]})},Ii=e=>jsxRuntime.jsxs(ui.Grid,{cols:2,gapX:1,children:[jsxRuntime.jsx(tu,{testId:e.testIds?.first,type:e.type,error:e.error,values:e.values??"",onChange:t=>{e.onChange(e.type==="SL"?"sl_trigger_price":"tp_trigger_price",t);},quote_dp:e.quote_dp}),jsxRuntime.jsx(vi,{testIds:{input:e.testIds?.second,dropDown:e.testIds?.dropDown},onChange:e.onChange,quote:"USDC",quote_dp:2,type:e.type,values:{PnL:e.values.PnL,Offset:e.values.Offset,"Offset%":e.values["Offset%"],ROI:e.values.ROI}})]});var Qr=e=>{let{side:t,formattedOrder:r,setOrderValue:o,setOrderValues:i,symbolInfo:n,maxQty:s,freeCollateral:a,helper:u,submit:l,metaState:d,bboStatus:c,bboType:m,onBBOChange:p,toggleBBO:C,disableFeatures:T,currentLtv:P,fillMiddleValue:O,soundAlert:E,setSoundAlert:S,currentFocusInput:X}=e,{curLeverage:J}=hooks.useLeverage(),{t:$}=i18n.useTranslation(),{isMobile:se}=ui.useScreen(),[Y,Z]=Li.useState(false),{errors:f,validated:U}=d,[Te,_e]=Li.useState(false),[k,ae]=hooks.useLocalStorage("orderly_order_confirm",true),[ee,fe]=hooks.useLocalStorage("orderly-order-additional-pinned",true),[kt,ge]=Li.useState(false),[Rt,At]=hooks.useLocalStorage("orderly-order-hidden",false),[Ee,Bt]=hooks.useLocalStorage("orderly-slippage","1",{parseJSON:y=>!y||y==='""'?"1":JSON.parse(y)}),{notification:_}=hooks.useOrderlyContext(),N=Li.useId(),{getErrorMsg:le}=reactApp.useOrderEntryFormErrorMsg(U?f:null),D=Li.useMemo(()=>t===types.OrderSide.BUY?$("orderEntry.buyLong"):$("orderEntry.sellShort"),[t,$]);Li.useEffect(()=>{U&&_e(true);},[U]),Li.useEffect(()=>{T?.includes("slippageSetting")||(Ee?o("slippage",Number(Ee)):o("slippage",void 0));},[Ee,T]),Li.useEffect(()=>{let y=R=>{R.target.closest("#order-entry-submit-button")||_e(Zr=>Zr&&false);};return Te?document.addEventListener("click",y):document.removeEventListener("click",y),()=>{document.removeEventListener("click",y);}},[Te]);let j=()=>{let y=r.order_type===types.OrderType.SCALED;u.validate().then(R=>y?ui.modal.show(ct,{order:R,symbolInfo:n,size:se?"sm":"md"}):k?ui.modal.show(sr,{order:r,symbolInfo:n}):true,R=>(R.slippage&&ui.toast.error($("orderEntry.slippage.error.max")),_e(true),Promise.reject())).then(()=>l({resetOnSuccess:false}).then(R=>{if(!R.success&&R.message)ui.toast.error(R.message);else if(R.success&&y){let ze=Po(R);ze&&ui.toast.success(ze);}})).catch(R=>{R?.message&&ui.toast.error(R.message);});},Vt=()=>{u.validate().then(()=>{ge(true);},y=>{let R=new Set(["tp_trigger_price","sl_trigger_price"]);Object.keys(y).every(ze=>R.has(ze))&&ge(true);});},Mt=y=>{y.side!==r.side&&o("side",y.side),i({position_type:y.position_type,tp_order_type:y.tp_order_type,tp_pnl:y.tp_pnl,tp_offset:y.tp_offset,tp_offset_percentage:y.tp_offset_percentage,tp_ROI:y.tp_ROI,tp_trigger_price:y.tp_trigger_price,tp_order_price:y.tp_order_price,sl_order_type:y.sl_order_type,sl_trigger_price:y.sl_trigger_price,sl_order_price:y.sl_order_price,sl_pnl:y.sl_pnl,sl_offset:y.sl_offset,sl_offset_percentage:y.sl_offset_percentage,sl_ROI:y.sl_ROI}),ge(false),Z(true);},Hi=()=>{Z(false),i({tp_trigger_price:void 0,tp_order_price:void 0,tp_order_type:types.OrderType.MARKET,sl_trigger_price:void 0,sl_order_price:void 0,sl_order_type:types.OrderType.MARKET,tp_pnl:void 0,sl_pnl:void 0,position_type:types.PositionType.FULL});};Li.useEffect(()=>{Z(false);},[e.symbol]);let Yr=!!_?.orderFilled?.media,Kr={pinned:ee,setPinned:fe,needConfirm:k,setNeedConfirm:ae,hidden:Rt,setHidden:At,onValueChange:o,orderTypeExtra:r.order_type_ext,showExtra:r.order_type===types.OrderType.LIMIT&&!e.tpslSwitch},$r=!ee&&jsxRuntime.jsx(jr,{...Kr});return jsxRuntime.jsxs(Do,{errors:f,errorMsgVisible:Te,symbolInfo:n,onFocus:e.onFocus,onBlur:e.onBlur,getErrorMsg:le,setOrderValue:o,setOrderValues:i,currentFocusInput:X.current,priceInputRef:e.priceInputRef,priceInputContainerRef:e.priceInputContainerRef,triggerPriceInputRef:e.triggerPriceInputRef,activatedPriceInputRef:e.activatedPriceInputRef,children:[jsxRuntime.jsxs("div",{className:"oui-space-y-2 oui-text-base-contrast-54 xl:oui-space-y-3",ref:e.containerRef,children:[jsxRuntime.jsx(qo,{isMobile:se,canTrade:e.canTrade,side:t,order_type:r.order_type,curLeverage:J,setOrderValue:o}),jsxRuntime.jsx(Co,{currentLtv:P,canTrade:e.canTrade,quote:n?.quote,freeCollateral:a}),jsxRuntime.jsx(mi,{values:r,priceInputContainerWidth:e.priceInputContainerWidth,fillMiddleValue:O,bbo:{bboStatus:c,bboType:m,onBBOChange:p,toggleBBO:C}}),jsxRuntime.jsx(bi,{canTrade:e.canTrade,maxQty:s,order_quantity:r.order_quantity,tick:n.base_tick,dp:n.base_dp,setMaxQty:e.setMaxQty,onValueChange:y=>{o("order_quantity",y);},side:e.side}),jsxRuntime.jsx(ui.ThrottledButton,{fullWidth:true,id:"order-entry-submit-button","data-type":types.OrderSide.BUY,className:ui.cn(t===types.OrderSide.BUY?"orderly-order-entry-submit-button-buy oui-bg-success-darken hover:oui-bg-success-darken/80 active:oui-bg-success-darken/80":"orderly-order-entry-submit-button-sell oui-bg-danger-darken hover:oui-bg-danger-darken/80 active:oui-bg-danger-darken/80"),onClick:()=>{j();},loading:e.isMutating,disabled:!e.canTrade,children:D}),jsxRuntime.jsx(go,{canTrade:e.canTrade,quote:n.quote,estLiqPrice:e.estLiqPrice,estLeverage:e.estLeverage,currentLeverage:e.currentLeverage,slippage:Ee,dp:n.quote_dp,setSlippage:Bt,estSlippage:e.estSlippage,orderType:r.order_type,disableFeatures:T}),jsxRuntime.jsx(ui.Divider,{className:"oui-w-full"}),Y?jsxRuntime.jsx(to,{order:r,symbolInfo:e.symbolInfo,errors:U?f:null,onEdit:()=>{ge(true);},onDelete:()=>{Hi();}}):jsxRuntime.jsx(Ni,{quote_dp:e.symbolInfo.quote_dp,switchState:e.tpslSwitch,onSwitchChanged:e.setTpslSwitch,orderType:r.order_type,errors:U?f:null,isReduceOnly:r.reduce_only,setOrderValue:e.setOrderValue,values:{position_type:r.position_type??types.PositionType.PARTIAL,tp:{trigger_price:r.tp_trigger_price??"",PnL:r.tp_pnl??"",Offset:r.tp_offset??"","Offset%":r.tp_offset_percentage??"",ROI:r.tp_ROI??""},sl:{trigger_price:r.sl_trigger_price??"",PnL:r.sl_pnl??"",Offset:r.sl_offset??"","Offset%":r.sl_offset_percentage??"",ROI:r.sl_ROI??""}},showTPSLAdvanced:Vt,onChange:(y,R)=>{e.setOrderValue(y,R);}}),jsxRuntime.jsxs(ui.Flex,{justify:"between",itemAlign:"center",className:"!oui-mt-0 xl:!oui-mt-3",children:[jsxRuntime.jsxs(ui.Flex,{itemAlign:"center",gapX:1,children:[jsxRuntime.jsx(ui.Switch,{"data-testid":"oui-testid-orderEntry-reduceOnly-switch",className:"oui-h-[14px]",id:"reduceOnly",checked:r.reduce_only,onCheckedChange:y=>{e.setOrderValue("reduce_only",y);}}),jsxRuntime.jsx("label",{htmlFor:"reduceOnly",className:"oui-text-xs",children:$("orderEntry.reduceOnly")})]}),!Yr&&$r]}),Yr&&jsxRuntime.jsxs(ui.Flex,{justify:"between",itemAlign:"center",className:"!oui-mt-0 xl:!oui-mt-3",children:[jsxRuntime.jsxs(ui.Flex,{itemAlign:"center",gapX:1,children:[jsxRuntime.jsx(ui.Switch,{className:"oui-h-[14px]",id:N,checked:E,onCheckedChange:y=>S(y)}),jsxRuntime.jsx("label",{htmlFor:N,className:"oui-text-xs",children:$("orderEntry.soundAlerts")})]}),$r]}),ee&&jsxRuntime.jsxs(ui.Box,{p:2,r:"md",intensity:700,position:"relative",children:[jsxRuntime.jsx(Qe,{...Kr}),jsxRuntime.jsx(Jr,{onClick:()=>{fe(false);},className:"oui-group oui-absolute oui-right-2 oui-top-2","data-testid":"oui-testid-orderEntry-pinned-button"})]})]}),jsxRuntime.jsx(ui.SimpleSheet,{open:kt,onOpenChange:ge,classNames:{body:"oui-h-full oui-pb-0 oui-border-none",overlay:"!oui-bg-base-10/60",content:ui.cn("oui-rounded-[16px] oui-border-none !oui-p-0",se?"oui-inset-y-0 oui-right-0 oui-w-[280px]":"!oui-bottom-[40px] oui-right-3 oui-top-[44px] !oui-h-auto oui-w-[360px]")},contentProps:{side:"right",closeable:false},children:jsxRuntime.jsx(uiTpsl.TPSLAdvancedWidget,{setOrderValue:o,order:r,onSubmit:Mt,onClose:()=>{ge(false);}})})]})};function Mi({tpslSwitch:e,order_type:t,order_type_ext:r,side:o,setOrderValues:i}){let[n,s]=hooks.useLocalStorage("orderly_order_bbo_type",void 0),a=Li.useRef(n),u=Li.useMemo(()=>e||[types.OrderType.POST_ONLY,types.OrderType.IOC,types.OrderType.FOK].includes(r)?"disabled":n&&t===types.OrderType.LIMIT?"on":"off",[e,r,t,n]),l=()=>{n?(s(void 0),i({order_type_ext:void 0,level:void 0})):s(a.current||types.BBOOrderType.COUNTERPARTY1);},d=c=>{s(c),a.current=c;};return Li.useEffect(()=>{u==="disabled"&&i({order_type_ext:ke({order_type_ext:r})?void 0:r,level:void 0});},[u,r]),Li.useEffect(()=>{if(u==="on"){let c=Oo(n,o),m=vo(n);i({order_type_ext:c,level:m});}},[n,u,o]),{bboStatus:u,bboType:n,setBBOType:s,onBBOChange:d,toggleBBO:l}}function Di(){let{state:e}=hooks.useAccount(),{wrongNetwork:t,disabledConnect:r}=reactApp.useAppContext();return Li.useMemo(()=>!t&&!r&&(e.status===types.AccountStatusEnum.EnableTrading||e.status===types.AccountStatusEnum.EnableTradingWithoutConnected),[e.status,t,r])}function Qi(e){let{base_tick:t,order_type:r,order_quantity:o,setValue:i}=e,n=Li.useRef(0),s=Li.useRef(6),a=()=>{if(t<1||r===types.OrderType.SCALED||!o)return;let d=hooks.utils.formatNumber(o,new utils.Decimal(t||"0").toNumber());i("order_quantity",d,{shouldUpdateLastChangedField:false});},u=d=>c=>{n.current=d,[5,6].includes(n.current)&&(s.current=d);},l=d=>c=>{setTimeout(()=>{n.current===d&&(n.current=0);},300),d===3&&a();};return {currentFocusInput:n,lastScaledOrderPriceInput:s,onFocus:hooks.useMemoizedFn(u),onBlur:hooks.useMemoizedFn(l)}}function Wi({order_type_ext:e}){let[t,r]=Li.useState(0),o=Li.useRef(null);return Li.useEffect(()=>{let i=o.current;if(!i)return;let n=new ResizeObserver(s=>{for(let a of s){let u=a.contentRect.width;u&&r(u);}});return n.observe(i),()=>{n.unobserve(i);}},[o,e]),{priceInputContainerRef:o,priceInputContainerWidth:t}}var Bu="orderly_order_sound_alert",Hr=e=>{let[t,r]=hooks.useLocalStorage("orderly-order-entry-order-type",types.OrderType.LIMIT),[o,i]=hooks.useLocalStorage("orderly-order-entry-order-side",types.OrderSide.BUY),{notification:n}=hooks.useOrderlyContext(),[s,a]=hooks.useLocalStorage(Bu,n?.orderFilled?.defaultOpen??false),u=Di(),{formattedOrder:l,setValue:d,setValues:c,symbolInfo:m,...p}=hooks.useOrderEntry(e.symbol,{initialOrder:{symbol:e.symbol,order_type:t,position_type:types.PositionType.PARTIAL,side:o}}),[C,T]=hooks.useLocalStorage("orderly-order-entry-tp_sl-switch",false),{currentLeverage:P}=hooks.useMarginRatio(),O=hooks.useEventEmitter(),E=Li.useRef(null),S=Li.useRef(null),X=Li.useRef(null),{bboStatus:J,bboType:$,setBBOType:se,onBBOChange:Y,toggleBBO:Z}=Mi({tpslSwitch:C,order_type:l.order_type,order_type_ext:l.order_type_ext,side:l.side,setOrderValues:c}),{currentFocusInput:f,lastScaledOrderPriceInput:U,onFocus:Te,onBlur:_e}=Qi({base_tick:m?.base_tick,order_type:l.order_type,order_quantity:l.order_quantity,setValue:d}),k=()=>{c({tp_trigger_price:"",sl_trigger_price:"",position_type:types.PositionType.FULL});},ae=()=>{c({order_type_ext:void 0,position_type:types.PositionType.FULL});},ee=()=>{d("order_quantity",p.maxQty);},fe=hooks.useMemoizedFn((_,N,le)=>{if(_==="order_type"&&r(N),_==="side"&&i(N),_==="reduce_only"&&N||_==="order_type"&&(N===types.OrderType.STOP_LIMIT||N===types.OrderType.STOP_MARKET)){let D={tp_trigger_price:"",sl_trigger_price:"",[_]:N};_==="order_type"&&(D.order_type_ext=""),c(D);return}if(_==="order_type"&&N!==types.OrderType.LIMIT){let D={level:void 0,order_type_ext:void 0,[_]:N};c(D);return}if(_==="order_type"&&N===types.OrderType.SCALED){c({distribution_type:types.DistributionType.FLAT,[_]:N});return}d(_,N,le);}),kt=_=>{T(_),_?ae():k();};Li.useEffect(()=>{let _=N=>{d("order_price",N);};return O.on("update:orderPrice",_),()=>{O.off("update:orderPrice",_);}},[]),Li.useEffect(()=>{let _=le=>{requestAnimationFrame(()=>{le?.focus();});},N=le=>{let D=utils.removeTrailingZeros(le[0]),{order_type:j,order_type_ext:Vt}=l;if(f.current===2&&(j===types.OrderType.STOP_LIMIT||j===types.OrderType.STOP_MARKET)){d("trigger_price",D),_(E.current);return}if(ke({order_type:j,order_type_ext:Vt})){se(void 0),c({order_type_ext:void 0,level:void 0}),requestAnimationFrame(()=>{O.emit("update:orderPrice",D);}),_(S.current);return}if(j===types.OrderType.STOP_LIMIT||j===types.OrderType.LIMIT){d("order_price",D),_(S.current);return}if(j===types.OrderType.STOP_MARKET){d("trigger_price",D),_(E.current);return}if(j===types.OrderType.MARKET){se(void 0),c({order_type:types.OrderType.LIMIT,order_price:D}),_(S.current);return}if(j===types.OrderType.SCALED&&U.current){let Mt=U.current===5?"start_price":"end_price";d(Mt,D),_(S.current);return}if(j===types.OrderType.TRAILING_STOP){d("activated_price",D),_(X.current);return}d("order_price",D),_(S.current);};return O.on("orderbook:item:click",N),()=>{O.off("orderbook:item:click",N);}},[l,m]),Li.useEffect(()=>{p.reset(),p.resetMetaState();},[e.symbol]),Li.useEffect(()=>{l.order_type===types.OrderType.SCALED&&!l.distribution_type&&d("distribution_type",types.DistributionType.FLAT);},[l.order_type,l.distribution_type]);let ge=hooks.useComputedLTV(),Rt=dt(),At=()=>{if(J==="on"&&Z(),l.order_type===types.OrderType.LIMIT){let[_=0,N=0]=Rt,le=new utils.Decimal(tr(_)).add(tr(N)).div(2).toNumber();requestAnimationFrame(()=>{O.emit("update:orderPrice",le);});}},{priceInputContainerRef:Ee,priceInputContainerWidth:Bt}=Wi({order_type_ext:l.order_type_ext});return {...p,side:l.side,type:l.order_type,level:l.level,formattedOrder:l,setOrderValue:fe,setOrderValues:c,currentLeverage:P,tpslSwitch:C,setTpslSwitch:kt,setMaxQty:ee,symbolInfo:m,onFocus:Te,onBlur:_e,priceInputRef:S,priceInputContainerRef:Ee,priceInputContainerWidth:Bt,triggerPriceInputRef:E,activatedPriceInputRef:X,canTrade:u,bboStatus:J,bboType:$,onBBOChange:Y,toggleBBO:Z,currentLtv:ge,fillMiddleValue:At,symbol:e.symbol,soundAlert:s,setSoundAlert:a,currentFocusInput:f}};var Vu=e=>{let t=Hr(e);return jsxRuntime.jsx(Qr,{...t,containerRef:e.containerRef,disableFeatures:e.disableFeatures})};
21
22
 
22
- exports.AdditionalInfoWidget = et;
23
- exports.LTVRiskTooltipWidget = Je;
24
- exports.OrderConfirmDialog = Pt;
25
- exports.OrderEntry = jt;
26
- exports.OrderEntryWidget = bs;
27
- exports.useOrderEntryScript = Jt;
23
+ exports.AdditionalInfo = Qe;
24
+ exports.FeesWidget = Yt;
25
+ exports.LTVRiskTooltipWidget = st;
26
+ exports.OrderConfirmDialog = nr;
27
+ exports.OrderEntry = Qr;
28
+ exports.OrderEntryWidget = Vu;
29
+ exports.useOrderEntryScript = Hr;
28
30
  //# sourceMappingURL=out.js.map
29
31
  //# sourceMappingURL=index.js.map