@orderly.network/ui-order-entry 2.8.0 → 2.8.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +3 -3
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +2 -2
- package/dist/index.mjs.map +1 -1
- package/package.json +13 -13
package/dist/index.mjs
CHANGED
|
@@ -12,8 +12,8 @@ import { useScaffoldContext } from '@orderly.network/ui-scaffold';
|
|
|
12
12
|
import { account } from '@orderly.network/perp';
|
|
13
13
|
import { SymbolLeverageSheetId, SymbolLeverageDialogId } from '@orderly.network/ui-leverage';
|
|
14
14
|
|
|
15
|
-
var Qe=e=>{let{pinned:t,orderTypeExtra:r}=e,{t:o}=useTranslation(),i=n=>s=>{e.onValueChange&&e.onValueChange("order_type_ext",s?n:"");};return useEffect(()=>{e.onValueChange?.("visible_quantity",e.hidden?0:1);},[e.hidden]),jsxs("div",{className:"oui-text-base-contrast-54",children:[jsxs(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:[jsxs(Flex,{itemAlign:"center",children:[jsx(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===OrderType.POST_ONLY,onCheckedChange:i(OrderType.POST_ONLY)}),jsx("label",{htmlFor:"toggle_order_post_only",className: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")})]}),jsxs(Flex,{itemAlign:"center",children:[jsx(Checkbox,{"data-testid":"oui-testid-orderEntry-ioc-checkBox",id:"toggle_order_iov",color:"white",className:"oui-peer",variant:"radio",checked:r===OrderType.IOC,onCheckedChange:i(OrderType.IOC),disabled:!e.showExtra}),jsx("label",{htmlFor:"toggle_order_iov",className: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")})]}),jsxs(Flex,{itemAlign:"center",children:[jsx(Checkbox,{"data-testid":"oui-testid-orderEntry-fox-checkBox",id:"toggle_order_fok",color:"white",variant:"radio",className:"oui-peer",checked:r===OrderType.FOK,onCheckedChange:i(OrderType.FOK),disabled:!e.showExtra}),jsx("label",{htmlFor:"toggle_order_fok",className: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")})]})]}),jsxs(Flex,{gapX:6,children:[jsxs(Flex,{children:[jsx(Checkbox,{"data-testid":"oui-testid-orderEntry-orderConfirm-checkBox",id:"toggle_order_confirm",color:"white",checked:e.needConfirm,onCheckedChange:n=>{e.setNeedConfirm(!!n);}}),jsx("label",{htmlFor:"toggle_order_confirm",className:"oui-ml-1 oui-text-2xs",children:o("orderEntry.orderConfirm")})]}),jsxs(Flex,{children:[jsx(Checkbox,{"data-testid":"oui-testid-orderEntry-hidden-checkBox",id:"toggle_order_hidden",color:"white",checked:e.hidden,onCheckedChange:n=>{e.setHidden(n);}}),jsx("label",{htmlFor:"toggle_order_hidden",className:"oui-ml-1 oui-text-2xs",children:o("orderEntry.hidden")})]})]}),!t&&jsxs(Fragment,{children:[jsx(Divider,{className:"oui-my-3"}),jsxs(Flex,{children:[jsx(Switch,{"data-testid":"oui-testid-orderEntry-additional-keepVisible-switch",id:"toggle_order_keep_visible",onCheckedChange:n=>{e.setPinned(n);}}),jsx("label",{htmlFor:"toggle_order_keep_visible",className:"oui-ml-1 oui-text-2xs",children:o("orderEntry.keepVisible")})]})]})]})};function io(e){let[t,r]=useState(false);return jsxs(PopoverRoot,{open:t,onOpenChange:r,children:[jsx(PopoverTrigger,{asChild:true,children:jsx("button",{"data-testid":"oui-testid-orderEntry-additional-button",onClick:()=>{r(true);},children: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: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"})})})}),jsx(PopoverContent,{side:"top",align:"end",className:"oui-w-[230px]",children:jsx(Qe,{...e})})]})}var no="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",so=e=>{let[t,r]=useState(no);return jsx("button",{...e,children: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(no);},className:"oui-text-primary-darken",children:jsx("path",{d:t})})})};function lo(e){let{order:t,symbolInfo:r,onEdit:o,onDelete:i,errors:n}=e,{getErrorMsg:s}=useOrderEntryFormErrorMsg(n),{t:a}=useTranslation(),l=()=>{let u=s("tp_trigger_price");return t.tp_trigger_price||t.tp_order_price?jsxs(Flex,{direction:"column",itemAlign:"start",className:"oui-w-full",gap:4,children:[jsxs(Flex,{direction:"column",itemAlign:"start",justify:"between",gapY:1,className:"oui-w-full",children:[jsxs(Flex,{justify:"between",className:"oui-w-full",children:[jsx(Text,{children:a("tpsl.tpTriggerPrice")}),jsx(Text.numeral,{suffix:jsx(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??""})]}),jsxs(Flex,{justify:"between",className:"oui-w-full",children:[jsx(Text,{children:a("tpsl.tpOrderPrice")}),t.tp_order_type===OrderType.LIMIT?jsx(Text.numeral,{suffix:jsx(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??""}):jsx(Text,{className:"oui-text-base-contrast",children:"Market"})]}),jsxs(Flex,{justify:"between",className:"oui-w-full",children:[jsx(Text,{children:a("tpsl.totalEstTpPnl")}),jsx(Text.numeral,{suffix:jsx(Text,{className:"oui-ml-1 oui-text-base-contrast-36",children:r.quote}),coloring:true,dp:2,children:Number(t.tp_pnl)})]})]}),u&&jsxs(Flex,{justify:"start",itemAlign:"start",gap:2,className:"oui-w-full",children:[jsx("div",{className:"oui-relative oui-top-[7px] oui-size-1 oui-rounded-full oui-bg-danger"}),jsx(Text,{className:"oui-text-danger",children:u})]})]}):null},d=()=>{if(t.sl_trigger_price||t.sl_order_price){let u=s("sl_trigger_price");return jsx(Flex,{direction:"column",itemAlign:"start",className:"oui-w-full",gap:4,children:jsxs(Flex,{direction:"column",itemAlign:"start",justify:"between",gapY:1,className:"oui-w-full",children:[jsxs(Flex,{justify:"between",className:"oui-w-full",children:[jsx(Text,{children:a("tpsl.slTriggerPrice")}),jsx(Text.numeral,{suffix:jsx(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??""})]}),jsxs(Flex,{justify:"between",className:"oui-w-full",children:[jsx(Text,{children:a("tpsl.slOrderPrice")}),t.sl_order_type===OrderType.LIMIT?jsx(Text.numeral,{suffix:jsx(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??""}):jsx(Text,{className:"oui-text-base-contrast",children:"Market"})]}),jsxs(Flex,{justify:"between",className:"oui-w-full",children:[jsx(Text,{children:a("tpsl.totalEstSlPnl")}),jsx(Text.numeral,{coloring:true,suffix:jsx(Text,{className:"oui-ml-1 oui-text-base-contrast-36",children:r.quote}),dp:2,children:Number(t.sl_pnl)})]}),u&&jsxs(Flex,{justify:"start",itemAlign:"start",gap:2,className:"oui-w-full",children:[jsx("div",{className:"oui-relative oui-top-[7px] oui-size-1 oui-rounded-full oui-bg-danger"}),jsx(Text,{className:"oui-text-danger",children:u})]})]})})}return null};return jsxs(Flex,{direction:"column",itemAlign:"start",className:"oui-w-full oui-text-2xs",gap:4,children:[jsxs(Flex,{justify:"between",itemAlign:"start",className:"oui-w-full",children:[jsx(Text,{children:a("tpsl.advanced.title")}),jsxs(Flex,{gap:2,children:[jsx(Sn,{size:12,className:"oui-cursor-pointer oui-text-base-contrast-54 hover:oui-text-base-contrast",opacity:1,onClick:i}),jsx(In,{size:12,className:"oui-cursor-pointer oui-text-base-contrast-54 hover:oui-text-base-contrast",onClick:o})]})]}),jsxs(Flex,{justify:"between",itemAlign:"start",className:"oui-w-full",children:[jsx(Text,{children:a("tpsl.mode")}),jsx(Text,{className:"oui-text-base-contrast",children:t.position_type===PositionType.FULL?a("tpsl.fullPosition"):a("tpsl.partialPosition")})]}),l(),d(),jsx(Divider,{className:"oui-mb-2 oui-w-full"})]})}var Sn=e=>jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:e.size,height:e.size,viewBox:"0 0 12 12",fill:"currentColor",...e,children: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"})}),In=e=>jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 12 12",width:e.size,height:e.size,fill:"currentColor",...e,children: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=Hi.forwardRef((e,t)=>{let r=useId();return 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:[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})`}),jsx("defs",{children:jsxs("linearGradient",{id:r,x1:"12.7908",y1:"6.99084",x2:"1.1875",y2:"6.99084",gradientUnits:"userSpaceOnUse",children:[jsx("stop",{stopColor:"rgb(var(--oui-gradient-brand-end))"}),jsx("stop",{stopColor:"rgb(var(--oui-gradient-brand-start))",offset:1})]})})]})});process.env.NODE_ENV!=="production"&&(tt.displayName="EffectiveFee");var co=({routerAdapter:e,onClose:t})=>{let{t:r}=useTranslation();return jsxs(Text,{size:"2xs",className:"oui-whitespace-normal oui-break-words",children:[r("portfolio.feeTier.effectiveFee.tooltip")," ",jsx("a",{href:"/rewards/affiliate",onClick:o=>{o.preventDefault(),e?.onRouteChange({href:"/rewards/affiliate",name:r("portfolio.feeTier.effectiveFee.tooltipLink")}),t?.();},className:"oui-cursor-pointer oui-border-none oui-bg-transparent oui-p-0 oui-text-2xs oui-underline hover:oui-text-base-contrast-80",children:r("portfolio.feeTier.effectiveFee.tooltipLink")})]})},Mn=({routerAdapter:e})=>{let{hide:t}=useModal();return jsx(co,{routerAdapter:e,onClose:t})},Bn=e=>{let{routerAdapter:t}=e,{isMobile:r}=useScreen(),{t:o}=useTranslation();return r?jsx(tt,{onClick:()=>{modal.dialog({size:"sm",title:o("common.tips"),content:jsx(Mn,{routerAdapter:t})});}}):jsx(Tooltip,{content:jsx(co,{routerAdapter:t}),className:"oui-p-1.5 oui-text-base-contrast-54",children:jsx(tt,{className:"oui-cursor-pointer"})})},Kt=e=>{let{t}=useTranslation(),{routerAdapter:r}=useScaffoldContext(),{taker:o,maker:i}=e;return jsxs(Flex,{itemAlign:"center",justify:"between",width:"100%",gap:1,children:[jsxs(Flex,{width:"100%",itemAlign:"center",justify:"between",children:[jsx(Text,{className:"oui-truncate",size:"2xs",children:t("common.fees")}),jsx(AuthGuard,{fallback:()=>jsxs(Text,{className:"oui-truncate",size:"2xs",children:[t("dmm.taker"),": --% / ",t("dmm.maker"),": --%"]}),children:jsxs(Flex,{gap:1,children:[jsxs(Text,{className:"oui-truncate",size:"2xs",children:[t("dmm.taker"),":"]}),jsx(Text,{size:"2xs",className:"oui-text-base-contrast-80",children:o}),jsx(Text,{size:"2xs",children:"/"}),jsxs(Text,{className:"oui-truncate",size:"2xs",children:[t("dmm.maker"),":"]}),jsx(Text,{size:"2xs",className:"oui-text-base-contrast-80",children:i})]})})]}),jsx(Bn,{routerAdapter:r})]})};var $t=e=>jsx(Kt,{...e});var Xt=e=>{let{t}=useTranslation(),{taker:r,maker:o}=e;return jsx(Flex,{itemAlign:"center",justify:"between",width:"100%",gap:1,children:jsxs(Flex,{width:"100%",itemAlign:"center",justify:"between",children:[jsx(Text,{className:"oui-truncate",size:"2xs",children:t("common.fees")}),jsx(AuthGuard,{fallback:()=>jsxs(Text,{className:"oui-truncate",size:"2xs",children:[t("dmm.taker"),": --% / ",t("dmm.maker"),": --%"]}),children:jsxs(Flex,{gap:1,children:[jsxs(Text,{className:"oui-truncate",size:"2xs",children:[t("dmm.taker"),":"]}),jsx(Text,{size:"2xs",className:"oui-text-base-contrast-80",children:r}),jsx(Text,{size:"2xs",children:"/"}),jsxs(Text,{className:"oui-truncate",size:"2xs",children:[t("dmm.maker"),":"]}),jsx(Text,{size:"2xs",className:"oui-text-base-contrast-80",children:o})]})})]})})};var Zt=e=>jsx(Xt,{...e});var Gn=e=>typeof e<"u"&&e!==null,Jt=({symbol:e})=>{let{refereeRebate:t,...r}=useFeeState(),i=useRwaSymbolsInfoStore()?.[e]!==void 0;return Gn(t)?jsx($t,{taker:i?r.rwaEffectiveTakerFee:r.effectiveTakerFee,maker:i?r.rwaEffectiveMakerFee:r.effectiveMakerFee}):jsx(Zt,{taker:i?r.rwaTakerFee:r.takerFee,maker:i?r.rwaMakerFee:r.makerFee})};var yo=[.01,.05,.1],xo=forwardRef((e,t)=>{let{t:r}=useTranslation(),[o,i]=useState(),[n,s]=useState(""),[a,l]=useState(void 0);useImperativeHandle(t,()=>({getValue:()=>n?new Decimal(n)?.toNumber():o})),useEffect(()=>{e.initialValue&&!yo.includes(e.initialValue)?s(e.initialValue.toString()):i(e.initialValue);},[e.initialValue,open]);let d=p=>{i(p),s(""),l(void 0);},u=p=>{if(!p){s(p);return}let m=new Decimal(p);i(void 0),m.gt(3)?(s("3"),l(r("orderEntry.slippage.error.exceed"))):(s(p),l(void 0));},c=e.isMobile?jsx("button",{onClick:()=>{modal.alert({title:r("common.tips"),message:jsx(Text,{size:"2xs",children:r("orderEntry.slippage.tips")})});},children:jsx(ExclamationFillIcon,{className:"oui-text-base-contrast-54",size:16})}):jsx(Tooltip,{content:jsx(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:jsx(TooltipTrigger,{children:jsx(ExclamationFillIcon,{className:"oui-text-base-contrast-54",size:16})})});return jsxs("div",{className:"oui-text-2xs",children:[jsxs(Flex,{mb:2,gapX:1,children:[jsx(Text,{size:"xs",children:r("orderEntry.slippage")}),c]}),jsxs(Flex,{gapX:2,children:[yo.map(p=>jsx(es,{value:p,isActive:o===p,onClick:()=>{d(p);}},p)),jsx(Input,{suffix:"%",formatters:[inputFormatter.numberFormatter,inputFormatter.dpFormatter(2)],value:n,onValueChange:u,classNames:{root:cn("oui-rounded-md oui-bg-base-6","oui-h-[40px] oui-w-[74px]"),input:"oui-text-base-contrast",additional:"oui-pl-1"}})]}),!!a&&jsx(Box,{mt:5,className:"-oui-mb-5",children:jsx(Text,{size:"2xs",color:"danger",children:a})})]})}),es=({value:e,isActive:t,onClick:r})=>jsx(Flex,{intensity:600,justify:"center",itemAlign:"center",r:"md",width:74,height:40,className:cn("oui-cursor-pointer oui-select-none",t&&"oui-bg-primary-light"),onClick:r,children:jsxs(Text,{size:"sm",intensity:80,children:[e,"%"]})});var To=e=>{let{t}=useTranslation(),[r,{setTrue:o,setFalse:i,toggle:n}]=useBoolean(false),{isMobile:s}=useScreen(),a=useRef(null),l=()=>{let d=a.current?.getValue();return e.setSlippage(d?d.toString():"1"),i(),Promise.resolve(true)};return jsxs(Fragment,{children:[jsx(SimpleDialog,{open:r,onOpenChange:n,title:t("common.settings"),contentProps:{size:s?"xs":"sm"},actions:{primary:{disabled:false,label:t("common.save"),onClick:l},secondary:{label:t("common.cancel"),onClick:()=>i()}},children:jsx(xo,{ref:a,isMobile:s,initialValue:e.slippage?Number(e.slippage):void 0})}),jsxs(Flex,{justify:"between",children:[jsx(Text,{size:"2xs",children:t("orderEntry.slippage")}),jsx(AuthGuard,{fallback:()=>jsxs(Text,{size:"2xs",children:[t("orderEntry.slippage.est"),": -% / ",t("common.max"),": --%"]}),children:jsxs(Flex,{gap:1,children:[jsx(Text.numeral,{size:"2xs",rule:"percentages",prefix:`${t("orderEntry.slippage.est")}: `,suffix:` / ${t("common.max")}: `,children:e.estSlippage??0}),jsx("button",{className:"oui-text-2xs",onClick:()=>o(),children:jsxs(Flex,{className:"oui-gap-0.5",as:"span",children:[jsx(Text,{size:"2xs",className:"oui-text-primary",children:`${e.slippage||"-"}%`}),jsx(EditIcon,{className:"oui-text-primary oui-hidden md:oui-block",size:12,opacity:1})]})})]})})]})]})};var Co=e=>jsx(To,{...e});function vo(e){let{canTrade:t,disableFeatures:r,orderType:o,symbol:i}=e,{t:n}=useTranslation();return jsxs("div",{className:"oui-space-y-[2px] xl:oui-space-y-1",children:[jsxs(Flex,{justify:"between",children:[jsx(Text,{size:"2xs",children:n("orderEntry.estLiqPrice")}),jsx(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??"--":"--"})]}),o===OrderType.MARKET&&!r?.includes("slippageSetting")&&jsx(Co,{slippage:e.slippage,setSlippage:e.setSlippage,estSlippage:e.estSlippage}),!r?.includes("feesInfo")&&jsx(Jt,{symbol:e.symbol})]})}var bs=e=>e>=0&&e<50?"oui-text-success":e>=50&&e<80?"oui-text-warning":e>=80?"oui-text-danger":"",or=e=>{let{t}=useTranslation(),{ltv_threshold:r,negative_usdc_threshold:o,isThresholdLoading:i,holdingData:n=[],currentLtv:s,onConvert:a}=e;return jsxs(Flex,{gap:1,className:"oui-w-72 oui-max-w-72",direction:"column",children:[jsxs(Flex,{width:"100%",justify:"between",itemAlign:"center",children:[jsx(Text,{intensity:36,size:"xs",children:t("common.assets")}),jsx(Text,{intensity:36,size:"xs",children:t("transfer.deposit.collateralContribution")})]}),n.map((l,d)=>jsxs(Flex,{width:"100%",justify:"between",itemAlign:"center",children:[jsx(Text,{intensity:80,size:"xs",children:l.token}),jsx(Text,{size:"xs",intensity:80,className:cn(Number(l.collateralContribution)<0&&"oui-text-warning"),children:removeTrailingZeros(l.collateralContribution)})]},`item-${d}`)),jsx(Divider,{className:"oui-w-full"}),jsxs(Flex,{width:"100%",justify:"between",itemAlign:"center",children:[jsx(Text,{intensity:36,size:"xs",children:t("transfer.LTV.currentLTV")}),jsxs(Text,{size:"xs",intensity:36,className:cn("oui-select-none",bs(s)),children:[s,"%"]})]}),jsx(Text,{className:"oui-py-2",intensity:54,size:"2xs",children:t("transfer.LTV.tooltip",{threshold:i?"-":r,usdcThreshold:i?"-":o})}),jsx(Button,{fullWidth:true,size:"md",variant:"outlined",color:"secondary",onClick:a,children:t("transfer.convert.convertAssets")})]})};var Is=()=>{let{data:e,error:t,isLoading:r}=useQuery("/v1/public/auto_convert_threshold",{errorRetryCount:3});return {ltv_threshold:new Decimal(e?.ltv_threshold??0).mul(100).toNumber(),negative_usdc_threshold:e?.negative_usdc_threshold,isLoading:r,error:t}},ir=()=>{let{data:e=[],isLoading:t}=useHoldingStream(),{ltv_threshold:r,negative_usdc_threshold:o,isLoading:i}=Is(),n=useTokensInfo(),{getIndexPrice:s}=useIndexPricesStream(),a=e.map(u=>{let c=n?.find(({token:f})=>f===u.token),p=s(u.token),m=c?account.collateralRatio({baseWeight:c.base_weight??0,discountFactor:c.discount_factor??0,collateralQty:u.holding,collateralCap:c?.user_max_qty??u.holding,indexPrice:p}):zero,_=account.collateralContribution({collateralQty:u.holding,collateralCap:c?.user_max_qty??u.holding,collateralRatio:m.toNumber(),indexPrice:p});return {...u,collateralContribution:_}}),l=useComputedLTV(),d=useCallback(async()=>modal.show("ConvertDialogId"),[]);return {holdingData:a,isHoldingLoading:t,ltv_threshold:r,negative_usdc_threshold:o,isThresholdLoading:i,currentLtv:l,onConvert:d}};var st=()=>{let e=ir();return jsx(or,{...e})};var Lo=e=>{let{canTrade:t,currentLtv:r,quote:o,freeCollateral:i}=e,{t:n}=useTranslation(),s=useMemo(()=>typeof r=="number"&&!Number.isNaN(r)&&r>0,[r]);return jsxs(Flex,{itemAlign:"center",justify:"between",children:[jsx(Text,{size:"2xs",children:n("common.available")}),jsxs(Flex,{itemAlign:"center",justify:"center",gap:1,children:[s&&jsx(Tooltip,{className:"oui-bg-base-6 oui-p-2",content:jsx(st,{}),children:jsx(InfoCircleIcon,{className:"oui-cursor-pointer oui-text-warning oui-opacity-80"})}),jsx(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 Ne(e){let{order_type:t,order_type_ext:r}=e,o=[OrderType.ASK,OrderType.BID].includes(r);return t?t===OrderType.LIMIT&&o:o}function wo(e,t){if([BBOOrderType.COUNTERPARTY1,BBOOrderType.COUNTERPARTY5].includes(e))return t===OrderSide.BUY?OrderType.ASK:OrderType.BID;if([BBOOrderType.QUEUE1,BBOOrderType.QUEUE5].includes(e))return t===OrderSide.BUY?OrderType.BID:OrderType.ASK}function ko(e){if([BBOOrderType.COUNTERPARTY1,BBOOrderType.QUEUE1].includes(e))return OrderLevel.ONE;if([BBOOrderType.COUNTERPARTY5,BBOOrderType.QUEUE5].includes(e))return OrderLevel.FIVE}function Ro(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.t("orderEntry.scaledOrder.fullySuccessful",{total:r}):o===0?i18n.t("orderEntry.scaledOrder.allFailed"):i18n.t("orderEntry.scaledOrder.partiallySuccessful",{successCount:o,total:r})}}var sr=e=>Number.isNaN(Number(e))?0:Number(e);var dr=e=>{let{symbolInfo:t,order:r,onConfirm:o,onCancel:i}=e,{quote:n,quote_dp:s,base_dp:a}=t,{side:l,order_type:d,order_type_ext:u,level:c,symbol:p}=r,{t:m}=useTranslation(),[{rows:_}]=usePositionStream(p),v=_?.[0]?.position_qty,[O,x]=useLocalStorage("orderly_order_confirm",true),L=()=>r.position_type===PositionType.FULL?jsx(Text,{children:m("tpsl.positionType.full")}):jsx(Text,{children:m("tpsl.positionType.partial")}),U=()=>{if(d===OrderType.MARKET||d===OrderType.STOP_MARKET)return jsx(Text,{intensity:80,children:m("common.marketPrice")});if(Ne({order_type:d,order_type_ext:u})){let w=getBBOType({type:u,side:l,level:c}),te={[BBOOrderType.COUNTERPARTY1]:m("orderEntry.bbo.counterparty1"),[BBOOrderType.COUNTERPARTY5]:m("orderEntry.bbo.counterparty5"),[BBOOrderType.QUEUE1]:m("orderEntry.bbo.queue1"),[BBOOrderType.QUEUE5]:m("orderEntry.bbo.queue5")}[w];return jsx(Text,{intensity:80,children:te})}return jsx(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:w,isOrderPrice:te,isEnable:pe,colorType:re})=>pe?!w&&te?jsx(Text,{className:"oui-text-base-contrast-36",children:m("common.marketPrice")}):jsx(Text.numeral,{unit:"USDC",rule:"price",className:cn("oui-text-base-contrast",re==="TP"?"oui-text-trade-profit":"oui-text-trade-loss"),unitClassName:"oui-text-base-contrast-36 oui-ml-1",dp:s,padding:false,children:w}):jsx(Text,{className:"oui-text-base-contrast-36",children:"-- USDC"}),ae=()=>{if(!v||!r.order_quantity)return null;let w=new Decimal(r.order_quantity);return r.position_type===PositionType.FULL&&(w=w.plus(new Decimal(v??0))),jsxs(Flex,{justify:"between",children:[jsx(Text,{children:r.position_type===PositionType.FULL?m("common.positionQty"):m("common.orderQty")}),jsx(Text.numeral,{rule:"price",dp:a,padding:false,className:"oui-text-base-contrast",children:w.toNumber()})]})},W=()=>{if(d===OrderType.TRAILING_STOP){let{activated_price:w,callback_value:te,callback_rate:pe}=r,re=pe?jsxs(Flex,{justify:"between",children:[jsx(Text,{children:m("orderEntry.trailingRate")}),jsxs(Text,{className:"oui-text-base-contrast",children:[pe,"%"]})]}):jsx(lt,{title:m("orderEntry.trailingValue"),value:te,unit:n,dp:s});return jsxs(Fragment,{children:[w&&jsx(lt,{title:m("common.triggerPrice"),value:w,unit:n,dp:s}),re]})}return jsxs(Fragment,{children:[jsxs(Flex,{justify:"between",children:[jsx(Text,{children:m("common.price")}),U()]}),jsx(lt,{title:m("common.estTotal"),value:r.total,unit:n,dp:s})]})},B=jsxs(Flex,{justify:"between",children:[jsx(Text.formatted,{rule:"symbol",showIcon:true,children:r.symbol}),jsxs(Flex,{justify:"end",gapX:1,children:[jsx(Us,{type:d}),l===OrderSide.BUY?jsx(Badge,{color:"buy",size:"sm",children:m("common.buy")}):jsx(Badge,{color:"sell",size:"sm",children:m("common.sell")})]})]}),ce=jsxs(Flex,{justify:"between",children:[jsx(Text,{children:m("common.orderQty")}),jsx(Text.numeral,{rule:"price",dp:a,padding:false,className:"oui-text-base-contrast",children:r.order_quantity})]}),g=(d===OrderType.STOP_LIMIT||d===OrderType.STOP_MARKET&&r.trigger_price)&&jsx(lt,{title:m("common.trigger"),value:r.trigger_price,unit:n,dp:s}),H=(r.tp_trigger_price||r.sl_trigger_price)&&jsxs(Fragment,{children:[jsx(Divider,{className:"oui-my-4"}),jsxs("div",{className:textVariants({size:"sm",intensity:54,className:"oui-space-y-1 oui-w-full oui-flex oui-flex-col oui-gap-3"}),children:[jsx(Text,{className:"oui-text-base-contrast",children:L()}),ae(),jsxs(Flex,{direction:"column",justify:"between",itemAlign:"start",gap:1,className:"oui-w-full",children:[jsxs(Flex,{justify:"between",className:"oui-w-full",children:[jsx(Text,{children:m("tpsl.tpTriggerPrice")}),J({price:r.tp_trigger_price??"",isOrderPrice:false,isEnable:!!r.tp_trigger_price,colorType:"TP"})]}),jsxs(Flex,{justify:"between",className:"oui-w-full",children:[jsx(Text,{children:m("tpsl.tpOrderPrice")}),J({price:r.tp_order_price??"",isOrderPrice:true,isEnable:!!r.tp_trigger_price,colorType:"TP"})]})]}),jsxs(Flex,{direction:"column",justify:"between",itemAlign:"start",gap:1,className:"oui-w-full",children:[jsxs(Flex,{justify:"between",className:"oui-w-full",children:[jsx(Text,{children:m("tpsl.slTriggerPrice")}),J({price:r.sl_trigger_price??"",isOrderPrice:false,isEnable:!!r.sl_trigger_price,colorType:"SL"})]}),jsxs(Flex,{justify:"between",className:"oui-w-full",children:[jsx(Text,{children:m("tpsl.slOrderPrice")}),J({price:r.sl_order_price??"",isOrderPrice:true,isEnable:!!r.sl_trigger_price,colorType:"SL"})]})]})]})]}),ee=jsxs(Flex,{gapX:1,pt:4,pb:5,children:[jsx(Checkbox,{id:"orderConfirm",color:"white",onCheckedChange:w=>{x(!w);}}),jsx("label",{htmlFor:"orderConfirm",className:textVariants({size:"xs",intensity:54}),children:m("orderEntry.disableOrderConfirm")})]}),me=jsxs(Grid,{cols:2,gapX:3,children:[jsx(Button,{color:"secondary",size:"md",onClick:()=>i(),children:m("common.cancel")}),jsx(Button,{size:"md",onClick:()=>o(),children:m("common.confirm")})]});return jsxs(Fragment,{children:[B,jsx(Divider,{className:"oui-my-4"}),jsxs("div",{className:textVariants({size:"sm",intensity:54,className:"oui-space-y-1"}),children:[ce,g,W()]}),H,ee,me]})},lt=e=>{let{title:t,value:r,unit:o,dp:i}=e;return jsxs(Flex,{justify:"between",children:[jsx(Text,{children:t}),jsx(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})]})};dr.displayName="OrderConfirmDialog";var Us=e=>{let{t}=useTranslation(),r=useMemo(()=>{switch(e.type){case OrderType.LIMIT:return t("orderEntry.orderType.limit");case OrderType.MARKET:return t("common.marketPrice");case OrderType.STOP_LIMIT:return t("orderEntry.orderType.stopLimit");case OrderType.STOP_MARKET:return t("orderEntry.orderType.stopMarket");case OrderType.TRAILING_STOP:return t("orderEntry.orderType.trailingStop");default:return ""}},[e.type]);return jsx(Badge,{color:"neutral",size:"sm",children:r})},Gs=e=>{let{close:t,resolve:r,reject:o,...i}=e;return jsx(dr,{...i,onCancel:()=>{o(),t();},onConfirm:()=>{r(),t();}})},cr="orderConfirm";registerSimpleDialog(cr,Gs,{size:"sm",title:()=>i18n.t("orderEntry.orderConfirm")});var qo=memo(e=>{let{t}=useTranslation();return jsx(SimpleDialog,{open:e.open,title:t("orderEntry.orderConfirm"),closable:true,onOpenChange:e.onOpenChange,size:"sm",actions:{primary:{label:t("orderEntry.placeOrderNow"),className:"oui-text-sm oui-font-semibold oui-w-[100%] oui-h-8",onClick:()=>(e.onConfirm(),Promise.resolve())},secondary:{label:t("common.cancel"),className:"oui-text-sm oui-font-semibold oui-w-[100%] oui-h-8",onClick:()=>(e.onOpenChange(false),Promise.resolve())}},children:jsx("div",{className:"oui-text-2xs lg:oui-text-sm",children:t("orderEntry.maxQty.reminder.content",{maxQty:`${e.maxQty} ${e.base}`})})})});var fr=e=>{let{order:t,symbolInfo:r,dataSource:o,national:i,askAndBid:n,totalQuantity:s}=e,{base:a,quote:l,base_dp:d,quote_dp:u}=r,{t:c}=useTranslation(),p=()=>{e.reject(),e.close?.();},m=()=>{e.resolve(),e.close?.();},_=useMemo(()=>[{title:c("common.symbol"),dataIndex:"symbol",width:125,render:(f,v)=>jsxs(Flex,{gap:2,children:[jsx("div",{className:cn("oui-h-[38px] oui-w-1 oui-shrink-0 oui-rounded-[1px]",v.side===OrderSide.BUY?"oui-bg-trade-profit":"oui-bg-trade-loss")}),jsxs(Flex,{direction:"column",itemAlign:"start",children:[jsxs(Flex,{gapX:1,children:[jsx(TokenIcon,{symbol:f,className:"oui-size-3"}),jsx(Text.formatted,{rule:"symbol",size:"xs",formatString:"base-type",children:f})]}),jsx(Badge,{color:"neutral",size:"xs",children:c("orderEntry.orderType.limit")})]})]})},{title:c("common.quantity"),dataIndex:"order_quantity",width:100,render:(f,v)=>jsx(Text.numeral,{rule:"price",dp:d,padding:false,color:v.side===OrderSide.BUY?"buy":"sell",children:f})},{title:c("common.orderPrice"),dataIndex:"order_price",width:100,render:(f,v)=>{let O=!!(v.side===OrderSide.BUY?n?.[0]&&Number(f)>=n?.[0]:n?.[1]&&Number(f)<=n?.[1]);return jsxs(Flex,{gapX:1,children:[jsx(Text.numeral,{rule:"price",dp:u,children:f}),O&&jsx(Tooltip,{content:c("orderEntry.confirmScaledOrder.orderPrice.warning"),className:"oui-w-[240px] oui-text-2xs oui-font-semibold oui-text-base-contrast-80",children:jsx(ra,{className:"oui-text-warning-darken"})})]})}}],[c,r,n,d,u]);return jsxs("div",{className:"oui-font-semibold",children:[jsx(DataTable,{classNames:{root: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:_,bordered:true,onRow:()=>({className:cn("oui-h-[50px]")})}),jsxs("div",{className:"oui-mb-5 oui-mt-4 oui-text-2xs",children:[jsxs(Flex,{justify:"between",children:[jsx(Text,{children:c("orderEntry.totalOrders")}),jsx(Text,{intensity:80,children:t.orders?.length})]}),jsxs(Flex,{justify:"between",mt:2,children:[jsx(Text,{children:c("orderEntry.totalQuantity")}),jsx(Text.numeral,{rule:"price",unit:a,dp:d,padding:false,intensity:80,unitClassName:"oui-text-base-contrast-36 oui-ml-1",children:s})]}),jsxs(Flex,{justify:"between",mt:2,children:[jsx(Text,{children:c("common.notional")}),jsx(Text.numeral,{rule:"price",unit:l,dp:u,padding:false,intensity:80,unitClassName:"oui-text-base-contrast-36 oui-ml-1",children:i})]})]}),jsxs(Grid,{cols:2,gapX:3,children:[jsx(Button,{color:"secondary",size:"md",onClick:p,children:c("common.cancel")}),jsx(Button,{size:"md",onClick:m,children:c("common.confirm")})]})]})},ra=forwardRef((e,t)=>jsx("svg",{width:"12",height:"13",viewBox:"0 0 12 13",fill:"currentColor",xmlns:"http://www.w3.org/2000/svg",ref:t,...e,children: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=useEventEmitter(),[t,r]=useState([0,0]),o=useDebouncedCallback(i=>{let n=i.asks?.[i.asks.length-1]?.[0],s=i.bids?.[0]?.[0];r([n,s]);},200);return useEffect(()=>(e.on("orderbook:update",o),()=>{e.off("orderbook:update",o),o.cancel();}),[o]),t}function gr(e){let{order:t,symbolInfo:r}=e,o=t.orders,i=dt(),n=useMemo(()=>o.reduce((l,d)=>l.add(new Decimal(d.order_price).mul(d.order_quantity)),zero).toNumber(),[o]),s=useMemo(()=>o.reduce((l,d)=>l.add(new Decimal(d.order_quantity)),zero).toString(),[o,r.base_dp]);return {dataSource:o,national:n,askAndBid:i,totalQuantity:s}}var Wo=e=>{let t=gr(e);return jsx(fr,{...e,...t})},ct="scaledOrderConfirm";registerSimpleDialog(ct,Wo,{size:"md",title:()=>i18n.t("orderEntry.confirmScaledOrder"),contentProps:{}});var Ko=e=>{let{t}=useTranslation(),r=useMemo(()=>[{label:t("orderEntry.orderType.limitOrder"),value:OrderType.LIMIT},{label:t("orderEntry.orderType.marketOrder"),value:OrderType.MARKET},{label:t("orderEntry.orderType.stopLimit"),value:OrderType.STOP_LIMIT},{label:t("orderEntry.orderType.stopMarket"),value:OrderType.STOP_MARKET},{label:t("orderEntry.orderType.scaledOrder"),value:OrderType.SCALED},{label:t("orderEntry.orderType.trailingStop"),value:OrderType.TRAILING_STOP}],[t]),o=useMemo(()=>({[OrderType.LIMIT]:t("orderEntry.orderType.limit"),[OrderType.MARKET]:t("common.marketPrice"),[OrderType.STOP_LIMIT]:t("orderEntry.orderType.stopLimit"),[OrderType.STOP_MARKET]:t("orderEntry.orderType.stopMarket"),[OrderType.SCALED]:t("orderEntry.orderType.scaledOrder"),[OrderType.TRAILING_STOP]:t("orderEntry.orderType.trailingStop")}),[t]);return jsx(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"},classNames:{trigger:"oui-bg-base-6 oui-border-line"},valueFormatter:(i,n)=>{if(!r.find(l=>l.value===i))return jsx(Text,{size:"xs",children:n.placeholder});let a=o[i];return jsx(Text,{size:"xs",color:e.canTrade?e.side===OrderSide.BUY?"buy":"sell":void 0,children:a})},size:"md"})};var Xo=e=>{let{symbol:t,side:r,symbolLeverage:o}=e,{isMobile:i}=useScreen(),{maxLeverage:n}=useSymbolLeverage(t),s=o||n,a=()=>{let l=i?SymbolLeverageSheetId:SymbolLeverageDialogId;modal.show(l,{symbol:t,side:r,curLeverage:s});};return jsxs(Flex,{justify:"center",itemAlign:"center",gapX:1,className:cn("oui-h-8","oui-rounded oui-border oui-border-line oui-bg-base-6","oui-cursor-pointer oui-select-none oui-text-xs oui-font-semibold oui-text-base-contrast-54"),onClick:a,children:[jsx(Text,{children:"Cross"}),jsx(Text.numeral,{dp:0,rm:Decimal.ROUND_DOWN,unit:"X",children:s})]})};function Jo(e){let{canTrade:t,side:r,order_type:o,setOrderValue:i}=e,{t:n}=useTranslation();return jsxs(Fragment,{children:[jsxs("div",{className:cn("oui-grid oui-w-full oui-flex-1 oui-gap-x-2 lg:oui-flex lg:oui-gap-x-[6px]","oui-grid-cols-2"),children:[jsx(Button,{onClick:()=>{e.setOrderValue("side",OrderSide.BUY);},size:"md",fullWidth:true,"data-type":OrderSide.BUY,className:cn(r===OrderSide.BUY&&t?"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:n("common.buy")}),jsx(Button,{onClick:()=>{e.setOrderValue("side",OrderSide.SELL);},"data-type":OrderSide.SELL,fullWidth:true,size:"md",className:cn(r===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:n("common.sell")})]}),jsxs("div",{className:cn("oui-grid oui-gap-x-2 lg:oui-flex lg:oui-gap-x-[6px]","oui-grid-cols-2"),children:[jsx("div",{className:"oui-w-full",children:jsx(Ko,{type:o,side:r,canTrade:t,onChange:s=>{i("order_type",s);}})}),jsx("div",{className:"oui-w-full",children:jsx(Xo,{symbol:e.symbol,side:e.side,symbolLeverage:e.symbolLeverage})})]})]})}var xr=createContext({}),P=()=>useContext(xr);var ei=e=>{let{errorMsgVisible:t,symbolInfo:r,onFocus:o,onBlur:i,getErrorMsg:n,setOrderValue:s,setOrderValues:a,currentFocusInput:l,errors:d,priceInputRef:u,priceInputContainerRef:c,triggerPriceInputRef:p,activatedPriceInputRef:m,lastQuantityInputType:_,leverage:f}=e,v=useMemo(()=>({errorMsgVisible:t,symbolInfo:r,onFocus:o,onBlur:i,getErrorMsg:n,setOrderValue:s,setOrderValues:a,currentFocusInput:l,errors:d,priceInputRef:u,priceInputContainerRef:c,triggerPriceInputRef:p,activatedPriceInputRef:m,lastQuantityInputType:_,leverage:f}),[t,r,o,i,n,s,a,l,d,u,c,p,m,_,f]);return jsx(xr.Provider,{value:v,children:e.children})};var I=forwardRef((e,t)=>{let{placeholder:r="0"}=e,{errorMsgVisible:o}=P();return jsx(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:e.prefix||jsx(Fa,{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??EMPTY_LIST,inputFormatter.numberFormatter,inputFormatter.currencyFormatter,inputFormatter.decimalPointFormatter],classNames:{root: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:cn("oui-mb-1 oui-mt-5 oui-h-5",e?.classNames?.input),suffix: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})});I.displayName="CustomInput";var Fa=e=>jsx("label",{htmlFor:e.id,className:cn("oui-absolute oui-left-2 oui-top-[7px] oui-text-2xs oui-text-base-contrast-36",e.className),children:e.children});var ti=e=>{let{t}=useTranslation(),r=useMemo(()=>[{label:t("orderEntry.bbo.counterparty1"),value:BBOOrderType.COUNTERPARTY1},{label:t("orderEntry.bbo.counterparty5"),value:BBOOrderType.COUNTERPARTY5},{label:t("orderEntry.bbo.queue1"),value:BBOOrderType.QUEUE1},{label:t("orderEntry.bbo.queue5"),value:BBOOrderType.QUEUE5}],[]);return jsx(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 jsx(Box,{children:jsx(Text,{size:"sm",children:n?.label})})}})};var oi=e=>{let{quote:t,bbo:r,fillMiddleValue:o}=e,{t:i}=useTranslation();return jsxs(Flex,{direction:"column",itemAlign:"end",className:cn("oui-order-entry-limit-price-input-suffix","oui-text-2xs"),children:[t,jsxs(Flex,{justify:"end",itemAlign:"center",gap:2,children:[jsx(Flex,{px:3,height:20,justify:"center",itemAlign:"center",r:"base",className: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"?modal.dialog({title:i("common.tips"),size:"xs",content:jsx(Text,{intensity:54,children:i("orderEntry.bbo.disabled.tips")})}):r.toggleBBO();},children:jsx(Text,{className: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")})}),jsx(Text,{className:cn("oui-select-none","oui-cursor-pointer oui-text-primary"),onClick:o,children:"Mid"})]})]})};var ii=e=>{let{bbo:t}=e,{t:r}=useTranslation(),{symbolInfo:o,onFocus:i,onBlur:n,getErrorMsg:s,setOrderValue:a,priceInputRef:l,priceInputContainerRef:d}=P(),{quote:u,quote_dp:c}=o,p=t.bboStatus==="on",m=e.order_type===OrderType.LIMIT?jsx(oi,{quote:u,bbo:t,fillMiddleValue:e.fillMiddleValue}):u;return jsxs("div",{ref:d,className:"oui-group oui-relative oui-w-full",children:[jsx(I,{id:"order_price_input",name:"order_price_input",label:r("common.price"),suffix:m,value:e.order_price,onChange:_=>{a("order_price",_);},error:s("order_price"),formatters:[inputFormatter.dpFormatter(c)],onFocus:i(1),onBlur:n(1),readonly:p,ref:l,classNames:{root:cn(p&&"focus-within:oui-outline-transparent "),input:cn(p&&"oui-cursor-auto")}}),t.bboStatus==="on"&&jsx("div",{className:cn("oui-absolute oui-bottom-1 oui-left-0"),children:jsx(ti,{value:t.bboType,onChange:t.onBBOChange,contentStyle:{width:e.priceInputContainerWidth}})})]})};var Sr=memo(e=>{let{t}=useTranslation(),{symbolInfo:r,onFocus:o,onBlur:i,getErrorMsg:n,setOrderValue:s}=P(),{base:a,base_dp:l}=r;return jsx(I,{id:"order_quantity_input",name:"order_quantity_input",label:t("common.qty"),suffix:a,error:n("order_quantity"),value:e.order_quantity,onChange:d=>{s("order_quantity",d);},formatters:[inputFormatter.dpFormatter(l)],onFocus:o(3),onBlur:i(3),className:"!oui-rounded-r",classNames:{suffix:"oui-justify-end"}})});Sr.displayName="QuantityInput";var Ir=memo(e=>{let{t}=useTranslation(),r=useMemo(()=>[{label:t("orderEntry.orderSize"),value:"orderSize"},{label:t("orderEntry.initialMargin"),value:"initialMargin"}],[t]);return jsx(Select.options,{size:"xs",value:e.value,valueFormatter:(o,i)=>r.find(s=>s.value===o)?.label+"\u2248",classNames:{trigger:cn("oui-w-auto oui-border-none oui-bg-transparent","oui-absolute oui-left-0 oui-top-[5px] oui-text-2xs oui-text-base-contrast-36")},onValueChange:e.onChange,options:r})});Ir.displayName="TotalTypeSelect";var Lr=memo(e=>{let{t}=useTranslation(),{total:r}=e,[o,i]=useState(""),{symbolInfo:n,onFocus:s,onBlur:a,getErrorMsg:l,setOrderValue:d,leverage:u=1,currentFocusInput:c}=P(),{quote:p}=n,[m,_]=useLocalStorage("orderly_order_total_type","orderSize");useEffect(()=>{if(r){if(c!==6){let O=new Decimal(r).div(u).todp(2).toString();i(O);}}else i("");},[r,u,c]);let f=O=>{let x=O?new Decimal(O).mul(u).toString():"";d("total",x),i(O);},v=jsx(Ir,{value:m,onChange:_});return m==="initialMargin"?jsx(I,{id:"order_margin_input",name:"order_margin_input",label:`${t("orderEntry.initialMargin")}\u2248`,prefix:v,suffix:p,error:l("total")?"initial margin error":"",value:o,onChange:f,formatters:[inputFormatter.dpFormatter(2)],onFocus:s(6),onBlur:a(6),className:"!oui-rounded-l",classNames:{suffix:"oui-justify-end"}}):jsx(I,{id:"order_total_input",name:"order_total_input",label:`${t("orderEntry.orderSize")}\u2248`,prefix:v,suffix:p,error:l("total"),value:e.total,onChange:O=>{d("total",O);},className:"!oui-rounded-l",classNames:{suffix:"oui-justify-end"},formatters:[inputFormatter.dpFormatter(2)],onFocus:s(5),onBlur:a(5)})});Lr.displayName="TotalInput";var Ke=memo(e=>jsxs(Grid,{cols:2,className:"oui-group oui-space-x-1",children:[jsx(Sr,{order_quantity:e.order_quantity}),jsx(Lr,{total:e.total})]}));Ke.displayName="QtyAndTotalInput";var li=memo(e=>{let{t}=useTranslation(),{setOrderValue:r}=P(),o=()=>{modal.dialog({title:t("common.tips"),size:"sm",content:jsx(pl,{value:e.distribution_type})});};return jsxs(Flex,{direction:"column",itemAlign:"start",justify:"center",p:2,r:"base",width:"100%",intensity:600,className:cn("oui-t-rounded oui-text-base-contrast-36","oui-border oui-border-solid oui-border-line",e.className),children:[jsx(Text,{size:"2xs",className:"oui-cursor-pointer oui-border-b oui-border-dashed oui-border-line-12",onClick:o,children:t("orderEntry.quantityDistribution")}),jsx(fl,{value:e.distribution_type,onValueChange:i=>{r("distribution_type",i);}})]})}),pl=e=>{let{t}=useTranslation(),[r,o]=useState(DistributionType.FLAT);useEffect(()=>{o([DistributionType.FLAT,DistributionType.ASCENDING,DistributionType.DESCENDING].includes(e.value)?e.value:DistributionType.FLAT);},[e.value]);let i=useMemo(()=>[{type:DistributionType.FLAT,title:t("orderEntry.distributionType.flat"),description:t("orderEntry.distributionType.flat.description"),formula:`${t("orderEntry.skew")} = 1`,quantity:jsx(gl,{})},{type:DistributionType.ASCENDING,title:t("orderEntry.distributionType.ascending"),description:t("orderEntry.distributionType.ascending.description"),formula:`${t("orderEntry.skew")} > 1`,quantity:jsx(yl,{})},{type:DistributionType.DESCENDING,title:t("orderEntry.distributionType.descending"),description:t("orderEntry.distributionType.descending.description"),formula:`0 < ${t("orderEntry.skew")} < 1`,quantity:jsx(bl,{})}],[]),n=useMemo(()=>i.find(s=>s.type===r),[i,r]);return jsxs("div",{className:"oui-text-2xs oui-font-semibold oui-text-base-contrast-54",children:[jsxs(Flex,{direction:"column",itemAlign:"start",gapY:1,children:[jsx(Text,{intensity:80,children:t("orderEntry.quantityDistribution.description")}),jsx(Text,{children:t("orderEntry.quantityDistribution.formula")})]}),jsxs(Flex,{intensity:600,p:1,r:"base",mt:3,itemAlign:"start",children:[jsx(Flex,{direction:"column",itemAlign:"start",children:i.map(s=>jsx(Box,{intensity:r===s.type?500:600,width:78,p:2,className:"oui-cursor-pointer oui-rounded-l",onClick:()=>{o(s.type);},children:jsx(Text,{children:s.title})},s.title))}),jsxs(Flex,{direction:"column",itemAlign:"start",gapY:1,p:2,intensity:500,width:"100%",className:cn("oui-rounded-r",r===DistributionType.FLAT&&"oui-rounded-bl",r===DistributionType.ASCENDING&&"oui-rounded-l",r===DistributionType.DESCENDING&&"oui-rounded-tl"),children:[jsx("div",{children:n?.formula}),jsx(Text,{children:n?.description}),jsx(Flex,{width:"100%",justify:"center",children:n?.quantity}),jsxs(Flex,{width:"100%",gapX:1,justify:"center",children:[jsx(Text,{className:"oui-text-base-1",children:t("common.price")}),jsx(xl,{})]})]})]})]})},fl=e=>{let{value:t,onValueChange:r}=e,{t:o}=useTranslation(),i=s=>a=>{r(s);},n=useMemo(()=>({[DistributionType.FLAT]:o("orderEntry.distributionType.flat"),[DistributionType.ASCENDING]:o("orderEntry.distributionType.ascending.abbr"),[DistributionType.DESCENDING]:o("orderEntry.distributionType.descending.abbr"),[DistributionType.CUSTOM]:o("orderEntry.distributionType.custom")}),[o]);return jsx(Flex,{className:cn("oui-gap-x-[6px] lg:oui-gap-x-2"),wrap:"wrap",children:Object.values(DistributionType).map(s=>jsxs(Flex,{itemAlign:"center",children:[jsx(Checkbox,{id:`distribution-type-${s}`,color:"white",variant:"radio",checked:t===s,onCheckedChange:i(s)}),jsx("label",{htmlFor:`distribution-type-${s}`,className:cn("oui-text-2xs","oui-ml-1","oui-whitespace-nowrap oui-break-normal"),children:n[s]})]},s))})},gl=()=>jsxs("svg",{width:"218",height:"40",viewBox:"0 0 218 40",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[jsx("rect",{x:"18",y:"18",width:"181",height:"4",fill:"rgb(var(--oui-color-base-2))"}),jsx("circle",{cx:"15",cy:"20",r:"6",fill:"rgb(var(--oui-color-base-2))",stroke:"rgb(var(--oui-color-base-5))",strokeWidth:"2"}),jsx("circle",{cx:"62",cy:"20",r:"6",fill:"rgb(var(--oui-color-base-2))",stroke:"rgb(var(--oui-color-base-5))",strokeWidth:"2"}),jsx("circle",{cx:"109",cy:"20",r:"6",fill:"rgb(var(--oui-color-base-2))",stroke:"rgb(var(--oui-color-base-5))",strokeWidth:"2"}),jsx("circle",{cx:"156",cy:"20",r:"6",fill:"rgb(var(--oui-color-base-2))",stroke:"rgb(var(--oui-color-base-5))",strokeWidth:"2"}),jsx("circle",{cx:"203",cy:"20",r:"6",fill:"rgb(var(--oui-color-base-2))",stroke:"rgb(var(--oui-color-base-5))",strokeWidth:"2"})]}),yl=()=>jsxs("svg",{width:"218",height:"40",viewBox:"0 0 218 40",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[jsx("rect",{x:"18",y:"18",width:"181",height:"4",fill:"rgb(var(--oui-color-base-2))"}),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"}),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"}),jsx("circle",{cx:"109",cy:"20",r:"6",fill:"rgb(var(--oui-color-base-2))",stroke:"rgb(var(--oui-color-base-5))",strokeWidth:"2"}),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"}),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"})]}),bl=()=>jsxs("svg",{width:"218",height:"40",viewBox:"0 0 218 40",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[jsx("rect",{width:"181",height:"4",transform:"matrix(-1 0 0 1 200 18)",fill:"rgb(var(--oui-color-base-2))"}),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"}),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"}),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"}),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"}),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"})]}),xl=()=>jsx("svg",{width:"176",height:"8",viewBox:"0 0 176 8",fill:"none",xmlns:"http://www.w3.org/2000/svg",children: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 wr=memo(e=>{let{t}=useTranslation(),{symbolInfo:r,onFocus:o,onBlur:i,getErrorMsg:n,setOrderValue:s}=P(),{quote:a,quote_dp:l}=r;return jsxs(Fragment,{children:[jsx(I,{label:t("orderEntry.startPrice"),suffix:a,id:"order_start_price_input",value:e.start_price,error:n("start_price"),onChange:d=>{s("start_price",d);},formatters:[inputFormatter.dpFormatter(l)],onFocus:o(7),onBlur:i(7),classNames:{root:"oui-rounded-t-xl"}}),jsx(I,{label:t("orderEntry.endPrice"),suffix:a,id:"order_end_price_input",value:e.end_price,error:n("end_price"),onChange:d=>{s("end_price",d);},formatters:[inputFormatter.dpFormatter(l)],onFocus:o(8),onBlur:i(8)})]})});wr.displayName="ScaledPriceInput";var Il=e=>jsx(Text,{size:"2xs",intensity:36,children:e}),ci=e=>{let{base:t,quote:r}=e,o=useMemo(()=>[{name:r},{name:t}],[t,r]);return jsx(Select.tokens,{variant:"text",size:"xs",iconSize:"2xs",tokens:o,classNames:{trigger:cn("oui-absolute oui-right-0 oui-top-1","oui-w-full oui-justify-end")},value:e.value,onValueChange:e.onValueChange,valueFormatter:Il,contentProps:{align:"end",alignOffset:-1,sideOffset:-4,className:"oui-border oui-border-line-6"}})};var fi=memo(e=>{let{t}=useTranslation(),{errors:r,symbolInfo:o,onFocus:i,onBlur:n,getErrorMsg:s,setOrderValue:a}=P(),[l,d]=useLocalStorage("orderly_order_quantity_unit","quote"),{base:u,quote:c,base_dp:p,quote_dp:m}=o,_=l==="base",v=jsx(ci,{base:u,quote:c,value:_?u:c,onValueChange:O=>{d(O===u?"base":"quote");}});return _?jsx(I,{label:t("common.qty"),suffix:v,id:"order_quantity_input",name:"order_quantity_input",className:"!oui-rounded-r",value:e.order_quantity,error:s("order_quantity",`${r?.order_quantity?.value} ${u}`),onChange:O=>{a("order_quantity",O);},formatters:[inputFormatter.dpFormatter(p)],onFocus:i(3),onBlur:n(3)}):jsx(I,{label:t("common.qty"),suffix:v,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:[inputFormatter.dpFormatter(m)],onFocus:i(5),onBlur:n(5)})});var yi=memo(e=>{let{t}=useTranslation(),{onFocus:r,onBlur:o,getErrorMsg:i,setOrderValue:n}=P();return jsx(I,{id:"order_skew_input",label:t("orderEntry.skew"),value:e.skew,error:i("skew"),onChange:s=>{n("skew",s);},onFocus:r(10),onBlur:o(10),overrideFormatters:[inputFormatter.rangeFormatter({min:0,max:100,dp:2}),inputFormatter.dpFormatter(2)],classNames:{root:"oui-rounded-b-xl"}})});var xi=memo(e=>{let{t}=useTranslation(),{onFocus:r,onBlur:o,getErrorMsg:i,setOrderValue:n}=P();return jsx(I,{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:[inputFormatter.numberFormatter,inputFormatter.dpFormatter(0)],onFocus:r(9),onBlur:o(9)})});var Ci=e=>{let{values:t}=e,r=t.distribution_type===DistributionType.CUSTOM;return jsxs("div",{className:"oui-space-y-1",children:[jsx(wr,{start_price:t.start_price,end_price:t.end_price}),jsxs(Grid,{cols:2,className:"oui-group oui-space-x-1",children:[jsx(fi,{order_quantity:t.order_quantity,total:t.total}),jsx(xi,{total_orders:t.total_orders})]}),jsx(li,{distribution_type:t.distribution_type,className:cn(!r&&"oui-rounded-b-xl")}),r&&jsx(yi,{skew:t.skew})]})};var Rr=memo(e=>{let{t}=useTranslation(),{symbolInfo:r,onFocus:o,onBlur:i,getErrorMsg:n,setOrderValue:s,triggerPriceInputRef:a}=P();return jsx("div",{className:"oui-group",children:jsx(I,{ref:a,id:"order_trigger_price_input",name:"order_trigger_price_input",label:t("common.trigger"),suffix:r.quote,value:e.trigger_price,onChange:l=>{s("trigger_price",l);},error:n("trigger_price"),formatters:[inputFormatter.dpFormatter(r.quote_dp)],onFocus:o(2),onBlur:i(2)})})});Rr.displayName="TriggerPriceInput";var Ar=memo(e=>{let{t}=useTranslation(),{symbolInfo:r,onFocus:o,onBlur:i,getErrorMsg:n,setOrderValue:s,activatedPriceInputRef:a}=P();return jsx("div",{className:"oui-group",children:jsx(I,{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:l=>{s("activated_price",l);},formatters:[inputFormatter.dpFormatter(r.quote_dp)],onFocus:o(11),onBlur:i(11)})})});Ar.displayName="ActivePriceInput";var $l=[1,2,3,5],Mr=memo(e=>{let{setOrderValue:t}=P();return jsx(Flex,{gapX:2,className:e.className,children:$l.map(r=>{let o=r.toString(),i=e.callback_rate===o;return jsx(Flex,{justify:"center",itemAlign:"center",width:46,height:18,className: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:jsxs(Text,{size:"2xs",intensity:i?80:36,weight:"semibold",children:[r,"%"]})},r)})})});Mr.displayName="CallbackRatePercentages";var Br=memo(e=>{let{quote:t}=e,r=useMemo(()=>[{label:t,value:TrailingCallbackType.VALUE},{label:"%",value:TrailingCallbackType.RATE}],[t]);return jsx(Select.options,{variant:"text",size:"xs",options:r,classNames:{trigger: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"}})});Br.displayName="trailingCallbackSelect";var Dr=memo(e=>{let{callback_value:t,callback_rate:r}=e,{t:o}=useTranslation(),{symbolInfo:i,onFocus:n,onBlur:s,getErrorMsg:a,setOrderValue:l,setOrderValues:d}=P(),{quote:u,quote_dp:c}=i,p=useRef(),m=useRef(),[_,f]=useLocalStorage("orderly_order_trailing_callback_type",TrailingCallbackType.VALUE),v=useCallback(x=>{f(x),x===TrailingCallbackType.RATE?(p.current=t,d({callback_value:"",callback_rate:m.current})):(m.current=r,d({callback_value:p.current,callback_rate:""}));},[t,r]),O=jsx(Br,{quote:u,value:_,onValueChange:v});return _===TrailingCallbackType.RATE?jsxs("div",{className:"oui-relative",children:[jsx(I,{id:"order_callback_rate_input",name:"order_callback_rate_input",label:o("orderEntry.trailingRate"),suffix:O,error:a("callback_rate"),value:r,onChange:x=>{l("callback_rate",x);},formatters:[inputFormatter.dpFormatter(1)],onFocus:x=>{n(13)(x);},onBlur:x=>{s(13)(x);},classNames:{root:"oui-h-[68px]",input:"oui-mb-5",prefix:"!oui-top-1"}}),jsx(Mr,{className:"oui-absolute oui-bottom-1 oui-left-2",callback_rate:r})]}):jsx(I,{id:"order_callback_value_input",name:"order_callback_value_input",label:o("orderEntry.trailingValue"),suffix:O,error:a("callback_value"),value:t,onChange:x=>{l("callback_value",x);},formatters:[inputFormatter.dpFormatter(c)],onFocus:n(12),onBlur:s(12),classNames:{input:"!oui-mb-[6px]",prefix:"!oui-top-1"}})});Dr.displayName="TrailingCallbackInput";var Ei=e=>{let{values:t}=e;return jsxs("div",{className:"oui-space-y-1",children:[jsx(Ar,{activated_price:t.activated_price}),jsx(Dr,{callback_value:t.callback_value,callback_rate:t.callback_rate}),jsx(Ke,{order_quantity:t.order_quantity,total:t.total})]})};function Li(e){let{values:t}=e,r=t.order_type;if(r===OrderType.SCALED)return jsx(Ci,{values:t});if(r===OrderType.TRAILING_STOP)return jsx(Ei,{values:t});let o=r===OrderType.STOP_LIMIT||r===OrderType.STOP_MARKET,i=r===OrderType.LIMIT||r===OrderType.STOP_LIMIT,n=o&&jsx(Rr,{trigger_price:t.trigger_price}),s=i&&jsx(ii,{order_type:t.order_type,order_price:t.order_price,bbo:e.bbo,fillMiddleValue:e.fillMiddleValue,priceInputContainerWidth:e.priceInputContainerWidth});return jsxs("div",{className:"oui-space-y-1",children:[n,s,jsx(Ke,{order_quantity:t.order_quantity,total:t.total})]})}var gu=0,Ae=100,Qr=memo(e=>{let{canTrade:t,side:r,order_quantity:o,maxQty:i}=e,[n,s]=useState(0),{setOrderValue:a,symbolInfo:l,lastQuantityInputType:d}=P(),{base_dp:u,base_tick:c}=l,{t:p}=useTranslation(),m=useMemo(()=>t?r===OrderSide.BUY?"buy":"sell":void 0,[r,t]),_=useMemo(()=>r===OrderSide.BUY?p("orderEntry.maxBuy"):p("orderEntry.maxSell"),[r,p]),f=x=>{d.current=4,s(x);},v=x=>{let L=new Decimal(x).div(Ae).mul(i).toFixed(u,Decimal.ROUND_DOWN);a("order_quantity",utils.formatNumber(L,c));},O=()=>{f(Ae),n===Ae&&v(Ae);};return useEffect(()=>{d.current===4&&v(n);},[n,i]),useEffect(()=>{let x=()=>o&&Number(o)!==0&&i!==0?new Decimal(Math.min(Number(o),i)).div(i).mul(Ae).todp(2,Decimal.ROUND_DOWN).toNumber():0;d.current!==4&&s(x());},[o,i]),jsxs("div",{children:[jsx(Slider,{disabled:i===0||!t,value:[n],color:m,markCount:4,showTip:true,onValueChange:x=>{f(x[0]);},min:gu,max:Ae}),jsxs(Flex,{justify:"between",className:"oui-pt-1 xl:oui-pt-2",children:[jsx(Text.numeral,{size:"2xs",color:m,dp:2,padding:false,suffix:"%",children:t?n:0}),jsxs(Flex,{children:[jsx("button",{className:textVariants({size:"2xs",className:"oui-mr-1"}),onClick:O,"data-testid":"oui-testid-orderEntry-maxQty-value-button",children:_}),jsx(Text.numeral,{size:"2xs",color:m,dp:u,padding:false,"data-testid":"oui-testid-orderEntry-maxQty-value",children:t?i:0})]})]})]})});Qr.displayName="QuantitySlider";var Ot=({checked:e,onCheckedChange:t,className:r,testId:o="oui-testid-orderEntry-reduceOnly-switch"})=>{let{t:i}=useTranslation();return jsxs(Flex,{itemAlign:"center",gapX:1,className:r,children:[jsx(Switch,{"data-testid":o,className:"oui-h-[14px]",id:"reduceOnly",checked:e,onCheckedChange:t}),jsx("label",{htmlFor:"reduceOnly",className:"oui-text-xs",children:i("orderEntry.reduceOnly")})]})};var Ur=createContext({}),vt=()=>useContext(Ur);var Bi=e=>{let{type:t,values:r,quote_dp:o}=e,{t:i}=useTranslation(),[n,s]=useState(true),{mode:a,setMode:l,tipsEle:d}=vt(),[u,c]=useState(false),[p,m]=useState(false),_=useMemo(()=>{switch(a){case "Offset":return `${t.toLowerCase()}_offset`;case "Offset%":return `${t.toLowerCase()}_offset_percentage`;default:return `${t.toLowerCase()}_pnl`}},[a]),[f,v]=useState(r[a]);useEffect(()=>{p||v(r[a]);},[r,a,p]);let O=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]),x=useMemo(()=>({PnL:i("tpsl.pnl"),Offset:i("tpsl.offset"),"Offset%":`${i("tpsl.offset")}%`}),[i]),L=useRef("");return {mode:a,modes:O,modeLabelMap:x,formatter:B=>{let{dp:ce=2}=B;return {onRenderBefore:(g,H)=>(g=`${g}`,n&&t==="SL"&&a==="PnL"&&(g=g.startsWith("-")?g:"-"+g),g===""||g==="-"?"":a==="Offset%"?`${new Decimal(g.replace(new RegExp(L.current.replace(".","\\.")+"$"),"")).mul(100).todp(2,4).toString()}${L.current}`:(a==="Offset"&&(g=todpIfNeed(g,ce)),`${g}`)),onSendBefore:g=>{if(/^\-?0{2,}$/.test(g))return "0";if(a==="Offset%"){if(g!==""){g=todpIfNeed(g,2);let H=g.match(/\.0{0,2}$/);H?L.current=H[0]:L.current="",g=new Decimal(g).div(100).toString(),g=`${g}${L.current}`;}}else a==="PnL"&&t==="SL"&&n?g=g.startsWith("-")?g:"-"+g:g=todpIfNeed(g,ce);return g===""||g==="-"?"":g}}},onModeChange:B=>{l(B);},onFocus:()=>{c(true),m(true);},onBlur:()=>{c(false),m(false),e.onChange(_,f);},value:f,onValueChange:B=>{v(B),e.onChange(_,B);},quote_dp:o,tips:u?d:void 0,setFocus:s}};var qi=e=>{let{mode:t,modes:r,modeLabelMap:o,onModeChange:i,onValueChange:n,quote:s,quote_dp:a,value:l,type:d,tips:u,onFocus:c,onBlur:p,setFocus:m}=e,[_,f]=useState(t),[v,O]=useState(t==="Offset%"?"%":s);useEffect(()=>{f(t),O(t==="Offset%"?"%":s);},[t]),useEffect(()=>{f(l?"":t);},[l]);let x=useMemo(()=>`${d.toLowerCase()}_${t.toLowerCase()}`,[]);return jsx(Input.tooltip,{prefix:o[_]||_,size:"md",placeholder:v,id:x,align:"right",value:l,tooltip:u,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:d}),inputFormatter.currencyFormatter],classNames:{root:d==="TP"?"oui-text-trade-profit":"oui-text-trade-loss",additional:"oui-text-base-contrast-54",input:"oui-text-inherit"},onFocus:()=>{f(""),O(""),m(true),c();},onBlur:()=>{f(l?"":t),O(t==="Offset%"?"%":s),p();},suffix:jsxs(Fragment,{children:[t==="Offset%"&&!!l&&jsx(Text,{size:"2xs",color:"inherit",className:"oui-ml-[2px]",children:"%"}),jsx(wu,{mode:t,modes:r,onModeChange:L=>i(L.value),testId:e.testIds?.dropDown})]})})},wu=e=>jsx(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:jsx("button",{className:"oui-p-2","data-testid":e.testId,children:jsx(CaretDownIcon,{size:12,color:"white"})})});var zi=e=>{let{testIds:t,quote:r,...o}=e,i=Bi(o);return jsx(qi,{...i,testIds:t,quote:r,type:e.type})};var Hr=e=>{let{type:t,values:r,children:o}=e,[i,n]=useLocalStorage("TP/SL_Mode","Offset%"),{t:s}=useTranslation(),a=useMemo(()=>!r.PnL||!r.trigger_price?null:jsxs(Flex,{children:[jsx("span",{className:"oui-text-xs oui-text-base-contrast-54",children:i==="PnL"?s("orderEntry.estRoi"):s("orderEntry.estPnL")}),i==="PnL"?jsx(Text.numeral,{rule:"percentages",className:cn("oui-ml-1 oui-text-xs",t==="TP"?"oui-text-trade-profit":"oui-text-trade-loss"),children:r.ROI}):jsx(Text.numeral,{rule:"price",className: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]),l=useMemo(()=>({mode:i,setMode:n,tipsEle:a}),[i,n,a]);return jsx(Ur.Provider,{value:l,children:o})};var Yi=e=>{let t=Hi.useRef(null),{t:r}=useTranslation(),{isMobile:o}=useScreen();return useEffect(()=>{e.orderType!==OrderType.LIMIT&&e.orderType!==OrderType.MARKET&&e.onSwitchChanged(false);},[e.orderType]),e.orderType!==OrderType.LIMIT&&e.orderType!==OrderType.MARKET||e.isReduceOnly?null:jsxs("div",{children:[jsxs(Flex,{itemAlign:"center",justify:"between",children:[jsxs(Flex,{itemAlign:"center",gapX:1,children:[jsx(Switch,{id:"order_entry_tpsl",className:"oui-h-[14px]",checked:e.switchState,disabled:e.orderType!==OrderType.LIMIT&&e.orderType!==OrderType.MARKET||e.isReduceOnly,onCheckedChange:i=>{e.onSwitchChanged(i);}}),jsx("label",{htmlFor:"order_entry_tpsl",className:"oui-text-xs",children:r("common.tpsl")})]}),jsxs(Flex,{itemAlign:"center",gapX:2,children:[o&&e.reduceOnlyChecked!==void 0&&e.onReduceOnlyChange&&jsx(Ot,{checked:e.reduceOnlyChecked,onCheckedChange:e.onReduceOnlyChange}),!o&&jsx($i,{className:cn("oui-group oui-invisible",e.switchState&&"oui-visible"),showTPSLAdvanced:e.showTPSLAdvanced})]})]}),jsx("div",{className: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:jsx(Ki,{ref:t,setOrderValue:e.setOrderValue,onChange:e.onChange,values:e.values,errors:e.errors,quote_dp:e.quote_dp,showTPSLAdvanced:e.showTPSLAdvanced,isMobile:o})})]})},Ki=Hi.forwardRef((e,t)=>{let{getErrorMsg:r}=useOrderEntryFormErrorMsg(e.errors),{t:o}=useTranslation();return jsxs("div",{ref:t,className:"oui-space-y-1 oui-px-px oui-py-2 oui-transition-all",children:[jsxs(Flex,{itemAlign:"center",justify:"between",gapX:2,children:[jsx(TPSLPositionTypeWidget,{value:e.values.position_type,onChange:e.onChange}),e.isMobile&&jsx($i,{showTPSLAdvanced:e.showTPSLAdvanced,isMobile:e.isMobile})]}),jsx(Hr,{values:e.values.tp,type:"TP",children:jsx(Wi,{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"}})}),jsx(Hr,{values:e.values.sl,type:"SL",children:jsx(Wi,{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"}})})]})});Ki.displayName="TPSLInputForm";var $i=e=>{let{t}=useTranslation();return jsxs(Flex,{itemAlign:"center",gapX:1,onClick:e.showTPSLAdvanced,className:cn("oui-group oui-cursor-pointer",e.className),children:[jsx(Text,{className:cn("oui-cursor-pointer group-hover:oui-text-base-contrast",e.isMobile?"oui-text-2xs":"oui-text-sm"),children:t("tpsl.advanced")}),jsx(SettingFillIcon,{size:12,className:"oui-text-base-contrast-54 group-hover:oui-text-base-contrast oui-cursor-pointer",opacity:1,onClick:e.showTPSLAdvanced})]})},$u=e=>{let{t}=useTranslation(),{errorMsgVisible:r}=P(),{tipsEle:o}=vt(),[i,n]=useState(`${e.type} Price`),[s,a]=useState("USDC"),[l,d]=useState(false),[u,c]=useState(false),[p,m]=useState(e.values.trigger_price??"");useEffect(()=>{u||m(e.values.trigger_price??"");},[e.values.trigger_price,u]);let _=useMemo(()=>e.error&&r?e.error:l?o:null,[e.error,r,l,o]),f=L=>{let U=e.type==="TP"?t("tpsl.tpPrice"):t("tpsl.slPrice");return L&&(U=e.type==="TP"?t("tpsl.tp"):t("tpsl.sl")),U},v=L=>{m(L),e.onChange(L);};useEffect(()=>{n(f(e.values.trigger_price)),u||m(e.values.trigger_price??"");},[e.type,e.values.trigger_price]);let O=()=>{n(e.type==="TP"?t("tpsl.tp"):t("tpsl.sl")),a(""),d(true),c(true);},x=()=>{n(f(e.values.trigger_price)),a("USDC"),d(false),c(false),e.onChange(p);};return jsx(Input.tooltip,{"data-testid":e.testId,prefix:i,size:"md",placeholder:s,align:"right",onFocus:O,onBlur:x,tooltip:_,tooltipProps:{content:{side:e.type==="TP"?"top":"bottom"}},color:e.error?"danger":void 0,autoComplete:"off",value:p,classNames:{additional:"oui-text-base-contrast-54",root:"oui-pr-2 md:oui-pr-3",prefix:"oui-pr-1 md:oui-pr-2"},onValueChange:v,formatters:[inputFormatter.numberFormatter,inputFormatter.dpFormatter(e.quote_dp??2),inputFormatter.currencyFormatter]})},Wi=e=>jsxs(Grid,{cols:2,gapX:1,children:[jsx($u,{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}),jsx(zi,{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 Xr=e=>{let{side:t,formattedOrder:r,setOrderValue:o,setOrderValues:i,symbolInfo:n,maxQty:s,freeCollateral:a,helper:l,submit:d,metaState:u,bboStatus:c,bboType:p,onBBOChange:m,toggleBBO:_,disableFeatures:f,currentLtv:v,fillMiddleValue:O,soundAlert:x,setSoundAlert:L,currentFocusInput:U}=e,[J,ae]=useState(false),{t:W}=useTranslation(),{isMobile:B}=useScreen(),[ce,g]=useState(false),{errors:H,validated:ee}=u,[me,w]=useState(false),[te,pe]=useLocalStorage("orderly_order_confirm",true),[re,Je]=useLocalStorage("orderly-order-additional-pinned",true),[Bt,fe]=useState(false),[Vt,Dt]=useLocalStorage("orderly-order-hidden",false),[Se,qt]=useLocalStorage("orderly-slippage","1",{parseJSON:b=>!b||b==='""'?"1":JSON.parse(b)}),{notification:h}=useOrderlyContext(),F=useId(),{getErrorMsg:le}=useOrderEntryFormErrorMsg(ee?H:null),z=useMemo(()=>t===OrderSide.BUY?W("orderEntry.buyLong"):W("orderEntry.sellShort"),[t,W]);useEffect(()=>{ee&&w(true);},[ee]),useEffect(()=>{f?.includes("slippageSetting")||(Se?o("slippage",Number(Se)):o("slippage",void 0));},[Se,f]),useEffect(()=>{let b=A=>{A.target.closest("#order-entry-submit-button")||w(oo=>oo&&false);};return me?document.addEventListener("click",b):document.removeEventListener("click",b),()=>{document.removeEventListener("click",b);}},[me]);let Y=useMemoizedFn(async()=>{let b=r.order_type===OrderType.SCALED;l.validate().then(A=>b?modal.show(ct,{order:A,symbolInfo:n,size:B?"sm":"md"}):te?modal.show(cr,{order:r,symbolInfo:n}):true,A=>(A.slippage&&toast.error(W("orderEntry.slippage.error.max")),w(true),Promise.reject())).then(()=>d({resetOnSuccess:false}).then(A=>{if(!A.success&&A.message)toast.error(A.message);else if(A.success&&b){let qe=Ro(A);qe&&toast.success(qe);}})).catch(A=>{A?.message&&toast.error(A.message);});}),De=useMemo(()=>new Decimal(s).todp(n.base_dp,Decimal.ROUND_DOWN).toString(),[s,n.base_dp]),zt=useCallback(()=>{o("order_quantity",De),requestAnimationFrame(()=>{Y();}),ae(false);},[o,De]),an=async()=>{if(r.reduce_only&&s===0)return modal.confirm({title:W("orderEntry.reduceOnly.reminder"),content:W("orderEntry.reduceOnly.reminder.content"),okLabel:W("orderEntry.placeOrderNow"),onOk:async()=>(o("reduce_only",false),requestAnimationFrame(()=>{e.resetMetaState(),Y();}),Promise.resolve(true)),onCancel:async()=>Promise.resolve(false)});s>0&&Number(r.order_quantity)>s?ae(true):Y();},ln=()=>{l.validate().then(()=>{fe(true);},b=>{let A=new Set(["tp_trigger_price","sl_trigger_price"]);Object.keys(b).every(qe=>A.has(qe))&&fe(true);});},un=b=>{b.side!==r.side&&o("side",b.side),i({position_type:b.position_type,tp_order_type:b.tp_order_type,tp_pnl:b.tp_pnl,tp_offset:b.tp_offset,tp_offset_percentage:b.tp_offset_percentage,tp_ROI:b.tp_ROI,tp_trigger_price:b.tp_trigger_price,tp_order_price:b.tp_order_price,sl_order_type:b.sl_order_type,sl_trigger_price:b.sl_trigger_price,sl_order_price:b.sl_order_price,sl_pnl:b.sl_pnl,sl_offset:b.sl_offset,sl_offset_percentage:b.sl_offset_percentage,sl_ROI:b.sl_ROI}),fe(false),g(true);},dn=()=>{g(false),i({tp_trigger_price:void 0,tp_order_price:void 0,tp_order_type:OrderType.MARKET,sl_trigger_price:void 0,sl_order_price:void 0,sl_order_type:OrderType.MARKET,tp_pnl:void 0,sl_pnl:void 0,position_type:PositionType.FULL});};useEffect(()=>{g(false);},[e.symbol]);let Qt=!!h?.orderFilled?.media&&(h?.orderFilled?.displayInOrderEntry??true),ro={pinned:re,setPinned:Je,needConfirm:te,setNeedConfirm:pe,hidden:Vt,setHidden:Dt,onValueChange:o,orderTypeExtra:r.order_type_ext,showExtra:r.order_type===OrderType.LIMIT&&!e.tpslSwitch},Ut=!re&&jsx(io,{...ro});return jsxs(ei,{errors:H,errorMsgVisible:me,symbolInfo:n,onFocus:e.onFocus,onBlur:e.onBlur,getErrorMsg:le,setOrderValue:o,setOrderValues:i,currentFocusInput:U.current,priceInputRef:e.priceInputRef,priceInputContainerRef:e.priceInputContainerRef,triggerPriceInputRef:e.triggerPriceInputRef,activatedPriceInputRef:e.activatedPriceInputRef,lastQuantityInputType:e.lastQuantityInputType,leverage:e.symbolLeverage,children:[jsx(qo,{open:J,onOpenChange:ae,maxQty:De,onConfirm:zt,base:n.base}),jsxs("div",{className:"oui-space-y-2 oui-text-base-contrast-54 xl:oui-space-y-3",ref:e.containerRef,children:[jsx(Jo,{symbol:e.symbol,canTrade:e.canTrade,side:t,order_type:r.order_type,setOrderValue:o,symbolLeverage:e.symbolLeverage}),jsx(Lo,{currentLtv:v,canTrade:e.canTrade,quote:n?.quote,freeCollateral:a}),jsx(Li,{values:r,priceInputContainerWidth:e.priceInputContainerWidth,fillMiddleValue:O,bbo:{bboStatus:c,bboType:p,onBBOChange:m,toggleBBO:_}}),jsx(Qr,{canTrade:e.canTrade,side:e.side,order_quantity:r.order_quantity,maxQty:s}),jsx(ThrottledButton,{fullWidth:true,id:"order-entry-submit-button","data-type":OrderSide.BUY,className:cn(t===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:an,loading:e.isMutating,disabled:!e.canTrade,children:z}),jsx(vo,{canTrade:e.canTrade,quote:n.quote,estLiqPrice:e.estLiqPrice,estLeverage:e.estLeverage,currentLeverage:e.currentLeverage,slippage:Se,dp:n.quote_dp,setSlippage:qt,estSlippage:e.estSlippage,orderType:r.order_type,disableFeatures:f,symbol:e.symbol}),jsx(Divider,{className:"oui-w-full"}),ce?jsx(lo,{order:r,symbolInfo:e.symbolInfo,errors:ee?H:null,onEdit:()=>{fe(true);},onDelete:()=>{dn();}}):jsx(Yi,{quote_dp:e.symbolInfo.quote_dp,switchState:e.tpslSwitch,onSwitchChanged:e.setTpslSwitch,orderType:r.order_type,errors:ee?H:null,isReduceOnly:r.reduce_only,setOrderValue:o,reduceOnlyChecked:r.reduce_only??false,onReduceOnlyChange:b=>{o("reduce_only",b);},values:{position_type:r.position_type??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:ln,onChange:(b,A)=>{o(b,A);}}),(!B||r.reduce_only===true)&&jsxs(Flex,{justify:"between",itemAlign:"center",className:"oui-mt-2",children:[jsx(Ot,{checked:r.reduce_only??false,onCheckedChange:b=>{o("reduce_only",b);}}),!Qt&&Ut]}),Qt&&jsxs(Flex,{justify:"between",itemAlign:"center",children:[jsxs(Flex,{itemAlign:"center",gapX:1,children:[jsx(Switch,{className:"oui-h-[14px]",id:F,checked:x,onCheckedChange:b=>L(b)}),jsx("label",{htmlFor:F,className:"oui-text-xs",children:W("portfolio.setting.soundAlerts")})]}),Ut]}),!Qt&&B&&!r.reduce_only&&!re&&jsx(Flex,{className:"oui-w-full",justify:"end",children:Ut}),re&&jsxs(Box,{p:2,r:"md",intensity:700,position:"relative",children:[jsx(Qe,{...ro}),jsx(so,{onClick:()=>{Je(false);},className:"oui-group oui-absolute oui-right-2 oui-top-2","data-testid":"oui-testid-orderEntry-pinned-button"})]})]}),jsx(SimpleSheet,{open:Bt,onOpenChange:fe,classNames:{body:"oui-h-full oui-pb-0 oui-border-none",overlay:"!oui-bg-base-10/60",content: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:jsx(TPSLAdvancedWidget,{setOrderValue:o,order:r,onSubmit:un,onClose:()=>{fe(false);},symbolLeverage:e.symbolLeverage})})]})};function tn({tpslSwitch:e,order_type:t,order_type_ext:r,side:o,setOrderValues:i}){let[n,s]=useLocalStorage("orderly_order_bbo_type",void 0),a=useRef(n),{track:l}=useTrack(),d=useMemo(()=>e||[OrderType.POST_ONLY,OrderType.IOC,OrderType.FOK].includes(r)?"disabled":n&&t===OrderType.LIMIT?"on":"off",[e,r,t,n]),u=()=>{l(TrackerEventName.clickBBOButton),n?(s(void 0),i({order_type_ext:void 0,level:void 0})):s(a.current||BBOOrderType.COUNTERPARTY1);},c=p=>{s(p),a.current=p;};return useEffect(()=>{d==="disabled"&&i({order_type_ext:Ne({order_type_ext:r})?void 0:r,level:void 0});},[d,r]),useEffect(()=>{if(d==="on"){let p=wo(n,o),m=ko(n);i({order_type_ext:p,level:m});}},[n,d,o]),{bboStatus:d,bboType:n,setBBOType:s,onBBOChange:c,toggleBBO:u}}function on(e){let{base_tick:t,order_type:r,order_quantity:o,setValue:i}=e,n=useRef(0),s=useRef(8),a=useRef(0),l=()=>{if(t<1||r===OrderType.SCALED||!o)return;let c=utils.formatNumber(o,new Decimal(t||"0").toNumber());i("order_quantity",c,{shouldUpdateLastChangedField:false});},d=c=>p=>{n.current=c,[7,8].includes(n.current)&&(s.current=c),[3,5,6].includes(c)&&(a.current=c);},u=c=>p=>{setTimeout(()=>{n.current===c&&(n.current=0);},300),c===3&&l();};return {currentFocusInput:n,lastScaledOrderPriceInput:s,lastQuantityInputType:a,onFocus:useMemoizedFn(d),onBlur:useMemoizedFn(u)}}function nn({order_type_ext:e}){let[t,r]=useState(0),o=useRef(null);return useEffect(()=>{let i=o.current;if(!i)return;let n=new ResizeObserver(s=>{for(let a of s){let l=a.contentRect.width;l&&r(l);}});return n.observe(i),()=>{n.unobserve(i);}},[o,e]),{priceInputContainerRef:o,priceInputContainerWidth:t}}var Fd="orderly_order_sound_alert",to=e=>{let{symbol:t}=e,[r,o]=useLocalStorage("orderly-order-entry-order-type",OrderType.LIMIT),[i,n]=useLocalStorage("orderly-order-entry-order-side",OrderSide.BUY),{notification:s}=useOrderlyContext(),[a,l]=useLocalStorage(Fd,s?.orderFilled?.defaultOpen??false),d=useCanTrade(),{formattedOrder:u,setValue:c,setValues:p,symbolInfo:m,..._}=useOrderEntry(t,{initialOrder:{symbol:t,order_type:r,position_type:PositionType.PARTIAL,side:i}}),[f,v]=useLocalStorage("orderly-order-entry-tp_sl-switch",false),{currentLeverage:O}=useMarginRatio(),x=useEventEmitter(),L=useRef(null),U=useRef(null),J=useRef(null),{bboStatus:ae,bboType:W,setBBOType:B,onBBOChange:ce,toggleBBO:g}=tn({tpslSwitch:f,order_type:u.order_type,order_type_ext:u.order_type_ext,side:u.side,setOrderValues:p}),{currentFocusInput:H,lastScaledOrderPriceInput:ee,lastQuantityInputType:me,onFocus:w,onBlur:te}=on({base_tick:m?.base_tick,order_type:u.order_type,order_quantity:u.order_quantity,setValue:c}),pe=()=>{p({tp_trigger_price:"",sl_trigger_price:"",position_type:PositionType.FULL});},re=()=>{p({order_type_ext:void 0,position_type:PositionType.FULL});},Je=useMemoizedFn((h,F,le)=>{if(h==="order_type"&&o(F),h==="side"&&n(F),h==="reduce_only"&&F||h==="order_type"&&(F===OrderType.STOP_LIMIT||F===OrderType.STOP_MARKET)){let z={tp_trigger_price:"",sl_trigger_price:"",[h]:F};h==="order_type"&&(z.order_type_ext=""),p(z);return}if(h==="order_type"&&F!==OrderType.LIMIT){let z={level:void 0,order_type_ext:void 0,[h]:F};p(z);return}if(h==="order_type"&&F===OrderType.SCALED){p({distribution_type:DistributionType.FLAT,[h]:F});return}c(h,F,le);}),Bt=h=>{v(h),h?re():pe();};useEffect(()=>{let h=F=>{c("order_price",F);};return x.on("update:orderPrice",h),()=>{x.off("update:orderPrice",h);}},[]),useEffect(()=>{let h=le=>{requestAnimationFrame(()=>{le?.focus();});},F=le=>{let z=removeTrailingZeros(le[0]),{order_type:Y,order_type_ext:De}=u;if(H.current===2&&(Y===OrderType.STOP_LIMIT||Y===OrderType.STOP_MARKET)){c("trigger_price",z),h(L.current);return}if(Ne({order_type:Y,order_type_ext:De})){B(void 0),p({order_type_ext:void 0,level:void 0}),requestAnimationFrame(()=>{x.emit("update:orderPrice",z);}),h(U.current);return}if(Y===OrderType.STOP_LIMIT||Y===OrderType.LIMIT){c("order_price",z),h(U.current);return}if(Y===OrderType.STOP_MARKET){c("trigger_price",z),h(L.current);return}if(Y===OrderType.MARKET){B(void 0),p({order_type:OrderType.LIMIT,order_price:z}),h(U.current);return}if(Y===OrderType.SCALED&&ee.current){let zt=ee.current===7?"start_price":"end_price";c(zt,z),h(U.current);return}if(Y===OrderType.TRAILING_STOP){c("activated_price",z),h(J.current);return}c("order_price",z),h(U.current);};return x.on("orderbook:item:click",F),()=>{x.off("orderbook:item:click",F);}},[u,m]),useEffect(()=>{_.reset(),_.resetMetaState(),me.current=0;},[t]),useEffect(()=>{u.order_type===OrderType.SCALED&&!u.distribution_type&&c("distribution_type",DistributionType.FLAT);},[u.order_type,u.distribution_type]);let fe=useComputedLTV(),Vt=dt(),Dt=()=>{if(ae==="on"&&g(),u.order_type===OrderType.LIMIT){let[h=0,F=0]=Vt,le=new Decimal(sr(h)).add(sr(F)).div(2).toNumber();requestAnimationFrame(()=>{x.emit("update:orderPrice",le);});}},{priceInputContainerRef:Se,priceInputContainerWidth:qt}=nn({order_type_ext:u.order_type_ext});return {..._,side:u.side,type:u.order_type,level:u.level,formattedOrder:u,setOrderValue:Je,setOrderValues:p,currentLeverage:O,tpslSwitch:f,setTpslSwitch:Bt,symbolInfo:m,onFocus:w,onBlur:te,priceInputRef:U,priceInputContainerRef:Se,priceInputContainerWidth:qt,triggerPriceInputRef:L,activatedPriceInputRef:J,lastQuantityInputType:me,canTrade:d,bboStatus:ae,bboType:W,onBBOChange:ce,toggleBBO:g,currentLtv:fe,fillMiddleValue:Dt,symbol:t,soundAlert:a,setSoundAlert:l,currentFocusInput:H}};var wd=e=>{let t=to(e);return jsx(Xr,{...t,containerRef:e.containerRef,disableFeatures:e.disableFeatures})};
|
|
15
|
+
var Ue=e=>{let{pinned:t,orderTypeExtra:r}=e,{t:o}=useTranslation(),i=n=>s=>{e.onValueChange&&e.onValueChange("order_type_ext",s?n:"");};return useEffect(()=>{e.onValueChange?.("visible_quantity",e.hidden?0:1);},[e.hidden]),jsxs("div",{className:"oui-text-base-contrast-54",children:[jsxs(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:[jsxs(Flex,{itemAlign:"center",children:[jsx(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===OrderType.POST_ONLY,onCheckedChange:i(OrderType.POST_ONLY)}),jsx("label",{htmlFor:"toggle_order_post_only",className: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")})]}),jsxs(Flex,{itemAlign:"center",children:[jsx(Checkbox,{"data-testid":"oui-testid-orderEntry-ioc-checkBox",id:"toggle_order_iov",color:"white",className:"oui-peer",variant:"radio",checked:r===OrderType.IOC,onCheckedChange:i(OrderType.IOC),disabled:!e.showExtra}),jsx("label",{htmlFor:"toggle_order_iov",className: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")})]}),jsxs(Flex,{itemAlign:"center",children:[jsx(Checkbox,{"data-testid":"oui-testid-orderEntry-fox-checkBox",id:"toggle_order_fok",color:"white",variant:"radio",className:"oui-peer",checked:r===OrderType.FOK,onCheckedChange:i(OrderType.FOK),disabled:!e.showExtra}),jsx("label",{htmlFor:"toggle_order_fok",className: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")})]})]}),jsxs(Flex,{gapX:6,children:[jsxs(Flex,{children:[jsx(Checkbox,{"data-testid":"oui-testid-orderEntry-orderConfirm-checkBox",id:"toggle_order_confirm",color:"white",checked:e.needConfirm,onCheckedChange:n=>{e.setNeedConfirm(!!n);}}),jsx("label",{htmlFor:"toggle_order_confirm",className:"oui-ml-1 oui-text-2xs",children:o("orderEntry.orderConfirm")})]}),jsxs(Flex,{children:[jsx(Checkbox,{"data-testid":"oui-testid-orderEntry-hidden-checkBox",id:"toggle_order_hidden",color:"white",checked:e.hidden,onCheckedChange:n=>{e.setHidden(n);}}),jsx("label",{htmlFor:"toggle_order_hidden",className:"oui-ml-1 oui-text-2xs",children:o("orderEntry.hidden")})]})]}),!t&&jsxs(Fragment,{children:[jsx(Divider,{className:"oui-my-3"}),jsxs(Flex,{children:[jsx(Switch,{"data-testid":"oui-testid-orderEntry-additional-keepVisible-switch",id:"toggle_order_keep_visible",onCheckedChange:n=>{e.setPinned(n);}}),jsx("label",{htmlFor:"toggle_order_keep_visible",className:"oui-ml-1 oui-text-2xs",children:o("orderEntry.keepVisible")})]})]})]})};function io(e){let[t,r]=useState(false);return jsxs(PopoverRoot,{open:t,onOpenChange:r,children:[jsx(PopoverTrigger,{asChild:true,children:jsx("button",{"data-testid":"oui-testid-orderEntry-additional-button",onClick:()=>{r(true);},children: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: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"})})})}),jsx(PopoverContent,{side:"top",align:"end",className:"oui-w-[230px]",children:jsx(Ue,{...e})})]})}var no="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",so=e=>{let[t,r]=useState(no);return jsx("button",{...e,children: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(no);},className:"oui-text-primary-darken",children:jsx("path",{d:t})})})};function lo(e){let{order:t,symbolInfo:r,onEdit:o,onDelete:i,errors:n}=e,{getErrorMsg:s}=useOrderEntryFormErrorMsg(n),{t:a}=useTranslation(),l=()=>{let u=s("tp_trigger_price");return t.tp_trigger_price||t.tp_order_price?jsxs(Flex,{direction:"column",itemAlign:"start",className:"oui-w-full",gap:4,children:[jsxs(Flex,{direction:"column",itemAlign:"start",justify:"between",gapY:1,className:"oui-w-full",children:[jsxs(Flex,{justify:"between",className:"oui-w-full",children:[jsx(Text,{children:a("tpsl.tpTriggerPrice")}),jsx(Text.numeral,{suffix:jsx(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??""})]}),jsxs(Flex,{justify:"between",className:"oui-w-full",children:[jsx(Text,{children:a("tpsl.tpOrderPrice")}),t.tp_order_type===OrderType.LIMIT?jsx(Text.numeral,{suffix:jsx(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??""}):jsx(Text,{className:"oui-text-base-contrast",children:"Market"})]}),jsxs(Flex,{justify:"between",className:"oui-w-full",children:[jsx(Text,{children:a("tpsl.totalEstTpPnl")}),jsx(Text.numeral,{suffix:jsx(Text,{className:"oui-ml-1 oui-text-base-contrast-36",children:r.quote}),coloring:true,dp:2,children:Number(t.tp_pnl)})]})]}),u&&jsxs(Flex,{justify:"start",itemAlign:"start",gap:2,className:"oui-w-full",children:[jsx("div",{className:"oui-relative oui-top-[7px] oui-size-1 oui-rounded-full oui-bg-danger"}),jsx(Text,{className:"oui-text-danger",children:u})]})]}):null},d=()=>{if(t.sl_trigger_price||t.sl_order_price){let u=s("sl_trigger_price");return jsx(Flex,{direction:"column",itemAlign:"start",className:"oui-w-full",gap:4,children:jsxs(Flex,{direction:"column",itemAlign:"start",justify:"between",gapY:1,className:"oui-w-full",children:[jsxs(Flex,{justify:"between",className:"oui-w-full",children:[jsx(Text,{children:a("tpsl.slTriggerPrice")}),jsx(Text.numeral,{suffix:jsx(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??""})]}),jsxs(Flex,{justify:"between",className:"oui-w-full",children:[jsx(Text,{children:a("tpsl.slOrderPrice")}),t.sl_order_type===OrderType.LIMIT?jsx(Text.numeral,{suffix:jsx(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??""}):jsx(Text,{className:"oui-text-base-contrast",children:"Market"})]}),jsxs(Flex,{justify:"between",className:"oui-w-full",children:[jsx(Text,{children:a("tpsl.totalEstSlPnl")}),jsx(Text.numeral,{coloring:true,suffix:jsx(Text,{className:"oui-ml-1 oui-text-base-contrast-36",children:r.quote}),dp:2,children:Number(t.sl_pnl)})]}),u&&jsxs(Flex,{justify:"start",itemAlign:"start",gap:2,className:"oui-w-full",children:[jsx("div",{className:"oui-relative oui-top-[7px] oui-size-1 oui-rounded-full oui-bg-danger"}),jsx(Text,{className:"oui-text-danger",children:u})]})]})})}return null};return jsxs(Flex,{direction:"column",itemAlign:"start",className:"oui-w-full oui-text-2xs",gap:4,children:[jsxs(Flex,{justify:"between",itemAlign:"start",className:"oui-w-full",children:[jsx(Text,{children:a("common.tpsl")}),jsxs(Flex,{gap:2,children:[jsx(Sn,{size:12,className:"oui-cursor-pointer oui-text-base-contrast-54 hover:oui-text-base-contrast",opacity:1,onClick:i}),jsx(In,{size:12,className:"oui-cursor-pointer oui-text-base-contrast-54 hover:oui-text-base-contrast",onClick:o})]})]}),jsxs(Flex,{justify:"between",itemAlign:"start",className:"oui-w-full",children:[jsx(Text,{children:a("tpsl.mode")}),jsx(Text,{className:"oui-text-base-contrast",children:t.position_type===PositionType.FULL?a("tpsl.fullPosition"):a("tpsl.partialPosition")})]}),l(),d(),jsx(Divider,{className:"oui-mb-2 oui-w-full"})]})}var Sn=e=>jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:e.size,height:e.size,viewBox:"0 0 12 12",fill:"currentColor",...e,children: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"})}),In=e=>jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 12 12",width:e.size,height:e.size,fill:"currentColor",...e,children: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 rt=Hi.forwardRef((e,t)=>{let r=useId();return 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:[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})`}),jsx("defs",{children:jsxs("linearGradient",{id:r,x1:"12.7908",y1:"6.99084",x2:"1.1875",y2:"6.99084",gradientUnits:"userSpaceOnUse",children:[jsx("stop",{stopColor:"rgb(var(--oui-gradient-brand-end))"}),jsx("stop",{stopColor:"rgb(var(--oui-gradient-brand-start))",offset:1})]})})]})});process.env.NODE_ENV!=="production"&&(rt.displayName="EffectiveFee");var co=({routerAdapter:e,onClose:t})=>{let{t:r}=useTranslation();return jsxs(Text,{size:"2xs",className:"oui-whitespace-normal oui-break-words",children:[r("portfolio.feeTier.effectiveFee.tooltip")," ",jsx("a",{href:"/rewards/affiliate",onClick:o=>{o.preventDefault(),e?.onRouteChange({href:"/rewards/affiliate",name:r("portfolio.feeTier.effectiveFee.tooltipLink")}),t?.();},className:"oui-cursor-pointer oui-border-none oui-bg-transparent oui-p-0 oui-text-2xs oui-underline hover:oui-text-base-contrast-80",children:r("portfolio.feeTier.effectiveFee.tooltipLink")})]})},Mn=({routerAdapter:e})=>{let{hide:t}=useModal();return jsx(co,{routerAdapter:e,onClose:t})},Bn=e=>{let{routerAdapter:t}=e,{isMobile:r}=useScreen(),{t:o}=useTranslation();return r?jsx(rt,{onClick:()=>{modal.dialog({size:"sm",title:o("common.tips"),content:jsx(Mn,{routerAdapter:t})});}}):jsx(Tooltip,{content:jsx(co,{routerAdapter:t}),className:"oui-p-1.5 oui-text-base-contrast-54",children:jsx(rt,{className:"oui-cursor-pointer"})})},Yt=e=>{let{t}=useTranslation(),{routerAdapter:r}=useScaffoldContext(),{taker:o,maker:i}=e;return jsxs(Flex,{itemAlign:"center",justify:"between",width:"100%",gap:1,children:[jsxs(Flex,{width:"100%",itemAlign:"center",justify:"between",children:[jsx(Text,{className:"oui-truncate",size:"2xs",children:t("common.fees")}),jsx(AuthGuard,{fallback:()=>jsxs(Text,{className:"oui-truncate",size:"2xs",children:[t("dmm.taker"),": --% / ",t("dmm.maker"),": --%"]}),children:jsxs(Flex,{gap:1,children:[jsxs(Text,{className:"oui-truncate",size:"2xs",children:[t("dmm.taker"),":"]}),jsx(Text,{size:"2xs",className:"oui-text-base-contrast-80",children:o}),jsx(Text,{size:"2xs",children:"/"}),jsxs(Text,{className:"oui-truncate",size:"2xs",children:[t("dmm.maker"),":"]}),jsx(Text,{size:"2xs",className:"oui-text-base-contrast-80",children:i})]})})]}),jsx(Bn,{routerAdapter:r})]})};var $t=e=>jsx(Yt,{...e});var Xt=e=>{let{t}=useTranslation(),{taker:r,maker:o}=e;return jsx(Flex,{itemAlign:"center",justify:"between",width:"100%",gap:1,children:jsxs(Flex,{width:"100%",itemAlign:"center",justify:"between",children:[jsx(Text,{className:"oui-truncate",size:"2xs",children:t("common.fees")}),jsx(AuthGuard,{fallback:()=>jsxs(Text,{className:"oui-truncate",size:"2xs",children:[t("dmm.taker"),": --% / ",t("dmm.maker"),": --%"]}),children:jsxs(Flex,{gap:1,children:[jsxs(Text,{className:"oui-truncate",size:"2xs",children:[t("dmm.taker"),":"]}),jsx(Text,{size:"2xs",className:"oui-text-base-contrast-80",children:r}),jsx(Text,{size:"2xs",children:"/"}),jsxs(Text,{className:"oui-truncate",size:"2xs",children:[t("dmm.maker"),":"]}),jsx(Text,{size:"2xs",className:"oui-text-base-contrast-80",children:o})]})})]})})};var Zt=e=>jsx(Xt,{...e});var Gn=e=>typeof e<"u"&&e!==null,Jt=({symbol:e})=>{let{refereeRebate:t,...r}=useFeeState(),i=useRwaSymbolsInfoStore()?.[e]!==void 0;return Gn(t)?jsx($t,{taker:i?r.rwaEffectiveTakerFee:r.effectiveTakerFee,maker:i?r.rwaEffectiveMakerFee:r.effectiveMakerFee}):jsx(Zt,{taker:i?r.rwaTakerFee:r.takerFee,maker:i?r.rwaMakerFee:r.makerFee})};var yo=[.01,.05,.1],xo=forwardRef((e,t)=>{let{t:r}=useTranslation(),[o,i]=useState(),[n,s]=useState(""),[a,l]=useState(void 0);useImperativeHandle(t,()=>({getValue:()=>n?new Decimal(n)?.toNumber():o})),useEffect(()=>{e.initialValue&&!yo.includes(e.initialValue)?s(e.initialValue.toString()):i(e.initialValue);},[e.initialValue,open]);let d=p=>{i(p),s(""),l(void 0);},u=p=>{if(!p){s(p);return}let m=new Decimal(p);i(void 0),m.gt(3)?(s("3"),l(r("orderEntry.slippage.error.exceed"))):(s(p),l(void 0));},c=e.isMobile?jsx("button",{onClick:()=>{modal.alert({title:r("common.tips"),message:jsx(Text,{size:"2xs",children:r("orderEntry.slippage.tips")})});},children:jsx(ExclamationFillIcon,{className:"oui-text-base-contrast-54",size:16})}):jsx(Tooltip,{content:jsx(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:jsx(TooltipTrigger,{children:jsx(ExclamationFillIcon,{className:"oui-text-base-contrast-54",size:16})})});return jsxs("div",{className:"oui-text-2xs",children:[jsxs(Flex,{mb:2,gapX:1,children:[jsx(Text,{size:"xs",children:r("orderEntry.slippage")}),c]}),jsxs(Flex,{gapX:2,children:[yo.map(p=>jsx(es,{value:p,isActive:o===p,onClick:()=>{d(p);}},p)),jsx(Input,{suffix:"%",formatters:[inputFormatter.numberFormatter,inputFormatter.dpFormatter(2)],value:n,onValueChange:u,classNames:{root:cn("oui-rounded-md oui-bg-base-6","oui-h-[40px] oui-w-[74px]"),input:"oui-text-base-contrast",additional:"oui-pl-1"}})]}),!!a&&jsx(Box,{mt:5,className:"-oui-mb-5",children:jsx(Text,{size:"2xs",color:"danger",children:a})})]})}),es=({value:e,isActive:t,onClick:r})=>jsx(Flex,{intensity:600,justify:"center",itemAlign:"center",r:"md",width:74,height:40,className:cn("oui-cursor-pointer oui-select-none",t&&"oui-bg-primary-light"),onClick:r,children:jsxs(Text,{size:"sm",intensity:80,children:[e,"%"]})});var To=e=>{let{t}=useTranslation(),[r,{setTrue:o,setFalse:i,toggle:n}]=useBoolean(false),{isMobile:s}=useScreen(),a=useRef(null),l=()=>{let d=a.current?.getValue();return e.setSlippage(d?d.toString():"1"),i(),Promise.resolve(true)};return jsxs(Fragment,{children:[jsx(SimpleDialog,{open:r,onOpenChange:n,title:t("common.settings"),contentProps:{size:s?"xs":"sm"},actions:{primary:{disabled:false,label:t("common.save"),onClick:l},secondary:{label:t("common.cancel"),onClick:()=>i()}},children:jsx(xo,{ref:a,isMobile:s,initialValue:e.slippage?Number(e.slippage):void 0})}),jsxs(Flex,{justify:"between",children:[jsx(Text,{size:"2xs",children:t("orderEntry.slippage")}),jsx(AuthGuard,{fallback:()=>jsxs(Text,{size:"2xs",children:[t("orderEntry.slippage.est"),": -% / ",t("common.max"),": --%"]}),children:jsxs(Flex,{gap:1,children:[jsx(Text.numeral,{size:"2xs",rule:"percentages",prefix:`${t("orderEntry.slippage.est")}: `,suffix:` / ${t("common.max")}: `,children:e.estSlippage??0}),jsx("button",{className:"oui-text-2xs",onClick:()=>o(),children:jsxs(Flex,{className:"oui-gap-0.5",as:"span",children:[jsx(Text,{size:"2xs",className:"oui-text-primary",children:`${e.slippage||"-"}%`}),jsx(EditIcon,{className:"oui-text-primary oui-hidden md:oui-block",size:12,opacity:1})]})})]})})]})]})};var _o=e=>jsx(To,{...e});function vo(e){let{canTrade:t,disableFeatures:r,orderType:o,symbol:i}=e,{t:n}=useTranslation();return jsxs("div",{className:"oui-space-y-[2px] xl:oui-space-y-1",children:[jsxs(Flex,{justify:"between",children:[jsx(Text,{size:"2xs",children:n("orderEntry.estLiqPrice")}),jsx(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??"--":"--"})]}),o===OrderType.MARKET&&!r?.includes("slippageSetting")&&jsx(_o,{slippage:e.slippage,setSlippage:e.setSlippage,estSlippage:e.estSlippage}),!r?.includes("feesInfo")&&jsx(Jt,{symbol:e.symbol})]})}var bs=e=>e>=0&&e<50?"oui-text-success":e>=50&&e<80?"oui-text-warning":e>=80?"oui-text-danger":"",or=e=>{let{t}=useTranslation(),{ltv_threshold:r,negative_usdc_threshold:o,isThresholdLoading:i,holdingData:n=[],currentLtv:s,onConvert:a}=e;return jsxs(Flex,{gap:1,className:"oui-w-72 oui-max-w-72",direction:"column",children:[jsxs(Flex,{width:"100%",justify:"between",itemAlign:"center",children:[jsx(Text,{intensity:36,size:"xs",children:t("common.assets")}),jsx(Text,{intensity:36,size:"xs",children:t("transfer.deposit.collateralContribution")})]}),n.map((l,d)=>jsxs(Flex,{width:"100%",justify:"between",itemAlign:"center",children:[jsx(Text,{intensity:80,size:"xs",children:l.token}),jsx(Text,{size:"xs",intensity:80,className:cn(Number(l.collateralContribution)<0&&"oui-text-warning"),children:removeTrailingZeros(l.collateralContribution)})]},`item-${d}`)),jsx(Divider,{className:"oui-w-full"}),jsxs(Flex,{width:"100%",justify:"between",itemAlign:"center",children:[jsx(Text,{intensity:36,size:"xs",children:t("transfer.LTV.currentLTV")}),jsxs(Text,{size:"xs",intensity:36,className:cn("oui-select-none",bs(s)),children:[s,"%"]})]}),jsx(Text,{className:"oui-py-2",intensity:54,size:"2xs",children:t("transfer.LTV.tooltip",{threshold:i?"-":r,usdcThreshold:i?"-":o})}),jsx(Button,{fullWidth:true,size:"md",variant:"outlined",color:"secondary",onClick:a,children:t("transfer.convert.convertAssets")})]})};var Is=()=>{let{data:e,error:t,isLoading:r}=useQuery("/v1/public/auto_convert_threshold",{errorRetryCount:3});return {ltv_threshold:new Decimal(e?.ltv_threshold??0).mul(100).toNumber(),negative_usdc_threshold:e?.negative_usdc_threshold,isLoading:r,error:t}},ir=()=>{let{data:e=[],isLoading:t}=useHoldingStream(),{ltv_threshold:r,negative_usdc_threshold:o,isLoading:i}=Is(),n=useTokensInfo(),{getIndexPrice:s}=useIndexPricesStream(),a=e.map(u=>{let c=n?.find(({token:f})=>f===u.token),p=s(u.token),m=c?account.collateralRatio({baseWeight:c.base_weight??0,discountFactor:c.discount_factor??0,collateralQty:u.holding,collateralCap:c?.user_max_qty??u.holding,indexPrice:p}):zero,C=account.collateralContribution({collateralQty:u.holding,collateralCap:c?.user_max_qty??u.holding,collateralRatio:m.toNumber(),indexPrice:p});return {...u,collateralContribution:C}}),l=useComputedLTV(),d=useCallback(async()=>modal.show("ConvertDialogId"),[]);return {holdingData:a,isHoldingLoading:t,ltv_threshold:r,negative_usdc_threshold:o,isThresholdLoading:i,currentLtv:l,onConvert:d}};var at=()=>{let e=ir();return jsx(or,{...e})};var Lo=e=>{let{canTrade:t,currentLtv:r,quote:o,freeCollateral:i}=e,{t:n}=useTranslation(),s=useMemo(()=>typeof r=="number"&&!Number.isNaN(r)&&r>0,[r]);return jsxs(Flex,{itemAlign:"center",justify:"between",children:[jsx(Text,{size:"2xs",children:n("common.available")}),jsxs(Flex,{itemAlign:"center",justify:"center",gap:1,children:[s&&jsx(Tooltip,{className:"oui-bg-base-6 oui-p-2",content:jsx(at,{}),children:jsx(InfoCircleIcon,{className:"oui-cursor-pointer oui-text-warning oui-opacity-80"})}),jsx(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 Fe(e){let{order_type:t,order_type_ext:r}=e,o=[OrderType.ASK,OrderType.BID].includes(r);return t?t===OrderType.LIMIT&&o:o}function wo(e,t){if([BBOOrderType.COUNTERPARTY1,BBOOrderType.COUNTERPARTY5].includes(e))return t===OrderSide.BUY?OrderType.ASK:OrderType.BID;if([BBOOrderType.QUEUE1,BBOOrderType.QUEUE5].includes(e))return t===OrderSide.BUY?OrderType.BID:OrderType.ASK}function ko(e){if([BBOOrderType.COUNTERPARTY1,BBOOrderType.QUEUE1].includes(e))return OrderLevel.ONE;if([BBOOrderType.COUNTERPARTY5,BBOOrderType.QUEUE5].includes(e))return OrderLevel.FIVE}function Ro(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.t("orderEntry.scaledOrder.fullySuccessful",{total:r}):o===0?i18n.t("orderEntry.scaledOrder.allFailed"):i18n.t("orderEntry.scaledOrder.partiallySuccessful",{successCount:o,total:r})}}var sr=e=>Number.isNaN(Number(e))?0:Number(e);var dr=e=>{let{symbolInfo:t,order:r,onConfirm:o,onCancel:i}=e,{quote:n,quote_dp:s,base_dp:a}=t,{side:l,order_type:d,order_type_ext:u,level:c,symbol:p}=r,{t:m}=useTranslation(),[{rows:C}]=usePositionStream(p),v=C?.[0]?.position_qty,[O,x]=useLocalStorage("orderly_order_confirm",true),L=()=>r.position_type===PositionType.FULL?jsx(Text,{children:m("tpsl.positionType.full")}):jsx(Text,{children:m("tpsl.positionType.partial")}),U=()=>{if(d===OrderType.MARKET||d===OrderType.STOP_MARKET)return jsx(Text,{intensity:80,children:m("common.marketPrice")});if(Fe({order_type:d,order_type_ext:u})){let w=getBBOType({type:u,side:l,level:c}),te={[BBOOrderType.COUNTERPARTY1]:m("orderEntry.bbo.counterparty1"),[BBOOrderType.COUNTERPARTY5]:m("orderEntry.bbo.counterparty5"),[BBOOrderType.QUEUE1]:m("orderEntry.bbo.queue1"),[BBOOrderType.QUEUE5]:m("orderEntry.bbo.queue5")}[w];return jsx(Text,{intensity:80,children:te})}return jsx(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:w,isOrderPrice:te,isEnable:pe,colorType:re})=>pe?!w&&te?jsx(Text,{className:"oui-text-base-contrast-36",children:m("common.marketPrice")}):jsx(Text.numeral,{unit:"USDC",rule:"price",className:cn("oui-text-base-contrast",re==="TP"?"oui-text-trade-profit":"oui-text-trade-loss"),unitClassName:"oui-text-base-contrast-36 oui-ml-1",dp:s,padding:false,children:w}):jsx(Text,{className:"oui-text-base-contrast-36",children:"-- USDC"}),ae=()=>{if(!v||!r.order_quantity)return null;let w=new Decimal(r.order_quantity);return r.position_type===PositionType.FULL&&(w=w.plus(new Decimal(v??0))),jsxs(Flex,{justify:"between",children:[jsx(Text,{children:r.position_type===PositionType.FULL?m("common.positionQty"):m("common.orderQty")}),jsx(Text.numeral,{rule:"price",dp:a,padding:false,className:"oui-text-base-contrast",children:w.toNumber()})]})},W=()=>{if(d===OrderType.TRAILING_STOP){let{activated_price:w,callback_value:te,callback_rate:pe}=r,re=pe?jsxs(Flex,{justify:"between",children:[jsx(Text,{children:m("orderEntry.trailingRate")}),jsxs(Text,{className:"oui-text-base-contrast",children:[pe,"%"]})]}):jsx(ut,{title:m("orderEntry.trailingValue"),value:te,unit:n,dp:s});return jsxs(Fragment,{children:[w&&jsx(ut,{title:m("common.triggerPrice"),value:w,unit:n,dp:s}),re]})}return jsxs(Fragment,{children:[jsxs(Flex,{justify:"between",children:[jsx(Text,{children:m("common.price")}),U()]}),jsx(ut,{title:m("common.estTotal"),value:r.total,unit:n,dp:s})]})},M=jsxs(Flex,{justify:"between",children:[jsx(Text.formatted,{rule:"symbol",showIcon:true,children:r.symbol}),jsxs(Flex,{justify:"end",gapX:1,children:[jsx(Us,{type:d}),l===OrderSide.BUY?jsx(Badge,{color:"buy",size:"sm",children:m("common.buy")}):jsx(Badge,{color:"sell",size:"sm",children:m("common.sell")})]})]}),ce=jsxs(Flex,{justify:"between",children:[jsx(Text,{children:m("common.orderQty")}),jsx(Text.numeral,{rule:"price",dp:a,padding:false,className:"oui-text-base-contrast",children:r.order_quantity})]}),g=(d===OrderType.STOP_LIMIT||d===OrderType.STOP_MARKET&&r.trigger_price)&&jsx(ut,{title:m("common.trigger"),value:r.trigger_price,unit:n,dp:s}),H=(r.tp_trigger_price||r.sl_trigger_price)&&jsxs(Fragment,{children:[jsx(Divider,{className:"oui-my-4"}),jsxs("div",{className:textVariants({size:"sm",intensity:54,className:"oui-space-y-1 oui-w-full oui-flex oui-flex-col oui-gap-3"}),children:[jsx(Text,{className:"oui-text-base-contrast",children:L()}),ae(),jsxs(Flex,{direction:"column",justify:"between",itemAlign:"start",gap:1,className:"oui-w-full",children:[jsxs(Flex,{justify:"between",className:"oui-w-full",children:[jsx(Text,{children:m("tpsl.tpTriggerPrice")}),J({price:r.tp_trigger_price??"",isOrderPrice:false,isEnable:!!r.tp_trigger_price,colorType:"TP"})]}),jsxs(Flex,{justify:"between",className:"oui-w-full",children:[jsx(Text,{children:m("tpsl.tpOrderPrice")}),J({price:r.tp_order_price??"",isOrderPrice:true,isEnable:!!r.tp_trigger_price,colorType:"TP"})]})]}),jsxs(Flex,{direction:"column",justify:"between",itemAlign:"start",gap:1,className:"oui-w-full",children:[jsxs(Flex,{justify:"between",className:"oui-w-full",children:[jsx(Text,{children:m("tpsl.slTriggerPrice")}),J({price:r.sl_trigger_price??"",isOrderPrice:false,isEnable:!!r.sl_trigger_price,colorType:"SL"})]}),jsxs(Flex,{justify:"between",className:"oui-w-full",children:[jsx(Text,{children:m("tpsl.slOrderPrice")}),J({price:r.sl_order_price??"",isOrderPrice:true,isEnable:!!r.sl_trigger_price,colorType:"SL"})]})]})]})]}),ee=jsxs(Flex,{gapX:1,pt:4,pb:5,children:[jsx(Checkbox,{id:"orderConfirm",color:"white",onCheckedChange:w=>{x(!w);}}),jsx("label",{htmlFor:"orderConfirm",className:textVariants({size:"xs",intensity:54}),children:m("orderEntry.disableOrderConfirm")})]}),me=jsxs(Grid,{cols:2,gapX:3,children:[jsx(Button,{color:"secondary",size:"md",onClick:()=>i(),children:m("common.cancel")}),jsx(Button,{size:"md",onClick:()=>o(),children:m("common.confirm")})]});return jsxs(Fragment,{children:[M,jsx(Divider,{className:"oui-my-4"}),jsxs("div",{className:textVariants({size:"sm",intensity:54,className:"oui-space-y-1"}),children:[ce,g,W()]}),H,ee,me]})},ut=e=>{let{title:t,value:r,unit:o,dp:i}=e;return jsxs(Flex,{justify:"between",children:[jsx(Text,{children:t}),jsx(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})]})};dr.displayName="OrderConfirmDialog";var Us=e=>{let{t}=useTranslation(),r=useMemo(()=>{switch(e.type){case OrderType.LIMIT:return t("orderEntry.orderType.limit");case OrderType.MARKET:return t("common.marketPrice");case OrderType.STOP_LIMIT:return t("orderEntry.orderType.stopLimit");case OrderType.STOP_MARKET:return t("orderEntry.orderType.stopMarket");case OrderType.TRAILING_STOP:return t("orderEntry.orderType.trailingStop");default:return ""}},[e.type]);return jsx(Badge,{color:"neutral",size:"sm",children:r})},Gs=e=>{let{close:t,resolve:r,reject:o,...i}=e;return jsx(dr,{...i,onCancel:()=>{o(),t();},onConfirm:()=>{r(),t();}})},cr="orderConfirm";registerSimpleDialog(cr,Gs,{size:"sm",title:()=>i18n.t("orderEntry.orderConfirm")});var qo=memo(e=>{let{t}=useTranslation();return jsx(SimpleDialog,{open:e.open,title:t("orderEntry.orderConfirm"),closable:true,onOpenChange:e.onOpenChange,size:"sm",actions:{primary:{label:t("orderEntry.placeOrderNow"),className:"oui-text-sm oui-font-semibold oui-w-[100%] oui-h-8",onClick:()=>(e.onConfirm(),Promise.resolve())},secondary:{label:t("common.cancel"),className:"oui-text-sm oui-font-semibold oui-w-[100%] oui-h-8",onClick:()=>(e.onOpenChange(false),Promise.resolve())}},children:jsx("div",{className:"oui-text-2xs lg:oui-text-sm",children:t("orderEntry.maxQty.reminder.content",{maxQty:`${e.maxQty} ${e.base}`})})})});var fr=e=>{let{order:t,symbolInfo:r,dataSource:o,national:i,askAndBid:n,totalQuantity:s}=e,{base:a,quote:l,base_dp:d,quote_dp:u}=r,{t:c}=useTranslation(),p=()=>{e.reject(),e.close?.();},m=()=>{e.resolve(),e.close?.();},C=useMemo(()=>[{title:c("common.symbol"),dataIndex:"symbol",width:125,render:(f,v)=>jsxs(Flex,{gap:2,children:[jsx("div",{className:cn("oui-h-[38px] oui-w-1 oui-shrink-0 oui-rounded-[1px]",v.side===OrderSide.BUY?"oui-bg-trade-profit":"oui-bg-trade-loss")}),jsxs(Flex,{direction:"column",itemAlign:"start",children:[jsxs(Flex,{gapX:1,children:[jsx(TokenIcon,{symbol:f,className:"oui-size-3"}),jsx(Text.formatted,{rule:"symbol",size:"xs",formatString:"base-type",children:f})]}),jsx(Badge,{color:"neutral",size:"xs",children:c("orderEntry.orderType.limit")})]})]})},{title:c("common.quantity"),dataIndex:"order_quantity",width:100,render:(f,v)=>jsx(Text.numeral,{rule:"price",dp:d,padding:false,color:v.side===OrderSide.BUY?"buy":"sell",children:f})},{title:c("common.orderPrice"),dataIndex:"order_price",width:100,render:(f,v)=>{let O=!!(v.side===OrderSide.BUY?n?.[0]&&Number(f)>=n?.[0]:n?.[1]&&Number(f)<=n?.[1]);return jsxs(Flex,{gapX:1,children:[jsx(Text.numeral,{rule:"price",dp:u,children:f}),O&&jsx(Tooltip,{content:c("orderEntry.confirmScaledOrder.orderPrice.warning"),className:"oui-w-[240px] oui-text-2xs oui-font-semibold oui-text-base-contrast-80",children:jsx(ra,{className:"oui-text-warning-darken"})})]})}}],[c,r,n,d,u]);return jsxs("div",{className:"oui-font-semibold",children:[jsx(DataTable,{classNames:{root: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:cn("oui-h-[50px]")})}),jsxs("div",{className:"oui-mb-5 oui-mt-4 oui-text-2xs",children:[jsxs(Flex,{justify:"between",children:[jsx(Text,{children:c("orderEntry.totalOrders")}),jsx(Text,{intensity:80,children:t.orders?.length})]}),jsxs(Flex,{justify:"between",mt:2,children:[jsx(Text,{children:c("orderEntry.totalQuantity")}),jsx(Text.numeral,{rule:"price",unit:a,dp:d,padding:false,intensity:80,unitClassName:"oui-text-base-contrast-36 oui-ml-1",children:s})]}),jsxs(Flex,{justify:"between",mt:2,children:[jsx(Text,{children:c("common.notional")}),jsx(Text.numeral,{rule:"price",unit:l,dp:u,padding:false,intensity:80,unitClassName:"oui-text-base-contrast-36 oui-ml-1",children:i})]})]}),jsxs(Grid,{cols:2,gapX:3,children:[jsx(Button,{color:"secondary",size:"md",onClick:p,children:c("common.cancel")}),jsx(Button,{size:"md",onClick:m,children:c("common.confirm")})]})]})},ra=forwardRef((e,t)=>jsx("svg",{width:"12",height:"13",viewBox:"0 0 12 13",fill:"currentColor",xmlns:"http://www.w3.org/2000/svg",ref:t,...e,children: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 ct(){let e=useEventEmitter(),[t,r]=useState([0,0]),o=useDebouncedCallback(i=>{let n=i.asks?.[i.asks.length-1]?.[0],s=i.bids?.[0]?.[0];r([n,s]);},200);return useEffect(()=>(e.on("orderbook:update",o),()=>{e.off("orderbook:update",o),o.cancel();}),[o]),t}function gr(e){let{order:t,symbolInfo:r}=e,o=t.orders,i=ct(),n=useMemo(()=>o.reduce((l,d)=>l.add(new Decimal(d.order_price).mul(d.order_quantity)),zero).toNumber(),[o]),s=useMemo(()=>o.reduce((l,d)=>l.add(new Decimal(d.order_quantity)),zero).toString(),[o,r.base_dp]);return {dataSource:o,national:n,askAndBid:i,totalQuantity:s}}var Wo=e=>{let t=gr(e);return jsx(fr,{...e,...t})},mt="scaledOrderConfirm";registerSimpleDialog(mt,Wo,{size:"md",title:()=>i18n.t("orderEntry.confirmScaledOrder"),contentProps:{}});var Yo=e=>{let{t}=useTranslation(),r=useMemo(()=>[{label:t("orderEntry.orderType.limitOrder"),value:OrderType.LIMIT},{label:t("orderEntry.orderType.marketOrder"),value:OrderType.MARKET},{label:t("orderEntry.orderType.stopLimit"),value:OrderType.STOP_LIMIT},{label:t("orderEntry.orderType.stopMarket"),value:OrderType.STOP_MARKET},{label:t("orderEntry.orderType.scaledOrder"),value:OrderType.SCALED},{label:t("orderEntry.orderType.trailingStop"),value:OrderType.TRAILING_STOP}],[t]),o=useMemo(()=>({[OrderType.LIMIT]:t("orderEntry.orderType.limit"),[OrderType.MARKET]:t("common.marketPrice"),[OrderType.STOP_LIMIT]:t("orderEntry.orderType.stopLimit"),[OrderType.STOP_MARKET]:t("orderEntry.orderType.stopMarket"),[OrderType.SCALED]:t("orderEntry.orderType.scaledOrder"),[OrderType.TRAILING_STOP]:t("orderEntry.orderType.trailingStop")}),[t]);return jsx(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"},classNames:{trigger:"oui-bg-base-6 oui-border-line"},valueFormatter:(i,n)=>{if(!r.find(l=>l.value===i))return jsx(Text,{size:"xs",children:n.placeholder});let a=o[i];return jsx(Text,{size:"xs",color:e.canTrade?e.side===OrderSide.BUY?"buy":"sell":void 0,children:a})},size:"md"})};var Xo=e=>{let{symbol:t,side:r,symbolLeverage:o}=e,{isMobile:i}=useScreen(),{maxLeverage:n}=useSymbolLeverage(t),s=o||n,a=()=>{let l=i?SymbolLeverageSheetId:SymbolLeverageDialogId;modal.show(l,{symbol:t,side:r,curLeverage:s});};return jsxs(Flex,{justify:"center",itemAlign:"center",gapX:1,className:cn("oui-h-8","oui-rounded oui-border oui-border-line oui-bg-base-6","oui-cursor-pointer oui-select-none oui-text-xs oui-font-semibold oui-text-base-contrast-54"),onClick:a,children:[jsx(Text,{children:"Cross"}),jsx(Text.numeral,{dp:0,rm:Decimal.ROUND_DOWN,unit:"X",children:s})]})};function Jo(e){let{canTrade:t,side:r,order_type:o,setOrderValue:i}=e,{t:n}=useTranslation();return jsxs(Fragment,{children:[jsxs("div",{className:cn("oui-grid oui-w-full oui-flex-1 oui-gap-x-2 lg:oui-flex lg:oui-gap-x-[6px]","oui-grid-cols-2"),children:[jsx(Button,{onClick:()=>{e.setOrderValue("side",OrderSide.BUY);},size:"md",fullWidth:true,"data-type":OrderSide.BUY,className:cn(r===OrderSide.BUY&&t?"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:n("common.buy")}),jsx(Button,{onClick:()=>{e.setOrderValue("side",OrderSide.SELL);},"data-type":OrderSide.SELL,fullWidth:true,size:"md",className:cn(r===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:n("common.sell")})]}),jsxs("div",{className:cn("oui-grid oui-gap-x-2 lg:oui-flex lg:oui-gap-x-[6px]","oui-grid-cols-2"),children:[jsx("div",{className:"oui-w-full",children:jsx(Yo,{type:o,side:r,canTrade:t,onChange:s=>{i("order_type",s);}})}),jsx("div",{className:"oui-w-full",children:jsx(Xo,{symbol:e.symbol,side:e.side,symbolLeverage:e.symbolLeverage})})]})]})}var xr=createContext({}),P=()=>useContext(xr);var ei=e=>{let{errorMsgVisible:t,symbolInfo:r,onFocus:o,onBlur:i,getErrorMsg:n,setOrderValue:s,setOrderValues:a,currentFocusInput:l,errors:d,priceInputRef:u,priceInputContainerRef:c,triggerPriceInputRef:p,activatedPriceInputRef:m,lastQuantityInputType:C,leverage:f}=e,v=useMemo(()=>({errorMsgVisible:t,symbolInfo:r,onFocus:o,onBlur:i,getErrorMsg:n,setOrderValue:s,setOrderValues:a,currentFocusInput:l,errors:d,priceInputRef:u,priceInputContainerRef:c,triggerPriceInputRef:p,activatedPriceInputRef:m,lastQuantityInputType:C,leverage:f}),[t,r,o,i,n,s,a,l,d,u,c,p,m,C,f]);return jsx(xr.Provider,{value:v,children:e.children})};var I=forwardRef((e,t)=>{let{placeholder:r="0"}=e,{errorMsgVisible:o}=P();return jsx(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:e.prefix||jsx(Fa,{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??EMPTY_LIST,inputFormatter.numberFormatter,inputFormatter.currencyFormatter,inputFormatter.decimalPointFormatter],classNames:{root: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:cn("oui-mb-1 oui-mt-5 oui-h-5",e?.classNames?.input),suffix: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})});I.displayName="CustomInput";var Fa=e=>jsx("label",{htmlFor:e.id,className:cn("oui-absolute oui-left-2 oui-top-[7px] oui-text-2xs oui-text-base-contrast-36",e.className),children:e.children});var ti=e=>{let{t}=useTranslation(),r=useMemo(()=>[{label:t("orderEntry.bbo.counterparty1"),value:BBOOrderType.COUNTERPARTY1},{label:t("orderEntry.bbo.counterparty5"),value:BBOOrderType.COUNTERPARTY5},{label:t("orderEntry.bbo.queue1"),value:BBOOrderType.QUEUE1},{label:t("orderEntry.bbo.queue5"),value:BBOOrderType.QUEUE5}],[]);return jsx(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 jsx(Box,{children:jsx(Text,{size:"sm",children:n?.label})})}})};var oi=e=>{let{quote:t,bbo:r,fillMiddleValue:o}=e,{t:i}=useTranslation();return jsxs(Flex,{direction:"column",itemAlign:"end",className:cn("oui-order-entry-limit-price-input-suffix","oui-text-2xs"),children:[t,jsxs(Flex,{justify:"end",itemAlign:"center",gap:2,children:[jsx(Flex,{px:3,height:20,justify:"center",itemAlign:"center",r:"base",className: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"?modal.dialog({title:i("common.tips"),size:"xs",content:jsx(Text,{intensity:54,children:i("orderEntry.bbo.disabled.tips")})}):r.toggleBBO();},children:jsx(Text,{className: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")})}),jsx(Text,{className:cn("oui-select-none","oui-cursor-pointer oui-text-primary"),onClick:o,children:"Mid"})]})]})};var ii=e=>{let{bbo:t}=e,{t:r}=useTranslation(),{symbolInfo:o,onFocus:i,onBlur:n,getErrorMsg:s,setOrderValue:a,priceInputRef:l,priceInputContainerRef:d}=P(),{quote:u,quote_dp:c}=o,p=t.bboStatus==="on",m=e.order_type===OrderType.LIMIT?jsx(oi,{quote:u,bbo:t,fillMiddleValue:e.fillMiddleValue}):u;return jsxs("div",{ref:d,className:"oui-group oui-relative oui-w-full",children:[jsx(I,{id:"order_price_input",name:"order_price_input",label:r("common.price"),suffix:m,value:e.order_price,onChange:C=>{a("order_price",C);},error:s("order_price"),formatters:[inputFormatter.dpFormatter(c)],onFocus:i(1),onBlur:n(1),readonly:p,ref:l,classNames:{root:cn(p&&"focus-within:oui-outline-transparent "),input:cn(p&&"oui-cursor-auto")}}),t.bboStatus==="on"&&jsx("div",{className:cn("oui-absolute oui-bottom-1 oui-left-0"),children:jsx(ti,{value:t.bboType,onChange:t.onBBOChange,contentStyle:{width:e.priceInputContainerWidth}})})]})};var Sr=memo(e=>{let{t}=useTranslation(),{symbolInfo:r,onFocus:o,onBlur:i,getErrorMsg:n,setOrderValue:s}=P(),{base:a,base_dp:l}=r;return jsx(I,{id:"order_quantity_input",name:"order_quantity_input",label:t("common.qty"),suffix:a,error:n("order_quantity"),value:e.order_quantity,onChange:d=>{s("order_quantity",d);},formatters:[inputFormatter.dpFormatter(l)],onFocus:o(3),onBlur:i(3),className:"!oui-rounded-r",classNames:{suffix:"oui-justify-end"}})});Sr.displayName="QuantityInput";var Ir=memo(e=>{let{t}=useTranslation(),r=useMemo(()=>[{label:t("orderEntry.orderSize"),value:"orderSize"},{label:t("orderEntry.initialMargin"),value:"initialMargin"}],[t]);return jsx(Select.options,{size:"xs",value:e.value,valueFormatter:(o,i)=>r.find(s=>s.value===o)?.label+"\u2248",classNames:{trigger:cn("oui-w-auto oui-border-none oui-bg-transparent","oui-absolute oui-left-0 oui-top-[5px] oui-text-2xs oui-text-base-contrast-36")},onValueChange:e.onChange,options:r})});Ir.displayName="TotalTypeSelect";var Lr=memo(e=>{let{t}=useTranslation(),{total:r}=e,[o,i]=useState(""),{symbolInfo:n,onFocus:s,onBlur:a,getErrorMsg:l,setOrderValue:d,leverage:u=1,currentFocusInput:c}=P(),{quote:p}=n,[m,C]=useLocalStorage("orderly_order_total_type","orderSize");useEffect(()=>{if(r){if(c!==6){let O=new Decimal(r).div(u).todp(2).toString();i(O);}}else i("");},[r,u,c]);let f=O=>{let x=O?new Decimal(O).mul(u).toString():"";d("total",x),i(O);},v=jsx(Ir,{value:m,onChange:C});return m==="initialMargin"?jsx(I,{id:"order_margin_input",name:"order_margin_input",label:`${t("orderEntry.initialMargin")}\u2248`,prefix:v,suffix:p,error:l("total")?"initial margin error":"",value:o,onChange:f,formatters:[inputFormatter.dpFormatter(2)],onFocus:s(6),onBlur:a(6),className:"!oui-rounded-l",classNames:{suffix:"oui-justify-end"}}):jsx(I,{id:"order_total_input",name:"order_total_input",label:`${t("orderEntry.orderSize")}\u2248`,prefix:v,suffix:p,error:l("total"),value:e.total,onChange:O=>{d("total",O);},className:"!oui-rounded-l",classNames:{suffix:"oui-justify-end"},formatters:[inputFormatter.dpFormatter(2)],onFocus:s(5),onBlur:a(5)})});Lr.displayName="TotalInput";var $e=memo(e=>jsxs(Grid,{cols:2,className:"oui-group oui-space-x-1",children:[jsx(Sr,{order_quantity:e.order_quantity}),jsx(Lr,{total:e.total})]}));$e.displayName="QtyAndTotalInput";var li=memo(e=>{let{t}=useTranslation(),{setOrderValue:r}=P(),o=()=>{modal.dialog({title:t("common.tips"),size:"sm",content:jsx(pl,{value:e.distribution_type})});};return jsxs(Flex,{direction:"column",itemAlign:"start",justify:"center",p:2,r:"base",width:"100%",intensity:600,className:cn("oui-t-rounded oui-text-base-contrast-36","oui-border oui-border-solid oui-border-line",e.className),children:[jsx(Text,{size:"2xs",className:"oui-cursor-pointer oui-border-b oui-border-dashed oui-border-line-12",onClick:o,children:t("orderEntry.quantityDistribution")}),jsx(fl,{value:e.distribution_type,onValueChange:i=>{r("distribution_type",i);}})]})}),pl=e=>{let{t}=useTranslation(),[r,o]=useState(DistributionType.FLAT);useEffect(()=>{o([DistributionType.FLAT,DistributionType.ASCENDING,DistributionType.DESCENDING].includes(e.value)?e.value:DistributionType.FLAT);},[e.value]);let i=useMemo(()=>[{type:DistributionType.FLAT,title:t("orderEntry.distributionType.flat"),description:t("orderEntry.distributionType.flat.description"),formula:`${t("orderEntry.skew")} = 1`,quantity:jsx(gl,{})},{type:DistributionType.ASCENDING,title:t("orderEntry.distributionType.ascending"),description:t("orderEntry.distributionType.ascending.description"),formula:`${t("orderEntry.skew")} > 1`,quantity:jsx(yl,{})},{type:DistributionType.DESCENDING,title:t("orderEntry.distributionType.descending"),description:t("orderEntry.distributionType.descending.description"),formula:`0 < ${t("orderEntry.skew")} < 1`,quantity:jsx(bl,{})}],[]),n=useMemo(()=>i.find(s=>s.type===r),[i,r]);return jsxs("div",{className:"oui-text-2xs oui-font-semibold oui-text-base-contrast-54",children:[jsxs(Flex,{direction:"column",itemAlign:"start",gapY:1,children:[jsx(Text,{intensity:80,children:t("orderEntry.quantityDistribution.description")}),jsx(Text,{children:t("orderEntry.quantityDistribution.formula")})]}),jsxs(Flex,{intensity:600,p:1,r:"base",mt:3,itemAlign:"start",children:[jsx(Flex,{direction:"column",itemAlign:"start",children:i.map(s=>jsx(Box,{intensity:r===s.type?500:600,width:78,p:2,className:"oui-cursor-pointer oui-rounded-l",onClick:()=>{o(s.type);},children:jsx(Text,{children:s.title})},s.title))}),jsxs(Flex,{direction:"column",itemAlign:"start",gapY:1,p:2,intensity:500,width:"100%",className:cn("oui-rounded-r",r===DistributionType.FLAT&&"oui-rounded-bl",r===DistributionType.ASCENDING&&"oui-rounded-l",r===DistributionType.DESCENDING&&"oui-rounded-tl"),children:[jsx("div",{children:n?.formula}),jsx(Text,{children:n?.description}),jsx(Flex,{width:"100%",justify:"center",children:n?.quantity}),jsxs(Flex,{width:"100%",gapX:1,justify:"center",children:[jsx(Text,{className:"oui-text-base-1",children:t("common.price")}),jsx(xl,{})]})]})]})]})},fl=e=>{let{value:t,onValueChange:r}=e,{t:o}=useTranslation(),i=s=>a=>{r(s);},n=useMemo(()=>({[DistributionType.FLAT]:o("orderEntry.distributionType.flat"),[DistributionType.ASCENDING]:o("orderEntry.distributionType.ascending.abbr"),[DistributionType.DESCENDING]:o("orderEntry.distributionType.descending.abbr"),[DistributionType.CUSTOM]:o("orderEntry.distributionType.custom")}),[o]);return jsx(Flex,{className:cn("oui-gap-x-[6px] lg:oui-gap-x-2"),wrap:"wrap",children:Object.values(DistributionType).map(s=>jsxs(Flex,{itemAlign:"center",children:[jsx(Checkbox,{id:`distribution-type-${s}`,color:"white",variant:"radio",checked:t===s,onCheckedChange:i(s)}),jsx("label",{htmlFor:`distribution-type-${s}`,className:cn("oui-text-2xs","oui-ml-1","oui-whitespace-nowrap oui-break-normal"),children:n[s]})]},s))})},gl=()=>jsxs("svg",{width:"218",height:"40",viewBox:"0 0 218 40",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[jsx("rect",{x:"18",y:"18",width:"181",height:"4",fill:"rgb(var(--oui-color-base-2))"}),jsx("circle",{cx:"15",cy:"20",r:"6",fill:"rgb(var(--oui-color-base-2))",stroke:"rgb(var(--oui-color-base-5))",strokeWidth:"2"}),jsx("circle",{cx:"62",cy:"20",r:"6",fill:"rgb(var(--oui-color-base-2))",stroke:"rgb(var(--oui-color-base-5))",strokeWidth:"2"}),jsx("circle",{cx:"109",cy:"20",r:"6",fill:"rgb(var(--oui-color-base-2))",stroke:"rgb(var(--oui-color-base-5))",strokeWidth:"2"}),jsx("circle",{cx:"156",cy:"20",r:"6",fill:"rgb(var(--oui-color-base-2))",stroke:"rgb(var(--oui-color-base-5))",strokeWidth:"2"}),jsx("circle",{cx:"203",cy:"20",r:"6",fill:"rgb(var(--oui-color-base-2))",stroke:"rgb(var(--oui-color-base-5))",strokeWidth:"2"})]}),yl=()=>jsxs("svg",{width:"218",height:"40",viewBox:"0 0 218 40",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[jsx("rect",{x:"18",y:"18",width:"181",height:"4",fill:"rgb(var(--oui-color-base-2))"}),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"}),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"}),jsx("circle",{cx:"109",cy:"20",r:"6",fill:"rgb(var(--oui-color-base-2))",stroke:"rgb(var(--oui-color-base-5))",strokeWidth:"2"}),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"}),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"})]}),bl=()=>jsxs("svg",{width:"218",height:"40",viewBox:"0 0 218 40",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[jsx("rect",{width:"181",height:"4",transform:"matrix(-1 0 0 1 200 18)",fill:"rgb(var(--oui-color-base-2))"}),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"}),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"}),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"}),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"}),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"})]}),xl=()=>jsx("svg",{width:"176",height:"8",viewBox:"0 0 176 8",fill:"none",xmlns:"http://www.w3.org/2000/svg",children: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 wr=memo(e=>{let{t}=useTranslation(),{symbolInfo:r,onFocus:o,onBlur:i,getErrorMsg:n,setOrderValue:s}=P(),{quote:a,quote_dp:l}=r;return jsxs(Fragment,{children:[jsx(I,{label:t("orderEntry.startPrice"),suffix:a,id:"order_start_price_input",value:e.start_price,error:n("start_price"),onChange:d=>{s("start_price",d);},formatters:[inputFormatter.dpFormatter(l)],onFocus:o(7),onBlur:i(7),classNames:{root:"oui-rounded-t-xl"}}),jsx(I,{label:t("orderEntry.endPrice"),suffix:a,id:"order_end_price_input",value:e.end_price,error:n("end_price"),onChange:d=>{s("end_price",d);},formatters:[inputFormatter.dpFormatter(l)],onFocus:o(8),onBlur:i(8)})]})});wr.displayName="ScaledPriceInput";var Il=e=>jsx(Text,{size:"2xs",intensity:36,children:e}),ci=e=>{let{base:t,quote:r}=e,o=useMemo(()=>[{name:r},{name:t}],[t,r]);return jsx(Select.tokens,{variant:"text",size:"xs",iconSize:"2xs",tokens:o,classNames:{trigger:cn("oui-absolute oui-right-0 oui-top-1","oui-w-full oui-justify-end")},value:e.value,onValueChange:e.onValueChange,valueFormatter:Il,contentProps:{align:"end",alignOffset:-1,sideOffset:-4,className:"oui-border oui-border-line-6"}})};var fi=memo(e=>{let{t}=useTranslation(),{errors:r,symbolInfo:o,onFocus:i,onBlur:n,getErrorMsg:s,setOrderValue:a}=P(),[l,d]=useLocalStorage("orderly_order_quantity_unit","quote"),{base:u,quote:c,base_dp:p,quote_dp:m}=o,C=l==="base",v=jsx(ci,{base:u,quote:c,value:C?u:c,onValueChange:O=>{d(O===u?"base":"quote");}});return C?jsx(I,{label:t("common.qty"),suffix:v,id:"order_quantity_input",name:"order_quantity_input",className:"!oui-rounded-r",value:e.order_quantity,error:s("order_quantity",`${r?.order_quantity?.value} ${u}`),onChange:O=>{a("order_quantity",O);},formatters:[inputFormatter.dpFormatter(p)],onFocus:i(3),onBlur:n(3)}):jsx(I,{label:t("common.qty"),suffix:v,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:[inputFormatter.dpFormatter(m)],onFocus:i(5),onBlur:n(5)})});var yi=memo(e=>{let{t}=useTranslation(),{onFocus:r,onBlur:o,getErrorMsg:i,setOrderValue:n}=P();return jsx(I,{id:"order_skew_input",label:t("orderEntry.skew"),value:e.skew,error:i("skew"),onChange:s=>{n("skew",s);},onFocus:r(10),onBlur:o(10),overrideFormatters:[inputFormatter.rangeFormatter({min:0,max:100,dp:2}),inputFormatter.dpFormatter(2)],classNames:{root:"oui-rounded-b-xl"}})});var xi=memo(e=>{let{t}=useTranslation(),{onFocus:r,onBlur:o,getErrorMsg:i,setOrderValue:n}=P();return jsx(I,{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:[inputFormatter.numberFormatter,inputFormatter.dpFormatter(0)],onFocus:r(9),onBlur:o(9)})});var _i=e=>{let{values:t}=e,r=t.distribution_type===DistributionType.CUSTOM;return jsxs("div",{className:"oui-space-y-1",children:[jsx(wr,{start_price:t.start_price,end_price:t.end_price}),jsxs(Grid,{cols:2,className:"oui-group oui-space-x-1",children:[jsx(fi,{order_quantity:t.order_quantity,total:t.total}),jsx(xi,{total_orders:t.total_orders})]}),jsx(li,{distribution_type:t.distribution_type,className:cn(!r&&"oui-rounded-b-xl")}),r&&jsx(yi,{skew:t.skew})]})};var Rr=memo(e=>{let{t}=useTranslation(),{symbolInfo:r,onFocus:o,onBlur:i,getErrorMsg:n,setOrderValue:s,triggerPriceInputRef:a}=P();return jsx("div",{className:"oui-group",children:jsx(I,{ref:a,id:"order_trigger_price_input",name:"order_trigger_price_input",label:t("common.trigger"),suffix:r.quote,value:e.trigger_price,onChange:l=>{s("trigger_price",l);},error:n("trigger_price"),formatters:[inputFormatter.dpFormatter(r.quote_dp)],onFocus:o(2),onBlur:i(2)})})});Rr.displayName="TriggerPriceInput";var Ar=memo(e=>{let{t}=useTranslation(),{symbolInfo:r,onFocus:o,onBlur:i,getErrorMsg:n,setOrderValue:s,activatedPriceInputRef:a}=P();return jsx("div",{className:"oui-group",children:jsx(I,{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:l=>{s("activated_price",l);},formatters:[inputFormatter.dpFormatter(r.quote_dp)],onFocus:o(11),onBlur:i(11)})})});Ar.displayName="ActivePriceInput";var $l=[1,2,3,5],Mr=memo(e=>{let{setOrderValue:t}=P();return jsx(Flex,{gapX:2,className:e.className,children:$l.map(r=>{let o=r.toString(),i=e.callback_rate===o;return jsx(Flex,{justify:"center",itemAlign:"center",width:46,height:18,className: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:jsxs(Text,{size:"2xs",intensity:i?80:36,weight:"semibold",children:[r,"%"]})},r)})})});Mr.displayName="CallbackRatePercentages";var Br=memo(e=>{let{quote:t}=e,r=useMemo(()=>[{label:t,value:TrailingCallbackType.VALUE},{label:"%",value:TrailingCallbackType.RATE}],[t]);return jsx(Select.options,{variant:"text",size:"xs",options:r,classNames:{trigger: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"}})});Br.displayName="trailingCallbackSelect";var Dr=memo(e=>{let{callback_value:t,callback_rate:r}=e,{t:o}=useTranslation(),{symbolInfo:i,onFocus:n,onBlur:s,getErrorMsg:a,setOrderValue:l,setOrderValues:d}=P(),{quote:u,quote_dp:c}=i,p=useRef(),m=useRef(),[C,f]=useLocalStorage("orderly_order_trailing_callback_type",TrailingCallbackType.VALUE),v=useCallback(x=>{f(x),x===TrailingCallbackType.RATE?(p.current=t,d({callback_value:"",callback_rate:m.current})):(m.current=r,d({callback_value:p.current,callback_rate:""}));},[t,r]),O=jsx(Br,{quote:u,value:C,onValueChange:v});return C===TrailingCallbackType.RATE?jsxs("div",{className:"oui-relative",children:[jsx(I,{id:"order_callback_rate_input",name:"order_callback_rate_input",label:o("orderEntry.trailingRate"),suffix:O,error:a("callback_rate"),value:r,onChange:x=>{l("callback_rate",x);},formatters:[inputFormatter.dpFormatter(1)],onFocus:x=>{n(13)(x);},onBlur:x=>{s(13)(x);},classNames:{root:"oui-h-[68px]",input:"oui-mb-5",prefix:"!oui-top-1"}}),jsx(Mr,{className:"oui-absolute oui-bottom-1 oui-left-2",callback_rate:r})]}):jsx(I,{id:"order_callback_value_input",name:"order_callback_value_input",label:o("orderEntry.trailingValue"),suffix:O,error:a("callback_value"),value:t,onChange:x=>{l("callback_value",x);},formatters:[inputFormatter.dpFormatter(c)],onFocus:n(12),onBlur:s(12),classNames:{input:"!oui-mb-[6px]",prefix:"!oui-top-1"}})});Dr.displayName="TrailingCallbackInput";var Ei=e=>{let{values:t}=e;return jsxs("div",{className:"oui-space-y-1",children:[jsx(Ar,{activated_price:t.activated_price}),jsx(Dr,{callback_value:t.callback_value,callback_rate:t.callback_rate}),jsx($e,{order_quantity:t.order_quantity,total:t.total})]})};function Li(e){let{values:t}=e,r=t.order_type;if(r===OrderType.SCALED)return jsx(_i,{values:t});if(r===OrderType.TRAILING_STOP)return jsx(Ei,{values:t});let o=r===OrderType.STOP_LIMIT||r===OrderType.STOP_MARKET,i=r===OrderType.LIMIT||r===OrderType.STOP_LIMIT,n=o&&jsx(Rr,{trigger_price:t.trigger_price}),s=i&&jsx(ii,{order_type:t.order_type,order_price:t.order_price,bbo:e.bbo,fillMiddleValue:e.fillMiddleValue,priceInputContainerWidth:e.priceInputContainerWidth});return jsxs("div",{className:"oui-space-y-1",children:[n,s,jsx($e,{order_quantity:t.order_quantity,total:t.total})]})}var gu=0,Me=100,Qr=memo(e=>{let{canTrade:t,side:r,order_quantity:o,maxQty:i}=e,[n,s]=useState(0),{setOrderValue:a,symbolInfo:l,lastQuantityInputType:d}=P(),{base_dp:u,base_tick:c}=l,{t:p}=useTranslation(),m=useMemo(()=>t?r===OrderSide.BUY?"buy":"sell":void 0,[r,t]),C=useMemo(()=>r===OrderSide.BUY?p("orderEntry.maxBuy"):p("orderEntry.maxSell"),[r,p]),f=x=>{d.current=4,s(x);},v=x=>{let L=new Decimal(x).div(Me).mul(i).toFixed(u,Decimal.ROUND_DOWN);a("order_quantity",utils.formatNumber(L,c));},O=()=>{f(Me),n===Me&&v(Me);};return useEffect(()=>{d.current===4&&v(n);},[n,i]),useEffect(()=>{let x=()=>o&&Number(o)!==0&&i!==0?new Decimal(Math.min(Number(o),i)).div(i).mul(Me).todp(2,Decimal.ROUND_DOWN).toNumber():0;d.current!==4&&s(x());},[o,i]),jsxs("div",{children:[jsx(Slider,{disabled:i===0||!t,value:[n],color:m,markCount:4,showTip:true,onValueChange:x=>{f(x[0]);},min:gu,max:Me}),jsxs(Flex,{justify:"between",className:"oui-pt-1 xl:oui-pt-2",children:[jsx(Text.numeral,{size:"2xs",color:m,dp:2,padding:false,suffix:"%",children:t?n:0}),jsxs(Flex,{children:[jsx("button",{className:textVariants({size:"2xs",className:"oui-mr-1"}),onClick:O,"data-testid":"oui-testid-orderEntry-maxQty-value-button",children:C}),jsx(Text.numeral,{size:"2xs",color:m,dp:u,padding:false,"data-testid":"oui-testid-orderEntry-maxQty-value",children:t?i:0})]})]})]})});Qr.displayName="QuantitySlider";var vt=({checked:e,onCheckedChange:t,className:r,testId:o="oui-testid-orderEntry-reduceOnly-switch"})=>{let{t:i}=useTranslation();return jsxs(Flex,{itemAlign:"center",gapX:1,className:r,children:[jsx(Switch,{"data-testid":o,className:"oui-h-[14px]",id:"reduceOnly",checked:e,onCheckedChange:t}),jsx("label",{htmlFor:"reduceOnly",className:"oui-text-xs",children:i("orderEntry.reduceOnly")})]})};var Ur=createContext({}),ht=()=>useContext(Ur);var Bi=e=>{let{type:t,values:r,quote_dp:o}=e,{t:i}=useTranslation(),[n,s]=useState(true),{mode:a,setMode:l,tipsEle:d}=ht(),[u,c]=useState(false),[p,m]=useState(false),C=useMemo(()=>{switch(a){case "Offset":return `${t.toLowerCase()}_offset`;case "Offset%":return `${t.toLowerCase()}_offset_percentage`;default:return `${t.toLowerCase()}_pnl`}},[a]),[f,v]=useState(r[a]);useEffect(()=>{p||v(r[a]);},[r,a,p]);let O=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]),x=useMemo(()=>({PnL:i("tpsl.pnl"),Offset:i("tpsl.offset"),"Offset%":`${i("tpsl.offset")}%`}),[i]),L=useRef("");return {mode:a,modes:O,modeLabelMap:x,formatter:M=>{let{dp:ce=2}=M;return {onRenderBefore:(g,H)=>(g=`${g}`,n&&t==="SL"&&a==="PnL"&&(g=g.startsWith("-")?g:"-"+g),g===""||g==="-"?"":a==="Offset%"?`${new Decimal(g.replace(new RegExp(L.current.replace(".","\\.")+"$"),"")).mul(100).todp(2,4).toString()}${L.current}`:(a==="Offset"&&(g=todpIfNeed(g,ce)),`${g}`)),onSendBefore:g=>{if(/^\-?0{2,}$/.test(g))return "0";if(a==="Offset%"){if(g!==""){g=todpIfNeed(g,2);let H=g.match(/\.0{0,2}$/);H?L.current=H[0]:L.current="",g=new Decimal(g).div(100).toString(),g=`${g}${L.current}`;}}else a==="PnL"&&t==="SL"&&n?g=g.startsWith("-")?g:"-"+g:g=todpIfNeed(g,ce);return g===""||g==="-"?"":g}}},onModeChange:M=>{l(M);},onFocus:()=>{c(true),m(true);},onBlur:()=>{c(false),m(false),e.onChange(C,f);},value:f,onValueChange:M=>{v(M),e.onChange(C,M);},quote_dp:o,tips:u?d:void 0,setFocus:s}};var qi=e=>{let{mode:t,modes:r,modeLabelMap:o,onModeChange:i,onValueChange:n,quote:s,quote_dp:a,value:l,type:d,tips:u,onFocus:c,onBlur:p,setFocus:m}=e,[C,f]=useState(t),[v,O]=useState(t==="Offset%"?"%":s);useEffect(()=>{f(t),O(t==="Offset%"?"%":s);},[t]),useEffect(()=>{f(l?"":t);},[l]);let x=useMemo(()=>`${d.toLowerCase()}_${t.toLowerCase()}`,[]);return jsx(Input.tooltip,{prefix:o[C]||C,size:"md",placeholder:v,id:x,align:"right",value:l,tooltip:u,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:d}),inputFormatter.currencyFormatter],classNames:{root:d==="TP"?"oui-text-trade-profit":"oui-text-trade-loss",additional:"oui-text-base-contrast-54",input:"oui-text-inherit"},onFocus:()=>{f(""),O(""),m(true),c();},onBlur:()=>{f(l?"":t),O(t==="Offset%"?"%":s),p();},suffix:jsxs(Fragment,{children:[t==="Offset%"&&!!l&&jsx(Text,{size:"2xs",color:"inherit",className:"oui-ml-[2px]",children:"%"}),jsx(wu,{mode:t,modes:r,onModeChange:L=>i(L.value),testId:e.testIds?.dropDown})]})})},wu=e=>jsx(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:jsx("button",{className:"oui-p-2","data-testid":e.testId,children:jsx(CaretDownIcon,{size:12,color:"white"})})});var zi=e=>{let{testIds:t,quote:r,...o}=e,i=Bi(o);return jsx(qi,{...i,testIds:t,quote:r,type:e.type})};var Hr=e=>{let{type:t,values:r,children:o}=e,[i,n]=useLocalStorage("TP/SL_Mode","Offset%"),{t:s}=useTranslation(),a=useMemo(()=>!r.PnL||!r.trigger_price?null:jsxs(Flex,{children:[jsx("span",{className:"oui-text-xs oui-text-base-contrast-54",children:i==="PnL"?s("orderEntry.estRoi"):s("orderEntry.estPnL")}),i==="PnL"?jsx(Text.numeral,{rule:"percentages",className:cn("oui-ml-1 oui-text-xs",t==="TP"?"oui-text-trade-profit":"oui-text-trade-loss"),children:r.ROI}):jsx(Text.numeral,{rule:"price",className: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]),l=useMemo(()=>({mode:i,setMode:n,tipsEle:a}),[i,n,a]);return jsx(Ur.Provider,{value:l,children:o})};var Ki=e=>{let t=Hi.useRef(null),{t:r}=useTranslation(),{isMobile:o}=useScreen();return useEffect(()=>{e.orderType!==OrderType.LIMIT&&e.orderType!==OrderType.MARKET&&e.onSwitchChanged(false);},[e.orderType]),e.orderType!==OrderType.LIMIT&&e.orderType!==OrderType.MARKET||e.isReduceOnly?null:jsxs("div",{children:[jsxs(Flex,{itemAlign:"center",justify:"between",children:[jsxs(Flex,{itemAlign:"center",gapX:1,children:[jsx(Switch,{id:"order_entry_tpsl",className:"oui-h-[14px]",checked:e.switchState,disabled:e.orderType!==OrderType.LIMIT&&e.orderType!==OrderType.MARKET||e.isReduceOnly,onCheckedChange:i=>{e.onSwitchChanged(i);}}),jsx("label",{htmlFor:"order_entry_tpsl",className:"oui-text-xs",children:r("common.tpsl")})]}),jsxs(Flex,{itemAlign:"center",gapX:2,children:[o&&e.onReduceOnlyChange&&jsx(vt,{checked:e.reduceOnlyChecked??false,onCheckedChange:e.onReduceOnlyChange}),!o&&jsx($i,{className:cn("oui-group oui-invisible",e.switchState&&"oui-visible"),showTPSLAdvanced:e.showTPSLAdvanced})]})]}),jsx("div",{className: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:jsx(Yi,{ref:t,setOrderValue:e.setOrderValue,onChange:e.onChange,values:e.values,errors:e.errors,quote_dp:e.quote_dp,showTPSLAdvanced:e.showTPSLAdvanced,isMobile:o})})]})},Yi=Hi.forwardRef((e,t)=>{let{getErrorMsg:r}=useOrderEntryFormErrorMsg(e.errors),{t:o}=useTranslation();return jsxs("div",{ref:t,className:"oui-space-y-1 oui-px-px oui-py-2 oui-transition-all",children:[jsxs(Flex,{itemAlign:"center",justify:"between",gapX:2,children:[jsx(TPSLPositionTypeWidget,{value:e.values.position_type,onChange:e.onChange}),e.isMobile&&jsx($i,{showTPSLAdvanced:e.showTPSLAdvanced,isMobile:e.isMobile})]}),jsx(Hr,{values:e.values.tp,type:"TP",children:jsx(Wi,{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"}})}),jsx(Hr,{values:e.values.sl,type:"SL",children:jsx(Wi,{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"}})})]})});Yi.displayName="TPSLInputForm";var $i=e=>{let{t}=useTranslation();return jsxs(Flex,{itemAlign:"center",gapX:1,onClick:e.showTPSLAdvanced,className:cn("oui-group oui-cursor-pointer",e.className),children:[jsx(Text,{className:cn("oui-cursor-pointer group-hover:oui-text-base-contrast",e.isMobile?"oui-text-2xs":"oui-text-sm"),children:t("tpsl.advanced")}),jsx(SettingFillIcon,{size:12,className:"oui-text-base-contrast-54 group-hover:oui-text-base-contrast oui-cursor-pointer",opacity:1,onClick:e.showTPSLAdvanced})]})},$u=e=>{let{t}=useTranslation(),{errorMsgVisible:r}=P(),{tipsEle:o}=ht(),[i,n]=useState(`${e.type} Price`),[s,a]=useState("USDC"),[l,d]=useState(false),[u,c]=useState(false),[p,m]=useState(e.values.trigger_price??"");useEffect(()=>{u||m(e.values.trigger_price??"");},[e.values.trigger_price,u]);let C=useMemo(()=>e.error&&r?e.error:l?o:null,[e.error,r,l,o]),f=L=>{let U=e.type==="TP"?t("tpsl.tpPrice"):t("tpsl.slPrice");return L&&(U=e.type==="TP"?t("tpsl.tp"):t("tpsl.sl")),U},v=L=>{m(L),e.onChange(L);};useEffect(()=>{n(f(e.values.trigger_price)),u||m(e.values.trigger_price??"");},[e.type,e.values.trigger_price]);let O=()=>{n(e.type==="TP"?t("tpsl.tp"):t("tpsl.sl")),a(""),d(true),c(true);},x=()=>{n(f(e.values.trigger_price)),a("USDC"),d(false),c(false),e.onChange(p);};return jsx(Input.tooltip,{"data-testid":e.testId,prefix:i,size:"md",placeholder:s,align:"right",onFocus:O,onBlur:x,tooltip:C,tooltipProps:{content:{side:e.type==="TP"?"top":"bottom"}},color:e.error?"danger":void 0,autoComplete:"off",value:p,classNames:{additional:"oui-text-base-contrast-54",root:"oui-pr-2 md:oui-pr-3",prefix:"oui-pr-1 md:oui-pr-2"},onValueChange:v,formatters:[inputFormatter.numberFormatter,inputFormatter.dpFormatter(e.quote_dp??2),inputFormatter.currencyFormatter]})},Wi=e=>jsxs(Grid,{cols:2,gapX:1,children:[jsx($u,{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}),jsx(zi,{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 Xr=e=>{let{side:t,formattedOrder:r,setOrderValue:o,setOrderValues:i,symbolInfo:n,maxQty:s,freeCollateral:a,helper:l,submit:d,metaState:u,bboStatus:c,bboType:p,onBBOChange:m,toggleBBO:C,disableFeatures:f,currentLtv:v,fillMiddleValue:O,soundAlert:x,setSoundAlert:L,currentFocusInput:U}=e,[J,ae]=useState(false),{t:W}=useTranslation(),{isMobile:M}=useScreen(),[ce,g]=useState(false),{errors:H,validated:ee}=u,[me,w]=useState(false),[te,pe]=useLocalStorage("orderly_order_confirm",true),[re,et]=useLocalStorage("orderly-order-additional-pinned",true),[Bt,fe]=useState(false),[Vt,Dt]=useLocalStorage("orderly-order-hidden",false),[Ie,qt]=useLocalStorage("orderly-slippage","1",{parseJSON:b=>!b||b==='""'?"1":JSON.parse(b)}),{notification:h}=useOrderlyContext(),F=useId(),{getErrorMsg:le}=useOrderEntryFormErrorMsg(ee?H:null),z=useMemo(()=>t===OrderSide.BUY?W("orderEntry.buyLong"):W("orderEntry.sellShort"),[t,W]);useEffect(()=>{ee&&w(true);},[ee]),useEffect(()=>{f?.includes("slippageSetting")||(Ie?o("slippage",Number(Ie)):o("slippage",void 0));},[Ie,f]),useEffect(()=>{let b=A=>{A.target.closest("#order-entry-submit-button")||w(oo=>oo&&false);};return me?document.addEventListener("click",b):document.removeEventListener("click",b),()=>{document.removeEventListener("click",b);}},[me]);let K=useMemoizedFn(async()=>{let b=r.order_type===OrderType.SCALED;l.validate().then(A=>b?modal.show(mt,{order:A,symbolInfo:n,size:M?"sm":"md"}):te?modal.show(cr,{order:r,symbolInfo:n}):true,A=>(A.slippage&&toast.error(W("orderEntry.slippage.error.max")),w(true),Promise.reject())).then(()=>d({resetOnSuccess:false}).then(A=>{if(!A.success&&A.message)toast.error(A.message);else if(A.success&&b){let ze=Ro(A);ze&&toast.success(ze);}})).catch(A=>{A?.message&&toast.error(A.message);});}),qe=useMemo(()=>new Decimal(s).todp(n.base_dp,Decimal.ROUND_DOWN).toString(),[s,n.base_dp]),zt=useCallback(()=>{o("order_quantity",qe),requestAnimationFrame(()=>{K();}),ae(false);},[o,qe]),an=async()=>{if(r.reduce_only&&s===0)return modal.confirm({title:W("orderEntry.reduceOnly.reminder"),content:W("orderEntry.reduceOnly.reminder.content"),okLabel:W("orderEntry.placeOrderNow"),onOk:async()=>(o("reduce_only",false),requestAnimationFrame(()=>{e.resetMetaState(),K();}),Promise.resolve(true)),onCancel:async()=>Promise.resolve(false)});s>0&&Number(r.order_quantity)>s?ae(true):K();},ln=()=>{l.validate().then(()=>{fe(true);},b=>{let A=new Set(["tp_trigger_price","sl_trigger_price"]);Object.keys(b).every(ze=>A.has(ze))&&fe(true);});},un=b=>{b.side!==r.side&&o("side",b.side),i({position_type:b.position_type,tp_order_type:b.tp_order_type,tp_pnl:b.tp_pnl,tp_offset:b.tp_offset,tp_offset_percentage:b.tp_offset_percentage,tp_ROI:b.tp_ROI,tp_trigger_price:b.tp_trigger_price,tp_order_price:b.tp_order_price,sl_order_type:b.sl_order_type,sl_trigger_price:b.sl_trigger_price,sl_order_price:b.sl_order_price,sl_pnl:b.sl_pnl,sl_offset:b.sl_offset,sl_offset_percentage:b.sl_offset_percentage,sl_ROI:b.sl_ROI}),fe(false),g(true);},dn=()=>{g(false),i({tp_trigger_price:void 0,tp_order_price:void 0,tp_order_type:OrderType.MARKET,sl_trigger_price:void 0,sl_order_price:void 0,sl_order_type:OrderType.MARKET,tp_pnl:void 0,sl_pnl:void 0,position_type:PositionType.FULL});};useEffect(()=>{g(false);},[e.symbol]);let Qt=!!h?.orderFilled?.media&&(h?.orderFilled?.displayInOrderEntry??true),ro={pinned:re,setPinned:et,needConfirm:te,setNeedConfirm:pe,hidden:Vt,setHidden:Dt,onValueChange:o,orderTypeExtra:r.order_type_ext,showExtra:r.order_type===OrderType.LIMIT&&!e.tpslSwitch},Ut=!re&&jsx(io,{...ro});return jsxs(ei,{errors:H,errorMsgVisible:me,symbolInfo:n,onFocus:e.onFocus,onBlur:e.onBlur,getErrorMsg:le,setOrderValue:o,setOrderValues:i,currentFocusInput:U.current,priceInputRef:e.priceInputRef,priceInputContainerRef:e.priceInputContainerRef,triggerPriceInputRef:e.triggerPriceInputRef,activatedPriceInputRef:e.activatedPriceInputRef,lastQuantityInputType:e.lastQuantityInputType,leverage:e.symbolLeverage,children:[jsx(qo,{open:J,onOpenChange:ae,maxQty:qe,onConfirm:zt,base:n.base}),jsxs("div",{className:"oui-space-y-2 oui-text-base-contrast-54 xl:oui-space-y-3",ref:e.containerRef,children:[jsx(Jo,{symbol:e.symbol,canTrade:e.canTrade,side:t,order_type:r.order_type,setOrderValue:o,symbolLeverage:e.symbolLeverage}),jsx(Lo,{currentLtv:v,canTrade:e.canTrade,quote:n?.quote,freeCollateral:a}),jsx(Li,{values:r,priceInputContainerWidth:e.priceInputContainerWidth,fillMiddleValue:O,bbo:{bboStatus:c,bboType:p,onBBOChange:m,toggleBBO:C}}),jsx(Qr,{canTrade:e.canTrade,side:e.side,order_quantity:r.order_quantity,maxQty:s}),jsx(ThrottledButton,{fullWidth:true,id:"order-entry-submit-button","data-type":OrderSide.BUY,className:cn(t===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:an,loading:e.isMutating,disabled:!e.canTrade,children:z}),jsx(vo,{canTrade:e.canTrade,quote:n.quote,estLiqPrice:e.estLiqPrice,estLeverage:e.estLeverage,currentLeverage:e.currentLeverage,slippage:Ie,dp:n.quote_dp,setSlippage:qt,estSlippage:e.estSlippage,orderType:r.order_type,disableFeatures:f,symbol:e.symbol}),jsx(Divider,{className:"oui-w-full"}),ce?jsx(lo,{order:r,symbolInfo:e.symbolInfo,errors:ee?H:null,onEdit:()=>{fe(true);},onDelete:()=>{dn();}}):jsx(Ki,{quote_dp:e.symbolInfo.quote_dp,switchState:e.tpslSwitch,onSwitchChanged:e.setTpslSwitch,orderType:r.order_type,errors:ee?H:null,isReduceOnly:r.reduce_only,setOrderValue:o,reduceOnlyChecked:r.reduce_only??false,onReduceOnlyChange:b=>{o("reduce_only",b);},values:{position_type:r.position_type??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:ln,onChange:(b,A)=>{o(b,A);}}),(M&&(r.order_type!==OrderType.LIMIT&&r.order_type!==OrderType.MARKET||r.reduce_only)||!M)&&jsxs(Flex,{justify:"between",itemAlign:"center",className:"oui-mt-2",children:[jsx(vt,{checked:r.reduce_only??false,onCheckedChange:b=>{o("reduce_only",b);}}),!Qt&&Ut]}),Qt&&jsxs(Flex,{justify:"between",itemAlign:"center",children:[jsxs(Flex,{itemAlign:"center",gapX:1,children:[jsx(Switch,{className:"oui-h-[14px]",id:F,checked:x,onCheckedChange:b=>L(b)}),jsx("label",{htmlFor:F,className:"oui-text-xs",children:W("portfolio.setting.soundAlerts")})]}),Ut]}),!Qt&&M&&(r.order_type==OrderType.LIMIT||r.order_type==OrderType.MARKET)&&!r.reduce_only&&!re&&jsx(Flex,{className:"oui-w-full",justify:"end",children:Ut}),re&&jsxs(Box,{p:2,r:"md",intensity:700,position:"relative",children:[jsx(Ue,{...ro}),jsx(so,{onClick:()=>{et(false);},className:"oui-group oui-absolute oui-right-2 oui-top-2","data-testid":"oui-testid-orderEntry-pinned-button"})]})]}),jsx(SimpleSheet,{open:Bt,onOpenChange:fe,classNames:{body:"oui-h-full oui-pb-0 oui-border-none",overlay:"!oui-bg-base-10/60",content:cn("oui-rounded-[16px] oui-border-none !oui-p-0",M?"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:jsx(TPSLAdvancedWidget,{setOrderValue:o,order:r,onSubmit:un,onClose:()=>{fe(false);},symbolLeverage:e.symbolLeverage})})]})};function tn({tpslSwitch:e,order_type:t,order_type_ext:r,side:o,setOrderValues:i}){let[n,s]=useLocalStorage("orderly_order_bbo_type",void 0),a=useRef(n),{track:l}=useTrack(),d=useMemo(()=>e||[OrderType.POST_ONLY,OrderType.IOC,OrderType.FOK].includes(r)?"disabled":n&&t===OrderType.LIMIT?"on":"off",[e,r,t,n]),u=()=>{l(TrackerEventName.clickBBOButton),n?(s(void 0),i({order_type_ext:void 0,level:void 0})):s(a.current||BBOOrderType.COUNTERPARTY1);},c=p=>{s(p),a.current=p;};return useEffect(()=>{d==="disabled"&&i({order_type_ext:Fe({order_type_ext:r})?void 0:r,level:void 0});},[d,r]),useEffect(()=>{if(d==="on"){let p=wo(n,o),m=ko(n);i({order_type_ext:p,level:m});}},[n,d,o]),{bboStatus:d,bboType:n,setBBOType:s,onBBOChange:c,toggleBBO:u}}function on(e){let{base_tick:t,order_type:r,order_quantity:o,setValue:i}=e,n=useRef(0),s=useRef(8),a=useRef(0),l=()=>{if(t<1||r===OrderType.SCALED||!o)return;let c=utils.formatNumber(o,new Decimal(t||"0").toNumber());i("order_quantity",c,{shouldUpdateLastChangedField:false});},d=c=>p=>{n.current=c,[7,8].includes(n.current)&&(s.current=c),[3,5,6].includes(c)&&(a.current=c);},u=c=>p=>{setTimeout(()=>{n.current===c&&(n.current=0);},300),c===3&&l();};return {currentFocusInput:n,lastScaledOrderPriceInput:s,lastQuantityInputType:a,onFocus:useMemoizedFn(d),onBlur:useMemoizedFn(u)}}function nn({order_type_ext:e}){let[t,r]=useState(0),o=useRef(null);return useEffect(()=>{let i=o.current;if(!i)return;let n=new ResizeObserver(s=>{for(let a of s){let l=a.contentRect.width;l&&r(l);}});return n.observe(i),()=>{n.unobserve(i);}},[o,e]),{priceInputContainerRef:o,priceInputContainerWidth:t}}var Fd="orderly_order_sound_alert",to=e=>{let{symbol:t}=e,[r,o]=useLocalStorage("orderly-order-entry-order-type",OrderType.LIMIT),[i,n]=useLocalStorage("orderly-order-entry-order-side",OrderSide.BUY),{notification:s}=useOrderlyContext(),[a,l]=useLocalStorage(Fd,s?.orderFilled?.defaultOpen??false),d=useCanTrade(),{formattedOrder:u,setValue:c,setValues:p,symbolInfo:m,...C}=useOrderEntry(t,{initialOrder:{symbol:t,order_type:r,position_type:PositionType.PARTIAL,side:i}}),[f,v]=useLocalStorage("orderly-order-entry-tp_sl-switch",false),{currentLeverage:O}=useMarginRatio(),x=useEventEmitter(),L=useRef(null),U=useRef(null),J=useRef(null),{bboStatus:ae,bboType:W,setBBOType:M,onBBOChange:ce,toggleBBO:g}=tn({tpslSwitch:f,order_type:u.order_type,order_type_ext:u.order_type_ext,side:u.side,setOrderValues:p}),{currentFocusInput:H,lastScaledOrderPriceInput:ee,lastQuantityInputType:me,onFocus:w,onBlur:te}=on({base_tick:m?.base_tick,order_type:u.order_type,order_quantity:u.order_quantity,setValue:c}),pe=()=>{p({tp_trigger_price:"",sl_trigger_price:"",position_type:PositionType.FULL});},re=()=>{p({order_type_ext:void 0,position_type:PositionType.FULL});},et=useMemoizedFn((h,F,le)=>{if(h==="order_type"&&o(F),h==="side"&&n(F),h==="reduce_only"&&F||h==="order_type"&&(F===OrderType.STOP_LIMIT||F===OrderType.STOP_MARKET)){let z={tp_trigger_price:"",sl_trigger_price:"",[h]:F};h==="order_type"&&(z.order_type_ext=""),p(z);return}if(h==="order_type"&&F!==OrderType.LIMIT){let z={level:void 0,order_type_ext:void 0,[h]:F};p(z);return}if(h==="order_type"&&F===OrderType.SCALED){p({distribution_type:DistributionType.FLAT,[h]:F});return}c(h,F,le);}),Bt=h=>{v(h),h?re():pe();};useEffect(()=>{let h=F=>{c("order_price",F);};return x.on("update:orderPrice",h),()=>{x.off("update:orderPrice",h);}},[]),useEffect(()=>{let h=le=>{requestAnimationFrame(()=>{le?.focus();});},F=le=>{let z=removeTrailingZeros(le[0]),{order_type:K,order_type_ext:qe}=u;if(H.current===2&&(K===OrderType.STOP_LIMIT||K===OrderType.STOP_MARKET)){c("trigger_price",z),h(L.current);return}if(Fe({order_type:K,order_type_ext:qe})){M(void 0),p({order_type_ext:void 0,level:void 0}),requestAnimationFrame(()=>{x.emit("update:orderPrice",z);}),h(U.current);return}if(K===OrderType.STOP_LIMIT||K===OrderType.LIMIT){c("order_price",z),h(U.current);return}if(K===OrderType.STOP_MARKET){c("trigger_price",z),h(L.current);return}if(K===OrderType.MARKET){M(void 0),p({order_type:OrderType.LIMIT,order_price:z}),h(U.current);return}if(K===OrderType.SCALED&&ee.current){let zt=ee.current===7?"start_price":"end_price";c(zt,z),h(U.current);return}if(K===OrderType.TRAILING_STOP){c("activated_price",z),h(J.current);return}c("order_price",z),h(U.current);};return x.on("orderbook:item:click",F),()=>{x.off("orderbook:item:click",F);}},[u,m]),useEffect(()=>{C.reset(),C.resetMetaState(),me.current=0;},[t]),useEffect(()=>{u.order_type===OrderType.SCALED&&!u.distribution_type&&c("distribution_type",DistributionType.FLAT);},[u.order_type,u.distribution_type]);let fe=useComputedLTV(),Vt=ct(),Dt=()=>{if(ae==="on"&&g(),u.order_type===OrderType.LIMIT){let[h=0,F=0]=Vt,le=new Decimal(sr(h)).add(sr(F)).div(2).toNumber();requestAnimationFrame(()=>{x.emit("update:orderPrice",le);});}},{priceInputContainerRef:Ie,priceInputContainerWidth:qt}=nn({order_type_ext:u.order_type_ext});return {...C,side:u.side,type:u.order_type,level:u.level,formattedOrder:u,setOrderValue:et,setOrderValues:p,currentLeverage:O,tpslSwitch:f,setTpslSwitch:Bt,symbolInfo:m,onFocus:w,onBlur:te,priceInputRef:U,priceInputContainerRef:Ie,priceInputContainerWidth:qt,triggerPriceInputRef:L,activatedPriceInputRef:J,lastQuantityInputType:me,canTrade:d,bboStatus:ae,bboType:W,onBBOChange:ce,toggleBBO:g,currentLtv:fe,fillMiddleValue:Dt,symbol:t,soundAlert:a,setSoundAlert:l,currentFocusInput:H}};var wd=e=>{let t=to(e);return jsx(Xr,{...t,containerRef:e.containerRef,disableFeatures:e.disableFeatures})};
|
|
16
16
|
|
|
17
|
-
export {
|
|
17
|
+
export { Ue as AdditionalInfo, Jt as FeesWidget, at as LTVRiskTooltipWidget, dr as OrderConfirmDialog, Xr as OrderEntry, wd as OrderEntryWidget, to as useOrderEntryScript };
|
|
18
18
|
//# sourceMappingURL=out.js.map
|
|
19
19
|
//# sourceMappingURL=index.mjs.map
|