@tonconnect/sdk 2.0.6 → 2.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +81 -9
- package/dist/tonconnect-sdk.min.js +1 -1
- package/dist/tonconnect-sdk.min.js.map +1 -1
- package/lib/cjs/index.cjs +1613 -0
- package/lib/cjs/index.cjs.map +1 -0
- package/lib/esm/index.mjs +1583 -0
- package/lib/esm/index.mjs.map +1 -0
- package/lib/types/index.d.ts +597 -8
- package/package.json +15 -15
- package/lib/cjs/errors/address/index.js +0 -6
- package/lib/cjs/errors/address/index.js.map +0 -1
- package/lib/cjs/errors/address/wrong-address.error.js +0 -15
- package/lib/cjs/errors/address/wrong-address.error.js.map +0 -1
- package/lib/cjs/errors/binary/index.js +0 -6
- package/lib/cjs/errors/binary/index.js.map +0 -1
- package/lib/cjs/errors/binary/parse-hex.error.js +0 -15
- package/lib/cjs/errors/binary/parse-hex.error.js.map +0 -1
- package/lib/cjs/errors/dapp/dapp-metadata.error.js +0 -15
- package/lib/cjs/errors/dapp/dapp-metadata.error.js.map +0 -1
- package/lib/cjs/errors/index.js +0 -28
- package/lib/cjs/errors/index.js.map +0 -1
- package/lib/cjs/errors/protocol/events/connect/index.js +0 -6
- package/lib/cjs/errors/protocol/events/connect/index.js.map +0 -1
- package/lib/cjs/errors/protocol/events/connect/manifest-content-error.error.js +0 -16
- package/lib/cjs/errors/protocol/events/connect/manifest-content-error.error.js.map +0 -1
- package/lib/cjs/errors/protocol/events/connect/manifest-not-found.error.js +0 -16
- package/lib/cjs/errors/protocol/events/connect/manifest-not-found.error.js.map +0 -1
- package/lib/cjs/errors/protocol/events/connect/user-rejects.error.js +0 -15
- package/lib/cjs/errors/protocol/events/connect/user-rejects.error.js.map +0 -1
- package/lib/cjs/errors/protocol/events/index.js +0 -18
- package/lib/cjs/errors/protocol/events/index.js.map +0 -1
- package/lib/cjs/errors/protocol/index.js +0 -19
- package/lib/cjs/errors/protocol/index.js.map +0 -1
- package/lib/cjs/errors/protocol/responses/bad-request.error.js +0 -15
- package/lib/cjs/errors/protocol/responses/bad-request.error.js.map +0 -1
- package/lib/cjs/errors/protocol/responses/index.js +0 -8
- package/lib/cjs/errors/protocol/responses/index.js.map +0 -1
- package/lib/cjs/errors/protocol/responses/unknown-app.error.js +0 -15
- package/lib/cjs/errors/protocol/responses/unknown-app.error.js.map +0 -1
- package/lib/cjs/errors/storage/index.js +0 -6
- package/lib/cjs/errors/storage/index.js.map +0 -1
- package/lib/cjs/errors/storage/localstorage-not-found.error.js +0 -15
- package/lib/cjs/errors/storage/localstorage-not-found.error.js.map +0 -1
- package/lib/cjs/errors/ton-connect.error.js +0 -18
- package/lib/cjs/errors/ton-connect.error.js.map +0 -1
- package/lib/cjs/errors/unknown.error.js +0 -15
- package/lib/cjs/errors/unknown.error.js.map +0 -1
- package/lib/cjs/errors/wallet/index.js +0 -10
- package/lib/cjs/errors/wallet/index.js.map +0 -1
- package/lib/cjs/errors/wallet/wallet-already-connected.error.js +0 -15
- package/lib/cjs/errors/wallet/wallet-already-connected.error.js.map +0 -1
- package/lib/cjs/errors/wallet/wallet-not-connected.error.js +0 -15
- package/lib/cjs/errors/wallet/wallet-not-connected.error.js.map +0 -1
- package/lib/cjs/errors/wallet/wallet-not-injected.error.js +0 -15
- package/lib/cjs/errors/wallet/wallet-not-injected.error.js.map +0 -1
- package/lib/cjs/errors/wallet/wallet-not-support-feature.error.js +0 -15
- package/lib/cjs/errors/wallet/wallet-not-support-feature.error.js.map +0 -1
- package/lib/cjs/errors/wallets-manager/fetch-wallets.error.js +0 -15
- package/lib/cjs/errors/wallets-manager/fetch-wallets.error.js.map +0 -1
- package/lib/cjs/errors/wallets-manager/index.js +0 -6
- package/lib/cjs/errors/wallets-manager/index.js.map +0 -1
- package/lib/cjs/index.js +0 -27
- package/lib/cjs/index.js.map +0 -1
- package/lib/cjs/models/dapp/dapp-metadata.js +0 -3
- package/lib/cjs/models/dapp/dapp-metadata.js.map +0 -1
- package/lib/cjs/models/index.js +0 -19
- package/lib/cjs/models/index.js.map +0 -1
- package/lib/cjs/models/methods/connect/connect-additional-request.js +0 -3
- package/lib/cjs/models/methods/connect/connect-additional-request.js.map +0 -1
- package/lib/cjs/models/methods/connect/index.js +0 -3
- package/lib/cjs/models/methods/connect/index.js.map +0 -1
- package/lib/cjs/models/methods/index.js +0 -19
- package/lib/cjs/models/methods/index.js.map +0 -1
- package/lib/cjs/models/methods/send-transaction/index.js +0 -3
- package/lib/cjs/models/methods/send-transaction/index.js.map +0 -1
- package/lib/cjs/models/methods/send-transaction/send-transaction-request.js +0 -3
- package/lib/cjs/models/methods/send-transaction/send-transaction-request.js.map +0 -1
- package/lib/cjs/models/methods/send-transaction/send-transaction-response.js +0 -3
- package/lib/cjs/models/methods/send-transaction/send-transaction-response.js.map +0 -1
- package/lib/cjs/models/ton-connect-options.js +0 -3
- package/lib/cjs/models/ton-connect-options.js.map +0 -1
- package/lib/cjs/models/wallet/account.js +0 -3
- package/lib/cjs/models/wallet/account.js.map +0 -1
- package/lib/cjs/models/wallet/index.js +0 -6
- package/lib/cjs/models/wallet/index.js.map +0 -1
- package/lib/cjs/models/wallet/wallet-connection-source.js +0 -8
- package/lib/cjs/models/wallet/wallet-connection-source.js.map +0 -1
- package/lib/cjs/models/wallet/wallet-info.js +0 -8
- package/lib/cjs/models/wallet/wallet-info.js.map +0 -1
- package/lib/cjs/models/wallet/wallet.js +0 -3
- package/lib/cjs/models/wallet/wallet.js.map +0 -1
- package/lib/cjs/parsers/connect-errors-parser.js +0 -27
- package/lib/cjs/parsers/connect-errors-parser.js.map +0 -1
- package/lib/cjs/parsers/rpc-parser.js +0 -10
- package/lib/cjs/parsers/rpc-parser.js.map +0 -1
- package/lib/cjs/parsers/send-transaction-parser.js +0 -35
- package/lib/cjs/parsers/send-transaction-parser.js.map +0 -1
- package/lib/cjs/provider/bridge/bridge-gateway.js +0 -110
- package/lib/cjs/provider/bridge/bridge-gateway.js.map +0 -1
- package/lib/cjs/provider/bridge/bridge-provider.js +0 -147
- package/lib/cjs/provider/bridge/bridge-provider.js.map +0 -1
- package/lib/cjs/provider/bridge/models/bridge-connection.js +0 -3
- package/lib/cjs/provider/bridge/models/bridge-connection.js.map +0 -1
- package/lib/cjs/provider/bridge/models/bridge-incomming-message.js +0 -3
- package/lib/cjs/provider/bridge/models/bridge-incomming-message.js.map +0 -1
- package/lib/cjs/provider/bridge/models/bridge-session-raw.js +0 -3
- package/lib/cjs/provider/bridge/models/bridge-session-raw.js.map +0 -1
- package/lib/cjs/provider/bridge/models/bridge-session.js +0 -3
- package/lib/cjs/provider/bridge/models/bridge-session.js.map +0 -1
- package/lib/cjs/provider/injected/injected-provider.js +0 -143
- package/lib/cjs/provider/injected/injected-provider.js.map +0 -1
- package/lib/cjs/provider/injected/models/injected-wallet-api.js +0 -3
- package/lib/cjs/provider/injected/models/injected-wallet-api.js.map +0 -1
- package/lib/cjs/provider/provider.js +0 -3
- package/lib/cjs/provider/provider.js.map +0 -1
- package/lib/cjs/resources/protocol.js +0 -5
- package/lib/cjs/resources/protocol.js.map +0 -1
- package/lib/cjs/storage/bridge-connection-storage.js +0 -101
- package/lib/cjs/storage/bridge-connection-storage.js.map +0 -1
- package/lib/cjs/storage/default-storage.js +0 -40
- package/lib/cjs/storage/default-storage.js.map +0 -1
- package/lib/cjs/storage/http-bridge-gateway-storage.js +0 -39
- package/lib/cjs/storage/http-bridge-gateway-storage.js.map +0 -1
- package/lib/cjs/storage/models/storage.interface.js +0 -3
- package/lib/cjs/storage/models/storage.interface.js.map +0 -1
- package/lib/cjs/ton-connect.interface.js +0 -3
- package/lib/cjs/ton-connect.interface.js.map +0 -1
- package/lib/cjs/ton-connect.js +0 -275
- package/lib/cjs/ton-connect.js.map +0 -1
- package/lib/cjs/utils/address.js +0 -98
- package/lib/cjs/utils/address.js.map +0 -1
- package/lib/cjs/utils/options.js +0 -16
- package/lib/cjs/utils/options.js.map +0 -1
- package/lib/cjs/utils/types.js +0 -3
- package/lib/cjs/utils/types.js.map +0 -1
- package/lib/cjs/utils/url.js +0 -15
- package/lib/cjs/utils/url.js.map +0 -1
- package/lib/cjs/utils/web-api.js +0 -27
- package/lib/cjs/utils/web-api.js.map +0 -1
- package/lib/cjs/wallets-list-manager.js +0 -123
- package/lib/cjs/wallets-list-manager.js.map +0 -1
- package/lib/esm/errors/address/index.js +0 -2
- package/lib/esm/errors/address/index.js.map +0 -1
- package/lib/esm/errors/address/wrong-address.error.js +0 -11
- package/lib/esm/errors/address/wrong-address.error.js.map +0 -1
- package/lib/esm/errors/binary/index.js +0 -2
- package/lib/esm/errors/binary/index.js.map +0 -1
- package/lib/esm/errors/binary/parse-hex.error.js +0 -11
- package/lib/esm/errors/binary/parse-hex.error.js.map +0 -1
- package/lib/esm/errors/dapp/dapp-metadata.error.js +0 -11
- package/lib/esm/errors/dapp/dapp-metadata.error.js.map +0 -1
- package/lib/esm/errors/index.js +0 -9
- package/lib/esm/errors/index.js.map +0 -1
- package/lib/esm/errors/protocol/events/connect/index.js +0 -2
- package/lib/esm/errors/protocol/events/connect/index.js.map +0 -1
- package/lib/esm/errors/protocol/events/connect/manifest-content-error.error.js +0 -12
- package/lib/esm/errors/protocol/events/connect/manifest-content-error.error.js.map +0 -1
- package/lib/esm/errors/protocol/events/connect/manifest-not-found.error.js +0 -12
- package/lib/esm/errors/protocol/events/connect/manifest-not-found.error.js.map +0 -1
- package/lib/esm/errors/protocol/events/connect/user-rejects.error.js +0 -11
- package/lib/esm/errors/protocol/events/connect/user-rejects.error.js.map +0 -1
- package/lib/esm/errors/protocol/events/index.js +0 -2
- package/lib/esm/errors/protocol/events/index.js.map +0 -1
- package/lib/esm/errors/protocol/index.js +0 -3
- package/lib/esm/errors/protocol/index.js.map +0 -1
- package/lib/esm/errors/protocol/responses/bad-request.error.js +0 -11
- package/lib/esm/errors/protocol/responses/bad-request.error.js.map +0 -1
- package/lib/esm/errors/protocol/responses/index.js +0 -3
- package/lib/esm/errors/protocol/responses/index.js.map +0 -1
- package/lib/esm/errors/protocol/responses/unknown-app.error.js +0 -11
- package/lib/esm/errors/protocol/responses/unknown-app.error.js.map +0 -1
- package/lib/esm/errors/storage/index.js +0 -2
- package/lib/esm/errors/storage/index.js.map +0 -1
- package/lib/esm/errors/storage/localstorage-not-found.error.js +0 -11
- package/lib/esm/errors/storage/localstorage-not-found.error.js.map +0 -1
- package/lib/esm/errors/ton-connect.error.js +0 -14
- package/lib/esm/errors/ton-connect.error.js.map +0 -1
- package/lib/esm/errors/unknown.error.js +0 -11
- package/lib/esm/errors/unknown.error.js.map +0 -1
- package/lib/esm/errors/wallet/index.js +0 -4
- package/lib/esm/errors/wallet/index.js.map +0 -1
- package/lib/esm/errors/wallet/wallet-already-connected.error.js +0 -11
- package/lib/esm/errors/wallet/wallet-already-connected.error.js.map +0 -1
- package/lib/esm/errors/wallet/wallet-not-connected.error.js +0 -11
- package/lib/esm/errors/wallet/wallet-not-connected.error.js.map +0 -1
- package/lib/esm/errors/wallet/wallet-not-injected.error.js +0 -11
- package/lib/esm/errors/wallet/wallet-not-injected.error.js.map +0 -1
- package/lib/esm/errors/wallet/wallet-not-support-feature.error.js +0 -11
- package/lib/esm/errors/wallet/wallet-not-support-feature.error.js.map +0 -1
- package/lib/esm/errors/wallets-manager/fetch-wallets.error.js +0 -11
- package/lib/esm/errors/wallets-manager/fetch-wallets.error.js.map +0 -1
- package/lib/esm/errors/wallets-manager/index.js +0 -2
- package/lib/esm/errors/wallets-manager/index.js.map +0 -1
- package/lib/esm/index.js +0 -7
- package/lib/esm/index.js.map +0 -1
- package/lib/esm/models/dapp/dapp-metadata.js +0 -2
- package/lib/esm/models/dapp/dapp-metadata.js.map +0 -1
- package/lib/esm/models/index.js +0 -3
- package/lib/esm/models/index.js.map +0 -1
- package/lib/esm/models/methods/connect/connect-additional-request.js +0 -2
- package/lib/esm/models/methods/connect/connect-additional-request.js.map +0 -1
- package/lib/esm/models/methods/connect/index.js +0 -2
- package/lib/esm/models/methods/connect/index.js.map +0 -1
- package/lib/esm/models/methods/index.js +0 -3
- package/lib/esm/models/methods/index.js.map +0 -1
- package/lib/esm/models/methods/send-transaction/index.js +0 -2
- package/lib/esm/models/methods/send-transaction/index.js.map +0 -1
- package/lib/esm/models/methods/send-transaction/send-transaction-request.js +0 -2
- package/lib/esm/models/methods/send-transaction/send-transaction-request.js.map +0 -1
- package/lib/esm/models/methods/send-transaction/send-transaction-response.js +0 -2
- package/lib/esm/models/methods/send-transaction/send-transaction-response.js.map +0 -1
- package/lib/esm/models/ton-connect-options.js +0 -2
- package/lib/esm/models/ton-connect-options.js.map +0 -1
- package/lib/esm/models/wallet/account.js +0 -2
- package/lib/esm/models/wallet/account.js.map +0 -1
- package/lib/esm/models/wallet/index.js +0 -2
- package/lib/esm/models/wallet/index.js.map +0 -1
- package/lib/esm/models/wallet/wallet-connection-source.js +0 -4
- package/lib/esm/models/wallet/wallet-connection-source.js.map +0 -1
- package/lib/esm/models/wallet/wallet-info.js +0 -4
- package/lib/esm/models/wallet/wallet-info.js.map +0 -1
- package/lib/esm/models/wallet/wallet.js +0 -2
- package/lib/esm/models/wallet/wallet.js.map +0 -1
- package/lib/esm/parsers/connect-errors-parser.js +0 -24
- package/lib/esm/parsers/connect-errors-parser.js.map +0 -1
- package/lib/esm/parsers/rpc-parser.js +0 -6
- package/lib/esm/parsers/rpc-parser.js.map +0 -1
- package/lib/esm/parsers/send-transaction-parser.js +0 -32
- package/lib/esm/parsers/send-transaction-parser.js.map +0 -1
- package/lib/esm/provider/bridge/bridge-gateway.js +0 -106
- package/lib/esm/provider/bridge/bridge-gateway.js.map +0 -1
- package/lib/esm/provider/bridge/bridge-provider.js +0 -143
- package/lib/esm/provider/bridge/bridge-provider.js.map +0 -1
- package/lib/esm/provider/bridge/models/bridge-connection.js +0 -2
- package/lib/esm/provider/bridge/models/bridge-connection.js.map +0 -1
- package/lib/esm/provider/bridge/models/bridge-incomming-message.js +0 -2
- package/lib/esm/provider/bridge/models/bridge-incomming-message.js.map +0 -1
- package/lib/esm/provider/bridge/models/bridge-session-raw.js +0 -2
- package/lib/esm/provider/bridge/models/bridge-session-raw.js.map +0 -1
- package/lib/esm/provider/bridge/models/bridge-session.js +0 -2
- package/lib/esm/provider/bridge/models/bridge-session.js.map +0 -1
- package/lib/esm/provider/injected/injected-provider.js +0 -139
- package/lib/esm/provider/injected/injected-provider.js.map +0 -1
- package/lib/esm/provider/injected/models/injected-wallet-api.js +0 -2
- package/lib/esm/provider/injected/models/injected-wallet-api.js.map +0 -1
- package/lib/esm/provider/provider.js +0 -2
- package/lib/esm/provider/provider.js.map +0 -1
- package/lib/esm/resources/protocol.js +0 -2
- package/lib/esm/resources/protocol.js.map +0 -1
- package/lib/esm/storage/bridge-connection-storage.js +0 -97
- package/lib/esm/storage/bridge-connection-storage.js.map +0 -1
- package/lib/esm/storage/default-storage.js +0 -36
- package/lib/esm/storage/default-storage.js.map +0 -1
- package/lib/esm/storage/http-bridge-gateway-storage.js +0 -35
- package/lib/esm/storage/http-bridge-gateway-storage.js.map +0 -1
- package/lib/esm/storage/models/storage.interface.js +0 -2
- package/lib/esm/storage/models/storage.interface.js.map +0 -1
- package/lib/esm/ton-connect.interface.js +0 -2
- package/lib/esm/ton-connect.interface.js.map +0 -1
- package/lib/esm/ton-connect.js +0 -271
- package/lib/esm/ton-connect.js.map +0 -1
- package/lib/esm/utils/address.js +0 -94
- package/lib/esm/utils/address.js.map +0 -1
- package/lib/esm/utils/options.js +0 -9
- package/lib/esm/utils/options.js.map +0 -1
- package/lib/esm/utils/types.js +0 -2
- package/lib/esm/utils/types.js.map +0 -1
- package/lib/esm/utils/url.js +0 -10
- package/lib/esm/utils/url.js.map +0 -1
- package/lib/esm/utils/web-api.js +0 -21
- package/lib/esm/utils/web-api.js.map +0 -1
- package/lib/esm/wallets-list-manager.js +0 -119
- package/lib/esm/wallets-list-manager.js.map +0 -1
- package/lib/types/errors/address/index.d.ts +0 -1
- package/lib/types/errors/address/wrong-address.error.d.ts +0 -7
- package/lib/types/errors/binary/index.d.ts +0 -1
- package/lib/types/errors/binary/parse-hex.error.d.ts +0 -7
- package/lib/types/errors/dapp/dapp-metadata.error.d.ts +0 -7
- package/lib/types/errors/index.d.ts +0 -8
- package/lib/types/errors/protocol/events/connect/index.d.ts +0 -1
- package/lib/types/errors/protocol/events/connect/manifest-content-error.error.d.ts +0 -8
- package/lib/types/errors/protocol/events/connect/manifest-not-found.error.d.ts +0 -8
- package/lib/types/errors/protocol/events/connect/user-rejects.error.d.ts +0 -7
- package/lib/types/errors/protocol/events/index.d.ts +0 -1
- package/lib/types/errors/protocol/index.d.ts +0 -2
- package/lib/types/errors/protocol/responses/bad-request.error.d.ts +0 -7
- package/lib/types/errors/protocol/responses/index.d.ts +0 -2
- package/lib/types/errors/protocol/responses/unknown-app.error.d.ts +0 -7
- package/lib/types/errors/storage/index.d.ts +0 -1
- package/lib/types/errors/storage/localstorage-not-found.error.d.ts +0 -7
- package/lib/types/errors/ton-connect.error.d.ts +0 -7
- package/lib/types/errors/unknown.error.d.ts +0 -7
- package/lib/types/errors/wallet/index.d.ts +0 -3
- package/lib/types/errors/wallet/wallet-already-connected.error.d.ts +0 -7
- package/lib/types/errors/wallet/wallet-not-connected.error.d.ts +0 -7
- package/lib/types/errors/wallet/wallet-not-injected.error.d.ts +0 -7
- package/lib/types/errors/wallet/wallet-not-support-feature.error.d.ts +0 -7
- package/lib/types/errors/wallets-manager/fetch-wallets.error.d.ts +0 -7
- package/lib/types/errors/wallets-manager/index.d.ts +0 -1
- package/lib/types/models/dapp/dapp-metadata.d.ts +0 -18
- package/lib/types/models/index.d.ts +0 -4
- package/lib/types/models/methods/connect/connect-additional-request.d.ts +0 -6
- package/lib/types/models/methods/connect/index.d.ts +0 -1
- package/lib/types/models/methods/index.d.ts +0 -2
- package/lib/types/models/methods/send-transaction/index.d.ts +0 -2
- package/lib/types/models/methods/send-transaction/send-transaction-request.d.ts +0 -27
- package/lib/types/models/methods/send-transaction/send-transaction-response.d.ts +0 -6
- package/lib/types/models/ton-connect-options.d.ts +0 -21
- package/lib/types/models/wallet/account.d.ts +0 -16
- package/lib/types/models/wallet/index.d.ts +0 -4
- package/lib/types/models/wallet/wallet-connection-source.d.ts +0 -18
- package/lib/types/models/wallet/wallet-info.d.ts +0 -65
- package/lib/types/models/wallet/wallet.d.ts +0 -22
- package/lib/types/parsers/connect-errors-parser.d.ts +0 -7
- package/lib/types/parsers/rpc-parser.d.ts +0 -8
- package/lib/types/parsers/send-transaction-parser.d.ts +0 -13
- package/lib/types/provider/bridge/bridge-gateway.d.ts +0 -21
- package/lib/types/provider/bridge/bridge-provider.d.ts +0 -29
- package/lib/types/provider/bridge/models/bridge-connection.d.ts +0 -23
- package/lib/types/provider/bridge/models/bridge-incomming-message.d.ts +0 -4
- package/lib/types/provider/bridge/models/bridge-session-raw.d.ts +0 -5
- package/lib/types/provider/bridge/models/bridge-session.d.ts +0 -8
- package/lib/types/provider/injected/injected-provider.d.ts +0 -29
- package/lib/types/provider/injected/models/injected-wallet-api.d.ts +0 -11
- package/lib/types/provider/provider.d.ts +0 -19
- package/lib/types/resources/protocol.d.ts +0 -1
- package/lib/types/storage/bridge-connection-storage.d.ts +0 -13
- package/lib/types/storage/default-storage.d.ts +0 -8
- package/lib/types/storage/http-bridge-gateway-storage.d.ts +0 -9
- package/lib/types/storage/models/storage.interface.d.ts +0 -21
- package/lib/types/ton-connect.d.ts +0 -86
- package/lib/types/ton-connect.interface.d.ts +0 -53
- package/lib/types/utils/address.d.ts +0 -6
- package/lib/types/utils/options.d.ts +0 -1
- package/lib/types/utils/types.d.ts +0 -6
- package/lib/types/utils/url.d.ts +0 -2
- package/lib/types/utils/web-api.d.ts +0 -3
- package/lib/types/wallets-list-manager.d.ts +0 -11
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"send-transaction-request.js","sourceRoot":"","sources":["../../../../../src/models/methods/send-transaction/send-transaction-request.ts"],"names":[],"mappings":""}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"send-transaction-response.js","sourceRoot":"","sources":["../../../../../src/models/methods/send-transaction/send-transaction-response.ts"],"names":[],"mappings":""}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ton-connect-options.js","sourceRoot":"","sources":["../../../src/models/ton-connect-options.ts"],"names":[],"mappings":""}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"account.js","sourceRoot":"","sources":["../../../../src/models/wallet/account.ts"],"names":[],"mappings":""}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/models/wallet/index.ts"],"names":[],"mappings":"AAOA,OAAO,EAKH,oBAAoB,EACvB,MAAM,eAAe,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"wallet-connection-source.js","sourceRoot":"","sources":["../../../../src/models/wallet/wallet-connection-source.ts"],"names":[],"mappings":"AAqBA,MAAM,UAAU,0BAA0B,CACtC,KAA6B;IAE7B,OAAO,aAAa,IAAI,KAAK,CAAC;AAClC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"wallet-info.js","sourceRoot":"","sources":["../../../../src/models/wallet/wallet-info.ts"],"names":[],"mappings":"AAkFA,MAAM,UAAU,oBAAoB,CAAC,KAAiB;IAClD,OAAO,aAAa,IAAI,KAAK,CAAC;AAClC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"wallet.js","sourceRoot":"","sources":["../../../../src/models/wallet/wallet.ts"],"names":[],"mappings":""}
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import { BadRequestError, UnknownAppError, UserRejectsError } from "../errors";
|
|
2
|
-
import { ManifestContentErrorError } from "../errors/protocol/events/connect/manifest-content-error.error";
|
|
3
|
-
import { ManifestNotFoundError } from "../errors/protocol/events/connect/manifest-not-found.error";
|
|
4
|
-
import { UnknownError } from "../errors/unknown.error";
|
|
5
|
-
import { CONNECT_EVENT_ERROR_CODES } from '@tonconnect/protocol';
|
|
6
|
-
const connectEventErrorsCodes = {
|
|
7
|
-
[CONNECT_EVENT_ERROR_CODES.UNKNOWN_ERROR]: UnknownError,
|
|
8
|
-
[CONNECT_EVENT_ERROR_CODES.USER_REJECTS_ERROR]: UserRejectsError,
|
|
9
|
-
[CONNECT_EVENT_ERROR_CODES.BAD_REQUEST_ERROR]: BadRequestError,
|
|
10
|
-
[CONNECT_EVENT_ERROR_CODES.UNKNOWN_APP_ERROR]: UnknownAppError,
|
|
11
|
-
[CONNECT_EVENT_ERROR_CODES.MANIFEST_NOT_FOUND_ERROR]: ManifestNotFoundError,
|
|
12
|
-
[CONNECT_EVENT_ERROR_CODES.MANIFEST_CONTENT_ERROR]: ManifestContentErrorError
|
|
13
|
-
};
|
|
14
|
-
class ConnectErrorsParser {
|
|
15
|
-
parseError(error) {
|
|
16
|
-
let ErrorConstructor = UnknownError;
|
|
17
|
-
if (error.code in connectEventErrorsCodes) {
|
|
18
|
-
ErrorConstructor = connectEventErrorsCodes[error.code] || UnknownError;
|
|
19
|
-
}
|
|
20
|
-
return new ErrorConstructor(error.message);
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
export const connectErrorsParser = new ConnectErrorsParser();
|
|
24
|
-
//# sourceMappingURL=connect-errors-parser.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"connect-errors-parser.js","sourceRoot":"","sources":["../../../src/parsers/connect-errors-parser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,gBAAgB,EAAE,kBAAmB;AAChF,OAAO,EAAE,yBAAyB,EAAE,uEAAwE;AAC5G,OAAO,EAAE,qBAAqB,EAAE,mEAAoE;AAEpG,OAAO,EAAE,YAAY,EAAE,gCAAiC;AACxD,OAAO,EAAE,yBAAyB,EAAqB,MAAM,sBAAsB,CAAC;AAEpF,MAAM,uBAAuB,GACzB;IACI,CAAC,yBAAyB,CAAC,aAAa,CAAC,EAAE,YAAY;IACvD,CAAC,yBAAyB,CAAC,kBAAkB,CAAC,EAAE,gBAAgB;IAChE,CAAC,yBAAyB,CAAC,iBAAiB,CAAC,EAAE,eAAe;IAC9D,CAAC,yBAAyB,CAAC,iBAAiB,CAAC,EAAE,eAAe;IAC9D,CAAC,yBAAyB,CAAC,wBAAwB,CAAC,EAAE,qBAAqB;IAC3E,CAAC,yBAAyB,CAAC,sBAAsB,CAAC,EAAE,yBAAyB;CAChF,CAAC;AAEN,MAAM,mBAAmB;IACrB,UAAU,CAAC,KAAmC;QAC1C,IAAI,gBAAgB,GAA2B,YAAY,CAAC;QAE5D,IAAI,KAAK,CAAC,IAAI,IAAI,uBAAuB,EAAE;YACvC,gBAAgB,GAAG,uBAAuB,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,YAAY,CAAC;SAC1E;QAED,OAAO,IAAI,gBAAgB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC/C,CAAC;CACJ;AAED,MAAM,CAAC,MAAM,mBAAmB,GAAG,IAAI,mBAAmB,EAAE,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"rpc-parser.js","sourceRoot":"","sources":["../../../src/parsers/rpc-parser.ts"],"names":[],"mappings":"AASA,MAAM,OAAgB,SAAS;IAOpB,OAAO,CACV,QAAsC;QAEtC,OAAO,OAAO,IAAI,QAAQ,CAAC;IAC/B,CAAC;CACJ"}
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import { SEND_TRANSACTION_ERROR_CODES } from '@tonconnect/protocol';
|
|
2
|
-
import { BadRequestError, UnknownAppError, UserRejectsError } from "../errors";
|
|
3
|
-
import { UnknownError } from "../errors/unknown.error";
|
|
4
|
-
import { RpcParser } from "./rpc-parser";
|
|
5
|
-
const sendTransactionErrors = {
|
|
6
|
-
[SEND_TRANSACTION_ERROR_CODES.UNKNOWN_ERROR]: UnknownError,
|
|
7
|
-
[SEND_TRANSACTION_ERROR_CODES.USER_REJECTS_ERROR]: UserRejectsError,
|
|
8
|
-
[SEND_TRANSACTION_ERROR_CODES.BAD_REQUEST_ERROR]: BadRequestError,
|
|
9
|
-
[SEND_TRANSACTION_ERROR_CODES.UNKNOWN_APP_ERROR]: UnknownAppError
|
|
10
|
-
};
|
|
11
|
-
class SendTransactionParser extends RpcParser {
|
|
12
|
-
convertToRpcRequest(request) {
|
|
13
|
-
return {
|
|
14
|
-
method: 'sendTransaction',
|
|
15
|
-
params: [JSON.stringify(request)]
|
|
16
|
-
};
|
|
17
|
-
}
|
|
18
|
-
parseAndThrowError(response) {
|
|
19
|
-
let ErrorConstructor = UnknownError;
|
|
20
|
-
if (response.error.code in sendTransactionErrors) {
|
|
21
|
-
ErrorConstructor = sendTransactionErrors[response.error.code] || UnknownError;
|
|
22
|
-
}
|
|
23
|
-
throw new ErrorConstructor(response.error.message);
|
|
24
|
-
}
|
|
25
|
-
convertFromRpcResponse(rpcResponse) {
|
|
26
|
-
return {
|
|
27
|
-
boc: rpcResponse.result
|
|
28
|
-
};
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
export const sendTransactionParser = new SendTransactionParser();
|
|
32
|
-
//# sourceMappingURL=send-transaction-parser.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"send-transaction-parser.js","sourceRoot":"","sources":["../../../src/parsers/send-transaction-parser.ts"],"names":[],"mappings":"AAAA,OAAO,EAEH,4BAA4B,EAI/B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,eAAe,EAAmB,eAAe,EAAE,gBAAgB,EAAE,kBAAmB;AACjG,OAAO,EAAE,YAAY,EAAE,gCAAiC;AAExD,OAAO,EAAE,SAAS,EAAE,qBAA+B;AAGnD,MAAM,qBAAqB,GAAuE;IAC9F,CAAC,4BAA4B,CAAC,aAAa,CAAC,EAAE,YAAY;IAC1D,CAAC,4BAA4B,CAAC,kBAAkB,CAAC,EAAE,gBAAgB;IACnE,CAAC,4BAA4B,CAAC,iBAAiB,CAAC,EAAE,eAAe;IACjE,CAAC,4BAA4B,CAAC,iBAAiB,CAAC,EAAE,eAAe;CACpE,CAAC;AAEF,MAAM,qBAAsB,SAAQ,SAA4B;IAC5D,mBAAmB,CACf,OAA6E;QAE7E,OAAO;YACH,MAAM,EAAE,iBAAiB;YACzB,MAAM,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;SACpC,CAAC;IACN,CAAC;IAED,kBAAkB,CAAC,QAAoD;QACnE,IAAI,gBAAgB,GAA2B,YAAY,CAAC;QAE5D,IAAI,QAAQ,CAAC,KAAK,CAAC,IAAI,IAAI,qBAAqB,EAAE;YAC9C,gBAAgB,GAAG,qBAAqB,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,YAAY,CAAC;SACjF;QAED,MAAM,IAAI,gBAAgB,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACvD,CAAC;IAED,sBAAsB,CAClB,WAAyD;QAEzD,OAAO;YACH,GAAG,EAAE,WAAW,CAAC,MAAM;SAC1B,CAAC;IACN,CAAC;CACJ;AAED,MAAM,CAAC,MAAM,qBAAqB,GAAG,IAAI,qBAAqB,EAAE,CAAC"}
|
|
@@ -1,106 +0,0 @@
|
|
|
1
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
-
});
|
|
9
|
-
};
|
|
10
|
-
import { Base64, isNode } from '@tonconnect/protocol';
|
|
11
|
-
import { TonConnectError } from "../../errors";
|
|
12
|
-
import { HttpBridgeGatewayStorage } from "../../storage/http-bridge-gateway-storage";
|
|
13
|
-
import { addPathToUrl } from "../../utils/url";
|
|
14
|
-
if (isNode()) {
|
|
15
|
-
try {
|
|
16
|
-
eval("global.EventSource = require('eventsource')");
|
|
17
|
-
eval("global.fetch = require('node-fetch')");
|
|
18
|
-
}
|
|
19
|
-
catch (err) {
|
|
20
|
-
console.error(err);
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
export class BridgeGateway {
|
|
24
|
-
constructor(storage, bridgeUrl, sessionId, listener, errorsListener) {
|
|
25
|
-
this.bridgeUrl = bridgeUrl;
|
|
26
|
-
this.sessionId = sessionId;
|
|
27
|
-
this.listener = listener;
|
|
28
|
-
this.errorsListener = errorsListener;
|
|
29
|
-
this.ssePath = 'events';
|
|
30
|
-
this.postPath = 'message';
|
|
31
|
-
this.heartbeatMessage = 'heartbeat';
|
|
32
|
-
this.defaultTtl = 300;
|
|
33
|
-
this.isClosed = false;
|
|
34
|
-
this.bridgeGatewayStorage = new HttpBridgeGatewayStorage(storage);
|
|
35
|
-
}
|
|
36
|
-
registerSession() {
|
|
37
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
38
|
-
const url = new URL(addPathToUrl(this.bridgeUrl, this.ssePath));
|
|
39
|
-
url.searchParams.append('client_id', this.sessionId);
|
|
40
|
-
const lastEventId = yield this.bridgeGatewayStorage.getLastEventId();
|
|
41
|
-
if (lastEventId) {
|
|
42
|
-
url.searchParams.append('last_event_id', lastEventId);
|
|
43
|
-
}
|
|
44
|
-
this.eventSource = new EventSource(url.toString());
|
|
45
|
-
return new Promise((resolve, reject) => {
|
|
46
|
-
this.eventSource.onerror = reject;
|
|
47
|
-
this.eventSource.onopen = () => {
|
|
48
|
-
this.eventSource.onerror = this.errorsHandler.bind(this);
|
|
49
|
-
this.eventSource.onmessage = this.messagesHandler.bind(this);
|
|
50
|
-
resolve();
|
|
51
|
-
};
|
|
52
|
-
});
|
|
53
|
-
});
|
|
54
|
-
}
|
|
55
|
-
send(message, receiver, ttl) {
|
|
56
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
57
|
-
const url = new URL(addPathToUrl(this.bridgeUrl, this.postPath));
|
|
58
|
-
url.searchParams.append('client_id', this.sessionId);
|
|
59
|
-
url.searchParams.append('to', receiver);
|
|
60
|
-
url.searchParams.append('ttl', (ttl || this.defaultTtl).toString());
|
|
61
|
-
yield fetch(url, {
|
|
62
|
-
method: 'post',
|
|
63
|
-
body: Base64.encode(message)
|
|
64
|
-
});
|
|
65
|
-
});
|
|
66
|
-
}
|
|
67
|
-
close() {
|
|
68
|
-
var _a;
|
|
69
|
-
this.isClosed = true;
|
|
70
|
-
(_a = this.eventSource) === null || _a === void 0 ? void 0 : _a.close();
|
|
71
|
-
}
|
|
72
|
-
errorsHandler(e) {
|
|
73
|
-
var _a, _b;
|
|
74
|
-
if (!this.isClosed) {
|
|
75
|
-
if (((_a = this.eventSource) === null || _a === void 0 ? void 0 : _a.readyState) === EventSource.CLOSED) {
|
|
76
|
-
this.eventSource.close();
|
|
77
|
-
this.registerSession();
|
|
78
|
-
return;
|
|
79
|
-
}
|
|
80
|
-
if (((_b = this.eventSource) === null || _b === void 0 ? void 0 : _b.readyState) === EventSource.CONNECTING) {
|
|
81
|
-
console.debug('[TON_CONNET_SDK_ERROR]: Bridge error', JSON.stringify(e));
|
|
82
|
-
return;
|
|
83
|
-
}
|
|
84
|
-
this.errorsListener(e);
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
messagesHandler(e) {
|
|
88
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
89
|
-
if (e.data === this.heartbeatMessage) {
|
|
90
|
-
return;
|
|
91
|
-
}
|
|
92
|
-
yield this.bridgeGatewayStorage.storeLastEventId(e.lastEventId);
|
|
93
|
-
if (!this.isClosed) {
|
|
94
|
-
let bridgeIncomingMessage;
|
|
95
|
-
try {
|
|
96
|
-
bridgeIncomingMessage = JSON.parse(e.data);
|
|
97
|
-
}
|
|
98
|
-
catch (e) {
|
|
99
|
-
throw new TonConnectError(`Bridge message parse failed, message ${e.data}`);
|
|
100
|
-
}
|
|
101
|
-
this.listener(bridgeIncomingMessage);
|
|
102
|
-
}
|
|
103
|
-
});
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
//# sourceMappingURL=bridge-gateway.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"bridge-gateway.js","sourceRoot":"","sources":["../../../../src/provider/bridge/bridge-gateway.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,143 +0,0 @@
|
|
|
1
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
-
});
|
|
9
|
-
};
|
|
10
|
-
import { Base64, SessionCrypto, hexToByteArray } from '@tonconnect/protocol';
|
|
11
|
-
import { TonConnectError } from "../../errors/ton-connect.error";
|
|
12
|
-
import { BridgeGateway } from "./bridge-gateway";
|
|
13
|
-
import { BridgeConnectionStorage } from "../../storage/bridge-connection-storage";
|
|
14
|
-
import { PROTOCOL_VERSION } from "../../resources/protocol";
|
|
15
|
-
export class BridgeProvider {
|
|
16
|
-
constructor(storage, walletConnectionSource) {
|
|
17
|
-
this.storage = storage;
|
|
18
|
-
this.walletConnectionSource = walletConnectionSource;
|
|
19
|
-
this.type = 'http';
|
|
20
|
-
this.pendingRequests = new Map();
|
|
21
|
-
this.nextRequestId = 0;
|
|
22
|
-
this.session = null;
|
|
23
|
-
this.bridge = null;
|
|
24
|
-
this.listeners = [];
|
|
25
|
-
this.connectionStorage = new BridgeConnectionStorage(storage);
|
|
26
|
-
}
|
|
27
|
-
static fromStorage(storage) {
|
|
28
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
29
|
-
const bridgeConnectionStorage = new BridgeConnectionStorage(storage);
|
|
30
|
-
const connection = yield bridgeConnectionStorage.getHttpConnection();
|
|
31
|
-
return new BridgeProvider(storage, connection.session.walletConnectionSource);
|
|
32
|
-
});
|
|
33
|
-
}
|
|
34
|
-
connect(message) {
|
|
35
|
-
var _a;
|
|
36
|
-
(_a = this.bridge) === null || _a === void 0 ? void 0 : _a.close();
|
|
37
|
-
const sessionCrypto = new SessionCrypto();
|
|
38
|
-
this.session = {
|
|
39
|
-
sessionCrypto,
|
|
40
|
-
walletConnectionSource: this.walletConnectionSource
|
|
41
|
-
};
|
|
42
|
-
this.bridge = new BridgeGateway(this.storage, this.walletConnectionSource.bridgeUrl, sessionCrypto.sessionId, this.gatewayListener.bind(this), this.gatewayErrorsListener.bind(this));
|
|
43
|
-
this.bridge.registerSession();
|
|
44
|
-
return this.generateUniversalLink(message);
|
|
45
|
-
}
|
|
46
|
-
restoreConnection() {
|
|
47
|
-
var _a;
|
|
48
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
49
|
-
(_a = this.bridge) === null || _a === void 0 ? void 0 : _a.close();
|
|
50
|
-
const storedConnection = yield this.connectionStorage.getHttpConnection();
|
|
51
|
-
if (!storedConnection) {
|
|
52
|
-
return;
|
|
53
|
-
}
|
|
54
|
-
this.session = storedConnection.session;
|
|
55
|
-
this.bridge = new BridgeGateway(this.storage, this.walletConnectionSource.bridgeUrl, storedConnection.session.sessionCrypto.sessionId, this.gatewayListener.bind(this), this.gatewayErrorsListener.bind(this));
|
|
56
|
-
yield this.bridge.registerSession();
|
|
57
|
-
this.listeners.forEach(listener => listener(storedConnection.connectEvent));
|
|
58
|
-
});
|
|
59
|
-
}
|
|
60
|
-
sendRequest(request) {
|
|
61
|
-
return new Promise((resolve, reject) => {
|
|
62
|
-
const id = this.nextRequestId;
|
|
63
|
-
this.nextRequestId++;
|
|
64
|
-
if (!this.bridge || !this.session || !('walletPublicKey' in this.session)) {
|
|
65
|
-
throw new TonConnectError('Trying to send bridge request without session');
|
|
66
|
-
}
|
|
67
|
-
const encodedRequest = this.session.sessionCrypto.encrypt(JSON.stringify(Object.assign(Object.assign({}, request), { id })), hexToByteArray(this.session.walletPublicKey));
|
|
68
|
-
this.bridge.send(encodedRequest, this.session.walletPublicKey).catch(reject);
|
|
69
|
-
this.pendingRequests.set(id.toString(), resolve);
|
|
70
|
-
});
|
|
71
|
-
}
|
|
72
|
-
closeConnection() {
|
|
73
|
-
var _a;
|
|
74
|
-
(_a = this.bridge) === null || _a === void 0 ? void 0 : _a.close();
|
|
75
|
-
this.listeners = [];
|
|
76
|
-
this.session = null;
|
|
77
|
-
this.bridge = null;
|
|
78
|
-
}
|
|
79
|
-
disconnect() {
|
|
80
|
-
var _a;
|
|
81
|
-
(_a = this.bridge) === null || _a === void 0 ? void 0 : _a.close();
|
|
82
|
-
this.listeners = [];
|
|
83
|
-
return this.removeBridgeAndSession();
|
|
84
|
-
}
|
|
85
|
-
listen(callback) {
|
|
86
|
-
this.listeners.push(callback);
|
|
87
|
-
return () => (this.listeners = this.listeners.filter(listener => listener !== callback));
|
|
88
|
-
}
|
|
89
|
-
gatewayListener(bridgeIncomingMessage) {
|
|
90
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
91
|
-
const walletMessage = JSON.parse(this.session.sessionCrypto.decrypt(Base64.decode(bridgeIncomingMessage.message).toUint8Array(), hexToByteArray(bridgeIncomingMessage.from)));
|
|
92
|
-
if (!('event' in walletMessage)) {
|
|
93
|
-
const id = walletMessage.id.toString();
|
|
94
|
-
const resolve = this.pendingRequests.get(id);
|
|
95
|
-
if (!resolve) {
|
|
96
|
-
throw new TonConnectError(`Response id ${id} doesn't match any request's id`);
|
|
97
|
-
}
|
|
98
|
-
resolve(walletMessage);
|
|
99
|
-
this.pendingRequests.delete(id);
|
|
100
|
-
return;
|
|
101
|
-
}
|
|
102
|
-
if (walletMessage.event === 'connect') {
|
|
103
|
-
yield this.updateSession(walletMessage, bridgeIncomingMessage.from);
|
|
104
|
-
}
|
|
105
|
-
if (walletMessage.event === 'disconnect') {
|
|
106
|
-
yield this.removeBridgeAndSession();
|
|
107
|
-
}
|
|
108
|
-
this.listeners.forEach(listener => listener(walletMessage));
|
|
109
|
-
});
|
|
110
|
-
}
|
|
111
|
-
gatewayErrorsListener(e) {
|
|
112
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
113
|
-
throw new TonConnectError(`Bridge error ${JSON.stringify(e)}`);
|
|
114
|
-
});
|
|
115
|
-
}
|
|
116
|
-
updateSession(connectEvent, walletPublicKey) {
|
|
117
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
118
|
-
this.session = Object.assign(Object.assign({}, this.session), { walletPublicKey });
|
|
119
|
-
const tonAddrItem = connectEvent.payload.items.find(item => item.name === 'ton_addr');
|
|
120
|
-
const connectEventToSave = Object.assign(Object.assign({}, connectEvent), { payload: Object.assign(Object.assign({}, connectEvent.payload), { items: [tonAddrItem] }) });
|
|
121
|
-
yield this.connectionStorage.storeConnection({
|
|
122
|
-
type: 'http',
|
|
123
|
-
session: this.session,
|
|
124
|
-
connectEvent: connectEventToSave
|
|
125
|
-
});
|
|
126
|
-
});
|
|
127
|
-
}
|
|
128
|
-
removeBridgeAndSession() {
|
|
129
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
130
|
-
this.session = null;
|
|
131
|
-
this.bridge = null;
|
|
132
|
-
yield this.connectionStorage.removeConnection();
|
|
133
|
-
});
|
|
134
|
-
}
|
|
135
|
-
generateUniversalLink(message) {
|
|
136
|
-
const url = new URL(this.walletConnectionSource.universalLink);
|
|
137
|
-
url.searchParams.append('v', PROTOCOL_VERSION.toString());
|
|
138
|
-
url.searchParams.append('id', this.session.sessionCrypto.sessionId);
|
|
139
|
-
url.searchParams.append('r', JSON.stringify(message));
|
|
140
|
-
return url.toString();
|
|
141
|
-
}
|
|
142
|
-
}
|
|
143
|
-
//# sourceMappingURL=bridge-provider.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"bridge-provider.js","sourceRoot":"","sources":["../../../../src/provider/bridge/bridge-provider.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"bridge-connection.js","sourceRoot":"","sources":["../../../../../src/provider/bridge/models/bridge-connection.ts"],"names":[],"mappings":""}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"bridge-incomming-message.js","sourceRoot":"","sources":["../../../../../src/provider/bridge/models/bridge-incomming-message.ts"],"names":[],"mappings":""}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"bridge-session-raw.js","sourceRoot":"","sources":["../../../../../src/provider/bridge/models/bridge-session-raw.ts"],"names":[],"mappings":""}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"bridge-session.js","sourceRoot":"","sources":["../../../../../src/provider/bridge/models/bridge-session.ts"],"names":[],"mappings":""}
|
|
@@ -1,139 +0,0 @@
|
|
|
1
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
-
});
|
|
9
|
-
};
|
|
10
|
-
import { WalletNotInjectedError } from "../../errors/wallet/wallet-not-injected.error";
|
|
11
|
-
import { BridgeConnectionStorage } from "../../storage/bridge-connection-storage";
|
|
12
|
-
import { getWindow } from "../../utils/web-api";
|
|
13
|
-
import { PROTOCOL_VERSION } from "../../resources/protocol";
|
|
14
|
-
export class InjectedProvider {
|
|
15
|
-
constructor(storage, injectedWalletKey) {
|
|
16
|
-
this.injectedWalletKey = injectedWalletKey;
|
|
17
|
-
this.type = 'injected';
|
|
18
|
-
this.unsubscribeCallback = null;
|
|
19
|
-
this.listenSubscriptions = false;
|
|
20
|
-
this.listeners = [];
|
|
21
|
-
const window = InjectedProvider.window;
|
|
22
|
-
if (!InjectedProvider.isWindowContainsWallet(window, injectedWalletKey)) {
|
|
23
|
-
throw new WalletNotInjectedError();
|
|
24
|
-
}
|
|
25
|
-
this.connectionStorage = new BridgeConnectionStorage(storage);
|
|
26
|
-
this.injectedWallet = window[injectedWalletKey].tonconnect;
|
|
27
|
-
}
|
|
28
|
-
static fromStorage(storage) {
|
|
29
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
30
|
-
const bridgeConnectionStorage = new BridgeConnectionStorage(storage);
|
|
31
|
-
const connection = yield bridgeConnectionStorage.getInjectedConnection();
|
|
32
|
-
return new InjectedProvider(storage, connection.jsBridgeKey);
|
|
33
|
-
});
|
|
34
|
-
}
|
|
35
|
-
static isWalletInjected(injectedWalletKey) {
|
|
36
|
-
return InjectedProvider.isWindowContainsWallet(this.window, injectedWalletKey);
|
|
37
|
-
}
|
|
38
|
-
static isInsideWalletBrowser(injectedWalletKey) {
|
|
39
|
-
if (InjectedProvider.isWindowContainsWallet(this.window, injectedWalletKey)) {
|
|
40
|
-
return this.window[injectedWalletKey].tonconnect.isWalletBrowser;
|
|
41
|
-
}
|
|
42
|
-
return false;
|
|
43
|
-
}
|
|
44
|
-
static isWindowContainsWallet(window, injectedWalletKey) {
|
|
45
|
-
return (!!window &&
|
|
46
|
-
injectedWalletKey in window &&
|
|
47
|
-
typeof window[injectedWalletKey] === 'object' &&
|
|
48
|
-
'tonconnect' in window[injectedWalletKey]);
|
|
49
|
-
}
|
|
50
|
-
connect(message) {
|
|
51
|
-
this._connect(PROTOCOL_VERSION, message);
|
|
52
|
-
}
|
|
53
|
-
restoreConnection() {
|
|
54
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
55
|
-
try {
|
|
56
|
-
const connectEvent = yield this.injectedWallet.restoreConnection();
|
|
57
|
-
if (connectEvent.event === 'connect') {
|
|
58
|
-
this.makeSubscriptions();
|
|
59
|
-
this.listeners.forEach(listener => listener(connectEvent));
|
|
60
|
-
}
|
|
61
|
-
else {
|
|
62
|
-
yield this.connectionStorage.removeConnection();
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
catch (e) {
|
|
66
|
-
yield this.connectionStorage.removeConnection();
|
|
67
|
-
console.error(e);
|
|
68
|
-
}
|
|
69
|
-
});
|
|
70
|
-
}
|
|
71
|
-
closeConnection() {
|
|
72
|
-
if (this.listenSubscriptions) {
|
|
73
|
-
this.injectedWallet.disconnect();
|
|
74
|
-
}
|
|
75
|
-
this.closeAllListeners();
|
|
76
|
-
}
|
|
77
|
-
disconnect() {
|
|
78
|
-
this.closeAllListeners();
|
|
79
|
-
this.injectedWallet.disconnect();
|
|
80
|
-
return this.connectionStorage.removeConnection();
|
|
81
|
-
}
|
|
82
|
-
closeAllListeners() {
|
|
83
|
-
var _a;
|
|
84
|
-
this.listenSubscriptions = false;
|
|
85
|
-
this.listeners = [];
|
|
86
|
-
(_a = this.unsubscribeCallback) === null || _a === void 0 ? void 0 : _a.call(this);
|
|
87
|
-
}
|
|
88
|
-
listen(eventsCallback) {
|
|
89
|
-
this.listeners.push(eventsCallback);
|
|
90
|
-
return () => (this.listeners = this.listeners.filter(listener => listener !== eventsCallback));
|
|
91
|
-
}
|
|
92
|
-
sendRequest(request) {
|
|
93
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
94
|
-
return this.injectedWallet.send(Object.assign(Object.assign({}, request), { id: '0' }));
|
|
95
|
-
});
|
|
96
|
-
}
|
|
97
|
-
_connect(protocolVersion, message) {
|
|
98
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
99
|
-
try {
|
|
100
|
-
const connectEvent = yield this.injectedWallet.connect(protocolVersion, message);
|
|
101
|
-
if (connectEvent.event === 'connect') {
|
|
102
|
-
yield this.updateSession();
|
|
103
|
-
this.makeSubscriptions();
|
|
104
|
-
}
|
|
105
|
-
this.listeners.forEach(listener => listener(connectEvent));
|
|
106
|
-
}
|
|
107
|
-
catch (e) {
|
|
108
|
-
console.debug(e);
|
|
109
|
-
const connectEventError = {
|
|
110
|
-
event: 'connect_error',
|
|
111
|
-
payload: {
|
|
112
|
-
code: 0,
|
|
113
|
-
message: e === null || e === void 0 ? void 0 : e.toString()
|
|
114
|
-
}
|
|
115
|
-
};
|
|
116
|
-
this.listeners.forEach(listener => listener(connectEventError));
|
|
117
|
-
}
|
|
118
|
-
});
|
|
119
|
-
}
|
|
120
|
-
makeSubscriptions() {
|
|
121
|
-
this.listenSubscriptions = true;
|
|
122
|
-
this.unsubscribeCallback = this.injectedWallet.listen(e => {
|
|
123
|
-
if (this.listenSubscriptions) {
|
|
124
|
-
this.listeners.forEach(listener => listener(e));
|
|
125
|
-
}
|
|
126
|
-
if (e.event === 'disconnect') {
|
|
127
|
-
this.disconnect();
|
|
128
|
-
}
|
|
129
|
-
});
|
|
130
|
-
}
|
|
131
|
-
updateSession() {
|
|
132
|
-
return this.connectionStorage.storeConnection({
|
|
133
|
-
type: 'injected',
|
|
134
|
-
jsBridgeKey: this.injectedWalletKey
|
|
135
|
-
});
|
|
136
|
-
}
|
|
137
|
-
}
|
|
138
|
-
InjectedProvider.window = getWindow();
|
|
139
|
-
//# sourceMappingURL=injected-provider.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"injected-provider.js","sourceRoot":"","sources":["../../../../src/provider/injected/injected-provider.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"injected-wallet-api.js","sourceRoot":"","sources":["../../../../../src/provider/injected/models/injected-wallet-api.ts"],"names":[],"mappings":""}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"provider.js","sourceRoot":"","sources":["../../../src/provider/provider.ts"],"names":[],"mappings":""}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"protocol.js","sourceRoot":"","sources":["../../../src/resources/protocol.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC"}
|