@ckb-ccc/core 0.0.5-alpha.0 → 0.0.5-alpha.10

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.
Files changed (230) hide show
  1. package/dist/address/index.d.ts +1 -1
  2. package/dist/address/index.d.ts.map +1 -1
  3. package/dist/address/index.js +4 -4
  4. package/dist/ckb/transaction.d.ts +2 -2
  5. package/dist/ckb/transaction.d.ts.map +1 -1
  6. package/dist/ckb/transaction.js +2 -3
  7. package/dist/client/client.d.ts +6 -3
  8. package/dist/client/client.d.ts.map +1 -1
  9. package/dist/client/client.js +16 -0
  10. package/dist/client/clientPublicMainnet.d.ts +1 -1
  11. package/dist/client/clientPublicMainnet.d.ts.map +1 -1
  12. package/dist/client/clientPublicMainnet.js +1 -1
  13. package/dist/client/clientPublicTestnet.d.ts +1 -1
  14. package/dist/client/clientPublicTestnet.d.ts.map +1 -1
  15. package/dist/client/clientPublicTestnet.js +1 -1
  16. package/dist/client/jsonRpc/index.d.ts +15 -5
  17. package/dist/client/jsonRpc/index.d.ts.map +1 -1
  18. package/dist/client/jsonRpc/index.js +16 -6
  19. package/dist/signer/btc/index.d.ts +1 -0
  20. package/dist/signer/btc/index.d.ts.map +1 -1
  21. package/dist/signer/btc/index.js +1 -0
  22. package/dist/signer/btc/signerBtc.d.ts +9 -1
  23. package/dist/signer/btc/signerBtc.d.ts.map +1 -1
  24. package/dist/signer/btc/signerBtc.js +19 -3
  25. package/dist/signer/btc/signerBtcPublicKeyReadonly.d.ts +0 -6
  26. package/dist/signer/btc/signerBtcPublicKeyReadonly.d.ts.map +1 -1
  27. package/dist/signer/btc/signerBtcPublicKeyReadonly.js +0 -8
  28. package/dist/signer/btc/verify.d.ts +3 -0
  29. package/dist/signer/btc/verify.d.ts.map +1 -0
  30. package/dist/signer/btc/verify.js +6 -0
  31. package/dist/signer/ckb/index.d.ts +1 -0
  32. package/dist/signer/ckb/index.d.ts.map +1 -1
  33. package/dist/signer/ckb/index.js +1 -0
  34. package/dist/signer/ckb/signerCkbScriptReadonly.d.ts +3 -7
  35. package/dist/signer/ckb/signerCkbScriptReadonly.d.ts.map +1 -1
  36. package/dist/signer/ckb/signerCkbScriptReadonly.js +8 -10
  37. package/dist/signer/ckb/verifyJoyId.d.ts +3 -0
  38. package/dist/signer/ckb/verifyJoyId.d.ts.map +1 -0
  39. package/dist/signer/ckb/verifyJoyId.js +12 -0
  40. package/dist/signer/dummy/alwaysError.d.ts +9 -0
  41. package/dist/signer/dummy/alwaysError.d.ts.map +1 -0
  42. package/dist/signer/dummy/alwaysError.js +10 -0
  43. package/dist/signer/dummy/dummy.d.ts +12 -0
  44. package/dist/signer/dummy/dummy.d.ts.map +1 -0
  45. package/dist/signer/dummy/dummy.js +19 -0
  46. package/dist/signer/dummy/index.d.ts +4 -0
  47. package/dist/signer/dummy/index.d.ts.map +1 -0
  48. package/dist/signer/dummy/index.js +3 -0
  49. package/dist/signer/dummy/openLink.d.ts +9 -0
  50. package/dist/signer/dummy/openLink.d.ts.map +1 -0
  51. package/dist/signer/dummy/openLink.js +10 -0
  52. package/dist/signer/evm/index.d.ts +1 -0
  53. package/dist/signer/evm/index.d.ts.map +1 -1
  54. package/dist/signer/evm/index.js +1 -0
  55. package/dist/signer/evm/signerEvm.d.ts +3 -1
  56. package/dist/signer/evm/signerEvm.d.ts.map +1 -1
  57. package/dist/signer/evm/signerEvm.js +10 -4
  58. package/dist/signer/evm/signerEvmAddressReadonly.d.ts +0 -6
  59. package/dist/signer/evm/signerEvmAddressReadonly.d.ts.map +1 -1
  60. package/dist/signer/evm/signerEvmAddressReadonly.js +0 -8
  61. package/dist/signer/evm/verify.d.ts +3 -0
  62. package/dist/signer/evm/verify.d.ts.map +1 -0
  63. package/dist/signer/evm/verify.js +6 -0
  64. package/dist/signer/index.d.ts +1 -0
  65. package/dist/signer/index.d.ts.map +1 -1
  66. package/dist/signer/index.js +1 -0
  67. package/{dist.commonjs/signer/signer.d.ts → dist/signer/signer/index.d.ts} +75 -24
  68. package/dist/signer/signer/index.d.ts.map +1 -0
  69. package/dist/signer/signer/index.js +205 -0
  70. package/dist/utils/index.d.ts +60 -0
  71. package/dist/utils/index.d.ts.map +1 -1
  72. package/dist/utils/index.js +20 -0
  73. package/dist.commonjs/address/address.advanced.d.ts +29 -24
  74. package/dist.commonjs/address/address.advanced.js +114 -92
  75. package/dist.commonjs/address/advanced.d.ts +1 -1
  76. package/dist.commonjs/address/advanced.js +30 -14
  77. package/dist.commonjs/address/index.d.ts +51 -44
  78. package/dist.commonjs/address/index.d.ts.map +1 -1
  79. package/dist.commonjs/address/index.js +87 -68
  80. package/dist.commonjs/advanced.d.ts +1 -1
  81. package/dist.commonjs/advanced.js +47 -22
  82. package/dist.commonjs/advancedBarrel.d.ts +1 -1
  83. package/dist.commonjs/advancedBarrel.js +30 -14
  84. package/dist.commonjs/barrel.d.ts +1 -1
  85. package/dist.commonjs/barrel.js +30 -14
  86. package/dist.commonjs/bytes/advanced.d.ts +11 -2
  87. package/dist.commonjs/bytes/index.d.ts +9 -3
  88. package/dist.commonjs/bytes/index.js +28 -26
  89. package/dist.commonjs/ckb/advanced.d.ts +1 -1
  90. package/dist.commonjs/ckb/advanced.js +47 -22
  91. package/dist.commonjs/ckb/index.d.ts +1 -1
  92. package/dist.commonjs/ckb/index.js +30 -14
  93. package/dist.commonjs/ckb/molecule.advanced/generated.d.ts +420 -260
  94. package/dist.commonjs/ckb/molecule.advanced/generated.js +1536 -1332
  95. package/dist.commonjs/ckb/molecule.advanced/index.d.ts +3 -3
  96. package/dist.commonjs/ckb/molecule.advanced/index.js +34 -18
  97. package/dist.commonjs/ckb/script.advanced.d.ts +1 -1
  98. package/dist.commonjs/ckb/script.advanced.js +12 -9
  99. package/dist.commonjs/ckb/script.d.ts +76 -76
  100. package/dist.commonjs/ckb/script.js +166 -126
  101. package/dist.commonjs/ckb/transaction.advanced.d.ts +1 -1
  102. package/dist.commonjs/ckb/transaction.advanced.js +4 -4
  103. package/dist.commonjs/ckb/transaction.d.ts +570 -532
  104. package/dist.commonjs/ckb/transaction.d.ts.map +1 -1
  105. package/dist.commonjs/ckb/transaction.js +839 -723
  106. package/dist.commonjs/client/advanced.d.ts +1 -1
  107. package/dist.commonjs/client/advanced.js +30 -14
  108. package/dist.commonjs/client/client.d.ts +53 -19
  109. package/dist.commonjs/client/client.d.ts.map +1 -1
  110. package/dist.commonjs/client/client.js +68 -43
  111. package/dist.commonjs/client/clientPublicMainnet.advanced.d.ts +5 -2
  112. package/dist.commonjs/client/clientPublicMainnet.advanced.js +30 -24
  113. package/dist.commonjs/client/clientPublicMainnet.d.ts +6 -4
  114. package/dist.commonjs/client/clientPublicMainnet.d.ts.map +1 -1
  115. package/dist.commonjs/client/clientPublicMainnet.js +9 -9
  116. package/dist.commonjs/client/clientPublicTestnet.advanced.d.ts +5 -2
  117. package/dist.commonjs/client/clientPublicTestnet.advanced.js +30 -24
  118. package/dist.commonjs/client/clientPublicTestnet.d.ts +6 -4
  119. package/dist.commonjs/client/clientPublicTestnet.d.ts.map +1 -1
  120. package/dist.commonjs/client/clientPublicTestnet.js +9 -9
  121. package/dist.commonjs/client/clientTypes.d.ts +51 -36
  122. package/dist.commonjs/client/clientTypes.js +34 -19
  123. package/dist.commonjs/client/index.d.ts +1 -1
  124. package/dist.commonjs/client/index.js +30 -14
  125. package/dist.commonjs/client/jsonRpc/advanced.d.ts +1 -1
  126. package/dist.commonjs/client/jsonRpc/advanced.js +30 -14
  127. package/dist.commonjs/client/jsonRpc/index.d.ts +93 -66
  128. package/dist.commonjs/client/jsonRpc/index.d.ts.map +1 -1
  129. package/dist.commonjs/client/jsonRpc/index.js +135 -98
  130. package/dist.commonjs/client/jsonRpc/transformers.d.ts +78 -38
  131. package/dist.commonjs/client/jsonRpc/transformers.js +175 -150
  132. package/dist.commonjs/client/jsonRpc/types.d.ts +38 -38
  133. package/dist.commonjs/fixedPoint/index.d.ts +9 -3
  134. package/dist.commonjs/fixedPoint/index.js +26 -20
  135. package/dist.commonjs/fixedPoint/index.test.d.ts +1 -1
  136. package/dist.commonjs/fixedPoint/index.test.js +42 -36
  137. package/dist.commonjs/hasher/advanced.d.ts +1 -1
  138. package/dist.commonjs/hasher/index.d.ts +36 -36
  139. package/dist.commonjs/hasher/index.js +52 -45
  140. package/dist.commonjs/hex/index.d.ts +1 -1
  141. package/dist.commonjs/hex/index.js +1 -1
  142. package/dist.commonjs/index.d.ts +1 -1
  143. package/dist.commonjs/index.js +47 -22
  144. package/dist.commonjs/num/index.d.ts +1 -1
  145. package/dist.commonjs/num/index.js +30 -19
  146. package/dist.commonjs/signer/btc/index.d.ts +2 -1
  147. package/dist.commonjs/signer/btc/index.d.ts.map +1 -1
  148. package/dist.commonjs/signer/btc/index.js +31 -14
  149. package/dist.commonjs/signer/btc/signerBtc.d.ts +48 -40
  150. package/dist.commonjs/signer/btc/signerBtc.d.ts.map +1 -1
  151. package/dist.commonjs/signer/btc/signerBtc.js +85 -49
  152. package/dist.commonjs/signer/btc/signerBtcPublicKeyReadonly.d.ts +45 -51
  153. package/dist.commonjs/signer/btc/signerBtcPublicKeyReadonly.d.ts.map +1 -1
  154. package/dist.commonjs/signer/btc/signerBtcPublicKeyReadonly.js +52 -60
  155. package/dist.commonjs/signer/btc/verify.d.ts +7 -0
  156. package/dist.commonjs/signer/btc/verify.d.ts.map +1 -0
  157. package/dist.commonjs/signer/btc/verify.js +13 -0
  158. package/dist.commonjs/signer/ckb/index.d.ts +2 -1
  159. package/dist.commonjs/signer/ckb/index.d.ts.map +1 -1
  160. package/dist.commonjs/signer/ckb/index.js +31 -14
  161. package/dist.commonjs/signer/ckb/signerCkbScriptReadonly.d.ts +46 -50
  162. package/dist.commonjs/signer/ckb/signerCkbScriptReadonly.d.ts.map +1 -1
  163. package/dist.commonjs/signer/ckb/signerCkbScriptReadonly.js +56 -58
  164. package/dist.commonjs/signer/ckb/verifyJoyId.d.ts +7 -0
  165. package/dist.commonjs/signer/ckb/verifyJoyId.d.ts.map +1 -0
  166. package/dist.commonjs/signer/ckb/verifyJoyId.js +19 -0
  167. package/dist.commonjs/signer/dummy/alwaysError.d.ts +9 -0
  168. package/dist.commonjs/signer/dummy/alwaysError.d.ts.map +1 -0
  169. package/dist.commonjs/signer/dummy/alwaysError.js +14 -0
  170. package/dist.commonjs/signer/dummy/dummy.d.ts +12 -0
  171. package/dist.commonjs/signer/dummy/dummy.d.ts.map +1 -0
  172. package/dist.commonjs/signer/dummy/dummy.js +23 -0
  173. package/dist.commonjs/signer/dummy/index.d.ts +4 -0
  174. package/dist.commonjs/signer/dummy/index.d.ts.map +1 -0
  175. package/dist.commonjs/signer/dummy/index.js +35 -0
  176. package/dist.commonjs/signer/dummy/openLink.d.ts +9 -0
  177. package/dist.commonjs/signer/dummy/openLink.d.ts.map +1 -0
  178. package/dist.commonjs/signer/dummy/openLink.js +14 -0
  179. package/dist.commonjs/signer/evm/index.d.ts +2 -1
  180. package/dist.commonjs/signer/evm/index.d.ts.map +1 -1
  181. package/dist.commonjs/signer/evm/index.js +31 -14
  182. package/dist.commonjs/signer/evm/signerEvm.d.ts +43 -37
  183. package/dist.commonjs/signer/evm/signerEvm.d.ts.map +1 -1
  184. package/dist.commonjs/signer/evm/signerEvm.js +101 -63
  185. package/dist.commonjs/signer/evm/signerEvmAddressReadonly.d.ts +37 -43
  186. package/dist.commonjs/signer/evm/signerEvmAddressReadonly.d.ts.map +1 -1
  187. package/dist.commonjs/signer/evm/signerEvmAddressReadonly.js +42 -50
  188. package/dist.commonjs/signer/evm/verify.d.ts +7 -0
  189. package/dist.commonjs/signer/evm/verify.d.ts.map +1 -0
  190. package/dist.commonjs/signer/evm/verify.js +15 -0
  191. package/dist.commonjs/signer/index.d.ts +2 -1
  192. package/dist.commonjs/signer/index.d.ts.map +1 -1
  193. package/dist.commonjs/signer/index.js +31 -14
  194. package/dist.commonjs/signer/signer/index.d.ts +190 -0
  195. package/dist.commonjs/signer/signer/index.d.ts.map +1 -0
  196. package/dist.commonjs/signer/signer/index.js +234 -0
  197. package/dist.commonjs/utils/index.d.ts +94 -6
  198. package/dist.commonjs/utils/index.d.ts.map +1 -1
  199. package/dist.commonjs/utils/index.js +33 -5
  200. package/package.json +6 -3
  201. package/src/address/index.ts +4 -7
  202. package/src/ckb/transaction.ts +4 -5
  203. package/src/client/client.ts +27 -3
  204. package/src/client/clientPublicMainnet.ts +1 -1
  205. package/src/client/clientPublicTestnet.ts +1 -1
  206. package/src/client/jsonRpc/index.ts +21 -5
  207. package/src/signer/btc/index.ts +1 -0
  208. package/src/signer/btc/signerBtc.ts +22 -7
  209. package/src/signer/btc/signerBtcPublicKeyReadonly.ts +0 -9
  210. package/src/signer/btc/verify.ts +14 -0
  211. package/src/signer/ckb/index.ts +1 -0
  212. package/src/signer/ckb/signerCkbScriptReadonly.ts +10 -11
  213. package/src/signer/ckb/verifyJoyId.ts +20 -0
  214. package/src/signer/dummy/alwaysError.ts +17 -0
  215. package/src/signer/dummy/dummy.ts +28 -0
  216. package/src/signer/dummy/index.ts +3 -0
  217. package/src/signer/dummy/openLink.ts +17 -0
  218. package/src/signer/evm/index.ts +1 -0
  219. package/src/signer/evm/signerEvm.ts +16 -10
  220. package/src/signer/evm/signerEvmAddressReadonly.ts +0 -9
  221. package/src/signer/evm/verify.ts +16 -0
  222. package/src/signer/index.ts +1 -0
  223. package/src/signer/{signer.ts → signer/index.ts} +146 -24
  224. package/src/utils/index.ts +108 -0
  225. package/dist/signer/signer.d.ts +0 -133
  226. package/dist/signer/signer.d.ts.map +0 -1
  227. package/dist/signer/signer.js +0 -112
  228. package/dist.commonjs/signer/signer.d.ts.map +0 -1
  229. package/dist.commonjs/signer/signer.js +0 -117
  230. package/dist.commonjs/tsconfig.commonjs.tsbuildinfo +0 -1
