@aeternity/aepp-sdk 13.3.3 → 14.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/LICENSE +1 -1
- package/README.md +15 -21
- package/bin/aesophia_cli +0 -0
- package/dist/aepp-sdk.browser-script.cjs +3 -0
- package/dist/aepp-sdk.browser-script.cjs.LICENSE.txt +12 -0
- package/dist/aepp-sdk.browser-script.cjs.map +1 -0
- package/dist/aepp-sdk.browser.cjs +3 -0
- package/dist/aepp-sdk.browser.cjs.map +1 -0
- package/dist/aepp-sdk.cjs +38244 -0
- package/dist/aepp-sdk.cjs.map +1 -0
- package/es/AeSdk.d.ts +4 -4
- package/es/AeSdk.js +76 -0
- package/es/AeSdk.js.map +1 -0
- package/es/AeSdkAepp.d.ts +13 -8
- package/es/AeSdkAepp.js +153 -0
- package/es/AeSdkAepp.js.map +1 -0
- package/es/AeSdkBase.d.ts +15 -41
- package/es/AeSdkBase.js +235 -0
- package/es/AeSdkBase.js.map +1 -0
- package/es/AeSdkMethods.d.ts +11 -34
- package/es/AeSdkMethods.js +81 -0
- package/es/AeSdkMethods.js.map +1 -0
- package/es/AeSdkWallet.d.ts +13 -8
- package/es/AeSdkWallet.js +347 -0
- package/es/AeSdkWallet.js.map +1 -0
- package/es/Middleware.d.ts +14 -26
- package/es/Middleware.js +102 -0
- package/es/Middleware.js.map +1 -0
- package/es/MiddlewareSubscriber.d.ts +5 -3
- package/es/MiddlewareSubscriber.js +169 -0
- package/es/MiddlewareSubscriber.js.map +1 -0
- package/es/Node.d.ts +11 -22
- package/es/Node.js +121 -0
- package/es/Node.js.map +1 -0
- package/es/account/Base.d.ts +14 -66
- package/es/account/Base.js +7 -0
- package/es/account/Base.js.map +1 -0
- package/es/account/BaseFactory.d.ts +20 -0
- package/es/account/BaseFactory.js +29 -0
- package/es/account/BaseFactory.js.map +1 -0
- package/es/account/Generalized.d.ts +7 -6
- package/es/account/Generalized.js +117 -0
- package/es/account/Generalized.js.map +1 -0
- package/es/account/Ledger.d.ts +8 -7
- package/es/account/Ledger.js +116 -0
- package/es/account/Ledger.js.map +1 -0
- package/es/account/LedgerFactory.d.ts +18 -16
- package/es/account/LedgerFactory.js +86 -0
- package/es/account/LedgerFactory.js.map +1 -0
- package/es/account/Memory.d.ts +11 -22
- package/es/account/Memory.js +106 -0
- package/es/account/Memory.js.map +1 -0
- package/es/account/Metamask.d.ts +34 -0
- package/es/account/Metamask.js +89 -0
- package/es/account/Metamask.js.map +1 -0
- package/es/account/MetamaskFactory.d.ts +58 -0
- package/es/account/MetamaskFactory.js +164 -0
- package/es/account/MetamaskFactory.js.map +1 -0
- package/es/account/MnemonicFactory.d.ts +45 -0
- package/es/account/MnemonicFactory.js +112 -0
- package/es/account/MnemonicFactory.js.map +1 -0
- package/es/account/Rpc.d.ts +10 -19
- package/es/account/Rpc.js +94 -0
- package/es/account/Rpc.js.map +1 -0
- package/es/aens.d.ts +144 -165
- package/es/aens.js +292 -0
- package/es/aens.js.map +1 -0
- package/es/aepp-wallet-communication/WalletConnectorFrame.d.ts +25 -0
- package/es/aepp-wallet-communication/WalletConnectorFrame.js +39 -0
- package/es/aepp-wallet-communication/WalletConnectorFrame.js.map +1 -0
- package/es/aepp-wallet-communication/WalletConnectorFrameBase.d.ts +43 -0
- package/es/aepp-wallet-communication/WalletConnectorFrameBase.js +110 -0
- package/es/aepp-wallet-communication/WalletConnectorFrameBase.js.map +1 -0
- package/es/aepp-wallet-communication/WalletConnectorFrameWithNode.d.ts +27 -0
- package/es/aepp-wallet-communication/WalletConnectorFrameWithNode.js +43 -0
- package/es/aepp-wallet-communication/WalletConnectorFrameWithNode.js.map +1 -0
- package/es/aepp-wallet-communication/connection/Browser.js +53 -0
- package/es/aepp-wallet-communication/connection/Browser.js.map +1 -0
- package/es/aepp-wallet-communication/connection/BrowserRuntime.d.ts +2 -2
- package/es/aepp-wallet-communication/connection/BrowserRuntime.js +54 -0
- package/es/aepp-wallet-communication/connection/BrowserRuntime.js.map +1 -0
- package/es/aepp-wallet-communication/connection/BrowserWindowMessage.d.ts +2 -2
- package/es/aepp-wallet-communication/connection/BrowserWindowMessage.js +90 -0
- package/es/aepp-wallet-communication/connection/BrowserWindowMessage.js.map +1 -0
- package/es/aepp-wallet-communication/connection-proxy.d.ts +2 -2
- package/es/aepp-wallet-communication/connection-proxy.js +17 -0
- package/es/aepp-wallet-communication/connection-proxy.js.map +1 -0
- package/es/aepp-wallet-communication/rpc/RpcClient.d.ts +1 -1
- package/es/aepp-wallet-communication/rpc/RpcClient.js +119 -0
- package/es/aepp-wallet-communication/rpc/RpcClient.js.map +1 -0
- package/es/aepp-wallet-communication/rpc/types.d.ts +13 -19
- package/es/aepp-wallet-communication/rpc/types.js +3 -0
- package/es/aepp-wallet-communication/rpc/types.js.map +1 -0
- package/es/aepp-wallet-communication/schema.d.ts +10 -3
- package/es/aepp-wallet-communication/schema.js +202 -0
- package/es/aepp-wallet-communication/schema.js.map +1 -0
- package/es/aepp-wallet-communication/wallet-detector.d.ts +4 -4
- package/es/aepp-wallet-communication/wallet-detector.js +44 -0
- package/es/aepp-wallet-communication/wallet-detector.js.map +1 -0
- package/es/apis/compiler/compiler.d.ts +2 -2
- package/es/apis/compiler/compiler.js +513 -0
- package/es/apis/compiler/compiler.js.map +1 -0
- package/es/apis/compiler/index.d.ts +2 -2
- package/es/apis/compiler/index.js +3 -0
- package/es/apis/compiler/index.js.map +1 -0
- package/es/apis/compiler/models/index.js +2 -0
- package/es/apis/compiler/models/index.js.map +1 -0
- package/es/apis/compiler/models/mappers.js +554 -0
- package/es/apis/compiler/models/mappers.js.map +1 -0
- package/es/apis/compiler/models/parameters.js +67 -0
- package/es/apis/compiler/models/parameters.js.map +1 -0
- package/es/apis/middleware/index.d.ts +2 -2
- package/es/apis/middleware/index.js +3 -0
- package/es/apis/middleware/index.js.map +1 -0
- package/es/apis/middleware/middleware.d.ts +222 -124
- package/es/apis/middleware/middleware.js +2146 -0
- package/es/apis/middleware/middleware.js.map +1 -0
- package/es/apis/middleware/models/index.d.ts +2062 -1198
- package/es/apis/middleware/models/index.js +2 -0
- package/es/apis/middleware/models/index.js.map +1 -0
- package/es/apis/middleware/models/mappers.d.ts +206 -81
- package/es/apis/middleware/models/mappers.js +9315 -0
- package/es/apis/middleware/models/mappers.js.map +1 -0
- package/es/apis/middleware/models/parameters.d.ts +78 -13
- package/es/apis/middleware/models/parameters.js +1164 -0
- package/es/apis/middleware/models/parameters.js.map +1 -0
- package/es/apis/node/index.d.ts +2 -2
- package/es/apis/node/index.js +3 -0
- package/es/apis/node/index.js.map +1 -0
- package/es/apis/node/models/index.d.ts +683 -631
- package/es/apis/node/models/index.js +2 -0
- package/es/apis/node/models/index.js.map +1 -0
- package/es/apis/node/models/mappers.d.ts +58 -55
- package/es/apis/node/models/mappers.js +5450 -0
- package/es/apis/node/models/mappers.js.map +1 -0
- package/es/apis/node/models/parameters.d.ts +5 -5
- package/es/apis/node/models/parameters.js +165 -0
- package/es/apis/node/models/parameters.js.map +1 -0
- package/es/apis/node/node.d.ts +113 -96
- package/es/apis/node/node.js +1292 -0
- package/es/apis/node/node.js.map +1 -0
- package/es/chain.d.ts +39 -26
- package/es/chain.js +448 -0
- package/es/chain.js.map +1 -0
- package/es/channel/Base.d.ts +12 -14
- package/es/channel/Base.js +246 -0
- package/es/channel/Base.js.map +1 -0
- package/es/channel/Contract.d.ts +12 -9
- package/es/channel/Contract.js +385 -0
- package/es/channel/Contract.js.map +1 -0
- package/es/channel/Spend.d.ts +10 -10
- package/es/channel/Spend.js +357 -0
- package/es/channel/Spend.js.map +1 -0
- package/es/channel/handlers.d.ts +4 -3
- package/es/channel/handlers.js +394 -0
- package/es/channel/handlers.js.map +1 -0
- package/es/channel/internal.d.ts +11 -10
- package/es/channel/internal.js +224 -0
- package/es/channel/internal.js.map +1 -0
- package/es/contract/Contract.d.ts +30 -21
- package/es/contract/Contract.js +535 -0
- package/es/contract/Contract.js.map +1 -0
- package/es/contract/compiler/Base.d.ts +2 -1
- package/es/contract/compiler/Base.js +6 -0
- package/es/contract/compiler/Base.js.map +1 -0
- package/es/contract/compiler/Cli.d.ts +4 -3
- package/es/contract/compiler/Cli.js +169 -0
- package/es/contract/compiler/Cli.js.map +1 -0
- package/es/contract/compiler/Http.d.ts +5 -4
- package/es/contract/compiler/Http.js +125 -0
- package/es/contract/compiler/Http.js.map +1 -0
- package/es/contract/compiler/HttpNode.d.ts +3 -3
- package/es/contract/compiler/HttpNode.js +29 -0
- package/es/contract/compiler/HttpNode.js.map +1 -0
- package/es/contract/compiler/getFileSystem.d.ts +1 -0
- package/es/contract/compiler/getFileSystem.js +33 -0
- package/es/contract/compiler/getFileSystem.js.map +1 -0
- package/es/contract/ga.d.ts +11 -15
- package/es/contract/ga.js +136 -0
- package/es/contract/ga.js.map +1 -0
- package/es/index-browser.d.ts +86 -51
- package/es/index-browser.js +85 -0
- package/es/index-browser.js.map +1 -0
- package/es/index.d.ts +4 -5
- package/es/index.js +5 -0
- package/es/index.js.map +1 -0
- package/es/oracle/Oracle.d.ts +79 -0
- package/es/oracle/Oracle.js +183 -0
- package/es/oracle/Oracle.js.map +1 -0
- package/es/oracle/OracleBase.d.ts +54 -0
- package/es/oracle/OracleBase.js +74 -0
- package/es/oracle/OracleBase.js.map +1 -0
- package/es/oracle/OracleClient.d.ts +60 -0
- package/es/oracle/OracleClient.js +105 -0
- package/es/oracle/OracleClient.js.map +1 -0
- package/es/send-transaction.d.ts +8 -8
- package/es/send-transaction.js +110 -0
- package/es/send-transaction.js.map +1 -0
- package/es/spend.d.ts +8 -13
- package/es/spend.js +93 -0
- package/es/spend.js.map +1 -0
- package/es/tx/builder/SchemaTypes.d.ts +3 -3
- package/es/tx/builder/SchemaTypes.js +2 -0
- package/es/tx/builder/SchemaTypes.js.map +1 -0
- package/es/tx/builder/common.d.ts +2 -2
- package/es/tx/builder/common.js +41 -0
- package/es/tx/builder/common.js.map +1 -0
- package/es/tx/builder/constants.d.ts +53 -27
- package/es/tx/builder/constants.js +170 -0
- package/es/tx/builder/constants.js.map +1 -0
- package/es/tx/builder/delegation/index.d.ts +3 -3
- package/es/tx/builder/delegation/index.js +24 -0
- package/es/tx/builder/delegation/index.js.map +1 -0
- package/es/tx/builder/delegation/schema.d.ts +21 -4
- package/es/tx/builder/delegation/schema.generated.d.ts +2 -2
- package/es/tx/builder/delegation/schema.generated.js +2 -0
- package/es/tx/builder/delegation/schema.generated.js.map +1 -0
- package/es/tx/builder/delegation/schema.js +83 -0
- package/es/tx/builder/delegation/schema.js.map +1 -0
- package/es/tx/builder/entry/constants.d.ts +35 -0
- package/es/tx/builder/entry/constants.js +45 -0
- package/es/tx/builder/entry/constants.js.map +1 -0
- package/es/tx/builder/entry/index.d.ts +38 -0
- package/es/tx/builder/entry/index.js +36 -0
- package/es/tx/builder/entry/index.js.map +1 -0
- package/es/tx/builder/entry/schema.d.ts +1030 -0
- package/es/tx/builder/entry/schema.generated.d.ts +607 -0
- package/es/tx/builder/entry/schema.generated.js +2 -0
- package/es/tx/builder/entry/schema.generated.js.map +1 -0
- package/es/tx/builder/entry/schema.js +204 -0
- package/es/tx/builder/entry/schema.js.map +1 -0
- package/es/tx/builder/field-types/abi-version.d.ts +4 -5
- package/es/tx/builder/field-types/abi-version.js +34 -0
- package/es/tx/builder/field-types/abi-version.js.map +1 -0
- package/es/tx/builder/field-types/address.d.ts +2 -3
- package/es/tx/builder/field-types/address.js +46 -0
- package/es/tx/builder/field-types/address.js.map +1 -0
- package/es/tx/builder/field-types/array.js +11 -0
- package/es/tx/builder/field-types/array.js.map +1 -0
- package/es/tx/builder/field-types/boolean.d.ts +0 -1
- package/es/tx/builder/field-types/boolean.js +10 -0
- package/es/tx/builder/field-types/boolean.js.map +1 -0
- package/es/tx/builder/field-types/coin-amount.d.ts +3 -4
- package/es/tx/builder/field-types/coin-amount.js +18 -0
- package/es/tx/builder/field-types/coin-amount.js.map +1 -0
- package/es/tx/builder/field-types/ct-version.d.ts +4 -19
- package/es/tx/builder/field-types/ct-version.js +57 -0
- package/es/tx/builder/field-types/ct-version.js.map +1 -0
- package/es/tx/builder/field-types/encoded.d.ts +1 -2
- package/es/tx/builder/field-types/encoded.js +18 -0
- package/es/tx/builder/field-types/encoded.js.map +1 -0
- package/es/tx/builder/field-types/entry.d.ts +5 -6
- package/es/tx/builder/field-types/entry.js +26 -0
- package/es/tx/builder/field-types/entry.js.map +1 -0
- package/es/tx/builder/field-types/enumeration.d.ts +0 -1
- package/es/tx/builder/field-types/enumeration.js +27 -0
- package/es/tx/builder/field-types/enumeration.js.map +1 -0
- package/es/tx/builder/field-types/fee.d.ts +8 -9
- package/es/tx/builder/field-types/fee.js +160 -0
- package/es/tx/builder/field-types/fee.js.map +1 -0
- package/es/tx/builder/field-types/field.d.ts +0 -1
- package/es/tx/builder/field-types/field.js +10 -0
- package/es/tx/builder/field-types/field.js.map +1 -0
- package/es/tx/builder/field-types/gas-limit.d.ts +4 -5
- package/es/tx/builder/field-types/gas-limit.js +31 -0
- package/es/tx/builder/field-types/gas-limit.js.map +1 -0
- package/es/tx/builder/field-types/gas-price.d.ts +10 -8
- package/es/tx/builder/field-types/gas-price.js +53 -0
- package/es/tx/builder/field-types/gas-price.js.map +1 -0
- package/es/tx/builder/field-types/interface.d.ts +7 -0
- package/es/tx/builder/field-types/interface.js +2 -0
- package/es/tx/builder/field-types/interface.js.map +1 -0
- package/es/tx/builder/field-types/map.d.ts +6 -7
- package/es/tx/builder/field-types/map.js +38 -0
- package/es/tx/builder/field-types/map.js.map +1 -0
- package/es/tx/builder/field-types/mptree.d.ts +12 -13
- package/es/tx/builder/field-types/mptree.js +223 -0
- package/es/tx/builder/field-types/mptree.js.map +1 -0
- package/es/tx/builder/field-types/name-fee.d.ts +3 -4
- package/es/tx/builder/field-types/name-fee.js +22 -0
- package/es/tx/builder/field-types/name-fee.js.map +1 -0
- package/es/tx/builder/field-types/name-id.d.ts +2 -3
- package/es/tx/builder/field-types/name-id.js +14 -0
- package/es/tx/builder/field-types/name-id.js.map +1 -0
- package/es/tx/builder/field-types/name.d.ts +1 -2
- package/es/tx/builder/field-types/name.js +16 -0
- package/es/tx/builder/field-types/name.js.map +1 -0
- package/es/tx/builder/field-types/nonce.d.ts +6 -4
- package/es/tx/builder/field-types/nonce.js +40 -0
- package/es/tx/builder/field-types/nonce.js.map +1 -0
- package/es/tx/builder/field-types/pointers.d.ts +9 -18
- package/es/tx/builder/field-types/pointers.js +69 -0
- package/es/tx/builder/field-types/pointers.js.map +1 -0
- package/es/tx/builder/field-types/query-fee.d.ts +4 -5
- package/es/tx/builder/field-types/query-fee.js +21 -0
- package/es/tx/builder/field-types/query-fee.js.map +1 -0
- package/es/tx/builder/field-types/raw.d.ts +0 -1
- package/es/tx/builder/field-types/raw.js +10 -0
- package/es/tx/builder/field-types/raw.js.map +1 -0
- package/es/tx/builder/field-types/short-u-int-const.d.ts +0 -1
- package/es/tx/builder/field-types/short-u-int-const.js +20 -0
- package/es/tx/builder/field-types/short-u-int-const.js.map +1 -0
- package/es/tx/builder/field-types/short-u-int.d.ts +0 -1
- package/es/tx/builder/field-types/short-u-int.js +10 -0
- package/es/tx/builder/field-types/short-u-int.js.map +1 -0
- package/es/tx/builder/field-types/string.d.ts +0 -1
- package/es/tx/builder/field-types/string.js +10 -0
- package/es/tx/builder/field-types/string.js.map +1 -0
- package/es/tx/builder/field-types/transaction.d.ts +10 -0
- package/es/tx/builder/field-types/transaction.js +26 -0
- package/es/tx/builder/field-types/transaction.js.map +1 -0
- package/es/tx/builder/field-types/ttl.d.ts +6 -11
- package/es/tx/builder/field-types/ttl.js +32 -0
- package/es/tx/builder/field-types/ttl.js.map +1 -0
- package/es/tx/builder/field-types/u-int.d.ts +1 -2
- package/es/tx/builder/field-types/u-int.js +13 -0
- package/es/tx/builder/field-types/u-int.js.map +1 -0
- package/es/tx/builder/field-types/with-default.js +9 -0
- package/es/tx/builder/field-types/with-default.js.map +1 -0
- package/es/tx/builder/field-types/with-formatting.js +9 -0
- package/es/tx/builder/field-types/with-formatting.js.map +1 -0
- package/es/tx/builder/field-types/wrapped.d.ts +5 -6
- package/es/tx/builder/field-types/wrapped.js +20 -0
- package/es/tx/builder/field-types/wrapped.js.map +1 -0
- package/es/tx/builder/helpers.d.ts +21 -16
- package/es/tx/builder/helpers.js +215 -0
- package/es/tx/builder/helpers.js.map +1 -0
- package/es/tx/builder/index.d.ts +4 -13
- package/es/tx/builder/index.js +91 -0
- package/es/tx/builder/index.js.map +1 -0
- package/es/tx/builder/schema.d.ts +587 -1724
- package/es/tx/builder/schema.generated.d.ts +45 -1001
- package/es/tx/builder/schema.generated.js +2 -0
- package/es/tx/builder/schema.generated.js.map +1 -0
- package/es/tx/builder/schema.js +357 -0
- package/es/tx/builder/schema.js.map +1 -0
- package/es/tx/execution-cost.d.ts +5 -2
- package/es/tx/execution-cost.js +143 -0
- package/es/tx/execution-cost.js.map +1 -0
- package/es/tx/transaction-signer.d.ts +2 -1
- package/es/tx/transaction-signer.js +25 -0
- package/es/tx/transaction-signer.js.map +1 -0
- package/es/tx/validator.d.ts +2 -2
- package/es/tx/validator.js +207 -0
- package/es/tx/validator.js.map +1 -0
- package/es/typings/blakejs/index.d.js +2 -0
- package/es/typings/blakejs/index.d.js.map +1 -0
- package/es/typings/sha-js/index.d.js +2 -0
- package/es/typings/sha-js/index.d.js.map +1 -0
- package/es/typings/tweetnacl-auth/index.d.js +2 -0
- package/es/typings/tweetnacl-auth/index.d.js.map +1 -0
- package/es/utils/MiddlewarePage.d.ts +37 -0
- package/es/utils/MiddlewarePage.js +57 -0
- package/es/utils/MiddlewarePage.js.map +1 -0
- package/es/utils/amount-formatter.d.ts +19 -5
- package/es/utils/amount-formatter.js +113 -0
- package/es/utils/amount-formatter.js.map +1 -0
- package/es/utils/autorest.d.ts +7 -2
- package/es/utils/autorest.js +212 -0
- package/es/utils/autorest.js.map +1 -0
- package/es/utils/bignumber.js +21 -0
- package/es/utils/bignumber.js.map +1 -0
- package/es/utils/bytes.d.ts +2 -1
- package/es/utils/bytes.js +32 -0
- package/es/utils/bytes.js.map +1 -0
- package/es/utils/crypto.d.ts +48 -59
- package/es/utils/crypto.js +162 -0
- package/es/utils/crypto.js.map +1 -0
- package/es/utils/encoder-types.d.ts +3 -1
- package/es/utils/encoder-types.js +36 -0
- package/es/utils/encoder-types.js.map +1 -0
- package/es/utils/encoder.d.ts +4 -3
- package/es/utils/encoder.js +106 -0
- package/es/utils/encoder.js.map +1 -0
- package/es/utils/errors.d.ts +4 -10
- package/es/utils/errors.js +746 -0
- package/es/utils/errors.js.map +1 -0
- package/es/utils/json-big.d.ts +1 -1
- package/es/utils/json-big.js +25 -0
- package/es/utils/json-big.js.map +1 -0
- package/es/utils/jwt.d.ts +2 -2
- package/es/utils/jwt.js +112 -0
- package/es/utils/jwt.js.map +1 -0
- package/es/utils/other.d.ts +4 -4
- package/es/utils/other.js +48 -0
- package/es/utils/other.js.map +1 -0
- package/es/utils/semver-satisfies.js +12 -0
- package/es/utils/semver-satisfies.js.map +1 -0
- package/es/utils/string.js +18 -0
- package/es/utils/string.js.map +1 -0
- package/es/utils/typed-data.d.ts +6 -2
- package/es/utils/typed-data.js +58 -0
- package/es/utils/typed-data.js.map +1 -0
- package/es/utils/wrap-proxy.js +15 -0
- package/es/utils/wrap-proxy.js.map +1 -0
- package/package.json +91 -113
- package/bin/aesophia_cli_8 +0 -0
- package/dist/aepp-sdk.browser-script.js +0 -3
- package/dist/aepp-sdk.browser-script.js.LICENSE.txt +0 -12
- package/dist/aepp-sdk.browser-script.js.map +0 -1
- package/dist/aepp-sdk.browser.js +0 -3
- package/dist/aepp-sdk.browser.js.map +0 -1
- package/dist/aepp-sdk.js +0 -30486
- package/dist/aepp-sdk.js.map +0 -1
- package/es/AeSdk.mjs +0 -76
- package/es/AeSdk.mjs.map +0 -1
- package/es/AeSdkAepp.mjs +0 -145
- package/es/AeSdkAepp.mjs.map +0 -1
- package/es/AeSdkBase.mjs +0 -289
- package/es/AeSdkBase.mjs.map +0 -1
- package/es/AeSdkMethods.mjs +0 -92
- package/es/AeSdkMethods.mjs.map +0 -1
- package/es/AeSdkWallet.mjs +0 -368
- package/es/AeSdkWallet.mjs.map +0 -1
- package/es/Middleware.mjs +0 -94
- package/es/Middleware.mjs.map +0 -1
- package/es/MiddlewareSubscriber.mjs +0 -189
- package/es/MiddlewareSubscriber.mjs.map +0 -1
- package/es/Node.mjs +0 -148
- package/es/Node.mjs.map +0 -1
- package/es/account/Base.mjs +0 -134
- package/es/account/Base.mjs.map +0 -1
- package/es/account/Generalized.mjs +0 -129
- package/es/account/Generalized.mjs.map +0 -1
- package/es/account/Ledger.mjs +0 -131
- package/es/account/Ledger.mjs.map +0 -1
- package/es/account/LedgerFactory.mjs +0 -79
- package/es/account/LedgerFactory.mjs.map +0 -1
- package/es/account/Memory.mjs +0 -187
- package/es/account/Memory.mjs.map +0 -1
- package/es/account/Rpc.mjs +0 -178
- package/es/account/Rpc.mjs.map +0 -1
- package/es/aens.mjs +0 -290
- package/es/aens.mjs.map +0 -1
- package/es/aepp-wallet-communication/connection/Browser.mjs +0 -52
- package/es/aepp-wallet-communication/connection/Browser.mjs.map +0 -1
- package/es/aepp-wallet-communication/connection/BrowserRuntime.mjs +0 -55
- package/es/aepp-wallet-communication/connection/BrowserRuntime.mjs.map +0 -1
- package/es/aepp-wallet-communication/connection/BrowserWindowMessage.mjs +0 -98
- package/es/aepp-wallet-communication/connection/BrowserWindowMessage.mjs.map +0 -1
- package/es/aepp-wallet-communication/connection-proxy.mjs +0 -17
- package/es/aepp-wallet-communication/connection-proxy.mjs.map +0 -1
- package/es/aepp-wallet-communication/rpc/RpcClient.mjs +0 -134
- package/es/aepp-wallet-communication/rpc/RpcClient.mjs.map +0 -1
- package/es/aepp-wallet-communication/rpc/types.mjs +0 -3
- package/es/aepp-wallet-communication/rpc/types.mjs.map +0 -1
- package/es/aepp-wallet-communication/schema.mjs +0 -187
- package/es/aepp-wallet-communication/schema.mjs.map +0 -1
- package/es/aepp-wallet-communication/wallet-detector.mjs +0 -44
- package/es/aepp-wallet-communication/wallet-detector.mjs.map +0 -1
- package/es/apis/compiler/compiler.mjs +0 -513
- package/es/apis/compiler/compiler.mjs.map +0 -1
- package/es/apis/compiler/index.mjs +0 -3
- package/es/apis/compiler/index.mjs.map +0 -1
- package/es/apis/compiler/models/index.mjs +0 -2
- package/es/apis/compiler/models/index.mjs.map +0 -1
- package/es/apis/compiler/models/mappers.mjs +0 -554
- package/es/apis/compiler/models/mappers.mjs.map +0 -1
- package/es/apis/compiler/models/parameters.mjs +0 -67
- package/es/apis/compiler/models/parameters.mjs.map +0 -1
- package/es/apis/middleware/index.mjs +0 -3
- package/es/apis/middleware/index.mjs.map +0 -1
- package/es/apis/middleware/middleware.mjs +0 -1623
- package/es/apis/middleware/middleware.mjs.map +0 -1
- package/es/apis/middleware/models/index.mjs +0 -630
- package/es/apis/middleware/models/index.mjs.map +0 -1
- package/es/apis/middleware/models/mappers.mjs +0 -3707
- package/es/apis/middleware/models/mappers.mjs.map +0 -1
- package/es/apis/middleware/models/parameters.mjs +0 -444
- package/es/apis/middleware/models/parameters.mjs.map +0 -1
- package/es/apis/node/index.mjs +0 -3
- package/es/apis/node/index.mjs.map +0 -1
- package/es/apis/node/models/index.mjs +0 -2
- package/es/apis/node/models/index.mjs.map +0 -1
- package/es/apis/node/models/mappers.mjs +0 -4395
- package/es/apis/node/models/mappers.mjs.map +0 -1
- package/es/apis/node/models/parameters.mjs +0 -165
- package/es/apis/node/models/parameters.mjs.map +0 -1
- package/es/apis/node/node.mjs +0 -1240
- package/es/apis/node/node.mjs.map +0 -1
- package/es/chain.mjs +0 -441
- package/es/chain.mjs.map +0 -1
- package/es/channel/Base.mjs +0 -254
- package/es/channel/Base.mjs.map +0 -1
- package/es/channel/Contract.mjs +0 -383
- package/es/channel/Contract.mjs.map +0 -1
- package/es/channel/Spend.mjs +0 -357
- package/es/channel/Spend.mjs.map +0 -1
- package/es/channel/handlers.mjs +0 -383
- package/es/channel/handlers.mjs.map +0 -1
- package/es/channel/internal.mjs +0 -237
- package/es/channel/internal.mjs.map +0 -1
- package/es/contract/Contract.mjs +0 -540
- package/es/contract/Contract.mjs.map +0 -1
- package/es/contract/compiler/Base.mjs +0 -5
- package/es/contract/compiler/Base.mjs.map +0 -1
- package/es/contract/compiler/Cli.mjs +0 -197
- package/es/contract/compiler/Cli.mjs.map +0 -1
- package/es/contract/compiler/Cli8.d.ts +0 -13
- package/es/contract/compiler/Cli8.mjs +0 -22
- package/es/contract/compiler/Cli8.mjs.map +0 -1
- package/es/contract/compiler/Http.mjs +0 -126
- package/es/contract/compiler/Http.mjs.map +0 -1
- package/es/contract/compiler/HttpNode.mjs +0 -31
- package/es/contract/compiler/HttpNode.mjs.map +0 -1
- package/es/contract/compiler/getFileSystem.mjs +0 -40
- package/es/contract/compiler/getFileSystem.mjs.map +0 -1
- package/es/contract/delegation-signature.d.ts +0 -45
- package/es/contract/delegation-signature.mjs +0 -80
- package/es/contract/delegation-signature.mjs.map +0 -1
- package/es/contract/ga.mjs +0 -135
- package/es/contract/ga.mjs.map +0 -1
- package/es/deprecated.d.ts +0 -62
- package/es/deprecated.mjs +0 -87
- package/es/deprecated.mjs.map +0 -1
- package/es/index-browser.mjs +0 -49
- package/es/index-browser.mjs.map +0 -1
- package/es/index.mjs +0 -6
- package/es/index.mjs.map +0 -1
- package/es/oracle.d.ts +0 -125
- package/es/oracle.mjs +0 -242
- package/es/oracle.mjs.map +0 -1
- package/es/send-transaction.mjs +0 -109
- package/es/send-transaction.mjs.map +0 -1
- package/es/spend.mjs +0 -90
- package/es/spend.mjs.map +0 -1
- package/es/tx/builder/SchemaTypes.mjs +0 -2
- package/es/tx/builder/SchemaTypes.mjs.map +0 -1
- package/es/tx/builder/common.mjs +0 -42
- package/es/tx/builder/common.mjs.map +0 -1
- package/es/tx/builder/constants.mjs +0 -147
- package/es/tx/builder/constants.mjs.map +0 -1
- package/es/tx/builder/delegation/index.mjs +0 -24
- package/es/tx/builder/delegation/index.mjs.map +0 -1
- package/es/tx/builder/delegation/schema.generated.mjs +0 -2
- package/es/tx/builder/delegation/schema.generated.mjs.map +0 -1
- package/es/tx/builder/delegation/schema.mjs +0 -54
- package/es/tx/builder/delegation/schema.mjs.map +0 -1
- package/es/tx/builder/field-types/abi-version.mjs +0 -37
- package/es/tx/builder/field-types/abi-version.mjs.map +0 -1
- package/es/tx/builder/field-types/address.mjs +0 -48
- package/es/tx/builder/field-types/address.mjs.map +0 -1
- package/es/tx/builder/field-types/array.mjs +0 -11
- package/es/tx/builder/field-types/array.mjs.map +0 -1
- package/es/tx/builder/field-types/boolean.mjs +0 -13
- package/es/tx/builder/field-types/boolean.mjs.map +0 -1
- package/es/tx/builder/field-types/coin-amount.mjs +0 -18
- package/es/tx/builder/field-types/coin-amount.mjs.map +0 -1
- package/es/tx/builder/field-types/ct-version.mjs +0 -75
- package/es/tx/builder/field-types/ct-version.mjs.map +0 -1
- package/es/tx/builder/field-types/encoded.mjs +0 -21
- package/es/tx/builder/field-types/encoded.mjs.map +0 -1
- package/es/tx/builder/field-types/entry.mjs +0 -29
- package/es/tx/builder/field-types/entry.mjs.map +0 -1
- package/es/tx/builder/field-types/enumeration.mjs +0 -30
- package/es/tx/builder/field-types/enumeration.mjs.map +0 -1
- package/es/tx/builder/field-types/fee.mjs +0 -160
- package/es/tx/builder/field-types/fee.mjs.map +0 -1
- package/es/tx/builder/field-types/field.mjs +0 -13
- package/es/tx/builder/field-types/field.mjs.map +0 -1
- package/es/tx/builder/field-types/gas-limit.mjs +0 -31
- package/es/tx/builder/field-types/gas-limit.mjs.map +0 -1
- package/es/tx/builder/field-types/gas-price.mjs +0 -60
- package/es/tx/builder/field-types/gas-price.mjs.map +0 -1
- package/es/tx/builder/field-types/index.d.ts +0 -39
- package/es/tx/builder/field-types/index.mjs +0 -32
- package/es/tx/builder/field-types/index.mjs.map +0 -1
- package/es/tx/builder/field-types/map.mjs +0 -38
- package/es/tx/builder/field-types/map.mjs.map +0 -1
- package/es/tx/builder/field-types/mptree.mjs +0 -251
- package/es/tx/builder/field-types/mptree.mjs.map +0 -1
- package/es/tx/builder/field-types/name-fee.mjs +0 -22
- package/es/tx/builder/field-types/name-fee.mjs.map +0 -1
- package/es/tx/builder/field-types/name-id.mjs +0 -14
- package/es/tx/builder/field-types/name-id.mjs.map +0 -1
- package/es/tx/builder/field-types/name.mjs +0 -16
- package/es/tx/builder/field-types/name.mjs.map +0 -1
- package/es/tx/builder/field-types/nonce.mjs +0 -31
- package/es/tx/builder/field-types/nonce.mjs.map +0 -1
- package/es/tx/builder/field-types/pointers.mjs +0 -33
- package/es/tx/builder/field-types/pointers.mjs.map +0 -1
- package/es/tx/builder/field-types/pointers2.d.ts +0 -23
- package/es/tx/builder/field-types/pointers2.mjs +0 -65
- package/es/tx/builder/field-types/pointers2.mjs.map +0 -1
- package/es/tx/builder/field-types/query-fee.mjs +0 -20
- package/es/tx/builder/field-types/query-fee.mjs.map +0 -1
- package/es/tx/builder/field-types/raw.mjs +0 -13
- package/es/tx/builder/field-types/raw.mjs.map +0 -1
- package/es/tx/builder/field-types/short-u-int-const.mjs +0 -20
- package/es/tx/builder/field-types/short-u-int-const.mjs.map +0 -1
- package/es/tx/builder/field-types/short-u-int.mjs +0 -10
- package/es/tx/builder/field-types/short-u-int.mjs.map +0 -1
- package/es/tx/builder/field-types/string.mjs +0 -10
- package/es/tx/builder/field-types/string.mjs.map +0 -1
- package/es/tx/builder/field-types/ttl.mjs +0 -32
- package/es/tx/builder/field-types/ttl.mjs.map +0 -1
- package/es/tx/builder/field-types/u-int.mjs +0 -13
- package/es/tx/builder/field-types/u-int.mjs.map +0 -1
- package/es/tx/builder/field-types/with-default.mjs +0 -9
- package/es/tx/builder/field-types/with-default.mjs.map +0 -1
- package/es/tx/builder/field-types/with-formatting.mjs +0 -9
- package/es/tx/builder/field-types/with-formatting.mjs.map +0 -1
- package/es/tx/builder/field-types/wrapped.mjs +0 -20
- package/es/tx/builder/field-types/wrapped.mjs.map +0 -1
- package/es/tx/builder/helpers.mjs +0 -209
- package/es/tx/builder/helpers.mjs.map +0 -1
- package/es/tx/builder/index.mjs +0 -98
- package/es/tx/builder/index.mjs.map +0 -1
- package/es/tx/builder/schema.generated.mjs +0 -2
- package/es/tx/builder/schema.generated.mjs.map +0 -1
- package/es/tx/builder/schema.mjs +0 -513
- package/es/tx/builder/schema.mjs.map +0 -1
- package/es/tx/execution-cost.mjs +0 -139
- package/es/tx/execution-cost.mjs.map +0 -1
- package/es/tx/transaction-signer.mjs +0 -24
- package/es/tx/transaction-signer.mjs.map +0 -1
- package/es/tx/validator.mjs +0 -214
- package/es/tx/validator.mjs.map +0 -1
- package/es/typings/@aeternity__uuid/index.d.mjs +0 -2
- package/es/typings/@aeternity__uuid/index.d.mjs.map +0 -1
- package/es/typings/bip32-path/index.d.mjs +0 -2
- package/es/typings/bip32-path/index.d.mjs.map +0 -1
- package/es/typings/blakejs/index.d.mjs +0 -2
- package/es/typings/blakejs/index.d.mjs.map +0 -1
- package/es/typings/sha-js/index.d.mjs +0 -2
- package/es/typings/sha-js/index.d.mjs.map +0 -1
- package/es/typings/tweetnacl-auth/index.d.mjs +0 -2
- package/es/typings/tweetnacl-auth/index.d.mjs.map +0 -1
- package/es/utils/amount-formatter.mjs +0 -97
- package/es/utils/amount-formatter.mjs.map +0 -1
- package/es/utils/autorest.mjs +0 -141
- package/es/utils/autorest.mjs.map +0 -1
- package/es/utils/bignumber.mjs +0 -21
- package/es/utils/bignumber.mjs.map +0 -1
- package/es/utils/bytes.mjs +0 -32
- package/es/utils/bytes.mjs.map +0 -1
- package/es/utils/crypto.mjs +0 -193
- package/es/utils/crypto.mjs.map +0 -1
- package/es/utils/encoder-types.mjs +0 -35
- package/es/utils/encoder-types.mjs.map +0 -1
- package/es/utils/encoder.mjs +0 -110
- package/es/utils/encoder.mjs.map +0 -1
- package/es/utils/errors.mjs +0 -756
- package/es/utils/errors.mjs.map +0 -1
- package/es/utils/hd-wallet.d.ts +0 -61
- package/es/utils/hd-wallet.mjs +0 -169
- package/es/utils/hd-wallet.mjs.map +0 -1
- package/es/utils/json-big.mjs +0 -25
- package/es/utils/json-big.mjs.map +0 -1
- package/es/utils/jwt.mjs +0 -120
- package/es/utils/jwt.mjs.map +0 -1
- package/es/utils/keystore.d.ts +0 -57
- package/es/utils/keystore.mjs +0 -140
- package/es/utils/keystore.mjs.map +0 -1
- package/es/utils/other.mjs +0 -49
- package/es/utils/other.mjs.map +0 -1
- package/es/utils/semver-satisfies.mjs +0 -12
- package/es/utils/semver-satisfies.mjs.map +0 -1
- package/es/utils/string.mjs +0 -18
- package/es/utils/string.mjs.map +0 -1
- package/es/utils/typed-data.mjs +0 -55
- package/es/utils/typed-data.mjs.map +0 -1
- package/es/utils/wrap-proxy.mjs +0 -15
- package/es/utils/wrap-proxy.mjs.map +0 -1
- package/src/AeSdk.ts +0 -75
- package/src/AeSdkAepp.ts +0 -179
- package/src/AeSdkBase.ts +0 -315
- package/src/AeSdkMethods.ts +0 -149
- package/src/AeSdkWallet.ts +0 -383
- package/src/Middleware.ts +0 -149
- package/src/MiddlewareSubscriber.ts +0 -207
- package/src/Node.ts +0 -213
- package/src/account/Base.ts +0 -224
- package/src/account/Generalized.ts +0 -113
- package/src/account/Ledger.ts +0 -161
- package/src/account/LedgerFactory.ts +0 -86
- package/src/account/Memory.ts +0 -218
- package/src/account/Rpc.ts +0 -170
- package/src/aens.ts +0 -372
- package/src/aepp-wallet-communication/connection/Browser.ts +0 -54
- package/src/aepp-wallet-communication/connection/BrowserRuntime.ts +0 -57
- package/src/aepp-wallet-communication/connection/BrowserWindowMessage.ts +0 -105
- package/src/aepp-wallet-communication/connection-proxy.ts +0 -19
- package/src/aepp-wallet-communication/rpc/RpcClient.ts +0 -153
- package/src/aepp-wallet-communication/rpc/types.ts +0 -115
- package/src/aepp-wallet-communication/schema.ts +0 -212
- package/src/aepp-wallet-communication/wallet-detector.ts +0 -54
- package/src/apis/compiler/compiler.ts +0 -527
- package/src/apis/compiler/index.ts +0 -2
- package/src/apis/compiler/models/index.ts +0 -236
- package/src/apis/compiler/models/mappers.ts +0 -555
- package/src/apis/compiler/models/parameters.ts +0 -87
- package/src/apis/middleware/index.ts +0 -2
- package/src/apis/middleware/middleware.ts +0 -1928
- package/src/apis/middleware/models/index.ts +0 -1949
- package/src/apis/middleware/models/mappers.ts +0 -3808
- package/src/apis/middleware/models/parameters.ts +0 -493
- package/src/apis/node/index.ts +0 -2
- package/src/apis/node/models/index.ts +0 -1335
- package/src/apis/node/models/mappers.ts +0 -4508
- package/src/apis/node/models/parameters.ts +0 -188
- package/src/apis/node/node.ts +0 -1420
- package/src/chain.ts +0 -433
- package/src/channel/Base.ts +0 -302
- package/src/channel/Contract.ts +0 -465
- package/src/channel/Spend.ts +0 -385
- package/src/channel/handlers.ts +0 -386
- package/src/channel/internal.ts +0 -461
- package/src/contract/Contract.ts +0 -629
- package/src/contract/compiler/Base.ts +0 -123
- package/src/contract/compiler/Cli.ts +0 -173
- package/src/contract/compiler/Cli8.ts +0 -17
- package/src/contract/compiler/Http.ts +0 -134
- package/src/contract/compiler/HttpNode.ts +0 -32
- package/src/contract/compiler/getFileSystem.ts +0 -42
- package/src/contract/delegation-signature.ts +0 -88
- package/src/contract/ga.ts +0 -138
- package/src/deprecated.ts +0 -77
- package/src/index-browser.ts +0 -121
- package/src/index.ts +0 -6
- package/src/oracle.ts +0 -311
- package/src/send-transaction.ts +0 -136
- package/src/spend.ts +0 -136
- package/src/tx/builder/SchemaTypes.ts +0 -79
- package/src/tx/builder/common.ts +0 -74
- package/src/tx/builder/constants.ts +0 -155
- package/src/tx/builder/delegation/index.ts +0 -28
- package/src/tx/builder/delegation/schema.generated.ts +0 -143
- package/src/tx/builder/delegation/schema.ts +0 -61
- package/src/tx/builder/field-types/abi-version.ts +0 -44
- package/src/tx/builder/field-types/address.ts +0 -62
- package/src/tx/builder/field-types/array.ts +0 -19
- package/src/tx/builder/field-types/boolean.ts +0 -9
- package/src/tx/builder/field-types/coin-amount.ts +0 -26
- package/src/tx/builder/field-types/ct-version.ts +0 -83
- package/src/tx/builder/field-types/encoded.ts +0 -27
- package/src/tx/builder/field-types/entry.ts +0 -33
- package/src/tx/builder/field-types/enumeration.ts +0 -32
- package/src/tx/builder/field-types/fee.ts +0 -191
- package/src/tx/builder/field-types/field.ts +0 -9
- package/src/tx/builder/field-types/gas-limit.ts +0 -46
- package/src/tx/builder/field-types/gas-price.ts +0 -67
- package/src/tx/builder/field-types/index.ts +0 -40
- package/src/tx/builder/field-types/map.ts +0 -45
- package/src/tx/builder/field-types/mptree.ts +0 -243
- package/src/tx/builder/field-types/name-fee.ts +0 -32
- package/src/tx/builder/field-types/name-id.ts +0 -17
- package/src/tx/builder/field-types/name.ts +0 -18
- package/src/tx/builder/field-types/nonce.ts +0 -46
- package/src/tx/builder/field-types/pointers.ts +0 -41
- package/src/tx/builder/field-types/pointers2.ts +0 -62
- package/src/tx/builder/field-types/query-fee.ts +0 -25
- package/src/tx/builder/field-types/raw.ts +0 -9
- package/src/tx/builder/field-types/short-u-int-const.ts +0 -30
- package/src/tx/builder/field-types/short-u-int.ts +0 -11
- package/src/tx/builder/field-types/string.ts +0 -11
- package/src/tx/builder/field-types/ttl.ts +0 -34
- package/src/tx/builder/field-types/u-int.ts +0 -15
- package/src/tx/builder/field-types/with-default.ts +0 -18
- package/src/tx/builder/field-types/with-formatting.ts +0 -18
- package/src/tx/builder/field-types/wrapped.ts +0 -32
- package/src/tx/builder/helpers.ts +0 -252
- package/src/tx/builder/index.ts +0 -123
- package/src/tx/builder/schema.generated.ts +0 -2049
- package/src/tx/builder/schema.ts +0 -612
- package/src/tx/execution-cost.ts +0 -164
- package/src/tx/transaction-signer.ts +0 -27
- package/src/tx/validator.ts +0 -222
- package/src/typings/@aeternity__uuid/index.d.ts +0 -5
- package/src/typings/bip32-path/index.d.ts +0 -33
- package/src/typings/blakejs/index.d.ts +0 -5
- package/src/typings/sha-js/index.d.ts +0 -5
- package/src/typings/tweetnacl-auth/index.d.ts +0 -14
- package/src/utils/amount-formatter.ts +0 -98
- package/src/utils/autorest.ts +0 -153
- package/src/utils/bignumber.ts +0 -21
- package/src/utils/bytes.ts +0 -28
- package/src/utils/crypto.ts +0 -216
- package/src/utils/encoder-types.ts +0 -63
- package/src/utils/encoder.ts +0 -145
- package/src/utils/errors.ts +0 -777
- package/src/utils/hd-wallet.ts +0 -191
- package/src/utils/json-big.ts +0 -27
- package/src/utils/jwt.ts +0 -126
- package/src/utils/keystore.ts +0 -189
- package/src/utils/other.ts +0 -64
- package/src/utils/semver-satisfies.ts +0 -22
- package/src/utils/string.ts +0 -17
- package/src/utils/typed-data.ts +0 -69
- package/src/utils/wrap-proxy.ts +0 -24
- package/types-legacy/ts4.2/AeSdk.d.ts +0 -44
- package/types-legacy/ts4.2/AeSdkAepp.d.ts +0 -71
- package/types-legacy/ts4.2/AeSdkBase.d.ts +0 -164
- package/types-legacy/ts4.2/AeSdkMethods.d.ts +0 -146
- package/types-legacy/ts4.2/AeSdkWallet.d.ts +0 -90
- package/types-legacy/ts4.2/Middleware.d.ts +0 -46
- package/types-legacy/ts4.2/MiddlewareSubscriber.d.ts +0 -30
- package/types-legacy/ts4.2/Node.d.ts +0 -95
- package/types-legacy/ts4.2/account/Base.d.ts +0 -147
- package/types-legacy/ts4.2/account/Generalized.d.ts +0 -22
- package/types-legacy/ts4.2/account/Ledger.d.ts +0 -34
- package/types-legacy/ts4.2/account/LedgerFactory.d.ts +0 -39
- package/types-legacy/ts4.2/account/Memory.d.ts +0 -46
- package/types-legacy/ts4.2/account/Rpc.d.ts +0 -35
- package/types-legacy/ts4.2/aens.d.ts +0 -193
- package/types-legacy/ts4.2/aepp-wallet-communication/connection/Browser.d.ts +0 -33
- package/types-legacy/ts4.2/aepp-wallet-communication/connection/BrowserRuntime.d.ts +0 -22
- package/types-legacy/ts4.2/aepp-wallet-communication/connection/BrowserWindowMessage.d.ts +0 -36
- package/types-legacy/ts4.2/aepp-wallet-communication/connection-proxy.d.ts +0 -11
- package/types-legacy/ts4.2/aepp-wallet-communication/rpc/RpcClient.d.ts +0 -34
- package/types-legacy/ts4.2/aepp-wallet-communication/rpc/types.d.ts +0 -120
- package/types-legacy/ts4.2/aepp-wallet-communication/schema.d.ts +0 -129
- package/types-legacy/ts4.2/aepp-wallet-communication/wallet-detector.d.ts +0 -22
- package/types-legacy/ts4.2/apis/compiler/compiler.d.ts +0 -86
- package/types-legacy/ts4.2/apis/compiler/index.d.ts +0 -2
- package/types-legacy/ts4.2/apis/compiler/models/index.d.ts +0 -191
- package/types-legacy/ts4.2/apis/compiler/models/mappers.d.ts +0 -22
- package/types-legacy/ts4.2/apis/compiler/models/parameters.d.ts +0 -12
- package/types-legacy/ts4.2/apis/middleware/index.d.ts +0 -2
- package/types-legacy/ts4.2/apis/middleware/middleware.d.ts +0 -327
- package/types-legacy/ts4.2/apis/middleware/models/index.d.ts +0 -1645
- package/types-legacy/ts4.2/apis/middleware/models/mappers.d.ts +0 -109
- package/types-legacy/ts4.2/apis/middleware/models/parameters.d.ts +0 -46
- package/types-legacy/ts4.2/apis/node/index.d.ts +0 -2
- package/types-legacy/ts4.2/apis/node/models/index.d.ts +0 -1129
- package/types-legacy/ts4.2/apis/node/models/mappers.d.ts +0 -99
- package/types-legacy/ts4.2/apis/node/models/parameters.d.ts +0 -17
- package/types-legacy/ts4.2/apis/node/node.d.ts +0 -236
- package/types-legacy/ts4.2/chain.d.ts +0 -227
- package/types-legacy/ts4.2/channel/Base.d.ts +0 -168
- package/types-legacy/ts4.2/channel/Contract.d.ts +0 -239
- package/types-legacy/ts4.2/channel/Spend.d.ts +0 -213
- package/types-legacy/ts4.2/channel/handlers.d.ts +0 -21
- package/types-legacy/ts4.2/channel/internal.d.ts +0 -232
- package/types-legacy/ts4.2/contract/Contract.d.ts +0 -164
- package/types-legacy/ts4.2/contract/compiler/Base.d.ts +0 -104
- package/types-legacy/ts4.2/contract/compiler/Cli.d.ts +0 -26
- package/types-legacy/ts4.2/contract/compiler/Cli8.d.ts +0 -13
- package/types-legacy/ts4.2/contract/compiler/Http.d.ts +0 -28
- package/types-legacy/ts4.2/contract/compiler/HttpNode.d.ts +0 -15
- package/types-legacy/ts4.2/contract/compiler/getFileSystem.d.ts +0 -6
- package/types-legacy/ts4.2/contract/delegation-signature.d.ts +0 -45
- package/types-legacy/ts4.2/contract/ga.d.ts +0 -59
- package/types-legacy/ts4.2/deprecated.d.ts +0 -62
- package/types-legacy/ts4.2/globals.d.ts +0 -16
- package/types-legacy/ts4.2/index-browser.d.ts +0 -51
- package/types-legacy/ts4.2/index.d.ts +0 -6
- package/types-legacy/ts4.2/oracle.d.ts +0 -125
- package/types-legacy/ts4.2/send-transaction.d.ts +0 -53
- package/types-legacy/ts4.2/spend.d.ts +0 -56
- package/types-legacy/ts4.2/tx/builder/SchemaTypes.d.ts +0 -37
- package/types-legacy/ts4.2/tx/builder/common.d.ts +0 -32
- package/types-legacy/ts4.2/tx/builder/constants.d.ts +0 -100
- package/types-legacy/ts4.2/tx/builder/delegation/index.d.ts +0 -20
- package/types-legacy/ts4.2/tx/builder/delegation/schema.d.ts +0 -136
- package/types-legacy/ts4.2/tx/builder/delegation/schema.generated.d.ts +0 -141
- package/types-legacy/ts4.2/tx/builder/field-types/abi-version.d.ts +0 -19
- package/types-legacy/ts4.2/tx/builder/field-types/address.d.ts +0 -21
- package/types-legacy/ts4.2/tx/builder/field-types/array.d.ts +0 -7
- package/types-legacy/ts4.2/tx/builder/field-types/boolean.d.ts +0 -6
- package/types-legacy/ts4.2/tx/builder/field-types/coin-amount.d.ts +0 -11
- package/types-legacy/ts4.2/tx/builder/field-types/ct-version.d.ts +0 -72
- package/types-legacy/ts4.2/tx/builder/field-types/encoded.d.ts +0 -6
- package/types-legacy/ts4.2/tx/builder/field-types/entry.d.ts +0 -11
- package/types-legacy/ts4.2/tx/builder/field-types/enumeration.d.ts +0 -7
- package/types-legacy/ts4.2/tx/builder/field-types/fee.d.ts +0 -30
- package/types-legacy/ts4.2/tx/builder/field-types/field.d.ts +0 -6
- package/types-legacy/ts4.2/tx/builder/field-types/gas-limit.d.ts +0 -16
- package/types-legacy/ts4.2/tx/builder/field-types/gas-price.d.ts +0 -17
- package/types-legacy/ts4.2/tx/builder/field-types/index.d.ts +0 -45
- package/types-legacy/ts4.2/tx/builder/field-types/map.d.ts +0 -13
- package/types-legacy/ts4.2/tx/builder/field-types/mptree.d.ts +0 -48
- package/types-legacy/ts4.2/tx/builder/field-types/name-fee.d.ts +0 -18
- package/types-legacy/ts4.2/tx/builder/field-types/name-id.d.ts +0 -11
- package/types-legacy/ts4.2/tx/builder/field-types/name.d.ts +0 -13
- package/types-legacy/ts4.2/tx/builder/field-types/nonce.d.ts +0 -15
- package/types-legacy/ts4.2/tx/builder/field-types/pointers.d.ts +0 -26
- package/types-legacy/ts4.2/tx/builder/field-types/pointers2.d.ts +0 -26
- package/types-legacy/ts4.2/tx/builder/field-types/query-fee.d.ts +0 -19
- package/types-legacy/ts4.2/tx/builder/field-types/raw.d.ts +0 -6
- package/types-legacy/ts4.2/tx/builder/field-types/short-u-int-const.d.ts +0 -7
- package/types-legacy/ts4.2/tx/builder/field-types/short-u-int.d.ts +0 -6
- package/types-legacy/ts4.2/tx/builder/field-types/string.d.ts +0 -6
- package/types-legacy/ts4.2/tx/builder/field-types/ttl.d.ts +0 -20
- package/types-legacy/ts4.2/tx/builder/field-types/u-int.d.ts +0 -7
- package/types-legacy/ts4.2/tx/builder/field-types/with-default.d.ts +0 -7
- package/types-legacy/ts4.2/tx/builder/field-types/with-formatting.d.ts +0 -7
- package/types-legacy/ts4.2/tx/builder/field-types/wrapped.d.ts +0 -14
- package/types-legacy/ts4.2/tx/builder/helpers.d.ts +0 -119
- package/types-legacy/ts4.2/tx/builder/index.d.ts +0 -62
- package/types-legacy/ts4.2/tx/builder/schema.d.ts +0 -3256
- package/types-legacy/ts4.2/tx/builder/schema.generated.d.ts +0 -2047
- package/types-legacy/ts4.2/tx/execution-cost.d.ts +0 -53
- package/types-legacy/ts4.2/tx/transaction-signer.d.ts +0 -6
- package/types-legacy/ts4.2/tx/validator.d.ts +0 -18
- package/types-legacy/ts4.2/utils/amount-formatter.d.ts +0 -41
- package/types-legacy/ts4.2/utils/autorest.d.ts +0 -7
- package/types-legacy/ts4.2/utils/bignumber.d.ts +0 -13
- package/types-legacy/ts4.2/utils/bytes.d.ts +0 -9
- package/types-legacy/ts4.2/utils/crypto.d.ts +0 -100
- package/types-legacy/ts4.2/utils/encoder-types.d.ts +0 -61
- package/types-legacy/ts4.2/utils/encoder.d.ts +0 -24
- package/types-legacy/ts4.2/utils/errors.d.ts +0 -464
- package/types-legacy/ts4.2/utils/hd-wallet.d.ts +0 -68
- package/types-legacy/ts4.2/utils/json-big.d.ts +0 -5
- package/types-legacy/ts4.2/utils/jwt.d.ts +0 -53
- package/types-legacy/ts4.2/utils/keystore.d.ts +0 -57
- package/types-legacy/ts4.2/utils/other.d.ts +0 -32
- package/types-legacy/ts4.2/utils/semver-satisfies.d.ts +0 -1
- package/types-legacy/ts4.2/utils/string.d.ts +0 -12
- package/types-legacy/ts4.2/utils/typed-data.d.ts +0 -58
- package/types-legacy/ts4.2/utils/wrap-proxy.d.ts +0 -2
- package/types-legacy/ts4.5/AeSdk.d.ts +0 -44
- package/types-legacy/ts4.5/AeSdkAepp.d.ts +0 -71
- package/types-legacy/ts4.5/AeSdkBase.d.ts +0 -164
- package/types-legacy/ts4.5/AeSdkMethods.d.ts +0 -146
- package/types-legacy/ts4.5/AeSdkWallet.d.ts +0 -90
- package/types-legacy/ts4.5/Middleware.d.ts +0 -46
- package/types-legacy/ts4.5/MiddlewareSubscriber.d.ts +0 -30
- package/types-legacy/ts4.5/Node.d.ts +0 -95
- package/types-legacy/ts4.5/account/Base.d.ts +0 -147
- package/types-legacy/ts4.5/account/Generalized.d.ts +0 -22
- package/types-legacy/ts4.5/account/Ledger.d.ts +0 -34
- package/types-legacy/ts4.5/account/LedgerFactory.d.ts +0 -39
- package/types-legacy/ts4.5/account/Memory.d.ts +0 -46
- package/types-legacy/ts4.5/account/Rpc.d.ts +0 -35
- package/types-legacy/ts4.5/aens.d.ts +0 -193
- package/types-legacy/ts4.5/aepp-wallet-communication/connection/Browser.d.ts +0 -33
- package/types-legacy/ts4.5/aepp-wallet-communication/connection/BrowserRuntime.d.ts +0 -22
- package/types-legacy/ts4.5/aepp-wallet-communication/connection/BrowserWindowMessage.d.ts +0 -36
- package/types-legacy/ts4.5/aepp-wallet-communication/connection-proxy.d.ts +0 -11
- package/types-legacy/ts4.5/aepp-wallet-communication/rpc/RpcClient.d.ts +0 -34
- package/types-legacy/ts4.5/aepp-wallet-communication/rpc/types.d.ts +0 -120
- package/types-legacy/ts4.5/aepp-wallet-communication/schema.d.ts +0 -129
- package/types-legacy/ts4.5/aepp-wallet-communication/wallet-detector.d.ts +0 -22
- package/types-legacy/ts4.5/apis/compiler/compiler.d.ts +0 -86
- package/types-legacy/ts4.5/apis/compiler/index.d.ts +0 -2
- package/types-legacy/ts4.5/apis/compiler/models/index.d.ts +0 -191
- package/types-legacy/ts4.5/apis/compiler/models/mappers.d.ts +0 -22
- package/types-legacy/ts4.5/apis/compiler/models/parameters.d.ts +0 -12
- package/types-legacy/ts4.5/apis/middleware/index.d.ts +0 -2
- package/types-legacy/ts4.5/apis/middleware/middleware.d.ts +0 -327
- package/types-legacy/ts4.5/apis/middleware/models/index.d.ts +0 -1645
- package/types-legacy/ts4.5/apis/middleware/models/mappers.d.ts +0 -109
- package/types-legacy/ts4.5/apis/middleware/models/parameters.d.ts +0 -46
- package/types-legacy/ts4.5/apis/node/index.d.ts +0 -2
- package/types-legacy/ts4.5/apis/node/models/index.d.ts +0 -1129
- package/types-legacy/ts4.5/apis/node/models/mappers.d.ts +0 -99
- package/types-legacy/ts4.5/apis/node/models/parameters.d.ts +0 -17
- package/types-legacy/ts4.5/apis/node/node.d.ts +0 -236
- package/types-legacy/ts4.5/chain.d.ts +0 -227
- package/types-legacy/ts4.5/channel/Base.d.ts +0 -168
- package/types-legacy/ts4.5/channel/Contract.d.ts +0 -239
- package/types-legacy/ts4.5/channel/Spend.d.ts +0 -213
- package/types-legacy/ts4.5/channel/handlers.d.ts +0 -21
- package/types-legacy/ts4.5/channel/internal.d.ts +0 -232
- package/types-legacy/ts4.5/contract/Contract.d.ts +0 -164
- package/types-legacy/ts4.5/contract/compiler/Base.d.ts +0 -104
- package/types-legacy/ts4.5/contract/compiler/Cli.d.ts +0 -26
- package/types-legacy/ts4.5/contract/compiler/Cli8.d.ts +0 -13
- package/types-legacy/ts4.5/contract/compiler/Http.d.ts +0 -28
- package/types-legacy/ts4.5/contract/compiler/HttpNode.d.ts +0 -15
- package/types-legacy/ts4.5/contract/compiler/getFileSystem.d.ts +0 -6
- package/types-legacy/ts4.5/contract/delegation-signature.d.ts +0 -45
- package/types-legacy/ts4.5/contract/ga.d.ts +0 -59
- package/types-legacy/ts4.5/deprecated.d.ts +0 -62
- package/types-legacy/ts4.5/index-browser.d.ts +0 -51
- package/types-legacy/ts4.5/index.d.ts +0 -5
- package/types-legacy/ts4.5/oracle.d.ts +0 -125
- package/types-legacy/ts4.5/send-transaction.d.ts +0 -53
- package/types-legacy/ts4.5/spend.d.ts +0 -56
- package/types-legacy/ts4.5/tx/builder/SchemaTypes.d.ts +0 -37
- package/types-legacy/ts4.5/tx/builder/common.d.ts +0 -32
- package/types-legacy/ts4.5/tx/builder/constants.d.ts +0 -100
- package/types-legacy/ts4.5/tx/builder/delegation/index.d.ts +0 -20
- package/types-legacy/ts4.5/tx/builder/delegation/schema.d.ts +0 -136
- package/types-legacy/ts4.5/tx/builder/delegation/schema.generated.d.ts +0 -141
- package/types-legacy/ts4.5/tx/builder/field-types/abi-version.d.ts +0 -19
- package/types-legacy/ts4.5/tx/builder/field-types/address.d.ts +0 -21
- package/types-legacy/ts4.5/tx/builder/field-types/array.d.ts +0 -7
- package/types-legacy/ts4.5/tx/builder/field-types/boolean.d.ts +0 -6
- package/types-legacy/ts4.5/tx/builder/field-types/coin-amount.d.ts +0 -11
- package/types-legacy/ts4.5/tx/builder/field-types/ct-version.d.ts +0 -72
- package/types-legacy/ts4.5/tx/builder/field-types/encoded.d.ts +0 -6
- package/types-legacy/ts4.5/tx/builder/field-types/entry.d.ts +0 -11
- package/types-legacy/ts4.5/tx/builder/field-types/enumeration.d.ts +0 -7
- package/types-legacy/ts4.5/tx/builder/field-types/fee.d.ts +0 -30
- package/types-legacy/ts4.5/tx/builder/field-types/field.d.ts +0 -6
- package/types-legacy/ts4.5/tx/builder/field-types/gas-limit.d.ts +0 -16
- package/types-legacy/ts4.5/tx/builder/field-types/gas-price.d.ts +0 -17
- package/types-legacy/ts4.5/tx/builder/field-types/index.d.ts +0 -45
- package/types-legacy/ts4.5/tx/builder/field-types/map.d.ts +0 -13
- package/types-legacy/ts4.5/tx/builder/field-types/mptree.d.ts +0 -48
- package/types-legacy/ts4.5/tx/builder/field-types/name-fee.d.ts +0 -18
- package/types-legacy/ts4.5/tx/builder/field-types/name-id.d.ts +0 -11
- package/types-legacy/ts4.5/tx/builder/field-types/name.d.ts +0 -13
- package/types-legacy/ts4.5/tx/builder/field-types/nonce.d.ts +0 -15
- package/types-legacy/ts4.5/tx/builder/field-types/pointers.d.ts +0 -26
- package/types-legacy/ts4.5/tx/builder/field-types/pointers2.d.ts +0 -26
- package/types-legacy/ts4.5/tx/builder/field-types/query-fee.d.ts +0 -19
- package/types-legacy/ts4.5/tx/builder/field-types/raw.d.ts +0 -6
- package/types-legacy/ts4.5/tx/builder/field-types/short-u-int-const.d.ts +0 -7
- package/types-legacy/ts4.5/tx/builder/field-types/short-u-int.d.ts +0 -6
- package/types-legacy/ts4.5/tx/builder/field-types/string.d.ts +0 -6
- package/types-legacy/ts4.5/tx/builder/field-types/ttl.d.ts +0 -20
- package/types-legacy/ts4.5/tx/builder/field-types/u-int.d.ts +0 -7
- package/types-legacy/ts4.5/tx/builder/field-types/with-default.d.ts +0 -7
- package/types-legacy/ts4.5/tx/builder/field-types/with-formatting.d.ts +0 -7
- package/types-legacy/ts4.5/tx/builder/field-types/wrapped.d.ts +0 -14
- package/types-legacy/ts4.5/tx/builder/helpers.d.ts +0 -119
- package/types-legacy/ts4.5/tx/builder/index.d.ts +0 -62
- package/types-legacy/ts4.5/tx/builder/schema.d.ts +0 -3256
- package/types-legacy/ts4.5/tx/builder/schema.generated.d.ts +0 -2047
- package/types-legacy/ts4.5/tx/execution-cost.d.ts +0 -53
- package/types-legacy/ts4.5/tx/transaction-signer.d.ts +0 -6
- package/types-legacy/ts4.5/tx/validator.d.ts +0 -18
- package/types-legacy/ts4.5/utils/amount-formatter.d.ts +0 -41
- package/types-legacy/ts4.5/utils/autorest.d.ts +0 -7
- package/types-legacy/ts4.5/utils/bignumber.d.ts +0 -13
- package/types-legacy/ts4.5/utils/bytes.d.ts +0 -9
- package/types-legacy/ts4.5/utils/crypto.d.ts +0 -100
- package/types-legacy/ts4.5/utils/encoder-types.d.ts +0 -61
- package/types-legacy/ts4.5/utils/encoder.d.ts +0 -24
- package/types-legacy/ts4.5/utils/errors.d.ts +0 -464
- package/types-legacy/ts4.5/utils/hd-wallet.d.ts +0 -68
- package/types-legacy/ts4.5/utils/json-big.d.ts +0 -5
- package/types-legacy/ts4.5/utils/jwt.d.ts +0 -53
- package/types-legacy/ts4.5/utils/keystore.d.ts +0 -57
- package/types-legacy/ts4.5/utils/other.d.ts +0 -32
- package/types-legacy/ts4.5/utils/semver-satisfies.d.ts +0 -1
- package/types-legacy/ts4.5/utils/string.d.ts +0 -12
- package/types-legacy/ts4.5/utils/typed-data.d.ts +0 -58
- package/types-legacy/ts4.5/utils/wrap-proxy.d.ts +0 -2
- /package/dist/{aepp-sdk.browser.js.LICENSE.txt → aepp-sdk.browser.cjs.LICENSE.txt} +0 -0
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import { Buffer as _Buffer } from "buffer";
|
|
2
|
+
import _defineProperty from "@babel/runtime-corejs3/helpers/defineProperty";
|
|
3
|
+
function _classPrivateMethodInitSpec(e, a) { _checkPrivateRedeclaration(e, a), a.add(e); }
|
|
4
|
+
function _classPrivateFieldInitSpec(e, t, a) { _checkPrivateRedeclaration(e, t), t.set(e, a); }
|
|
5
|
+
function _checkPrivateRedeclaration(e, t) { if (t.has(e)) throw new TypeError("Cannot initialize the same private elements twice on an object"); }
|
|
6
|
+
function _classPrivateFieldGet(s, a) { return s.get(_assertClassBrand(s, a)); }
|
|
7
|
+
function _classPrivateFieldSet(s, a, r) { return s.set(_assertClassBrand(s, a), r), r; }
|
|
8
|
+
function _assertClassBrand(e, t, n) { if ("function" == typeof e ? e === t : e.has(t)) return arguments.length < 3 ? t : n; throw new TypeError("Private element is not present on this object"); }
|
|
9
|
+
import AccountLedger, { CLA, GET_ADDRESS, GET_APP_CONFIGURATION } from './Ledger.js';
|
|
10
|
+
import { UnsupportedVersionError } from '../utils/errors.js';
|
|
11
|
+
import semverSatisfies from '../utils/semver-satisfies.js';
|
|
12
|
+
import AccountBaseFactory from './BaseFactory.js';
|
|
13
|
+
var _ensureReadyPromise = /*#__PURE__*/new WeakMap();
|
|
14
|
+
var _AccountLedgerFactory_brand = /*#__PURE__*/new WeakSet();
|
|
15
|
+
/**
|
|
16
|
+
* A factory class that generates instances of AccountLedger based on provided transport.
|
|
17
|
+
* @category account
|
|
18
|
+
*/
|
|
19
|
+
export default class AccountLedgerFactory extends AccountBaseFactory {
|
|
20
|
+
/**
|
|
21
|
+
* @param transport - Connection to Ledger to use
|
|
22
|
+
*/
|
|
23
|
+
constructor(transport) {
|
|
24
|
+
super();
|
|
25
|
+
_classPrivateMethodInitSpec(this, _AccountLedgerFactory_brand);
|
|
26
|
+
_classPrivateFieldInitSpec(this, _ensureReadyPromise, void 0);
|
|
27
|
+
// TODO: remove after release Ledger app v1.0.0
|
|
28
|
+
_defineProperty(this, "_enableExperimentalLedgerAppSupport", false);
|
|
29
|
+
this.transport = transport;
|
|
30
|
+
transport.decorateAppAPIMethods(this, ['getAddress', 'getAppConfiguration'], 'w0w');
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* It throws an exception if Aeternity app on Ledger has an incompatible version, not opened or
|
|
34
|
+
* not installed.
|
|
35
|
+
*/
|
|
36
|
+
async ensureReady() {
|
|
37
|
+
const {
|
|
38
|
+
version
|
|
39
|
+
} = await _assertClassBrand(_AccountLedgerFactory_brand, this, _getAppConfiguration).call(this);
|
|
40
|
+
const oldApp = [version, '0.4.4', '0.5.0'];
|
|
41
|
+
const newApp = [version, '1.0.0', '2.0.0'];
|
|
42
|
+
if (!semverSatisfies(...oldApp) && (!this._enableExperimentalLedgerAppSupport || !semverSatisfies(...newApp))) throw new UnsupportedVersionError('Aeternity app on Ledger', ...oldApp);
|
|
43
|
+
_classPrivateFieldSet(_ensureReadyPromise, this, Promise.resolve());
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* @returns the version of Aeternity app installed on Ledger wallet
|
|
47
|
+
*/
|
|
48
|
+
async getAppConfiguration() {
|
|
49
|
+
return _assertClassBrand(_AccountLedgerFactory_brand, this, _getAppConfiguration).call(this);
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
/**
|
|
53
|
+
* Get `ak_`-prefixed address for a given account index.
|
|
54
|
+
* @param accountIndex - Index of account
|
|
55
|
+
* @param verify - Ask user to confirm address by showing it on the device screen
|
|
56
|
+
*/
|
|
57
|
+
async getAddress(accountIndex, verify = false) {
|
|
58
|
+
await _assertClassBrand(_AccountLedgerFactory_brand, this, _ensureReady).call(this);
|
|
59
|
+
const buffer = _Buffer.alloc(4);
|
|
60
|
+
buffer.writeUInt32BE(accountIndex, 0);
|
|
61
|
+
const response = await this.transport.send(CLA, GET_ADDRESS, verify ? 0x01 : 0x00, 0x00, buffer);
|
|
62
|
+
const addressLength = response[0];
|
|
63
|
+
return response.subarray(1, 1 + addressLength).toString('ascii');
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
/**
|
|
67
|
+
* Get an instance of AccountLedger for a given account index.
|
|
68
|
+
* @param accountIndex - Index of account
|
|
69
|
+
*/
|
|
70
|
+
async initialize(accountIndex) {
|
|
71
|
+
return new AccountLedger(this.transport, accountIndex, await this.getAddress(accountIndex));
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
async function _ensureReady() {
|
|
75
|
+
var _classPrivateFieldGet2;
|
|
76
|
+
(_classPrivateFieldGet2 = _classPrivateFieldGet(_ensureReadyPromise, this)) !== null && _classPrivateFieldGet2 !== void 0 ? _classPrivateFieldGet2 : _classPrivateFieldSet(_ensureReadyPromise, this, this.ensureReady());
|
|
77
|
+
return _classPrivateFieldGet(_ensureReadyPromise, this);
|
|
78
|
+
}
|
|
79
|
+
async function _getAppConfiguration() {
|
|
80
|
+
let response = await this.transport.send(CLA, GET_APP_CONFIGURATION, 0x00, 0x00);
|
|
81
|
+
if (response.length === 6) response = response.subarray(1);
|
|
82
|
+
return {
|
|
83
|
+
version: [response[0], response[1], response[2]].join('.')
|
|
84
|
+
};
|
|
85
|
+
}
|
|
86
|
+
//# sourceMappingURL=LedgerFactory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LedgerFactory.js","names":["AccountLedger","CLA","GET_ADDRESS","GET_APP_CONFIGURATION","UnsupportedVersionError","semverSatisfies","AccountBaseFactory","_ensureReadyPromise","WeakMap","_AccountLedgerFactory_brand","WeakSet","AccountLedgerFactory","constructor","transport","_classPrivateMethodInitSpec","_classPrivateFieldInitSpec","_defineProperty","decorateAppAPIMethods","ensureReady","version","_assertClassBrand","_getAppConfiguration","call","oldApp","newApp","_enableExperimentalLedgerAppSupport","_classPrivateFieldSet","Promise","resolve","getAppConfiguration","getAddress","accountIndex","verify","_ensureReady","buffer","_Buffer","alloc","writeUInt32BE","response","send","addressLength","subarray","toString","initialize","_classPrivateFieldGet2","_classPrivateFieldGet","length","join"],"sources":["../../src/account/LedgerFactory.ts"],"sourcesContent":["import type Transport from '@ledgerhq/hw-transport';\nimport AccountLedger, { CLA, GET_ADDRESS, GET_APP_CONFIGURATION } from './Ledger.js';\nimport { UnsupportedVersionError } from '../utils/errors.js';\nimport { Encoded } from '../utils/encoder.js';\nimport semverSatisfies from '../utils/semver-satisfies.js';\nimport AccountBaseFactory from './BaseFactory.js';\n\ninterface AppConfiguration {\n version: string;\n}\n\n/**\n * A factory class that generates instances of AccountLedger based on provided transport.\n * @category account\n */\nexport default class AccountLedgerFactory extends AccountBaseFactory {\n /**\n * @param transport - Connection to Ledger to use\n */\n constructor(readonly transport: Transport) {\n super();\n transport.decorateAppAPIMethods(this, ['getAddress', 'getAppConfiguration'], 'w0w');\n }\n\n #ensureReadyPromise?: Promise<void>;\n\n // TODO: remove after release Ledger app v1.0.0\n _enableExperimentalLedgerAppSupport = false;\n\n /**\n * It throws an exception if Aeternity app on Ledger has an incompatible version, not opened or\n * not installed.\n */\n async ensureReady(): Promise<void> {\n const { version } = await this.#getAppConfiguration();\n const oldApp = [version, '0.4.4', '0.5.0'] as const;\n const newApp = [version, '1.0.0', '2.0.0'] as const;\n if (\n !semverSatisfies(...oldApp) &&\n (!this._enableExperimentalLedgerAppSupport || !semverSatisfies(...newApp))\n )\n throw new UnsupportedVersionError('Aeternity app on Ledger', ...oldApp);\n this.#ensureReadyPromise = Promise.resolve();\n }\n\n async #ensureReady(): Promise<void> {\n this.#ensureReadyPromise ??= this.ensureReady();\n return this.#ensureReadyPromise;\n }\n\n async #getAppConfiguration(): Promise<AppConfiguration> {\n let response = await this.transport.send(CLA, GET_APP_CONFIGURATION, 0x00, 0x00);\n if (response.length === 6) response = response.subarray(1);\n return {\n version: [response[0], response[1], response[2]].join('.'),\n };\n }\n\n /**\n * @returns the version of Aeternity app installed on Ledger wallet\n */\n async getAppConfiguration(): Promise<AppConfiguration> {\n return this.#getAppConfiguration();\n }\n\n /**\n * Get `ak_`-prefixed address for a given account index.\n * @param accountIndex - Index of account\n * @param verify - Ask user to confirm address by showing it on the device screen\n */\n async getAddress(accountIndex: number, verify = false): Promise<Encoded.AccountAddress> {\n await this.#ensureReady();\n const buffer = Buffer.alloc(4);\n buffer.writeUInt32BE(accountIndex, 0);\n const response = await this.transport.send(\n CLA,\n GET_ADDRESS,\n verify ? 0x01 : 0x00,\n 0x00,\n buffer,\n );\n const addressLength = response[0];\n return response.subarray(1, 1 + addressLength).toString('ascii') as Encoded.AccountAddress;\n }\n\n /**\n * Get an instance of AccountLedger for a given account index.\n * @param accountIndex - Index of account\n */\n async initialize(accountIndex: number): Promise<AccountLedger> {\n return new AccountLedger(this.transport, accountIndex, await this.getAddress(accountIndex));\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
package/es/account/Memory.d.ts
CHANGED
|
@@ -1,45 +1,34 @@
|
|
|
1
|
-
import AccountBase from './Base';
|
|
2
|
-
import { Encoded } from '../utils/encoder';
|
|
3
|
-
import { AciValue } from '../utils/typed-data';
|
|
4
|
-
import { AensName, ConsensusProtocolVersion } from '../tx/builder/constants';
|
|
1
|
+
import AccountBase from './Base.js';
|
|
2
|
+
import { Encoded } from '../utils/encoder.js';
|
|
3
|
+
import { AciValue } from '../utils/typed-data.js';
|
|
5
4
|
export declare function getBufferToSign(transaction: Encoded.Transaction, networkId: string, innerTx: boolean): Uint8Array;
|
|
6
5
|
/**
|
|
7
6
|
* In-memory account class
|
|
7
|
+
* @category account
|
|
8
8
|
*/
|
|
9
9
|
export default class AccountMemory extends AccountBase {
|
|
10
|
+
#private;
|
|
11
|
+
readonly secretKey: Encoded.AccountSecretKey;
|
|
10
12
|
readonly address: Encoded.AccountAddress;
|
|
11
13
|
/**
|
|
12
14
|
* @param secretKey - Secret key
|
|
13
15
|
*/
|
|
14
|
-
constructor(secretKey:
|
|
16
|
+
constructor(secretKey: Encoded.AccountSecretKey);
|
|
15
17
|
/**
|
|
16
18
|
* Generates a new AccountMemory using a random secret key
|
|
17
19
|
*/
|
|
18
20
|
static generate(): AccountMemory;
|
|
21
|
+
/**
|
|
22
|
+
* @deprecated Use `unsafeSign` method instead
|
|
23
|
+
*/
|
|
19
24
|
sign(data: string | Uint8Array, options?: any): Promise<Uint8Array>;
|
|
25
|
+
unsafeSign(data: string | Uint8Array, options?: any): Promise<Uint8Array>;
|
|
20
26
|
signTransaction(transaction: Encoded.Transaction, { innerTx, networkId, ...options }?: {
|
|
21
27
|
innerTx?: boolean;
|
|
22
28
|
networkId?: string;
|
|
23
29
|
}): Promise<Encoded.Transaction>;
|
|
24
30
|
signMessage(message: string, options?: any): Promise<Uint8Array>;
|
|
25
31
|
signTypedData(data: Encoded.ContractBytearray, aci: AciValue, { name, version, networkId, contractAddress, ...options }?: Parameters<AccountBase['signTypedData']>[2]): Promise<Encoded.Signature>;
|
|
26
|
-
signDelegationToContract(contractAddress: Encoded.ContractAddress, { networkId, consensusProtocolVersion, isOracle }?: {
|
|
27
|
-
networkId?: string;
|
|
28
|
-
consensusProtocolVersion?: ConsensusProtocolVersion;
|
|
29
|
-
isOracle?: boolean;
|
|
30
|
-
}): Promise<Encoded.Signature>;
|
|
31
|
-
signNameDelegationToContract(contractAddress: Encoded.ContractAddress, name: AensName, { networkId, consensusProtocolVersion }?: {
|
|
32
|
-
networkId?: string;
|
|
33
|
-
consensusProtocolVersion?: ConsensusProtocolVersion;
|
|
34
|
-
}): Promise<Encoded.Signature>;
|
|
35
|
-
signAllNamesDelegationToContract(contractAddress: Encoded.ContractAddress, { networkId, consensusProtocolVersion }?: {
|
|
36
|
-
networkId?: string;
|
|
37
|
-
consensusProtocolVersion?: ConsensusProtocolVersion;
|
|
38
|
-
}): Promise<Encoded.Signature>;
|
|
39
|
-
signOracleQueryDelegationToContract(contractAddress: Encoded.ContractAddress, oracleQueryId: Encoded.OracleQueryId, { networkId, consensusProtocolVersion }?: {
|
|
40
|
-
networkId?: string;
|
|
41
|
-
consensusProtocolVersion?: ConsensusProtocolVersion;
|
|
42
|
-
}): Promise<Encoded.Signature>;
|
|
43
32
|
signDelegation(delegation: Encoded.Bytearray, { networkId }?: {
|
|
44
33
|
networkId?: string;
|
|
45
34
|
}): Promise<Encoded.Signature>;
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
import { Buffer as _Buffer } from "buffer";
|
|
2
|
+
function _classPrivateFieldInitSpec(e, t, a) { _checkPrivateRedeclaration(e, t), t.set(e, a); }
|
|
3
|
+
function _checkPrivateRedeclaration(e, t) { if (t.has(e)) throw new TypeError("Cannot initialize the same private elements twice on an object"); }
|
|
4
|
+
function _classPrivateFieldGet(s, a) { return s.get(_assertClassBrand(s, a)); }
|
|
5
|
+
function _classPrivateFieldSet(s, a, r) { return s.set(_assertClassBrand(s, a), r), r; }
|
|
6
|
+
function _assertClassBrand(e, t, n) { if ("function" == typeof e ? e === t : e.has(t)) return arguments.length < 3 ? t : n; throw new TypeError("Private element is not present on this object"); }
|
|
7
|
+
import nacl from 'tweetnacl';
|
|
8
|
+
import AccountBase from './Base.js';
|
|
9
|
+
import { hash, hashMessage, messagePrefixLength } from '../utils/crypto.js';
|
|
10
|
+
import { ArgumentError } from '../utils/errors.js';
|
|
11
|
+
import { decode, encode, Encoding } from '../utils/encoder.js';
|
|
12
|
+
import { concatBuffers } from '../utils/other.js';
|
|
13
|
+
import { hashTypedData } from '../utils/typed-data.js';
|
|
14
|
+
import { buildTx } from '../tx/builder/index.js';
|
|
15
|
+
import { Tag } from '../tx/builder/constants.js';
|
|
16
|
+
export function getBufferToSign(transaction, networkId, innerTx) {
|
|
17
|
+
const prefixes = [networkId];
|
|
18
|
+
if (innerTx) prefixes.push('inner_tx');
|
|
19
|
+
const rlpBinaryTx = decode(transaction);
|
|
20
|
+
return concatBuffers([_Buffer.from(prefixes.join('-')), hash(rlpBinaryTx)]);
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
/**
|
|
24
|
+
* In-memory account class
|
|
25
|
+
* @category account
|
|
26
|
+
*/
|
|
27
|
+
var _secretKeyDecoded = /*#__PURE__*/new WeakMap();
|
|
28
|
+
export default class AccountMemory extends AccountBase {
|
|
29
|
+
/**
|
|
30
|
+
* @param secretKey - Secret key
|
|
31
|
+
*/
|
|
32
|
+
constructor(secretKey) {
|
|
33
|
+
super();
|
|
34
|
+
_classPrivateFieldInitSpec(this, _secretKeyDecoded, void 0);
|
|
35
|
+
this.secretKey = secretKey;
|
|
36
|
+
const keyPair = nacl.sign.keyPair.fromSeed(decode(secretKey));
|
|
37
|
+
_classPrivateFieldSet(_secretKeyDecoded, this, keyPair.secretKey);
|
|
38
|
+
this.address = encode(keyPair.publicKey, Encoding.AccountAddress);
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
/**
|
|
42
|
+
* Generates a new AccountMemory using a random secret key
|
|
43
|
+
*/
|
|
44
|
+
static generate() {
|
|
45
|
+
const secretKey = encode(nacl.randomBytes(32), Encoding.AccountSecretKey);
|
|
46
|
+
return new AccountMemory(secretKey);
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
/**
|
|
50
|
+
* @deprecated Use `unsafeSign` method instead
|
|
51
|
+
*/
|
|
52
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
53
|
+
async sign(data, options) {
|
|
54
|
+
return this.unsafeSign(data, options);
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
58
|
+
async unsafeSign(data, options) {
|
|
59
|
+
return nacl.sign.detached(_Buffer.from(data), _classPrivateFieldGet(_secretKeyDecoded, this));
|
|
60
|
+
}
|
|
61
|
+
async signTransaction(transaction, {
|
|
62
|
+
innerTx,
|
|
63
|
+
networkId,
|
|
64
|
+
...options
|
|
65
|
+
} = {}) {
|
|
66
|
+
if (networkId == null) {
|
|
67
|
+
throw new ArgumentError('networkId', 'provided', networkId);
|
|
68
|
+
}
|
|
69
|
+
const rlpBinaryTx = decode(transaction);
|
|
70
|
+
const txWithNetworkId = getBufferToSign(transaction, networkId, innerTx === true);
|
|
71
|
+
const signatures = [await this.unsafeSign(txWithNetworkId, options)];
|
|
72
|
+
return buildTx({
|
|
73
|
+
tag: Tag.SignedTx,
|
|
74
|
+
encodedTx: rlpBinaryTx,
|
|
75
|
+
signatures
|
|
76
|
+
});
|
|
77
|
+
}
|
|
78
|
+
async signMessage(message, options) {
|
|
79
|
+
return this.unsafeSign(hashMessage(message), options);
|
|
80
|
+
}
|
|
81
|
+
async signTypedData(data, aci, {
|
|
82
|
+
name,
|
|
83
|
+
version,
|
|
84
|
+
networkId,
|
|
85
|
+
contractAddress,
|
|
86
|
+
...options
|
|
87
|
+
} = {}) {
|
|
88
|
+
const dHash = hashTypedData(data, aci, {
|
|
89
|
+
name,
|
|
90
|
+
version,
|
|
91
|
+
networkId,
|
|
92
|
+
contractAddress
|
|
93
|
+
});
|
|
94
|
+
const signature = await this.unsafeSign(dHash, options);
|
|
95
|
+
return encode(signature, Encoding.Signature);
|
|
96
|
+
}
|
|
97
|
+
async signDelegation(delegation, {
|
|
98
|
+
networkId
|
|
99
|
+
} = {}) {
|
|
100
|
+
if (networkId == null) throw new ArgumentError('networkId', 'provided', networkId);
|
|
101
|
+
const payload = concatBuffers([messagePrefixLength, new Uint8Array([1]), _Buffer.from(networkId), decode(delegation)]);
|
|
102
|
+
const signature = await this.unsafeSign(payload);
|
|
103
|
+
return encode(signature, Encoding.Signature);
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
//# sourceMappingURL=Memory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Memory.js","names":["nacl","AccountBase","hash","hashMessage","messagePrefixLength","ArgumentError","decode","encode","Encoding","concatBuffers","hashTypedData","buildTx","Tag","getBufferToSign","transaction","networkId","innerTx","prefixes","push","rlpBinaryTx","_Buffer","from","join","_secretKeyDecoded","WeakMap","AccountMemory","constructor","secretKey","_classPrivateFieldInitSpec","keyPair","sign","fromSeed","_classPrivateFieldSet","address","publicKey","AccountAddress","generate","randomBytes","AccountSecretKey","data","options","unsafeSign","detached","_classPrivateFieldGet","signTransaction","txWithNetworkId","signatures","tag","SignedTx","encodedTx","signMessage","message","signTypedData","aci","name","version","contractAddress","dHash","signature","Signature","signDelegation","delegation","payload","Uint8Array"],"sources":["../../src/account/Memory.ts"],"sourcesContent":["import nacl from 'tweetnacl';\nimport AccountBase from './Base.js';\nimport { hash, hashMessage, messagePrefixLength } from '../utils/crypto.js';\nimport { ArgumentError } from '../utils/errors.js';\nimport { decode, encode, Encoded, Encoding } from '../utils/encoder.js';\nimport { concatBuffers } from '../utils/other.js';\nimport { hashTypedData, AciValue } from '../utils/typed-data.js';\nimport { buildTx } from '../tx/builder/index.js';\nimport { Tag } from '../tx/builder/constants.js';\n\nexport function getBufferToSign(\n transaction: Encoded.Transaction,\n networkId: string,\n innerTx: boolean,\n): Uint8Array {\n const prefixes = [networkId];\n if (innerTx) prefixes.push('inner_tx');\n const rlpBinaryTx = decode(transaction);\n return concatBuffers([Buffer.from(prefixes.join('-')), hash(rlpBinaryTx)]);\n}\n\n/**\n * In-memory account class\n * @category account\n */\nexport default class AccountMemory extends AccountBase {\n override readonly address: Encoded.AccountAddress;\n\n readonly #secretKeyDecoded: Uint8Array;\n\n /**\n * @param secretKey - Secret key\n */\n constructor(public readonly secretKey: Encoded.AccountSecretKey) {\n super();\n const keyPair = nacl.sign.keyPair.fromSeed(decode(secretKey));\n this.#secretKeyDecoded = keyPair.secretKey;\n this.address = encode(keyPair.publicKey, Encoding.AccountAddress);\n }\n\n /**\n * Generates a new AccountMemory using a random secret key\n */\n static generate(): AccountMemory {\n const secretKey = encode(nacl.randomBytes(32), Encoding.AccountSecretKey);\n return new AccountMemory(secretKey);\n }\n\n /**\n * @deprecated Use `unsafeSign` method instead\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n override async sign(data: string | Uint8Array, options?: any): Promise<Uint8Array> {\n return this.unsafeSign(data, options);\n }\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n override async unsafeSign(data: string | Uint8Array, options?: any): Promise<Uint8Array> {\n return nacl.sign.detached(Buffer.from(data), this.#secretKeyDecoded);\n }\n\n override async signTransaction(\n transaction: Encoded.Transaction,\n { innerTx, networkId, ...options }: { innerTx?: boolean; networkId?: string } = {},\n ): Promise<Encoded.Transaction> {\n if (networkId == null) {\n throw new ArgumentError('networkId', 'provided', networkId);\n }\n const rlpBinaryTx = decode(transaction);\n const txWithNetworkId = getBufferToSign(transaction, networkId, innerTx === true);\n\n const signatures = [await this.unsafeSign(txWithNetworkId, options)];\n return buildTx({ tag: Tag.SignedTx, encodedTx: rlpBinaryTx, signatures });\n }\n\n override async signMessage(message: string, options?: any): Promise<Uint8Array> {\n return this.unsafeSign(hashMessage(message), options);\n }\n\n override async signTypedData(\n data: Encoded.ContractBytearray,\n aci: AciValue,\n {\n name,\n version,\n networkId,\n contractAddress,\n ...options\n }: Parameters<AccountBase['signTypedData']>[2] = {},\n ): Promise<Encoded.Signature> {\n const dHash = hashTypedData(data, aci, {\n name,\n version,\n networkId,\n contractAddress,\n });\n const signature = await this.unsafeSign(dHash, options);\n return encode(signature, Encoding.Signature);\n }\n\n override async signDelegation(\n delegation: Encoded.Bytearray,\n { networkId }: { networkId?: string } = {},\n ): Promise<Encoded.Signature> {\n if (networkId == null) throw new ArgumentError('networkId', 'provided', networkId);\n const payload = concatBuffers([\n messagePrefixLength,\n new Uint8Array([1]),\n Buffer.from(networkId),\n decode(delegation),\n ]);\n const signature = await this.unsafeSign(payload);\n return encode(signature, Encoding.Signature);\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import type { BaseProvider } from '@metamask/providers';
|
|
2
|
+
import AccountBase from './Base.js';
|
|
3
|
+
import { Encoded } from '../utils/encoder.js';
|
|
4
|
+
export declare const snapId = "npm:@aeternity-snap/plugin";
|
|
5
|
+
export declare function invokeSnap<R>(provider: BaseProvider, method: string, params: unknown, key: string): Promise<R>;
|
|
6
|
+
/**
|
|
7
|
+
* Account connected to Aeternity Snap for MetaMask
|
|
8
|
+
* https://www.npmjs.com/package/\@aeternity-snap/plugin
|
|
9
|
+
* @category account
|
|
10
|
+
*/
|
|
11
|
+
export default class AccountMetamask extends AccountBase {
|
|
12
|
+
/**
|
|
13
|
+
* @deprecated this class is not intended to provide raw access to the provider
|
|
14
|
+
*/
|
|
15
|
+
readonly provider: BaseProvider;
|
|
16
|
+
readonly index: number;
|
|
17
|
+
readonly address: Encoded.AccountAddress;
|
|
18
|
+
/**
|
|
19
|
+
* @param address - Address of account
|
|
20
|
+
*/
|
|
21
|
+
constructor(provider: BaseProvider, index: number, address: Encoded.AccountAddress);
|
|
22
|
+
/**
|
|
23
|
+
* @deprecated Use `unsafeSign` method instead
|
|
24
|
+
*/
|
|
25
|
+
sign(): Promise<Uint8Array>;
|
|
26
|
+
unsafeSign(): Promise<Uint8Array>;
|
|
27
|
+
signTypedData(): Promise<Encoded.Signature>;
|
|
28
|
+
signDelegation(): Promise<Encoded.Signature>;
|
|
29
|
+
signTransaction(tx: Encoded.Transaction, { innerTx, networkId }?: {
|
|
30
|
+
innerTx?: boolean;
|
|
31
|
+
networkId?: string;
|
|
32
|
+
}): Promise<Encoded.Transaction>;
|
|
33
|
+
signMessage(message: string): Promise<Uint8Array>;
|
|
34
|
+
}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
import { Buffer as _Buffer } from "buffer";
|
|
2
|
+
import AccountBase from './Base.js';
|
|
3
|
+
import { ArgumentError, InternalError, NotImplementedError } from '../utils/errors.js';
|
|
4
|
+
export const snapId = 'npm:@aeternity-snap/plugin';
|
|
5
|
+
export async function invokeSnap(provider, method, params, key) {
|
|
6
|
+
const response = await provider.request({
|
|
7
|
+
method: 'wallet_invokeSnap',
|
|
8
|
+
params: {
|
|
9
|
+
snapId,
|
|
10
|
+
request: {
|
|
11
|
+
method,
|
|
12
|
+
params
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
});
|
|
16
|
+
if (response == null) throw new InternalError('Empty MetaMask response');
|
|
17
|
+
if (!(key in response)) {
|
|
18
|
+
throw new InternalError(`Key ${key} missed in response ${JSON.stringify(response)}`);
|
|
19
|
+
}
|
|
20
|
+
return response[key];
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
/**
|
|
24
|
+
* Account connected to Aeternity Snap for MetaMask
|
|
25
|
+
* https://www.npmjs.com/package/\@aeternity-snap/plugin
|
|
26
|
+
* @category account
|
|
27
|
+
*/
|
|
28
|
+
export default class AccountMetamask extends AccountBase {
|
|
29
|
+
/**
|
|
30
|
+
* @deprecated this class is not intended to provide raw access to the provider
|
|
31
|
+
*/
|
|
32
|
+
|
|
33
|
+
/**
|
|
34
|
+
* @param address - Address of account
|
|
35
|
+
*/
|
|
36
|
+
constructor(provider, index, address) {
|
|
37
|
+
super();
|
|
38
|
+
this.provider = provider;
|
|
39
|
+
this.index = index;
|
|
40
|
+
this.address = address;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
/**
|
|
44
|
+
* @deprecated Use `unsafeSign` method instead
|
|
45
|
+
*/
|
|
46
|
+
// eslint-disable-next-line class-methods-use-this
|
|
47
|
+
async sign() {
|
|
48
|
+
return this.unsafeSign();
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
// eslint-disable-next-line class-methods-use-this
|
|
52
|
+
async unsafeSign() {
|
|
53
|
+
throw new NotImplementedError('RAW signing using MetaMask');
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
// eslint-disable-next-line class-methods-use-this
|
|
57
|
+
async signTypedData() {
|
|
58
|
+
throw new NotImplementedError('Typed data signing using MetaMask');
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
// eslint-disable-next-line class-methods-use-this
|
|
62
|
+
async signDelegation() {
|
|
63
|
+
throw new NotImplementedError('signing delegation using MetaMask');
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
// eslint-disable-next-line class-methods-use-this
|
|
67
|
+
async signTransaction(tx, {
|
|
68
|
+
innerTx,
|
|
69
|
+
networkId
|
|
70
|
+
} = {}) {
|
|
71
|
+
if (innerTx != null) throw new NotImplementedError('innerTx option in AccountMetamask');
|
|
72
|
+
if (networkId == null) throw new ArgumentError('networkId', 'provided', networkId);
|
|
73
|
+
return invokeSnap(this.provider, 'signTransaction', {
|
|
74
|
+
derivationPath: [`${this.index}'`, "0'", "0'"],
|
|
75
|
+
tx,
|
|
76
|
+
networkId
|
|
77
|
+
}, 'signedTx');
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
// eslint-disable-next-line class-methods-use-this
|
|
81
|
+
async signMessage(message) {
|
|
82
|
+
const signature = await invokeSnap(this.provider, 'signMessage', {
|
|
83
|
+
derivationPath: [`${this.index}'`, "0'", "0'"],
|
|
84
|
+
message: _Buffer.from(message).toString('base64')
|
|
85
|
+
}, 'signature');
|
|
86
|
+
return _Buffer.from(signature, 'base64');
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
//# sourceMappingURL=Metamask.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Metamask.js","names":["AccountBase","ArgumentError","InternalError","NotImplementedError","snapId","invokeSnap","provider","method","params","key","response","request","JSON","stringify","AccountMetamask","constructor","index","address","sign","unsafeSign","signTypedData","signDelegation","signTransaction","tx","innerTx","networkId","derivationPath","signMessage","message","signature","_Buffer","from","toString"],"sources":["../../src/account/Metamask.ts"],"sourcesContent":["import type { BaseProvider } from '@metamask/providers';\nimport AccountBase from './Base.js';\nimport { Encoded } from '../utils/encoder.js';\nimport { ArgumentError, InternalError, NotImplementedError } from '../utils/errors.js';\n\nexport const snapId = 'npm:@aeternity-snap/plugin';\n\nexport async function invokeSnap<R>(\n provider: BaseProvider,\n method: string,\n params: unknown,\n key: string,\n): Promise<R> {\n const response = await provider.request<{ [k in string]: unknown }>({\n method: 'wallet_invokeSnap',\n params: { snapId, request: { method, params } },\n });\n if (response == null) throw new InternalError('Empty MetaMask response');\n if (!(key in response)) {\n throw new InternalError(`Key ${key} missed in response ${JSON.stringify(response)}`);\n }\n return response[key] as R;\n}\n\n/**\n * Account connected to Aeternity Snap for MetaMask\n * https://www.npmjs.com/package/\\@aeternity-snap/plugin\n * @category account\n */\nexport default class AccountMetamask extends AccountBase {\n /**\n * @deprecated this class is not intended to provide raw access to the provider\n */\n readonly provider: BaseProvider;\n\n readonly index: number;\n\n override readonly address: Encoded.AccountAddress;\n\n /**\n * @param address - Address of account\n */\n constructor(provider: BaseProvider, index: number, address: Encoded.AccountAddress) {\n super();\n this.provider = provider;\n this.index = index;\n this.address = address;\n }\n\n /**\n * @deprecated Use `unsafeSign` method instead\n */\n // eslint-disable-next-line class-methods-use-this\n override async sign(): Promise<Uint8Array> {\n return this.unsafeSign();\n }\n\n // eslint-disable-next-line class-methods-use-this\n override async unsafeSign(): Promise<Uint8Array> {\n throw new NotImplementedError('RAW signing using MetaMask');\n }\n\n // eslint-disable-next-line class-methods-use-this\n override async signTypedData(): Promise<Encoded.Signature> {\n throw new NotImplementedError('Typed data signing using MetaMask');\n }\n\n // eslint-disable-next-line class-methods-use-this\n override async signDelegation(): Promise<Encoded.Signature> {\n throw new NotImplementedError('signing delegation using MetaMask');\n }\n\n // eslint-disable-next-line class-methods-use-this\n override async signTransaction(\n tx: Encoded.Transaction,\n { innerTx, networkId }: { innerTx?: boolean; networkId?: string } = {},\n ): Promise<Encoded.Transaction> {\n if (innerTx != null) throw new NotImplementedError('innerTx option in AccountMetamask');\n if (networkId == null) throw new ArgumentError('networkId', 'provided', networkId);\n\n return invokeSnap<Encoded.Transaction>(\n this.provider,\n 'signTransaction',\n { derivationPath: [`${this.index}'`, \"0'\", \"0'\"], tx, networkId },\n 'signedTx',\n );\n }\n\n // eslint-disable-next-line class-methods-use-this\n override async signMessage(message: string): Promise<Uint8Array> {\n const signature = await invokeSnap<string>(\n this.provider,\n 'signMessage',\n {\n derivationPath: [`${this.index}'`, \"0'\", \"0'\"],\n message: Buffer.from(message).toString('base64'),\n },\n 'signature',\n );\n return Buffer.from(signature, 'base64');\n }\n}\n"],"mappings":";AACA,OAAOA,WAAW,MAAM,WAAW;AAEnC,SAASC,aAAa,EAAEC,aAAa,EAAEC,mBAAmB,QAAQ,oBAAoB;AAEtF,OAAO,MAAMC,MAAM,GAAG,4BAA4B;AAElD,OAAO,eAAeC,UAAUA,CAC9BC,QAAsB,EACtBC,MAAc,EACdC,MAAe,EACfC,GAAW,EACC;EACZ,MAAMC,QAAQ,GAAG,MAAMJ,QAAQ,CAACK,OAAO,CAA6B;IAClEJ,MAAM,EAAE,mBAAmB;IAC3BC,MAAM,EAAE;MAAEJ,MAAM;MAAEO,OAAO,EAAE;QAAEJ,MAAM;QAAEC;MAAO;IAAE;EAChD,CAAC,CAAC;EACF,IAAIE,QAAQ,IAAI,IAAI,EAAE,MAAM,IAAIR,aAAa,CAAC,yBAAyB,CAAC;EACxE,IAAI,EAAEO,GAAG,IAAIC,QAAQ,CAAC,EAAE;IACtB,MAAM,IAAIR,aAAa,CAAC,OAAOO,GAAG,uBAAuBG,IAAI,CAACC,SAAS,CAACH,QAAQ,CAAC,EAAE,CAAC;EACtF;EACA,OAAOA,QAAQ,CAACD,GAAG,CAAC;AACtB;;AAEA;AACA;AACA;AACA;AACA;AACA,eAAe,MAAMK,eAAe,SAASd,WAAW,CAAC;EACvD;AACF;AACA;;EAOE;AACF;AACA;EACEe,WAAWA,CAACT,QAAsB,EAAEU,KAAa,EAAEC,OAA+B,EAAE;IAClF,KAAK,CAAC,CAAC;IACP,IAAI,CAACX,QAAQ,GAAGA,QAAQ;IACxB,IAAI,CAACU,KAAK,GAAGA,KAAK;IAClB,IAAI,CAACC,OAAO,GAAGA,OAAO;EACxB;;EAEA;AACF;AACA;EACE;EACA,MAAeC,IAAIA,CAAA,EAAwB;IACzC,OAAO,IAAI,CAACC,UAAU,CAAC,CAAC;EAC1B;;EAEA;EACA,MAAeA,UAAUA,CAAA,EAAwB;IAC/C,MAAM,IAAIhB,mBAAmB,CAAC,4BAA4B,CAAC;EAC7D;;EAEA;EACA,MAAeiB,aAAaA,CAAA,EAA+B;IACzD,MAAM,IAAIjB,mBAAmB,CAAC,mCAAmC,CAAC;EACpE;;EAEA;EACA,MAAekB,cAAcA,CAAA,EAA+B;IAC1D,MAAM,IAAIlB,mBAAmB,CAAC,mCAAmC,CAAC;EACpE;;EAEA;EACA,MAAemB,eAAeA,CAC5BC,EAAuB,EACvB;IAAEC,OAAO;IAAEC;EAAqD,CAAC,GAAG,CAAC,CAAC,EACxC;IAC9B,IAAID,OAAO,IAAI,IAAI,EAAE,MAAM,IAAIrB,mBAAmB,CAAC,mCAAmC,CAAC;IACvF,IAAIsB,SAAS,IAAI,IAAI,EAAE,MAAM,IAAIxB,aAAa,CAAC,WAAW,EAAE,UAAU,EAAEwB,SAAS,CAAC;IAElF,OAAOpB,UAAU,CACf,IAAI,CAACC,QAAQ,EACb,iBAAiB,EACjB;MAAEoB,cAAc,EAAE,CAAC,GAAG,IAAI,CAACV,KAAK,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC;MAAEO,EAAE;MAAEE;IAAU,CAAC,EACjE,UACF,CAAC;EACH;;EAEA;EACA,MAAeE,WAAWA,CAACC,OAAe,EAAuB;IAC/D,MAAMC,SAAS,GAAG,MAAMxB,UAAU,CAChC,IAAI,CAACC,QAAQ,EACb,aAAa,EACb;MACEoB,cAAc,EAAE,CAAC,GAAG,IAAI,CAACV,KAAK,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC;MAC9CY,OAAO,EAAEE,OAAA,CAAOC,IAAI,CAACH,OAAO,CAAC,CAACI,QAAQ,CAAC,QAAQ;IACjD,CAAC,EACD,WACF,CAAC;IACD,OAAOF,OAAA,CAAOC,IAAI,CAACF,SAAS,EAAE,QAAQ,CAAC;EACzC;AACF","ignoreList":[]}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import type { BaseProvider } from '@metamask/providers';
|
|
2
|
+
import AccountBaseFactory from './BaseFactory.js';
|
|
3
|
+
import AccountMetamask, { snapId } from './Metamask.js';
|
|
4
|
+
interface SnapDetails {
|
|
5
|
+
blocked: boolean;
|
|
6
|
+
enabled: boolean;
|
|
7
|
+
id: typeof snapId;
|
|
8
|
+
version: string;
|
|
9
|
+
initialPermissions: Record<string, unknown>;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* A factory class that generates instances of AccountMetamask.
|
|
13
|
+
* @see {@link https://www.npmjs.com/package/@aeternity-snap/plugin | Aeternity snap}
|
|
14
|
+
* @category account
|
|
15
|
+
*/
|
|
16
|
+
export default class AccountMetamaskFactory extends AccountBaseFactory {
|
|
17
|
+
#private;
|
|
18
|
+
/**
|
|
19
|
+
* @deprecated this class is not intended to provide raw access to the provider
|
|
20
|
+
*/
|
|
21
|
+
get provider(): BaseProvider;
|
|
22
|
+
/**
|
|
23
|
+
* @param provider - Connection to MetaMask to use
|
|
24
|
+
*/
|
|
25
|
+
constructor(provider?: BaseProvider);
|
|
26
|
+
/**
|
|
27
|
+
* Request MetaMask to install Aeternity snap.
|
|
28
|
+
* @deprecated use `requestSnap` instead
|
|
29
|
+
*/
|
|
30
|
+
installSnap(): Promise<SnapDetails>;
|
|
31
|
+
/**
|
|
32
|
+
* Request MetaMask to install Aeternity snap or connect it to the current aepp.
|
|
33
|
+
* MetaMask can have only one Aeternity snap version installed at a time.
|
|
34
|
+
* This method is intended to upgrade the snap to a specified version if needed by the aepp.
|
|
35
|
+
* If Aeternity snap is installed but wasn't used by the aepp, then the user still needs to approve the connection.
|
|
36
|
+
* If the currently installed version corresponds to the version range, then the snap won't be upgraded.
|
|
37
|
+
* To downgrade the snap, the user must manually uninstall the current version.
|
|
38
|
+
* @param version - Snap version range (e.g. `1`, `0.1.*`, `^0.0.9`, `~0.0.9`; `>=0.0.9 <0.1.0`)
|
|
39
|
+
* (default: a version range supported by sdk)
|
|
40
|
+
*/
|
|
41
|
+
requestSnap(version?: string): Promise<SnapDetails>;
|
|
42
|
+
/**
|
|
43
|
+
* It throws an exception if MetaMask or Aeternity snap has an incompatible version or is not
|
|
44
|
+
* installed or is not connected to the aepp.
|
|
45
|
+
* @deprecated use `requestSnap` instead
|
|
46
|
+
*/
|
|
47
|
+
ensureReady(): Promise<void>;
|
|
48
|
+
/**
|
|
49
|
+
* @returns the version of snap installed in MetaMask
|
|
50
|
+
*/
|
|
51
|
+
getSnapVersion(): Promise<string>;
|
|
52
|
+
/**
|
|
53
|
+
* Get an instance of AccountMetaMask for a given account index.
|
|
54
|
+
* @param accountIndex - Index of account
|
|
55
|
+
*/
|
|
56
|
+
initialize(accountIndex: number): Promise<AccountMetamask>;
|
|
57
|
+
}
|
|
58
|
+
export {};
|
|
@@ -0,0 +1,164 @@
|
|
|
1
|
+
function _classPrivateMethodInitSpec(e, a) { _checkPrivateRedeclaration(e, a), a.add(e); }
|
|
2
|
+
function _classPrivateFieldInitSpec(e, t, a) { _checkPrivateRedeclaration(e, t), t.set(e, a); }
|
|
3
|
+
function _checkPrivateRedeclaration(e, t) { if (t.has(e)) throw new TypeError("Cannot initialize the same private elements twice on an object"); }
|
|
4
|
+
function _classPrivateFieldSet(s, a, r) { return s.set(_assertClassBrand(s, a), r), r; }
|
|
5
|
+
function _classPrivateFieldGet(s, a) { return s.get(_assertClassBrand(s, a)); }
|
|
6
|
+
function _assertClassBrand(e, t, n) { if ("function" == typeof e ? e === t : e.has(t)) return arguments.length < 3 ? t : n; throw new TypeError("Private element is not present on this object"); }
|
|
7
|
+
import { InternalError, UnsupportedPlatformError, UnsupportedVersionError } from '../utils/errors.js';
|
|
8
|
+
import semverSatisfies from '../utils/semver-satisfies.js';
|
|
9
|
+
import AccountBaseFactory from './BaseFactory.js';
|
|
10
|
+
import AccountMetamask, { invokeSnap, snapId } from './Metamask.js';
|
|
11
|
+
const snapMinVersion = '0.0.9';
|
|
12
|
+
const snapMaxVersion = '0.1.0';
|
|
13
|
+
const metamaskVersionPrefix = 'MetaMask/v';
|
|
14
|
+
var _provider = /*#__PURE__*/new WeakMap();
|
|
15
|
+
var _AccountMetamaskFactory_brand = /*#__PURE__*/new WeakSet();
|
|
16
|
+
var _providerPromise = /*#__PURE__*/new WeakMap();
|
|
17
|
+
/**
|
|
18
|
+
* A factory class that generates instances of AccountMetamask.
|
|
19
|
+
* @see {@link https://www.npmjs.com/package/@aeternity-snap/plugin | Aeternity snap}
|
|
20
|
+
* @category account
|
|
21
|
+
*/
|
|
22
|
+
export default class AccountMetamaskFactory extends AccountBaseFactory {
|
|
23
|
+
/**
|
|
24
|
+
* @deprecated this class is not intended to provide raw access to the provider
|
|
25
|
+
*/
|
|
26
|
+
get provider() {
|
|
27
|
+
if (_classPrivateFieldGet(_provider, this) == null) throw new UnsupportedPlatformError('Metamask is not detected yet');
|
|
28
|
+
return _classPrivateFieldGet(_provider, this);
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* @param provider - Connection to MetaMask to use
|
|
32
|
+
*/
|
|
33
|
+
constructor(_provider2) {
|
|
34
|
+
super();
|
|
35
|
+
_classPrivateMethodInitSpec(this, _AccountMetamaskFactory_brand);
|
|
36
|
+
// TODO: remove after removing `provider`
|
|
37
|
+
_classPrivateFieldInitSpec(this, _provider, void 0);
|
|
38
|
+
_classPrivateFieldInitSpec(this, _providerPromise, void 0);
|
|
39
|
+
_classPrivateFieldSet(_provider, this, _provider2);
|
|
40
|
+
if (_classPrivateFieldGet(_provider, this) == null && window == null) {
|
|
41
|
+
throw new UnsupportedPlatformError('Window object not found, you can run AccountMetamaskFactory only in browser or setup a provider');
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
/**
|
|
46
|
+
* Request MetaMask to install Aeternity snap.
|
|
47
|
+
* @deprecated use `requestSnap` instead
|
|
48
|
+
*/
|
|
49
|
+
async installSnap() {
|
|
50
|
+
const provider = await _assertClassBrand(_AccountMetamaskFactory_brand, this, _getProvider).call(this);
|
|
51
|
+
const details = await provider.request({
|
|
52
|
+
method: 'wallet_requestSnaps',
|
|
53
|
+
params: {
|
|
54
|
+
[snapId]: {
|
|
55
|
+
version: snapMinVersion
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
});
|
|
59
|
+
return details[snapId];
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
/**
|
|
63
|
+
* Request MetaMask to install Aeternity snap or connect it to the current aepp.
|
|
64
|
+
* MetaMask can have only one Aeternity snap version installed at a time.
|
|
65
|
+
* This method is intended to upgrade the snap to a specified version if needed by the aepp.
|
|
66
|
+
* If Aeternity snap is installed but wasn't used by the aepp, then the user still needs to approve the connection.
|
|
67
|
+
* If the currently installed version corresponds to the version range, then the snap won't be upgraded.
|
|
68
|
+
* To downgrade the snap, the user must manually uninstall the current version.
|
|
69
|
+
* @param version - Snap version range (e.g. `1`, `0.1.*`, `^0.0.9`, `~0.0.9`; `>=0.0.9 <0.1.0`)
|
|
70
|
+
* (default: a version range supported by sdk)
|
|
71
|
+
*/
|
|
72
|
+
async requestSnap(version = `>=${snapMinVersion} <${snapMaxVersion}`) {
|
|
73
|
+
const provider = await _assertClassBrand(_AccountMetamaskFactory_brand, this, _getProvider).call(this);
|
|
74
|
+
const details = await provider.request({
|
|
75
|
+
method: 'wallet_requestSnaps',
|
|
76
|
+
params: {
|
|
77
|
+
[snapId]: {
|
|
78
|
+
version
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
});
|
|
82
|
+
return details[snapId];
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
/**
|
|
86
|
+
* It throws an exception if MetaMask or Aeternity snap has an incompatible version or is not
|
|
87
|
+
* installed or is not connected to the aepp.
|
|
88
|
+
* @deprecated use `requestSnap` instead
|
|
89
|
+
*/
|
|
90
|
+
async ensureReady() {
|
|
91
|
+
const snapVersion = await this.getSnapVersion();
|
|
92
|
+
const args = [snapVersion, snapMinVersion, snapMaxVersion];
|
|
93
|
+
if (!semverSatisfies(...args)) throw new UnsupportedVersionError('Aeternity snap in MetaMask', ...args);
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
/**
|
|
97
|
+
* @returns the version of snap installed in MetaMask
|
|
98
|
+
*/
|
|
99
|
+
async getSnapVersion() {
|
|
100
|
+
const provider = await _assertClassBrand(_AccountMetamaskFactory_brand, this, _getProvider).call(this);
|
|
101
|
+
const snaps = await provider.request({
|
|
102
|
+
method: 'wallet_getSnaps'
|
|
103
|
+
});
|
|
104
|
+
const version = snaps[snapId]?.version;
|
|
105
|
+
if (version == null) throw new UnsupportedPlatformError('Aeternity snap is not installed to MetaMask or not connected to this aepp');
|
|
106
|
+
return version;
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
/**
|
|
110
|
+
* Get an instance of AccountMetaMask for a given account index.
|
|
111
|
+
* @param accountIndex - Index of account
|
|
112
|
+
*/
|
|
113
|
+
async initialize(accountIndex) {
|
|
114
|
+
await this.requestSnap();
|
|
115
|
+
const provider = await _assertClassBrand(_AccountMetamaskFactory_brand, this, _getProvider).call(this);
|
|
116
|
+
const address = await invokeSnap(provider, 'getPublicKey', {
|
|
117
|
+
derivationPath: [`${accountIndex}'`, "0'", "0'"]
|
|
118
|
+
}, 'publicKey');
|
|
119
|
+
return new AccountMetamask(provider, accountIndex, address);
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
async function _getMetamaskAsInjected() {
|
|
123
|
+
if (!('ethereum' in window) || window.ethereum == null) return;
|
|
124
|
+
const provider = window.ethereum;
|
|
125
|
+
const version = await provider.request({
|
|
126
|
+
method: 'web3_clientVersion'
|
|
127
|
+
});
|
|
128
|
+
if (version == null) throw new InternalError("Can't get Ethereum Provider version");
|
|
129
|
+
if (!version.startsWith(metamaskVersionPrefix)) return;
|
|
130
|
+
return provider;
|
|
131
|
+
}
|
|
132
|
+
async function _getMetamaskOverEip() {
|
|
133
|
+
setTimeout(() => window.dispatchEvent(new Event('eip6963:requestProvider')));
|
|
134
|
+
return new Promise(resolve => {
|
|
135
|
+
const handler = event => {
|
|
136
|
+
if (event.detail.info.rdns !== 'io.metamask') return;
|
|
137
|
+
window.removeEventListener('eip6963:announceProvider', handler);
|
|
138
|
+
resolve(event.detail.provider);
|
|
139
|
+
};
|
|
140
|
+
window.addEventListener('eip6963:announceProvider', handler);
|
|
141
|
+
setTimeout(() => {
|
|
142
|
+
window.removeEventListener('eip6963:announceProvider', handler);
|
|
143
|
+
resolve(undefined);
|
|
144
|
+
}, 500);
|
|
145
|
+
});
|
|
146
|
+
}
|
|
147
|
+
async function _getProvider() {
|
|
148
|
+
var _classPrivateFieldGet2;
|
|
149
|
+
(_classPrivateFieldGet2 = _classPrivateFieldGet(_providerPromise, this)) !== null && _classPrivateFieldGet2 !== void 0 ? _classPrivateFieldGet2 : _classPrivateFieldSet(_providerPromise, this, (async (_classPrivateFieldGet3, _await$_assertClassBr) => {
|
|
150
|
+
(_classPrivateFieldGet3 = _classPrivateFieldGet(_provider, this)) !== null && _classPrivateFieldGet3 !== void 0 ? _classPrivateFieldGet3 : _classPrivateFieldSet(_provider, this, (_await$_assertClassBr = await _assertClassBrand(_AccountMetamaskFactory_brand, this, _getMetamaskAsInjected).call(this)) !== null && _await$_assertClassBr !== void 0 ? _await$_assertClassBr : await _assertClassBrand(_AccountMetamaskFactory_brand, this, _getMetamaskOverEip).call(this));
|
|
151
|
+
if (_classPrivateFieldGet(_provider, this) == null) {
|
|
152
|
+
throw new UnsupportedPlatformError("Can't find a Metamask extension as an injected provider and over EIP-6963. Ensure that Metamask is installed or setup a provider.");
|
|
153
|
+
}
|
|
154
|
+
const version = await _classPrivateFieldGet(_provider, this).request({
|
|
155
|
+
method: 'web3_clientVersion'
|
|
156
|
+
});
|
|
157
|
+
if (version == null) throw new InternalError("Can't get Ethereum Provider version");
|
|
158
|
+
const args = [version.slice(metamaskVersionPrefix.length), '12.2.4'];
|
|
159
|
+
if (!semverSatisfies(...args)) throw new UnsupportedVersionError('Metamask', ...args);
|
|
160
|
+
return _classPrivateFieldGet(_provider, this);
|
|
161
|
+
})());
|
|
162
|
+
return _classPrivateFieldGet(_providerPromise, this);
|
|
163
|
+
}
|
|
164
|
+
//# sourceMappingURL=MetamaskFactory.js.map
|