@orderly.network/ui-share
Version:
1 lines • 90.4 kB
Source Map (JSON)
{"version":3,"sources":["../src/index.ts","../src/sharePnL/sharePnL.script.tsx","../src/sharePnL/sharePnL.ui.tsx","../src/sharePnL/desktop/content.tsx","../src/sharePnL/poster/poster.tsx","../src/sharePnL/utils/utils.tsx","../src/sharePnL/desktop/bottomBtns.tsx","../src/sharePnL/desktop/carousel.tsx","../src/sharePnL/desktop/buttons.tsx","../src/sharePnL/desktop/message.tsx","../src/sharePnL/desktop/checkbox.tsx","../src/sharePnL/desktop/options.tsx","../src/sharePnL/desktop/pnlFormat.tsx","../src/sharePnL/mobile/content.tsx","../src/sharePnL/carousel/carousel.tsx","../src/sharePnL/carousel/index.tsx","../src/sharePnL/sharePnL.widget.tsx"],"names":["registerSimpleDialog","registerSimpleSheet","useMemo","useReferralInfo","useSymbolsInfo","useSharePnLScript","props","pnl","hide","entity","symbolInfo","getFirstRefCode","referralInfo","code","base_dp","quote_dp","useEffect","useState","useRef","useTranslation","Divider","Flex","toast","Text","Box","forwardRef","useImperativeHandle","usePoster","jsx","Poster","parentRef","width","height","className","data","style","ref","download","toDataURL","copy","toBlob","Decimal","getPnLPosterData","position","leverage","message","domain","pnlType","options","baseDp","quoteDp","referral","t","symbol","currency","processSymbol","positionData","informations","key","formatFixed","formatOpenTime","formatShareTime","tokens","symbol1","symbol2","symbol3","input","date","formattedParts","year","part","month","day","hour","minute","value","dp","savePnlInfo","format","bgIndex","getPnlInfo","str","Button","jsxs","BottomButtons","onClickDownload","onClickCopy","DownloadIcon","CopyIcon","useEmblaCarousel","useCallback","PrevButton","children","restProps","NextButton","cn","CarouselBackgroundImage","backgroundImages","selectedSnap","setSelectedSnap","emblaRef","emblaApi","onPrevButtonClick","onNextButtonClick","onSelect","e","index","CloseCircleFillIcon","Input","Checkbox","size","Message","setMessage","check","setCheck","focus","setFocus","inputRef","ShareOption","type","curType","setShareOption","text","isSelected","updateSet","checked","PnlFormatView","setPnlFormat","clsName","RadioButton","SelIcon","UnselIcon","DesktopSharePnLContent","shareOptions","localPnlConfig","formats","pnlFormat","shareOption","resetOptions","setDomain","posterRef","currentDomain","curBgImg","posterData","onCopy","onDownload","item","ScrollArea","React","CarouselContext","useCarousel","context","Carousel","orientation","opts","setApi","plugins","carouselRef","api","canScrollPrev","setCanScrollPrev","canScrollNext","setCanScrollNext","selectedIndex","setSelectedIndex","scrollSnaps","setScrollSnaps","scrollPrev","scrollNext","handleKeyDown","event","CarouselContent","CarouselItem","CarouselPrevious","variant","CarouselNext","CarouselIdentifier","_","Dot","active","onClick","activeClassName","MobileSharePnLContent","selectIndex","setSelectIndex","posterRefs","aspectRatio","scale","setScale","carouselHeight","setCarouselHeight","divWidth","divHeight","onSharePnL","blob","dataURItoBlob","MyIdentifier","ChoicesFillIcon","dataURI","byteString","mimeString","ab","ia","Fragment","DesktopSharePnL","viewportHeight","setViewportHeight","handleResize","MobileSharePnL","SharePnLBottomSheetWidget","state","SharePnLDialogWidget","i18n","SharePnLDialogId","SharePnLBottomSheetId"],"mappings":"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","sourcesContent":["import { registerSimpleDialog, registerSimpleSheet } from \"@orderly.network/ui\";\nimport {\n SharePnLDialogWidget,\n SharePnLBottomSheetWidget,\n} from \"./sharePnL/sharePnL.widget\";\nimport { i18n } from \"@orderly.network/i18n\";\n\nconst SharePnLDialogId = \"sharePnLDialog\";\nconst SharePnLBottomSheetId = \"sharePnLBottomSheet\";\n\nregisterSimpleDialog(SharePnLDialogId, SharePnLDialogWidget, {\n classNames: {\n content: \"!oui-max-w-[624px] oui-p-0\",\n },\n});\n\nregisterSimpleSheet(SharePnLBottomSheetId, SharePnLBottomSheetWidget, {\n title: i18n.t(\"share.pnl.sharePnl\"),\n classNames: {\n body: \"oui-pb-4 oui-pt-0\",\n },\n});\n\nexport * from \"./sharePnL\";\nexport { SharePnLDialogId, SharePnLBottomSheetId };\nexport type {\n SharePnLConfig,\n SharePnLOptions,\n SharePnLParams,\n} from \"./types/types\";\n","import { useMemo } from \"react\";\nimport { useReferralInfo, useSymbolsInfo } from \"@orderly.network/hooks\";\nimport { ReferralType, SharePnLOptions, SharePnLParams } from \"../types/types\";\n\nexport const useSharePnLScript = (props: {\n pnl?: (SharePnLOptions & SharePnLParams) | undefined;\n hide?: () => void;\n}) => {\n const { pnl, hide } = props;\n const entity = pnl?.entity;\n const symbolInfo = useSymbolsInfo();\n const { getFirstRefCode } = useReferralInfo();\n const referralInfo = useMemo((): ReferralType | undefined => {\n const code = getFirstRefCode()?.code;\n const info = {\n code: pnl?.refCode ?? code,\n slogan: pnl?.refSlogan,\n link: pnl?.refLink,\n };\n return info;\n }, [getFirstRefCode, pnl]);\n\n // print warning if entity is null\n if (!entity) {\n console.warn(\"Entity is null, the share pnl will not be displayed\");\n }\n\n // convert base_dp and quote_dp useMemo\n const base_dp = useMemo(() => {\n if (!entity) return undefined;\n return symbolInfo[entity?.symbol](\"base_dp\");\n }, [entity, symbolInfo]);\n const quote_dp = useMemo(() => {\n if (!entity) return undefined;\n return symbolInfo[entity?.symbol](\"quote_dp\");\n }, [entity, symbolInfo]);\n\n return {\n entity,\n leverage: pnl?.leverage,\n baseDp: base_dp,\n quoteDp: quote_dp,\n referralInfo,\n shareOptions: pnl as SharePnLOptions | undefined,\n hide,\n };\n};\n\nexport type SharePnLState = ReturnType<typeof useSharePnLScript>;\n","import { FC, useEffect, useState } from \"react\";\nimport { SharePnLState } from \"./sharePnL.script\";\nimport { DesktopSharePnLContent } from \"./desktop/content\";\nimport { MobileSharePnLContent } from \"./mobile/content\";\n\nexport const DesktopSharePnL: FC<SharePnLState> = (props) => {\n const {\n leverage,\n entity,\n baseDp,\n quoteDp,\n referralInfo,\n shareOptions,\n hide,\n } = props;\n\n const [viewportHeight, setViewportHeight] = useState(\n window.innerHeight < 900 ? 660 : 807\n );\n\n useEffect(() => {\n const handleResize = () => {\n setViewportHeight(window.innerHeight < 900 ? 660 : 807);\n };\n\n window.addEventListener(\"resize\", handleResize);\n\n return () => {\n window.removeEventListener(\"resize\", handleResize);\n };\n }, []);\n\n if (shareOptions == null || entity == null) return <></>;\n return (\n <DesktopSharePnLContent\n entity={entity}\n leverage={leverage}\n hide={hide}\n baseDp={baseDp}\n quoteDp={quoteDp}\n referral={referralInfo}\n shareOptions={shareOptions}\n />\n );\n};\n\nexport const MobileSharePnL: FC<SharePnLState> = (props) => {\n const {\n leverage,\n entity,\n baseDp,\n quoteDp,\n referralInfo,\n shareOptions,\n hide,\n } = props;\n if (shareOptions == null || entity == null) return <></>;\n return (\n <MobileSharePnLContent\n entity={entity}\n leverage={leverage}\n hide={hide}\n baseDp={baseDp}\n quoteDp={quoteDp}\n referral={referralInfo}\n shareOptions={shareOptions}\n />\n );\n};\n","import { FC, useEffect, useMemo, useRef, useState } from \"react\";\nimport { useTranslation } from \"@orderly.network/i18n\";\nimport { Divider, Flex, toast, Text, Box } from \"@orderly.network/ui\";\nimport {\n PnLDisplayFormat,\n ReferralType,\n ShareEntity,\n ShareOptions,\n SharePnLOptions,\n} from \"../../types/types\";\nimport { Poster } from \"../poster\";\nimport { PosterRef } from \"../poster/poster\";\nimport { getPnlInfo, getPnLPosterData, savePnlInfo } from \"../utils/utils\";\nimport { BottomButtons } from \"./bottomBtns\";\nimport { CarouselBackgroundImage } from \"./carousel\";\nimport { Message } from \"./message\";\nimport { ShareOption } from \"./options\";\nimport { PnlFormatView } from \"./pnlFormat\";\n\nexport const DesktopSharePnLContent: FC<{\n entity: ShareEntity;\n leverage?: number | string;\n hide: any;\n baseDp?: number;\n quoteDp?: number;\n referral?: ReferralType;\n shareOptions: SharePnLOptions;\n}> = (props) => {\n const { shareOptions } = props;\n const { t } = useTranslation();\n\n const localPnlConfig = getPnlInfo();\n const hasRoiAndPnl = props.entity.roi != null && props.entity.pnl != null;\n const formats: PnLDisplayFormat[] = hasRoiAndPnl\n ? [\"roi_pnl\", \"roi\", \"pnl\"]\n : props.entity.roi != null\n ? [\"roi\"]\n : props.entity.pnl != null\n ? [\"pnl\"]\n : [];\n\n const [pnlFormat, setPnlFormat] = useState<PnLDisplayFormat>(\n formats.length == 1 ? formats[0] : localPnlConfig.pnlFormat,\n );\n console.log(\"pnl format\", props.entity);\n const [shareOption, setShareOption] = useState<Set<ShareOptions>>(\n new Set(localPnlConfig.options),\n );\n const [selectedSnap, setSelectedSnap] = useState(localPnlConfig.bgIndex);\n const [message, setMessage] = useState(localPnlConfig.message);\n const [check, setCheck] = useState(false);\n // const { shareOptions } = useTradingPageContext();\n const { backgroundImages, ...resetOptions } = shareOptions ?? {\n backgroundImages: [],\n };\n\n const [domain, setDomain] = useState(\"\");\n\n const posterRef = useRef<PosterRef | null>(null);\n\n useEffect(() => {\n const currentDomain = window.location.hostname;\n setDomain(currentDomain);\n }, []);\n\n const curBgImg = useMemo(() => {\n return shareOptions?.backgroundImages?.[selectedSnap];\n }, [shareOptions?.backgroundImages, selectedSnap]);\n\n const posterData = getPnLPosterData(\n props.entity,\n props.leverage!,\n check ? message : \"\",\n domain,\n pnlFormat,\n shareOption,\n props.baseDp,\n props.quoteDp,\n props.referral,\n );\n\n const onCopy = () => {\n posterRef.current\n ?.copy()\n .then(() => {\n props.hide?.();\n toast.success(t(\"share.pnl.image.copied\"));\n })\n .catch((e: any) => {\n toast.error(() => {\n return (\n <div>\n <div>{t(\"common.copy.failed\")}</div>\n <div className=\"oui-mt-2 oui-max-w-[396px] oui-text-2xs oui-text-base-contrast-54\">\n {t(\"share.pnl.copy.failed.description\")}\n </div>\n </div>\n );\n });\n });\n };\n const onDownload = () => {\n posterRef.current?.download(\"Poster.png\");\n props.hide?.();\n };\n\n // check if the entity has the option, like formats\n const options: ShareOptions[] = [\n ...(props.entity.openPrice ? ([\"openPrice\"] as ShareOptions[]) : []),\n ...(props.entity.closePrice ? ([\"closePrice\"] as ShareOptions[]) : []),\n ...(props.entity.markPrice ? ([\"markPrice\"] as ShareOptions[]) : []),\n ...(props.entity.openTime ? ([\"openTime\"] as ShareOptions[]) : []),\n ...(props.entity.closeTime ? ([\"closeTime\"] as ShareOptions[]) : []),\n ...(props.leverage ? ([\"leverage\"] as ShareOptions[]) : []),\n ...(props.entity.quantity ? ([\"quantity\"] as ShareOptions[]) : []),\n ];\n\n savePnlInfo(pnlFormat, shareOption, selectedSnap, message);\n\n return (\n <div className=\"oui-relative oui-flex oui-size-full oui-flex-col\">\n <div className=\"oui-h-full oui-flex-1 oui-overflow-y-auto\">\n <Box mt={9} height={422}>\n <Flex itemAlign={\"center\"} justify={\"center\"}>\n <Poster\n // className=\"oui-mx-11\"\n width={552}\n height={310}\n data={{\n backgroundImg: curBgImg,\n ...resetOptions,\n data: posterData,\n }}\n ratio={3}\n ref={posterRef}\n />\n </Flex>\n <CarouselBackgroundImage\n backgroundImages={shareOptions?.backgroundImages ?? []}\n selectedSnap={selectedSnap}\n setSelectedSnap={setSelectedSnap}\n />\n </Box>\n\n <Flex\n direction={\"column\"}\n px={10}\n mt={6}\n justify={\"start\"}\n itemAlign={\"start\"}\n width={\"100%\"}\n >\n <Text size=\"sm\" intensity={80}>\n {t(\"share.pnl.displayFormat\")}\n </Text>\n <Flex pt={3} gap={3} itemAlign={\"center\"}>\n {formats.map((e, index) => (\n <PnlFormatView\n key={index}\n setPnlFormat={setPnlFormat}\n type={e}\n curType={pnlFormat}\n />\n ))}\n </Flex>\n\n <Divider className=\"oui-w-full oui-border-white/10 oui-pt-6\" />\n\n <Flex\n mt={6}\n direction={\"column\"}\n justify={\"start\"}\n itemAlign={\"start\"}\n >\n <Text size=\"sm\" intensity={80}>\n {t(\"share.pnl.optionalInfo\")}\n </Text>\n <Flex mt={3} gap={4} className=\"oui-flex-wrap\">\n {options.map((item, index) => (\n <ShareOption\n key={index}\n setShareOption={setShareOption}\n type={item}\n curType={shareOption}\n />\n ))}\n </Flex>\n </Flex>\n\n <Message\n message={message}\n setMessage={setMessage}\n check={check}\n setCheck={setCheck}\n />\n </Flex>\n </div>\n\n <BottomButtons onClickCopy={onCopy} onClickDownload={onDownload} />\n\n {/* <button\n onClick={() => {\n props.hide();\n }}\n className=\"oui-absolute oui-top-0 oui-right-0 oui-w-[40px] oui-h-[40px] oui-flex oui-justify-center oui-items-center\"\n >\n <CloseIcon size={12} className=\"oui-fill-base-contrast-54\" />\n </button> */}\n </div>\n );\n};\n","import { forwardRef, useImperativeHandle } from \"react\";\nimport { type DrawOptions, usePoster } from \"@orderly.network/hooks\";\n\nexport type PosterProps = {\n width: number;\n height: number;\n className?: string;\n ratio?: number;\n data: DrawOptions;\n style?: React.CSSProperties;\n};\n\nexport type PosterRef = {\n download: (filename: string, type?: string, encoderOptions?: number) => void;\n toDataURL: (type?: string, encoderOptions?: number) => string;\n toBlob: (type?: string, encoderOptions?: number) => Promise<Blob | null>;\n copy: () => Promise<void>;\n};\n\nexport const Poster = forwardRef<PosterRef, PosterProps>((props, parentRef) => {\n const { width, height, className, data, style } = props;\n\n const { ref, download, toDataURL, copy, toBlob } = usePoster(data, {\n ratio: props.ratio,\n });\n\n useImperativeHandle(parentRef, () => ({\n download,\n toDataURL,\n toBlob,\n copy,\n }));\n\n return (\n <canvas\n ref={ref}\n width={width}\n height={height}\n className={className}\n style={style}\n />\n );\n});\n","/*\n{\n message: \"I am the Orderly KING.\",\n domain: \"ordely.network\",\n updateTime: \"2022-JAN-01 23:23\",\n position: {\n symbol: \"BTC-PERP\",\n currency: \"USDC\",\n side: \"LONG\",\n leverage: 20,\n pnl: 10432.23,\n ROI: 20.25,\n informations: [\n { title: \"Open Price\", value: 0.12313 },\n { title: \"Opened at\", value: \"Jan-01 23:23\" },\n { title: \"Mark price\", value: \"0.12341\" },\n { title: \"Quantity\", value: \"0.123\" },\n ],\n },\n referral: {\n code: \"WRECKED\",\n link: \"https://orderly.network\",\n slogan: \"Try Orderly now with:\",\n }\n }\n*/\n\nimport { Decimal } from \"@orderly.network/utils\";\nimport { PnLDisplayFormat, ShareEntity, ShareOptions } from \"../../types/types\";\n// import { PnLDisplayFormat, ShareOptions } from \"./type\";\nimport { useTranslation } from \"@orderly.network/i18n\";\n\nexport type ReferralType = {\n code?: string;\n link?: string;\n slogan?: string;\n};\n\nexport function getPnLPosterData(\n position: ShareEntity,\n leverage: number | string,\n message: string,\n domain: string,\n pnlType: PnLDisplayFormat,\n options: Set<ShareOptions>,\n baseDp?: number,\n quoteDp?: number,\n referral?: ReferralType\n) {\n const { t } = useTranslation();\n const { symbol, currency } = processSymbol(position.symbol);\n const positionData: any = {\n symbol,\n currency,\n side: position.side,\n };\n\n switch (pnlType) {\n case \"pnl\": {\n if (position.pnl != null) {\n positionData[\"pnl\"] = new Decimal(position.pnl).toFixed(\n 2,\n Decimal.ROUND_DOWN\n );\n }\n break;\n }\n case \"roi\": {\n if (position.roi != null) {\n positionData[\"ROI\"] = new Decimal(position.roi).toFixed(\n 2,\n Decimal.ROUND_DOWN\n );\n }\n break;\n }\n case \"roi_pnl\": {\n if (position.pnl != null) {\n positionData[\"pnl\"] = new Decimal(position.pnl).toFixed(\n 2,\n Decimal.ROUND_DOWN\n );\n }\n if (position.roi != null) {\n positionData[\"ROI\"] = new Decimal(position.roi).toFixed(\n 2,\n Decimal.ROUND_DOWN\n );\n }\n break;\n }\n }\n\n const informations: { title: string; value: any }[] = [];\n\n if (options.has(\"leverage\")) {\n positionData[\"leverage\"] = leverage;\n }\n const array: ShareOptions[] = [\n \"openPrice\",\n \"closePrice\",\n \"openTime\",\n \"closeTime\",\n \"markPrice\",\n \"quantity\",\n ];\n array.forEach((key) => {\n if (options.has(key)) {\n switch (key) {\n case \"leverage\": {\n break;\n }\n case \"openPrice\": {\n if (position.openPrice != null) {\n informations.push({\n title: t(\"share.pnl.optionalInfo.openPrice\"),\n value: formatFixed(position.openPrice, quoteDp || 2),\n });\n }\n break;\n }\n case \"closePrice\": {\n if (position.closePrice != null) {\n informations.push({\n title: t(\"share.pnl.optionalInfo.closePrice\"),\n value: formatFixed(position.closePrice, quoteDp || 2),\n });\n }\n break;\n }\n case \"openTime\": {\n if (position.openTime != null) {\n informations.push({\n title: t(\"share.pnl.optionalInfo.openTime\"),\n value: formatOpenTime(position.openTime),\n });\n }\n break;\n }\n case \"closeTime\": {\n if (position.closeTime != null) {\n informations.push({\n title: t(\"share.pnl.optionalInfo.closeTime\"),\n value: formatOpenTime(position.closeTime),\n });\n }\n break;\n }\n case \"markPrice\": {\n if (position.markPrice != null) {\n informations.push({\n title: t(\"common.markPrice\"),\n value: formatFixed(position.markPrice, quoteDp || 2),\n });\n }\n break;\n }\n case \"quantity\": {\n if (position.quantity != null) {\n informations.push({\n title: t(\"common.quantity\"),\n value: formatFixed(position.quantity, baseDp || 2),\n });\n }\n }\n default:\n break;\n }\n }\n });\n\n positionData[\"informations\"] = informations;\n\n const data: any = {\n position: positionData,\n updateTime: formatShareTime(new Date()),\n domain,\n };\n if (message.length > 0) {\n data[\"message\"] = message;\n }\n\n if (typeof referral !== \"undefined\" && referral[\"code\"] !== undefined) {\n data[\"referral\"] = referral;\n }\n\n return data;\n}\n\ninterface SymbolResult {\n symbol: string;\n currency: string;\n}\n\nfunction processSymbol(symbol: string): SymbolResult {\n const tokens = symbol.split(\"_\");\n if (tokens.length !== 3) {\n return {\n symbol: symbol,\n currency: \"USDC\",\n };\n }\n\n const [symbol1, symbol2, symbol3] = tokens;\n const formattedString = `${symbol2}-${symbol1}`;\n\n return {\n symbol: formattedString,\n currency: symbol3 || \"USDC\",\n };\n}\n\nfunction formatShareTime(input: number): string;\nfunction formatShareTime(input: Date): string;\nfunction formatShareTime(input: number | Date): string {\n const date = input instanceof Date ? input : new Date(input);\n const options: Intl.DateTimeFormatOptions = {\n year: \"numeric\",\n month: \"2-digit\",\n day: \"2-digit\",\n hour: \"2-digit\",\n minute: \"2-digit\",\n hourCycle: \"h23\",\n };\n\n const formatter = new Intl.DateTimeFormat(\"en-US\", options);\n const formattedParts = formatter.formatToParts(date);\n\n // console.log(\"formattedParts\", formattedParts);\n\n const year = formattedParts.find((part) =>\n part.type === \"year\" ? part.value : \"\"\n )?.value;\n const month = formattedParts.find((part) =>\n part.type === \"month\" ? part.value : \"\"\n )?.value;\n const day = formattedParts.find((part) =>\n part.type === \"day\" ? part.value : \"\"\n )?.value;\n const hour = formattedParts.find((part) =>\n part.type === \"hour\" ? part.value : \"\"\n )?.value;\n const minute = formattedParts.find((part) =>\n part.type === \"minute\" ? part.value : \"\"\n )?.value;\n\n return `${year}-${month}-${day} ${hour}:${minute}`;\n}\n\nfunction formatOpenTime(input: number | Date): string {\n const date = input instanceof Date ? input : new Date(input);\n const options: Intl.DateTimeFormatOptions = {\n year: \"numeric\",\n month: \"short\",\n day: \"2-digit\",\n hour: \"2-digit\",\n minute: \"2-digit\",\n hourCycle: \"h23\",\n };\n\n const formatter = new Intl.DateTimeFormat(\"en-US\", options);\n const formattedParts = formatter.formatToParts(date);\n\n // console.log(\"formattedParts\", formattedParts);\n\n const month = formattedParts.find((part) =>\n part.type === \"month\" ? part.value : \"\"\n )?.value;\n const day = formattedParts.find((part) =>\n part.type === \"day\" ? part.value : \"\"\n )?.value;\n const hour = formattedParts.find((part) =>\n part.type === \"hour\" ? part.value : \"\"\n )?.value;\n const minute = formattedParts.find((part) =>\n part.type === \"minute\" ? part.value : \"\"\n )?.value;\n\n return `${month}-${day} ${hour}:${minute}`;\n}\n\nfunction formatFixed(value: number, dp: number) {\n return new Decimal(value).toFixed(dp, Decimal.ROUND_DOWN);\n}\n\nexport function savePnlInfo(\n format: PnLDisplayFormat,\n options: Set<ShareOptions>,\n bgIndex: number,\n message: string\n) {\n localStorage.setItem(\n \"pnl_config_key\",\n JSON.stringify({\n bgIndex: bgIndex,\n pnlFormat: format,\n options: Array.from(options),\n message: message,\n })\n );\n}\n\nexport function getPnlInfo(): {\n bgIndex: number;\n pnlFormat: PnLDisplayFormat;\n options: ShareOptions[];\n message: \"\";\n} {\n const str = localStorage.getItem(\"pnl_config_key\");\n\n if (str && str.length > 0) {\n try {\n const json = JSON.parse(str);\n\n return json;\n } catch (e) {}\n }\n return {\n bgIndex: 0,\n pnlFormat: \"roi_pnl\",\n options: [\n \"openPrice\",\n \"closePrice\",\n \"openTime\",\n \"closeTime\",\n \"markPrice\",\n \"quantity\",\n \"leverage\",\n ],\n message: \"\",\n };\n}\n","import { FC } from \"react\";\nimport { Button, Flex } from \"@orderly.network/ui\";\nimport { useTranslation } from \"