@@ -1,7 +1,67 @@
1
+ /**
2
+ * A type safe way to apply a transformer on a value if it's not empty.
3
+ *
4
+ * @param transformer - The transformer.
5
+ * @param value - The value to be transformed.
6
+ * @returns If the value is empty, it remains its type. Otherwise it will be transformed.
7
+ */
1
8
  export declare function apply<T, R>(transformer: (val: T) => R, value: undefined): undefined;
9
+ /**
10
+ * A type safe way to apply a transformer on a value if it's not empty.
11
+ *
12
+ * @param transformer - The transformer.
13
+ * @param value - The value to be transformed.
14
+ * @returns If the value is empty, it remains its type. Otherwise it will be transformed.
15
+ */
2
16
  export declare function apply<T, R>(transformer: (val: T) => R, value: null): null;
17
+ /**
18
+ * A type safe way to apply a transformer on a value if it's not empty.
19
+ *
20
+ * @param transformer - The transformer.
21
+ * @param value - The value to be transformed.
22
+ * @returns If the value is empty, it remains its type. Otherwise it will be transformed.
23
+ */
3
24
  export declare function apply<T, R>(transformer: (val: T) => R, value: T): R;
25
+ /**
26
+ * A type safe way to apply a transformer on a value if it's not empty.
27
+ *
28
+ * @param transformer - The transformer.
29
+ * @param value - The value to be transformed.
30
+ * @returns If the value is empty, it remains its type. Otherwise it will be transformed.
31
+ */
4
32
  export declare function apply<T, R>(transformer: (val: T) => R, value: T | undefined): R | undefined;
