@ckb-ccc/core 1.12.4 → 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 +51 -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 +24 -1
- 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
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
2
|
+
|
|
3
|
+
import { Bytes, bytesFrom, BytesLike } from "../bytes/index.js";
|
|
4
|
+
|
|
5
|
+
export type CodecLike<Encodable, Decoded = Encodable> = {
|
|
6
|
+
readonly encode: (encodable: Encodable) => Bytes;
|
|
7
|
+
readonly decode: (
|
|
8
|
+
decodable: BytesLike,
|
|
9
|
+
config?: { isExtraFieldIgnored?: boolean },
|
|
10
|
+
) => Decoded;
|
|
11
|
+
readonly byteLength?: number;
|
|
12
|
+
};
|
|
13
|
+
export class Codec<Encodable, Decoded = Encodable> {
|
|
14
|
+
constructor(
|
|
15
|
+
public readonly encode: (encodable: Encodable) => Bytes,
|
|
16
|
+
public readonly decode: (
|
|
17
|
+
decodable: BytesLike,
|
|
18
|
+
config?: { isExtraFieldIgnored?: boolean }, // This is equivalent to "compatible" in the Rust implementation of Molecule.
|
|
19
|
+
) => Decoded,
|
|
20
|
+
public readonly byteLength?: number, // if provided, treat codec as fixed length
|
|
21
|
+
) {}
|
|
22
|
+
|
|
23
|
+
encodeOr<T>(encodable: Encodable, fallback: T): Bytes | T {
|
|
24
|
+
try {
|
|
25
|
+
return this.encode(encodable);
|
|
26
|
+
} catch (_) {
|
|
27
|
+
return fallback;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
decodeOr<T>(
|
|
32
|
+
decodable: BytesLike,
|
|
33
|
+
fallback: T,
|
|
34
|
+
config?: { isExtraFieldIgnored?: boolean }, // This is equivalent to "compatible" in the Rust implementation of Molecule.
|
|
35
|
+
) {
|
|
36
|
+
try {
|
|
37
|
+
return this.decode(decodable, config);
|
|
38
|
+
} catch (_) {
|
|
39
|
+
return fallback;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
static from<Encodable, Decoded = Encodable>({
|
|
44
|
+
encode,
|
|
45
|
+
decode,
|
|
46
|
+
byteLength,
|
|
47
|
+
}: CodecLike<Encodable, Decoded>): Codec<Encodable, Decoded> {
|
|
48
|
+
return new Codec(
|
|
49
|
+
(encodable: Encodable) => {
|
|
50
|
+
const encoded = encode(encodable);
|
|
51
|
+
if (byteLength !== undefined && encoded.byteLength !== byteLength) {
|
|
52
|
+
throw new Error(
|
|
53
|
+
`Codec.encode: expected byte length ${byteLength}, got ${encoded.byteLength}`,
|
|
54
|
+
);
|
|
55
|
+
}
|
|
56
|
+
return encoded;
|
|
57
|
+
},
|
|
58
|
+
(decodable, config) => {
|
|
59
|
+
const decodableBytes = bytesFrom(decodable);
|
|
60
|
+
if (
|
|
61
|
+
byteLength !== undefined &&
|
|
62
|
+
decodableBytes.byteLength !== byteLength
|
|
63
|
+
) {
|
|
64
|
+
throw new Error(
|
|
65
|
+
`Codec.decode: expected byte length ${byteLength}, got ${decodableBytes.byteLength}`,
|
|
66
|
+
);
|
|
67
|
+
}
|
|
68
|
+
return decode(decodable, config);
|
|
69
|
+
},
|
|
70
|
+
byteLength,
|
|
71
|
+
);
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
map<NewEncodable = Encodable, NewDecoded = Decoded>({
|
|
75
|
+
inMap,
|
|
76
|
+
outMap,
|
|
77
|
+
}: {
|
|
78
|
+
inMap?: (encodable: NewEncodable) => Encodable;
|
|
79
|
+
outMap?: (decoded: Decoded) => NewDecoded;
|
|
80
|
+
}): Codec<NewEncodable, NewDecoded> {
|
|
81
|
+
return new Codec(
|
|
82
|
+
(encodable) =>
|
|
83
|
+
this.encode((inMap ? inMap(encodable) : encodable) as Encodable),
|
|
84
|
+
(buffer, config) =>
|
|
85
|
+
(outMap
|
|
86
|
+
? outMap(this.decode(buffer, config))
|
|
87
|
+
: this.decode(buffer, config)) as NewDecoded,
|
|
88
|
+
this.byteLength,
|
|
89
|
+
);
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
mapIn<NewEncodable>(
|
|
93
|
+
map: (encodable: NewEncodable) => Encodable,
|
|
94
|
+
): Codec<NewEncodable, Decoded> {
|
|
95
|
+
return this.map({ inMap: map });
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
mapOut<NewDecoded>(
|
|
99
|
+
map: (decoded: Decoded) => NewDecoded,
|
|
100
|
+
): Codec<Encodable, NewDecoded> {
|
|
101
|
+
return this.map({ outMap: map });
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
export type EncodableType<T extends CodecLike<any, any>> =
|
|
106
|
+
T extends CodecLike<infer Encodable, unknown> ? Encodable : never;
|
|
107
|
+
export type DecodedType<T extends CodecLike<any, any>> =
|
|
108
|
+
T extends CodecLike<any, infer Decoded> ? Decoded : never;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Bytes, bytesEq, BytesLike } from "../bytes/index.js";
|
|
2
2
|
import { hashCkb } from "../hasher/index.js";
|
|
3
|
-
import { Hex } from "../hex/index.js";
|
|
3
|
+
import { Hex, hexFrom } from "../hex/index.js";
|
|
4
4
|
import { Constructor } from "../utils/index.js";
|
|
5
5
|
import { Codec } from "./codec.js";
|
|
6
6
|
|
|
@@ -32,7 +32,7 @@ export abstract class Entity {
|
|
|
32
32
|
*/
|
|
33
33
|
static encode(_: SubTypeLike): Bytes {
|
|
34
34
|
throw new Error(
|
|
35
|
-
"encode not implemented, use @ccc.
|
|
35
|
+
"encode not implemented, use @ccc.codec to decorate your type",
|
|
36
36
|
);
|
|
37
37
|
}
|
|
38
38
|
/**
|
|
@@ -45,7 +45,7 @@ export abstract class Entity {
|
|
|
45
45
|
*/
|
|
46
46
|
static decode(_: BytesLike): SubType {
|
|
47
47
|
throw new Error(
|
|
48
|
-
"decode not implemented, use @ccc.
|
|
48
|
+
"decode not implemented, use @ccc.codec to decorate your type",
|
|
49
49
|
);
|
|
50
50
|
}
|
|
51
51
|
|
|
@@ -59,7 +59,7 @@ export abstract class Entity {
|
|
|
59
59
|
*/
|
|
60
60
|
static fromBytes(_bytes: BytesLike): SubType {
|
|
61
61
|
throw new Error(
|
|
62
|
-
"fromBytes not implemented, use @ccc.
|
|
62
|
+
"fromBytes not implemented, use @ccc.codec to decorate your type",
|
|
63
63
|
);
|
|
64
64
|
}
|
|
65
65
|
|
|
@@ -126,6 +126,15 @@ export abstract class Entity {
|
|
|
126
126
|
hash(): Hex {
|
|
127
127
|
return hashCkb(this.toBytes());
|
|
128
128
|
}
|
|
129
|
+
|
|
130
|
+
/**
|
|
131
|
+
* Convert the entity to a full-byte untrimmed Hex representation
|
|
132
|
+
* @public
|
|
133
|
+
* @returns The entity full-byte untrimmed hexadecimal representation
|
|
134
|
+
*/
|
|
135
|
+
toHex(): Hex {
|
|
136
|
+
return hexFrom(this.toBytes());
|
|
137
|
+
}
|
|
129
138
|
}
|
|
130
139
|
|
|
131
140
|
/* eslint-disable @typescript-eslint/no-explicit-any, @typescript-eslint/no-unsafe-assignment */
|
|
@@ -139,6 +148,7 @@ export abstract class Entity {
|
|
|
139
148
|
|
|
140
149
|
abstract toBytes(): Bytes;
|
|
141
150
|
abstract hash(): Hex;
|
|
151
|
+
abstract toHex(): Hex;
|
|
142
152
|
abstract clone(): Entity;
|
|
143
153
|
}
|
|
144
154
|
|
|
@@ -146,14 +156,14 @@ export abstract class Entity {
|
|
|
146
156
|
* A class decorator to add methods implementation on the {@link Entity.Base} class
|
|
147
157
|
* @example
|
|
148
158
|
* ```typescript
|
|
149
|
-
* @
|
|
159
|
+
* @codec(
|
|
150
160
|
* mol.table({
|
|
151
161
|
* codeHash: mol.Byte32,
|
|
152
162
|
* hashType: HashTypeCodec,
|
|
153
163
|
* args: mol.Bytes,
|
|
154
164
|
* }),
|
|
155
165
|
* )
|
|
156
|
-
* export class Script extends
|
|
166
|
+
* export class Script extends Entity.Base<ScriptLike, Script>() {
|
|
157
167
|
* from(scriptLike: ScriptLike): Script {}
|
|
158
168
|
* }
|
|
159
169
|
* ```
|
|
@@ -176,7 +186,7 @@ export function codec<
|
|
|
176
186
|
Constructor.byteLength = codec.byteLength;
|
|
177
187
|
if (Constructor.encode === undefined) {
|
|
178
188
|
Constructor.encode = function (encodable: TypeLike) {
|
|
179
|
-
return codec.encode(encodable);
|
|
189
|
+
return codec.encode(Constructor.from(encodable));
|
|
180
190
|
};
|
|
181
191
|
}
|
|
182
192
|
if (Constructor.decode === undefined) {
|
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
import { Bytes, bytesFrom, BytesLike } from "../bytes/index.js";
|
|
2
|
+
import { Hex, hexFrom, HexLike } from "../hex/index.js";
|
|
3
|
+
import {
|
|
4
|
+
Num,
|
|
5
|
+
numBeFromBytes,
|
|
6
|
+
numBeToBytes,
|
|
7
|
+
numFromBytes,
|
|
8
|
+
NumLike,
|
|
9
|
+
numToBytes,
|
|
10
|
+
} from "../num/index.js";
|
|
11
|
+
import { Codec } from "./codec.js";
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* Create a codec to deal with fixed LE or BE bytes.
|
|
15
|
+
* @param byteLength
|
|
16
|
+
* @param littleEndian
|
|
17
|
+
*/
|
|
18
|
+
export function codecUint(
|
|
19
|
+
byteLength: number,
|
|
20
|
+
littleEndian = false,
|
|
21
|
+
): Codec<NumLike, Num> {
|
|
22
|
+
return Codec.from({
|
|
23
|
+
byteLength,
|
|
24
|
+
encode: (numLike) => {
|
|
25
|
+
if (littleEndian) {
|
|
26
|
+
return numToBytes(numLike, byteLength);
|
|
27
|
+
} else {
|
|
28
|
+
return numBeToBytes(numLike, byteLength);
|
|
29
|
+
}
|
|
30
|
+
},
|
|
31
|
+
decode: (buffer) => {
|
|
32
|
+
if (littleEndian) {
|
|
33
|
+
return numFromBytes(buffer);
|
|
34
|
+
} else {
|
|
35
|
+
return numBeFromBytes(buffer);
|
|
36
|
+
}
|
|
37
|
+
},
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
/**
|
|
42
|
+
* Create a codec to deal with fixed LE or BE bytes.
|
|
43
|
+
* @param byteLength
|
|
44
|
+
* @param littleEndian
|
|
45
|
+
*/
|
|
46
|
+
export function codecUintNumber(
|
|
47
|
+
byteLength: number,
|
|
48
|
+
littleEndian = false,
|
|
49
|
+
): Codec<NumLike, number> {
|
|
50
|
+
if (byteLength > 4) {
|
|
51
|
+
throw new Error("uintNumber: byteLength must be less than or equal to 4");
|
|
52
|
+
}
|
|
53
|
+
return codecUint(byteLength, littleEndian).map({
|
|
54
|
+
outMap: (num) => Number(num),
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
/**
|
|
59
|
+
* Create a codec for padding bytes.
|
|
60
|
+
* The padding bytes are zero-filled when encoding and ignored when decoding.
|
|
61
|
+
* @param byteLength The length of the padding in bytes.
|
|
62
|
+
*/
|
|
63
|
+
export function codecPadding(
|
|
64
|
+
byteLength: number,
|
|
65
|
+
): Codec<void | undefined | null, void> {
|
|
66
|
+
return Codec.from({
|
|
67
|
+
byteLength,
|
|
68
|
+
encode: () => {
|
|
69
|
+
return new Uint8Array(byteLength);
|
|
70
|
+
},
|
|
71
|
+
decode: () => {},
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
export const CodecRaw: Codec<BytesLike, Bytes> = Codec.from({
|
|
76
|
+
encode: (value) => bytesFrom(value),
|
|
77
|
+
decode: (buffer) => bytesFrom(buffer),
|
|
78
|
+
});
|
|
79
|
+
|
|
80
|
+
export const CodecBytes: Codec<HexLike, Hex> = Codec.from({
|
|
81
|
+
encode: (value) => bytesFrom(value),
|
|
82
|
+
decode: (buffer) => hexFrom(buffer),
|
|
83
|
+
});
|
|
84
|
+
|
|
85
|
+
export const CodecUint8 = codecUintNumber(1, true);
|
|
86
|
+
|
|
87
|
+
export const CodecUint16LE = codecUintNumber(2, true);
|
|
88
|
+
export const CodecUint16BE = codecUintNumber(2);
|
|
89
|
+
export const CodecUint16 = CodecUint16LE;
|
|
90
|
+
|
|
91
|
+
export const CodecUint32LE = codecUintNumber(4, true);
|
|
92
|
+
export const CodecUint32BE = codecUintNumber(4);
|
|
93
|
+
export const CodecUint32 = CodecUint32LE;
|
|
94
|
+
|
|
95
|
+
export const CodecUint64LE = codecUint(8, true);
|
|
96
|
+
export const CodecUint64BE = codecUint(8);
|
|
97
|
+
export const CodecUint64 = CodecUint64LE;
|
|
98
|
+
|
|
99
|
+
export const CodecUint128LE = codecUint(16, true);
|
|
100
|
+
export const CodecUint128BE = codecUint(16);
|
|
101
|
+
export const CodecUint128 = CodecUint128LE;
|
|
102
|
+
|
|
103
|
+
export const CodecUint256LE = codecUint(32, true);
|
|
104
|
+
export const CodecUint256BE = codecUint(32);
|
|
105
|
+
export const CodecUint256 = CodecUint256LE;
|
|
106
|
+
|
|
107
|
+
export const CodecUint512LE = codecUint(64, true);
|
|
108
|
+
export const CodecUint512BE = codecUint(64);
|
|
109
|
+
export const CodecUint512 = CodecUint512LE;
|
|
110
|
+
|
|
111
|
+
export const CodecBool: Codec<boolean> = Codec.from({
|
|
112
|
+
byteLength: 1,
|
|
113
|
+
encode: (value) => bytesFrom(value ? [1] : [0]),
|
|
114
|
+
decode: (buffer) => bytesFrom(buffer)[0] !== 0,
|
|
115
|
+
});
|
|
116
|
+
|
|
117
|
+
export const CodecByte: Codec<HexLike, Hex> = Codec.from({
|
|
118
|
+
byteLength: 1,
|
|
119
|
+
encode: (value) => bytesFrom(value),
|
|
120
|
+
decode: (buffer) => hexFrom(buffer),
|
|
121
|
+
});
|
|
122
|
+
|
|
123
|
+
export const CodecByte4: Codec<HexLike, Hex> = Codec.from({
|
|
124
|
+
byteLength: 4,
|
|
125
|
+
encode: (value) => bytesFrom(value),
|
|
126
|
+
decode: (buffer) => hexFrom(buffer),
|
|
127
|
+
});
|
|
128
|
+
|
|
129
|
+
export const CodecByte8: Codec<HexLike, Hex> = Codec.from({
|
|
130
|
+
byteLength: 8,
|
|
131
|
+
encode: (value) => bytesFrom(value),
|
|
132
|
+
decode: (buffer) => hexFrom(buffer),
|
|
133
|
+
});
|
|
134
|
+
|
|
135
|
+
export const CodecByte16: Codec<HexLike, Hex> = Codec.from({
|
|
136
|
+
byteLength: 16,
|
|
137
|
+
encode: (value) => bytesFrom(value),
|
|
138
|
+
decode: (buffer) => hexFrom(buffer),
|
|
139
|
+
});
|
|
140
|
+
|
|
141
|
+
export const CodecByte32: Codec<HexLike, Hex> = Codec.from({
|
|
142
|
+
byteLength: 32,
|
|
143
|
+
encode: (value) => bytesFrom(value),
|
|
144
|
+
decode: (buffer) => hexFrom(buffer),
|
|
145
|
+
});
|
package/src/hasher/advanced.ts
CHANGED
package/src/hasher/hasherCkb.ts
CHANGED
package/src/keystore/index.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { ctr } from "@noble/ciphers/aes";
|
|
2
|
-
import { scryptAsync } from "@noble/hashes/scrypt";
|
|
3
|
-
import { keccak_256 } from "@noble/hashes/sha3";
|
|
4
|
-
import { randomBytes } from "@noble/hashes/utils";
|
|
1
|
+
import { ctr } from "@noble/ciphers/aes.js";
|
|
2
|
+
import { scryptAsync } from "@noble/hashes/scrypt.js";
|
|
3
|
+
import { keccak_256 } from "@noble/hashes/sha3.js";
|
|
4
|
+
import { randomBytes } from "@noble/hashes/utils.js";
|
|
5
5
|
import { Bytes, BytesLike, bytesConcat, bytesFrom } from "../bytes/index.js";
|
|
6
6
|
import { hexFrom } from "../hex/index.js";
|
|
7
7
|
|
package/src/molecule/barrel.ts
CHANGED
|
@@ -1,3 +1,12 @@
|
|
|
1
|
+
export {
|
|
2
|
+
/**
|
|
3
|
+
* @deprecated Use ccc.Entity instead
|
|
4
|
+
*/
|
|
5
|
+
Entity,
|
|
6
|
+
/**
|
|
7
|
+
* @deprecated Use ccc.codec instead
|
|
8
|
+
*/
|
|
9
|
+
codec,
|
|
10
|
+
} from "../codec/entity.js";
|
|
1
11
|
export * from "./codec.js";
|
|
2
|
-
export * from "./entity.js";
|
|
3
12
|
export * from "./predefined.js";
|
package/src/molecule/codec.ts
CHANGED
|
@@ -1,105 +1,45 @@
|
|
|
1
1
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
2
2
|
|
|
3
3
|
import {
|
|
4
|
-
Bytes,
|
|
5
4
|
bytesConcat,
|
|
6
5
|
bytesConcatTo,
|
|
7
6
|
bytesFrom,
|
|
8
7
|
BytesLike,
|
|
9
8
|
} from "../bytes/index.js";
|
|
10
9
|
import {
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
const encoded = encode(encodable);
|
|
45
|
-
if (byteLength !== undefined && encoded.byteLength !== byteLength) {
|
|
46
|
-
throw new Error(
|
|
47
|
-
`Codec.encode: expected byte length ${byteLength}, got ${encoded.byteLength}`,
|
|
48
|
-
);
|
|
49
|
-
}
|
|
50
|
-
return encoded;
|
|
51
|
-
},
|
|
52
|
-
(decodable, config) => {
|
|
53
|
-
const decodableBytes = bytesFrom(decodable);
|
|
54
|
-
if (
|
|
55
|
-
byteLength !== undefined &&
|
|
56
|
-
decodableBytes.byteLength !== byteLength
|
|
57
|
-
) {
|
|
58
|
-
throw new Error(
|
|
59
|
-
`Codec.decode: expected byte length ${byteLength}, got ${decodableBytes.byteLength}`,
|
|
60
|
-
);
|
|
61
|
-
}
|
|
62
|
-
return decode(decodable, config);
|
|
63
|
-
},
|
|
64
|
-
byteLength,
|
|
65
|
-
);
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
map<NewEncodable = Encodable, NewDecoded = Decoded>({
|
|
69
|
-
inMap,
|
|
70
|
-
outMap,
|
|
71
|
-
}: {
|
|
72
|
-
inMap?: (encodable: NewEncodable) => Encodable;
|
|
73
|
-
outMap?: (decoded: Decoded) => NewDecoded;
|
|
74
|
-
}): Codec<NewEncodable, NewDecoded> {
|
|
75
|
-
return new Codec(
|
|
76
|
-
(encodable) =>
|
|
77
|
-
this.encode((inMap ? inMap(encodable) : encodable) as Encodable),
|
|
78
|
-
(buffer, config) =>
|
|
79
|
-
(outMap
|
|
80
|
-
? outMap(this.decode(buffer, config))
|
|
81
|
-
: this.decode(buffer, config)) as NewDecoded,
|
|
82
|
-
this.byteLength,
|
|
83
|
-
);
|
|
84
|
-
}
|
|
85
|
-
|
|
86
|
-
mapIn<NewEncodable>(
|
|
87
|
-
map: (encodable: NewEncodable) => Encodable,
|
|
88
|
-
): Codec<NewEncodable, Decoded> {
|
|
89
|
-
return this.map({ inMap: map });
|
|
90
|
-
}
|
|
91
|
-
|
|
92
|
-
mapOut<NewDecoded>(
|
|
93
|
-
map: (decoded: Decoded) => NewDecoded,
|
|
94
|
-
): Codec<Encodable, NewDecoded> {
|
|
95
|
-
return this.map({ outMap: map });
|
|
96
|
-
}
|
|
97
|
-
}
|
|
98
|
-
|
|
99
|
-
export type EncodableType<T extends CodecLike<any, any>> =
|
|
100
|
-
T extends CodecLike<infer Encodable, unknown> ? Encodable : never;
|
|
101
|
-
export type DecodedType<T extends CodecLike<any, any>> =
|
|
102
|
-
T extends CodecLike<any, infer Decoded> ? Decoded : never;
|
|
10
|
+
Codec,
|
|
11
|
+
CodecLike,
|
|
12
|
+
DecodedType,
|
|
13
|
+
EncodableType,
|
|
14
|
+
} from "../codec/index.js";
|
|
15
|
+
import { numFromBytes, NumLike, numToBytes } from "../num/index.js";
|
|
16
|
+
|
|
17
|
+
export {
|
|
18
|
+
/**
|
|
19
|
+
* @deprecated Use ccc.Codec instead
|
|
20
|
+
*/
|
|
21
|
+
Codec,
|
|
22
|
+
/**
|
|
23
|
+
* @deprecated Use ccc.codecUint instead
|
|
24
|
+
*/
|
|
25
|
+
codecUint as uint,
|
|
26
|
+
/**
|
|
27
|
+
* @deprecated Use ccc.codecUintNumber instead
|
|
28
|
+
*/
|
|
29
|
+
codecUintNumber as uintNumber,
|
|
30
|
+
/**
|
|
31
|
+
* @deprecated Use ccc.CodecLike instead
|
|
32
|
+
*/
|
|
33
|
+
type CodecLike,
|
|
34
|
+
/**
|
|
35
|
+
* @deprecated Use ccc.DecodedType instead
|
|
36
|
+
*/
|
|
37
|
+
type DecodedType,
|
|
38
|
+
/**
|
|
39
|
+
* @deprecated Use ccc.EncodableType instead
|
|
40
|
+
*/
|
|
41
|
+
type EncodableType,
|
|
42
|
+
} from "../codec/index.js";
|
|
103
43
|
|
|
104
44
|
function uint32To(numLike: NumLike) {
|
|
105
45
|
return numToBytes(numLike, 4);
|
|
@@ -673,48 +613,3 @@ export function array<Encodable, Decoded>(
|
|
|
673
613
|
},
|
|
674
614
|
});
|
|
675
615
|
}
|
|
676
|
-
|
|
677
|
-
/**
|
|
678
|
-
* Create a codec to deal with fixed LE or BE bytes.
|
|
679
|
-
* @param byteLength
|
|
680
|
-
* @param littleEndian
|
|
681
|
-
*/
|
|
682
|
-
export function uint(
|
|
683
|
-
byteLength: number,
|
|
684
|
-
littleEndian = false,
|
|
685
|
-
): Codec<NumLike, Num> {
|
|
686
|
-
return Codec.from({
|
|
687
|
-
byteLength,
|
|
688
|
-
encode: (numLike) => {
|
|
689
|
-
if (littleEndian) {
|
|
690
|
-
return numToBytes(numLike, byteLength);
|
|
691
|
-
} else {
|
|
692
|
-
return numBeToBytes(numLike, byteLength);
|
|
693
|
-
}
|
|
694
|
-
},
|
|
695
|
-
decode: (buffer) => {
|
|
696
|
-
if (littleEndian) {
|
|
697
|
-
return numFromBytes(buffer);
|
|
698
|
-
} else {
|
|
699
|
-
return numBeFromBytes(buffer);
|
|
700
|
-
}
|
|
701
|
-
},
|
|
702
|
-
});
|
|
703
|
-
}
|
|
704
|
-
|
|
705
|
-
/**
|
|
706
|
-
* Create a codec to deal with fixed LE or BE bytes.
|
|
707
|
-
* @param byteLength
|
|
708
|
-
* @param littleEndian
|
|
709
|
-
*/
|
|
710
|
-
export function uintNumber(
|
|
711
|
-
byteLength: number,
|
|
712
|
-
littleEndian = false,
|
|
713
|
-
): Codec<NumLike, number> {
|
|
714
|
-
if (byteLength > 4) {
|
|
715
|
-
throw new Error("uintNumber: byteLength must be less than or equal to 4");
|
|
716
|
-
}
|
|
717
|
-
return uint(byteLength, littleEndian).map({
|
|
718
|
-
outMap: (num) => Number(num),
|
|
719
|
-
});
|
|
720
|
-
}
|