@relayprotocol/relay-kit-ui 11.0.5 → 11.0.6
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/_cjs/src/components/common/TransactionModal/TransactionModalRenderer.js +7 -8
- package/_cjs/src/components/common/TransactionModal/TransactionModalRenderer.js.map +1 -1
- package/_cjs/src/version.js +1 -1
- package/_cjs/src/version.js.map +1 -1
- package/_cjs/tsconfig.build.tsbuildinfo +1 -1
- package/_esm/src/components/common/TransactionModal/TransactionModalRenderer.js +12 -9
- package/_esm/src/components/common/TransactionModal/TransactionModalRenderer.js.map +1 -1
- package/_esm/src/version.js +1 -1
- package/_esm/src/version.js.map +1 -1
- package/_esm/tsconfig.build.tsbuildinfo +1 -1
- package/_types/src/components/common/TransactionModal/TransactionModalRenderer.d.ts.map +1 -1
- package/_types/src/version.d.ts +1 -1
- package/_types/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +3 -3
|
@@ -30,7 +30,9 @@ const TransactionModalRenderer = ({ open, slippageTolerance, wallet, steps, quot
|
|
|
30
30
|
}, [open]);
|
|
31
31
|
(0, react_1.useEffect)(() => {
|
|
32
32
|
if (swapError) {
|
|
33
|
-
|
|
33
|
+
if (progressStep !== TransactionProgressStep.Success) {
|
|
34
|
+
setProgressStep(TransactionProgressStep.Error);
|
|
35
|
+
}
|
|
34
36
|
return;
|
|
35
37
|
}
|
|
36
38
|
if (!steps) {
|
|
@@ -95,16 +97,13 @@ const TransactionModalRenderer = ({ open, slippageTolerance, wallet, steps, quot
|
|
|
95
97
|
}
|
|
96
98
|
}, [steps, swapError]);
|
|
97
99
|
const requestId = (0, react_1.useMemo)(() => (0, relayTransaction_js_1.extractDepositRequestId)(steps), [steps]);
|
|
98
|
-
const
|
|
100
|
+
const requestQuery = (0, react_1.useMemo)(() => (progressStep === TransactionProgressStep.Success ||
|
|
99
101
|
progressStep === TransactionProgressStep.Error) &&
|
|
100
102
|
requestId
|
|
101
103
|
? { id: requestId }
|
|
102
|
-
: undefined,
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
(requestId || allTxHashes[0])
|
|
106
|
-
? true
|
|
107
|
-
: false,
|
|
104
|
+
: undefined, [progressStep, requestId]);
|
|
105
|
+
const { data: transactions, isInitialLoading: isLoadingTransaction } = (0, relay_kit_hooks_1.useRequests)(requestQuery, relayClient?.baseApiUrl, {
|
|
106
|
+
enabled: Boolean(requestQuery),
|
|
108
107
|
refetchInterval(query) {
|
|
109
108
|
if (query.state.dataUpdateCount > 10) {
|
|
110
109
|
return 0;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TransactionModalRenderer.js","sourceRoot":"","sources":["../../../../../src/components/common/TransactionModal/TransactionModalRenderer.tsx"],"names":[],"mappings":";;;;AAAA,iCAQc;AAQd,4EAG2C;AAE3C,oEAA4D;AAC5D,sDAAwD;AACxD,sDAGgC;AAChC,IAAY,uBAKX;AALD,WAAY,uBAAuB;IACjC,qFAAY,CAAA;IACZ,+EAAS,CAAA;IACT,2EAAO,CAAA;IACP,uEAAK,CAAA;AACP,CAAC,EALW,uBAAuB,uCAAvB,uBAAuB,QAKlC;AAoDM,MAAM,wBAAwB,GAAc,CAAC,EAClD,IAAI,EACJ,iBAAiB,EACjB,MAAM,EACN,KAAK,EACL,KAAK,EACL,SAAS,EACT,YAAY,EACZ,QAAQ,EACR,SAAS,EACT,YAAY,EACb,EAAE,EAAE;IACH,MAAM,WAAW,GAAG,IAAA,yBAAc,GAAE,CAAA;IACpC,MAAM,OAAO,GAAG,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,IAAI,CAAC,CAAA;IAElE,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,IAAA,gBAAQ,EAC9C,uBAAuB,CAAC,YAAY,CACrC,CAAA;IACD,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,IAAA,gBAAQ,GAE3C,CAAA;IACH,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,IAAA,gBAAQ,GAEnD,CAAA;IACH,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,IAAA,gBAAQ,EAAW,EAAE,CAAC,CAAA;IAC5D,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,IAAA,gBAAQ,EAAC,KAAK,CAAC,CAAA;IAC7D,MAAM,CAAC,oBAAoB,EAAE,uBAAuB,CAAC,GAAG,IAAA,gBAAQ,EAAC,KAAK,CAAC,CAAA;IAEvE,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,uBAAuB,CAAC,KAAK,CAAC,CAAA;QAChC,CAAC;IACH,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAA;IAEV,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,IAAI,SAAS,EAAE,CAAC;YACd,eAAe,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAA;YAC9C,OAAM;QACR,CAAC;QACD,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAM;QACR,CAAC;QAED,MAAM,eAAe,GAAG,KAAK,CAAC,MAAM,CAClC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAC9C,CAAA;QAED,IAAI,SAAS,GAAG,eAAe,CAAC,MAAM,CAAA;QACtC,IAAI,QAAQ,GAAa,EAAE,CAAA;QAC3B,IAAI,WAAW,GAA8C,IAAI,CAAA;QACjE,IAAI,eAES,CAAA;QAEb,KAAK,MAAM,IAAI,IAAI,eAAe,EAAE,CAAC;YACnC,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,IAAI,EAAE,EAAE,CAAC;gBACpC,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC9C,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAA;gBAChD,CAAC;gBACD,IAAI,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC9D,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAA;gBACxD,CAAC;gBACD,IAAI,IAAI,CAAC,MAAM,KAAK,YAAY,EAAE,CAAC;oBACjC,WAAW,GAAG,IAAI,CAAA;oBAClB,eAAe,GAAG,IAAI,CAAA;oBAEtB,MAAK;gBACP,CAAC;YACH,CAAC;YACD,IAAI,WAAW,IAAI,eAAe;gBAAE,MAAK;QAC3C,CAAC;QAED,cAAc,CAAC,QAAQ,CAAC,CAAA;QAExB,IACE,CAAC,oBAAoB;YACrB,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,eAAe,EAAE,qBAAqB,IAAI,IAAI,CAAC;YACvE,YAAY,KAAK,uBAAuB,CAAC,YAAY,EACrD,CAAC;YACD,YAAY,EAAE,CAAC,KAAgB,CAAC,CAAA;YAChC,uBAAuB,CAAC,IAAI,CAAC,CAAA;QAC/B,CAAC;QAED,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,WAAW,GAAG,eAAe,CAAC,SAAS,GAAG,CAAC,CAAC,CAAA;QAC9C,CAAC;QAED,cAAc,CAAC,WAAW,CAAC,CAAA;QAC3B,kBAAkB,CAAC,eAAe,CAAC,CAAA;QAEnC,MAAM,oBAAoB,GACxB,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,OAAO,KAAK,OAAO,CAAA;QAE5D,MAAM,gBAAgB,GAAG,KAAK,CAAC,KAAK,CAClC,CAAC,IAAI,EAAE,EAAE,CACP,CAAC,IAAI,CAAC,KAAK;YACX,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC;YACtB,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE;gBACzB,IAAI,oBAAoB,IAAI,IAAI,CAAC,WAAW,KAAK,WAAW,EAAE,CAAC;oBAC7D,OAAO,IAAI,CAAA;gBACb,CAAC;gBACD,OAAO,IAAI,CAAC,MAAM,KAAK,UAAU,CAAA;YACnC,CAAC,CAAC,CACL,CAAA;QAED,MAAM,eAAe,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAC1C,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,KAAK,SAAS,CAAC,CAC3D,CAAA;QAED,MAAM,iBAAiB,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAC5C,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,KAAK,WAAW,CAAC,CAC7D,CAAA;QAGD,MAAM,kBAAkB,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAC7C,IAAI,CAAC,KAAK,EAAE,IAAI,CACd,CAAC,IAAI,EAAE,EAAE,CACP,IAAI,CAAC,qBAAqB,KAAK,IAAI;YACnC,IAAI,CAAC,aAAa,KAAK,YAAY,CACtC,CACF,CAAA;QAGD,IACE,CAAC,eAAe,IAAI,iBAAiB,CAAC;YACtC,YAAY,KAAK,uBAAuB,CAAC,YAAY;YACrD,CAAC,kBAAkB,EACnB,CAAC;YACD,eAAe,CAAC,uBAAuB,CAAC,SAAS,CAAC,CAAA;YAClD,YAAY,EAAE,CAAC,KAAgB,CAAC,CAAA;QAClC,CAAC;QAGD,IAAI,gBAAgB,IAAI,YAAY,KAAK,uBAAuB,CAAC,OAAO,EAAE,CAAC;YACzE,eAAe,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAA;YAChD,SAAS,EAAE,CAAC,KAAgB,EAAE,KAAK,CAAC,CAAA;QACtC,CAAC;IACH,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,CAAA;IAEtB,MAAM,SAAS,GAAG,IAAA,eAAO,EAAC,GAAG,EAAE,CAAC,IAAA,6CAAuB,EAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAA;IAGxE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,GAClE,IAAA,6BAAW,EACT,CAAC,YAAY,KAAK,uBAAuB,CAAC,OAAO;QAC/C,YAAY,KAAK,uBAAuB,CAAC,KAAK,CAAC;QAC/C,SAAS;QACT,CAAC,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE;QACnB,CAAC,CAAC,SAAS,EACb,WAAW,EAAE,UAAU,EACvB;QACE,OAAO,EACL,CAAC,YAAY,KAAK,uBAAuB,CAAC,OAAO;YAC/C,YAAY,KAAK,uBAAuB,CAAC,KAAK,CAAC;YACjD,CAAC,SAAS,IAAI,WAAW,CAAC,CAAC,CAAC,CAAC;YAC3B,CAAC,CAAC,IAAI;YACN,CAAC,CAAC,KAAK;QACX,eAAe,CAAC,KAAK;YACnB,IAAI,KAAK,CAAC,KAAK,CAAC,eAAe,GAAG,EAAE,EAAE,CAAC;gBACrC,OAAO,CAAC,CAAA;YACV,CAAC;YACD,MAAM,WAAW,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAA;YAC5D,IAAI,CAAC,WAAW,EAAE,CAAC;gBACjB,OAAO,IAAI,CAAA;YACb,CAAC;YAGD,MAAM,gBAAgB,GACpB,WAAW,CAAC,MAAM,KAAK,SAAS;gBAChC,WAAW,CAAC,MAAM,KAAK,SAAS;gBAChC,WAAW,CAAC,MAAM,KAAK,QAAQ,CAAA;YACjC,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBACtB,OAAO,IAAI,CAAA;YACb,CAAC;YAED,MAAM,QAAQ,GACZ,WAAW,CAAC,MAAM,KAAK,QAAQ;gBAC/B,WAAW,CAAC,IAAI,EAAE,kBAAkB,CAAA;YACtC,IACE,QAAQ;gBACR,CAAC,CAAC,WAAW,CAAC,IAAI,EAAE,MAAM,IAAI,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,EACnE,CAAC;gBACD,OAAO,IAAI,CAAA;YACb,CAAC;YACD,OAAO,CAAC,CAAA;QACV,CAAC;KACF,CACF,CAAA;IACH,MAAM,WAAW,GAAG,YAAY,CAAC,CAAC,CAAC,CAAA;IACnC,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,IAAA,uCAAiB,EAAC,WAAW,CAAC,CAAA;IAE5D,MAAM,cAAc,GAAG,iBAAiB,KAAK,SAAS,CAAA;IACtD,MAAM,YAAY,GAAG,IAAA,qCAA0B,EAAC,KAAK,EAAE,OAAO,CAAC,CAAA;IAC/D,MAAM,eAAe,GAAG,IAAA,yBAAc,EAAC,KAAgB,CAAC,CAAA;IAExD,OAAO,CACL,2DACG,QAAQ,CAAC;YACR,MAAM;YACN,YAAY;YACZ,eAAe;YACf,WAAW;YACX,cAAc;YACd,eAAe;YACf,kBAAkB;YAClB,KAAK;YACL,KAAK;YACL,eAAe;YACf,SAAS;YACT,YAAY;YACZ,WAAW;YACX,cAAc;YACd,WAAW;YACX,QAAQ;YACR,OAAO;YACP,SAAS;YACT,oBAAoB;YACpB,cAAc;YACd,YAAY;YACZ,cAAc,EAAE,eAAe;YAC/B,kBAAkB,EAAE,eAAe,EAAE,WAAW;SACjD,CAAC,GACD,CACJ,CAAA;AACH,CAAC,CAAA;AAhOY,QAAA,wBAAwB,4BAgOpC","sourcesContent":["import {\n type FC,\n useMemo,\n useState,\n useEffect,\n type ReactNode,\n type SetStateAction,\n type Dispatch\n} from 'react'\nimport { type Address } from 'viem'\nimport {\n type AdaptedWallet,\n type Execute,\n type ExecuteStep,\n type ExecuteStepItem\n} from '@relayprotocol/relay-sdk'\nimport {\n calculateFillTime,\n extractDepositRequestId\n} from '../../../utils/relayTransaction.js'\nimport type { Token } from '../../../types/index.js'\nimport { useRequests } from '@relayprotocol/relay-kit-hooks'\nimport { useRelayClient } from '../../../hooks/index.js'\nimport {\n calculatePriceTimeEstimate,\n isGasSponsored\n} from '../../../utils/quote.js'\nexport enum TransactionProgressStep {\n Confirmation,\n Submitted,\n Success,\n Error\n}\n\nexport type TxHashes = {\n txHash: string\n chainId: number\n isBatchTx?: boolean\n}[]\n\nexport type ChildrenProps = {\n wallet?: AdaptedWallet\n progressStep: TransactionProgressStep\n setProgressStep: Dispatch<SetStateAction<TransactionProgressStep>>\n currentStep?: ExecuteStep | null\n setCurrentStep: Dispatch<SetStateAction<ExecuteStep | undefined | null>>\n currentStepItem: ExecuteStepItem | null | undefined\n setCurrentStepItem: Dispatch<\n SetStateAction<ExecuteStepItem | null | undefined>\n >\n quote: Execute | null\n swapError: Error | null\n setSwapError: Dispatch<SetStateAction<Error | null>>\n steps: Execute['steps'] | null\n waitingForSteps: boolean\n allTxHashes: TxHashes\n setAllTxHashes: Dispatch<SetStateAction<TxHashes>>\n transaction: ReturnType<typeof useRequests>['data']['0']\n seconds: number\n fillTime: string\n requestId: string | null\n isLoadingTransaction: boolean\n isAutoSlippage: boolean\n timeEstimate?: { time: number; formattedTime: string }\n isGasSponsored: boolean\n currentCheckStatus?: ExecuteStepItem['checkStatus']\n}\n\ntype Props = {\n open: boolean\n address?: Address | string\n fromToken?: Token\n toToken?: Token\n slippageTolerance?: string\n wallet?: AdaptedWallet\n steps: Execute['steps'] | null\n quote: Execute | null\n swapError: Error | null\n setSwapError: Dispatch<SetStateAction<Error | null>>\n children: (props: ChildrenProps) => ReactNode\n onSuccess?: (quote: Execute, steps: Execute['steps']) => void\n onValidating?: (quote: Execute) => void\n}\n\nexport const TransactionModalRenderer: FC<Props> = ({\n open,\n slippageTolerance,\n wallet,\n steps,\n quote,\n swapError,\n setSwapError,\n children,\n onSuccess,\n onValidating\n}) => {\n const relayClient = useRelayClient()\n const chainId = quote?.details?.currencyIn?.currency?.chainId || 1\n\n const [progressStep, setProgressStep] = useState(\n TransactionProgressStep.Confirmation\n )\n const [currentStep, setCurrentStep] = useState<\n null | NonNullable<Execute['steps']>['0']\n >()\n const [currentStepItem, setCurrentStepItem] = useState<\n null | NonNullable<NonNullable<Execute['steps']>['0']['items']>['0']\n >()\n const [allTxHashes, setAllTxHashes] = useState<TxHashes>([])\n const [waitingForSteps, setWaitingForSteps] = useState(false)\n const [hasStartedValidation, setHasStartedValidation] = useState(false)\n\n useEffect(() => {\n if (!open) {\n setHasStartedValidation(false)\n }\n }, [open])\n\n useEffect(() => {\n if (swapError) {\n setProgressStep(TransactionProgressStep.Error)\n return\n }\n if (!steps) {\n return\n }\n\n const executableSteps = steps.filter(\n (step) => step.items && step.items.length > 0\n )\n\n let stepCount = executableSteps.length\n let txHashes: TxHashes = []\n let currentStep: NonNullable<Execute['steps']>['0'] | null = null\n let currentStepItem:\n | NonNullable<Execute['steps'][0]['items']>[0]\n | undefined\n\n for (const step of executableSteps) {\n for (const item of step.items || []) {\n if (item.txHashes && item.txHashes.length > 0) {\n txHashes = item.txHashes.concat([...txHashes])\n }\n if (item.internalTxHashes && item.internalTxHashes.length > 0) {\n txHashes = item.internalTxHashes.concat([...txHashes])\n }\n if (item.status === 'incomplete') {\n currentStep = step\n currentStepItem = item\n\n break // Exit the inner loop once the first incomplete item is found\n }\n }\n if (currentStep && currentStepItem) break // Exit the outer loop if the current step and item have been found\n }\n\n setAllTxHashes(txHashes)\n\n if (\n !hasStartedValidation &&\n (txHashes.length > 0 || currentStepItem?.isValidatingSignature == true) &&\n progressStep === TransactionProgressStep.Confirmation\n ) {\n onValidating?.(quote as Execute)\n setHasStartedValidation(true)\n }\n\n if (!currentStep) {\n currentStep = executableSteps[stepCount - 1]\n }\n\n setCurrentStep(currentStep)\n setCurrentStepItem(currentStepItem)\n\n const isBitcoinDestination =\n quote?.details?.currencyOut?.currency?.chainId === 8253038\n\n const allStepsComplete = steps.every(\n (step) =>\n !step.items ||\n step.items.length == 0 ||\n step.items?.every((item) => {\n if (isBitcoinDestination && item.checkStatus === 'submitted') {\n return true\n }\n return item.status === 'complete'\n })\n )\n\n const hasPendingItems = steps.some((step) =>\n step.items?.some((item) => item.checkStatus === 'pending')\n )\n\n const hasSubmittedItems = steps.some((step) =>\n step.items?.some((item) => item.checkStatus === 'submitted')\n )\n\n // Check if any step items are still validating\n const hasValidatingItems = steps.some((step) =>\n step.items?.some(\n (item) =>\n item.isValidatingSignature === true ||\n item.progressState === 'validating'\n )\n )\n\n // Transition to Submitted state when items are pending or submitted\n if (\n (hasPendingItems || hasSubmittedItems) &&\n progressStep === TransactionProgressStep.Confirmation &&\n !hasValidatingItems\n ) {\n setProgressStep(TransactionProgressStep.Submitted)\n onValidating?.(quote as Execute)\n }\n\n // Only show success if all steps are complete\n if (allStepsComplete && progressStep !== TransactionProgressStep.Success) {\n setProgressStep(TransactionProgressStep.Success)\n onSuccess?.(quote as Execute, steps)\n }\n }, [steps, swapError])\n\n const requestId = useMemo(() => extractDepositRequestId(steps), [steps])\n\n // Fetch Success Tx\n const { data: transactions, isInitialLoading: isLoadingTransaction } =\n useRequests(\n (progressStep === TransactionProgressStep.Success ||\n progressStep === TransactionProgressStep.Error) &&\n requestId\n ? { id: requestId }\n : undefined,\n relayClient?.baseApiUrl,\n {\n enabled:\n (progressStep === TransactionProgressStep.Success ||\n progressStep === TransactionProgressStep.Error) &&\n (requestId || allTxHashes[0])\n ? true\n : false,\n refetchInterval(query) {\n if (query.state.dataUpdateCount > 10) {\n return 0\n }\n const transaction = query.state.data?.pages[0].requests?.[0]\n if (!transaction) {\n return 2500\n }\n // Keep polling until the request reaches a terminal status so the\n // success view can replace quoted values with the final actual ones\n const isTerminalStatus =\n transaction.status === 'success' ||\n transaction.status === 'failure' ||\n transaction.status === 'refund'\n if (!isTerminalStatus) {\n return 2500\n }\n // If this is a refund but outTxs is not populated yet, keep polling\n const isRefund =\n transaction.status === 'refund' ||\n transaction.data?.refundCurrencyData\n if (\n isRefund &&\n (!transaction.data?.outTxs || transaction.data.outTxs.length === 0)\n ) {\n return 2500\n }\n return 0\n }\n }\n )\n const transaction = transactions[0]\n const { fillTime, seconds } = calculateFillTime(transaction)\n\n const isAutoSlippage = slippageTolerance === undefined\n const timeEstimate = calculatePriceTimeEstimate(quote?.details)\n const _isGasSponsored = isGasSponsored(quote as Execute)\n\n return (\n <>\n {children({\n wallet,\n progressStep,\n setProgressStep,\n currentStep,\n setCurrentStep,\n currentStepItem,\n setCurrentStepItem,\n quote,\n steps,\n waitingForSteps,\n swapError,\n setSwapError,\n allTxHashes,\n setAllTxHashes,\n transaction,\n fillTime,\n seconds,\n requestId,\n isLoadingTransaction,\n isAutoSlippage,\n timeEstimate,\n isGasSponsored: _isGasSponsored,\n currentCheckStatus: currentStepItem?.checkStatus\n })}\n </>\n )\n}\n"]}
|
|
1
|
+
{"version":3,"file":"TransactionModalRenderer.js","sourceRoot":"","sources":["../../../../../src/components/common/TransactionModal/TransactionModalRenderer.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n type FC,\n useMemo,\n useState,\n useEffect,\n type ReactNode,\n type SetStateAction,\n type Dispatch\n} from 'react'\nimport { type Address } from 'viem'\nimport {\n type AdaptedWallet,\n type Execute,\n type ExecuteStep,\n type ExecuteStepItem\n} from '@relayprotocol/relay-sdk'\nimport {\n calculateFillTime,\n extractDepositRequestId\n} from '../../../utils/relayTransaction.js'\nimport type { Token } from '../../../types/index.js'\nimport { useRequests } from '@relayprotocol/relay-kit-hooks'\nimport { useRelayClient } from '../../../hooks/index.js'\nimport {\n calculatePriceTimeEstimate,\n isGasSponsored\n} from '../../../utils/quote.js'\nexport enum TransactionProgressStep {\n Confirmation,\n Submitted,\n Success,\n Error\n}\n\nexport type TxHashes = {\n txHash: string\n chainId: number\n isBatchTx?: boolean\n}[]\n\nexport type ChildrenProps = {\n wallet?: AdaptedWallet\n progressStep: TransactionProgressStep\n setProgressStep: Dispatch<SetStateAction<TransactionProgressStep>>\n currentStep?: ExecuteStep | null\n setCurrentStep: Dispatch<SetStateAction<ExecuteStep | undefined | null>>\n currentStepItem: ExecuteStepItem | null | undefined\n setCurrentStepItem: Dispatch<\n SetStateAction<ExecuteStepItem | null | undefined>\n >\n quote: Execute | null\n swapError: Error | null\n setSwapError: Dispatch<SetStateAction<Error | null>>\n steps: Execute['steps'] | null\n waitingForSteps: boolean\n allTxHashes: TxHashes\n setAllTxHashes: Dispatch<SetStateAction<TxHashes>>\n transaction: ReturnType<typeof useRequests>['data']['0']\n seconds: number\n fillTime: string\n requestId: string | null\n isLoadingTransaction: boolean\n isAutoSlippage: boolean\n timeEstimate?: { time: number; formattedTime: string }\n isGasSponsored: boolean\n currentCheckStatus?: ExecuteStepItem['checkStatus']\n}\n\ntype Props = {\n open: boolean\n address?: Address | string\n fromToken?: Token\n toToken?: Token\n slippageTolerance?: string\n wallet?: AdaptedWallet\n steps: Execute['steps'] | null\n quote: Execute | null\n swapError: Error | null\n setSwapError: Dispatch<SetStateAction<Error | null>>\n children: (props: ChildrenProps) => ReactNode\n onSuccess?: (quote: Execute, steps: Execute['steps']) => void\n onValidating?: (quote: Execute) => void\n}\n\nexport const TransactionModalRenderer: FC<Props> = ({\n open,\n slippageTolerance,\n wallet,\n steps,\n quote,\n swapError,\n setSwapError,\n children,\n onSuccess,\n onValidating\n}) => {\n const relayClient = useRelayClient()\n const chainId = quote?.details?.currencyIn?.currency?.chainId || 1\n\n const [progressStep, setProgressStep] = useState(\n TransactionProgressStep.Confirmation\n )\n const [currentStep, setCurrentStep] = useState<\n null | NonNullable<Execute['steps']>['0']\n >()\n const [currentStepItem, setCurrentStepItem] = useState<\n null | NonNullable<NonNullable<Execute['steps']>['0']['items']>['0']\n >()\n const [allTxHashes, setAllTxHashes] = useState<TxHashes>([])\n const [waitingForSteps, setWaitingForSteps] = useState(false)\n const [hasStartedValidation, setHasStartedValidation] = useState(false)\n\n useEffect(() => {\n if (!open) {\n setHasStartedValidation(false)\n }\n }, [open])\n\n useEffect(() => {\n if (swapError) {\n // Once the swap has been confirmed successful, a late error (e.g. an RPC\n // failure while fetching the receipt) must not flip the modal to an error state\n if (progressStep !== TransactionProgressStep.Success) {\n setProgressStep(TransactionProgressStep.Error)\n }\n return\n }\n if (!steps) {\n return\n }\n\n const executableSteps = steps.filter(\n (step) => step.items && step.items.length > 0\n )\n\n let stepCount = executableSteps.length\n let txHashes: TxHashes = []\n let currentStep: NonNullable<Execute['steps']>['0'] | null = null\n let currentStepItem:\n | NonNullable<Execute['steps'][0]['items']>[0]\n | undefined\n\n for (const step of executableSteps) {\n for (const item of step.items || []) {\n if (item.txHashes && item.txHashes.length > 0) {\n txHashes = item.txHashes.concat([...txHashes])\n }\n if (item.internalTxHashes && item.internalTxHashes.length > 0) {\n txHashes = item.internalTxHashes.concat([...txHashes])\n }\n if (item.status === 'incomplete') {\n currentStep = step\n currentStepItem = item\n\n break // Exit the inner loop once the first incomplete item is found\n }\n }\n if (currentStep && currentStepItem) break // Exit the outer loop if the current step and item have been found\n }\n\n setAllTxHashes(txHashes)\n\n if (\n !hasStartedValidation &&\n (txHashes.length > 0 || currentStepItem?.isValidatingSignature == true) &&\n progressStep === TransactionProgressStep.Confirmation\n ) {\n onValidating?.(quote as Execute)\n setHasStartedValidation(true)\n }\n\n if (!currentStep) {\n currentStep = executableSteps[stepCount - 1]\n }\n\n setCurrentStep(currentStep)\n setCurrentStepItem(currentStepItem)\n\n const isBitcoinDestination =\n quote?.details?.currencyOut?.currency?.chainId === 8253038\n\n const allStepsComplete = steps.every(\n (step) =>\n !step.items ||\n step.items.length == 0 ||\n step.items?.every((item) => {\n if (isBitcoinDestination && item.checkStatus === 'submitted') {\n return true\n }\n return item.status === 'complete'\n })\n )\n\n const hasPendingItems = steps.some((step) =>\n step.items?.some((item) => item.checkStatus === 'pending')\n )\n\n const hasSubmittedItems = steps.some((step) =>\n step.items?.some((item) => item.checkStatus === 'submitted')\n )\n\n // Check if any step items are still validating\n const hasValidatingItems = steps.some((step) =>\n step.items?.some(\n (item) =>\n item.isValidatingSignature === true ||\n item.progressState === 'validating'\n )\n )\n\n // Transition to Submitted state when items are pending or submitted\n if (\n (hasPendingItems || hasSubmittedItems) &&\n progressStep === TransactionProgressStep.Confirmation &&\n !hasValidatingItems\n ) {\n setProgressStep(TransactionProgressStep.Submitted)\n onValidating?.(quote as Execute)\n }\n\n // Only show success if all steps are complete\n if (allStepsComplete && progressStep !== TransactionProgressStep.Success) {\n setProgressStep(TransactionProgressStep.Success)\n onSuccess?.(quote as Execute, steps)\n }\n }, [steps, swapError])\n\n const requestId = useMemo(() => extractDepositRequestId(steps), [steps])\n\n // Enabling this query without an id fetches an unfiltered request list, so\n // `enabled` must track the filter rather than test conditions of its own.\n const requestQuery = useMemo(\n () =>\n (progressStep === TransactionProgressStep.Success ||\n progressStep === TransactionProgressStep.Error) &&\n requestId\n ? { id: requestId }\n : undefined,\n [progressStep, requestId]\n )\n\n // Fetch Success Tx\n const { data: transactions, isInitialLoading: isLoadingTransaction } =\n useRequests(requestQuery, relayClient?.baseApiUrl, {\n enabled: Boolean(requestQuery),\n refetchInterval(query) {\n if (query.state.dataUpdateCount > 10) {\n return 0\n }\n const transaction = query.state.data?.pages[0].requests?.[0]\n if (!transaction) {\n return 2500\n }\n // Keep polling until the request reaches a terminal status so the\n // success view can replace quoted values with the final actual ones\n const isTerminalStatus =\n transaction.status === 'success' ||\n transaction.status === 'failure' ||\n transaction.status === 'refund'\n if (!isTerminalStatus) {\n return 2500\n }\n // If this is a refund but outTxs is not populated yet, keep polling\n const isRefund =\n transaction.status === 'refund' ||\n transaction.data?.refundCurrencyData\n if (\n isRefund &&\n (!transaction.data?.outTxs || transaction.data.outTxs.length === 0)\n ) {\n return 2500\n }\n return 0\n }\n })\n const transaction = transactions[0]\n const { fillTime, seconds } = calculateFillTime(transaction)\n\n const isAutoSlippage = slippageTolerance === undefined\n const timeEstimate = calculatePriceTimeEstimate(quote?.details)\n const _isGasSponsored = isGasSponsored(quote as Execute)\n\n return (\n <>\n {children({\n wallet,\n progressStep,\n setProgressStep,\n currentStep,\n setCurrentStep,\n currentStepItem,\n setCurrentStepItem,\n quote,\n steps,\n waitingForSteps,\n swapError,\n setSwapError,\n allTxHashes,\n setAllTxHashes,\n transaction,\n fillTime,\n seconds,\n requestId,\n isLoadingTransaction,\n isAutoSlippage,\n timeEstimate,\n isGasSponsored: _isGasSponsored,\n currentCheckStatus: currentStepItem?.checkStatus\n })}\n </>\n )\n}\n"]}
|
package/_cjs/src/version.js
CHANGED
package/_cjs/src/version.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":";;;AAAa,QAAA,UAAU,GAAG,QAAQ,CAAC","sourcesContent":["export const UI_VERSION = '11.0.
|
|
1
|
+
{"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":";;;AAAa,QAAA,UAAU,GAAG,QAAQ,CAAC","sourcesContent":["export const UI_VERSION = '11.0.6';\n"]}
|