33
+ /**
34
+ * A type safe way to apply a transformer on a value if it's not empty.
35
+ *
36
+ * @param transformer - The transformer.
37
+ * @param value - The value to be transformed.
38
+ * @returns If the value is empty, it remains its type. Otherwise it will be transformed.
39
+ */
5
40
  export declare function apply<T, R>(transformer: (val: T) => R, value: T | null): R | null;
41
+ /**
42
+ * A type safe way to apply a transformer on a value if it's not empty.
43
+ *
44
+ * @param transformer - The transformer.
45
+ * @param value - The value to be transformed.
46
+ * @returns If the value is empty, it remains its type. Otherwise it will be transformed.
47
+ */
6
48
  export declare function apply<T, R>(transformer: (val: T) => R, value: undefined | null): undefined | null;
49
+ /**
50
+ * Similar to Array.reduce, but the accumulator can returns Promise.
51
+ *
52
+ * @param values - The array to be reduced.
53
+ * @param accumulator - A callback to be called for each value. If it returns null, the previous result will be kept.
54
+ * @returns The accumulated result.
55
+ */
56
+ export declare function reduceAsync<T, V>(values: T[], accumulator: (a: T, b: T) => Promise<T | undefined | null | void> | T | undefined | null | void): Promise<T>;
57
+ /**
58
+ * Similar to Array.reduce, but the accumulator can returns Promise.
59
+ *
60
+ * @param values - The array to be reduced.
61
+ * @param accumulator - A callback to be called for each value. If it returns null, the previous result will be kept.
62
+ * @param init - The initial value.
63
+ * @returns The accumulated result.
64
+ */
65
+ export declare function reduceAsync<T, V>(values: V[], accumulator: (a: T, b: V) => Promise<T | undefined | null | void> | T | undefined | null | void, init: T): Promise<T>;
66
+ export declare function isWebview(userAgent: string): boolean;
7
67
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,wBAAgB,KAAK,CAAC,CAAC,EAAE,CAAC,EACxB,WAAW,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,EAC1B,KAAK,EAAE,SAAS,GACf,SAAS,CAAC;AACb,wBAAgB,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,IAAI,GAAG,IAAI,CAAC;AAC3E,wBAAgB,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,CAAC;AACrE,wBAAgB,KAAK,CAAC,CAAC,EAAE,CAAC,EACxB,WAAW,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,EAC1B,KAAK,EAAE,CAAC,GAAG,SAAS,GACnB,CAAC,GAAG,SAAS,CAAC;AACjB,wBAAgB,KAAK,CAAC,CAAC,EAAE,CAAC,EACxB,WAAW,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,EAC1B,KAAK,EAAE,CAAC,GAAG,IAAI,GACd,CAAC,GAAG,IAAI,CAAC;AACZ,wBAAgB,KAAK,CAAC,CAAC,EAAE,CAAC,EACxB,WAAW,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,EAC1B,KAAK,EAAE,SAAS,GAAG,IAAI,GACtB,SAAS,GAAG,IAAI,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,wBAAgB,KAAK,CAAC,CAAC,EAAE,CAAC,EACxB,WAAW,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,EAC1B,KAAK,EAAE,SAAS,GACf,SAAS,CAAC;AACb;;;;;;GAMG;AACH,wBAAgB,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,IAAI,GAAG,IAAI,CAAC;AAC3E;;;;;;GAMG;AACH,wBAAgB,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,CAAC;AACrE;;;;;;GAMG;AACH,wBAAgB,KAAK,CAAC,CAAC,EAAE,CAAC,EACxB,WAAW,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,EAC1B,KAAK,EAAE,CAAC,GAAG,SAAS,GACnB,CAAC,GAAG,SAAS,CAAC;AACjB;;;;;;GAMG;AACH,wBAAgB,KAAK,CAAC,CAAC,EAAE,CAAC,EACxB,WAAW,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,EAC1B,KAAK,EAAE,CAAC,GAAG,IAAI,GACd,CAAC,GAAG,IAAI,CAAC;AACZ;;;;;;GAMG;AACH,wBAAgB,KAAK,CAAC,CAAC,EAAE,CAAC,EACxB,WAAW,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,EAC1B,KAAK,EAAE,SAAS,GAAG,IAAI,GACtB,SAAS,GAAG,IAAI,CAAC;AAmBpB;;;;;;GAMG;AACH,wBAAsB,WAAW,CAAC,CAAC,EAAE,CAAC,EACpC,MAAM,EAAE,CAAC,EAAE,EACX,WAAW,EAAE,CACX,CAAC,EAAE,CAAC,EACJ,CAAC,EAAE,CAAC,KACD,OAAO,CAAC,CAAC,GAAG,SAAS,GAAG,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,SAAS,GAAG,IAAI,GAAG,IAAI,GACtE,OAAO,CAAC,CAAC,CAAC,CAAC;AACd;;;;;;;GAOG;AACH,wBAAsB,WAAW,CAAC,CAAC,EAAE,CAAC,EACpC,MAAM,EAAE,CAAC,EAAE,EACX,WAAW,EAAE,CACX,CAAC,EAAE,CAAC,EACJ,CAAC,EAAE,CAAC,KACD,OAAO,CAAC,CAAC,GAAG,SAAS,GAAG,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,SAAS,GAAG,IAAI,GAAG,IAAI,EACvE,IAAI,EAAE,CAAC,GACN,OAAO,CAAC,CAAC,CAAC,CAAC;AA0Bd,wBAAgB,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAEpD"}
@@ -1,6 +1,26 @@
1
+ /**
2
+ * A type safe way to apply a transformer on a value if it's not empty.
3
+ *
4
+ * @param transformer - The transformer.
5
+ * @param value - The value to be transformed.
6
+ * @returns If the value is empty, it remains its type. Otherwise it will be transformed.
7
+ */
1
8
  export function apply(transformer, value) {
2
9
  if (value == null) {
3
10
  return value;
4
11
  }
5
12
  return transformer(value);
6
13
  }
