@velora-dex/widget 0.3.11-dev.6 → 0.3.11

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.
Files changed (135) hide show
  1. package/dist/components/web3/ConnectExternalProvider/AutoconnectExternal.d.ts.map +1 -1
  2. package/dist/components/web3/ConnectExternalProvider/AutoconnectExternal.js +65 -84
  3. package/dist/components/web3/ConnectExternalProvider/AutoconnectExternal.js.map +1 -1
  4. package/dist/components/web3/ConnectWallets/walletIcons.d.ts +1 -4
  5. package/dist/components/web3/ConnectWallets/walletIcons.d.ts.map +1 -1
  6. package/dist/components/web3/ConnectWallets/walletIcons.js +7 -18
  7. package/dist/components/web3/ConnectWallets/walletIcons.js.map +1 -1
  8. package/dist/components/widget/ReceiverAddress/state/subscriptions.d.ts.map +1 -1
  9. package/dist/components/widget/ReceiverAddress/state/subscriptions.js +5 -11
  10. package/dist/components/widget/ReceiverAddress/state/subscriptions.js.map +1 -1
  11. package/dist/components/widget/TransactionDetails/LimitOrderDetails/Controls.d.ts +2 -2
  12. package/dist/components/widget/TransactionDetails/LimitOrderDetails/Controls.d.ts.map +1 -1
  13. package/dist/components/widget/TransactionDetails/LimitOrderDetails/Controls.js +23 -22
  14. package/dist/components/widget/TransactionDetails/LimitOrderDetails/Controls.js.map +1 -1
  15. package/dist/components/widget/TransactionDetails/LimitOrderDetails/TransactionDetails.js +1 -1
  16. package/dist/components/widget/TransactionDetails/LimitOrderDetails/TransactionDetails.js.map +1 -1
  17. package/dist/configurator/Configurator.d.ts.map +1 -1
  18. package/dist/core/state/configAtom.d.ts.map +1 -1
  19. package/dist/core/state/configAtom.js +1 -5
  20. package/dist/core/state/configAtom.js.map +1 -1
  21. package/dist/core/state/externalProviderAtom.d.ts +0 -9
  22. package/dist/core/state/externalProviderAtom.d.ts.map +1 -1
  23. package/dist/core/state/externalProviderAtom.js +1 -28
  24. package/dist/core/state/externalProviderAtom.js.map +1 -1
  25. package/dist/events/getters/swap.d.ts.map +1 -1
  26. package/dist/events/getters/swap.js +1 -2
  27. package/dist/events/getters/swap.js.map +1 -1
  28. package/dist/events/hooks/useOnWalletConnect.d.ts.map +1 -1
  29. package/dist/events/hooks/useOnWalletConnect.js +1 -17
  30. package/dist/events/hooks/useOnWalletConnect.js.map +1 -1
  31. package/dist/events/types/connectWallet.d.ts +3 -4
  32. package/dist/events/types/connectWallet.d.ts.map +1 -1
  33. package/dist/hooks/batch/useAwaitCalls.d.ts.map +1 -1
  34. package/dist/hooks/batch/useAwaitCalls.js.map +1 -1
  35. package/dist/hooks/connectors/useIsConnectedSafe.d.ts +0 -1
  36. package/dist/hooks/connectors/useIsConnectedSafe.d.ts.map +1 -1
  37. package/dist/hooks/connectors/useIsConnectedSafe.js +2 -9
  38. package/dist/hooks/connectors/useIsConnectedSafe.js.map +1 -1
  39. package/dist/hooks/connectors/useIsGnosisSafeConnector.d.ts +1 -4
  40. package/dist/hooks/connectors/useIsGnosisSafeConnector.d.ts.map +1 -1
  41. package/dist/hooks/connectors/useIsGnosisSafeConnector.js +4 -3
  42. package/dist/hooks/connectors/useIsGnosisSafeConnector.js.map +1 -1
  43. package/dist/hooks/connectors/useIsSafeThroughWalletConnect.d.ts +1 -1
  44. package/dist/hooks/connectors/useIsSafeThroughWalletConnect.d.ts.map +1 -1
  45. package/dist/hooks/connectors/useIsSafeThroughWalletConnect.js +2 -16
  46. package/dist/hooks/connectors/useIsSafeThroughWalletConnect.js.map +1 -1
  47. package/dist/hooks/otc/mutations/useFillOrder.js +2 -3
  48. package/dist/hooks/otc/mutations/useFillOrder.js.map +1 -1
  49. package/dist/hooks/otc/tradeFlow/useFillOtcOrderFlow.js +0 -1
  50. package/dist/hooks/otc/tradeFlow/useFillOtcOrderFlow.js.map +1 -1
  51. package/dist/hooks/otc/tradeFlow/useFillOtcOrderStep.d.ts.map +1 -1
  52. package/dist/hooks/otc/tradeFlow/useFillOtcOrderStep.js +4 -7
  53. package/dist/hooks/otc/tradeFlow/useFillOtcOrderStep.js.map +1 -1
  54. package/dist/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.d.ts.map +1 -1
  55. package/dist/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.js +1 -2
  56. package/dist/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.js.map +1 -1
  57. package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts.map +1 -1
  58. package/dist/hooks/swap/tradeFlow/useDeltaFlow.js.map +1 -1
  59. package/dist/hooks/swap/tradeFlow/useMarketSwapStep.d.ts.map +1 -1
  60. package/dist/hooks/swap/tradeFlow/useMarketSwapStep.js +4 -7
  61. package/dist/hooks/swap/tradeFlow/useMarketSwapStep.js.map +1 -1
  62. package/dist/hooks/txs/queries/useAwaitTx.d.ts.map +1 -1
  63. package/dist/hooks/txs/queries/useAwaitTx.js +20 -71
  64. package/dist/hooks/txs/queries/useAwaitTx.js.map +1 -1
  65. package/dist/lib/constants/storage.d.ts +1 -1
  66. package/dist/lib/constants/storage.d.ts.map +1 -1
  67. package/dist/lib/constants/storage.js +1 -3
  68. package/dist/lib/constants/storage.js.map +1 -1
  69. package/dist/lib/utils/index.d.ts.map +1 -1
  70. package/dist/lib/utils/index.js.map +1 -1
  71. package/dist/lib/utils/toasts.d.ts +1 -1
  72. package/dist/lib/utils/toasts.d.ts.map +1 -1
  73. package/dist/lib/utils/toasts.js +1 -5
  74. package/dist/lib/utils/toasts.js.map +1 -1
  75. package/dist/lib/web3/privy/config.js +1 -1
  76. package/dist/lib/web3/wagmi/config.d.ts.map +1 -1
  77. package/dist/lib/web3/wagmi/config.js +2 -2
  78. package/dist/lib/web3/wagmi/config.js.map +1 -1
  79. package/dist/lib/web3/wagmi/external.d.ts +3 -10
  80. package/dist/lib/web3/wagmi/external.d.ts.map +1 -1
  81. package/dist/lib/web3/wagmi/external.js +2 -17
  82. package/dist/lib/web3/wagmi/external.js.map +1 -1
  83. package/dist/lib/web3/wagmi/isInsideSafeIframe.d.ts +1 -0
  84. package/dist/lib/web3/wagmi/isInsideSafeIframe.d.ts.map +1 -1
  85. package/dist/lib/web3/wagmi/isInsideSafeIframe.js +2 -2
  86. package/dist/lib/web3/wagmi/isInsideSafeIframe.js.map +1 -1
  87. package/dist/lib/web3/wagmi/switchChain.d.ts.map +1 -1
  88. package/dist/lib/web3/wagmi/switchChain.js +1 -5
  89. package/dist/lib/web3/wagmi/switchChain.js.map +1 -1
  90. package/dist/styles.css +1 -1
  91. package/dist/transactions/queries/ensureCallsStatus.d.ts.map +1 -1
  92. package/dist/transactions/queries/ensureCallsStatus.js +3 -11
  93. package/dist/transactions/queries/ensureCallsStatus.js.map +1 -1
  94. package/dist/transactions/queries/ensureTxReceipt.d.ts.map +1 -1
  95. package/dist/transactions/queries/ensureTxReceipt.js +4 -7
  96. package/dist/transactions/queries/ensureTxReceipt.js.map +1 -1
  97. package/dist/transactions/state/effects/finalize.d.ts +1 -7
  98. package/dist/transactions/state/effects/finalize.d.ts.map +1 -1
  99. package/dist/transactions/state/effects/finalize.js +7 -41
  100. package/dist/transactions/state/effects/finalize.js.map +1 -1
  101. package/dist/transactions/state/hooks/useActivateEffects.d.ts.map +1 -1
  102. package/dist/transactions/state/hooks/useActivateEffects.js +2 -4
  103. package/dist/transactions/state/hooks/useActivateEffects.js.map +1 -1
  104. package/dist/transactions/state/transactionsActionAtom.d.ts.map +1 -1
  105. package/dist/transactions/state/transactionsActionAtom.js +15 -55
  106. package/dist/transactions/state/transactionsActionAtom.js.map +1 -1
  107. package/dist/transactions/state/transactionsAtom.js +2 -2
  108. package/dist/transactions/state/transactionsAtom.js.map +1 -1
  109. package/dist/transactions/types.d.ts +1 -11
  110. package/dist/transactions/types.d.ts.map +1 -1
  111. package/dist/transactions/utils.d.ts +1 -2
  112. package/dist/transactions/utils.d.ts.map +1 -1
  113. package/dist/transactions/utils.js +1 -6
  114. package/dist/transactions/utils.js.map +1 -1
  115. package/package.json +1 -3
  116. package/dist/components/web3/ConnectExternalProvider/constants.d.ts +0 -2
  117. package/dist/components/web3/ConnectExternalProvider/constants.d.ts.map +0 -1
  118. package/dist/components/web3/ConnectExternalProvider/constants.js +0 -4
  119. package/dist/components/web3/ConnectExternalProvider/constants.js.map +0 -1
  120. package/dist/components/web3/ConnectExternalProvider/utils.d.ts +0 -8
  121. package/dist/components/web3/ConnectExternalProvider/utils.d.ts.map +0 -1
  122. package/dist/components/web3/ConnectExternalProvider/utils.js +0 -9
  123. package/dist/components/web3/ConnectExternalProvider/utils.js.map +0 -1
  124. package/dist/configurator/Safe/SafeConnector.d.ts +0 -23
  125. package/dist/configurator/Safe/SafeConnector.d.ts.map +0 -1
  126. package/dist/configurator/Safe/useSafeConnector.d.ts +0 -7
  127. package/dist/configurator/Safe/useSafeConnector.d.ts.map +0 -1
  128. package/dist/lib/web3/wagmi/isInIframe.d.ts +0 -2
  129. package/dist/lib/web3/wagmi/isInIframe.d.ts.map +0 -1
  130. package/dist/lib/web3/wagmi/isInIframe.js +0 -4
  131. package/dist/lib/web3/wagmi/isInIframe.js.map +0 -1
  132. package/dist/transactions/hash.d.ts +0 -7
  133. package/dist/transactions/hash.d.ts.map +0 -1
  134. package/dist/transactions/hash.js +0 -35
  135. package/dist/transactions/hash.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"finalize.js","sources":["../../../../src/transactions/state/effects/finalize.ts"],"sourcesContent":["import { atomEffect } from \"jotai-effect\";\nimport {\n allPendingBatchTransactionItemsAtom,\n allPendingStandaloneTransactionItemsAtom,\n} from \"../transactionsAtom\";\nimport {\n finalizeBatchTxAtom,\n finalizeStandaloneTxAtom,\n} from \"../transactionsActionAtom\";\n\nimport { transactionLogger } from \"../../logger\";\nimport { accountAtom, addressAtom } from \"@/lib/web3/wagmi/external\";\nimport { isSafeConnector } from \"@/hooks/connectors/useIsGnosisSafeConnector\";\nimport { isGnosisSafeTx } from \"@/transactions/utils\";\n\n// run only once on app load\nlet hasRunStandaloneEffect = false;\nexport const finalizeStandaloneTxsEffect = atomEffect((get, set) => {\n if (hasRunStandaloneEffect) return;\n hasRunStandaloneEffect = true;\n\n const pendingStandaloneTxs = get(allPendingStandaloneTransactionItemsAtom)\n // txs through safe are handled in another effect\n .filter((tx) => !isGnosisSafeTx(tx));\n transactionLogger.log(\"Effect::pendingStandaloneTxs\", pendingStandaloneTxs);\n pendingStandaloneTxs.forEach((tx) => set(finalizeStandaloneTxAtom, tx));\n});\n\n// waitForTransactionReceipt(connectorClient,{safeTxHash}) requires wallet to be connected through safe connector\nlet hasRunStandaloneSafeEffect = false;\nexport const finalizeStandaloneSafeTxsEffect = atomEffect((get, set) => {\n if (hasRunStandaloneSafeEffect) return;\n const { connector, address } = get(accountAtom);\n const connectedSafe = connector && isSafeConnector(connector);\n\n // try finalize when:\n // - connected through safe connector\n // - all required methods are available for ensureTxReceipt(){getConnectorClient()}\n // otherwise it will throw ConnectorUnavailableReconnectingError\n if (\n connectedSafe &&\n !!connector.getAccounts &&\n !!connector.getChainId &&\n address\n ) {\n hasRunStandaloneSafeEffect = true;\n\n const addressLower = address.toLowerCase();\n\n const pendingSafeTxs = get(allPendingStandaloneTransactionItemsAtom)\n .filter(isGnosisSafeTx)\n // only trigger Safe tx finalization if the same Safe that made the tx is connected\n .filter((tx) => tx.account.toLowerCase() === addressLower);\n transactionLogger.log(\"Effect::pendingSafeTxs\", pendingSafeTxs);\n pendingSafeTxs.forEach((tx) => set(finalizeStandaloneTxAtom, tx));\n }\n});\n\n// run only once after account is connected and available in atom\n// because waitForCallsStatus requires wallet to be connected\nlet hasRunBatchEffect = false;\nexport const finalizeBatchTxsEffect = atomEffect((get, set) => {\n if (hasRunBatchEffect) return;\n\n const address = get(addressAtom);\n if (address) {\n hasRunBatchEffect = true;\n\n const pendingBatchTxs = get(allPendingBatchTransactionItemsAtom)\n // batch txs through safe are handled in another effect\n .filter((tx) => !isGnosisSafeTx(tx));\n transactionLogger.log(\"Effect::pendingBatchTxs\", pendingBatchTxs);\n pendingBatchTxs.forEach((tx) => set(finalizeBatchTxAtom, tx));\n }\n});\n\nlet hasRunBatchSafeEffect = false;\nexport const finalizeBatchSafeTxsEffect = atomEffect((get, set) => {\n if (hasRunBatchSafeEffect) return;\n const { connector, address } = get(accountAtom);\n const connectedSafe = connector && isSafeConnector(connector);\n\n // try finalize when:\n // - connected through safe connector\n // - all required methods are available for ensureCallsStatus(){getConnectorClient()}\n // otherwise it will throw ConnectorUnavailableReconnectingError\n if (\n connectedSafe &&\n !!connector.getAccounts &&\n !!connector.getChainId &&\n address\n ) {\n hasRunBatchSafeEffect = true;\n\n const addressLower = address.toLowerCase();\n\n const pendingSafeBatchTxs = get(allPendingBatchTransactionItemsAtom)\n .filter(isGnosisSafeTx)\n // only trigger Safe tx finalization if the same Safe that made the tx is connected\n .filter((tx) => tx.account.toLowerCase() === addressLower);\n transactionLogger.log(\"Effect::pendingSafeBatchTxs\", pendingSafeBatchTxs);\n pendingSafeBatchTxs.forEach((tx) => set(finalizeBatchTxAtom, tx));\n }\n});\n"],"names":["hasRunStandaloneEffect","finalizeStandaloneTxsEffect","atomEffect","get","set","pendingStandaloneTxs","allPendingStandaloneTransactionItemsAtom","filter","tx","isGnosisSafeTx","transactionLogger","log","forEach","finalizeStandaloneTxAtom","hasRunStandaloneSafeEffect","finalizeStandaloneSafeTxsEffect","connector","address","accountAtom","connectedSafe","isSafeConnector","getAccounts","getChainId","addressLower","toLowerCase","pendingSafeTxs","account","hasRunBatchEffect","finalizeBatchTxsEffect","addressAtom","pendingBatchTxs","allPendingBatchTransactionItemsAtom","finalizeBatchTxAtom","hasRunBatchSafeEffect","finalizeBatchSafeTxsEffect","pendingSafeBatchTxs"],"mappings":"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"}
