@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":"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,QAAA,gBAAgB,GAAG,CAAC,CAAC"}
|
|
@@ -1,101 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.BridgeConnectionStorage = void 0;
|
|
13
|
-
const protocol_1 = require("@tonconnect/protocol");
|
|
14
|
-
const errors_1 = require("../errors");
|
|
15
|
-
class BridgeConnectionStorage {
|
|
16
|
-
constructor(storage) {
|
|
17
|
-
this.storage = storage;
|
|
18
|
-
this.storeKey = 'ton-connect-storage_bridge-connection';
|
|
19
|
-
}
|
|
20
|
-
storeConnection(connection) {
|
|
21
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
22
|
-
if (connection.type === 'injected') {
|
|
23
|
-
return this.storage.setItem(this.storeKey, JSON.stringify(connection));
|
|
24
|
-
}
|
|
25
|
-
const rawSession = {
|
|
26
|
-
sessionKeyPair: connection.session.sessionCrypto.stringifyKeypair(),
|
|
27
|
-
walletPublicKey: connection.session.walletPublicKey,
|
|
28
|
-
walletConnectionSource: connection.session.walletConnectionSource
|
|
29
|
-
};
|
|
30
|
-
const rawConnection = {
|
|
31
|
-
type: 'http',
|
|
32
|
-
connectEvent: connection.connectEvent,
|
|
33
|
-
session: rawSession
|
|
34
|
-
};
|
|
35
|
-
return this.storage.setItem(this.storeKey, JSON.stringify(rawConnection));
|
|
36
|
-
});
|
|
37
|
-
}
|
|
38
|
-
removeConnection() {
|
|
39
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
40
|
-
return this.storage.removeItem(this.storeKey);
|
|
41
|
-
});
|
|
42
|
-
}
|
|
43
|
-
getConnection() {
|
|
44
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
45
|
-
const stored = yield this.storage.getItem(this.storeKey);
|
|
46
|
-
if (!stored) {
|
|
47
|
-
return null;
|
|
48
|
-
}
|
|
49
|
-
const connection = JSON.parse(stored);
|
|
50
|
-
if (connection.type === 'injected') {
|
|
51
|
-
return connection;
|
|
52
|
-
}
|
|
53
|
-
const sessionCrypto = new protocol_1.SessionCrypto(connection.session.sessionKeyPair);
|
|
54
|
-
return {
|
|
55
|
-
type: 'http',
|
|
56
|
-
connectEvent: connection.connectEvent,
|
|
57
|
-
session: {
|
|
58
|
-
sessionCrypto,
|
|
59
|
-
walletConnectionSource: connection.session.walletConnectionSource,
|
|
60
|
-
walletPublicKey: connection.session.walletPublicKey
|
|
61
|
-
}
|
|
62
|
-
};
|
|
63
|
-
});
|
|
64
|
-
}
|
|
65
|
-
getHttpConnection() {
|
|
66
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
67
|
-
const connection = yield this.getConnection();
|
|
68
|
-
if (!connection) {
|
|
69
|
-
throw new errors_1.TonConnectError('Trying to read HTTP connection source while nothing is stored');
|
|
70
|
-
}
|
|
71
|
-
if (connection.type === 'injected') {
|
|
72
|
-
throw new errors_1.TonConnectError('Trying to read HTTP connection source while injected connection is stored');
|
|
73
|
-
}
|
|
74
|
-
return connection;
|
|
75
|
-
});
|
|
76
|
-
}
|
|
77
|
-
getInjectedConnection() {
|
|
78
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
79
|
-
const connection = yield this.getConnection();
|
|
80
|
-
if (!connection) {
|
|
81
|
-
throw new errors_1.TonConnectError('Trying to read Injected bridge connection source while nothing is stored');
|
|
82
|
-
}
|
|
83
|
-
if ((connection === null || connection === void 0 ? void 0 : connection.type) === 'http') {
|
|
84
|
-
throw new errors_1.TonConnectError('Trying to read Injected bridge connection source while HTTP connection is stored');
|
|
85
|
-
}
|
|
86
|
-
return connection;
|
|
87
|
-
});
|
|
88
|
-
}
|
|
89
|
-
storedConnectionType() {
|
|
90
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
91
|
-
const stored = yield this.storage.getItem(this.storeKey);
|
|
92
|
-
if (!stored) {
|
|
93
|
-
return null;
|
|
94
|
-
}
|
|
95
|
-
const connection = JSON.parse(stored);
|
|
96
|
-
return connection.type;
|
|
97
|
-
});
|
|
98
|
-
}
|
|
99
|
-
}
|
|
100
|
-
exports.BridgeConnectionStorage = BridgeConnectionStorage;
|
|
101
|
-
//# sourceMappingURL=bridge-connection-storage.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"bridge-connection-storage.js","sourceRoot":"","sources":["../../../src/storage/bridge-connection-storage.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.DefaultStorage = void 0;
|
|
13
|
-
const localstorage_not_found_error_1 = require("../errors/storage/localstorage-not-found.error");
|
|
14
|
-
const web_api_1 = require("../utils/web-api");
|
|
15
|
-
class DefaultStorage {
|
|
16
|
-
constructor() {
|
|
17
|
-
const window = (0, web_api_1.getWindow)();
|
|
18
|
-
if (!(window === null || window === void 0 ? void 0 : window.localStorage)) {
|
|
19
|
-
throw new localstorage_not_found_error_1.LocalstorageNotFoundError();
|
|
20
|
-
}
|
|
21
|
-
this.window = window;
|
|
22
|
-
}
|
|
23
|
-
getItem(key) {
|
|
24
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
25
|
-
return Promise.resolve(this.window.localStorage.getItem(key));
|
|
26
|
-
});
|
|
27
|
-
}
|
|
28
|
-
removeItem(key) {
|
|
29
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
30
|
-
this.window.localStorage.removeItem(key);
|
|
31
|
-
return Promise.resolve();
|
|
32
|
-
});
|
|
33
|
-
}
|
|
34
|
-
setItem(key, value) {
|
|
35
|
-
this.window.localStorage.setItem(key, value);
|
|
36
|
-
return Promise.resolve();
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
exports.DefaultStorage = DefaultStorage;
|
|
40
|
-
//# sourceMappingURL=default-storage.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"default-storage.js","sourceRoot":"","sources":["../../../src/storage/default-storage.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,iGAA4F;AAE5F,8CAA8C;AAE9C,MAAa,cAAc;IAGvB;QACI,MAAM,MAAM,GAAG,IAAA,mBAAS,GAAE,CAAC;QAE3B,IAAI,CAAC,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,YAAY,CAAA,EAAE;YACvB,MAAM,IAAI,wDAAyB,EAAE,CAAC;SACzC;QAED,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACzB,CAAC;IAEY,OAAO,CAAC,GAAW;;YAC5B,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;QAClE,CAAC;KAAA;IAEY,UAAU,CAAC,GAAW;;YAC/B,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;YACzC,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;QAC7B,CAAC;KAAA;IAED,OAAO,CAAC,GAAW,EAAE,KAAa;QAC9B,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QAC7C,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC;CACJ;AA1BD,wCA0BC"}
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.HttpBridgeGatewayStorage = void 0;
|
|
13
|
-
class HttpBridgeGatewayStorage {
|
|
14
|
-
constructor(storage) {
|
|
15
|
-
this.storage = storage;
|
|
16
|
-
this.storeKey = 'ton-connect-storage_http-bridge-gateway';
|
|
17
|
-
}
|
|
18
|
-
storeLastEventId(lastEventId) {
|
|
19
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
20
|
-
return this.storage.setItem(this.storeKey, lastEventId);
|
|
21
|
-
});
|
|
22
|
-
}
|
|
23
|
-
removeLastEventId() {
|
|
24
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
25
|
-
return this.storage.removeItem(this.storeKey);
|
|
26
|
-
});
|
|
27
|
-
}
|
|
28
|
-
getLastEventId() {
|
|
29
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
30
|
-
const stored = yield this.storage.getItem(this.storeKey);
|
|
31
|
-
if (!stored) {
|
|
32
|
-
return null;
|
|
33
|
-
}
|
|
34
|
-
return stored;
|
|
35
|
-
});
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
exports.HttpBridgeGatewayStorage = HttpBridgeGatewayStorage;
|
|
39
|
-
//# sourceMappingURL=http-bridge-gateway-storage.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"http-bridge-gateway-storage.js","sourceRoot":"","sources":["../../../src/storage/http-bridge-gateway-storage.ts"],"names":[],"mappings":";;;;;;;;;;;;AAEA,MAAa,wBAAwB;IAGjC,YAA6B,OAAiB;QAAjB,YAAO,GAAP,OAAO,CAAU;QAF7B,aAAQ,GAAG,yCAAyC,CAAC;IAErB,CAAC;IAErC,gBAAgB,CAAC,WAAmB;;YAC7C,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;QAC5D,CAAC;KAAA;IAEY,iBAAiB;;YAC1B,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAClD,CAAC;KAAA;IAEY,cAAc;;YACvB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACzD,IAAI,CAAC,MAAM,EAAE;gBACT,OAAO,IAAI,CAAC;aACf;YAED,OAAO,MAAM,CAAC;QAClB,CAAC;KAAA;CACJ;AArBD,4DAqBC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"storage.interface.js","sourceRoot":"","sources":["../../../../src/storage/models/storage.interface.ts"],"names":[],"mappings":""}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ton-connect.interface.js","sourceRoot":"","sources":["../../src/ton-connect.interface.ts"],"names":[],"mappings":""}
|
package/lib/cjs/ton-connect.js
DELETED
|
@@ -1,275 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
|
-
var __rest = (this && this.__rest) || function (s, e) {
|
|
12
|
-
var t = {};
|
|
13
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
14
|
-
t[p] = s[p];
|
|
15
|
-
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
16
|
-
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
17
|
-
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
18
|
-
t[p[i]] = s[p[i]];
|
|
19
|
-
}
|
|
20
|
-
return t;
|
|
21
|
-
};
|
|
22
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
23
|
-
exports.TonConnect = void 0;
|
|
24
|
-
const dapp_metadata_error_1 = require("./errors/dapp/dapp-metadata.error");
|
|
25
|
-
const manifest_content_error_error_1 = require("./errors/protocol/events/connect/manifest-content-error.error");
|
|
26
|
-
const manifest_not_found_error_1 = require("./errors/protocol/events/connect/manifest-not-found.error");
|
|
27
|
-
const ton_connect_error_1 = require("./errors/ton-connect.error");
|
|
28
|
-
const wallet_already_connected_error_1 = require("./errors/wallet/wallet-already-connected.error");
|
|
29
|
-
const wallet_not_connected_error_1 = require("./errors/wallet/wallet-not-connected.error");
|
|
30
|
-
const wallet_not_support_feature_error_1 = require("./errors/wallet/wallet-not-support-feature.error");
|
|
31
|
-
const wallet_connection_source_1 = require("./models/wallet/wallet-connection-source");
|
|
32
|
-
const connect_errors_parser_1 = require("./parsers/connect-errors-parser");
|
|
33
|
-
const send_transaction_parser_1 = require("./parsers/send-transaction-parser");
|
|
34
|
-
const bridge_provider_1 = require("./provider/bridge/bridge-provider");
|
|
35
|
-
const injected_provider_1 = require("./provider/injected/injected-provider");
|
|
36
|
-
const bridge_connection_storage_1 = require("./storage/bridge-connection-storage");
|
|
37
|
-
const default_storage_1 = require("./storage/default-storage");
|
|
38
|
-
const web_api_1 = require("./utils/web-api");
|
|
39
|
-
const wallets_list_manager_1 = require("./wallets-list-manager");
|
|
40
|
-
class TonConnect {
|
|
41
|
-
constructor(options) {
|
|
42
|
-
this.walletsList = new wallets_list_manager_1.WalletsListManager();
|
|
43
|
-
this._wallet = null;
|
|
44
|
-
this.provider = null;
|
|
45
|
-
this.statusChangeSubscriptions = [];
|
|
46
|
-
this.statusChangeErrorSubscriptions = [];
|
|
47
|
-
this.dappSettings = {
|
|
48
|
-
manifestUrl: (options === null || options === void 0 ? void 0 : options.manifestUrl) || (0, web_api_1.getWebPageManifest)(),
|
|
49
|
-
storage: (options === null || options === void 0 ? void 0 : options.storage) || new default_storage_1.DefaultStorage()
|
|
50
|
-
};
|
|
51
|
-
this.walletsList = new wallets_list_manager_1.WalletsListManager(options === null || options === void 0 ? void 0 : options.walletsListSource);
|
|
52
|
-
if (!this.dappSettings.manifestUrl) {
|
|
53
|
-
throw new dapp_metadata_error_1.DappMetadataError('Dapp tonconnect-manifest.json must be specified if window.location.origin is undefined. See more https://github.com/ton-connect/docs/blob/main/requests-responses.md#app-manifest');
|
|
54
|
-
}
|
|
55
|
-
this.bridgeConnectionStorage = new bridge_connection_storage_1.BridgeConnectionStorage(this.dappSettings.storage);
|
|
56
|
-
}
|
|
57
|
-
/**
|
|
58
|
-
* Returns available wallets list.
|
|
59
|
-
*/
|
|
60
|
-
static getWallets() {
|
|
61
|
-
return this.walletsList.getWallets();
|
|
62
|
-
}
|
|
63
|
-
/**
|
|
64
|
-
* Shows if the wallet is connected right now.
|
|
65
|
-
*/
|
|
66
|
-
get connected() {
|
|
67
|
-
return this._wallet !== null;
|
|
68
|
-
}
|
|
69
|
-
/**
|
|
70
|
-
* Current connected account or null if no account is connected.
|
|
71
|
-
*/
|
|
72
|
-
get account() {
|
|
73
|
-
var _a;
|
|
74
|
-
return ((_a = this._wallet) === null || _a === void 0 ? void 0 : _a.account) || null;
|
|
75
|
-
}
|
|
76
|
-
/**
|
|
77
|
-
* Current connected wallet or null if no account is connected.
|
|
78
|
-
*/
|
|
79
|
-
get wallet() {
|
|
80
|
-
return this._wallet;
|
|
81
|
-
}
|
|
82
|
-
set wallet(value) {
|
|
83
|
-
this._wallet = value;
|
|
84
|
-
this.statusChangeSubscriptions.forEach(callback => callback(this._wallet));
|
|
85
|
-
}
|
|
86
|
-
/**
|
|
87
|
-
* Returns available wallets list.
|
|
88
|
-
*/
|
|
89
|
-
getWallets() {
|
|
90
|
-
return this.walletsList.getWallets();
|
|
91
|
-
}
|
|
92
|
-
/**
|
|
93
|
-
* Allows to subscribe to connection status changes and handle connection errors.
|
|
94
|
-
* @param callback will be called after connections status changes with actual wallet or null.
|
|
95
|
-
* @param errorsHandler (optional) will be called with some instance of TonConnectError when connect error is received.
|
|
96
|
-
* @returns unsubscribe callback.
|
|
97
|
-
*/
|
|
98
|
-
onStatusChange(callback, errorsHandler) {
|
|
99
|
-
this.statusChangeSubscriptions.push(callback);
|
|
100
|
-
if (errorsHandler) {
|
|
101
|
-
this.statusChangeErrorSubscriptions.push(errorsHandler);
|
|
102
|
-
}
|
|
103
|
-
return () => {
|
|
104
|
-
this.statusChangeSubscriptions = this.statusChangeSubscriptions.filter(item => item !== callback);
|
|
105
|
-
if (errorsHandler) {
|
|
106
|
-
this.statusChangeErrorSubscriptions = this.statusChangeErrorSubscriptions.filter(item => item !== errorsHandler);
|
|
107
|
-
}
|
|
108
|
-
};
|
|
109
|
-
}
|
|
110
|
-
connect(wallet, request) {
|
|
111
|
-
var _a;
|
|
112
|
-
if (this.connected) {
|
|
113
|
-
throw new wallet_already_connected_error_1.WalletAlreadyConnectedError();
|
|
114
|
-
}
|
|
115
|
-
(_a = this.provider) === null || _a === void 0 ? void 0 : _a.closeConnection();
|
|
116
|
-
this.provider = this.createProvider(wallet);
|
|
117
|
-
return this.provider.connect(this.createConnectRequest(request));
|
|
118
|
-
}
|
|
119
|
-
/**
|
|
120
|
-
* Try to restore existing session and reconnect to the corresponding wallet. Call it immediately when your app is loaded.
|
|
121
|
-
*/
|
|
122
|
-
restoreConnection() {
|
|
123
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
124
|
-
const [bridgeConnectionType, embeddedWallet] = yield Promise.all([
|
|
125
|
-
this.bridgeConnectionStorage.storedConnectionType(),
|
|
126
|
-
this.walletsList.getEmbeddedWallet()
|
|
127
|
-
]);
|
|
128
|
-
switch (bridgeConnectionType) {
|
|
129
|
-
case 'http':
|
|
130
|
-
this.provider = yield bridge_provider_1.BridgeProvider.fromStorage(this.dappSettings.storage);
|
|
131
|
-
break;
|
|
132
|
-
case 'injected':
|
|
133
|
-
this.provider = yield injected_provider_1.InjectedProvider.fromStorage(this.dappSettings.storage);
|
|
134
|
-
break;
|
|
135
|
-
default:
|
|
136
|
-
if (embeddedWallet) {
|
|
137
|
-
this.provider = yield this.createProvider(embeddedWallet);
|
|
138
|
-
}
|
|
139
|
-
else {
|
|
140
|
-
return;
|
|
141
|
-
}
|
|
142
|
-
}
|
|
143
|
-
this.provider.listen(this.walletEventsListener.bind(this));
|
|
144
|
-
return this.provider.restoreConnection();
|
|
145
|
-
});
|
|
146
|
-
}
|
|
147
|
-
/**
|
|
148
|
-
* Asks connected wallet to sign and send the transaction.
|
|
149
|
-
* @param transaction transaction to send.
|
|
150
|
-
* @returns signed transaction boc that allows you to find the transaction in the blockchain.
|
|
151
|
-
* If user rejects transaction, method will throw the corresponding error.
|
|
152
|
-
*/
|
|
153
|
-
sendTransaction(transaction) {
|
|
154
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
155
|
-
this.checkConnection();
|
|
156
|
-
this.checkFeatureSupport('SendTransaction');
|
|
157
|
-
const { validUntil } = transaction, tx = __rest(transaction, ["validUntil"]);
|
|
158
|
-
const response = yield this.provider.sendRequest(send_transaction_parser_1.sendTransactionParser.convertToRpcRequest(Object.assign(Object.assign({}, tx), { valid_until: validUntil })));
|
|
159
|
-
if (send_transaction_parser_1.sendTransactionParser.isError(response)) {
|
|
160
|
-
return send_transaction_parser_1.sendTransactionParser.parseAndThrowError(response);
|
|
161
|
-
}
|
|
162
|
-
return send_transaction_parser_1.sendTransactionParser.convertFromRpcResponse(response);
|
|
163
|
-
});
|
|
164
|
-
}
|
|
165
|
-
/**
|
|
166
|
-
* Disconnect form thw connected wallet and drop current session.
|
|
167
|
-
*/
|
|
168
|
-
disconnect() {
|
|
169
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
170
|
-
if (!this.connected) {
|
|
171
|
-
throw new wallet_not_connected_error_1.WalletNotConnectedError();
|
|
172
|
-
}
|
|
173
|
-
yield this.provider.disconnect();
|
|
174
|
-
this.onWalletDisconnected();
|
|
175
|
-
});
|
|
176
|
-
}
|
|
177
|
-
createProvider(wallet) {
|
|
178
|
-
let provider;
|
|
179
|
-
if ((0, wallet_connection_source_1.isWalletConnectionSourceJS)(wallet)) {
|
|
180
|
-
provider = new injected_provider_1.InjectedProvider(this.dappSettings.storage, wallet.jsBridgeKey);
|
|
181
|
-
}
|
|
182
|
-
else {
|
|
183
|
-
provider = new bridge_provider_1.BridgeProvider(this.dappSettings.storage, wallet);
|
|
184
|
-
}
|
|
185
|
-
provider.listen(this.walletEventsListener.bind(this));
|
|
186
|
-
return provider;
|
|
187
|
-
}
|
|
188
|
-
walletEventsListener(e) {
|
|
189
|
-
switch (e.event) {
|
|
190
|
-
case 'connect':
|
|
191
|
-
this.onWalletConnected(e.payload);
|
|
192
|
-
break;
|
|
193
|
-
case 'connect_error':
|
|
194
|
-
this.onWalletConnectError(e.payload);
|
|
195
|
-
break;
|
|
196
|
-
case 'disconnect':
|
|
197
|
-
this.onWalletDisconnected();
|
|
198
|
-
}
|
|
199
|
-
}
|
|
200
|
-
onWalletConnected(connectEvent) {
|
|
201
|
-
const tonAccountItem = connectEvent.items.find(item => item.name === 'ton_addr');
|
|
202
|
-
const tonProofItem = connectEvent.items.find(item => item.name === 'ton_proof');
|
|
203
|
-
if (!tonAccountItem) {
|
|
204
|
-
throw new ton_connect_error_1.TonConnectError('ton_addr connection item was not found');
|
|
205
|
-
}
|
|
206
|
-
const wallet = {
|
|
207
|
-
device: connectEvent.device,
|
|
208
|
-
provider: this.provider.type,
|
|
209
|
-
account: {
|
|
210
|
-
address: tonAccountItem.address,
|
|
211
|
-
chain: tonAccountItem.network,
|
|
212
|
-
walletStateInit: tonAccountItem.walletStateInit
|
|
213
|
-
}
|
|
214
|
-
};
|
|
215
|
-
if (tonProofItem) {
|
|
216
|
-
wallet.connectItems = {
|
|
217
|
-
tonProof: tonProofItem
|
|
218
|
-
};
|
|
219
|
-
}
|
|
220
|
-
this.wallet = wallet;
|
|
221
|
-
}
|
|
222
|
-
onWalletConnectError(connectEventError) {
|
|
223
|
-
const error = connect_errors_parser_1.connectErrorsParser.parseError(connectEventError);
|
|
224
|
-
this.statusChangeErrorSubscriptions.forEach(errorsHandler => errorsHandler(error));
|
|
225
|
-
console.debug(error);
|
|
226
|
-
if (error instanceof manifest_not_found_error_1.ManifestNotFoundError || error instanceof manifest_content_error_error_1.ManifestContentErrorError) {
|
|
227
|
-
console.error(error);
|
|
228
|
-
throw error;
|
|
229
|
-
}
|
|
230
|
-
}
|
|
231
|
-
onWalletDisconnected() {
|
|
232
|
-
this.wallet = null;
|
|
233
|
-
}
|
|
234
|
-
checkConnection() {
|
|
235
|
-
if (!this.connected) {
|
|
236
|
-
throw new wallet_not_connected_error_1.WalletNotConnectedError();
|
|
237
|
-
}
|
|
238
|
-
}
|
|
239
|
-
checkFeatureSupport(feature) {
|
|
240
|
-
var _a;
|
|
241
|
-
if (!((_a = this.wallet) === null || _a === void 0 ? void 0 : _a.device.features.includes(feature))) {
|
|
242
|
-
throw new wallet_not_support_feature_error_1.WalletNotSupportFeatureError();
|
|
243
|
-
}
|
|
244
|
-
}
|
|
245
|
-
createConnectRequest(request) {
|
|
246
|
-
const items = [
|
|
247
|
-
{
|
|
248
|
-
name: 'ton_addr'
|
|
249
|
-
}
|
|
250
|
-
];
|
|
251
|
-
if (request === null || request === void 0 ? void 0 : request.tonProof) {
|
|
252
|
-
items.push({
|
|
253
|
-
name: 'ton_proof',
|
|
254
|
-
payload: request.tonProof
|
|
255
|
-
});
|
|
256
|
-
}
|
|
257
|
-
return {
|
|
258
|
-
manifestUrl: this.dappSettings.manifestUrl,
|
|
259
|
-
items
|
|
260
|
-
};
|
|
261
|
-
}
|
|
262
|
-
}
|
|
263
|
-
exports.TonConnect = TonConnect;
|
|
264
|
-
TonConnect.walletsList = new wallets_list_manager_1.WalletsListManager();
|
|
265
|
-
/**
|
|
266
|
-
* Check if specified wallet is injected and available to use with the app.
|
|
267
|
-
* @param walletJSKey target wallet's js bridge key.
|
|
268
|
-
*/
|
|
269
|
-
TonConnect.isWalletInjected = (walletJSKey) => injected_provider_1.InjectedProvider.isWalletInjected(walletJSKey);
|
|
270
|
-
/**
|
|
271
|
-
* Check if the app is opened inside specified wallet's browser.
|
|
272
|
-
* @param walletJSKey target wallet's js bridge key.
|
|
273
|
-
*/
|
|
274
|
-
TonConnect.isInsideWalletBrowser = (walletJSKey) => injected_provider_1.InjectedProvider.isInsideWalletBrowser(walletJSKey);
|
|
275
|
-
//# sourceMappingURL=ton-connect.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ton-connect.js","sourceRoot":"","sources":["../../src/ton-connect.ts"],"names":[],"mappings":"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"}
|
package/lib/cjs/utils/address.js
DELETED
|
@@ -1,98 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.toUserFriendlyAddress = void 0;
|
|
4
|
-
const errors_1 = require("../errors");
|
|
5
|
-
const protocol_1 = require("@tonconnect/protocol");
|
|
6
|
-
const bounceableTag = 0x11;
|
|
7
|
-
const testOnlyTag = 0x80;
|
|
8
|
-
/**
|
|
9
|
-
* Converts raw TON address to bounceable user-friendly format. [See details]{@link https://ton.org/docs/learn/overviews/addresses#user-friendly-address}
|
|
10
|
-
* @param hexAddress raw TON address formatted as "0:<hex string without 0x>".
|
|
11
|
-
* @param [testOnly=false] convert address to test-only form. [See details]{@link https://ton.org/docs/learn/overviews/addresses#user-friendly-address}
|
|
12
|
-
*/
|
|
13
|
-
function toUserFriendlyAddress(hexAddress, testOnly = false) {
|
|
14
|
-
const { wc, hex } = parseHexAddress(hexAddress);
|
|
15
|
-
let tag = bounceableTag;
|
|
16
|
-
if (testOnly) {
|
|
17
|
-
tag |= testOnlyTag;
|
|
18
|
-
}
|
|
19
|
-
const addr = new Int8Array(34);
|
|
20
|
-
addr[0] = tag;
|
|
21
|
-
addr[1] = wc;
|
|
22
|
-
addr.set(hex, 2);
|
|
23
|
-
const addressWithChecksum = new Uint8Array(36);
|
|
24
|
-
addressWithChecksum.set(addr);
|
|
25
|
-
addressWithChecksum.set(crc16(addr), 34);
|
|
26
|
-
let addressBase64 = protocol_1.Base64.encode(addressWithChecksum);
|
|
27
|
-
return addressBase64.replace(/\+/g, '-').replace(/\//g, '_');
|
|
28
|
-
}
|
|
29
|
-
exports.toUserFriendlyAddress = toUserFriendlyAddress;
|
|
30
|
-
function parseHexAddress(hexAddress) {
|
|
31
|
-
if (!hexAddress.includes(':')) {
|
|
32
|
-
throw new errors_1.WrongAddressError(`Wrong address ${hexAddress}. Address must include ":".`);
|
|
33
|
-
}
|
|
34
|
-
const parts = hexAddress.split(':');
|
|
35
|
-
if (parts.length !== 2) {
|
|
36
|
-
throw new errors_1.WrongAddressError(`Wrong address ${hexAddress}. Address must include ":" only once.`);
|
|
37
|
-
}
|
|
38
|
-
const wc = parseInt(parts[0]);
|
|
39
|
-
if (wc !== 0 && wc !== -1) {
|
|
40
|
-
throw new errors_1.WrongAddressError(`Wrong address ${hexAddress}. WC must be eq 0 or -1, but ${wc} received.`);
|
|
41
|
-
}
|
|
42
|
-
const hex = parts[1];
|
|
43
|
-
if ((hex === null || hex === void 0 ? void 0 : hex.length) !== 64) {
|
|
44
|
-
throw new errors_1.WrongAddressError(`Wrong address ${hexAddress}. Hex part must be 64bytes length, but ${hex === null || hex === void 0 ? void 0 : hex.length} received.`);
|
|
45
|
-
}
|
|
46
|
-
return {
|
|
47
|
-
wc,
|
|
48
|
-
hex: hexToBytes(hex)
|
|
49
|
-
};
|
|
50
|
-
}
|
|
51
|
-
function crc16(data) {
|
|
52
|
-
const poly = 0x1021;
|
|
53
|
-
let reg = 0;
|
|
54
|
-
const message = new Uint8Array(data.length + 2);
|
|
55
|
-
message.set(data);
|
|
56
|
-
for (let byte of message) {
|
|
57
|
-
let mask = 0x80;
|
|
58
|
-
while (mask > 0) {
|
|
59
|
-
reg <<= 1;
|
|
60
|
-
if (byte & mask) {
|
|
61
|
-
reg += 1;
|
|
62
|
-
}
|
|
63
|
-
mask >>= 1;
|
|
64
|
-
if (reg > 0xffff) {
|
|
65
|
-
reg &= 0xffff;
|
|
66
|
-
reg ^= poly;
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
return new Uint8Array([Math.floor(reg / 256), reg % 256]);
|
|
71
|
-
}
|
|
72
|
-
const toByteMap = {};
|
|
73
|
-
for (let ord = 0; ord <= 0xff; ord++) {
|
|
74
|
-
let s = ord.toString(16);
|
|
75
|
-
if (s.length < 2) {
|
|
76
|
-
s = '0' + s;
|
|
77
|
-
}
|
|
78
|
-
toByteMap[s] = ord;
|
|
79
|
-
}
|
|
80
|
-
function hexToBytes(hex) {
|
|
81
|
-
hex = hex.toLowerCase();
|
|
82
|
-
const length2 = hex.length;
|
|
83
|
-
if (length2 % 2 !== 0) {
|
|
84
|
-
throw new errors_1.ParseHexError('Hex string must have length a multiple of 2: ' + hex);
|
|
85
|
-
}
|
|
86
|
-
const length = length2 / 2;
|
|
87
|
-
const result = new Uint8Array(length);
|
|
88
|
-
for (let i = 0; i < length; i++) {
|
|
89
|
-
const doubled = i * 2;
|
|
90
|
-
const hexSubstring = hex.substring(doubled, doubled + 2);
|
|
91
|
-
if (!toByteMap.hasOwnProperty(hexSubstring)) {
|
|
92
|
-
throw new errors_1.ParseHexError('Invalid hex character: ' + hexSubstring);
|
|
93
|
-
}
|
|
94
|
-
result[i] = toByteMap[hexSubstring];
|
|
95
|
-
}
|
|
96
|
-
return result;
|
|
97
|
-
}
|
|
98
|
-
//# sourceMappingURL=address.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"address.js","sourceRoot":"","sources":["../../../src/utils/address.ts"],"names":[],"mappings":"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"}
|
package/lib/cjs/utils/options.js
DELETED
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.mergeOptions = void 0;
|
|
7
|
-
const deepmerge_1 = __importDefault(require("deepmerge"));
|
|
8
|
-
function mergeOptions(options, defaultOptions) {
|
|
9
|
-
if (!options) {
|
|
10
|
-
return defaultOptions;
|
|
11
|
-
}
|
|
12
|
-
const overwriteMerge = (_, sourceArray, __) => sourceArray;
|
|
13
|
-
return (0, deepmerge_1.default)(defaultOptions, options, { arrayMerge: overwriteMerge });
|
|
14
|
-
}
|
|
15
|
-
exports.mergeOptions = mergeOptions;
|
|
16
|
-
//# sourceMappingURL=options.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"options.js","sourceRoot":"","sources":["../../../src/utils/options.ts"],"names":[],"mappings":";;;;;;AAAA,0DAAkC;AAElC,SAAgB,YAAY,CAAI,OAAsC,EAAE,cAAiB;IACrF,IAAI,CAAC,OAAO,EAAE;QACV,OAAO,cAAc,CAAC;KACzB;IAED,MAAM,cAAc,GAAG,CAAC,CAAY,EAAE,WAAsB,EAAE,EAAW,EAAa,EAAE,CACpF,WAAW,CAAC;IAEhB,OAAO,IAAA,mBAAS,EAAC,cAAc,EAAE,OAAO,EAAE,EAAE,UAAU,EAAE,cAAc,EAAE,CAAC,CAAC;AAC9E,CAAC;AATD,oCASC"}
|
package/lib/cjs/utils/types.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/utils/types.ts"],"names":[],"mappings":""}
|