14
+ export async function reduceAsync(values, accumulator, init) {
15
+ if (init === undefined) {
16
+ if (values.length === 0) {
17
+ throw new TypeError("Reduce of empty array with no initial value");
18
+ }
19
+ init = values[0];
20
+ values = values.slice(1);
21
+ }
22
+ return values.reduce((current, b) => current.then((v) => Promise.resolve(accumulator(v, b)).then((r) => r ?? v)), Promise.resolve(init));
23
+ }
24
+ export function isWebview(userAgent) {
25
+ return /webview|wv|ip((?!.*Safari)|(?=.*like Safari))/i.test(userAgent);
26
+ }
@@ -17,9 +17,9 @@ import { type AddressLike } from "./index";
17
17
  * ```
18
18
  */
19
19
  export declare function addressPayloadFromString(address: string): {
20
- prefix: string;
21
- format: AddressFormat;
22
- payload: number[];
20
+ prefix: string;
21
+ format: AddressFormat;
22
+ payload: number[];
23
23
  };
24
24
  /**
25
25
  * Converts an address payload into an address-like object.
@@ -39,27 +39,32 @@ export declare function addressPayloadFromString(address: string): {
39
39
  * console.log(address.prefix); // Outputs the address prefix
40
40
  * ```
41
41
  */