1
+ {"version":3,"file":"finalize.js","sources":["../../../../src/transactions/state/effects/finalize.ts"],"sourcesContent":["import { atomEffect } from \"jotai-effect\";\nimport {\n allPendingBatchTransactionItemsAtom,\n allPendingStandaloneTransactionItemsAtom,\n} from \"../transactionsAtom\";\nimport {\n finalizeBatchTxAtom,\n finalizeStandaloneTxAtom,\n} from \"../transactionsActionAtom\";\n\nimport { transactionLogger } from \"../../logger\";\nimport { accountAtom } from \"@/lib/web3/wagmi/external\";\n\n// run only once on app load\nlet hasRunStandaloneEffect = false;\nexport const finalizeStandoloneTxsEffect = atomEffect((get, set) => {\n if (hasRunStandaloneEffect) return;\n hasRunStandaloneEffect = true;\n\n const pendingStandaloneTxs = get(allPendingStandaloneTransactionItemsAtom);\n transactionLogger.log(\"Effect::pendingStandaloneTxs\", pendingStandaloneTxs);\n pendingStandaloneTxs.forEach((tx) => set(finalizeStandaloneTxAtom, tx));\n});\n\n// run only once after account is connected and available in atom\n// because waitForCallsStatus requires wallet to be connected\nlet hasRunBatchEffect = false;\nexport const finalizeBatchTxsEffect = atomEffect((get, set) => {\n if (hasRunBatchEffect) return;\n\n const account = get(accountAtom);\n if (account) {\n hasRunBatchEffect = true;\n\n const pendingBatchTxs = get(allPendingBatchTransactionItemsAtom);\n transactionLogger.log(\"Effect::pendingBatchTxs\", pendingBatchTxs);\n pendingBatchTxs.forEach((tx) => set(finalizeBatchTxAtom, tx));\n }\n});\n"],"names":["hasRunStandaloneEffect","finalizeStandoloneTxsEffect","atomEffect","get","set","pendingStandaloneTxs","allPendingStandaloneTransactionItemsAtom","transactionLogger","log","forEach","tx","finalizeStandaloneTxAtom","hasRunBatchEffect","finalizeBatchTxsEffect","account","accountAtom","pendingBatchTxs","allPendingBatchTransactionItemsAtom","finalizeBatchTxAtom"],"mappings":";;;;;;AAcA,IAAIA,sBAAAA,GAAyB,KAAA;AACtB,MAAMC,2BAAAA,GAA8BC,UAAAA,CAAW,CAACC,GAAAA,EAAKC,GAAAA,KAAQ;AAClE,EAAA,IAAIJ,sBAAAA,EAAwB;AAC5BA,EAAAA,sBAAAA,GAAyB,IAAA;AAEzB,EAAA,MAAMK,oBAAAA,GAAuBF,IAAIG,wCAAwC,CAAA;AACzEC,EAAAA,iBAAAA,CAAkBC,GAAAA,CAAI,gCAAgCH,oBAAoB,CAAA;AAC1EA,EAAAA,oBAAAA,CAAqBI,OAAAA,CAASC,CAAAA,EAAAA,KAAON,GAAAA,CAAIO,wBAAAA,EAA0BD,EAAE,CAAC,CAAA;AACxE,CAAC;AAID,IAAIE,iBAAAA,GAAoB,KAAA;AACjB,MAAMC,sBAAAA,GAAyBX,UAAAA,CAAW,CAACC,GAAAA,EAAKC,GAAAA,KAAQ;AAC7D,EAAA,IAAIQ,iBAAAA,EAAmB;AAEvB,EAAA,MAAME,OAAAA,GAAUX,IAAIY,WAAW,CAAA;AAC/B,EAAA,IAAID,OAAAA,EAAS;AACXF,IAAAA,iBAAAA,GAAoB,IAAA;AAEpB,IAAA,MAAMI,eAAAA,GAAkBb,IAAIc,mCAAmC,CAAA;AAC/DV,IAAAA,iBAAAA,CAAkBC,GAAAA,CAAI,2BAA2BQ,eAAe,CAAA;AAChEA,IAAAA,eAAAA,CAAgBP,OAAAA,CAASC,CAAAA,EAAAA,KAAON,GAAAA,CAAIc,mBAAAA,EAAqBR,EAAE,CAAC,CAAA;AAAA,EAC9D;AACF,CAAC;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"useActivateEffects.d.ts","sourceRoot":"","sources":["../../../../src/transactions/state/hooks/useActivateEffects.ts"],"names":[],"mappings":"AAQA,wBAAgB,kBAAkB,SAMjC"}
1
+ {"version":3,"file":"useActivateEffects.d.ts","sourceRoot":"","sources":["../../../../src/transactions/state/hooks/useActivateEffects.ts"],"names":[],"mappings":"AAMA,wBAAgB,kBAAkB,SAIjC"}
@@ -1,11 +1,9 @@
1
1
  import { useAtom } from '../../../core/store.js';
2
- import { finalizeStandaloneTxsEffect, finalizeStandaloneSafeTxsEffect, finalizeBatchTxsEffect, finalizeBatchSafeTxsEffect } from '../effects/finalize.js';
2
+ import { finalizeStandoloneTxsEffect, finalizeBatchTxsEffect } from '../effects/finalize.js';
3
3
 
4
4
  function useActivateEffects() {
5
- useAtom(finalizeStandaloneTxsEffect);
6
- useAtom(finalizeStandaloneSafeTxsEffect);
5
+ useAtom(finalizeStandoloneTxsEffect);
7
6
  useAtom(finalizeBatchTxsEffect);
8
- useAtom(finalizeBatchSafeTxsEffect);
9
7
  }
10
8
 
11
9
  export { useActivateEffects };
@@ -1 +1 @@
1
- {"version":3,"file":"useActivateEffects.js","sources":["../../../../src/transactions/state/hooks/useActivateEffects.ts"],"sourcesContent":["import { useAtom } from \"@/core/store\";\nimport {\n finalizeBatchTxsEffect,\n finalizeStandaloneTxsEffect,\n finalizeStandaloneSafeTxsEffect,\n finalizeBatchSafeTxsEffect,\n} from \"@/transactions/state/effects/finalize\";\n\nexport function useActivateEffects() {\n // atomEffects must be rendered for subscriptions to activate\n useAtom(finalizeStandaloneTxsEffect);\n useAtom(finalizeStandaloneSafeTxsEffect);\n useAtom(finalizeBatchTxsEffect);\n useAtom(finalizeBatchSafeTxsEffect);\n}\n"],"names":["useActivateEffects","useAtom","finalizeStandaloneTxsEffect","finalizeStandaloneSafeTxsEffect","finalizeBatchTxsEffect","finalizeBatchSafeTxsEffect"],"mappings":";;;AAQO,SAAAA,kBAAAA,GAAA;AAELC,EAAAA,OAAAA,CAAQC,2BAA2B,CAAA;AACnCD,EAAAA,OAAAA,CAAQE,+BAA+B,CAAA;AACvCF,EAAAA,OAAAA,CAAQG,sBAAsB,CAAA;AAC9BH,EAAAA,OAAAA,CAAQI,0BAA0B,CAAA;AAAC;;;;"}
1
+ {"version":3,"file":"useActivateEffects.js","sources":["../../../../src/transactions/state/hooks/useActivateEffects.ts"],"sourcesContent":["import { useAtom } from \"@/core/store\";\nimport {\n finalizeBatchTxsEffect,\n finalizeStandoloneTxsEffect,\n} from \"@/transactions/state/effects/finalize\";\n\nexport function useActivateEffects() {\n // atomEffects must be rendered for subscriptions to activate\n useAtom(finalizeStandoloneTxsEffect);\n useAtom(finalizeBatchTxsEffect);\n}\n"],"names":["useActivateEffects","useAtom","finalizeStandoloneTxsEffect","finalizeBatchTxsEffect"],"mappings":";;;AAMO,SAAAA,kBAAAA,GAAA;AAELC,EAAAA,OAAAA,CAAQC,2BAA2B,CAAA;AACnCD,EAAAA,OAAAA,CAAQE,sBAAsB,CAAA;AAAC;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"transactionsActionAtom.d.ts","sourceRoot":"","sources":["../../../src/transactions/state/transactionsActionAtom.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,yBAAyB,EACzB,oBAAoB,EACpB,kBAAkB,EACnB,MAAM,UAAU,CAAC;AA2BlB,eAAO,MAAM,SAAS;;CAuBrB,CAAC;AAEF,eAAO,MAAM,wBAAwB;;CAwCnC,CAAC;AAEH,eAAO,MAAM,mBAAmB;;CA8B9B,CAAC;AAEH,eAAO,MAAM,KAAK,GAAU,aAAa,kBAAkB,kBAE1D,CAAC"}
1
+ {"version":3,"file":"transactionsActionAtom.d.ts","sourceRoot":"","sources":["../../../src/transactions/state/transactionsActionAtom.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,yBAAyB,EACzB,oBAAoB,EACpB,kBAAkB,EACnB,MAAM,UAAU,CAAC;AAuBlB,eAAO,MAAM,SAAS;;CAoBrB,CAAC;AAEF,eAAO,MAAM,wBAAwB;;CAgCnC,CAAC;AAEH,eAAO,MAAM,mBAAmB;;CA8B9B,CAAC;AAEH,eAAO,MAAM,KAAK,GAAU,aAAa,kBAAkB,kBAE1D,CAAC"}
@@ -5,24 +5,18 @@ import { ensureTxReceiptFactory } from '../queries/ensureTxReceipt.js';
5
5
  import { WaitForTransactionReceiptTimeoutError, TransactionReceiptNotFoundError, CallExecutionError, WaitForCallsStatusTimeoutError, MethodNotSupportedRpcError } from 'viem';
6
6
  import { transactionLogger } from '../logger.js';
7
7
  import { transactionsAtom } from './transactionsAtom.js';
8
- import { isGnosisSafeTx, isStandaloneTransactionItem, isBatchTransactionItem } from '../utils.js';
9
- import { assert } from 'ts-essentials';
8
+ import { isStandaloneTransactionItem, isBatchTransactionItem } from '../utils.js';
10
9
  import { accountAtom } from '../../lib/web3/wagmi/external.js';
10
+ import { assert } from 'ts-essentials';
11
11
 
12
12
  const addTxAtom = atom(null, async (get, set, transaction) => {
13
- const {
14
- connector,
15
- address
16
- } = get(accountAtom);
17
- assert(connector && address, "connector and address are required");
13
+ const account = get(accountAtom);
14
+ assert(account, "addTxAtom: account is required");
18
15
  const txWithMeta = {
19
16
  ...transaction,
20
- account: address,
17
+ account,
21
18
  timestamp: Date.now(),
22
- dropped: false,
23
- connectorData: {
24
- type: connector.type
25
- }
19
+ dropped: false
26
20
  };
27
21
  set(transactionsAtom, (current) => assignTx(current, txWithMeta));
28
22
  if (isStandaloneTransactionItem(txWithMeta)) {
@@ -36,13 +30,11 @@ const finalizeStandaloneTxAtom = atom(null, async (_, set, transaction) => {
36
30
  ...transaction
37
31
  };
38
32
  const ensureTxReceipt = ensureTxReceiptFactory();
39
- const isTxThroughSafe = isGnosisSafeTx(finalizedTx);
40
33
  try {
41
- const txReceipt = await ensureTxReceipt({
42
- hash: finalizedTx.transactionHash,
43
- chainId: finalizedTx.chainId
34
+ finalizedTx.receipt = await ensureTxReceipt({
35
+ hash: transaction.transactionHash,
36
+ chainId: transaction.chainId
44
37
  });
45
- finalizedTx.receipt = txReceipt;
46
38
  } catch (error) {
47
39
  if (
48
40
  /*
@@ -55,20 +47,10 @@ const finalizeStandaloneTxAtom = atom(null, async (_, set, transaction) => {
55
47
  error instanceof CallExecutionError
56
48
  ) {
57
49
  finalizedTx.dropped = true;
58
- transactionLogger.error("tx dropped", {
59
- error,
60
- finalizedTx,
61
- isTxThroughSafe
62
- });
50
+ transactionLogger.error(`finalizeStandaloneTxAtom::Transaction ${transaction.transactionHash} dropped with error: ${error.message}`);
63
51
  } else throw error;
64
52
  } finally {
65
- if (finalizedTx.receipt || finalizedTx.dropped) {
66
- set(transactionsAtom, (current) => assignTx(current, finalizedTx));
67
- transactionLogger.log("tx finalized", {
68
- finalizedTx,
69
- isTxThroughSafe
70
- });
71
- }
53
+ set(transactionsAtom, (current) => assignTx(current, finalizedTx));
72
54
  }
73
55
  });
74
56
  const finalizeBatchTxAtom = atom(null, async (_, set, transaction) => {
@@ -81,30 +63,20 @@ const finalizeBatchTxAtom = atom(null, async (_, set, transaction) => {
81
63
  receipts,
82
64
  status
83
65
  } = await ensureCallsStatus({
84
- id: finalizedTx.callsId
66
+ id: transaction.callsId
85
67
  });
86
68
  finalizedTx.callsStatus = status;
87
69
  finalizedTx.receipt = receipts?.[receipts.length - 1];
88
70
  } catch (error) {
89
71
  if (error instanceof WaitForCallsStatusTimeoutError || error instanceof MethodNotSupportedRpcError) {
90
72
  finalizedTx.dropped = true;
91
- transactionLogger.error("batch tx dropped", {
92
- error,
93
- finalizedTx
94
- });
73
+ transactionLogger.error(`finalizeBatchTxAtom::Batch transaction ${transaction.callsId} dropped with error: ${error.message}`);
95
74
  } else {
96
75
  finalizedTx.callsStatus = "failure";
97
- transactionLogger.error("batch tx failed", {
98
- error,
99
- finalizedTx
100
- });
101
76
  throw error;
102
77
  }
103
78
  } finally {
104
79
  set(transactionsAtom, (current) => assignTx(current, finalizedTx));
105
- transactionLogger.log("batch tx finalized", {
106
- finalizedTx
107
- });
108
80
  }
109
81
  });
110
82
  const addTx = async (transaction) => {
@@ -112,7 +84,7 @@ const addTx = async (transaction) => {
112
84
  };
113
85
  function sanitizeTx(tx) {
114
86
  if (isBatchTransactionItem(tx)) {
115
- const txItem2 = {
87
+ return {
116
88
  action: tx.action,
117
89
  account: tx.account,
118
90
  chainId: tx.chainId,
@@ -123,14 +95,8 @@ function sanitizeTx(tx) {
123
95
  receipt: tx.receipt,
124
96
  transactionSpecificData: tx.transactionSpecificData
125
97
  };
126
- if (tx.connectorData) {
127
- txItem2.connectorData = {
128
- type: tx.connectorData.type
129
- };
130
- }
131
- return txItem2;
132
98
  }
133
- const txItem = {
99
+ return {
134
100
  action: tx.action,
135
101
  chainId: tx.chainId,
136
102
  account: tx.account,
@@ -140,12 +106,6 @@ function sanitizeTx(tx) {
140
106
  receipt: tx.receipt,
141
107
  transactionSpecificData: tx.transactionSpecificData
142
108
  };
143
- if (tx.connectorData) {
144
- txItem.connectorData = {
145
- type: tx.connectorData.type
146
- };
147
- }
148
- return txItem;
149
109
  }
150
110
  function assignTx(currentTransactions, transaction) {
151
111
  transactionLogger.log("assignTx", {
@@ -1 +1 @@
1
- {"version":3,"file":"transactionsActionAtom.js","sources":["../../../src/transactions/state/transactionsActionAtom.ts"],"sourcesContent":["import type {\n TransactionItem,\n StandaloneTransactionItem,\n BatchTransactionItem,\n MinTransactionItem,\n} from \"../types\";\nimport { atom } from \"jotai\";\nimport { jotaiStore } from \"@/core/store\";\n\nimport { ensureCallsStatusFactory } from \"../queries/ensureCallsStatus\";\nimport { ensureTxReceiptFactory } from \"../queries/ensureTxReceipt\";\nimport {\n WaitForCallsStatusTimeoutError,\n TransactionReceiptNotFoundError,\n WaitForTransactionReceiptTimeoutError,\n MethodNotSupportedRpcError,\n CallExecutionError,\n} from \"viem\";\nimport { transactionLogger } from \"../logger\";\nimport {\n transactionsAtom,\n type TransactionsMap,\n type TransactionsState,\n} from \"./transactionsAtom\";\nimport {\n isBatchTransactionItem,\n isGnosisSafeTx,\n isStandaloneTransactionItem,\n} from \"../utils\";\nimport { assert } from \"ts-essentials\";\nimport { accountAtom } from \"@/lib/web3/wagmi/external\";\n\nexport const addTxAtom = atom<null, [transaction: MinTransactionItem], void>(\n null,\n async (get, set, transaction) => {\n const { connector, address } = get(accountAtom);\n assert(connector && address, \"connector and address are required\");\n\n const txWithMeta: TransactionItem = {\n ...transaction,\n account: address,\n timestamp: Date.now(),\n dropped: false,\n connectorData: {\n type: connector.type,\n },\n };\n set(transactionsAtom, (current) => assignTx(current, txWithMeta));\n\n if (isStandaloneTransactionItem(txWithMeta)) {\n await set(finalizeStandaloneTxAtom, txWithMeta);\n } else {\n await set(finalizeBatchTxAtom, txWithMeta);\n }\n }\n);\n\nexport const finalizeStandaloneTxAtom = atom<\n null,\n [StandaloneTransactionItem],\n Promise<void>\n>(null, async (_, set, transaction) => {\n const finalizedTx: StandaloneTransactionItem = { ...transaction };\n const ensureTxReceipt = ensureTxReceiptFactory();\n const isTxThroughSafe = isGnosisSafeTx(finalizedTx);\n\n try {\n // ensureTxReceipt internally makes sure to use walletClient for Safe connector\n const txReceipt = await ensureTxReceipt({\n hash: finalizedTx.transactionHash,\n chainId: finalizedTx.chainId,\n });\n finalizedTx.receipt = txReceipt;\n } catch (error) {\n if (\n /* \n At different steps of the waitForTransactionReceipt func different errors can be thrown.\n And if tx turned in eth_call with the same params succeeds (which it normally should not if it reverted for a valid reason and not gas or something),\n we can even get a useless Error(\"unknown reason\") or Error(\"0xrandom_hash\")\n */\n error instanceof WaitForTransactionReceiptTimeoutError || // thrown when transaction is not found within the timeout period\n error instanceof TransactionReceiptNotFoundError || // thrown when transaction receipt is not found\n error instanceof CallExecutionError // thrown when the transaction execution fails on-chain (execution reverted, out of gas, etc)\n ) {\n finalizedTx.dropped = true;\n transactionLogger.error(\"tx dropped\", {\n error,\n finalizedTx,\n isTxThroughSafe,\n });\n } else throw error;\n } finally {\n if (finalizedTx.receipt || finalizedTx.dropped) {\n set(transactionsAtom, (current) => assignTx(current, finalizedTx));\n transactionLogger.log(\"tx finalized\", { finalizedTx, isTxThroughSafe });\n }\n }\n});\n\nexport const finalizeBatchTxAtom = atom<\n null,\n [BatchTransactionItem],\n Promise<void>\n>(null, async (_, set, transaction) => {\n const finalizedTx: BatchTransactionItem = { ...transaction };\n const ensureCallsStatus = ensureCallsStatusFactory();\n\n try {\n const { receipts, status } = await ensureCallsStatus({\n id: finalizedTx.callsId,\n });\n finalizedTx.callsStatus = status;\n finalizedTx.receipt = receipts?.[receipts.length - 1];\n } catch (error) {\n if (\n error instanceof WaitForCallsStatusTimeoutError ||\n error instanceof MethodNotSupportedRpcError\n ) {\n finalizedTx.dropped = true;\n transactionLogger.error(\"batch tx dropped\", { error, finalizedTx });\n } else {\n finalizedTx.callsStatus = \"failure\";\n transactionLogger.error(\"batch tx failed\", { error, finalizedTx });\n throw error;\n }\n } finally {\n set(transactionsAtom, (current) => assignTx(current, finalizedTx));\n transactionLogger.log(\"batch tx finalized\", { finalizedTx });\n }\n});\n\nexport const addTx = async (transaction: MinTransactionItem) => {\n return jotaiStore.set(addTxAtom, transaction);\n};\n\nfunction sanitizeTx(tx: TransactionItem): TransactionItem {\n if (isBatchTransactionItem(tx)) {\n const txItem = {\n action: tx.action,\n account: tx.account,\n chainId: tx.chainId,\n callsId: tx.callsId,\n callsStatus: tx.callsStatus,\n timestamp: tx.timestamp,\n dropped: tx.dropped,\n receipt: tx.receipt,\n transactionSpecificData: tx.transactionSpecificData,\n } as BatchTransactionItem;\n\n if (tx.connectorData) {\n txItem.connectorData = {\n type: tx.connectorData.type,\n };\n }\n\n return txItem;\n }\n\n const txItem = {\n action: tx.action,\n chainId: tx.chainId,\n account: tx.account,\n transactionHash: tx.transactionHash,\n timestamp: tx.timestamp,\n dropped: tx.dropped,\n receipt: tx.receipt,\n transactionSpecificData: tx.transactionSpecificData,\n } as StandaloneTransactionItem;\n\n if (tx.connectorData) {\n txItem.connectorData = {\n type: tx.connectorData.type,\n };\n }\n\n return txItem;\n}\n\nfunction assignTx(\n currentTransactions: TransactionsState,\n transaction: TransactionItem\n): TransactionsState {\n transactionLogger.log(\"assignTx\", {\n account: transaction.account,\n transaction,\n });\n\n const accountTransactions = currentTransactions[transaction.account] || {};\n const identifier = isStandaloneTransactionItem(transaction)\n ? transaction.transactionHash\n : transaction.callsId;\n\n const updatedAccountTransactions: TransactionsMap = {\n ...accountTransactions,\n [identifier]: sanitizeTx({\n ...accountTransactions[identifier],\n ...transaction,\n }),\n };\n\n return {\n ...currentTransactions,\n [transaction.account]: updatedAccountTransactions,\n };\n}\n"],"names":["addTxAtom","atom","get","set","transaction","connector","address","accountAtom","assert","txWithMeta","account","timestamp","Date","now","dropped","connectorData","type","transactionsAtom","current","assignTx","isStandaloneTransactionItem","finalizeStandaloneTxAtom","finalizeBatchTxAtom","_","finalizedTx","ensureTxReceipt","ensureTxReceiptFactory","isTxThroughSafe","isGnosisSafeTx","txReceipt","hash","transactionHash","chainId","receipt","error","WaitForTransactionReceiptTimeoutError","TransactionReceiptNotFoundError","CallExecutionError","transactionLogger","log","ensureCallsStatus","ensureCallsStatusFactory","receipts","status","id","callsId","callsStatus","length","WaitForCallsStatusTimeoutError","MethodNotSupportedRpcError","addTx","jotaiStore","sanitizeTx","tx","isBatchTransactionItem","txItem","action","transactionSpecificData","currentTransactions","accountTransactions","identifier","updatedAccountTransactions"],"mappings":";;;;;;;;;;;AAgCO,MAAMA,YAAYC,IAAAA,CACvB,IAAA,EACA,OAAOC,GAAAA,EAAKC,KAAKC,WAAAA,KAAgB;AAC/B,EAAA,MAAM;AAAA,IAAEC,SAAAA;AAAAA,IAAWC;AAAAA,GAAQ,GAAIJ,IAAIK,WAAW,CAAA;AAC9CC,EAAAA,MAAAA,CAAOH,SAAAA,IAAaC,SAAS,oCAAoC,CAAA;AAEjE,EAAA,MAAMG,UAAAA,GAA8B;AAAA,IAClC,GAAGL,WAAAA;AAAAA,IACHM,OAAAA,EAASJ,OAAAA;AAAAA,IACTK,SAAAA,EAAWC,KAAKC,GAAAA,EAAI;AAAA,IACpBC,OAAAA,EAAS,KAAA;AAAA,IACTC,aAAAA,EAAe;AAAA,MACbC,MAAMX,SAAAA,CAAUW;AAAAA;AAClB,GACF;AACAb,EAAAA,GAAAA,CAAIc,gBAAAA,EAAmBC,CAAAA,OAAAA,KAAYC,QAAAA,CAASD,OAAAA,EAAST,UAAU,CAAC,CAAA;AAEhE,EAAA,IAAIW,2BAAAA,CAA4BX,UAAU,CAAA,EAAG;AAC3C,IAAA,MAAMN,GAAAA,CAAIkB,0BAA0BZ,UAAU,CAAA;AAAA,EAChD,CAAA,MAAO;AACL,IAAA,MAAMN,GAAAA,CAAImB,qBAAqBb,UAAU,CAAA;AAAA,EAC3C;AACF,CACF;AAEO,MAAMY,2BAA2BpB,IAAAA,CAItC,IAAA,EAAM,OAAOsB,CAAAA,EAAGpB,KAAKC,WAAAA,KAAgB;AACrC,EAAA,MAAMoB,WAAAA,GAAyC;AAAA,IAAE,GAAGpB;AAAAA,GAAY;AAChE,EAAA,MAAMqB,kBAAkBC,sBAAAA,EAAuB;AAC/C,EAAA,MAAMC,eAAAA,GAAkBC,eAAeJ,WAAW,CAAA;AAElD,EAAA,IAAI;AAEF,IAAA,MAAMK,SAAAA,GAAY,MAAMJ,eAAAA,CAAgB;AAAA,MACtCK,MAAMN,WAAAA,CAAYO,eAAAA;AAAAA,MAClBC,SAASR,WAAAA,CAAYQ;AAAAA,KACtB,CAAA;AACDR,IAAAA,WAAAA,CAAYS,OAAAA,GAAUJ,SAAAA;AAAAA,EACxB,SAASK,KAAAA,EAAO;AACd,IAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAMEA,KAAAA,YAAiBC,qCAAAA;AAAAA,MACjBD,KAAAA,YAAiBE,+BAAAA;AAAAA,MACjBF,KAAAA,YAAiBG;AAAAA,MACjB;AACAb,MAAAA,WAAAA,CAAYV,OAAAA,GAAU,IAAA;AACtBwB,MAAAA,iBAAAA,CAAkBJ,MAAM,YAAA,EAAc;AAAA,QACpCA,KAAAA;AAAAA,QACAV,WAAAA;AAAAA,QACAG;AAAAA,OACD,CAAA;AAAA,IACH,OAAO,MAAMO,KAAAA;AAAAA,EACf,CAAA,SAAC;AACC,IAAA,IAAIV,WAAAA,CAAYS,OAAAA,IAAWT,WAAAA,CAAYV,OAAAA,EAAS;AAC9CX,MAAAA,GAAAA,CAAIc,gBAAAA,EAAmBC,CAAAA,OAAAA,KAAYC,QAAAA,CAASD,OAAAA,EAASM,WAAW,CAAC,CAAA;AACjEc,MAAAA,iBAAAA,CAAkBC,IAAI,cAAA,EAAgB;AAAA,QAAEf,WAAAA;AAAAA,QAAaG;AAAAA,OAAiB,CAAA;AAAA,IACxE;AAAA,EACF;AACF,CAAC;AAEM,MAAML,sBAAsBrB,IAAAA,CAIjC,IAAA,EAAM,OAAOsB,CAAAA,EAAGpB,KAAKC,WAAAA,KAAgB;AACrC,EAAA,MAAMoB,WAAAA,GAAoC;AAAA,IAAE,GAAGpB;AAAAA,GAAY;AAC3D,EAAA,MAAMoC,oBAAoBC,wBAAAA,EAAyB;AAEnD,EAAA,IAAI;AACF,IAAA,MAAM;AAAA,MAAEC,QAAAA;AAAAA,MAAUC;AAAAA,KAAO,GAAI,MAAMH,iBAAAA,CAAkB;AAAA,MACnDI,IAAIpB,WAAAA,CAAYqB;AAAAA,KACjB,CAAA;AACDrB,IAAAA,WAAAA,CAAYsB,WAAAA,GAAcH,MAAAA;AAC1BnB,IAAAA,WAAAA,CAAYS,OAAAA,GAAUS,QAAAA,GAAWA,QAAAA,CAASK,MAAAA,GAAS,CAAC,CAAA;AAAA,EACtD,SAASb,KAAAA,EAAO;AACd,IAAA,IACEA,KAAAA,YAAiBc,8BAAAA,IACjBd,KAAAA,YAAiBe,0BAAAA,EACjB;AACAzB,MAAAA,WAAAA,CAAYV,OAAAA,GAAU,IAAA;AACtBwB,MAAAA,iBAAAA,CAAkBJ,MAAM,kBAAA,EAAoB;AAAA,QAAEA,KAAAA;AAAAA,QAAOV;AAAAA,OAAa,CAAA;AAAA,IACpE,CAAA,MAAO;AACLA,MAAAA,WAAAA,CAAYsB,WAAAA,GAAc,SAAA;AAC1BR,MAAAA,iBAAAA,CAAkBJ,MAAM,iBAAA,EAAmB;AAAA,QAAEA,KAAAA;AAAAA,QAAOV;AAAAA,OAAa,CAAA;AACjE,MAAA,MAAMU,KAAAA;AAAAA,IACR;AAAA,EACF,CAAA,SAAC;AACC/B,IAAAA,GAAAA,CAAIc,gBAAAA,EAAmBC,CAAAA,OAAAA,KAAYC,QAAAA,CAASD,OAAAA,EAASM,WAAW,CAAC,CAAA;AACjEc,IAAAA,iBAAAA,CAAkBC,IAAI,oBAAA,EAAsB;AAAA,MAAEf;AAAAA,KAAa,CAAA;AAAA,EAC7D;AACF,CAAC;AAEM,MAAM0B,KAAAA,GAAQ,OAAO9C,WAAAA,KAAoC;AAC9D,EAAA,OAAO+C,UAAAA,CAAWhD,GAAAA,CAAIH,SAAAA,EAAWI,WAAW,CAAA;AAC9C;AAEA,SAASgD,WAAWC,EAAAA,EAAsC;AACxD,EAAA,IAAIC,sBAAAA,CAAuBD,EAAE,CAAA,EAAG;AAC9B,IAAA,MAAME,OAAAA,GAAS;AAAA,MACbC,QAAQH,EAAAA,CAAGG,MAAAA;AAAAA,MACX9C,SAAS2C,EAAAA,CAAG3C,OAAAA;AAAAA,MACZsB,SAASqB,EAAAA,CAAGrB,OAAAA;AAAAA,MACZa,SAASQ,EAAAA,CAAGR,OAAAA;AAAAA,MACZC,aAAaO,EAAAA,CAAGP,WAAAA;AAAAA,MAChBnC,WAAW0C,EAAAA,CAAG1C,SAAAA;AAAAA,MACdG,SAASuC,EAAAA,CAAGvC,OAAAA;AAAAA,MACZmB,SAASoB,EAAAA,CAAGpB,OAAAA;AAAAA,MACZwB,yBAAyBJ,EAAAA,CAAGI;AAAAA,KAC9B;AAEA,IAAA,IAAIJ,GAAGtC,aAAAA,EAAe;AACpBwC,MAAAA,QAAOxC,aAAAA,GAAgB;AAAA,QACrBC,IAAAA,EAAMqC,GAAGtC,aAAAA,CAAcC;AAAAA,OACzB;AAAA,IACF;AAEA,IAAA,OAAOuC,OAAAA;AAAAA,EACT;AAEA,EAAA,MAAMA,MAAAA,GAAS;AAAA,IACbC,QAAQH,EAAAA,CAAGG,MAAAA;AAAAA,IACXxB,SAASqB,EAAAA,CAAGrB,OAAAA;AAAAA,IACZtB,SAAS2C,EAAAA,CAAG3C,OAAAA;AAAAA,IACZqB,iBAAiBsB,EAAAA,CAAGtB,eAAAA;AAAAA,IACpBpB,WAAW0C,EAAAA,CAAG1C,SAAAA;AAAAA,IACdG,SAASuC,EAAAA,CAAGvC,OAAAA;AAAAA,IACZmB,SAASoB,EAAAA,CAAGpB,OAAAA;AAAAA,IACZwB,yBAAyBJ,EAAAA,CAAGI;AAAAA,GAC9B;AAEA,EAAA,IAAIJ,GAAGtC,aAAAA,EAAe;AACpBwC,IAAAA,MAAAA,CAAOxC,aAAAA,GAAgB;AAAA,MACrBC,IAAAA,EAAMqC,GAAGtC,aAAAA,CAAcC;AAAAA,KACzB;AAAA,EACF;AAEA,EAAA,OAAOuC,MAAAA;AACT;AAEA,SAASpC,QAAAA,CACPuC,qBACAtD,WAAAA,EACmB;AACnBkC,EAAAA,iBAAAA,CAAkBC,IAAI,UAAA,EAAY;AAAA,IAChC7B,SAASN,WAAAA,CAAYM,OAAAA;AAAAA,IACrBN;AAAAA,GACD,CAAA;AAED,EAAA,MAAMuD,mBAAAA,GAAsBD,mBAAAA,CAAoBtD,WAAAA,CAAYM,OAAO,KAAK,EAAC;AACzE,EAAA,MAAMkD,aAAaxC,2BAAAA,CAA4BhB,WAAW,CAAA,GACtDA,WAAAA,CAAY2B,kBACZ3B,WAAAA,CAAYyC,OAAAA;AAEhB,EAAA,MAAMgB,0BAAAA,GAA8C;AAAA,IAClD,GAAGF,mBAAAA;AAAAA,IACH,CAACC,UAAU,GAAGR,UAAAA,CAAW;AAAA,MACvB,GAAGO,oBAAoBC,UAAU,CAAA;AAAA,MACjC,GAAGxD;AAAAA,KACJ;AAAA,GACH;AAEA,EAAA,OAAO;AAAA,IACL,GAAGsD,mBAAAA;AAAAA,IACH,CAACtD,WAAAA,CAAYM,OAAO,GAAGmD;AAAAA,GACzB;AACF;;;;"}
1
+ {"version":3,"file":"transactionsActionAtom.js","sources":["../../../src/transactions/state/transactionsActionAtom.ts"],"sourcesContent":["import type {\n TransactionItem,\n StandaloneTransactionItem,\n BatchTransactionItem,\n MinTransactionItem,\n} from \"../types\";\nimport { atom } from \"jotai\";\nimport { jotaiStore } from \"@/core/store\";\n\nimport { ensureCallsStatusFactory } from \"../queries/ensureCallsStatus\";\nimport { ensureTxReceiptFactory } from \"../queries/ensureTxReceipt\";\nimport {\n WaitForCallsStatusTimeoutError,\n TransactionReceiptNotFoundError,\n WaitForTransactionReceiptTimeoutError,\n MethodNotSupportedRpcError,\n CallExecutionError,\n} from \"viem\";\nimport { transactionLogger } from \"../logger\";\nimport {\n transactionsAtom,\n type TransactionsMap,\n type TransactionsState,\n} from \"./transactionsAtom\";\nimport { isBatchTransactionItem, isStandaloneTransactionItem } from \"../utils\";\nimport { accountAtom } from \"@/lib/web3/wagmi/external\";\nimport { assert } from \"ts-essentials\";\n\nexport const addTxAtom = atom<null, [transaction: MinTransactionItem], void>(\n null,\n async (get, set, transaction) => {\n const account = get(accountAtom);\n assert(account, \"addTxAtom: account is required\");\n\n const txWithMeta = {\n ...transaction,\n account,\n timestamp: Date.now(),\n dropped: false,\n };\n set(transactionsAtom, (current) => assignTx(current, txWithMeta));\n\n if (isStandaloneTransactionItem(txWithMeta)) {\n await set(finalizeStandaloneTxAtom, txWithMeta);\n } else {\n await set(finalizeBatchTxAtom, txWithMeta);\n }\n }\n);\n\nexport const finalizeStandaloneTxAtom = atom<\n null,\n [StandaloneTransactionItem],\n Promise<void>\n>(null, async (_, set, transaction) => {\n const finalizedTx: StandaloneTransactionItem = { ...transaction };\n const ensureTxReceipt = ensureTxReceiptFactory();\n\n try {\n finalizedTx.receipt = await ensureTxReceipt({\n hash: transaction.transactionHash,\n chainId: transaction.chainId,\n });\n } catch (error) {\n if (\n /* \n At different steps of the waitForTransactionReceipt func different errors can be thrown.\n And if tx turned in eth_call with the same params succeeds (which it normally should not if it reverted for a valid reason and not gas or something),\n we can even get a useless Error(\"unknown reason\") or Error(\"0xrandom_hash\")\n */\n error instanceof WaitForTransactionReceiptTimeoutError || // thrown when transaction is not found within the timeout period\n error instanceof TransactionReceiptNotFoundError || // thrown when transaction receipt is not found\n error instanceof CallExecutionError // thrown when the transaction execution fails on-chain (execution reverted, out of gas, etc)\n ) {\n finalizedTx.dropped = true;\n transactionLogger.error(\n `finalizeStandaloneTxAtom::Transaction ${transaction.transactionHash} dropped with error: ${error.message}`\n );\n } else throw error;\n } finally {\n set(transactionsAtom, (current) => assignTx(current, finalizedTx));\n }\n});\n\nexport const finalizeBatchTxAtom = atom<\n null,\n [BatchTransactionItem],\n Promise<void>\n>(null, async (_, set, transaction) => {\n const finalizedTx: BatchTransactionItem = { ...transaction };\n const ensureCallsStatus = ensureCallsStatusFactory();\n\n try {\n const { receipts, status } = await ensureCallsStatus({\n id: transaction.callsId,\n });\n finalizedTx.callsStatus = status;\n finalizedTx.receipt = receipts?.[receipts.length - 1];\n } catch (error) {\n if (\n error instanceof WaitForCallsStatusTimeoutError ||\n error instanceof MethodNotSupportedRpcError\n ) {\n finalizedTx.dropped = true;\n transactionLogger.error(\n `finalizeBatchTxAtom::Batch transaction ${transaction.callsId} dropped with error: ${error.message}`\n );\n } else {\n finalizedTx.callsStatus = \"failure\";\n throw error;\n }\n } finally {\n set(transactionsAtom, (current) => assignTx(current, finalizedTx));\n }\n});\n\nexport const addTx = async (transaction: MinTransactionItem) => {\n return jotaiStore.set(addTxAtom, transaction);\n};\n\nfunction sanitizeTx(tx: TransactionItem): TransactionItem {\n if (isBatchTransactionItem(tx)) {\n return {\n action: tx.action,\n account: tx.account,\n chainId: tx.chainId,\n callsId: tx.callsId,\n callsStatus: tx.callsStatus,\n timestamp: tx.timestamp,\n dropped: tx.dropped,\n receipt: tx.receipt,\n transactionSpecificData: tx.transactionSpecificData,\n } as BatchTransactionItem;\n }\n\n return {\n action: tx.action,\n chainId: tx.chainId,\n account: tx.account,\n transactionHash: tx.transactionHash,\n timestamp: tx.timestamp,\n dropped: tx.dropped,\n receipt: tx.receipt,\n transactionSpecificData: tx.transactionSpecificData,\n } as StandaloneTransactionItem;\n}\n\nfunction assignTx(\n currentTransactions: TransactionsState,\n transaction: TransactionItem\n): TransactionsState {\n transactionLogger.log(\"assignTx\", {\n account: transaction.account,\n transaction,\n });\n\n const accountTransactions = currentTransactions[transaction.account] || {};\n const identifier = isStandaloneTransactionItem(transaction)\n ? transaction.transactionHash\n : transaction.callsId;\n\n const updatedAccountTransactions: TransactionsMap = {\n ...accountTransactions,\n [identifier]: sanitizeTx({\n ...accountTransactions[identifier],\n ...transaction,\n }),\n };\n\n return {\n ...currentTransactions,\n [transaction.account]: updatedAccountTransactions,\n };\n}\n"],"names":["addTxAtom","atom","get","set","transaction","account","accountAtom","assert","txWithMeta","timestamp","Date","now","dropped","transactionsAtom","current","assignTx","isStandaloneTransactionItem","finalizeStandaloneTxAtom","finalizeBatchTxAtom","_","finalizedTx","ensureTxReceipt","ensureTxReceiptFactory","receipt","hash","transactionHash","chainId","error","WaitForTransactionReceiptTimeoutError","TransactionReceiptNotFoundError","CallExecutionError","transactionLogger","message","ensureCallsStatus","ensureCallsStatusFactory","receipts","status","id","callsId","callsStatus","length","WaitForCallsStatusTimeoutError","MethodNotSupportedRpcError","addTx","jotaiStore","sanitizeTx","tx","isBatchTransactionItem","action","transactionSpecificData","currentTransactions","log","accountTransactions","identifier","updatedAccountTransactions"],"mappings":"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"}
@@ -2,7 +2,7 @@ import { atomWithStorage, createJSONStorage } from 'jotai/utils';
2
2
  import { atom } from 'jotai';
3
3
  import { extractPendingTransactions, isStandaloneTransactionItem, isBatchTransactionItem, extractSwapTransactions } from '../utils.js';
4
4
  import { serialize, deserialize } from 'wagmi';
5
- import { addressAtom } from '../../lib/web3/wagmi/external.js';
5
+ import { accountAtom } from '../../lib/web3/wagmi/external.js';
6
6
  import { emptyArray } from '../../lib/constants/index.js';
7
7
  import { LOCAL_STORAGE_PREFIX } from '../../lib/constants/storage.js';
8
8
 
@@ -20,7 +20,7 @@ const allTransactionsAtom = atom((get) => {
20
20
  return Object.values(transactions).flatMap((txMap) => Object.values(txMap));
21
21
  });
22
22
  const userTransactionsAtom = atom((get) => {
23
- const account = get(addressAtom);
23
+ const account = get(accountAtom);
24
24
  if (!account) return emptyArray;
25
25
  const transactions = get(transactionsAtom)[account];
26
26
  if (!transactions) return emptyArray;
@@ -1 +1 @@
1
- {"version":3,"file":"transactionsAtom.js","sources":["../../../src/transactions/state/transactionsAtom.ts"],"sourcesContent":["import type {\n BatchTransactionItem,\n StandaloneTransactionItem,\n TransactionItem,\n TransactionItemSwap,\n} from \"../types\";\nimport { atomWithStorage, createJSONStorage } from \"jotai/utils\";\nimport { atom } from \"jotai\";\n\nimport {\n extractPendingTransactions,\n extractSwapTransactions,\n isStandaloneTransactionItem,\n isBatchTransactionItem,\n} from \"../utils\";\nimport { serialize, deserialize } from \"wagmi\";\nimport type { Address } from \"viem\";\nimport { addressAtom } from \"@/lib/web3/wagmi/external\";\nimport { emptyArray } from \"@/lib/constants\";\nimport { LOCAL_STORAGE_PREFIX } from \"@/lib/constants/storage\";\n\n// Record<TxHash/CallsId, TransactionItem>\nexport type TransactionsMap = Record<string, TransactionItem>;\n\nexport type TransactionsState = Record<Address, TransactionsMap>;\n\nexport const transactionsAtom = atomWithStorage<TransactionsState>(\n `${LOCAL_STORAGE_PREFIX}_transactions`,\n {},\n createJSONStorage(() => localStorage, {\n // serialize/deserialize to handle bigint values\n replacer: (_, value) => serialize(value),\n reviver: (_, value) => {\n return typeof value === \"string\" ? deserialize(value) : value;\n },\n }),\n { getOnInit: true }\n);\n\nexport const allTransactionsAtom = atom<TransactionItem[]>((get) => {\n const transactions = get(transactionsAtom);\n return Object.values(transactions).flatMap((txMap) => Object.values(txMap));\n});\n\nexport const userTransactionsAtom = atom<TransactionItem[]>((get) => {\n const account = get(addressAtom);\n if (!account) return emptyArray;\n const transactions = get(transactionsAtom)[account];\n if (!transactions) return emptyArray;\n return Object.values(transactions);\n});\n\nexport const allStandaloneTransactionItemsAtom = atom<\n StandaloneTransactionItem[]\n>((get) => {\n const transactions = get(allTransactionsAtom);\n return transactions.filter(isStandaloneTransactionItem);\n});\n\nexport const allBatchTransactionItemsAtom = atom<BatchTransactionItem[]>(\n (get) => {\n const transactions = get(allTransactionsAtom);\n return transactions.filter(isBatchTransactionItem);\n }\n);\n\nexport const allPendingStandaloneTransactionItemsAtom = atom<\n StandaloneTransactionItem[]\n>((get) => {\n const transactions = get(allStandaloneTransactionItemsAtom);\n return extractPendingTransactions(transactions);\n});\n\nexport const allPendingBatchTransactionItemsAtom = atom<BatchTransactionItem[]>(\n (get) => {\n const transactions = get(allBatchTransactionItemsAtom);\n return extractPendingTransactions(transactions);\n }\n);\n\nexport const userPendingTransactionsAtom = atom<TransactionItem[]>((get) => {\n const transactions = get(userTransactionsAtom);\n return extractPendingTransactions(transactions);\n});\n\nexport const userSwapTransactionsAtom = atom<TransactionItemSwap[]>((get) => {\n const transactions = get(userTransactionsAtom);\n return extractSwapTransactions(transactions);\n});\n"],"names":["transactionsAtom","atomWithStorage","LOCAL_STORAGE_PREFIX","createJSONStorage","localStorage","replacer","_","value","serialize","reviver","deserialize","getOnInit","allTransactionsAtom","atom","get","transactions","Object","values","flatMap","txMap","userTransactionsAtom","account","addressAtom","emptyArray","allStandaloneTransactionItemsAtom","filter","isStandaloneTransactionItem","allBatchTransactionItemsAtom","isBatchTransactionItem","allPendingStandaloneTransactionItemsAtom","extractPendingTransactions","allPendingBatchTransactionItemsAtom","userPendingTransactionsAtom","userSwapTransactionsAtom","extractSwapTransactions"],"mappings":";;;;;;;;AA0BO,MAAMA,gBAAAA,GAAmBC,gBAC9B,CAAA,EAAGC,oBAAoB,iBACvB,EAAC,EACDC,iBAAAA,CAAkB,MAAMC,YAAAA,EAAc;AAAA;AAAA,EAEpCC,QAAAA,EAAUA,CAACC,CAAAA,EAAGC,KAAAA,KAAUC,UAAUD,KAAK,CAAA;AAAA,EACvCE,OAAAA,EAASA,CAACH,CAAAA,EAAGC,KAAAA,KAAU;AACrB,IAAA,OAAO,OAAOA,KAAAA,KAAU,QAAA,GAAWG,WAAAA,CAAYH,KAAK,CAAA,GAAIA,KAAAA;AAAAA,EAC1D;AACF,CAAC,CAAA,EACD;AAAA,EAAEI,SAAAA,EAAW;AAAK,CACpB;AAEO,MAAMC,mBAAAA,GAAsBC,KAAyBC,CAAAA,GAAAA,KAAQ;AAClE,EAAA,MAAMC,YAAAA,GAAeD,IAAId,gBAAgB,CAAA;AACzC,EAAA,OAAOgB,MAAAA,CAAOC,OAAOF,YAAY,CAAA,CAAEG,QAASC,CAAAA,KAAAA,KAAUH,MAAAA,CAAOC,MAAAA,CAAOE,KAAK,CAAC,CAAA;AAC5E,CAAC;AAEM,MAAMC,oBAAAA,GAAuBP,KAAyBC,CAAAA,GAAAA,KAAQ;AACnE,EAAA,MAAMO,OAAAA,GAAUP,IAAIQ,WAAW,CAAA;AAC/B,EAAA,IAAI,CAACD,SAAS,OAAOE,UAAAA;AACrB,EAAA,MAAMR,YAAAA,GAAeD,GAAAA,CAAId,gBAAgB,CAAA,CAAEqB,OAAO,CAAA;AAClD,EAAA,IAAI,CAACN,cAAc,OAAOQ,UAAAA;AAC1B,EAAA,OAAOP,MAAAA,CAAOC,OAAOF,YAAY,CAAA;AACnC,CAAC;AAEM,MAAMS,iCAAAA,GAAoCX,KAE9CC,CAAAA,GAAAA,KAAQ;AACT,EAAA,MAAMC,YAAAA,GAAeD,IAAIF,mBAAmB,CAAA;AAC5C,EAAA,OAAOG,YAAAA,CAAaU,OAAOC,2BAA2B,CAAA;AACxD,CAAC;AAEM,MAAMC,4BAAAA,GAA+Bd,KACzCC,CAAAA,GAAAA,KAAQ;AACP,EAAA,MAAMC,YAAAA,GAAeD,IAAIF,mBAAmB,CAAA;AAC5C,EAAA,OAAOG,YAAAA,CAAaU,OAAOG,sBAAsB,CAAA;AACnD,CACF;AAEO,MAAMC,wCAAAA,GAA2ChB,KAErDC,CAAAA,GAAAA,KAAQ;AACT,EAAA,MAAMC,YAAAA,GAAeD,IAAIU,iCAAiC,CAAA;AAC1D,EAAA,OAAOM,2BAA2Bf,YAAY,CAAA;AAChD,CAAC;AAEM,MAAMgB,mCAAAA,GAAsClB,KAChDC,CAAAA,GAAAA,KAAQ;AACP,EAAA,MAAMC,YAAAA,GAAeD,IAAIa,4BAA4B,CAAA;AACrD,EAAA,OAAOG,2BAA2Bf,YAAY,CAAA;AAChD,CACF;AAEO,MAAMiB,2BAAAA,GAA8BnB,KAAyBC,CAAAA,GAAAA,KAAQ;AAC1E,EAAA,MAAMC,YAAAA,GAAeD,IAAIM,oBAAoB,CAAA;AAC7C,EAAA,OAAOU,2BAA2Bf,YAAY,CAAA;AAChD,CAAC;AAEM,MAAMkB,wBAAAA,GAA2BpB,KAA6BC,CAAAA,GAAAA,KAAQ;AAC3E,EAAA,MAAMC,YAAAA,GAAeD,IAAIM,oBAAoB,CAAA;AAC7C,EAAA,OAAOc,wBAAwBnB,YAAY,CAAA;AAC7C,CAAC;;;;"}
1
+ {"version":3,"file":"transactionsAtom.js","sources":["../../../src/transactions/state/transactionsAtom.ts"],"sourcesContent":["import type {\n BatchTransactionItem,\n StandaloneTransactionItem,\n TransactionItem,\n TransactionItemSwap,\n} from \"../types\";\nimport { atomWithStorage, createJSONStorage } from \"jotai/utils\";\nimport { atom } from \"jotai\";\n\nimport {\n extractPendingTransactions,\n extractSwapTransactions,\n isStandaloneTransactionItem,\n isBatchTransactionItem,\n} from \"../utils\";\nimport { serialize, deserialize } from \"wagmi\";\nimport type { Address } from \"viem\";\nimport { accountAtom } from \"@/lib/web3/wagmi/external\";\nimport { emptyArray } from \"@/lib/constants\";\nimport { LOCAL_STORAGE_PREFIX } from \"@/lib/constants/storage\";\n\n// Record<TxHash/CallsId, TransactionItem>\nexport type TransactionsMap = Record<string, TransactionItem>;\n\nexport type TransactionsState = Record<Address, TransactionsMap>;\n\nexport const transactionsAtom = atomWithStorage<TransactionsState>(\n `${LOCAL_STORAGE_PREFIX}_transactions`,\n {},\n createJSONStorage(() => localStorage, {\n // serialize/deserialize to handle bigint values\n replacer: (_, value) => serialize(value),\n reviver: (_, value) => {\n return typeof value === \"string\" ? deserialize(value) : value;\n },\n }),\n { getOnInit: true }\n);\n\nexport const allTransactionsAtom = atom<TransactionItem[]>((get) => {\n const transactions = get(transactionsAtom);\n return Object.values(transactions).flatMap((txMap) => Object.values(txMap));\n});\n\nexport const userTransactionsAtom = atom<TransactionItem[]>((get) => {\n const account = get(accountAtom);\n if (!account) return emptyArray;\n const transactions = get(transactionsAtom)[account];\n if (!transactions) return emptyArray;\n return Object.values(transactions);\n});\n\nexport const allStandaloneTransactionItemsAtom = atom<\n StandaloneTransactionItem[]\n>((get) => {\n const transactions = get(allTransactionsAtom);\n return transactions.filter(isStandaloneTransactionItem);\n});\n\nexport const allBatchTransactionItemsAtom = atom<BatchTransactionItem[]>(\n (get) => {\n const transactions = get(allTransactionsAtom);\n return transactions.filter(isBatchTransactionItem);\n }\n);\n\nexport const allPendingStandaloneTransactionItemsAtom = atom<\n StandaloneTransactionItem[]\n>((get) => {\n const transactions = get(allStandaloneTransactionItemsAtom);\n return extractPendingTransactions(transactions);\n});\n\nexport const allPendingBatchTransactionItemsAtom = atom<BatchTransactionItem[]>(\n (get) => {\n const transactions = get(allBatchTransactionItemsAtom);\n return extractPendingTransactions(transactions);\n }\n);\n\nexport const userPendingTransactionsAtom = atom<TransactionItem[]>((get) => {\n const transactions = get(userTransactionsAtom);\n return extractPendingTransactions(transactions);\n});\n\nexport const userSwapTransactionsAtom = atom<TransactionItemSwap[]>((get) => {\n const transactions = get(userTransactionsAtom);\n return extractSwapTransactions(transactions);\n});\n"],"names":["transactionsAtom","atomWithStorage","LOCAL_STORAGE_PREFIX","createJSONStorage","localStorage","replacer","_","value","serialize","reviver","deserialize","getOnInit","allTransactionsAtom","atom","get","transactions","Object","values","flatMap","txMap","userTransactionsAtom","account","accountAtom","emptyArray","allStandaloneTransactionItemsAtom","filter","isStandaloneTransactionItem","allBatchTransactionItemsAtom","isBatchTransactionItem","allPendingStandaloneTransactionItemsAtom","extractPendingTransactions","allPendingBatchTransactionItemsAtom","userPendingTransactionsAtom","userSwapTransactionsAtom","extractSwapTransactions"],"mappings":";;;;;;;;AA0BO,MAAMA,gBAAAA,GAAmBC,gBAC9B,CAAA,EAAGC,oBAAoB,iBACvB,EAAC,EACDC,iBAAAA,CAAkB,MAAMC,YAAAA,EAAc;AAAA;AAAA,EAEpCC,QAAAA,EAAUA,CAACC,CAAAA,EAAGC,KAAAA,KAAUC,UAAUD,KAAK,CAAA;AAAA,EACvCE,OAAAA,EAASA,CAACH,CAAAA,EAAGC,KAAAA,KAAU;AACrB,IAAA,OAAO,OAAOA,KAAAA,KAAU,QAAA,GAAWG,WAAAA,CAAYH,KAAK,CAAA,GAAIA,KAAAA;AAAAA,EAC1D;AACF,CAAC,CAAA,EACD;AAAA,EAAEI,SAAAA,EAAW;AAAK,CACpB;AAEO,MAAMC,mBAAAA,GAAsBC,KAAyBC,CAAAA,GAAAA,KAAQ;AAClE,EAAA,MAAMC,YAAAA,GAAeD,IAAId,gBAAgB,CAAA;AACzC,EAAA,OAAOgB,MAAAA,CAAOC,OAAOF,YAAY,CAAA,CAAEG,QAASC,CAAAA,KAAAA,KAAUH,MAAAA,CAAOC,MAAAA,CAAOE,KAAK,CAAC,CAAA;AAC5E,CAAC;AAEM,MAAMC,oBAAAA,GAAuBP,KAAyBC,CAAAA,GAAAA,KAAQ;AACnE,EAAA,MAAMO,OAAAA,GAAUP,IAAIQ,WAAW,CAAA;AAC/B,EAAA,IAAI,CAACD,SAAS,OAAOE,UAAAA;AACrB,EAAA,MAAMR,YAAAA,GAAeD,GAAAA,CAAId,gBAAgB,CAAA,CAAEqB,OAAO,CAAA;AAClD,EAAA,IAAI,CAACN,cAAc,OAAOQ,UAAAA;AAC1B,EAAA,OAAOP,MAAAA,CAAOC,OAAOF,YAAY,CAAA;AACnC,CAAC;AAEM,MAAMS,iCAAAA,GAAoCX,KAE9CC,CAAAA,GAAAA,KAAQ;AACT,EAAA,MAAMC,YAAAA,GAAeD,IAAIF,mBAAmB,CAAA;AAC5C,EAAA,OAAOG,YAAAA,CAAaU,OAAOC,2BAA2B,CAAA;AACxD,CAAC;AAEM,MAAMC,4BAAAA,GAA+Bd,KACzCC,CAAAA,GAAAA,KAAQ;AACP,EAAA,MAAMC,YAAAA,GAAeD,IAAIF,mBAAmB,CAAA;AAC5C,EAAA,OAAOG,YAAAA,CAAaU,OAAOG,sBAAsB,CAAA;AACnD,CACF;AAEO,MAAMC,wCAAAA,GAA2ChB,KAErDC,CAAAA,GAAAA,KAAQ;AACT,EAAA,MAAMC,YAAAA,GAAeD,IAAIU,iCAAiC,CAAA;AAC1D,EAAA,OAAOM,2BAA2Bf,YAAY,CAAA;AAChD,CAAC;AAEM,MAAMgB,mCAAAA,GAAsClB,KAChDC,CAAAA,GAAAA,KAAQ;AACP,EAAA,MAAMC,YAAAA,GAAeD,IAAIa,4BAA4B,CAAA;AACrD,EAAA,OAAOG,2BAA2Bf,YAAY,CAAA;AAChD,CACF;AAEO,MAAMiB,2BAAAA,GAA8BnB,KAAyBC,CAAAA,GAAAA,KAAQ;AAC1E,EAAA,MAAMC,YAAAA,GAAeD,IAAIM,oBAAoB,CAAA;AAC7C,EAAA,OAAOU,2BAA2Bf,YAAY,CAAA;AAChD,CAAC;AAEM,MAAMkB,wBAAAA,GAA2BpB,KAA6BC,CAAAA,GAAAA,KAAQ;AAC3E,EAAA,MAAMC,YAAAA,GAAeD,IAAIM,oBAAoB,CAAA;AAC7C,EAAA,OAAOc,wBAAwBnB,YAAY,CAAA;AAC7C,CAAC;;;;"}
@@ -3,15 +3,11 @@ import { SupportedChainId } from '../lib/web3/wagmi/types';
3
3
  import { OrderData } from '@velora-dex/sdk';
4
4
  import { DeltaOrderToPost } from '@velora-dex/sdk/dist/methods/delta/postDeltaOrder';
5
5
  import { Address, Hash, Prettify, TransactionReceipt } from 'viem';
6
- import { Connector } from 'wagmi';
7
- import { safe } from 'wagmi/connectors';
8
- type ConnectorData = Pick<Connector, "type">;
9
6
  export type TransactionCommonData = {
10
7
  chainId: SupportedChainId;
11
8
  timestamp: number;
12
9
  account: Address;
13
10
  dropped: boolean;
14
- connectorData?: ConnectorData;
15
11
  };
16
12
  export interface StandaloneTransactionItemData extends TransactionCommonData {
17
13
  transactionHash: Hash;
@@ -91,11 +87,5 @@ export type TransactionItem = TransactionItemSwap | TransactionItemApprove | Tra
91
87
  export type MinTransactionItem = TransactionWithoutMeta<TransactionItem>;
92
88
  export type StandaloneTransactionItem = Prettify<Extract<TransactionItem, StandaloneTransactionItemData>>;
93
89
  export type BatchTransactionItem = Prettify<Extract<TransactionItem, BatchTransactionItemData>>;
94
- export type TransactionWithoutMeta<T> = T extends Pick<TransactionItem, "dropped" | "timestamp" | "account" | "connectorData"> ? Prettify<Omit<T, "dropped" | "timestamp" | "account" | "connectorData">> : T;
95
- export type GnosisSafeTransactionItem = Prettify<TransactionItem & {
96
- connectorData: Prettify<ConnectorData & {
97
- type: typeof safe.type;
98
- }>;
99
- }>;
100
- export {};
90
+ export type TransactionWithoutMeta<T> = T extends Pick<TransactionItem, "dropped" | "timestamp" | "account"> ? Prettify<Omit<T, "dropped" | "timestamp" | "account">> : T;
101
91
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/transactions/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/transactions/types.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- import { BatchTransactionItem, GnosisSafeTransactionItem, StandaloneTransactionItem, TransactionItem, TransactionItemSwap } from './types';
2
1
  import { Hash } from 'viem';
2
+ import { BatchTransactionItem, StandaloneTransactionItem, TransactionItem, TransactionItemSwap } from './types';
3
3
  export declare function isStandaloneTransactionItem(item: TransactionItem): item is StandaloneTransactionItem;
4
4
  export declare function isBatchTransactionItem(item: TransactionItem): item is BatchTransactionItem;
5
5
  export declare function extractPendingTransactions<T extends StandaloneTransactionItem | BatchTransactionItem>(transactions: T[]): T[];
@@ -8,5 +8,4 @@ export type TransactionItemSwapWithId = TransactionItemSwap & {
8
8
  id: Hash;
9
9
  };
10
10
  export declare function combineSwapTransactionItems<T extends TransactionItemSwap>(...txArrays: T[][]): TransactionItemSwapWithId[];
11
- export declare function isGnosisSafeTx(tx: TransactionItem): tx is GnosisSafeTransactionItem;
12
11
  //# sourceMappingURL=utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/transactions/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,oBAAoB,EACpB,yBAAyB,EACzB,yBAAyB,EACzB,eAAe,EACf,mBAAmB,EACpB,MAAM,SAAS,CAAC;AAEjB,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAEjC,wBAAgB,2BAA2B,CACzC,IAAI,EAAE,eAAe,GACpB,IAAI,IAAI,yBAAyB,CAEnC;AAED,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,eAAe,GACpB,IAAI,IAAI,oBAAoB,CAE9B;AAED,wBAAgB,0BAA0B,CACxC,CAAC,SAAS,yBAAyB,GAAG,oBAAoB,EAC1D,YAAY,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,CAQxB;AAED,wBAAgB,uBAAuB,CACrC,YAAY,EAAE,CAAC,yBAAyB,GAAG,oBAAoB,CAAC,EAAE,GACjE,mBAAmB,EAAE,CAEvB;AAID,MAAM,MAAM,yBAAyB,GAAG,mBAAmB,GAAG;IAAE,EAAE,EAAE,IAAI,CAAA;CAAE,CAAC;AAE3E,wBAAgB,2BAA2B,CAAC,CAAC,SAAS,mBAAmB,EACvE,GAAG,QAAQ,EAAE,CAAC,EAAE,EAAE,GACjB,yBAAyB,EAAE,CAiB7B;AAED,wBAAgB,cAAc,CAC5B,EAAE,EAAE,eAAe,GAClB,EAAE,IAAI,yBAAyB,CAEjC"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/transactions/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AACjC,OAAO,KAAK,EACV,oBAAoB,EACpB,yBAAyB,EACzB,eAAe,EACf,mBAAmB,EACpB,MAAM,SAAS,CAAC;AAEjB,wBAAgB,2BAA2B,CACzC,IAAI,EAAE,eAAe,GACpB,IAAI,IAAI,yBAAyB,CAEnC;AAED,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,eAAe,GACpB,IAAI,IAAI,oBAAoB,CAE9B;AAED,wBAAgB,0BAA0B,CACxC,CAAC,SAAS,yBAAyB,GAAG,oBAAoB,EAC1D,YAAY,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,CAQxB;AAED,wBAAgB,uBAAuB,CACrC,YAAY,EAAE,CAAC,yBAAyB,GAAG,oBAAoB,CAAC,EAAE,GACjE,mBAAmB,EAAE,CAEvB;AAID,MAAM,MAAM,yBAAyB,GAAG,mBAAmB,GAAG;IAAE,EAAE,EAAE,IAAI,CAAA;CAAE,CAAC;AAE3E,wBAAgB,2BAA2B,CAAC,CAAC,SAAS,mBAAmB,EACvE,GAAG,QAAQ,EAAE,CAAC,EAAE,EAAE,GACjB,yBAAyB,EAAE,CAiB7B"}
@@ -1,5 +1,3 @@
1
- import { isSafeConnector } from '../hooks/connectors/useIsGnosisSafeConnector.js';
2
-
3
1
  function isStandaloneTransactionItem(item) {
4
2
  return "transactionHash" in item;
5
3
  }
@@ -23,9 +21,6 @@ function combineSwapTransactionItems(...txArrays) {
23
21
  });
24
22
  return Object.values(map);
25
23
  }
26
- function isGnosisSafeTx(tx) {
27
- return !!tx.connectorData && isSafeConnector(tx.connectorData);
28
- }
29
24
 
30
- export { combineSwapTransactionItems, extractPendingTransactions, extractSwapTransactions, isBatchTransactionItem, isGnosisSafeTx, isStandaloneTransactionItem };
25
+ export { combineSwapTransactionItems, extractPendingTransactions, extractSwapTransactions, isBatchTransactionItem, isStandaloneTransactionItem };
31
26
  //# sourceMappingURL=utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sources":["../../src/transactions/utils.ts"],"sourcesContent":["import type {\n BatchTransactionItem,\n GnosisSafeTransactionItem,\n StandaloneTransactionItem,\n TransactionItem,\n TransactionItemSwap,\n} from \"./types\";\nimport { isSafeConnector } from \"@/hooks/connectors/useIsGnosisSafeConnector\";\nimport type { Hash } from \"viem\";\n\nexport function isStandaloneTransactionItem(\n item: TransactionItem\n): item is StandaloneTransactionItem {\n return \"transactionHash\" in item;\n}\n\nexport function isBatchTransactionItem(\n item: TransactionItem\n): item is BatchTransactionItem {\n return \"callsId\" in item;\n}\n\nexport function extractPendingTransactions<\n T extends StandaloneTransactionItem | BatchTransactionItem,\n>(transactions: T[]): T[] {\n return transactions.filter(\n (tx) =>\n !tx.dropped &&\n (isStandaloneTransactionItem(tx)\n ? !tx.receipt\n : !tx.callsStatus || tx.callsStatus === \"pending\")\n );\n}\n\nexport function extractSwapTransactions(\n transactions: (StandaloneTransactionItem | BatchTransactionItem)[]\n): TransactionItemSwap[] {\n return transactions.filter((tx) => tx.action === \"swap\");\n}\n\n// not all TransactionItemSwap have transactionHash\n// id will be either transactionHash (for standalone tx) or receipt.transactionHash (for batch tx)\nexport type TransactionItemSwapWithId = TransactionItemSwap & { id: Hash };\n\nexport function combineSwapTransactionItems<T extends TransactionItemSwap>(\n ...txArrays: T[][]\n): TransactionItemSwapWithId[] {\n const map: Record<Hash, TransactionItemSwapWithId> = {};\n\n txArrays.flat().forEach((item) => {\n const transactionHash = isStandaloneTransactionItem(item)\n ? item.transactionHash\n : item.receipt?.transactionHash;\n\n // we can't rely on callsId for batch swap tx as identifier if we have another source of truth\n // better to not show pending calls until we have transactionHash\n // otherwise it may lead to duplicate entries in the Activities list\n // when transaction appeared in the metabase but we still have pending call in the local storage\n if (transactionHash)\n map[transactionHash] = { ...item, id: transactionHash };\n });\n\n return Object.values(map);\n}\n\nexport function isGnosisSafeTx(\n tx: TransactionItem\n): tx is GnosisSafeTransactionItem {\n return !!tx.connectorData && isSafeConnector(tx.connectorData);\n}\n"],"names":["isStandaloneTransactionItem","item","isBatchTransactionItem","extractPendingTransactions","transactions","filter","tx","dropped","receipt","callsStatus","extractSwapTransactions","action","combineSwapTransactionItems","txArrays","map","flat","forEach","transactionHash","id","Object","values","isGnosisSafeTx","connectorData","isSafeConnector"],"mappings":";;AAUO,SAASA,4BACdC,IAAAA,EACmC;AACnC,EAAA,OAAO,iBAAA,IAAqBA,IAAAA;AAC9B;AAEO,SAASC,uBACdD,IAAAA,EAC8B;AAC9B,EAAA,OAAO,SAAA,IAAaA,IAAAA;AACtB;AAEO,SAASE,2BAEdC,YAAAA,EAAwB;AACxB,EAAA,OAAOA,aAAaC,MAAAA,CACjBC,CAAAA,EAAAA,KACC,CAACA,EAAAA,CAAGC,YACHP,2BAAAA,CAA4BM,EAAE,CAAA,GAC3B,CAACA,GAAGE,OAAAA,GACJ,CAACF,GAAGG,WAAAA,IAAeH,EAAAA,CAAGG,gBAAgB,SAAA,CAC9C,CAAA;AACF;AAEO,SAASC,wBACdN,YAAAA,EACuB;AACvB,EAAA,OAAOA,YAAAA,CAAaC,MAAAA,CAAQC,CAAAA,EAAAA,KAAOA,EAAAA,CAAGK,WAAW,MAAM,CAAA;AACzD;AAMO,SAASC,+BACXC,QAAAA,EAC0B;AAC7B,EAAA,MAAMC,MAA+C,EAAC;AAEtDD,EAAAA,QAAAA,CAASE,IAAAA,EAAK,CAAEC,OAAAA,CAASf,CAAAA,IAAAA,KAAS;AAChC,IAAA,MAAMgB,kBAAkBjB,2BAAAA,CAA4BC,IAAI,IACpDA,IAAAA,CAAKgB,eAAAA,GACLhB,KAAKO,OAAAA,EAASS,eAAAA;AAMlB,IAAA,IAAIA,eAAAA,EACFH,GAAAA,CAAIG,eAAe,CAAA,GAAI;AAAA,MAAE,GAAGhB,IAAAA;AAAAA,MAAMiB,EAAAA,EAAID;AAAAA,KAAgB;AAAA,EAC1D,CAAC,CAAA;AAED,EAAA,OAAOE,MAAAA,CAAOC,OAAON,GAAG,CAAA;AAC1B;AAEO,SAASO,eACdf,EAAAA,EACiC;AACjC,EAAA,OAAO,CAAC,CAACA,EAAAA,CAAGgB,aAAAA,IAAiBC,eAAAA,CAAgBjB,GAAGgB,aAAa,CAAA;AAC/D;;;;"}
1
+ {"version":3,"file":"utils.js","sources":["../../src/transactions/utils.ts"],"sourcesContent":["import type { Hash } from \"viem\";\nimport type {\n BatchTransactionItem,\n StandaloneTransactionItem,\n TransactionItem,\n TransactionItemSwap,\n} from \"./types\";\n\nexport function isStandaloneTransactionItem(\n item: TransactionItem\n): item is StandaloneTransactionItem {\n return \"transactionHash\" in item;\n}\n\nexport function isBatchTransactionItem(\n item: TransactionItem\n): item is BatchTransactionItem {\n return \"callsId\" in item;\n}\n\nexport function extractPendingTransactions<\n T extends StandaloneTransactionItem | BatchTransactionItem,\n>(transactions: T[]): T[] {\n return transactions.filter(\n (tx) =>\n !tx.dropped &&\n (isStandaloneTransactionItem(tx)\n ? !tx.receipt\n : !tx.callsStatus || tx.callsStatus === \"pending\")\n );\n}\n\nexport function extractSwapTransactions(\n transactions: (StandaloneTransactionItem | BatchTransactionItem)[]\n): TransactionItemSwap[] {\n return transactions.filter((tx) => tx.action === \"swap\");\n}\n\n// not all TransactionItemSwap have transactionHash\n// id will be either transactionHash (for standalone tx) or receipt.transactionHash (for batch tx)\nexport type TransactionItemSwapWithId = TransactionItemSwap & { id: Hash };\n\nexport function combineSwapTransactionItems<T extends TransactionItemSwap>(\n ...txArrays: T[][]\n): TransactionItemSwapWithId[] {\n const map: Record<Hash, TransactionItemSwapWithId> = {};\n\n txArrays.flat().forEach((item) => {\n const transactionHash = isStandaloneTransactionItem(item)\n ? item.transactionHash\n : item.receipt?.transactionHash;\n\n // we can't rely on callsId for batch swap tx as identifier if we have another source of truth\n // better to not show pending calls until we have transactionHash\n // otherwise it may lead to duplicate entries in the Activities list\n // when transaction appeared in the metabase but we still have pending call in the local storage\n if (transactionHash)\n map[transactionHash] = { ...item, id: transactionHash };\n });\n\n return Object.values(map);\n}\n"],"names":["isStandaloneTransactionItem","item","isBatchTransactionItem","extractPendingTransactions","transactions","filter","tx","dropped","receipt","callsStatus","extractSwapTransactions","action","combineSwapTransactionItems","txArrays","map","flat","forEach","transactionHash","id","Object","values"],"mappings":"AAQO,SAASA,4BACdC,IAAAA,EACmC;AACnC,EAAA,OAAO,iBAAA,IAAqBA,IAAAA;AAC9B;AAEO,SAASC,uBACdD,IAAAA,EAC8B;AAC9B,EAAA,OAAO,SAAA,IAAaA,IAAAA;AACtB;AAEO,SAASE,2BAEdC,YAAAA,EAAwB;AACxB,EAAA,OAAOA,aAAaC,MAAAA,CACjBC,CAAAA,EAAAA,KACC,CAACA,EAAAA,CAAGC,YACHP,2BAAAA,CAA4BM,EAAE,CAAA,GAC3B,CAACA,GAAGE,OAAAA,GACJ,CAACF,GAAGG,WAAAA,IAAeH,EAAAA,CAAGG,gBAAgB,SAAA,CAC9C,CAAA;AACF;AAEO,SAASC,wBACdN,YAAAA,EACuB;AACvB,EAAA,OAAOA,YAAAA,CAAaC,MAAAA,CAAQC,CAAAA,EAAAA,KAAOA,EAAAA,CAAGK,WAAW,MAAM,CAAA;AACzD;AAMO,SAASC,+BACXC,QAAAA,EAC0B;AAC7B,EAAA,MAAMC,MAA+C,EAAC;AAEtDD,EAAAA,QAAAA,CAASE,IAAAA,EAAK,CAAEC,OAAAA,CAASf,CAAAA,IAAAA,KAAS;AAChC,IAAA,MAAMgB,kBAAkBjB,2BAAAA,CAA4BC,IAAI,IACpDA,IAAAA,CAAKgB,eAAAA,GACLhB,KAAKO,OAAAA,EAASS,eAAAA;AAMlB,IAAA,IAAIA,eAAAA,EACFH,GAAAA,CAAIG,eAAe,CAAA,GAAI;AAAA,MAAE,GAAGhB,IAAAA;AAAAA,MAAMiB,EAAAA,EAAID;AAAAA,KAAgB;AAAA,EAC1D,CAAC,CAAA;AAED,EAAA,OAAOE,MAAAA,CAAOC,OAAON,GAAG,CAAA;AAC1B;;;;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@velora-dex/widget",
3
- "version": "0.3.11-dev.6",
3
+ "version": "0.3.11",
4
4
  "license": "MIT",
5
5
  "type": "module",
6
6
  "files": [
@@ -31,8 +31,6 @@
31
31
  },
32
32
  "devDependencies": {
33
33
  "@eslint/js": "^9.32.0",
34
- "@safe-global/safe-apps-provider": "^0.18.6",
35
- "@safe-global/safe-apps-sdk": "^9.1.0",
36
34
  "@tailwindcss/vite": "^4.1.11",
37
35
  "@tanstack/eslint-plugin-query": "^5.83.1",
38
36
  "@tanstack/react-query": "^5.90.12",
@@ -1,2 +0,0 @@
1
- export declare const EXTERNAL_CONNECTOR_ID = "external_provider_from_App";
2
- //# sourceMappingURL=constants.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../src/components/web3/ConnectExternalProvider/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,qBAAqB,+BAA+B,CAAC"}
@@ -1,4 +0,0 @@
1
- const EXTERNAL_CONNECTOR_ID = "external_provider_from_App";
2
-
3
- export { EXTERNAL_CONNECTOR_ID };
4
- //# sourceMappingURL=constants.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"constants.js","sources":["../../../../src/components/web3/ConnectExternalProvider/constants.ts"],"sourcesContent":["export const EXTERNAL_CONNECTOR_ID = \"external_provider_from_App\";\n"],"names":["EXTERNAL_CONNECTOR_ID"],"mappings":"AAAO,MAAMA,qBAAAA,GAAwB;;;;"}
@@ -1,8 +0,0 @@
1
- import { Connector } from '@wagmi/core';
2
- import { injected } from 'wagmi/connectors';
3
- import { EXTERNAL_CONNECTOR_ID } from './constants';
4
- export declare function isExternalConnector<T extends Pick<Connector, "type" | "id">>(connector: T): connector is T & {
5
- id: typeof EXTERNAL_CONNECTOR_ID;
6
- type: typeof injected.type;
7
- };
8
- //# sourceMappingURL=utils.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../src/components/web3/ConnectExternalProvider/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAEpD,wBAAgB,mBAAmB,CAAC,CAAC,SAAS,IAAI,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC,EAC1E,SAAS,EAAE,CAAC,GACX,SAAS,IAAI,CAAC,GAAG;IAClB,EAAE,EAAE,OAAO,qBAAqB,CAAC;IACjC,IAAI,EAAE,OAAO,QAAQ,CAAC,IAAI,CAAC;CAC5B,CAIA"}
@@ -1,9 +0,0 @@
1
- import { injected } from 'wagmi/connectors';
2
- import { EXTERNAL_CONNECTOR_ID } from './constants.js';
3
-
4
- function isExternalConnector(connector) {
5
- return connector.type === injected.type && connector.id === EXTERNAL_CONNECTOR_ID;
6
- }
7
-
8
- export { isExternalConnector };
9
- //# sourceMappingURL=utils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.js","sources":["../../../../src/components/web3/ConnectExternalProvider/utils.ts"],"sourcesContent":["import type { Connector } from \"@wagmi/core\";\nimport { injected } from \"wagmi/connectors\";\nimport { EXTERNAL_CONNECTOR_ID } from \"./constants\";\n\nexport function isExternalConnector<T extends Pick<Connector, \"type\" | \"id\">>(\n connector: T\n): connector is T & {\n id: typeof EXTERNAL_CONNECTOR_ID;\n type: typeof injected.type;\n} {\n return (\n connector.type === injected.type && connector.id === EXTERNAL_CONNECTOR_ID\n );\n}\n"],"names":["isExternalConnector","connector","type","injected","id","EXTERNAL_CONNECTOR_ID"],"mappings":";;;AAIO,SAASA,oBACdC,SAAAA,EAIA;AACA,EAAA,OACEA,SAAAA,CAAUC,IAAAA,KAASC,QAAAA,CAASD,IAAAA,IAAQD,UAAUG,EAAAA,KAAOC,qBAAAA;AAEzD;;;;"}
@@ -1,23 +0,0 @@
1
- import { SafeAppProvider } from '@safe-global/safe-apps-provider';
2
- import { Opts, SafeInfo } from '@safe-global/safe-apps-sdk';
3
- type ConnectorUpdate = {
4
- provider: SafeAppProvider;
5
- chainId: number;
6
- account: string;
7
- };
8
- declare class SafeAppConnector {
9
- private readonly sdk;
10
- private safe?;
11
- private provider?;
12
- constructor(opts?: Opts);
13
- emit(event: string, ...args: unknown[]): void;
14
- activate(): Promise<ConnectorUpdate>;
15
- getSafeInfo(): Promise<SafeInfo>;
16
- getProvider(): Promise<SafeAppProvider>;
17
- getChainId(): Promise<number>;
18
- getAccount(): Promise<string>;
19
- deactivate(): void;
20
- isSafeApp(): Promise<boolean>;
21
- }
22
- export { SafeAppConnector };
23
- //# sourceMappingURL=SafeConnector.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"SafeConnector.d.ts","sourceRoot":"","sources":["../../../src/configurator/Safe/SafeConnector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAoB,EAClB,KAAK,IAAI,EACT,KAAK,QAAQ,EACd,MAAM,4BAA4B,CAAC;AAEpC,KAAK,eAAe,GAAG;IACrB,QAAQ,EAAE,eAAe,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAGF,cAAM,gBAAgB;IACpB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAc;IAClC,OAAO,CAAC,IAAI,CAAC,CAAW;IACxB,OAAO,CAAC,QAAQ,CAAC,CAAkB;gBAEvB,IAAI,CAAC,EAAE,IAAI;IAIvB,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI;IAIvC,QAAQ,IAAI,OAAO,CAAC,eAAe,CAAC;IAoB7B,WAAW,IAAI,OAAO,CAAC,QAAQ,CAAC;IAOhC,WAAW,IAAI,OAAO,CAAC,eAAe,CAAC;IASvC,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC;IAK7B,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC;IAKnC,UAAU,IAAI,IAAI;IAIZ,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC;CAa3C;AAED,OAAO,EAAE,gBAAgB,EAAE,CAAC"}
@@ -1,7 +0,0 @@
1
- import { SafeAppConnector } from './SafeConnector';
2
- import { SafeAppProvider } from '@safe-global/safe-apps-provider';
3
- export declare function useSafeConnector(): {
4
- connector: SafeAppConnector | null;
5
- provider: SafeAppProvider | null;
6
- };
7
- //# sourceMappingURL=useSafeConnector.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useSafeConnector.d.ts","sourceRoot":"","sources":["../../../src/configurator/Safe/useSafeConnector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAGvE,wBAAgB,gBAAgB,IAAI;IAClC,SAAS,EAAE,gBAAgB,GAAG,IAAI,CAAC;IACnC,QAAQ,EAAE,eAAe,GAAG,IAAI,CAAC;CAClC,CAqBA"}
@@ -1,2 +0,0 @@
1
- export declare const isInIframe: boolean;
2
- //# sourceMappingURL=isInIframe.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"isInIframe.d.ts","sourceRoot":"","sources":["../../../../src/lib/web3/wagmi/isInIframe.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,UAAU,SACqC,CAAC"}
@@ -1,4 +0,0 @@
1
- const isInIframe = typeof window !== "undefined" && window?.parent !== window;
2
-
3
- export { isInIframe };
4
- //# sourceMappingURL=isInIframe.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"isInIframe.js","sources":["../../../../src/lib/web3/wagmi/isInIframe.ts"],"sourcesContent":["export const isInIframe =\n typeof window !== \"undefined\" && window?.parent !== window;\n"],"names":["isInIframe","window","parent"],"mappings":"AAAO,MAAMA,UAAAA,GACX,OAAOC,MAAAA,KAAW,WAAA,IAAeA,QAAQC,MAAAA,KAAWD;;;;"}
@@ -1,7 +0,0 @@
1
- import { Hash } from 'viem';
2
- import { TransactionItem } from './types';
3
- export declare function getStandaloneTxHash({ transactionHash, }: {
4
- transactionHash?: Hash;
5
- }): Hash | null;
6
- export declare function getTxHash(tx: TransactionItem): Hash | null;
7
- //# sourceMappingURL=hash.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"hash.d.ts","sourceRoot":"","sources":["../../src/transactions/hash.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AACjC,OAAO,KAAK,EAA6B,eAAe,EAAE,MAAM,SAAS,CAAC;AAa1E,wBAAgB,mBAAmB,CAAC,EAClC,eAAe,GAChB,EAAE;IACD,eAAe,CAAC,EAAE,IAAI,CAAC;CACxB,GAAG,IAAI,GAAG,IAAI,CAKd;AAED,wBAAgB,SAAS,CAAC,EAAE,EAAE,eAAe,GAAG,IAAI,GAAG,IAAI,CAgB1D"}
@@ -1,35 +0,0 @@
1
- import { jotaiStore } from '../core/store.js';
2
- import { isBatchTransactionItem } from './utils.js';
3
- import { allStandaloneTransactionItemsAtom } from './state/transactionsAtom.js';
4
- import { isSafeConnector } from '../hooks/connectors/useIsGnosisSafeConnector.js';
5
-
6
- function findStandaloneTx({
7
- transactionHash
8
- }) {
9
- return jotaiStore.get(allStandaloneTransactionItemsAtom).find((tx) => tx.transactionHash === transactionHash);
10
- }
11
- function getStandaloneTxHash({
12
- transactionHash
13
- }) {
14
- if (!transactionHash) return null;
15
- const tx = findStandaloneTx({
16
- transactionHash
17
- });
18
- if (!tx) return null;
19
- return getTxHash(tx);
20
- }
21
- function getTxHash(tx) {
22
- if (tx.receipt?.transactionHash) {
23
- return tx.receipt.transactionHash;
24
- }
25
- if (isBatchTransactionItem(tx)) {
26
- return tx.receipt?.transactionHash || null;
27
- }
28
- if (tx.connectorData && isSafeConnector(tx.connectorData)) {
29
- return tx.receipt?.transactionHash || null;
30
- }
31
- return tx.transactionHash;
32
- }
33
-
34
- export { getStandaloneTxHash, getTxHash };
35
- //# sourceMappingURL=hash.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"hash.js","sources":["../../src/transactions/hash.ts"],"sourcesContent":["import { jotaiStore } from \"@/core/store\";\nimport type { Hash } from \"viem\";\nimport type { StandaloneTransactionItem, TransactionItem } from \"./types\";\nimport { isBatchTransactionItem } from \"./utils\";\nimport { allStandaloneTransactionItemsAtom } from \"./state/transactionsAtom\";\nimport { isSafeConnector } from \"@/hooks/connectors/useIsGnosisSafeConnector\";\n\nfunction findStandaloneTx({\n transactionHash,\n}: Pick<StandaloneTransactionItem, \"transactionHash\">) {\n return jotaiStore\n .get(allStandaloneTransactionItemsAtom)\n .find((tx) => tx.transactionHash === transactionHash);\n}\n\nexport function getStandaloneTxHash({\n transactionHash,\n}: {\n transactionHash?: Hash;\n}): Hash | null {\n if (!transactionHash) return null;\n const tx = findStandaloneTx({ transactionHash });\n if (!tx) return null;\n return getTxHash(tx);\n}\n\nexport function getTxHash(tx: TransactionItem): Hash | null {\n if (tx.receipt?.transactionHash) {\n // if tx is mined, receipt is always the source of truth for the transaction hash\n return tx.receipt.transactionHash;\n }\n if (isBatchTransactionItem(tx)) {\n // for batch transactions, we have the real transaction hash in the receipt when the batch is mined\n return tx.receipt?.transactionHash || null;\n }\n if (tx.connectorData && isSafeConnector(tx.connectorData)) {\n // for Safe transactions sent through Safe iframe provider,\n // we don't have the real transaction hash until the transaction is mined\n return tx.receipt?.transactionHash || null;\n }\n\n return tx.transactionHash;\n}\n"],"names":["findStandaloneTx","transactionHash","jotaiStore","get","allStandaloneTransactionItemsAtom","find","tx","getStandaloneTxHash","getTxHash","receipt","isBatchTransactionItem","connectorData","isSafeConnector"],"mappings":";;;;;AAOA,SAASA,gBAAAA,CAAiB;AAAA,EACxBC;AACkD,CAAA,EAAG;AACrD,EAAA,OAAOC,UAAAA,CACJC,IAAIC,iCAAiC,CAAA,CACrCC,KAAMC,CAAAA,EAAAA,KAAOA,EAAAA,CAAGL,oBAAoBA,eAAe,CAAA;AACxD;AAEO,SAASM,mBAAAA,CAAoB;AAAA,EAClCN;AAGF,CAAA,EAAgB;AACd,EAAA,IAAI,CAACA,iBAAiB,OAAO,IAAA;AAC7B,EAAA,MAAMK,KAAKN,gBAAAA,CAAiB;AAAA,IAAEC;AAAAA,GAAiB,CAAA;AAC/C,EAAA,IAAI,CAACK,IAAI,OAAO,IAAA;AAChB,EAAA,OAAOE,UAAUF,EAAE,CAAA;AACrB;AAEO,SAASE,UAAUF,EAAAA,EAAkC;AAC1D,EAAA,IAAIA,EAAAA,CAAGG,SAASR,eAAAA,EAAiB;AAE/B,IAAA,OAAOK,GAAGG,OAAAA,CAAQR,eAAAA;AAAAA,EACpB;AACA,EAAA,IAAIS,sBAAAA,CAAuBJ,EAAE,CAAA,EAAG;AAE9B,IAAA,OAAOA,EAAAA,CAAGG,SAASR,eAAAA,IAAmB,IAAA;AAAA,EACxC;AACA,EAAA,IAAIK,EAAAA,CAAGK,aAAAA,IAAiBC,eAAAA,CAAgBN,EAAAA,CAAGK,aAAa,CAAA,EAAG;AAGzD,IAAA,OAAOL,EAAAA,CAAGG,SAASR,eAAAA,IAAmB,IAAA;AAAA,EACxC;AAEA,EAAA,OAAOK,EAAAA,CAAGL,eAAAA;AACZ;;;;"}