@ckb-ccc/core 1.12.5 → 1.13.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/CHANGELOG.md +44 -0
- package/dist/address.advanced-CWGrVD-M.mjs +2 -0
- package/dist/address.advanced-CWGrVD-M.mjs.map +1 -0
- package/dist/advanced.d.mts +2 -0
- package/dist/advanced.mjs +1 -0
- package/dist/advancedBarrel-BD7EAPVd.d.mts +5480 -0
- package/dist/advancedBarrel-BD7EAPVd.d.mts.map +1 -0
- package/dist/advancedBarrel.d.mts +2 -0
- package/dist/advancedBarrel.mjs +2 -0
- package/dist/advancedBarrel.mjs.map +1 -0
- package/dist/barrel-DchA_RPN.mjs +7 -0
- package/dist/barrel-DchA_RPN.mjs.map +1 -0
- package/dist/barrel.d.mts +2 -0
- package/dist/barrel.mjs +1 -0
- package/dist/index.d.mts +2 -0
- package/dist/index.mjs +1 -0
- package/dist/rolldown-runtime-DK3Fl9T5.mjs +1 -0
- package/dist.commonjs/address.advanced-COp7SNhZ.js +2 -0
- package/dist.commonjs/address.advanced-COp7SNhZ.js.map +1 -0
- package/dist.commonjs/advanced.d.ts +2 -3
- package/dist.commonjs/advanced.js +1 -41
- package/dist.commonjs/advancedBarrel-DRDT4GBS.d.ts +5481 -0
- package/dist.commonjs/advancedBarrel-DRDT4GBS.d.ts.map +1 -0
- package/dist.commonjs/advancedBarrel.d.ts +2 -7
- package/dist.commonjs/advancedBarrel.js +2 -22
- package/dist.commonjs/advancedBarrel.js.map +1 -0
- package/dist.commonjs/barrel-CXC2Uy5L.js +7 -0
- package/dist.commonjs/barrel-CXC2Uy5L.js.map +1 -0
- package/dist.commonjs/barrel.d.ts +2 -14
- package/dist.commonjs/barrel.js +1 -29
- package/dist.commonjs/index.d.ts +2 -3
- package/dist.commonjs/index.js +1 -41
- package/package.json +20 -23
- package/src/barrel.ts +1 -0
- package/src/ckb/epoch.ts +489 -0
- package/src/ckb/index.ts +1 -0
- package/src/ckb/script.ts +4 -3
- package/src/ckb/transaction.ts +83 -94
- package/src/client/client.ts +377 -1
- package/src/client/clientPublicMainnet.advanced.ts +23 -0
- package/src/client/clientPublicTestnet.advanced.ts +23 -0
- package/src/client/clientTypes.ts +1 -2
- package/src/client/jsonRpc/transformers.ts +2 -2
- package/src/client/knownScript.ts +1 -0
- package/src/codec/codec.ts +108 -0
- package/src/{molecule → codec}/entity.ts +17 -7
- package/src/codec/predefined.ts +145 -0
- package/src/hasher/advanced.ts +3 -1
- package/src/hasher/hasherCkb.ts +1 -1
- package/src/hasher/hasherKeecak256.ts +1 -1
- package/src/keystore/index.ts +4 -4
- package/src/molecule/barrel.ts +10 -1
- package/src/molecule/codec.ts +33 -138
- package/src/molecule/predefined.ts +63 -50
- package/src/signer/btc/index.ts +1 -0
- package/src/signer/btc/psbt.ts +98 -0
- package/src/signer/btc/signerBtc.ts +41 -1
- package/src/signer/btc/signerBtcPublicKeyReadonly.ts +15 -0
- package/src/signer/btc/verify.ts +2 -1
- package/src/signer/ckb/signerCkbPrivateKey.ts +6 -11
- package/src/signer/ckb/verifyCkbSecp256k1.ts +6 -10
- package/src/signer/doge/signerDogePrivateKey.ts +6 -3
- package/src/signer/doge/verify.ts +7 -8
- package/src/signer/nostr/signerNostrPrivateKey.ts +9 -8
- package/src/signer/nostr/verify.ts +2 -2
- package/src/utils/index.ts +20 -1
- package/tsdown.config.mts +44 -0
- package/dist/address/address.advanced.d.ts +0 -65
- package/dist/address/address.advanced.d.ts.map +0 -1
- package/dist/address/address.advanced.js +0 -147
- package/dist/address/advanced.d.ts +0 -2
- package/dist/address/advanced.d.ts.map +0 -1
- package/dist/address/advanced.js +0 -1
- package/dist/address/index.d.ts +0 -58
- package/dist/address/index.d.ts.map +0 -1
- package/dist/address/index.js +0 -78
- package/dist/advanced.d.ts +0 -3
- package/dist/advanced.d.ts.map +0 -1
- package/dist/advanced.js +0 -2
- package/dist/advancedBarrel.d.ts +0 -7
- package/dist/advancedBarrel.d.ts.map +0 -1
- package/dist/advancedBarrel.js +0 -6
- package/dist/barrel.d.ts +0 -14
- package/dist/barrel.d.ts.map +0 -1
- package/dist/barrel.js +0 -13
- package/dist/bytes/advanced.d.ts +0 -6
- package/dist/bytes/advanced.d.ts.map +0 -1
- package/dist/bytes/advanced.js +0 -1
- package/dist/bytes/index.d.ts +0 -112
- package/dist/bytes/index.d.ts.map +0 -1
- package/dist/bytes/index.js +0 -155
- package/dist/ckb/advanced.d.ts +0 -3
- package/dist/ckb/advanced.d.ts.map +0 -1
- package/dist/ckb/advanced.js +0 -2
- package/dist/ckb/hash.d.ts +0 -18
- package/dist/ckb/hash.d.ts.map +0 -1
- package/dist/ckb/hash.js +0 -19
- package/dist/ckb/index.d.ts +0 -6
- package/dist/ckb/index.d.ts.map +0 -1
- package/dist/ckb/index.js +0 -5
- package/dist/ckb/script.advanced.d.ts +0 -5
- package/dist/ckb/script.advanced.d.ts.map +0 -1
- package/dist/ckb/script.advanced.js +0 -13
- package/dist/ckb/script.d.ts +0 -156
- package/dist/ckb/script.d.ts.map +0 -1
- package/dist/ckb/script.js +0 -184
- package/dist/ckb/transaction.advanced.d.ts +0 -5
- package/dist/ckb/transaction.advanced.d.ts.map +0 -1
- package/dist/ckb/transaction.advanced.js +0 -9
- package/dist/ckb/transaction.d.ts +0 -1401
- package/dist/ckb/transaction.d.ts.map +0 -1
- package/dist/ckb/transaction.js +0 -1880
- package/dist/ckb/transactionErrors.d.ts +0 -15
- package/dist/ckb/transactionErrors.d.ts.map +0 -1
- package/dist/ckb/transactionErrors.js +0 -21
- package/dist/ckb/transactionLumos.d.ts +0 -30
- package/dist/ckb/transactionLumos.d.ts.map +0 -1
- package/dist/ckb/transactionLumos.js +0 -1
- package/dist/client/advanced.d.ts +0 -6
- package/dist/client/advanced.d.ts.map +0 -1
- package/dist/client/advanced.js +0 -5
- package/dist/client/cache/advanced.d.ts +0 -2
- package/dist/client/cache/advanced.d.ts.map +0 -1
- package/dist/client/cache/advanced.js +0 -1
- package/dist/client/cache/cache.d.ts +0 -98
- package/dist/client/cache/cache.d.ts.map +0 -1
- package/dist/client/cache/cache.js +0 -139
- package/dist/client/cache/index.d.ts +0 -3
- package/dist/client/cache/index.d.ts.map +0 -1
- package/dist/client/cache/index.js +0 -2
- package/dist/client/cache/memory.advanced.d.ts +0 -52
- package/dist/client/cache/memory.advanced.d.ts.map +0 -1
- package/dist/client/cache/memory.advanced.js +0 -149
- package/dist/client/cache/memory.d.ts +0 -53
- package/dist/client/cache/memory.d.ts.map +0 -1
- package/dist/client/cache/memory.js +0 -148
- package/dist/client/client.d.ts +0 -107
- package/dist/client/client.d.ts.map +0 -1
- package/dist/client/client.js +0 -328
- package/dist/client/clientPublicMainnet.advanced.d.ts +0 -4
- package/dist/client/clientPublicMainnet.advanced.d.ts.map +0 -1
- package/dist/client/clientPublicMainnet.advanced.js +0 -402
- package/dist/client/clientPublicMainnet.d.ts +0 -17
- package/dist/client/clientPublicMainnet.d.ts.map +0 -1
- package/dist/client/clientPublicMainnet.js +0 -40
- package/dist/client/clientPublicTestnet.advanced.d.ts +0 -4
- package/dist/client/clientPublicTestnet.advanced.d.ts.map +0 -1
- package/dist/client/clientPublicTestnet.advanced.js +0 -412
- package/dist/client/clientPublicTestnet.d.ts +0 -17
- package/dist/client/clientPublicTestnet.d.ts.map +0 -1
- package/dist/client/clientPublicTestnet.js +0 -40
- package/dist/client/clientTypes.advanced.d.ts +0 -25
- package/dist/client/clientTypes.advanced.d.ts.map +0 -1
- package/dist/client/clientTypes.advanced.js +0 -6
- package/dist/client/clientTypes.d.ts +0 -335
- package/dist/client/clientTypes.d.ts.map +0 -1
- package/dist/client/clientTypes.js +0 -232
- package/dist/client/index.d.ts +0 -8
- package/dist/client/index.d.ts.map +0 -1
- package/dist/client/index.js +0 -7
- package/dist/client/jsonRpc/advanced.d.ts +0 -3
- package/dist/client/jsonRpc/advanced.d.ts.map +0 -1
- package/dist/client/jsonRpc/advanced.js +0 -2
- package/dist/client/jsonRpc/client.d.ts +0 -160
- package/dist/client/jsonRpc/client.d.ts.map +0 -1
- package/dist/client/jsonRpc/client.js +0 -223
- package/dist/client/jsonRpc/index.d.ts +0 -2
- package/dist/client/jsonRpc/index.d.ts.map +0 -1
- package/dist/client/jsonRpc/index.js +0 -1
- package/dist/client/jsonRpc/transformers.d.ts +0 -51
- package/dist/client/jsonRpc/transformers.d.ts.map +0 -1
- package/dist/client/jsonRpc/transformers.js +0 -247
- package/dist/client/jsonRpc/types.d.ts +0 -101
- package/dist/client/jsonRpc/types.d.ts.map +0 -1
- package/dist/client/jsonRpc/types.js +0 -1
- package/dist/client/knownScript.d.ts +0 -27
- package/dist/client/knownScript.d.ts.map +0 -1
- package/dist/client/knownScript.js +0 -28
- package/dist/fixedPoint/index.d.ts +0 -55
- package/dist/fixedPoint/index.d.ts.map +0 -1
- package/dist/fixedPoint/index.js +0 -68
- package/dist/hasher/advanced.d.ts +0 -2
- package/dist/hasher/advanced.d.ts.map +0 -1
- package/dist/hasher/advanced.js +0 -1
- package/dist/hasher/hasher.d.ts +0 -35
- package/dist/hasher/hasher.d.ts.map +0 -1
- package/dist/hasher/hasher.js +0 -1
- package/dist/hasher/hasherCkb.d.ts +0 -57
- package/dist/hasher/hasherCkb.d.ts.map +0 -1
- package/dist/hasher/hasherCkb.js +0 -70
- package/dist/hasher/hasherKeecak256.d.ts +0 -41
- package/dist/hasher/hasherKeecak256.d.ts.map +0 -1
- package/dist/hasher/hasherKeecak256.js +0 -46
- package/dist/hasher/index.d.ts +0 -4
- package/dist/hasher/index.d.ts.map +0 -1
- package/dist/hasher/index.js +0 -3
- package/dist/hex/index.d.ts +0 -27
- package/dist/hex/index.d.ts.map +0 -1
- package/dist/hex/index.js +0 -17
- package/dist/index.d.ts +0 -3
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js +0 -2
- package/dist/jsonRpc/advanced.d.ts +0 -2
- package/dist/jsonRpc/advanced.d.ts.map +0 -1
- package/dist/jsonRpc/advanced.js +0 -1
- package/dist/jsonRpc/index.d.ts +0 -2
- package/dist/jsonRpc/index.d.ts.map +0 -1
- package/dist/jsonRpc/index.js +0 -1
- package/dist/jsonRpc/requestor.d.ts +0 -49
- package/dist/jsonRpc/requestor.d.ts.map +0 -1
- package/dist/jsonRpc/requestor.js +0 -109
- package/dist/jsonRpc/transports/advanced.d.ts +0 -6
- package/dist/jsonRpc/transports/advanced.d.ts.map +0 -1
- package/dist/jsonRpc/transports/advanced.js +0 -5
- package/dist/jsonRpc/transports/factory.d.ts +0 -6
- package/dist/jsonRpc/transports/factory.d.ts.map +0 -1
- package/dist/jsonRpc/transports/factory.js +0 -8
- package/dist/jsonRpc/transports/fallback.d.ts +0 -8
- package/dist/jsonRpc/transports/fallback.d.ts.map +0 -1
- package/dist/jsonRpc/transports/fallback.js +0 -22
- package/dist/jsonRpc/transports/http.d.ts +0 -8
- package/dist/jsonRpc/transports/http.d.ts.map +0 -1
- package/dist/jsonRpc/transports/http.js +0 -22
- package/dist/jsonRpc/transports/transport.d.ts +0 -18
- package/dist/jsonRpc/transports/transport.d.ts.map +0 -1
- package/dist/jsonRpc/transports/transport.js +0 -1
- package/dist/jsonRpc/transports/webSocket.d.ts +0 -11
- package/dist/jsonRpc/transports/webSocket.d.ts.map +0 -1
- package/dist/jsonRpc/transports/webSocket.js +0 -87
- package/dist/keystore/index.d.ts +0 -31
- package/dist/keystore/index.d.ts.map +0 -1
- package/dist/keystore/index.js +0 -106
- package/dist/molecule/barrel.d.ts +0 -4
- package/dist/molecule/barrel.d.ts.map +0 -1
- package/dist/molecule/codec.d.ts +0 -146
- package/dist/molecule/codec.d.ts.map +0 -1
- package/dist/molecule/codec.js +0 -516
- package/dist/molecule/entity.d.ts +0 -112
- package/dist/molecule/entity.d.ts.map +0 -1
- package/dist/molecule/entity.js +0 -142
- package/dist/molecule/index.d.ts +0 -2
- package/dist/molecule/index.d.ts.map +0 -1
- package/dist/molecule/index.js +0 -1
- package/dist/molecule/predefined.d.ts +0 -57
- package/dist/molecule/predefined.d.ts.map +0 -1
- package/dist/molecule/predefined.js +0 -83
- package/dist/num/index.d.ts +0 -148
- package/dist/num/index.d.ts.map +0 -1
- package/dist/num/index.js +0 -204
- package/dist/signer/btc/index.d.ts +0 -4
- package/dist/signer/btc/index.d.ts.map +0 -1
- package/dist/signer/btc/index.js +0 -3
- package/dist/signer/btc/signerBtc.d.ts +0 -59
- package/dist/signer/btc/signerBtc.d.ts.map +0 -1
- package/dist/signer/btc/signerBtc.js +0 -83
- package/dist/signer/btc/signerBtcPublicKeyReadonly.d.ts +0 -55
- package/dist/signer/btc/signerBtcPublicKeyReadonly.d.ts.map +0 -1
- package/dist/signer/btc/signerBtcPublicKeyReadonly.js +0 -61
- package/dist/signer/btc/verify.d.ts +0 -40
- package/dist/signer/btc/verify.d.ts.map +0 -1
- package/dist/signer/btc/verify.js +0 -69
- package/dist/signer/ckb/index.d.ts +0 -6
- package/dist/signer/ckb/index.d.ts.map +0 -1
- package/dist/signer/ckb/index.js +0 -5
- package/dist/signer/ckb/signerCkbPrivateKey.d.ts +0 -16
- package/dist/signer/ckb/signerCkbPrivateKey.d.ts.map +0 -1
- package/dist/signer/ckb/signerCkbPrivateKey.js +0 -42
- package/dist/signer/ckb/signerCkbPublicKey.d.ts +0 -27
- package/dist/signer/ckb/signerCkbPublicKey.d.ts.map +0 -1
- package/dist/signer/ckb/signerCkbPublicKey.js +0 -101
- package/dist/signer/ckb/signerCkbScriptReadonly.d.ts +0 -68
- package/dist/signer/ckb/signerCkbScriptReadonly.d.ts.map +0 -1
- package/dist/signer/ckb/signerCkbScriptReadonly.js +0 -78
- package/dist/signer/ckb/verifyCkbSecp256k1.d.ts +0 -11
- package/dist/signer/ckb/verifyCkbSecp256k1.d.ts.map +0 -1
- package/dist/signer/ckb/verifyCkbSecp256k1.js +0 -22
- package/dist/signer/ckb/verifyJoyId.d.ts +0 -6
- package/dist/signer/ckb/verifyJoyId.d.ts.map +0 -1
- package/dist/signer/ckb/verifyJoyId.js +0 -16
- package/dist/signer/doge/index.d.ts +0 -5
- package/dist/signer/doge/index.d.ts.map +0 -1
- package/dist/signer/doge/index.js +0 -4
- package/dist/signer/doge/signerDoge.d.ts +0 -52
- package/dist/signer/doge/signerDoge.d.ts.map +0 -1
- package/dist/signer/doge/signerDoge.js +0 -82
- package/dist/signer/doge/signerDogeAddressReadonly.d.ts +0 -41
- package/dist/signer/doge/signerDogeAddressReadonly.d.ts.map +0 -1
- package/dist/signer/doge/signerDogeAddressReadonly.js +0 -45
- package/dist/signer/doge/signerDogePrivateKey.d.ts +0 -52
- package/dist/signer/doge/signerDogePrivateKey.d.ts.map +0 -1
- package/dist/signer/doge/signerDogePrivateKey.js +0 -68
- package/dist/signer/doge/verify.d.ts +0 -17
- package/dist/signer/doge/verify.d.ts.map +0 -1
- package/dist/signer/doge/verify.js +0 -29
- package/dist/signer/dummy/alwaysError.d.ts +0 -12
- package/dist/signer/dummy/alwaysError.d.ts.map +0 -1
- package/dist/signer/dummy/alwaysError.js +0 -13
- package/dist/signer/dummy/dummy.d.ts +0 -15
- package/dist/signer/dummy/dummy.d.ts.map +0 -1
- package/dist/signer/dummy/dummy.js +0 -22
- package/dist/signer/dummy/index.d.ts +0 -4
- package/dist/signer/dummy/index.d.ts.map +0 -1
- package/dist/signer/dummy/index.js +0 -3
- package/dist/signer/dummy/openLink.d.ts +0 -12
- package/dist/signer/dummy/openLink.d.ts.map +0 -1
- package/dist/signer/dummy/openLink.js +0 -13
- package/dist/signer/evm/index.d.ts +0 -4
- package/dist/signer/evm/index.d.ts.map +0 -1
- package/dist/signer/evm/index.js +0 -3
- package/dist/signer/evm/signerEvm.d.ts +0 -59
- package/dist/signer/evm/signerEvm.d.ts.map +0 -1
- package/dist/signer/evm/signerEvm.js +0 -139
- package/dist/signer/evm/signerEvmAddressReadonly.d.ts +0 -47
- package/dist/signer/evm/signerEvmAddressReadonly.d.ts.map +0 -1
- package/dist/signer/evm/signerEvmAddressReadonly.js +0 -51
- package/dist/signer/evm/verify.d.ts +0 -6
- package/dist/signer/evm/verify.d.ts.map +0 -1
- package/dist/signer/evm/verify.js +0 -9
- package/dist/signer/index.d.ts +0 -8
- package/dist/signer/index.d.ts.map +0 -1
- package/dist/signer/index.js +0 -7
- package/dist/signer/nostr/index.d.ts +0 -5
- package/dist/signer/nostr/index.d.ts.map +0 -1
- package/dist/signer/nostr/index.js +0 -4
- package/dist/signer/nostr/signerNostr.d.ts +0 -72
- package/dist/signer/nostr/signerNostr.d.ts.map +0 -1
- package/dist/signer/nostr/signerNostr.js +0 -96
- package/dist/signer/nostr/signerNostrPrivateKey.d.ts +0 -14
- package/dist/signer/nostr/signerNostrPrivateKey.d.ts.map +0 -1
- package/dist/signer/nostr/signerNostrPrivateKey.js +0 -34
- package/dist/signer/nostr/signerNostrPublicKeyReadonly.d.ts +0 -15
- package/dist/signer/nostr/signerNostrPublicKeyReadonly.d.ts.map +0 -1
- package/dist/signer/nostr/signerNostrPublicKeyReadonly.js +0 -26
- package/dist/signer/nostr/verify.d.ts +0 -9
- package/dist/signer/nostr/verify.d.ts.map +0 -1
- package/dist/signer/nostr/verify.js +0 -55
- package/dist/signer/signer/index.d.ts +0 -256
- package/dist/signer/signer/index.d.ts.map +0 -1
- package/dist/signer/signer/index.js +0 -305
- package/dist/utils/index.d.ts +0 -97
- package/dist/utils/index.d.ts.map +0 -1
- package/dist/utils/index.js +0 -55
- package/dist.commonjs/address/address.advanced.d.ts +0 -65
- package/dist.commonjs/address/address.advanced.d.ts.map +0 -1
- package/dist.commonjs/address/address.advanced.js +0 -152
- package/dist.commonjs/address/advanced.d.ts +0 -2
- package/dist.commonjs/address/advanced.d.ts.map +0 -1
- package/dist.commonjs/address/advanced.js +0 -17
- package/dist.commonjs/address/index.d.ts +0 -58
- package/dist.commonjs/address/index.d.ts.map +0 -1
- package/dist.commonjs/address/index.js +0 -82
- package/dist.commonjs/advanced.d.ts.map +0 -1
- package/dist.commonjs/advancedBarrel.d.ts.map +0 -1
- package/dist.commonjs/barrel.d.ts.map +0 -1
- package/dist.commonjs/bytes/advanced.d.ts +0 -6
- package/dist.commonjs/bytes/advanced.d.ts.map +0 -1
- package/dist.commonjs/bytes/advanced.js +0 -2
- package/dist.commonjs/bytes/index.d.ts +0 -112
- package/dist.commonjs/bytes/index.d.ts.map +0 -1
- package/dist.commonjs/bytes/index.js +0 -163
- package/dist.commonjs/ckb/advanced.d.ts +0 -3
- package/dist.commonjs/ckb/advanced.d.ts.map +0 -1
- package/dist.commonjs/ckb/advanced.js +0 -18
- package/dist.commonjs/ckb/hash.d.ts +0 -18
- package/dist.commonjs/ckb/hash.d.ts.map +0 -1
- package/dist.commonjs/ckb/hash.js +0 -22
- package/dist.commonjs/ckb/index.d.ts +0 -6
- package/dist.commonjs/ckb/index.d.ts.map +0 -1
- package/dist.commonjs/ckb/index.js +0 -21
- package/dist.commonjs/ckb/script.advanced.d.ts +0 -5
- package/dist.commonjs/ckb/script.advanced.d.ts.map +0 -1
- package/dist.commonjs/ckb/script.advanced.js +0 -16
- package/dist.commonjs/ckb/script.d.ts +0 -156
- package/dist.commonjs/ckb/script.d.ts.map +0 -1
- package/dist.commonjs/ckb/script.js +0 -190
- package/dist.commonjs/ckb/transaction.advanced.d.ts +0 -5
- package/dist.commonjs/ckb/transaction.advanced.d.ts.map +0 -1
- package/dist.commonjs/ckb/transaction.advanced.js +0 -12
- package/dist.commonjs/ckb/transaction.d.ts +0 -1401
- package/dist.commonjs/ckb/transaction.d.ts.map +0 -1
- package/dist.commonjs/ckb/transaction.js +0 -1894
- package/dist.commonjs/ckb/transactionErrors.d.ts +0 -15
- package/dist.commonjs/ckb/transactionErrors.d.ts.map +0 -1
- package/dist.commonjs/ckb/transactionErrors.js +0 -26
- package/dist.commonjs/ckb/transactionLumos.d.ts +0 -30
- package/dist.commonjs/ckb/transactionLumos.d.ts.map +0 -1
- package/dist.commonjs/ckb/transactionLumos.js +0 -2
- package/dist.commonjs/client/advanced.d.ts +0 -6
- package/dist.commonjs/client/advanced.d.ts.map +0 -1
- package/dist.commonjs/client/advanced.js +0 -21
- package/dist.commonjs/client/cache/advanced.d.ts +0 -2
- package/dist.commonjs/client/cache/advanced.d.ts.map +0 -1
- package/dist.commonjs/client/cache/advanced.js +0 -17
- package/dist.commonjs/client/cache/cache.d.ts +0 -98
- package/dist.commonjs/client/cache/cache.d.ts.map +0 -1
- package/dist.commonjs/client/cache/cache.js +0 -143
- package/dist.commonjs/client/cache/index.d.ts +0 -3
- package/dist.commonjs/client/cache/index.d.ts.map +0 -1
- package/dist.commonjs/client/cache/index.js +0 -18
- package/dist.commonjs/client/cache/memory.advanced.d.ts +0 -52
- package/dist.commonjs/client/cache/memory.advanced.d.ts.map +0 -1
- package/dist.commonjs/client/cache/memory.advanced.js +0 -158
- package/dist.commonjs/client/cache/memory.d.ts +0 -53
- package/dist.commonjs/client/cache/memory.d.ts.map +0 -1
- package/dist.commonjs/client/cache/memory.js +0 -152
- package/dist.commonjs/client/client.d.ts +0 -107
- package/dist.commonjs/client/client.d.ts.map +0 -1
- package/dist.commonjs/client/client.js +0 -332
- package/dist.commonjs/client/clientPublicMainnet.advanced.d.ts +0 -4
- package/dist.commonjs/client/clientPublicMainnet.advanced.d.ts.map +0 -1
- package/dist.commonjs/client/clientPublicMainnet.advanced.js +0 -405
- package/dist.commonjs/client/clientPublicMainnet.d.ts +0 -17
- package/dist.commonjs/client/clientPublicMainnet.d.ts.map +0 -1
- package/dist.commonjs/client/clientPublicMainnet.js +0 -47
- package/dist.commonjs/client/clientPublicTestnet.advanced.d.ts +0 -4
- package/dist.commonjs/client/clientPublicTestnet.advanced.d.ts.map +0 -1
- package/dist.commonjs/client/clientPublicTestnet.advanced.js +0 -415
- package/dist.commonjs/client/clientPublicTestnet.d.ts +0 -17
- package/dist.commonjs/client/clientPublicTestnet.d.ts.map +0 -1
- package/dist.commonjs/client/clientPublicTestnet.js +0 -47
- package/dist.commonjs/client/clientTypes.advanced.d.ts +0 -25
- package/dist.commonjs/client/clientTypes.advanced.d.ts.map +0 -1
- package/dist.commonjs/client/clientTypes.advanced.js +0 -10
- package/dist.commonjs/client/clientTypes.d.ts +0 -335
- package/dist.commonjs/client/clientTypes.d.ts.map +0 -1
- package/dist.commonjs/client/clientTypes.js +0 -251
- package/dist.commonjs/client/index.d.ts +0 -8
- package/dist.commonjs/client/index.d.ts.map +0 -1
- package/dist.commonjs/client/index.js +0 -23
- package/dist.commonjs/client/jsonRpc/advanced.d.ts +0 -3
- package/dist.commonjs/client/jsonRpc/advanced.d.ts.map +0 -1
- package/dist.commonjs/client/jsonRpc/advanced.js +0 -18
- package/dist.commonjs/client/jsonRpc/client.d.ts +0 -160
- package/dist.commonjs/client/jsonRpc/client.d.ts.map +0 -1
- package/dist.commonjs/client/jsonRpc/client.js +0 -227
- package/dist.commonjs/client/jsonRpc/index.d.ts +0 -2
- package/dist.commonjs/client/jsonRpc/index.d.ts.map +0 -1
- package/dist.commonjs/client/jsonRpc/index.js +0 -17
- package/dist.commonjs/client/jsonRpc/transformers.d.ts +0 -51
- package/dist.commonjs/client/jsonRpc/transformers.d.ts.map +0 -1
- package/dist.commonjs/client/jsonRpc/transformers.js +0 -251
- package/dist.commonjs/client/jsonRpc/types.d.ts +0 -101
- package/dist.commonjs/client/jsonRpc/types.d.ts.map +0 -1
- package/dist.commonjs/client/jsonRpc/types.js +0 -2
- package/dist.commonjs/client/knownScript.d.ts +0 -27
- package/dist.commonjs/client/knownScript.d.ts.map +0 -1
- package/dist.commonjs/client/knownScript.js +0 -31
- package/dist.commonjs/fixedPoint/index.d.ts +0 -55
- package/dist.commonjs/fixedPoint/index.d.ts.map +0 -1
- package/dist.commonjs/fixedPoint/index.js +0 -73
- package/dist.commonjs/hasher/advanced.d.ts +0 -2
- package/dist.commonjs/hasher/advanced.d.ts.map +0 -1
- package/dist.commonjs/hasher/advanced.js +0 -4
- package/dist.commonjs/hasher/hasher.d.ts +0 -35
- package/dist.commonjs/hasher/hasher.d.ts.map +0 -1
- package/dist.commonjs/hasher/hasher.js +0 -2
- package/dist.commonjs/hasher/hasherCkb.d.ts +0 -57
- package/dist.commonjs/hasher/hasherCkb.d.ts.map +0 -1
- package/dist.commonjs/hasher/hasherCkb.js +0 -75
- package/dist.commonjs/hasher/hasherKeecak256.d.ts +0 -41
- package/dist.commonjs/hasher/hasherKeecak256.d.ts.map +0 -1
- package/dist.commonjs/hasher/hasherKeecak256.js +0 -50
- package/dist.commonjs/hasher/index.d.ts +0 -4
- package/dist.commonjs/hasher/index.d.ts.map +0 -1
- package/dist.commonjs/hasher/index.js +0 -19
- package/dist.commonjs/hex/index.d.ts +0 -27
- package/dist.commonjs/hex/index.d.ts.map +0 -1
- package/dist.commonjs/hex/index.js +0 -20
- package/dist.commonjs/index.d.ts.map +0 -1
- package/dist.commonjs/jsonRpc/advanced.d.ts +0 -2
- package/dist.commonjs/jsonRpc/advanced.d.ts.map +0 -1
- package/dist.commonjs/jsonRpc/advanced.js +0 -17
- package/dist.commonjs/jsonRpc/index.d.ts +0 -2
- package/dist.commonjs/jsonRpc/index.d.ts.map +0 -1
- package/dist.commonjs/jsonRpc/index.js +0 -17
- package/dist.commonjs/jsonRpc/requestor.d.ts +0 -49
- package/dist.commonjs/jsonRpc/requestor.d.ts.map +0 -1
- package/dist.commonjs/jsonRpc/requestor.js +0 -113
- package/dist.commonjs/jsonRpc/transports/advanced.d.ts +0 -6
- package/dist.commonjs/jsonRpc/transports/advanced.d.ts.map +0 -1
- package/dist.commonjs/jsonRpc/transports/advanced.js +0 -21
- package/dist.commonjs/jsonRpc/transports/factory.d.ts +0 -6
- package/dist.commonjs/jsonRpc/transports/factory.d.ts.map +0 -1
- package/dist.commonjs/jsonRpc/transports/factory.js +0 -11
- package/dist.commonjs/jsonRpc/transports/fallback.d.ts +0 -8
- package/dist.commonjs/jsonRpc/transports/fallback.d.ts.map +0 -1
- package/dist.commonjs/jsonRpc/transports/fallback.js +0 -26
- package/dist.commonjs/jsonRpc/transports/http.d.ts +0 -8
- package/dist.commonjs/jsonRpc/transports/http.d.ts.map +0 -1
- package/dist.commonjs/jsonRpc/transports/http.js +0 -26
- package/dist.commonjs/jsonRpc/transports/transport.d.ts +0 -18
- package/dist.commonjs/jsonRpc/transports/transport.d.ts.map +0 -1
- package/dist.commonjs/jsonRpc/transports/transport.js +0 -2
- package/dist.commonjs/jsonRpc/transports/webSocket.d.ts +0 -11
- package/dist.commonjs/jsonRpc/transports/webSocket.d.ts.map +0 -1
- package/dist.commonjs/jsonRpc/transports/webSocket.js +0 -94
- package/dist.commonjs/keystore/index.d.ts +0 -31
- package/dist.commonjs/keystore/index.d.ts.map +0 -1
- package/dist.commonjs/keystore/index.js +0 -110
- package/dist.commonjs/molecule/barrel.d.ts +0 -4
- package/dist.commonjs/molecule/barrel.d.ts.map +0 -1
- package/dist.commonjs/molecule/barrel.js +0 -19
- package/dist.commonjs/molecule/codec.d.ts +0 -146
- package/dist.commonjs/molecule/codec.d.ts.map +0 -1
- package/dist.commonjs/molecule/codec.js +0 -531
- package/dist.commonjs/molecule/entity.d.ts +0 -112
- package/dist.commonjs/molecule/entity.d.ts.map +0 -1
- package/dist.commonjs/molecule/entity.js +0 -147
- package/dist.commonjs/molecule/index.d.ts +0 -2
- package/dist.commonjs/molecule/index.d.ts.map +0 -1
- package/dist.commonjs/molecule/index.js +0 -37
- package/dist.commonjs/molecule/predefined.d.ts +0 -57
- package/dist.commonjs/molecule/predefined.d.ts.map +0 -1
- package/dist.commonjs/molecule/predefined.js +0 -87
- package/dist.commonjs/num/index.d.ts +0 -148
- package/dist.commonjs/num/index.d.ts.map +0 -1
- package/dist.commonjs/num/index.js +0 -216
- package/dist.commonjs/signer/btc/index.d.ts +0 -4
- package/dist.commonjs/signer/btc/index.d.ts.map +0 -1
- package/dist.commonjs/signer/btc/index.js +0 -19
- package/dist.commonjs/signer/btc/signerBtc.d.ts +0 -59
- package/dist.commonjs/signer/btc/signerBtc.d.ts.map +0 -1
- package/dist.commonjs/signer/btc/signerBtc.js +0 -87
- package/dist.commonjs/signer/btc/signerBtcPublicKeyReadonly.d.ts +0 -55
- package/dist.commonjs/signer/btc/signerBtcPublicKeyReadonly.d.ts.map +0 -1
- package/dist.commonjs/signer/btc/signerBtcPublicKeyReadonly.js +0 -65
- package/dist.commonjs/signer/btc/verify.d.ts +0 -40
- package/dist.commonjs/signer/btc/verify.d.ts.map +0 -1
- package/dist.commonjs/signer/btc/verify.js +0 -80
- package/dist.commonjs/signer/ckb/index.d.ts +0 -6
- package/dist.commonjs/signer/ckb/index.d.ts.map +0 -1
- package/dist.commonjs/signer/ckb/index.js +0 -21
- package/dist.commonjs/signer/ckb/signerCkbPrivateKey.d.ts +0 -16
- package/dist.commonjs/signer/ckb/signerCkbPrivateKey.d.ts.map +0 -1
- package/dist.commonjs/signer/ckb/signerCkbPrivateKey.js +0 -46
- package/dist.commonjs/signer/ckb/signerCkbPublicKey.d.ts +0 -27
- package/dist.commonjs/signer/ckb/signerCkbPublicKey.d.ts.map +0 -1
- package/dist.commonjs/signer/ckb/signerCkbPublicKey.js +0 -105
- package/dist.commonjs/signer/ckb/signerCkbScriptReadonly.d.ts +0 -68
- package/dist.commonjs/signer/ckb/signerCkbScriptReadonly.d.ts.map +0 -1
- package/dist.commonjs/signer/ckb/signerCkbScriptReadonly.js +0 -82
- package/dist.commonjs/signer/ckb/verifyCkbSecp256k1.d.ts +0 -11
- package/dist.commonjs/signer/ckb/verifyCkbSecp256k1.d.ts.map +0 -1
- package/dist.commonjs/signer/ckb/verifyCkbSecp256k1.js +0 -26
- package/dist.commonjs/signer/ckb/verifyJoyId.d.ts +0 -6
- package/dist.commonjs/signer/ckb/verifyJoyId.d.ts.map +0 -1
- package/dist.commonjs/signer/ckb/verifyJoyId.js +0 -19
- package/dist.commonjs/signer/doge/index.d.ts +0 -5
- package/dist.commonjs/signer/doge/index.d.ts.map +0 -1
- package/dist.commonjs/signer/doge/index.js +0 -20
- package/dist.commonjs/signer/doge/signerDoge.d.ts +0 -52
- package/dist.commonjs/signer/doge/signerDoge.d.ts.map +0 -1
- package/dist.commonjs/signer/doge/signerDoge.js +0 -89
- package/dist.commonjs/signer/doge/signerDogeAddressReadonly.d.ts +0 -41
- package/dist.commonjs/signer/doge/signerDogeAddressReadonly.d.ts.map +0 -1
- package/dist.commonjs/signer/doge/signerDogeAddressReadonly.js +0 -49
- package/dist.commonjs/signer/doge/signerDogePrivateKey.d.ts +0 -52
- package/dist.commonjs/signer/doge/signerDogePrivateKey.d.ts.map +0 -1
- package/dist.commonjs/signer/doge/signerDogePrivateKey.js +0 -72
- package/dist.commonjs/signer/doge/verify.d.ts +0 -17
- package/dist.commonjs/signer/doge/verify.d.ts.map +0 -1
- package/dist.commonjs/signer/doge/verify.js +0 -33
- package/dist.commonjs/signer/dummy/alwaysError.d.ts +0 -12
- package/dist.commonjs/signer/dummy/alwaysError.d.ts.map +0 -1
- package/dist.commonjs/signer/dummy/alwaysError.js +0 -17
- package/dist.commonjs/signer/dummy/dummy.d.ts +0 -15
- package/dist.commonjs/signer/dummy/dummy.d.ts.map +0 -1
- package/dist.commonjs/signer/dummy/dummy.js +0 -26
- package/dist.commonjs/signer/dummy/index.d.ts +0 -4
- package/dist.commonjs/signer/dummy/index.d.ts.map +0 -1
- package/dist.commonjs/signer/dummy/index.js +0 -19
- package/dist.commonjs/signer/dummy/openLink.d.ts +0 -12
- package/dist.commonjs/signer/dummy/openLink.d.ts.map +0 -1
- package/dist.commonjs/signer/dummy/openLink.js +0 -17
- package/dist.commonjs/signer/evm/index.d.ts +0 -4
- package/dist.commonjs/signer/evm/index.d.ts.map +0 -1
- package/dist.commonjs/signer/evm/index.js +0 -19
- package/dist.commonjs/signer/evm/signerEvm.d.ts +0 -59
- package/dist.commonjs/signer/evm/signerEvm.d.ts.map +0 -1
- package/dist.commonjs/signer/evm/signerEvm.js +0 -143
- package/dist.commonjs/signer/evm/signerEvmAddressReadonly.d.ts +0 -47
- package/dist.commonjs/signer/evm/signerEvmAddressReadonly.d.ts.map +0 -1
- package/dist.commonjs/signer/evm/signerEvmAddressReadonly.js +0 -55
- package/dist.commonjs/signer/evm/verify.d.ts +0 -6
- package/dist.commonjs/signer/evm/verify.d.ts.map +0 -1
- package/dist.commonjs/signer/evm/verify.js +0 -12
- package/dist.commonjs/signer/index.d.ts +0 -8
- package/dist.commonjs/signer/index.d.ts.map +0 -1
- package/dist.commonjs/signer/index.js +0 -23
- package/dist.commonjs/signer/nostr/index.d.ts +0 -5
- package/dist.commonjs/signer/nostr/index.d.ts.map +0 -1
- package/dist.commonjs/signer/nostr/index.js +0 -20
- package/dist.commonjs/signer/nostr/signerNostr.d.ts +0 -72
- package/dist.commonjs/signer/nostr/signerNostr.d.ts.map +0 -1
- package/dist.commonjs/signer/nostr/signerNostr.js +0 -100
- package/dist.commonjs/signer/nostr/signerNostrPrivateKey.d.ts +0 -14
- package/dist.commonjs/signer/nostr/signerNostrPrivateKey.d.ts.map +0 -1
- package/dist.commonjs/signer/nostr/signerNostrPrivateKey.js +0 -38
- package/dist.commonjs/signer/nostr/signerNostrPublicKeyReadonly.d.ts +0 -15
- package/dist.commonjs/signer/nostr/signerNostrPublicKeyReadonly.d.ts.map +0 -1
- package/dist.commonjs/signer/nostr/signerNostrPublicKeyReadonly.js +0 -30
- package/dist.commonjs/signer/nostr/verify.d.ts +0 -9
- package/dist.commonjs/signer/nostr/verify.d.ts.map +0 -1
- package/dist.commonjs/signer/nostr/verify.js +0 -60
- package/dist.commonjs/signer/signer/index.d.ts +0 -256
- package/dist.commonjs/signer/signer/index.d.ts.map +0 -1
- package/dist.commonjs/signer/signer/index.js +0 -311
- package/dist.commonjs/utils/index.d.ts +0 -97
- package/dist.commonjs/utils/index.d.ts.map +0 -1
- package/dist.commonjs/utils/index.js +0 -62
- /package/{dist/molecule/barrel.js → src/codec/index.ts} +0 -0
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
import { Address } from "../../address/index.js";
|
|
2
|
-
import { Transaction, TransactionLike } from "../../ckb/index.js";
|
|
3
|
-
import { HexLike } from "../../hex/index.js";
|
|
4
|
-
import { Signer, SignerSignType, SignerType } from "../signer/index.js";
|
|
5
|
-
/**
|
|
6
|
-
* An abstract class extending the Signer class for Bitcoin-like signing operations.
|
|
7
|
-
* This class provides methods to get Bitcoin account, public key, and internal address,
|
|
8
|
-
* as well as signing transactions.
|
|
9
|
-
* @public
|
|
10
|
-
*/
|
|
11
|
-
export declare abstract class SignerBtc extends Signer {
|
|
12
|
-
get type(): SignerType;
|
|
13
|
-
get signType(): SignerSignType;
|
|
14
|
-
/**
|
|
15
|
-
* Gets the Bitcoin account associated with the signer.
|
|
16
|
-
*
|
|
17
|
-
* @returns A promise that resolves to a string representing the Bitcoin account.
|
|
18
|
-
*/
|
|
19
|
-
abstract getBtcAccount(): Promise<string>;
|
|
20
|
-
/**
|
|
21
|
-
* Gets the Bitcoin public key associated with the signer.
|
|
22
|
-
*
|
|
23
|
-
* @returns A promise that resolves to a HexLike value representing the Bitcoin public key.
|
|
24
|
-
*/
|
|
25
|
-
abstract getBtcPublicKey(): Promise<HexLike>;
|
|
26
|
-
/**
|
|
27
|
-
* Gets the internal address, which is the Bitcoin account in this case.
|
|
28
|
-
*
|
|
29
|
-
* @returns A promise that resolves to a string representing the internal address.
|
|
30
|
-
*/
|
|
31
|
-
getInternalAddress(): Promise<string>;
|
|
32
|
-
/**
|
|
33
|
-
* Gets the identity, which is the Bitcoin public key in this case.
|
|
34
|
-
*
|
|
35
|
-
* @returns A promise that resolves to a string representing the identity
|
|
36
|
-
*/
|
|
37
|
-
getIdentity(): Promise<string>;
|
|
38
|
-
/**
|
|
39
|
-
* Gets an array of Address objects representing the known script addresses for the signer.
|
|
40
|
-
*
|
|
41
|
-
* @returns A promise that resolves to an array of Address objects.
|
|
42
|
-
*/
|
|
43
|
-
getAddressObjs(): Promise<Address[]>;
|
|
44
|
-
/**
|
|
45
|
-
* prepare a transaction before signing. This method is not implemented and should be overridden by subclasses.
|
|
46
|
-
*
|
|
47
|
-
* @param txLike - The transaction to prepare, represented as a TransactionLike object.
|
|
48
|
-
* @returns A promise that resolves to the prepared Transaction object.
|
|
49
|
-
*/
|
|
50
|
-
prepareTransaction(txLike: TransactionLike): Promise<Transaction>;
|
|
51
|
-
/**
|
|
52
|
-
* Signs a transaction without modifying it.
|
|
53
|
-
*
|
|
54
|
-
* @param txLike - The transaction to sign, represented as a TransactionLike object.
|
|
55
|
-
* @returns A promise that resolves to a signed Transaction object.
|
|
56
|
-
*/
|
|
57
|
-
signOnlyTransaction(txLike: TransactionLike): Promise<Transaction>;
|
|
58
|
-
}
|
|
59
|
-
//# sourceMappingURL=signerBtc.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"signerBtc.d.ts","sourceRoot":"","sources":["../../../src/signer/btc/signerBtc.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAEjD,OAAO,EAAE,WAAW,EAAE,eAAe,EAAe,MAAM,oBAAoB,CAAC;AAE/E,OAAO,EAAE,OAAO,EAAW,MAAM,oBAAoB,CAAC;AAEtD,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAGxE;;;;;GAKG;AACH,8BAAsB,SAAU,SAAQ,MAAM;IAC5C,IAAI,IAAI,IAAI,UAAU,CAErB;IAED,IAAI,QAAQ,IAAI,cAAc,CAE7B;IAED;;;;OAIG;IACH,QAAQ,CAAC,aAAa,IAAI,OAAO,CAAC,MAAM,CAAC;IAEzC;;;;OAIG;IACH,QAAQ,CAAC,eAAe,IAAI,OAAO,CAAC,OAAO,CAAC;IAE5C;;;;OAIG;IACG,kBAAkB,IAAI,OAAO,CAAC,MAAM,CAAC;IAI3C;;;;OAIG;IACG,WAAW,IAAI,OAAO,CAAC,MAAM,CAAC;IAIpC;;;;OAIG;IACG,cAAc,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IAa1C;;;;;OAKG;IACG,kBAAkB,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,WAAW,CAAC;IAQvE;;;;;OAKG;IACG,mBAAmB,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,WAAW,CAAC;CA+BzE"}
|
|
@@ -1,83 +0,0 @@
|
|
|
1
|
-
import { Address } from "../../address/index.js";
|
|
2
|
-
import { bytesConcat, bytesFrom } from "../../bytes/index.js";
|
|
3
|
-
import { Transaction, WitnessArgs } from "../../ckb/index.js";
|
|
4
|
-
import { KnownScript } from "../../client/index.js";
|
|
5
|
-
import { hexFrom } from "../../hex/index.js";
|
|
6
|
-
import { numToBytes } from "../../num/index.js";
|
|
7
|
-
import { Signer, SignerSignType, SignerType } from "../signer/index.js";
|
|
8
|
-
import { btcEcdsaPublicKeyHash } from "./verify.js";
|
|
9
|
-
/**
|
|
10
|
-
* An abstract class extending the Signer class for Bitcoin-like signing operations.
|
|
11
|
-
* This class provides methods to get Bitcoin account, public key, and internal address,
|
|
12
|
-
* as well as signing transactions.
|
|
13
|
-
* @public
|
|
14
|
-
*/
|
|
15
|
-
export class SignerBtc extends Signer {
|
|
16
|
-
get type() {
|
|
17
|
-
return SignerType.BTC;
|
|
18
|
-
}
|
|
19
|
-
get signType() {
|
|
20
|
-
return SignerSignType.BtcEcdsa;
|
|
21
|
-
}
|
|
22
|
-
/**
|
|
23
|
-
* Gets the internal address, which is the Bitcoin account in this case.
|
|
24
|
-
*
|
|
25
|
-
* @returns A promise that resolves to a string representing the internal address.
|
|
26
|
-
*/
|
|
27
|
-
async getInternalAddress() {
|
|
28
|
-
return this.getBtcAccount();
|
|
29
|
-
}
|
|
30
|
-
/**
|
|
31
|
-
* Gets the identity, which is the Bitcoin public key in this case.
|
|
32
|
-
*
|
|
33
|
-
* @returns A promise that resolves to a string representing the identity
|
|
34
|
-
*/
|
|
35
|
-
async getIdentity() {
|
|
36
|
-
return hexFrom(await this.getBtcPublicKey()).slice(2);
|
|
37
|
-
}
|
|
38
|
-
/**
|
|
39
|
-
* Gets an array of Address objects representing the known script addresses for the signer.
|
|
40
|
-
*
|
|
41
|
-
* @returns A promise that resolves to an array of Address objects.
|
|
42
|
-
*/
|
|
43
|
-
async getAddressObjs() {
|
|
44
|
-
const publicKey = await this.getBtcPublicKey();
|
|
45
|
-
const hash = btcEcdsaPublicKeyHash(publicKey);
|
|
46
|
-
return [
|
|
47
|
-
await Address.fromKnownScript(this.client, KnownScript.OmniLock, hexFrom([0x04, ...hash, 0x00])),
|
|
48
|
-
];
|
|
49
|
-
}
|
|
50
|
-
/**
|
|
51
|
-
* prepare a transaction before signing. This method is not implemented and should be overridden by subclasses.
|
|
52
|
-
*
|
|
53
|
-
* @param txLike - The transaction to prepare, represented as a TransactionLike object.
|
|
54
|
-
* @returns A promise that resolves to the prepared Transaction object.
|
|
55
|
-
*/
|
|
56
|
-
async prepareTransaction(txLike) {
|
|
57
|
-
const tx = Transaction.from(txLike);
|
|
58
|
-
const { script } = await this.getRecommendedAddressObj();
|
|
59
|
-
await tx.addCellDepsOfKnownScripts(this.client, KnownScript.OmniLock);
|
|
60
|
-
await tx.prepareSighashAllWitness(script, 85, this.client);
|
|
61
|
-
return tx;
|
|
62
|
-
}
|
|
63
|
-
/**
|
|
64
|
-
* Signs a transaction without modifying it.
|
|
65
|
-
*
|
|
66
|
-
* @param txLike - The transaction to sign, represented as a TransactionLike object.
|
|
67
|
-
* @returns A promise that resolves to a signed Transaction object.
|
|
68
|
-
*/
|
|
69
|
-
async signOnlyTransaction(txLike) {
|
|
70
|
-
const tx = Transaction.from(txLike);
|
|
71
|
-
const { script } = await this.getRecommendedAddressObj();
|
|
72
|
-
const info = await tx.getSignHashInfo(script, this.client);
|
|
73
|
-
if (!info) {
|
|
74
|
-
return tx;
|
|
75
|
-
}
|
|
76
|
-
const signature = bytesFrom(await this.signMessageRaw(`CKB (Bitcoin Layer) transaction: ${info.message}`), "base64");
|
|
77
|
-
signature[0] = 31 + ((signature[0] - 27) % 4);
|
|
78
|
-
const witness = WitnessArgs.fromBytes(tx.witnesses[info.position]);
|
|
79
|
-
witness.lock = hexFrom(bytesConcat(numToBytes(5 * 4 + signature.length, 4), numToBytes(4 * 4, 4), numToBytes(5 * 4 + signature.length, 4), numToBytes(5 * 4 + signature.length, 4), numToBytes(signature.length, 4), signature));
|
|
80
|
-
tx.setWitnessArgsAt(info.position, witness);
|
|
81
|
-
return tx;
|
|
82
|
-
}
|
|
83
|
-
}
|
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
import { Client } from "../../client/index.js";
|
|
2
|
-
import { Hex, HexLike } from "../../hex/index.js";
|
|
3
|
-
import { SignerBtc } from "./signerBtc.js";
|
|
4
|
-
/**
|
|
5
|
-
* A class extending SignerBtc that provides read-only access to a Bitcoin public key and account.
|
|
6
|
-
* This class does not support signing operations.
|
|
7
|
-
* @public
|
|
8
|
-
*/
|
|
9
|
-
export declare class SignerBtcPublicKeyReadonly extends SignerBtc {
|
|
10
|
-
private readonly account;
|
|
11
|
-
private readonly publicKey;
|
|
12
|
-
/**
|
|
13
|
-
* Creates an instance of SignerBtcPublicKeyReadonly.
|
|
14
|
-
*
|
|
15
|
-
* @param client - The client instance used for communication.
|
|
16
|
-
* @param account - The Bitcoin account associated with the signer.
|
|
17
|
-
* @param publicKey - The public key associated with the signer.
|
|
18
|
-
*/
|
|
19
|
-
constructor(client: Client, account: string, publicKey: HexLike);
|
|
20
|
-
/**
|
|
21
|
-
* Connects to the client. This implementation does nothing as the class is read-only.
|
|
22
|
-
*
|
|
23
|
-
* @returns A promise that resolves when the connection is complete.
|
|
24
|
-
*/
|
|
25
|
-
connect(): Promise<void>;
|
|
26
|
-
/**
|
|
27
|
-
* Check if the signer is connected.
|
|
28
|
-
*
|
|
29
|
-
* @returns A promise that resolves the connection status.
|
|
30
|
-
*/
|
|
31
|
-
isConnected(): Promise<boolean>;
|
|
32
|
-
/**
|
|
33
|
-
* Gets the Bitcoin account associated with the signer.
|
|
34
|
-
*
|
|
35
|
-
* @returns A promise that resolves to a string representing the Bitcoin account.
|
|
36
|
-
*
|
|
37
|
-
* @example
|
|
38
|
-
* ```typescript
|
|
39
|
-
* const account = await signer.getBtcAccount(); // Outputs the Bitcoin account
|
|
40
|
-
* ```
|
|
41
|
-
*/
|
|
42
|
-
getBtcAccount(): Promise<string>;
|
|
43
|
-
/**
|
|
44
|
-
* Gets the Bitcoin public key associated with the signer.
|
|
45
|
-
*
|
|
46
|
-
* @returns A promise that resolves to a Hex string representing the Bitcoin public key.
|
|
47
|
-
*
|
|
48
|
-
* @example
|
|
49
|
-
* ```typescript
|
|
50
|
-
* const publicKey = await signer.getBtcPublicKey(); // Outputs the Bitcoin public key
|
|
51
|
-
* ```
|
|
52
|
-
*/
|
|
53
|
-
getBtcPublicKey(): Promise<Hex>;
|
|
54
|
-
}
|
|
55
|
-
//# sourceMappingURL=signerBtcPublicKeyReadonly.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"signerBtcPublicKeyReadonly.d.ts","sourceRoot":"","sources":["../../../src/signer/btc/signerBtcPublicKeyReadonly.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC/C,OAAO,EAAE,GAAG,EAAE,OAAO,EAAW,MAAM,oBAAoB,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C;;;;GAIG;AACH,qBAAa,0BAA2B,SAAQ,SAAS;IAYrD,OAAO,CAAC,QAAQ,CAAC,OAAO;IAX1B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAM;IAEhC;;;;;;OAMG;gBAED,MAAM,EAAE,MAAM,EACG,OAAO,EAAE,MAAM,EAChC,SAAS,EAAE,OAAO;IAOpB;;;;OAIG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAE9B;;;;OAIG;IACG,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAIrC;;;;;;;;;OASG;IACG,aAAa,IAAI,OAAO,CAAC,MAAM,CAAC;IAItC;;;;;;;;;OASG;IACG,eAAe,IAAI,OAAO,CAAC,GAAG,CAAC;CAGtC"}
|
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
import { hexFrom } from "../../hex/index.js";
|
|
2
|
-
import { SignerBtc } from "./signerBtc.js";
|
|
3
|
-
/**
|
|
4
|
-
* A class extending SignerBtc that provides read-only access to a Bitcoin public key and account.
|
|
5
|
-
* This class does not support signing operations.
|
|
6
|
-
* @public
|
|
7
|
-
*/
|
|
8
|
-
export class SignerBtcPublicKeyReadonly extends SignerBtc {
|
|
9
|
-
/**
|
|
10
|
-
* Creates an instance of SignerBtcPublicKeyReadonly.
|
|
11
|
-
*
|
|
12
|
-
* @param client - The client instance used for communication.
|
|
13
|
-
* @param account - The Bitcoin account associated with the signer.
|
|
14
|
-
* @param publicKey - The public key associated with the signer.
|
|
15
|
-
*/
|
|
16
|
-
constructor(client, account, publicKey) {
|
|
17
|
-
super(client);
|
|
18
|
-
this.account = account;
|
|
19
|
-
this.publicKey = hexFrom(publicKey);
|
|
20
|
-
}
|
|
21
|
-
/**
|
|
22
|
-
* Connects to the client. This implementation does nothing as the class is read-only.
|
|
23
|
-
*
|
|
24
|
-
* @returns A promise that resolves when the connection is complete.
|
|
25
|
-
*/
|
|
26
|
-
async connect() { }
|
|
27
|
-
/**
|
|
28
|
-
* Check if the signer is connected.
|
|
29
|
-
*
|
|
30
|
-
* @returns A promise that resolves the connection status.
|
|
31
|
-
*/
|
|
32
|
-
async isConnected() {
|
|
33
|
-
return true;
|
|
34
|
-
}
|
|
35
|
-
/**
|
|
36
|
-
* Gets the Bitcoin account associated with the signer.
|
|
37
|
-
*
|
|
38
|
-
* @returns A promise that resolves to a string representing the Bitcoin account.
|
|
39
|
-
*
|
|
40
|
-
* @example
|
|
41
|
-
* ```typescript
|
|
42
|
-
* const account = await signer.getBtcAccount(); // Outputs the Bitcoin account
|
|
43
|
-
* ```
|
|
44
|
-
*/
|
|
45
|
-
async getBtcAccount() {
|
|
46
|
-
return this.account;
|
|
47
|
-
}
|
|
48
|
-
/**
|
|
49
|
-
* Gets the Bitcoin public key associated with the signer.
|
|
50
|
-
*
|
|
51
|
-
* @returns A promise that resolves to a Hex string representing the Bitcoin public key.
|
|
52
|
-
*
|
|
53
|
-
* @example
|
|
54
|
-
* ```typescript
|
|
55
|
-
* const publicKey = await signer.getBtcPublicKey(); // Outputs the Bitcoin public key
|
|
56
|
-
* ```
|
|
57
|
-
*/
|
|
58
|
-
async getBtcPublicKey() {
|
|
59
|
-
return this.publicKey;
|
|
60
|
-
}
|
|
61
|
-
}
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
import { Bytes, BytesLike } from "../../bytes/index.js";
|
|
2
|
-
import { Hex } from "../../hex/index.js";
|
|
3
|
-
import { NumLike } from "../../num/index.js";
|
|
4
|
-
/**
|
|
5
|
-
* Encodes a number into a variable-length byte array according to the Bitcoin protocol.
|
|
6
|
-
* This format is used for encoding lengths of data, such as script lengths.
|
|
7
|
-
*
|
|
8
|
-
* @param len - The number to encode. Can be a NumLike.
|
|
9
|
-
* @returns The encoded length as a Bytes.
|
|
10
|
-
* @public
|
|
11
|
-
*/
|
|
12
|
-
export declare function btcVarLengthBytesFrom(len: NumLike): Bytes;
|
|
13
|
-
/**
|
|
14
|
-
* Computes the message hash for Bitcoin ECDSA signatures.
|
|
15
|
-
* This function follows the Bitcoin message signing standard, which involves
|
|
16
|
-
* prefixing the message with a magic string and its length, then double SHA256 hashing the result.
|
|
17
|
-
*
|
|
18
|
-
* @param message - The message to be hashed. Can be a string or BytesLike.
|
|
19
|
-
* @param messagePrefix - Optional. A custom prefix to use instead of the default "\u0018Bitcoin Signed Message:\n".
|
|
20
|
-
* @returns The Bitcoin hash of the prefixed message as Bytes.
|
|
21
|
-
* @public
|
|
22
|
-
*/
|
|
23
|
-
export declare function messageHashBtcEcdsa(message: string | BytesLike, messagePrefix?: string | BytesLike): Bytes;
|
|
24
|
-
/**
|
|
25
|
-
* @public
|
|
26
|
-
*/
|
|
27
|
-
export declare function btcEcdsaPublicKeyHash(publicKey: BytesLike): Bytes;
|
|
28
|
-
/**
|
|
29
|
-
* @public
|
|
30
|
-
*/
|
|
31
|
-
export declare function btcP2pkhAddressFromPublicKey(publicKey: BytesLike, network: number): string;
|
|
32
|
-
/**
|
|
33
|
-
* @public
|
|
34
|
-
*/
|
|
35
|
-
export declare function btcPublicKeyFromP2pkhAddress(address: string): Hex;
|
|
36
|
-
/**
|
|
37
|
-
* @public
|
|
38
|
-
*/
|
|
39
|
-
export declare function verifyMessageBtcEcdsa(message: string | BytesLike, signature: string, publicKey: string): boolean;
|
|
40
|
-
//# sourceMappingURL=verify.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"verify.d.ts","sourceRoot":"","sources":["../../../src/signer/btc/verify.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,EAA0B,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAChF,OAAO,EAAE,GAAG,EAAW,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAyB,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAEpE;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,OAAO,GAAG,KAAK,CAUzD;AAED;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,MAAM,GAAG,SAAS,EAC3B,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,GACjC,KAAK,CAcP;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,SAAS,GAAG,KAAK,CAEjE;AAED;;GAEG;AACH,wBAAgB,4BAA4B,CAC1C,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,MAAM,GACd,MAAM,CAIR;AAED;;GAEG;AACH,wBAAgB,4BAA4B,CAAC,OAAO,EAAE,MAAM,GAAG,GAAG,CAEjE;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,MAAM,GAAG,SAAS,EAC3B,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,GAChB,OAAO,CAWT"}
|
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
import { secp256k1 } from "@noble/curves/secp256k1";
|
|
2
|
-
import { ripemd160 } from "@noble/hashes/legacy.js";
|
|
3
|
-
import { sha256 } from "@noble/hashes/sha2.js";
|
|
4
|
-
import bs58check from "bs58check";
|
|
5
|
-
import { bytesConcat, bytesFrom } from "../../bytes/index.js";
|
|
6
|
-
import { hexFrom } from "../../hex/index.js";
|
|
7
|
-
import { numFrom, numLeToBytes } from "../../num/index.js";
|
|
8
|
-
/**
|
|
9
|
-
* Encodes a number into a variable-length byte array according to the Bitcoin protocol.
|
|
10
|
-
* This format is used for encoding lengths of data, such as script lengths.
|
|
11
|
-
*
|
|
12
|
-
* @param len - The number to encode. Can be a NumLike.
|
|
13
|
-
* @returns The encoded length as a Bytes.
|
|
14
|
-
* @public
|
|
15
|
-
*/
|
|
16
|
-
export function btcVarLengthBytesFrom(len) {
|
|
17
|
-
const num = numFrom(len);
|
|
18
|
-
return num < 0xfd
|
|
19
|
-
? numLeToBytes(num, 1)
|
|
20
|
-
: num <= 0xffff
|
|
21
|
-
? bytesConcat([0xfd], numLeToBytes(num, 2))
|
|
22
|
-
: num <= 0xffffffff
|
|
23
|
-
? bytesConcat([0xfe], numLeToBytes(num, 4))
|
|
24
|
-
: bytesConcat([0xff], numLeToBytes(num, 8));
|
|
25
|
-
}
|
|
26
|
-
/**
|
|
27
|
-
* Computes the message hash for Bitcoin ECDSA signatures.
|
|
28
|
-
* This function follows the Bitcoin message signing standard, which involves
|
|
29
|
-
* prefixing the message with a magic string and its length, then double SHA256 hashing the result.
|
|
30
|
-
*
|
|
31
|
-
* @param message - The message to be hashed. Can be a string or BytesLike.
|
|
32
|
-
* @param messagePrefix - Optional. A custom prefix to use instead of the default "\u0018Bitcoin Signed Message:\n".
|
|
33
|
-
* @returns The Bitcoin hash of the prefixed message as Bytes.
|
|
34
|
-
* @public
|
|
35
|
-
*/
|
|
36
|
-
export function messageHashBtcEcdsa(message, messagePrefix) {
|
|
37
|
-
const prefix = messagePrefix ?? "\u0018Bitcoin Signed Message:\n";
|
|
38
|
-
const rawPrefix = typeof prefix === "string" ? bytesFrom(prefix, "utf8") : bytesFrom(prefix);
|
|
39
|
-
const rawMsg = typeof message === "string"
|
|
40
|
-
? bytesFrom(message, "utf8")
|
|
41
|
-
: bytesFrom(message);
|
|
42
|
-
return sha256(sha256(bytesConcat(rawPrefix, btcVarLengthBytesFrom(rawMsg.length), rawMsg)));
|
|
43
|
-
}
|
|
44
|
-
/**
|
|
45
|
-
* @public
|
|
46
|
-
*/
|
|
47
|
-
export function btcEcdsaPublicKeyHash(publicKey) {
|
|
48
|
-
return ripemd160(sha256(bytesFrom(publicKey)));
|
|
49
|
-
}
|
|
50
|
-
/**
|
|
51
|
-
* @public
|
|
52
|
-
*/
|
|
53
|
-
export function btcP2pkhAddressFromPublicKey(publicKey, network) {
|
|
54
|
-
return bs58check.encode(bytesConcat([network], btcEcdsaPublicKeyHash(publicKey)));
|
|
55
|
-
}
|
|
56
|
-
/**
|
|
57
|
-
* @public
|
|
58
|
-
*/
|
|
59
|
-
export function btcPublicKeyFromP2pkhAddress(address) {
|
|
60
|
-
return hexFrom(bs58check.decode(address).slice(1));
|
|
61
|
-
}
|
|
62
|
-
/**
|
|
63
|
-
* @public
|
|
64
|
-
*/
|
|
65
|
-
export function verifyMessageBtcEcdsa(message, signature, publicKey) {
|
|
66
|
-
const challenge = typeof message === "string" ? message : hexFrom(message).slice(2);
|
|
67
|
-
const rawSign = bytesFrom(signature, "base64").slice(1);
|
|
68
|
-
return secp256k1.verify(bytesFrom(rawSign), messageHashBtcEcdsa(challenge), bytesFrom(publicKey));
|
|
69
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/signer/ckb/index.ts"],"names":[],"mappings":"AAAA,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AACxC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,yBAAyB,CAAC;AACxC,cAAc,kBAAkB,CAAC"}
|
package/dist/signer/ckb/index.js
DELETED
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { BytesLike } from "../../bytes/index.js";
|
|
2
|
-
import { Transaction, TransactionLike } from "../../ckb/index.js";
|
|
3
|
-
import { Client } from "../../client/index.js";
|
|
4
|
-
import { Hex, HexLike } from "../../hex/index.js";
|
|
5
|
-
import { SignerCkbPublicKey } from "./signerCkbPublicKey.js";
|
|
6
|
-
/**
|
|
7
|
-
* @public
|
|
8
|
-
*/
|
|
9
|
-
export declare class SignerCkbPrivateKey extends SignerCkbPublicKey {
|
|
10
|
-
readonly privateKey: Hex;
|
|
11
|
-
constructor(client: Client, privateKey: HexLike);
|
|
12
|
-
_signMessage(message: HexLike): Promise<Hex>;
|
|
13
|
-
signMessageRaw(message: string | BytesLike): Promise<Hex>;
|
|
14
|
-
signOnlyTransaction(txLike: TransactionLike): Promise<Transaction>;
|
|
15
|
-
}
|
|
16
|
-
//# sourceMappingURL=signerCkbPrivateKey.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"signerCkbPrivateKey.d.ts","sourceRoot":"","sources":["../../../src/signer/ckb/signerCkbPrivateKey.ts"],"names":[],"mappings":"AACA,OAAO,EAA0B,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACzE,OAAO,EAAE,WAAW,EAAE,eAAe,EAAe,MAAM,oBAAoB,CAAC;AAC/E,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC/C,OAAO,EAAE,GAAG,EAAW,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAE3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAG7D;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,kBAAkB;IACzD,SAAgB,UAAU,EAAE,GAAG,CAAC;gBAEpB,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO;IAUzC,YAAY,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC;IAgB5C,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC;IAIzD,mBAAmB,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,WAAW,CAAC;CAmBzE"}
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
import { secp256k1 } from "@noble/curves/secp256k1";
|
|
2
|
-
import { bytesConcat, bytesFrom } from "../../bytes/index.js";
|
|
3
|
-
import { Transaction, WitnessArgs } from "../../ckb/index.js";
|
|
4
|
-
import { hexFrom } from "../../hex/index.js";
|
|
5
|
-
import { numBeToBytes } from "../../num/index.js";
|
|
6
|
-
import { SignerCkbPublicKey } from "./signerCkbPublicKey.js";
|
|
7
|
-
import { messageHashCkbSecp256k1 } from "./verifyCkbSecp256k1.js";
|
|
8
|
-
/**
|
|
9
|
-
* @public
|
|
10
|
-
*/
|
|
11
|
-
export class SignerCkbPrivateKey extends SignerCkbPublicKey {
|
|
12
|
-
constructor(client, privateKey) {
|
|
13
|
-
const pk = hexFrom(privateKey);
|
|
14
|
-
if (bytesFrom(pk).length !== 32) {
|
|
15
|
-
throw new Error("Private key must be 32 bytes!");
|
|
16
|
-
}
|
|
17
|
-
super(client, secp256k1.getPublicKey(bytesFrom(pk), true));
|
|
18
|
-
this.privateKey = pk;
|
|
19
|
-
}
|
|
20
|
-
async _signMessage(message) {
|
|
21
|
-
const signature = secp256k1.sign(bytesFrom(message), bytesFrom(this.privateKey));
|
|
22
|
-
const { r, s, recovery } = signature;
|
|
23
|
-
return hexFrom(bytesConcat(numBeToBytes(r, 32), numBeToBytes(s, 32), numBeToBytes(recovery, 1)));
|
|
24
|
-
}
|
|
25
|
-
async signMessageRaw(message) {
|
|
26
|
-
return this._signMessage(messageHashCkbSecp256k1(message));
|
|
27
|
-
}
|
|
28
|
-
async signOnlyTransaction(txLike) {
|
|
29
|
-
const tx = Transaction.from(txLike);
|
|
30
|
-
for (const { script } of await this.getRelatedScripts(tx)) {
|
|
31
|
-
const info = await tx.getSignHashInfo(script, this.client);
|
|
32
|
-
if (!info) {
|
|
33
|
-
return tx;
|
|
34
|
-
}
|
|
35
|
-
const signature = await this._signMessage(info.message);
|
|
36
|
-
const witness = tx.getWitnessArgsAt(info.position) ?? WitnessArgs.from({});
|
|
37
|
-
witness.lock = signature;
|
|
38
|
-
tx.setWitnessArgsAt(info.position, witness);
|
|
39
|
-
}
|
|
40
|
-
return tx;
|
|
41
|
-
}
|
|
42
|
-
}
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import { Address } from "../../address/index.js";
|
|
2
|
-
import { Script, Transaction, TransactionLike } from "../../ckb/index.js";
|
|
3
|
-
import { CellDepInfo, Client } from "../../client/index.js";
|
|
4
|
-
import { Hex, HexLike } from "../../hex/index.js";
|
|
5
|
-
import { Signer, SignerSignType, SignerType } from "../signer/index.js";
|
|
6
|
-
/**
|
|
7
|
-
* @public
|
|
8
|
-
*/
|
|
9
|
-
export declare class SignerCkbPublicKey extends Signer {
|
|
10
|
-
get type(): SignerType;
|
|
11
|
-
get signType(): SignerSignType;
|
|
12
|
-
readonly publicKey: Hex;
|
|
13
|
-
constructor(client: Client, publicKey: HexLike);
|
|
14
|
-
connect(): Promise<void>;
|
|
15
|
-
isConnected(): Promise<boolean>;
|
|
16
|
-
getInternalAddress(): Promise<string>;
|
|
17
|
-
getIdentity(): Promise<string>;
|
|
18
|
-
getAddressObjSecp256k1(): Promise<Address>;
|
|
19
|
-
getRecommendedAddressObj(_preference?: unknown): Promise<Address>;
|
|
20
|
-
getAddressObjs(): Promise<Address[]>;
|
|
21
|
-
getRelatedScripts(txLike: TransactionLike): Promise<{
|
|
22
|
-
script: Script;
|
|
23
|
-
cellDeps: CellDepInfo[];
|
|
24
|
-
}[]>;
|
|
25
|
-
prepareTransaction(txLike: TransactionLike): Promise<Transaction>;
|
|
26
|
-
}
|
|
27
|
-
//# sourceMappingURL=signerCkbPublicKey.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"signerCkbPublicKey.d.ts","sourceRoot":"","sources":["../../../src/signer/ckb/signerCkbPublicKey.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAEjD,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAC1E,OAAO,EAAE,WAAW,EAAE,MAAM,EAAe,MAAM,uBAAuB,CAAC;AAEzE,OAAO,EAAE,GAAG,EAAE,OAAO,EAAW,MAAM,oBAAoB,CAAC;AAC3D,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAExE;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,MAAM;IAC5C,IAAI,IAAI,IAAI,UAAU,CAErB;IAED,IAAI,QAAQ,IAAI,cAAc,CAE7B;IAED,SAAgB,SAAS,EAAE,GAAG,CAAC;gBAEnB,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO;IASxC,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAExB,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAI/B,kBAAkB,IAAI,OAAO,CAAC,MAAM,CAAC;IAIrC,WAAW,IAAI,OAAO,CAAC,MAAM,CAAC;IAI9B,sBAAsB,IAAI,OAAO,CAAC,OAAO,CAAC;IAQ1C,wBAAwB,CAAC,WAAW,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAIjE,cAAc,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IAmCpC,iBAAiB,CACrB,MAAM,EAAE,eAAe,GACtB,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,WAAW,EAAE,CAAA;KAAE,EAAE,CAAC;IA2CnD,kBAAkB,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,WAAW,CAAC;CAWxE"}
|
|
@@ -1,101 +0,0 @@
|
|
|
1
|
-
import { Address } from "../../address/index.js";
|
|
2
|
-
import { bytesFrom } from "../../bytes/index.js";
|
|
3
|
-
import { Script, Transaction } from "../../ckb/index.js";
|
|
4
|
-
import { KnownScript } from "../../client/index.js";
|
|
5
|
-
import { hashCkb } from "../../hasher/index.js";
|
|
6
|
-
import { hexFrom } from "../../hex/index.js";
|
|
7
|
-
import { Signer, SignerSignType, SignerType } from "../signer/index.js";
|
|
8
|
-
/**
|
|
9
|
-
* @public
|
|
10
|
-
*/
|
|
11
|
-
export class SignerCkbPublicKey extends Signer {
|
|
12
|
-
get type() {
|
|
13
|
-
return SignerType.CKB;
|
|
14
|
-
}
|
|
15
|
-
get signType() {
|
|
16
|
-
return SignerSignType.CkbSecp256k1;
|
|
17
|
-
}
|
|
18
|
-
constructor(client, publicKey) {
|
|
19
|
-
super(client);
|
|
20
|
-
this.publicKey = hexFrom(publicKey);
|
|
21
|
-
if (bytesFrom(this.publicKey).length !== 33) {
|
|
22
|
-
throw new Error("Public key must be 33 bytes!");
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
async connect() { }
|
|
26
|
-
async isConnected() {
|
|
27
|
-
return true;
|
|
28
|
-
}
|
|
29
|
-
async getInternalAddress() {
|
|
30
|
-
return this.getRecommendedAddress();
|
|
31
|
-
}
|
|
32
|
-
async getIdentity() {
|
|
33
|
-
return this.publicKey;
|
|
34
|
-
}
|
|
35
|
-
async getAddressObjSecp256k1() {
|
|
36
|
-
return Address.fromKnownScript(this.client, KnownScript.Secp256k1Blake160, bytesFrom(hashCkb(this.publicKey)).slice(0, 20));
|
|
37
|
-
}
|
|
38
|
-
async getRecommendedAddressObj(_preference) {
|
|
39
|
-
return this.getAddressObjSecp256k1();
|
|
40
|
-
}
|
|
41
|
-
async getAddressObjs() {
|
|
42
|
-
const secp256k1 = await this.getAddressObjSecp256k1();
|
|
43
|
-
const addresses = [];
|
|
44
|
-
let count = 0;
|
|
45
|
-
for await (const cell of this.client.findCells({
|
|
46
|
-
script: await Script.fromKnownScript(this.client, KnownScript.AnyoneCanPay, secp256k1.script.args),
|
|
47
|
-
scriptType: "lock",
|
|
48
|
-
scriptSearchMode: "prefix",
|
|
49
|
-
withData: false,
|
|
50
|
-
})) {
|
|
51
|
-
if (count >= 10) {
|
|
52
|
-
break;
|
|
53
|
-
}
|
|
54
|
-
count += 1;
|
|
55
|
-
if (addresses.some(({ script }) => script.eq(cell.cellOutput.lock))) {
|
|
56
|
-
continue;
|
|
57
|
-
}
|
|
58
|
-
addresses.push(Address.from({
|
|
59
|
-
prefix: this.client.addressPrefix,
|
|
60
|
-
script: cell.cellOutput.lock,
|
|
61
|
-
}));
|
|
62
|
-
}
|
|
63
|
-
return [secp256k1, ...addresses];
|
|
64
|
-
}
|
|
65
|
-
async getRelatedScripts(txLike) {
|
|
66
|
-
const tx = Transaction.from(txLike);
|
|
67
|
-
const secp256k1 = await this.getAddressObjSecp256k1();
|
|
68
|
-
const acp = await Script.fromKnownScript(this.client, KnownScript.AnyoneCanPay, secp256k1.script.args);
|
|
69
|
-
const scripts = [];
|
|
70
|
-
for (const input of tx.inputs) {
|
|
71
|
-
const { cellOutput: { lock }, } = await input.getCell(this.client);
|
|
72
|
-
if (scripts.some(({ script }) => script.eq(lock))) {
|
|
73
|
-
continue;
|
|
74
|
-
}
|
|
75
|
-
if (lock.eq(secp256k1.script)) {
|
|
76
|
-
scripts.push({
|
|
77
|
-
script: lock,
|
|
78
|
-
cellDeps: (await this.client.getKnownScript(KnownScript.Secp256k1Blake160)).cellDeps,
|
|
79
|
-
});
|
|
80
|
-
}
|
|
81
|
-
else if (lock.codeHash === acp.codeHash &&
|
|
82
|
-
lock.hashType === acp.hashType &&
|
|
83
|
-
lock.args.startsWith(acp.args)) {
|
|
84
|
-
scripts.push({
|
|
85
|
-
script: lock,
|
|
86
|
-
cellDeps: (await this.client.getKnownScript(KnownScript.AnyoneCanPay))
|
|
87
|
-
.cellDeps,
|
|
88
|
-
});
|
|
89
|
-
}
|
|
90
|
-
}
|
|
91
|
-
return scripts;
|
|
92
|
-
}
|
|
93
|
-
async prepareTransaction(txLike) {
|
|
94
|
-
const tx = Transaction.from(txLike);
|
|
95
|
-
await Promise.all((await this.getRelatedScripts(tx)).map(async ({ script, cellDeps }) => {
|
|
96
|
-
await tx.prepareSighashAllWitness(script, 65, this.client);
|
|
97
|
-
await tx.addCellDepInfos(this.client, cellDeps);
|
|
98
|
-
}));
|
|
99
|
-
return tx;
|
|
100
|
-
}
|
|
101
|
-
}
|
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
import { Address } from "../../address/index.js";
|
|
2
|
-
import { Script, ScriptLike } from "../../ckb/index.js";
|
|
3
|
-
import { Client } from "../../client/index.js";
|
|
4
|
-
import { Signer, SignerSignType, SignerType } from "../signer/index.js";
|
|
5
|
-
/**
|
|
6
|
-
* A read-only signer for a CKB script. It can be used to get addresses,
|
|
7
|
-
* but not to sign transactions. This is useful when you want to watch an address
|
|
8
|
-
* without having the private key.
|
|
9
|
-
*
|
|
10
|
-
* @public
|
|
11
|
-
*/
|
|
12
|
-
export declare class SignerCkbScriptReadonly extends Signer {
|
|
13
|
-
/**
|
|
14
|
-
* The type of the signer.
|
|
15
|
-
*/
|
|
16
|
-
get type(): SignerType;
|
|
17
|
-
/**
|
|
18
|
-
* The sign type of the signer.
|
|
19
|
-
* As this is a read-only signer, the sign type is {@link SignerSignType.Unknown}.
|
|
20
|
-
*/
|
|
21
|
-
get signType(): SignerSignType;
|
|
22
|
-
/**
|
|
23
|
-
* The scripts associated with the signer.
|
|
24
|
-
*/
|
|
25
|
-
readonly scripts: Script[];
|
|
26
|
-
/**
|
|
27
|
-
* Creates an instance of SignerCkbScriptReadonly.
|
|
28
|
-
*
|
|
29
|
-
* @param client - The client instance used for communication.
|
|
30
|
-
* @param scripts - The scripts associated with the signer. Can be a single script, an array of scripts, or multiple script arguments.
|
|
31
|
-
*/
|
|
32
|
-
constructor(client: Client, ...scripts: (ScriptLike | ScriptLike[])[]);
|
|
33
|
-
/**
|
|
34
|
-
* Connects to the client. This implementation does nothing as the class is read-only.
|
|
35
|
-
*
|
|
36
|
-
* @returns A promise that resolves when the connection is complete.
|
|
37
|
-
*/
|
|
38
|
-
connect(): Promise<void>;
|
|
39
|
-
/**
|
|
40
|
-
* Check if the signer is connected.
|
|
41
|
-
*
|
|
42
|
-
* @returns A promise that resolves the connection status.
|
|
43
|
-
*/
|
|
44
|
-
isConnected(): Promise<boolean>;
|
|
45
|
-
/**
|
|
46
|
-
* Gets the internal address for the script.
|
|
47
|
-
*
|
|
48
|
-
* @returns A promise that resolves to a string representing the internal address.
|
|
49
|
-
*
|
|
50
|
-
* @example
|
|
51
|
-
* ```typescript
|
|
52
|
-
* const internalAddress = await signer.getInternalAddress(); // Outputs the internal address
|
|
53
|
-
* ```
|
|
54
|
-
*/
|
|
55
|
-
getInternalAddress(): Promise<string>;
|
|
56
|
-
/**
|
|
57
|
-
* Gets an array of Address objects representing the script address.
|
|
58
|
-
*
|
|
59
|
-
* @returns A promise that resolves to an array of Address objects.
|
|
60
|
-
*
|
|
61
|
-
* @example
|
|
62
|
-
* ```typescript
|
|
63
|
-
* const addressObjs = await signer.getAddressObjs(); // Outputs the array of Address objects
|
|
64
|
-
* ```
|
|
65
|
-
*/
|
|
66
|
-
getAddressObjs(): Promise<Address[]>;
|
|
67
|
-
}
|
|
68
|
-
//# sourceMappingURL=signerCkbScriptReadonly.d.ts.map
|