42
- export declare function addressFromPayload(prefix: string, format: AddressFormat, payload: number[], client: Client): Promise<AddressLike>;
42
+ export declare function addressFromPayload(
43
+ prefix: string,
44
+ format: AddressFormat,
45
+ payload: number[],
46
+ client: Client,
47
+ ): Promise<AddressLike>;
43
48
  export declare enum AddressFormat {
44
- /**
45
- * full version identifies the hashType
46
- */
47
- Full = 0,
48
- /**
49
- * @deprecated
50
- * short version for locks with Known codeHash, deprecated
51
- */
52
- Short = 1,
53
- /**
54
- * @deprecated
55
- * full version with hashType = "Data", deprecated
56
- */
57
- FullData = 2,
58
- /**
59
- * @deprecated
60
- * full version with hashType = "Type", deprecated
61
- */
62
- FullType = 4
49
+ /**
50
+ * full version identifies the hashType
51
+ */
52
+ Full = 0,
53
+ /**
54
+ * @deprecated
55
+ * short version for locks with Known codeHash, deprecated
56
+ */
57
+ Short = 1,
58
+ /**
59
+ * @deprecated
60
+ * full version with hashType = "Data", deprecated
61
+ */
62
+ FullData = 2,
63
+ /**
64
+ * @deprecated
65
+ * full version with hashType = "Type", deprecated
66
+ */
67
+ FullType = 4,
63
68
  }
