@alephium/web3 2.0.8 → 3.0.0-test.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 +165 -0
- package/README.md +11 -1
- package/dist/{src → _cjs}/address/address.js +60 -77
- package/dist/_cjs/address/address.js.map +1 -0
- package/dist/{src → _cjs}/address/index.js +1 -17
- package/dist/_cjs/address/index.js.map +1 -0
- package/dist/_cjs/api/api-alephium.d.ts +1152 -0
- package/dist/{src → _cjs}/api/api-alephium.js +5 -756
- package/dist/_cjs/api/api-alephium.js.map +1 -0
- package/dist/_cjs/api/api-explorer.d.ts +586 -0
- package/dist/{src → _cjs}/api/api-explorer.js +14 -454
- package/dist/_cjs/api/api-explorer.js.map +1 -0
- package/dist/{src → _cjs}/api/explorer-provider.js +1 -18
- package/dist/_cjs/api/explorer-provider.js.map +1 -0
- package/dist/{src → _cjs}/api/index.js +18 -24
- package/dist/_cjs/api/index.js.map +1 -0
- package/dist/{src → _cjs}/api/node-provider.d.ts +1 -1
- package/dist/{src → _cjs}/api/node-provider.js +4 -26
- package/dist/_cjs/api/node-provider.js.map +1 -0
- package/dist/{src → _cjs}/api/types.js +25 -43
- package/dist/_cjs/api/types.js.map +1 -0
- package/dist/{src → _cjs}/api/utils.d.ts +1 -1
- package/dist/{src → _cjs}/api/utils.js +9 -21
- package/dist/_cjs/api/utils.js.map +1 -0
- package/dist/{src → _cjs}/block/block.js +20 -26
- package/dist/_cjs/block/block.js.map +1 -0
- package/dist/_cjs/block/index.d.ts +2 -0
- package/dist/_cjs/block/index.js +6 -0
- package/dist/_cjs/block/index.js.map +1 -0
- package/dist/{src → _cjs}/codec/array-codec.js +1 -17
- package/dist/_cjs/codec/array-codec.js.map +1 -0
- package/dist/{src → _cjs}/codec/asset-output-codec.js +1 -17
- package/dist/_cjs/codec/asset-output-codec.js.map +1 -0
- package/dist/{src → _cjs}/codec/bigint-codec.js +2 -33
- package/dist/_cjs/codec/bigint-codec.js.map +1 -0
- package/dist/{src → _cjs}/codec/bytestring-codec.d.ts +1 -1
- package/dist/{src → _cjs}/codec/bytestring-codec.js +1 -17
- package/dist/_cjs/codec/bytestring-codec.js.map +1 -0
- package/dist/{src → _cjs}/codec/checksum-codec.js +1 -17
- package/dist/_cjs/codec/checksum-codec.js.map +1 -0
- package/dist/{src → _cjs}/codec/codec.js +3 -19
- package/dist/_cjs/codec/codec.js.map +1 -0
- package/dist/{src → _cjs}/codec/compact-int-codec.js +2 -18
- package/dist/_cjs/codec/compact-int-codec.js.map +1 -0
- package/dist/{src → _cjs}/codec/contract-codec.js +1 -17
- package/dist/_cjs/codec/contract-codec.js.map +1 -0
- package/dist/{src → _cjs}/codec/contract-output-codec.js +1 -17
- package/dist/_cjs/codec/contract-output-codec.js.map +1 -0
- package/dist/_cjs/codec/contract-output-ref-codec.js +12 -0
- package/dist/_cjs/codec/contract-output-ref-codec.js.map +1 -0
- package/dist/_cjs/codec/either-codec.js +8 -0
- package/dist/_cjs/codec/either-codec.js.map +1 -0
- package/dist/{src → _cjs}/codec/hash.d.ts +1 -1
- package/dist/_cjs/codec/hash.js +20 -0
- package/dist/_cjs/codec/hash.js.map +1 -0
- package/dist/{src → _cjs}/codec/index.js +18 -24
- package/dist/_cjs/codec/index.js.map +1 -0
- package/dist/{src → _cjs}/codec/input-codec.js +1 -0
- package/dist/_cjs/codec/input-codec.js.map +1 -0
- package/dist/{src → _cjs}/codec/instr-codec.js +4 -21
- package/dist/_cjs/codec/instr-codec.js.map +1 -0
- package/dist/_cjs/codec/int-as-4bytes-codec.js +16 -0
- package/dist/_cjs/codec/int-as-4bytes-codec.js.map +1 -0
- package/dist/{src → _cjs}/codec/lockup-script-codec.d.ts +1 -1
- package/dist/{src → _cjs}/codec/lockup-script-codec.js +1 -17
- package/dist/_cjs/codec/lockup-script-codec.js.map +1 -0
- package/dist/{src → _cjs}/codec/method-codec.js +1 -17
- package/dist/_cjs/codec/method-codec.js.map +1 -0
- package/dist/_cjs/codec/option-codec.js +19 -0
- package/dist/_cjs/codec/option-codec.js.map +1 -0
- package/dist/_cjs/codec/output-codec.js +10 -0
- package/dist/_cjs/codec/output-codec.js.map +1 -0
- package/dist/_cjs/codec/public-key-like-codec.js +14 -0
- package/dist/_cjs/codec/public-key-like-codec.js.map +1 -0
- package/dist/{src → _cjs}/codec/reader.js +1 -17
- package/dist/_cjs/codec/reader.js.map +1 -0
- package/dist/_cjs/codec/script-codec.js +18 -0
- package/dist/_cjs/codec/script-codec.js.map +1 -0
- package/dist/{src → _cjs}/codec/signature-codec.d.ts +1 -1
- package/dist/_cjs/codec/signature-codec.js +8 -0
- package/dist/_cjs/codec/signature-codec.js.map +1 -0
- package/dist/{src → _cjs}/codec/timestamp-codec.js +1 -17
- package/dist/_cjs/codec/timestamp-codec.js.map +1 -0
- package/dist/_cjs/codec/token-codec.js +12 -0
- package/dist/_cjs/codec/token-codec.js.map +1 -0
- package/dist/{src → _cjs}/codec/transaction-codec.js +1 -17
- package/dist/_cjs/codec/transaction-codec.js.map +1 -0
- package/dist/{src → _cjs}/codec/unlock-script-codec.d.ts +1 -1
- package/dist/{src → _cjs}/codec/unlock-script-codec.js +1 -17
- package/dist/_cjs/codec/unlock-script-codec.js.map +1 -0
- package/dist/{src → _cjs}/codec/unsigned-tx-codec.js +1 -0
- package/dist/_cjs/codec/unsigned-tx-codec.js.map +1 -0
- package/dist/{src → _cjs}/codec/val.js +1 -17
- package/dist/_cjs/codec/val.js.map +1 -0
- package/dist/{src → _cjs}/constants.d.ts +0 -3
- package/dist/{src → _cjs}/constants.js +1 -20
- package/dist/_cjs/constants.js.map +1 -0
- package/dist/{src → _cjs}/contract/contract.js +89 -80
- package/dist/_cjs/contract/contract.js.map +1 -0
- package/dist/{src → _cjs}/contract/dapp-tx-builder.js +3 -19
- package/dist/_cjs/contract/dapp-tx-builder.js.map +1 -0
- package/dist/_cjs/contract/deployment.js +3 -0
- package/dist/_cjs/contract/deployment.js.map +1 -0
- package/dist/{src → _cjs}/contract/events.js +20 -26
- package/dist/_cjs/contract/events.js.map +1 -0
- package/dist/{src → _cjs}/contract/index.js +1 -17
- package/dist/_cjs/contract/index.js.map +1 -0
- package/dist/{src → _cjs}/contract/ralph.js +35 -69
- package/dist/_cjs/contract/ralph.js.map +1 -0
- package/dist/{src → _cjs}/contract/script-simulator.d.ts +0 -12
- package/dist/{src → _cjs}/contract/script-simulator.js +23 -64
- package/dist/_cjs/contract/script-simulator.js.map +1 -0
- package/dist/_cjs/debug.js +29 -0
- package/dist/_cjs/debug.js.map +1 -0
- package/dist/{src → _cjs}/error.js +1 -17
- package/dist/_cjs/error.js.map +1 -0
- package/dist/{src → _cjs}/exchange/exchange.js +8 -26
- package/dist/_cjs/exchange/exchange.js.map +1 -0
- package/dist/_cjs/exchange/index.d.ts +2 -0
- package/dist/{src → _cjs}/exchange/index.js +1 -17
- package/dist/_cjs/exchange/index.js.map +1 -0
- package/dist/{src → _cjs}/global.js +7 -26
- package/dist/_cjs/global.js.map +1 -0
- package/dist/{src → _cjs}/index.js +18 -27
- package/dist/_cjs/index.js.map +1 -0
- package/dist/_cjs/package.json +1 -0
- package/dist/{src → _cjs}/signer/index.js +1 -17
- package/dist/_cjs/signer/index.js.map +1 -0
- package/dist/{src → _cjs}/signer/signer.js +16 -63
- package/dist/_cjs/signer/signer.js.map +1 -0
- package/dist/{src → _cjs}/signer/tx-builder.js +4 -21
- package/dist/_cjs/signer/tx-builder.js.map +1 -0
- package/dist/{src → _cjs}/signer/types.js +6 -22
- package/dist/_cjs/signer/types.js.map +1 -0
- package/dist/{src → _cjs}/token/index.js +1 -17
- package/dist/_cjs/token/index.js.map +1 -0
- package/dist/{src → _cjs}/token/nft.d.ts +0 -1
- package/dist/{src → _cjs}/token/nft.js +5 -24
- package/dist/_cjs/token/nft.js.map +1 -0
- package/dist/{src → _cjs}/transaction/index.js +1 -17
- package/dist/_cjs/transaction/index.js.map +1 -0
- package/dist/{src → _cjs}/transaction/sign-verify.js +20 -27
- package/dist/_cjs/transaction/sign-verify.js.map +1 -0
- package/dist/{src → _cjs}/transaction/status.js +20 -26
- package/dist/_cjs/transaction/status.js.map +1 -0
- package/dist/{src → _cjs}/transaction/utils.js +3 -20
- package/dist/_cjs/transaction/utils.js.map +1 -0
- package/dist/{src → _cjs}/utils/bs58.d.ts +0 -1
- package/dist/{src → _cjs}/utils/bs58.js +4 -21
- package/dist/_cjs/utils/bs58.js.map +1 -0
- package/dist/_cjs/utils/djb2.js +11 -0
- package/dist/_cjs/utils/djb2.js.map +1 -0
- package/dist/{src → _cjs}/utils/index.js +1 -17
- package/dist/_cjs/utils/index.js.map +1 -0
- package/dist/{src → _cjs}/utils/number.d.ts +0 -2
- package/dist/{src → _cjs}/utils/number.fixture.js +1 -17
- package/dist/_cjs/utils/number.fixture.js.map +1 -0
- package/dist/{src → _cjs}/utils/number.js +10 -44
- package/dist/_cjs/utils/number.js.map +1 -0
- package/dist/_cjs/utils/sign.js +89 -0
- package/dist/_cjs/utils/sign.js.map +1 -0
- package/dist/{src → _cjs}/utils/subscription.js +1 -17
- package/dist/_cjs/utils/subscription.js.map +1 -0
- package/dist/{src → _cjs}/utils/utils.d.ts +7 -6
- package/dist/{src → _cjs}/utils/utils.js +60 -57
- package/dist/_cjs/utils/utils.js.map +1 -0
- package/dist/{src → _cjs}/utils/webcrypto.d.ts +1 -3
- package/dist/_cjs/utils/webcrypto.js +18 -0
- package/dist/_cjs/utils/webcrypto.js.map +1 -0
- package/dist/_esm/address/address.d.ts +36 -0
- package/dist/_esm/address/address.js +309 -0
- package/dist/_esm/address/address.js.map +1 -0
- package/dist/_esm/address/index.d.ts +1 -0
- package/dist/_esm/address/index.js +2 -0
- package/dist/_esm/address/index.js.map +1 -0
- package/dist/_esm/api/api-alephium.d.ts +1152 -0
- package/dist/_esm/api/api-alephium.js +797 -0
- package/dist/_esm/api/api-alephium.js.map +1 -0
- package/dist/_esm/api/api-explorer.d.ts +586 -0
- package/dist/_esm/api/api-explorer.js +577 -0
- package/dist/_esm/api/api-explorer.js.map +1 -0
- package/dist/_esm/api/explorer-provider.d.ts +21 -0
- package/dist/_esm/api/explorer-provider.js +48 -0
- package/dist/_esm/api/explorer-provider.js.map +1 -0
- package/dist/_esm/api/index.d.ts +6 -0
- package/dist/_esm/api/index.js +7 -0
- package/dist/_esm/api/index.js.map +1 -0
- package/dist/_esm/api/node-provider.d.ts +46 -0
- package/dist/_esm/api/node-provider.js +178 -0
- package/dist/_esm/api/node-provider.js.map +1 -0
- package/dist/_esm/api/types.d.ts +71 -0
- package/dist/_esm/api/types.js +219 -0
- package/dist/_esm/api/types.js.map +1 -0
- package/dist/_esm/api/utils.d.ts +10 -0
- package/dist/_esm/api/utils.js +37 -0
- package/dist/_esm/api/utils.js.map +1 -0
- package/dist/_esm/block/block.d.ts +27 -0
- package/dist/_esm/block/block.js +128 -0
- package/dist/_esm/block/block.js.map +1 -0
- package/dist/_esm/block/index.d.ts +2 -0
- package/dist/_esm/block/index.js +2 -0
- package/dist/_esm/block/index.js.map +1 -0
- package/dist/_esm/codec/array-codec.d.ts +8 -0
- package/dist/_esm/codec/array-codec.js +25 -0
- package/dist/_esm/codec/array-codec.js.map +1 -0
- package/dist/_esm/codec/asset-output-codec.d.ts +21 -0
- package/dist/_esm/codec/asset-output-codec.js +74 -0
- package/dist/_esm/codec/asset-output-codec.js.map +1 -0
- package/dist/_esm/codec/bigint-codec.d.ts +5 -0
- package/dist/_esm/codec/bigint-codec.js +62 -0
- package/dist/_esm/codec/bigint-codec.js.map +1 -0
- package/dist/_esm/codec/bytestring-codec.d.ts +10 -0
- package/dist/_esm/codec/bytestring-codec.js +16 -0
- package/dist/_esm/codec/bytestring-codec.js.map +1 -0
- package/dist/_esm/codec/checksum-codec.d.ts +8 -0
- package/dist/_esm/codec/checksum-codec.js +27 -0
- package/dist/_esm/codec/checksum-codec.js.map +1 -0
- package/dist/_esm/codec/codec.d.ts +57 -0
- package/dist/_esm/codec/codec.js +114 -0
- package/dist/_esm/codec/codec.js.map +1 -0
- package/dist/_esm/codec/compact-int-codec.d.ts +68 -0
- package/dist/_esm/codec/compact-int-codec.js +287 -0
- package/dist/_esm/codec/compact-int-codec.js.map +1 -0
- package/dist/_esm/codec/contract-codec.d.ts +19 -0
- package/dist/_esm/codec/contract-codec.js +47 -0
- package/dist/_esm/codec/contract-codec.js.map +1 -0
- package/dist/_esm/codec/contract-output-codec.d.ts +14 -0
- package/dist/_esm/codec/contract-output-codec.js +40 -0
- package/dist/_esm/codec/contract-output-codec.js.map +1 -0
- package/dist/_esm/codec/contract-output-ref-codec.d.ts +8 -0
- package/dist/_esm/codec/contract-output-ref-codec.js +9 -0
- package/dist/_esm/codec/contract-output-ref-codec.js.map +1 -0
- package/dist/_esm/codec/either-codec.d.ts +9 -0
- package/dist/_esm/codec/either-codec.js +5 -0
- package/dist/_esm/codec/either-codec.js.map +1 -0
- package/dist/_esm/codec/hash.d.ts +3 -0
- package/dist/_esm/codec/hash.js +15 -0
- package/dist/_esm/codec/hash.js.map +1 -0
- package/dist/_esm/codec/index.d.ts +24 -0
- package/dist/_esm/codec/index.js +25 -0
- package/dist/_esm/codec/index.js.map +1 -0
- package/dist/_esm/codec/input-codec.d.ts +15 -0
- package/dist/_esm/codec/input-codec.js +33 -0
- package/dist/_esm/codec/input-codec.js.map +1 -0
- package/dist/_esm/codec/instr-codec.d.ts +857 -0
- package/dist/_esm/codec/instr-codec.js +1138 -0
- package/dist/_esm/codec/instr-codec.js.map +1 -0
- package/dist/_esm/codec/int-as-4bytes-codec.d.ts +7 -0
- package/dist/_esm/codec/int-as-4bytes-codec.js +12 -0
- package/dist/_esm/codec/int-as-4bytes-codec.js.map +1 -0
- package/dist/_esm/codec/lockup-script-codec.d.ts +42 -0
- package/dist/_esm/codec/lockup-script-codec.js +28 -0
- package/dist/_esm/codec/lockup-script-codec.js.map +1 -0
- package/dist/_esm/codec/method-codec.d.ts +20 -0
- package/dist/_esm/codec/method-codec.js +54 -0
- package/dist/_esm/codec/method-codec.js.map +1 -0
- package/dist/_esm/codec/option-codec.d.ts +9 -0
- package/dist/_esm/codec/option-codec.js +16 -0
- package/dist/_esm/codec/option-codec.js.map +1 -0
- package/dist/_esm/codec/output-codec.d.ts +7 -0
- package/dist/_esm/codec/output-codec.js +7 -0
- package/dist/_esm/codec/output-codec.js.map +1 -0
- package/dist/_esm/codec/public-key-like-codec.d.ts +17 -0
- package/dist/_esm/codec/public-key-like-codec.js +11 -0
- package/dist/_esm/codec/public-key-like-codec.js.map +1 -0
- package/dist/_esm/codec/reader.d.ts +10 -0
- package/dist/_esm/codec/reader.js +38 -0
- package/dist/_esm/codec/reader.js.map +1 -0
- package/dist/_esm/codec/script-codec.d.ts +12 -0
- package/dist/_esm/codec/script-codec.js +14 -0
- package/dist/_esm/codec/script-codec.js.map +1 -0
- package/dist/_esm/codec/signature-codec.d.ts +5 -0
- package/dist/_esm/codec/signature-codec.js +5 -0
- package/dist/_esm/codec/signature-codec.js.map +1 -0
- package/dist/_esm/codec/timestamp-codec.d.ts +8 -0
- package/dist/_esm/codec/timestamp-codec.js +19 -0
- package/dist/_esm/codec/timestamp-codec.js.map +1 -0
- package/dist/_esm/codec/token-codec.d.ts +8 -0
- package/dist/_esm/codec/token-codec.js +9 -0
- package/dist/_esm/codec/token-codec.js.map +1 -0
- package/dist/_esm/codec/transaction-codec.d.ts +21 -0
- package/dist/_esm/codec/transaction-codec.js +82 -0
- package/dist/_esm/codec/transaction-codec.js.map +1 -0
- package/dist/_esm/codec/unlock-script-codec.d.ts +44 -0
- package/dist/_esm/codec/unlock-script-codec.js +49 -0
- package/dist/_esm/codec/unlock-script-codec.js.map +1 -0
- package/dist/_esm/codec/unsigned-tx-codec.d.ts +23 -0
- package/dist/_esm/codec/unsigned-tx-codec.js +57 -0
- package/dist/_esm/codec/unsigned-tx-codec.js.map +1 -0
- package/dist/_esm/codec/val.d.ts +27 -0
- package/dist/_esm/codec/val.js +14 -0
- package/dist/_esm/codec/val.js.map +1 -0
- package/dist/_esm/constants.d.ts +14 -0
- package/dist/_esm/constants.js +15 -0
- package/dist/_esm/constants.js.map +1 -0
- package/dist/_esm/contract/contract.d.ts +328 -0
- package/dist/_esm/contract/contract.js +1449 -0
- package/dist/_esm/contract/contract.js.map +1 -0
- package/dist/_esm/contract/dapp-tx-builder.d.ts +26 -0
- package/dist/_esm/contract/dapp-tx-builder.js +166 -0
- package/dist/_esm/contract/dapp-tx-builder.js.map +1 -0
- package/dist/_esm/contract/deployment.d.ts +21 -0
- package/dist/_esm/contract/deployment.js +2 -0
- package/dist/_esm/contract/deployment.js.map +1 -0
- package/dist/_esm/contract/events.d.ts +17 -0
- package/dist/_esm/contract/events.js +59 -0
- package/dist/_esm/contract/events.js.map +1 -0
- package/dist/_esm/contract/index.d.ts +6 -0
- package/dist/_esm/contract/index.js +7 -0
- package/dist/_esm/contract/index.js.map +1 -0
- package/dist/_esm/contract/ralph.d.ts +73 -0
- package/dist/_esm/contract/ralph.js +372 -0
- package/dist/_esm/contract/ralph.js.map +1 -0
- package/dist/_esm/contract/script-simulator.d.ts +15 -0
- package/dist/_esm/contract/script-simulator.js +712 -0
- package/dist/_esm/contract/script-simulator.js.map +1 -0
- package/dist/_esm/debug.d.ts +6 -0
- package/dist/_esm/debug.js +21 -0
- package/dist/_esm/debug.js.map +1 -0
- package/dist/_esm/error.d.ts +4 -0
- package/dist/_esm/error.js +16 -0
- package/dist/_esm/error.js.map +1 -0
- package/dist/_esm/exchange/exchange.d.ts +21 -0
- package/dist/_esm/exchange/exchange.js +137 -0
- package/dist/_esm/exchange/exchange.js.map +1 -0
- package/dist/_esm/exchange/index.d.ts +2 -0
- package/dist/_esm/exchange/index.js +2 -0
- package/dist/_esm/exchange/index.js.map +1 -0
- package/dist/_esm/global.d.ts +10 -0
- package/dist/_esm/global.js +49 -0
- package/dist/_esm/global.js.map +1 -0
- package/dist/_esm/index.d.ts +15 -0
- package/dist/_esm/index.js +16 -0
- package/dist/_esm/index.js.map +1 -0
- package/dist/_esm/package.json +1 -0
- package/dist/_esm/signer/index.d.ts +3 -0
- package/dist/_esm/signer/index.js +4 -0
- package/dist/_esm/signer/index.js.map +1 -0
- package/dist/_esm/signer/signer.d.ts +63 -0
- package/dist/_esm/signer/signer.js +279 -0
- package/dist/_esm/signer/signer.js.map +1 -0
- package/dist/_esm/signer/tx-builder.d.ts +22 -0
- package/dist/_esm/signer/tx-builder.js +270 -0
- package/dist/_esm/signer/tx-builder.js.map +1 -0
- package/dist/_esm/signer/types.d.ts +167 -0
- package/dist/_esm/signer/types.js +27 -0
- package/dist/_esm/signer/types.js.map +1 -0
- package/dist/_esm/token/index.d.ts +1 -0
- package/dist/_esm/token/index.js +2 -0
- package/dist/_esm/token/index.js.map +1 -0
- package/dist/_esm/token/nft.d.ts +8 -0
- package/dist/_esm/token/nft.js +95 -0
- package/dist/_esm/token/nft.js.map +1 -0
- package/dist/_esm/transaction/index.d.ts +3 -0
- package/dist/_esm/transaction/index.js +4 -0
- package/dist/_esm/transaction/index.js.map +1 -0
- package/dist/_esm/transaction/sign-verify.d.ts +3 -0
- package/dist/_esm/transaction/sign-verify.js +8 -0
- package/dist/_esm/transaction/sign-verify.js.map +1 -0
- package/dist/_esm/transaction/status.d.ts +12 -0
- package/dist/_esm/transaction/status.js +33 -0
- package/dist/_esm/transaction/status.js.map +1 -0
- package/dist/_esm/transaction/utils.d.ts +4 -0
- package/dist/_esm/transaction/utils.js +35 -0
- package/dist/_esm/transaction/utils.js.map +1 -0
- package/dist/_esm/utils/bs58.d.ts +5 -0
- package/dist/_esm/utils/bs58.js +25 -0
- package/dist/_esm/utils/bs58.js.map +1 -0
- package/dist/_esm/utils/djb2.d.ts +1 -0
- package/dist/_esm/utils/djb2.js +8 -0
- package/dist/_esm/utils/djb2.js.map +1 -0
- package/dist/_esm/utils/index.d.ts +7 -0
- package/dist/_esm/utils/index.js +8 -0
- package/dist/_esm/utils/index.js.map +1 -0
- package/dist/_esm/utils/number.d.ts +17 -0
- package/dist/_esm/utils/number.fixture.d.ts +12 -0
- package/dist/_esm/utils/number.fixture.js +170 -0
- package/dist/_esm/utils/number.fixture.js.map +1 -0
- package/dist/_esm/utils/number.js +104 -0
- package/dist/_esm/utils/number.js.map +1 -0
- package/dist/_esm/utils/sign.d.ts +3 -0
- package/dist/_esm/utils/sign.js +52 -0
- package/dist/_esm/utils/sign.js.map +1 -0
- package/dist/_esm/utils/subscription.d.ts +22 -0
- package/dist/_esm/utils/subscription.js +31 -0
- package/dist/_esm/utils/subscription.js.map +1 -0
- package/dist/_esm/utils/utils.d.ts +40 -0
- package/dist/_esm/utils/utils.js +116 -0
- package/dist/_esm/utils/utils.js.map +1 -0
- package/dist/_esm/utils/webcrypto.d.ts +4 -0
- package/dist/_esm/utils/webcrypto.js +14 -0
- package/dist/_esm/utils/webcrypto.js.map +1 -0
- package/package.json +34 -40
- package/src/address/address.ts +12 -17
- package/src/api/api-alephium.ts +4 -5
- package/src/api/api-explorer.ts +4 -5
- package/src/api/types.ts +3 -2
- package/src/api/utils.ts +13 -1
- package/src/block/index.ts +2 -1
- package/src/codec/hash.ts +2 -2
- package/src/contract/contract.ts +54 -15
- package/src/exchange/index.ts +1 -3
- package/src/index.ts +0 -4
- package/src/signer/signer.ts +17 -11
- package/src/token/nft.ts +0 -1
- package/src/utils/sign.ts +19 -20
- package/src/utils/utils.ts +9 -20
- package/src/utils/webcrypto.ts +4 -10
- package/tsconfig.build.json +9 -0
- package/dist/alephium-web3.min.js +0 -3
- package/dist/alephium-web3.min.js.LICENSE.txt +0 -12
- package/dist/alephium-web3.min.js.map +0 -1
- package/dist/scripts/check-versions.d.ts +0 -1
- package/dist/scripts/check-versions.js +0 -39
- package/dist/scripts/header.d.ts +0 -0
- package/dist/scripts/header.js +0 -18
- package/dist/src/api/api-alephium.d.ts +0 -2433
- package/dist/src/api/api-explorer.d.ts +0 -1472
- package/dist/src/block/index.d.ts +0 -1
- package/dist/src/block/index.js +0 -22
- package/dist/src/codec/contract-output-ref-codec.js +0 -28
- package/dist/src/codec/either-codec.js +0 -25
- package/dist/src/codec/hash.js +0 -40
- package/dist/src/codec/int-as-4bytes-codec.js +0 -32
- package/dist/src/codec/option-codec.js +0 -36
- package/dist/src/codec/output-codec.js +0 -26
- package/dist/src/codec/public-key-like-codec.js +0 -30
- package/dist/src/codec/script-codec.js +0 -34
- package/dist/src/codec/signature-codec.js +0 -24
- package/dist/src/codec/token-codec.js +0 -28
- package/dist/src/contract/deployment.js +0 -19
- package/dist/src/debug.js +0 -46
- package/dist/src/exchange/index.d.ts +0 -1
- package/dist/src/utils/djb2.js +0 -27
- package/dist/src/utils/sign.js +0 -96
- package/dist/src/utils/webcrypto.js +0 -41
- package/webpack.config.js +0 -56
- /package/dist/{src → _cjs}/address/address.d.ts +0 -0
- /package/dist/{src → _cjs}/address/index.d.ts +0 -0
- /package/dist/{src → _cjs}/api/explorer-provider.d.ts +0 -0
- /package/dist/{src → _cjs}/api/index.d.ts +0 -0
- /package/dist/{src → _cjs}/api/types.d.ts +0 -0
- /package/dist/{src → _cjs}/block/block.d.ts +0 -0
- /package/dist/{src → _cjs}/codec/array-codec.d.ts +0 -0
- /package/dist/{src → _cjs}/codec/asset-output-codec.d.ts +0 -0
- /package/dist/{src → _cjs}/codec/bigint-codec.d.ts +0 -0
- /package/dist/{src → _cjs}/codec/checksum-codec.d.ts +0 -0
- /package/dist/{src → _cjs}/codec/codec.d.ts +0 -0
- /package/dist/{src → _cjs}/codec/compact-int-codec.d.ts +0 -0
- /package/dist/{src → _cjs}/codec/contract-codec.d.ts +0 -0
- /package/dist/{src → _cjs}/codec/contract-output-codec.d.ts +0 -0
- /package/dist/{src → _cjs}/codec/contract-output-ref-codec.d.ts +0 -0
- /package/dist/{src → _cjs}/codec/either-codec.d.ts +0 -0
- /package/dist/{src → _cjs}/codec/index.d.ts +0 -0
- /package/dist/{src → _cjs}/codec/input-codec.d.ts +0 -0
- /package/dist/{src → _cjs}/codec/instr-codec.d.ts +0 -0
- /package/dist/{src → _cjs}/codec/int-as-4bytes-codec.d.ts +0 -0
- /package/dist/{src → _cjs}/codec/method-codec.d.ts +0 -0
- /package/dist/{src → _cjs}/codec/option-codec.d.ts +0 -0
- /package/dist/{src → _cjs}/codec/output-codec.d.ts +0 -0
- /package/dist/{src → _cjs}/codec/public-key-like-codec.d.ts +0 -0
- /package/dist/{src → _cjs}/codec/reader.d.ts +0 -0
- /package/dist/{src → _cjs}/codec/script-codec.d.ts +0 -0
- /package/dist/{src → _cjs}/codec/timestamp-codec.d.ts +0 -0
- /package/dist/{src → _cjs}/codec/token-codec.d.ts +0 -0
- /package/dist/{src → _cjs}/codec/transaction-codec.d.ts +0 -0
- /package/dist/{src → _cjs}/codec/unsigned-tx-codec.d.ts +0 -0
- /package/dist/{src → _cjs}/codec/val.d.ts +0 -0
- /package/dist/{src → _cjs}/contract/contract.d.ts +0 -0
- /package/dist/{src → _cjs}/contract/dapp-tx-builder.d.ts +0 -0
- /package/dist/{src → _cjs}/contract/deployment.d.ts +0 -0
- /package/dist/{src → _cjs}/contract/events.d.ts +0 -0
- /package/dist/{src → _cjs}/contract/index.d.ts +0 -0
- /package/dist/{src → _cjs}/contract/ralph.d.ts +0 -0
- /package/dist/{src → _cjs}/debug.d.ts +0 -0
- /package/dist/{src → _cjs}/error.d.ts +0 -0
- /package/dist/{src → _cjs}/exchange/exchange.d.ts +0 -0
- /package/dist/{src → _cjs}/global.d.ts +0 -0
- /package/dist/{src → _cjs}/index.d.ts +0 -0
- /package/dist/{src → _cjs}/signer/index.d.ts +0 -0
- /package/dist/{src → _cjs}/signer/signer.d.ts +0 -0
- /package/dist/{src → _cjs}/signer/tx-builder.d.ts +0 -0
- /package/dist/{src → _cjs}/signer/types.d.ts +0 -0
- /package/dist/{src → _cjs}/token/index.d.ts +0 -0
- /package/dist/{src → _cjs}/transaction/index.d.ts +0 -0
- /package/dist/{src → _cjs}/transaction/sign-verify.d.ts +0 -0
- /package/dist/{src → _cjs}/transaction/status.d.ts +0 -0
- /package/dist/{src → _cjs}/transaction/utils.d.ts +0 -0
- /package/dist/{src → _cjs}/utils/djb2.d.ts +0 -0
- /package/dist/{src → _cjs}/utils/index.d.ts +0 -0
- /package/dist/{src → _cjs}/utils/number.fixture.d.ts +0 -0
- /package/dist/{src → _cjs}/utils/sign.d.ts +0 -0
- /package/dist/{src → _cjs}/utils/subscription.d.ts +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":";;;AAkBa,QAAA,sBAAsB,GAAG,CAAC,CAAA;AAC1B,QAAA,sBAAsB,GAAG,8BAAsB,GAAG,8BAAsB,CAAA;AACxE,QAAA,mBAAmB,GAAG,MAAM,CAAC,aAAa,CAAC,CAAA;AAC3C,QAAA,aAAa,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,EAAE,GAAG,CAAC,CAAA;AACpC,QAAA,QAAQ,GAAG,GAAG,IAAI,GAAG,CAAA;AACrB,QAAA,WAAW,GAAG,GAAG,IAAI,GAAG,CAAA;AAIxB,QAAA,YAAY,GAAG,8CAA8C,CAAA;AAC7D,QAAA,qBAAqB,GAAG,8CAA8C,CAAA;AACtE,QAAA,kBAAkB,GAAG,KAAK,CAAA;AAC1B,QAAA,iBAAiB,GAAG,GAAG,IAAI,GAAG,CAAA;AAC9B,QAAA,2BAA2B,GAAG,MAAM,CAAC,0BAAkB,CAAC,GAAG,yBAAiB,CAAA;AAC5E,QAAA,uBAAuB,GAAG,KAAK,CAAA;AAC/B,QAAA,wBAAwB,GAAG,gBAAQ,GAAG,GAAG,CAAA;AACzC,QAAA,iBAAiB,GAAG,gBAAQ,GAAG,GAAG,CAAA"}
|
|
@@ -1,21 +1,4 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
/*
|
|
3
|
-
Copyright 2018 - 2022 The Alephium Authors
|
|
4
|
-
This file is part of the alephium project.
|
|
5
|
-
|
|
6
|
-
The library is free software: you can redistribute it and/or modify
|
|
7
|
-
it under the terms of the GNU Lesser General Public License as published by
|
|
8
|
-
the Free Software Foundation, either version 3 of the License, or
|
|
9
|
-
(at your option) any later version.
|
|
10
|
-
|
|
11
|
-
The library is distributed in the hope that it will be useful,
|
|
12
|
-
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
13
|
-
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
14
|
-
GNU Lesser General Public License for more details.
|
|
15
|
-
|
|
16
|
-
You should have received a copy of the GNU Lesser General Public License
|
|
17
|
-
along with the library. If not, see <http://www.gnu.org/licenses/>.
|
|
18
|
-
*/
|
|
19
2
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
20
3
|
if (k2 === undefined) k2 = k;
|
|
21
4
|
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
@@ -32,16 +15,50 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
|
|
|
32
15
|
}) : function(o, v) {
|
|
33
16
|
o["default"] = v;
|
|
34
17
|
});
|
|
35
|
-
var __importStar = (this && this.__importStar) || function (
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
};
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
42
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
43
|
-
exports.
|
|
44
|
-
|
|
36
|
+
exports.getTokenIdFromUnsignedTx = exports.getContractIdFromUnsignedTx = exports.ContractInstance = exports.RalphMap = exports.DestroyContractEventAddresses = exports.CreateContractEventAddresses = exports.ExecutableScript = exports.ContractFactory = exports.Script = exports.Contract = exports.Artifact = exports.Struct = exports.DEFAULT_COMPILER_OPTIONS = exports.DEFAULT_NODE_COMPILER_OPTIONS = exports.StdIdFieldName = void 0;
|
|
37
|
+
exports.fromApiFields = fromApiFields;
|
|
38
|
+
exports.getDefaultValue = getDefaultValue;
|
|
39
|
+
exports.fromApiArray = fromApiArray;
|
|
40
|
+
exports.fromApiEventFields = fromApiEventFields;
|
|
41
|
+
exports.randomTxId = randomTxId;
|
|
42
|
+
exports.decodeContractCreatedEvent = decodeContractCreatedEvent;
|
|
43
|
+
exports.decodeContractDestroyedEvent = decodeContractDestroyedEvent;
|
|
44
|
+
exports.subscribeEventsFromContract = subscribeEventsFromContract;
|
|
45
|
+
exports.addStdIdToFields = addStdIdToFields;
|
|
46
|
+
exports.extractMapsFromApiResult = extractMapsFromApiResult;
|
|
47
|
+
exports.testMethod = testMethod;
|
|
48
|
+
exports.getDebugMessagesFromTx = getDebugMessagesFromTx;
|
|
49
|
+
exports.printDebugMessagesFromTx = printDebugMessagesFromTx;
|
|
50
|
+
exports.getMapItem = getMapItem;
|
|
51
|
+
exports.fetchContractState = fetchContractState;
|
|
52
|
+
exports.subscribeContractCreatedEvent = subscribeContractCreatedEvent;
|
|
53
|
+
exports.subscribeContractDestroyedEvent = subscribeContractDestroyedEvent;
|
|
54
|
+
exports.decodeEvent = decodeEvent;
|
|
55
|
+
exports.subscribeContractEvent = subscribeContractEvent;
|
|
56
|
+
exports.subscribeContractEvents = subscribeContractEvents;
|
|
57
|
+
exports.callMethod = callMethod;
|
|
58
|
+
exports.signExecuteMethod = signExecuteMethod;
|
|
59
|
+
exports.multicallMethods = multicallMethods;
|
|
60
|
+
exports.getContractEventsCurrentCount = getContractEventsCurrentCount;
|
|
61
|
+
exports.getContractCodeByCodeHash = getContractCodeByCodeHash;
|
|
45
62
|
const api_1 = require("../api");
|
|
46
63
|
const ralph = __importStar(require("./ralph"));
|
|
47
64
|
const utils_1 = require("../utils");
|
|
@@ -49,7 +66,7 @@ const address_1 = require("../address");
|
|
|
49
66
|
const global_1 = require("../global");
|
|
50
67
|
const events_1 = require("./events");
|
|
51
68
|
const constants_1 = require("../constants");
|
|
52
|
-
const
|
|
69
|
+
const blake2b_1 = require("@noble/hashes/blake2b");
|
|
53
70
|
const debug_1 = require("../debug");
|
|
54
71
|
const codec_1 = require("../codec");
|
|
55
72
|
const error_1 = require("../error");
|
|
@@ -159,7 +176,7 @@ class Contract extends Artifact {
|
|
|
159
176
|
fieldLength: decodedDebugContract.fieldLength,
|
|
160
177
|
methods: methods
|
|
161
178
|
});
|
|
162
|
-
const codeHashForTesting =
|
|
179
|
+
const codeHashForTesting = (0, blake2b_1.blake2b)(bytecodeForTesting, { dkLen: 32 });
|
|
163
180
|
this.bytecodeForTesting = (0, utils_1.binToHex)(bytecodeForTesting);
|
|
164
181
|
this.codeHashForTesting = (0, utils_1.binToHex)(codeHashForTesting);
|
|
165
182
|
return this.bytecodeForTesting;
|
|
@@ -192,7 +209,6 @@ class Contract extends Artifact {
|
|
|
192
209
|
const contract = this.getDecodedTestingContract();
|
|
193
210
|
return contract.methods[`${methodIndex}`].usePreapprovedAssets;
|
|
194
211
|
}
|
|
195
|
-
// TODO: safely parse json
|
|
196
212
|
static fromJson(artifact, bytecodeDebugPatch = '', codeHashDebug = '', structs = []) {
|
|
197
213
|
if (artifact.version == null ||
|
|
198
214
|
artifact.name == null ||
|
|
@@ -211,9 +227,9 @@ class Contract extends Artifact {
|
|
|
211
227
|
static fromCompileResult(result, structs = []) {
|
|
212
228
|
return new Contract(result.version, result.name, result.bytecode, result.bytecodeDebugPatch, result.codeHash, result.codeHashDebug, result.fields, result.events, result.functions.map(fromFunctionSig), result.constants, result.enums, structs, result.maps, result.stdInterfaceId);
|
|
213
229
|
}
|
|
214
|
-
// support both 'code.ral' and 'code.ral.json'
|
|
215
230
|
static async fromArtifactFile(path, bytecodeDebugPatch, codeHashDebug, structs = []) {
|
|
216
|
-
const
|
|
231
|
+
const fs = await Promise.resolve().then(() => __importStar(require('fs')));
|
|
232
|
+
const content = await fs.promises.readFile(path);
|
|
217
233
|
const artifact = JSON.parse(content.toString());
|
|
218
234
|
return Contract.fromJson(artifact, bytecodeDebugPatch, codeHashDebug, structs);
|
|
219
235
|
}
|
|
@@ -235,7 +251,7 @@ class Contract extends Artifact {
|
|
|
235
251
|
if (this.stdInterfaceId !== undefined) {
|
|
236
252
|
object.stdInterfaceId = this.stdInterfaceId;
|
|
237
253
|
}
|
|
238
|
-
return
|
|
254
|
+
return (0, api_1.stringify)(object, null, 2);
|
|
239
255
|
}
|
|
240
256
|
getInitialFieldsWithDefaultValues() {
|
|
241
257
|
const fields = this.stdInterfaceId === undefined
|
|
@@ -259,7 +275,6 @@ class Contract extends Artifact {
|
|
|
259
275
|
asset: asset
|
|
260
276
|
};
|
|
261
277
|
}
|
|
262
|
-
// no need to be cryptographically strong random
|
|
263
278
|
static randomAddress() {
|
|
264
279
|
const bytes = new Uint8Array(33);
|
|
265
280
|
crypto.getRandomValues(bytes);
|
|
@@ -494,7 +509,6 @@ class Script extends Artifact {
|
|
|
494
509
|
static fromCompileResult(result, structs = []) {
|
|
495
510
|
return new Script(result.version, result.name, result.bytecodeTemplate, result.bytecodeDebugPatch, result.fields, result.functions.map(fromFunctionSig), structs);
|
|
496
511
|
}
|
|
497
|
-
// TODO: safely parse json
|
|
498
512
|
static fromJson(artifact, bytecodeDebugPatch = '', structs = []) {
|
|
499
513
|
if (artifact.version == null ||
|
|
500
514
|
artifact.name == null ||
|
|
@@ -506,7 +520,8 @@ class Script extends Artifact {
|
|
|
506
520
|
return new Script(artifact.version, artifact.name, artifact.bytecodeTemplate, bytecodeDebugPatch, artifact.fieldsSig, artifact.functions, structs);
|
|
507
521
|
}
|
|
508
522
|
static async fromArtifactFile(path, bytecodeDebugPatch, structs = []) {
|
|
509
|
-
const
|
|
523
|
+
const fs = await Promise.resolve().then(() => __importStar(require('fs')));
|
|
524
|
+
const content = await fs.promises.readFile(path);
|
|
510
525
|
const artifact = JSON.parse(content.toString());
|
|
511
526
|
return this.fromJson(artifact, bytecodeDebugPatch, structs);
|
|
512
527
|
}
|
|
@@ -518,7 +533,7 @@ class Script extends Artifact {
|
|
|
518
533
|
fieldsSig: this.fieldsSig,
|
|
519
534
|
functions: this.functions
|
|
520
535
|
};
|
|
521
|
-
return
|
|
536
|
+
return (0, api_1.stringify)(object, null, 2);
|
|
522
537
|
}
|
|
523
538
|
async txParamsForExecution(params) {
|
|
524
539
|
const selectedAccount = await params.signer.getSelectedAccount();
|
|
@@ -558,7 +573,6 @@ function fromApiFields(immFields, mutFields, fieldsSig, structs) {
|
|
|
558
573
|
return acc;
|
|
559
574
|
}, {});
|
|
560
575
|
}
|
|
561
|
-
exports.fromApiFields = fromApiFields;
|
|
562
576
|
function buildVal(isMutable, type, structs, func) {
|
|
563
577
|
if (type.startsWith('[')) {
|
|
564
578
|
const [baseType, size] = (0, api_1.decodeArrayType)(type);
|
|
@@ -580,7 +594,7 @@ function buildVal(isMutable, type, structs, func) {
|
|
|
580
594
|
return acc;
|
|
581
595
|
}, {});
|
|
582
596
|
}
|
|
583
|
-
const primitiveType = api_1.PrimitiveTypes.includes(type) ? type : 'ByteVec';
|
|
597
|
+
const primitiveType = api_1.PrimitiveTypes.includes(type) ? type : 'ByteVec';
|
|
584
598
|
return func(primitiveType, isMutable);
|
|
585
599
|
}
|
|
586
600
|
function getDefaultValue(fieldsSig, structs) {
|
|
@@ -590,7 +604,6 @@ function getDefaultValue(fieldsSig, structs) {
|
|
|
590
604
|
return acc;
|
|
591
605
|
}, {});
|
|
592
606
|
}
|
|
593
|
-
exports.getDefaultValue = getDefaultValue;
|
|
594
607
|
function fromApiVal(iter, type, structs, systemEvent = false) {
|
|
595
608
|
const func = (primitiveType) => {
|
|
596
609
|
const currentValue = iter.next();
|
|
@@ -604,17 +617,14 @@ function fromApiArray(values, types, structs) {
|
|
|
604
617
|
const iter = values.values();
|
|
605
618
|
return types.map((type) => fromApiVal(iter, type, structs));
|
|
606
619
|
}
|
|
607
|
-
exports.fromApiArray = fromApiArray;
|
|
608
620
|
function fromApiEventFields(vals, eventSig, systemEvent = false) {
|
|
609
621
|
const iter = vals.values();
|
|
610
622
|
return eventSig.fieldNames.reduce((acc, name, index) => {
|
|
611
623
|
const type = eventSig.fieldTypes[`${index}`];
|
|
612
|
-
// currently event does not support struct type
|
|
613
624
|
acc[`${name}`] = fromApiVal(iter, type, [], systemEvent);
|
|
614
625
|
return acc;
|
|
615
626
|
}, {});
|
|
616
627
|
}
|
|
617
|
-
exports.fromApiEventFields = fromApiEventFields;
|
|
618
628
|
function toApiAsset(asset) {
|
|
619
629
|
return {
|
|
620
630
|
attoAlphAmount: (0, api_1.toApiNumber256)(asset.alphAmount),
|
|
@@ -689,7 +699,6 @@ function randomTxId() {
|
|
|
689
699
|
crypto.getRandomValues(bytes);
|
|
690
700
|
return (0, utils_1.binToHex)(bytes);
|
|
691
701
|
}
|
|
692
|
-
exports.randomTxId = randomTxId;
|
|
693
702
|
utils_1.assertType;
|
|
694
703
|
class ContractFactory {
|
|
695
704
|
constructor(contract) {
|
|
@@ -719,7 +728,6 @@ class ContractFactory {
|
|
|
719
728
|
initialFields: this.contract.getInitialFieldsWithDefaultValues()
|
|
720
729
|
});
|
|
721
730
|
}
|
|
722
|
-
// This is used for testing contract functions
|
|
723
731
|
stateForTest_(initFields, asset, address, maps) {
|
|
724
732
|
const newAsset = {
|
|
725
733
|
alphAmount: asset?.alphAmount ?? constants_1.MINIMAL_CONTRACT_DEPOSIT,
|
|
@@ -797,7 +805,6 @@ function decodeContractCreatedEvent(event) {
|
|
|
797
805
|
fields: toContractCreatedEventFields(fields)
|
|
798
806
|
};
|
|
799
807
|
}
|
|
800
|
-
exports.decodeContractCreatedEvent = decodeContractCreatedEvent;
|
|
801
808
|
function decodeContractDestroyedEvent(event) {
|
|
802
809
|
const fields = decodeSystemEvent(event, Contract.ContractDestroyedEvent, Contract.ContractDestroyedEventIndex);
|
|
803
810
|
return {
|
|
@@ -808,7 +815,6 @@ function decodeContractDestroyedEvent(event) {
|
|
|
808
815
|
fields: { address: fields['address'] }
|
|
809
816
|
};
|
|
810
817
|
}
|
|
811
|
-
exports.decodeContractDestroyedEvent = decodeContractDestroyedEvent;
|
|
812
818
|
function subscribeEventsFromContract(options, address, eventIndex, decodeFunc, fromCount) {
|
|
813
819
|
const messageCallback = (event) => {
|
|
814
820
|
if (event.eventIndex !== eventIndex) {
|
|
@@ -828,14 +834,12 @@ function subscribeEventsFromContract(options, address, eventIndex, decodeFunc, f
|
|
|
828
834
|
};
|
|
829
835
|
return (0, events_1.subscribeToEvents)(opt, address, fromCount);
|
|
830
836
|
}
|
|
831
|
-
exports.subscribeEventsFromContract = subscribeEventsFromContract;
|
|
832
837
|
function addStdIdToFields(contract, fields) {
|
|
833
|
-
const stdInterfaceIdPrefix = '414c5048';
|
|
838
|
+
const stdInterfaceIdPrefix = '414c5048';
|
|
834
839
|
return contract.stdInterfaceId === undefined
|
|
835
840
|
? fields
|
|
836
841
|
: { ...fields, __stdInterfaceId: stdInterfaceIdPrefix + contract.stdInterfaceId };
|
|
837
842
|
}
|
|
838
|
-
exports.addStdIdToFields = addStdIdToFields;
|
|
839
843
|
function calcWrapperContractId(parentContractId, mapIndex, key, keyType, group) {
|
|
840
844
|
const prefix = ralph.encodeMapPrefix(mapIndex);
|
|
841
845
|
const encodedKey = ralph.encodeMapKey(key, keyType);
|
|
@@ -889,7 +893,7 @@ function genCodeForType(type, structs) {
|
|
|
889
893
|
methods: [loadImmFieldByIndex, loadMutFieldByIndex, storeMutFieldByIndex, destroy]
|
|
890
894
|
};
|
|
891
895
|
const bytecode = codec_1.contract.contractCodec.encodeContract(c);
|
|
892
|
-
const codeHash =
|
|
896
|
+
const codeHash = (0, blake2b_1.blake2b)(bytecode, { dkLen: 32 });
|
|
893
897
|
return { bytecode: (0, utils_1.binToHex)(bytecode), codeHash: (0, utils_1.binToHex)(codeHash) };
|
|
894
898
|
}
|
|
895
899
|
function getContractFieldsSig(mapValueType) {
|
|
@@ -952,7 +956,6 @@ function getNewCreatedContractExceptMaps(result, getContractByCodeHash) {
|
|
|
952
956
|
}
|
|
953
957
|
catch (error) {
|
|
954
958
|
if (error instanceof Error && error.message.includes('Unknown code with code hash')) {
|
|
955
|
-
// the contract does not exist, because it is a map item contract
|
|
956
959
|
return true;
|
|
957
960
|
}
|
|
958
961
|
throw error;
|
|
@@ -986,7 +989,6 @@ function extractMapsFromApiResult(selfAddress, params, group, apiResult, getCont
|
|
|
986
989
|
});
|
|
987
990
|
return allMaps;
|
|
988
991
|
}
|
|
989
|
-
exports.extractMapsFromApiResult = extractMapsFromApiResult;
|
|
990
992
|
async function testMethod(factory, methodName, params, getContractByCodeHash) {
|
|
991
993
|
const txId = params?.txId ?? randomTxId();
|
|
992
994
|
const selfContract = factory.contract;
|
|
@@ -1016,7 +1018,6 @@ async function testMethod(factory, methodName, params, getContractByCodeHash) {
|
|
|
1016
1018
|
maps: allMaps.find((v) => v.address === selfAddress)?.maps
|
|
1017
1019
|
};
|
|
1018
1020
|
}
|
|
1019
|
-
exports.testMethod = testMethod;
|
|
1020
1021
|
function printDebugMessage(m) {
|
|
1021
1022
|
console.log(`> Contract @ ${m.contractAddress} - ${m.message}`);
|
|
1022
1023
|
}
|
|
@@ -1034,7 +1035,7 @@ async function getDebugMessagesFromTx(txId, provider) {
|
|
|
1034
1035
|
};
|
|
1035
1036
|
}
|
|
1036
1037
|
else {
|
|
1037
|
-
throw new Error(`Invalid debug log: ${
|
|
1038
|
+
throw new Error(`Invalid debug log: ${(0, api_1.stringify)(e.fields)}`);
|
|
1038
1039
|
}
|
|
1039
1040
|
});
|
|
1040
1041
|
}
|
|
@@ -1042,14 +1043,12 @@ async function getDebugMessagesFromTx(txId, provider) {
|
|
|
1042
1043
|
throw new Error(`Invalid tx id: ${txId}`);
|
|
1043
1044
|
}
|
|
1044
1045
|
}
|
|
1045
|
-
exports.getDebugMessagesFromTx = getDebugMessagesFromTx;
|
|
1046
1046
|
async function printDebugMessagesFromTx(txId, provider) {
|
|
1047
1047
|
const messages = await getDebugMessagesFromTx(txId, provider);
|
|
1048
1048
|
if (messages.length > 0) {
|
|
1049
1049
|
messages.forEach((m) => printDebugMessage(m));
|
|
1050
1050
|
}
|
|
1051
1051
|
}
|
|
1052
|
-
exports.printDebugMessagesFromTx = printDebugMessagesFromTx;
|
|
1053
1052
|
class RalphMap {
|
|
1054
1053
|
constructor(parentContract, parentContractId, mapName) {
|
|
1055
1054
|
this.parentContract = parentContract;
|
|
@@ -1089,13 +1088,11 @@ async function getMapItem(parentContract, parentContractId, groupIndex, mapName,
|
|
|
1089
1088
|
}
|
|
1090
1089
|
catch (error) {
|
|
1091
1090
|
if (error instanceof Error && error.message.includes('KeyNotFound')) {
|
|
1092
|
-
// the map item contract does not exist
|
|
1093
1091
|
return undefined;
|
|
1094
1092
|
}
|
|
1095
1093
|
throw new error_1.TraceableError(`Failed to get value from map ${mapName}, key: ${key}, parent contract id: ${parentContractId}`, error);
|
|
1096
1094
|
}
|
|
1097
1095
|
}
|
|
1098
|
-
exports.getMapItem = getMapItem;
|
|
1099
1096
|
function buildMapInfo(contract, fields) {
|
|
1100
1097
|
const mapsSig = contract.mapsSig;
|
|
1101
1098
|
if (mapsSig === undefined)
|
|
@@ -1179,7 +1176,6 @@ async function fetchContractState(contract, instance) {
|
|
|
1179
1176
|
fields: state.fields
|
|
1180
1177
|
};
|
|
1181
1178
|
}
|
|
1182
|
-
exports.fetchContractState = fetchContractState;
|
|
1183
1179
|
function checkGroupIndex(groupIndex) {
|
|
1184
1180
|
if (groupIndex < 0 || groupIndex >= constants_1.TOTAL_NUMBER_OF_GROUPS) {
|
|
1185
1181
|
throw new Error(`Invalid group index ${groupIndex}, expected a value within the range [0, ${constants_1.TOTAL_NUMBER_OF_GROUPS})`);
|
|
@@ -1195,7 +1191,6 @@ function subscribeContractCreatedEvent(options, fromGroup, fromCount) {
|
|
|
1195
1191
|
};
|
|
1196
1192
|
}, fromCount);
|
|
1197
1193
|
}
|
|
1198
|
-
exports.subscribeContractCreatedEvent = subscribeContractCreatedEvent;
|
|
1199
1194
|
function subscribeContractDestroyedEvent(options, fromGroup, fromCount) {
|
|
1200
1195
|
checkGroupIndex(fromGroup);
|
|
1201
1196
|
const contractAddress = exports.DestroyContractEventAddresses[`${fromGroup}`];
|
|
@@ -1206,7 +1201,6 @@ function subscribeContractDestroyedEvent(options, fromGroup, fromCount) {
|
|
|
1206
1201
|
};
|
|
1207
1202
|
}, fromCount);
|
|
1208
1203
|
}
|
|
1209
|
-
exports.subscribeContractDestroyedEvent = subscribeContractDestroyedEvent;
|
|
1210
1204
|
function decodeEvent(contract, instance, event, targetEventIndex) {
|
|
1211
1205
|
if (event.eventIndex !== targetEventIndex &&
|
|
1212
1206
|
!(targetEventIndex >= 0 && targetEventIndex < contract.eventsSig.length)) {
|
|
@@ -1223,12 +1217,10 @@ function decodeEvent(contract, instance, event, targetEventIndex) {
|
|
|
1223
1217
|
fields: fields
|
|
1224
1218
|
};
|
|
1225
1219
|
}
|
|
1226
|
-
exports.decodeEvent = decodeEvent;
|
|
1227
1220
|
function subscribeContractEvent(contract, instance, options, eventName, fromCount) {
|
|
1228
1221
|
const eventIndex = contract.eventsSig.findIndex((sig) => sig.name === eventName);
|
|
1229
1222
|
return subscribeEventsFromContract(options, instance.address, eventIndex, (event) => decodeEvent(contract, instance, event, eventIndex), fromCount);
|
|
1230
1223
|
}
|
|
1231
|
-
exports.subscribeContractEvent = subscribeContractEvent;
|
|
1232
1224
|
function subscribeContractEvents(contract, instance, options, fromCount) {
|
|
1233
1225
|
const messageCallback = (event) => {
|
|
1234
1226
|
return options.messageCallback({
|
|
@@ -1248,17 +1240,41 @@ function subscribeContractEvents(contract, instance, options, fromCount) {
|
|
|
1248
1240
|
};
|
|
1249
1241
|
return (0, events_1.subscribeToEvents)(opt, instance.address, fromCount);
|
|
1250
1242
|
}
|
|
1251
|
-
exports.subscribeContractEvents = subscribeContractEvents;
|
|
1252
1243
|
async function callMethod(contract, instance, methodName, params, getContractByCodeHash) {
|
|
1253
1244
|
const methodIndex = contract.contract.getMethodIndex(methodName);
|
|
1254
1245
|
const txId = params?.txId ?? randomTxId();
|
|
1255
|
-
const
|
|
1246
|
+
const callArgs = getCallMethodArgs(params.args ?? {}, instance.groupIndex);
|
|
1247
|
+
const callParams = contract.contract.toApiCallContract({ ...params, txId: txId, args: callArgs }, instance.groupIndex, instance.address, methodIndex);
|
|
1256
1248
|
const result = await (0, global_1.getCurrentNodeProvider)().contracts.postContractsCallContract(callParams);
|
|
1257
1249
|
const callResult = contract.contract.fromApiCallContractResult(result, txId, methodIndex, getContractByCodeHash);
|
|
1258
1250
|
contract.contract.printDebugMessages(methodName, callResult.debugMessages);
|
|
1259
1251
|
return callResult;
|
|
1260
1252
|
}
|
|
1261
|
-
|
|
1253
|
+
function tryGetCallMethodAddressArg(maybeAddress, groupIndex) {
|
|
1254
|
+
if (!(0, address_1.isValidAddress)(maybeAddress))
|
|
1255
|
+
return maybeAddress;
|
|
1256
|
+
if ((0, address_1.isGrouplessAddress)(maybeAddress)) {
|
|
1257
|
+
const rawAddress = (0, address_1.addressWithoutExplicitGroupIndex)(maybeAddress);
|
|
1258
|
+
return `${rawAddress}:${groupIndex}`;
|
|
1259
|
+
}
|
|
1260
|
+
return maybeAddress;
|
|
1261
|
+
}
|
|
1262
|
+
function getCallMethodArgsFromVal(val, groupIndex) {
|
|
1263
|
+
if (typeof val === 'string') {
|
|
1264
|
+
return tryGetCallMethodAddressArg(val, groupIndex);
|
|
1265
|
+
}
|
|
1266
|
+
if (Array.isArray(val)) {
|
|
1267
|
+
return val.map((v) => getCallMethodArgsFromVal(v, groupIndex));
|
|
1268
|
+
}
|
|
1269
|
+
return val;
|
|
1270
|
+
}
|
|
1271
|
+
function getCallMethodArgs(args, groupIndex) {
|
|
1272
|
+
const newArgs = {};
|
|
1273
|
+
for (const [key, value] of Object.entries(args)) {
|
|
1274
|
+
newArgs[`${key}`] = getCallMethodArgsFromVal(value, groupIndex);
|
|
1275
|
+
}
|
|
1276
|
+
return newArgs;
|
|
1277
|
+
}
|
|
1262
1278
|
async function signExecuteMethod(contract, instance, methodName, params) {
|
|
1263
1279
|
const methodIndex = contract.contract.getMethodIndex(methodName);
|
|
1264
1280
|
const functionSig = contract.contract.functions[methodIndex];
|
|
@@ -1286,9 +1302,7 @@ async function signExecuteMethod(contract, instance, methodName, params) {
|
|
|
1286
1302
|
}
|
|
1287
1303
|
return result;
|
|
1288
1304
|
}
|
|
1289
|
-
exports.signExecuteMethod = signExecuteMethod;
|
|
1290
1305
|
function getBytecodeTemplate(methodIndex, methodUsePreapprovedAssets, functionSig, structs, attoAlphAmount, tokens) {
|
|
1291
|
-
// For the default TxScript main function
|
|
1292
1306
|
const numberOfMethods = '01';
|
|
1293
1307
|
const isPublic = '01';
|
|
1294
1308
|
const scriptUseApprovedAssets = attoAlphAmount !== undefined || tokens !== undefined;
|
|
@@ -1302,14 +1316,13 @@ function getBytecodeTemplate(methodIndex, methodUsePreapprovedAssets, functionSi
|
|
|
1302
1316
|
const approveAlphInstrs = getApproveAlphInstrs(methodUsePreapprovedAssets ? attoAlphAmount : undefined);
|
|
1303
1317
|
const approveTokensInstrs = getApproveTokensInstrs(methodUsePreapprovedAssets ? tokens : undefined);
|
|
1304
1318
|
const callerInstrs = getCallAddressInstrs(approveAlphInstrs.length / 2 + approveTokensInstrs.length / 3);
|
|
1305
|
-
// First template var is the contract
|
|
1306
1319
|
const functionArgsNum = encodeU256Const(BigInt(templateVarsLength - 1));
|
|
1307
1320
|
const localsLength = encodeI32(templateVarStoreLocalInstrs.length / 2);
|
|
1308
1321
|
const templateVarLoadLocalInstrs = getTemplateVarLoadLocalInstrs(functionSig, structs);
|
|
1309
1322
|
const functionReturnTypesLength = functionSig.returnTypes.reduce((acc, returnType) => acc + ralph.typeLength(returnType, structs), 0);
|
|
1310
1323
|
const functionReturnPopInstrs = encodeInstr(codec_1.Pop).repeat(functionReturnTypesLength);
|
|
1311
1324
|
const functionReturnNum = encodeU256Const(BigInt(functionReturnTypesLength));
|
|
1312
|
-
const contractTemplateVar = '{0}';
|
|
1325
|
+
const contractTemplateVar = '{0}';
|
|
1313
1326
|
const externalCallInstr = encodeInstr((0, codec_1.CallExternal)(methodIndex));
|
|
1314
1327
|
const numberOfInstrs = encodeI32(callerInstrs.length +
|
|
1315
1328
|
approveAlphInstrs.length +
|
|
@@ -1317,8 +1330,7 @@ function getBytecodeTemplate(methodIndex, methodUsePreapprovedAssets, functionSi
|
|
|
1317
1330
|
templateVarStoreLocalInstrs.length +
|
|
1318
1331
|
templateVarLoadLocalInstrs.length +
|
|
1319
1332
|
functionReturnTypesLength +
|
|
1320
|
-
4
|
|
1321
|
-
);
|
|
1333
|
+
4);
|
|
1322
1334
|
return (numberOfMethods +
|
|
1323
1335
|
isPublic +
|
|
1324
1336
|
modifier +
|
|
@@ -1370,7 +1382,7 @@ function getCallAddressInstrs(approveAssetsNum) {
|
|
|
1370
1382
|
return callerInstrs;
|
|
1371
1383
|
}
|
|
1372
1384
|
function getTemplateVarStoreLocalInstrs(functionSig, structs) {
|
|
1373
|
-
let templateVarIndex = 1;
|
|
1385
|
+
let templateVarIndex = 1;
|
|
1374
1386
|
let localsLength = 0;
|
|
1375
1387
|
const templateVarStoreInstrs = [];
|
|
1376
1388
|
functionSig.paramTypes.forEach((paramType) => {
|
|
@@ -1451,7 +1463,8 @@ async function multicallMethods(contract, instance, _callss, getContractByCodeHa
|
|
|
1451
1463
|
const [methodName, params] = entry;
|
|
1452
1464
|
const methodIndex = contract.contract.getMethodIndex(methodName);
|
|
1453
1465
|
const txId = params?.txId ?? randomTxId();
|
|
1454
|
-
|
|
1466
|
+
const callArgs = getCallMethodArgs(params.args ?? {}, instance.groupIndex);
|
|
1467
|
+
return contract.contract.toApiCallContract({ ...params, txId: txId, args: callArgs }, instance.groupIndex, instance.address, methodIndex);
|
|
1455
1468
|
});
|
|
1456
1469
|
});
|
|
1457
1470
|
const result = await (0, global_1.getCurrentNodeProvider)().contracts.postContractsMulticallContract({ calls: callsParams.flat() });
|
|
@@ -1470,7 +1483,6 @@ async function multicallMethods(contract, instance, _callss, getContractByCodeHa
|
|
|
1470
1483
|
});
|
|
1471
1484
|
return Array.isArray(_callss) ? results : results[0];
|
|
1472
1485
|
}
|
|
1473
|
-
exports.multicallMethods = multicallMethods;
|
|
1474
1486
|
async function getContractEventsCurrentCount(contractAddress) {
|
|
1475
1487
|
return (0, global_1.getCurrentNodeProvider)()
|
|
1476
1488
|
.events.getEventsContractContractaddressCurrentCount(contractAddress)
|
|
@@ -1481,17 +1493,14 @@ async function getContractEventsCurrentCount(contractAddress) {
|
|
|
1481
1493
|
throw new error_1.TraceableError(`Failed to get the event count for the contract ${contractAddress}`, error);
|
|
1482
1494
|
});
|
|
1483
1495
|
}
|
|
1484
|
-
exports.getContractEventsCurrentCount = getContractEventsCurrentCount;
|
|
1485
|
-
// This function only works in the simple case where a single non-subcontract is created in the tx
|
|
1486
1496
|
const getContractIdFromUnsignedTx = async (nodeProvider, unsignedTx) => {
|
|
1487
1497
|
const result = await nodeProvider.transactions.postTransactionsDecodeUnsignedTx({ unsignedTx });
|
|
1488
1498
|
const outputIndex = result.unsignedTx.fixedOutputs.length;
|
|
1489
1499
|
const hex = result.unsignedTx.txId + outputIndex.toString(16).padStart(8, '0');
|
|
1490
|
-
const hashHex = (0, utils_1.binToHex)(
|
|
1500
|
+
const hashHex = (0, utils_1.binToHex)((0, blake2b_1.blake2b)((0, utils_1.hexToBinUnsafe)(hex), { dkLen: 32 }));
|
|
1491
1501
|
return hashHex.slice(0, 62) + result.fromGroup.toString(16).padStart(2, '0');
|
|
1492
1502
|
};
|
|
1493
1503
|
exports.getContractIdFromUnsignedTx = getContractIdFromUnsignedTx;
|
|
1494
|
-
// This function only works in the simple case where a single non-subcontract is created in the tx
|
|
1495
1504
|
exports.getTokenIdFromUnsignedTx = exports.getContractIdFromUnsignedTx;
|
|
1496
1505
|
async function getContractCodeByCodeHash(nodeProvider, codeHash) {
|
|
1497
1506
|
if ((0, utils_1.isHexString)(codeHash) && codeHash.length === 64) {
|
|
@@ -1507,4 +1516,4 @@ async function getContractCodeByCodeHash(nodeProvider, codeHash) {
|
|
|
1507
1516
|
}
|
|
1508
1517
|
throw new Error(`Invalid code hash: ${codeHash}`);
|
|
1509
1518
|
}
|
|
1510
|
-
|
|
1519
|
+
//# sourceMappingURL=contract.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"contract.js","sourceRoot":"","sources":["../../../src/contract/contract.ts"],"names":[],"mappings":"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"}
|