64
69
  export declare const ADDRESS_BECH32_LIMIT = 1023;
65
- //# sourceMappingURL=address.advanced.d.ts.map
70
+ //# sourceMappingURL=address.advanced.d.ts.map
@@ -1,6 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ADDRESS_BECH32_LIMIT = exports.AddressFormat = exports.addressFromPayload = exports.addressPayloadFromString = void 0;
3
+ exports.ADDRESS_BECH32_LIMIT =
4
+ exports.AddressFormat =
5
+ exports.addressFromPayload =
6
+ exports.addressPayloadFromString =
7
+ void 0;
4
8
  const bech32_1 = require("bech32");
5
9
  const ckb_1 = require("../ckb");
6
10
  const client_1 = require("../client");
@@ -22,27 +26,35 @@ const hex_1 = require("../hex");
22
26
  * ```
23
27
  */
24
28
  function addressPayloadFromString(address) {
25
- // Try parse full format address
26
- {
27
- const { words, prefix } = bech32_1.bech32m.decode(address, exports.ADDRESS_BECH32_LIMIT);
28
- const [formatType, ...payload] = bech32_1.bech32m.fromWords(words);
29
- if (formatType === AddressFormat.Full) {
30
- return { prefix, format: AddressFormat.Full, payload };
31
- }
29
+ // Try parse full format address
30
+ {
31
+ const { words, prefix } = bech32_1.bech32m.decode(
32
+ address,
33
+ exports.ADDRESS_BECH32_LIMIT,
34
+ );
35
+ const [formatType, ...payload] = bech32_1.bech32m.fromWords(words);
36
+ if (formatType === AddressFormat.Full) {
37
+ return { prefix, format: AddressFormat.Full, payload };
32
38
  }
33
- // Try parse legacy 2019 format address
34
- {
35
- const { prefix, words } = bech32_1.bech32.decode(address, exports.ADDRESS_BECH32_LIMIT);
36
- const [formatType, ...payload] = bech32_1.bech32.fromWords(words);
37
- if ([
38
- AddressFormat.FullData,
39
- AddressFormat.FullType,
40
- AddressFormat.Short,
41
- ].includes(formatType)) {
42
- return { prefix, format: formatType, payload };
43
- }
39
+ }
40
+ // Try parse legacy 2019 format address
41
+ {
42
+ const { prefix, words } = bech32_1.bech32.decode(
43
+ address,
44
+ exports.ADDRESS_BECH32_LIMIT,
45
+ );
46
+ const [formatType, ...payload] = bech32_1.bech32.fromWords(words);
47
+ if (
48
+ [
49
+ AddressFormat.FullData,
50
+ AddressFormat.FullType,
51
+ AddressFormat.Short,
52
+ ].includes(formatType)
53
+ ) {
54
+ return { prefix, format: formatType, payload };
44
55
  }
45
- throw Error(`Unknown address format ${address}`);
56
+ }
57
+ throw Error(`Unknown address format ${address}`);
46
58
  }
47
59
  exports.addressPayloadFromString = addressPayloadFromString;
48
60
  /**
@@ -64,86 +76,96 @@ exports.addressPayloadFromString = addressPayloadFromString;
64
76
  * ```
65
77
  */
66
78
  async function addressFromPayload(prefix, format, payload, client) {
67
- if (format === AddressFormat.Full) {
68
- if (payload.length < 32 + 1) {
69
- throw new Error(`Invalid full address without enough payload ${(0, hex_1.hexFrom)(payload)}`);
70
- }
71
- return {
72
- script: {
73
- codeHash: payload.slice(0, 32),
74
- hashType: (0, ckb_1.hashTypeFromBytes)(payload.slice(32, 33)),
75
- args: payload.slice(33),
76
- },
77
- prefix,
78
- };
79
+ if (format === AddressFormat.Full) {
80
+ if (payload.length < 32 + 1) {
81
+ throw new Error(
82
+ `Invalid full address without enough payload ${(0, hex_1.hexFrom)(payload)}`,
83
+ );
79
84
  }
80
- if (format === AddressFormat.FullData) {
81
- if (payload.length < 32) {
82
- throw new Error(`Invalid full data address without enough payload ${(0, hex_1.hexFrom)(payload)}`);
83
- }
84
- return {
85
- script: {
86
- codeHash: payload.slice(0, 32),
87
- hashType: "data",
88
- args: payload.slice(32),
89
- },
90
- prefix,
91
- };
92
- }
93
- if (format === AddressFormat.FullType) {
94
- if (payload.length < 32) {
95
- throw new Error(`Invalid full type address without enough payload ${(0, hex_1.hexFrom)(payload)}`);
96
- }
97
- return {
98
- script: {
99
- codeHash: payload.slice(0, 32),
100
- hashType: "type",
101
- args: payload.slice(32),
102
- },
103
- prefix,
104
- };
105
- }
106
- // format === AddressFormat.Short
107
- if (payload.length !== 21) {
108
- throw new Error(`Invalid short address without enough payload ${(0, hex_1.hexFrom)(payload)}`);
85
+ return {
86
+ script: {
87
+ codeHash: payload.slice(0, 32),
88
+ hashType: (0, ckb_1.hashTypeFromBytes)(payload.slice(32, 33)),
89
+ args: payload.slice(33),
90
+ },
91
+ prefix,
92
+ };
93
+ }
94
+ if (format === AddressFormat.FullData) {
95
+ if (payload.length < 32) {
96
+ throw new Error(
97
+ `Invalid full data address without enough payload ${(0, hex_1.hexFrom)(payload)}`,
98
+ );
109
99
  }
110
- const script = [
111
- client_1.KnownScript.Secp256k1Blake160,
112
- client_1.KnownScript.Secp256k1Multisig,
113
- client_1.KnownScript.AnyoneCanPay,
114
- ][payload[0]];
115
- if (script === undefined) {
116
- throw new Error(`Invalid short address with unknown script ${(0, hex_1.hexFrom)(payload)}`);
100
+ return {
101
+ script: {
102
+ codeHash: payload.slice(0, 32),
103
+ hashType: "data",
104
+ args: payload.slice(32),
105
+ },
106
+ prefix,
107
+ };
108
+ }
109
+ if (format === AddressFormat.FullType) {
110
+ if (payload.length < 32) {
111
+ throw new Error(
112
+ `Invalid full type address without enough payload ${(0, hex_1.hexFrom)(payload)}`,
113
+ );
117
114
  }
118
115
  return {
119
- script: {
120
- ...(await client.getKnownScript(script)),
121
- args: payload.slice(1),
122
- },
123
- prefix,
116
+ script: {
117
+ codeHash: payload.slice(0, 32),
118
+ hashType: "type",
119
+ args: payload.slice(32),
120
+ },
121
+ prefix,
124
122
  };
123
+ }
124
+ // format === AddressFormat.Short
125
+ if (payload.length !== 21) {
126
+ throw new Error(
127
+ `Invalid short address without enough payload ${(0, hex_1.hexFrom)(payload)}`,
128
+ );
129
+ }
130
+ const script = [
131
+ client_1.KnownScript.Secp256k1Blake160,
132
+ client_1.KnownScript.Secp256k1Multisig,
133
+ client_1.KnownScript.AnyoneCanPay,
134
+ ][payload[0]];
135
+ if (script === undefined) {
136
+ throw new Error(
137
+ `Invalid short address with unknown script ${(0, hex_1.hexFrom)(payload)}`,
138
+ );
139
+ }
140
+ return {
141
+ script: {
142
+ ...(await client.getKnownScript(script)),
143
+ args: payload.slice(1),
144
+ },
145
+ prefix,
146
+ };
125
147
  }
126
148
  exports.addressFromPayload = addressFromPayload;
127
149
  var AddressFormat;
128
150
  (function (AddressFormat) {
129
- /**
130
- * full version identifies the hashType
131
- */
132
- AddressFormat[AddressFormat["Full"] = 0] = "Full";
133
- /**
134
- * @deprecated
135
- * short version for locks with Known codeHash, deprecated
136
- */
137
- AddressFormat[AddressFormat["Short"] = 1] = "Short";
138
- /**
139
- * @deprecated
140
- * full version with hashType = "Data", deprecated
141
- */
142
- AddressFormat[AddressFormat["FullData"] = 2] = "FullData";
143
- /**
144
- * @deprecated
145
- * full version with hashType = "Type", deprecated
146
- */
147
- AddressFormat[AddressFormat["FullType"] = 4] = "FullType";
151
+ /**
152
+ * full version identifies the hashType
153
+ */
154
+ AddressFormat[(AddressFormat["Full"] = 0)] = "Full";
155
+ /**
156
+ * @deprecated
157
+ * short version for locks with Known codeHash, deprecated
158
+ */
159
+ AddressFormat[(AddressFormat["Short"] = 1)] = "Short";
160
+ /**
161
+ * @deprecated
162
+ * full version with hashType = "Data", deprecated
163
+ */
164
+ AddressFormat[(AddressFormat["FullData"] = 2)] = "FullData";
165
+ /**
166
+ * @deprecated
167
+ * full version with hashType = "Type", deprecated
168
+ */
169
+ AddressFormat[(AddressFormat["FullType"] = 4)] = "FullType";
148
170
  })(AddressFormat || (exports.AddressFormat = AddressFormat = {}));
149
171
  exports.ADDRESS_BECH32_LIMIT = 1023;
@@ -1,2 +1,2 @@
1
1
  export * from "./address.advanced";
2
- //# sourceMappingURL=advanced.d.ts.map
2
+ //# sourceMappingURL=advanced.d.ts.map
@@ -1,17 +1,33 @@
1
1
  "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
2
+ var __createBinding =
3
+ (this && this.__createBinding) ||
4
+ (Object.create
5
+ ? function (o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ var desc = Object.getOwnPropertyDescriptor(m, k);
8
+ if (
9
+ !desc ||
10
+ ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)
11
+ ) {
12
+ desc = {
13
+ enumerable: true,
14
+ get: function () {
15
+ return m[k];
16
+ },
17
+ };
18
+ }
19
+ Object.defineProperty(o, k2, desc);
20
+ }
21
+ : function (o, m, k, k2) {
22
+ if (k2 === undefined) k2 = k;
23
+ o[k2] = m[k];
24
+ });
25
+ var __exportStar =
26
+ (this && this.__exportStar) ||
27
+ function (m, exports) {
28
+ for (var p in m)
29
+ if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p))
30
+ __createBinding(exports, m, p);
31
+ };
16
32
  Object.defineProperty(exports, "__esModule", { value: true });
17
33
  __exportStar(require("./address.advanced"), exports);
@@ -2,53 +2,60 @@ import { Script, ScriptLike } from "../ckb";
2
2
  import { Client, KnownScript } from "../client";
3
3
  import { HexLike } from "../hex";
4
4
  export type AddressLike = {
5
- script: ScriptLike;
6
- prefix: string;
5
+ script: ScriptLike;
6
+ prefix: string;
7
7
  };
8
8
  /**
9
9
  * Represents a ckb address with associated script and prefix.
10
10
  */
11
11
  export declare class Address {
12
- script: Script;
13
- prefix: string;
14
- /**
15
- * Creates an instance of Address.
16
- *
17
- * @param script - The script associated with the address.
18
- * @param prefix - The address prefix.
19
- */
20
- constructor(script: Script, prefix: string);
21
- /**
22
- * Creates an Address instance from an AddressLike object.
23
- *
24
- * @param address - An AddressLike object or an instance of Address.
25
- * @returns An Address instance.
26
- */
27
- static from(address: AddressLike): Address;
28
- /**
29
- * Creates an Address instance from an address string.
30
- *
31
- * @param address - The address string to parse.
32
- * @param clients - A Client instance or a record of Client instances keyed by prefix.
33
- * @returns A promise that resolves to an Address instance.
34
- *
35
- * @throws Will throw an error if the address prefix is unknown or mismatched.
36
- */
37
- static fromString(address: string, clients: Client | Record<string, Client>): Promise<Address>;
38
- /**
39
- * Creates an Address instance from a script and client.
40
- *
41
- * @param script - The script-like object.
42
- * @param client - The client instance used to fetch the address prefix.
43
- * @returns A promise that resolves to an Address instance.
44
- */
45
- static fromScript(script: ScriptLike, client: Client): Promise<Address>;
46
- static fromKnownScript(script: KnownScript, args: HexLike, client: Client): Promise<Address>;
47
- /**
48
- * Converts the Address instance to a string.
49
- *
50
- * @returns The address as a string.
51
- */
52
- toString(): string;
12
+ script: Script;
13
+ prefix: string;
14
+ /**
15
+ * Creates an instance of Address.
16
+ *
17
+ * @param script - The script associated with the address.
18
+ * @param prefix - The address prefix.
19
+ */
20
+ constructor(script: Script, prefix: string);
21
+ /**
22
+ * Creates an Address instance from an AddressLike object.
23
+ *
24
+ * @param address - An AddressLike object or an instance of Address.
25
+ * @returns An Address instance.
26
+ */
27
+ static from(address: AddressLike): Address;
28
+ /**
29
+ * Creates an Address instance from an address string.
30
+ *
31
+ * @param address - The address string to parse.
32
+ * @param clients - A Client instance or a record of Client instances keyed by prefix.
33
+ * @returns A promise that resolves to an Address instance.
34
+ *
35
+ * @throws Will throw an error if the address prefix is unknown or mismatched.
36
+ */
37
+ static fromString(
38
+ address: string,
39
+ clients: Client | Record<string, Client>,
40
+ ): Promise<Address>;
41
+ /**
42
+ * Creates an Address instance from a script and client.
43
+ *
44
+ * @param script - The script-like object.
45
+ * @param client - The client instance used to fetch the address prefix.
46
+ * @returns A promise that resolves to an Address instance.
47
+ */
48
+ static fromScript(script: ScriptLike, client: Client): Address;
49
+ static fromKnownScript(
50
+ script: KnownScript,
51
+ args: HexLike,
52
+ client: Client,
53
+ ): Promise<Address>;
54
+ /**
55
+ * Converts the Address instance to a string.
56
+ *
57
+ * @returns The address as a string.
58
+ */
59
+ toString(): string;
53
60
  }
54
- //# sourceMappingURL=index.d.ts.map
61
+ //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/address/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAmB,MAAM,QAAQ,CAAC;AAC7D,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAChD,OAAO,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAQjC,MAAM,MAAM,WAAW,GAAG;IACxB,MAAM,EAAE,UAAU,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF;;GAEG;AAEH,qBAAa,OAAO;IAQT,MAAM,EAAE,MAAM;IACd,MAAM,EAAE,MAAM;IARvB;;;;;OAKG;gBAEM,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM;IAGvB;;;;;OAKG;IAEH,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO;IAQ1C;;;;;;;;OAQG;WAEU,UAAU,CACrB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GACvC,OAAO,CAAC,OAAO,CAAC;IAmBnB;;;;;;OAMG;WAEU,UAAU,CACrB,MAAM,EAAE,UAAU,EAClB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,OAAO,CAAC;WAIN,eAAe,CAC1B,MAAM,EAAE,WAAW,EACnB,IAAI,EAAE,OAAO,EACb,MAAM,EAAE,MAAM;IAWhB;;;;OAIG;IAEH,QAAQ,IAAI,MAAM;CAcnB"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/address/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAmB,MAAM,QAAQ,CAAC;AAC7D,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAChD,OAAO,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAQjC,MAAM,MAAM,WAAW,GAAG;IACxB,MAAM,EAAE,UAAU,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF;;GAEG;AAEH,qBAAa,OAAO;IAQT,MAAM,EAAE,MAAM;IACd,MAAM,EAAE,MAAM;IARvB;;;;;OAKG;gBAEM,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM;IAGvB;;;;;OAKG;IAEH,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO;IAQ1C;;;;;;;;OAQG;WAEU,UAAU,CACrB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GACvC,OAAO,CAAC,OAAO,CAAC;IAmBnB;;;;;;OAMG;IAEH,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO;WAIjD,eAAe,CAC1B,MAAM,EAAE,WAAW,EACnB,IAAI,EAAE,OAAO,EACb,MAAM,EAAE,MAAM;IAWhB;;;;OAIG;IAEH,QAAQ,IAAI,MAAM;CAcnB"}