@helios-lang/effect 0.1.15 → 0.3.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.
Files changed (399) hide show
  1. package/dist/Cardano/CoinSelection.js +130 -0
  2. package/dist/Cardano/CoinSelection.js.map +1 -0
  3. package/dist/{Ledger → Cardano/Ledger}/Address.js +31 -21
  4. package/dist/Cardano/Ledger/Address.js.map +1 -0
  5. package/dist/{Ledger → Cardano/Ledger}/AssetClass.js +16 -11
  6. package/dist/Cardano/Ledger/AssetClass.js.map +1 -0
  7. package/dist/Cardano/Ledger/Assets.js +235 -0
  8. package/dist/Cardano/Ledger/Assets.js.map +1 -0
  9. package/dist/Cardano/Ledger/Credential.js +53 -0
  10. package/dist/Cardano/Ledger/Credential.js.map +1 -0
  11. package/dist/Cardano/Ledger/DCert.js +117 -0
  12. package/dist/Cardano/Ledger/DCert.js.map +1 -0
  13. package/dist/Cardano/Ledger/DatumHash.js +25 -0
  14. package/dist/Cardano/Ledger/DatumHash.js.map +1 -0
  15. package/dist/Cardano/Ledger/MintingPolicy.js +40 -0
  16. package/dist/Cardano/Ledger/MintingPolicy.js.map +1 -0
  17. package/dist/Cardano/Ledger/NativeScript.js +140 -0
  18. package/dist/Cardano/Ledger/NativeScript.js.map +1 -0
  19. package/dist/Cardano/Ledger/PubKey.js +24 -0
  20. package/dist/Cardano/Ledger/PubKey.js.map +1 -0
  21. package/dist/{Ledger → Cardano/Ledger}/PubKeyHash.js +5 -5
  22. package/dist/Cardano/Ledger/PubKeyHash.js.map +1 -0
  23. package/dist/Cardano/Ledger/Redeemer.js +155 -0
  24. package/dist/Cardano/Ledger/Redeemer.js.map +1 -0
  25. package/dist/Cardano/Ledger/RewardAddress.js +93 -0
  26. package/dist/Cardano/Ledger/RewardAddress.js.map +1 -0
  27. package/dist/Cardano/Ledger/Signature.js +23 -0
  28. package/dist/Cardano/Ledger/Signature.js.map +1 -0
  29. package/dist/Cardano/Ledger/Tx.js +498 -0
  30. package/dist/Cardano/Ledger/Tx.js.map +1 -0
  31. package/dist/Cardano/Ledger/TxHash.js +38 -0
  32. package/dist/Cardano/Ledger/TxHash.js.map +1 -0
  33. package/dist/Cardano/Ledger/TxOutput.js +167 -0
  34. package/dist/Cardano/Ledger/TxOutput.js.map +1 -0
  35. package/dist/{Ledger → Cardano/Ledger}/TxOutputDatum.js +44 -8
  36. package/dist/Cardano/Ledger/TxOutputDatum.js.map +1 -0
  37. package/dist/Cardano/Ledger/UTxO.js +100 -0
  38. package/dist/Cardano/Ledger/UTxO.js.map +1 -0
  39. package/dist/{Ledger → Cardano/Ledger}/UTxORef.js +28 -6
  40. package/dist/Cardano/Ledger/UTxORef.js.map +1 -0
  41. package/dist/{Ledger → Cardano/Ledger}/ValidatorHash.js +5 -5
  42. package/dist/Cardano/Ledger/ValidatorHash.js.map +1 -0
  43. package/dist/{Ledger → Cardano/Ledger}/index.js +6 -0
  44. package/dist/Cardano/Ledger/index.js.map +1 -0
  45. package/dist/Cardano/Network/IsMainnet.js.map +1 -0
  46. package/dist/{Network → Cardano/Network}/Params.js +27 -3
  47. package/dist/Cardano/Network/Params.js.map +1 -0
  48. package/dist/Cardano/Network/UTxO.js +20 -0
  49. package/dist/Cardano/Network/UTxO.js.map +1 -0
  50. package/dist/Cardano/Network/UTxOsAt.js +4 -0
  51. package/dist/Cardano/Network/UTxOsAt.js.map +1 -0
  52. package/dist/Cardano/Network/errors.js +33 -0
  53. package/dist/Cardano/Network/errors.js.map +1 -0
  54. package/dist/{Network → Cardano/Network}/index.js +1 -0
  55. package/dist/Cardano/Network/index.js.map +1 -0
  56. package/dist/Cardano/TxBuilder.js +963 -0
  57. package/dist/Cardano/TxBuilder.js.map +1 -0
  58. package/dist/Cardano/Uplc/Builtins.js +1820 -0
  59. package/dist/Cardano/Uplc/Builtins.js.map +1 -0
  60. package/dist/Cardano/Uplc/Cek.js +716 -0
  61. package/dist/Cardano/Uplc/Cek.js.map +1 -0
  62. package/dist/Cardano/Uplc/Cost.js +956 -0
  63. package/dist/Cardano/Uplc/Cost.js.map +1 -0
  64. package/dist/{Uplc → Cardano/Uplc}/Data.js +143 -22
  65. package/dist/Cardano/Uplc/Data.js.map +1 -0
  66. package/dist/Cardano/Uplc/Script.js +118 -0
  67. package/dist/Cardano/Uplc/Script.js.map +1 -0
  68. package/dist/Cardano/Uplc/ScriptContext.js +259 -0
  69. package/dist/Cardano/Uplc/ScriptContext.js.map +1 -0
  70. package/dist/Cardano/Uplc/Term.js +384 -0
  71. package/dist/Cardano/Uplc/Term.js.map +1 -0
  72. package/dist/Cardano/Uplc/Type.js +131 -0
  73. package/dist/Cardano/Uplc/Type.js.map +1 -0
  74. package/dist/Cardano/Uplc/Value.js +315 -0
  75. package/dist/Cardano/Uplc/Value.js.map +1 -0
  76. package/dist/Cardano/Uplc/index.js +7 -0
  77. package/dist/Cardano/Uplc/index.js.map +1 -0
  78. package/dist/Cardano/Wallet.js +48 -0
  79. package/dist/Cardano/Wallet.js.map +1 -0
  80. package/dist/Cardano/index.js +7 -0
  81. package/dist/Cardano/index.js.map +1 -0
  82. package/dist/{internal → Codecs}/Base32.js +2 -2
  83. package/dist/Codecs/Base32.js.map +1 -0
  84. package/dist/{Bech32.js → Codecs/Bech32.js} +2 -2
  85. package/dist/Codecs/Bech32.js.map +1 -0
  86. package/dist/Codecs/BigEndian.js.map +1 -0
  87. package/dist/Codecs/Bits.js.map +1 -0
  88. package/dist/{internal → Codecs}/Bytes.js +23 -12
  89. package/dist/Codecs/Bytes.js.map +1 -0
  90. package/dist/{Cbor.js → Codecs/Cbor.js} +559 -328
  91. package/dist/Codecs/Cbor.js.map +1 -0
  92. package/dist/{internal → Codecs}/Flat.js +16 -0
  93. package/dist/Codecs/Flat.js.map +1 -0
  94. package/dist/Codecs/Float.js.map +1 -0
  95. package/dist/Codecs/LittleEndian.js +31 -0
  96. package/dist/Codecs/LittleEndian.js.map +1 -0
  97. package/dist/Codecs/Uint64.js +89 -0
  98. package/dist/Codecs/Uint64.js.map +1 -0
  99. package/dist/{internal → Codecs}/Utf8.js +7 -2
  100. package/dist/Codecs/Utf8.js.map +1 -0
  101. package/dist/Codecs/ZigZag.js +26 -0
  102. package/dist/Codecs/ZigZag.js.map +1 -0
  103. package/dist/Codecs/index.js +8 -0
  104. package/dist/Codecs/index.js.map +1 -0
  105. package/dist/Crypto/Bip32.js +131 -0
  106. package/dist/Crypto/Bip32.js.map +1 -0
  107. package/dist/Crypto/Bip39.js +2176 -0
  108. package/dist/Crypto/Bip39.js.map +1 -0
  109. package/dist/Crypto/Blake2b.js +156 -0
  110. package/dist/Crypto/Blake2b.js.map +1 -0
  111. package/dist/Crypto/Curve.js +92 -0
  112. package/dist/Crypto/Curve.js.map +1 -0
  113. package/dist/Crypto/Ed25519.js +323 -0
  114. package/dist/Crypto/Ed25519.js.map +1 -0
  115. package/dist/Crypto/EdDSA.js +222 -0
  116. package/dist/Crypto/EdDSA.js.map +1 -0
  117. package/dist/Crypto/Field.js +323 -0
  118. package/dist/Crypto/Field.js.map +1 -0
  119. package/dist/Crypto/Hmac.js +51 -0
  120. package/dist/Crypto/Hmac.js.map +1 -0
  121. package/dist/Crypto/Keccak.js +167 -0
  122. package/dist/Crypto/Keccak.js.map +1 -0
  123. package/dist/Crypto/Pbkdf2.js +45 -0
  124. package/dist/Crypto/Pbkdf2.js.map +1 -0
  125. package/dist/Crypto/Sha2_256.js +200 -0
  126. package/dist/Crypto/Sha2_256.js.map +1 -0
  127. package/dist/Crypto/Sha2_512.js +264 -0
  128. package/dist/Crypto/Sha2_512.js.map +1 -0
  129. package/dist/Crypto/Sha3_256.js +10 -0
  130. package/dist/Crypto/Sha3_256.js.map +1 -0
  131. package/dist/Crypto/errors.js +9 -0
  132. package/dist/Crypto/errors.js.map +1 -0
  133. package/dist/Crypto/index.js +12 -0
  134. package/dist/Crypto/index.js.map +1 -0
  135. package/dist/index.js +3 -5
  136. package/dist/index.js.map +1 -1
  137. package/package.json +24 -6
  138. package/tsconfig.build.json +1 -1
  139. package/types/Cardano/CoinSelection.d.ts +26 -0
  140. package/types/Cardano/CoinSelection.d.ts.map +1 -0
  141. package/types/{Ledger → Cardano/Ledger}/Address.d.ts +8 -7
  142. package/types/Cardano/Ledger/Address.d.ts.map +1 -0
  143. package/types/{Ledger → Cardano/Ledger}/AssetClass.d.ts +2 -2
  144. package/types/Cardano/Ledger/AssetClass.d.ts.map +1 -0
  145. package/types/Cardano/Ledger/Assets.d.ts +114 -0
  146. package/types/Cardano/Ledger/Assets.d.ts.map +1 -0
  147. package/types/{Ledger → Cardano/Ledger}/Credential.d.ts +10 -4
  148. package/types/Cardano/Ledger/Credential.d.ts.map +1 -0
  149. package/types/Cardano/Ledger/DCert.d.ts +40 -0
  150. package/types/Cardano/Ledger/DCert.d.ts.map +1 -0
  151. package/types/{Ledger → Cardano/Ledger}/DatumHash.d.ts +6 -5
  152. package/types/Cardano/Ledger/DatumHash.d.ts.map +1 -0
  153. package/types/{Ledger → Cardano/Ledger}/MintingPolicy.d.ts +11 -8
  154. package/types/Cardano/Ledger/MintingPolicy.d.ts.map +1 -0
  155. package/types/Cardano/Ledger/NativeScript.d.ts +105 -0
  156. package/types/Cardano/Ledger/NativeScript.d.ts.map +1 -0
  157. package/types/Cardano/Ledger/PubKey.d.ts +45 -0
  158. package/types/Cardano/Ledger/PubKey.d.ts.map +1 -0
  159. package/types/{Ledger → Cardano/Ledger}/PubKeyHash.d.ts +5 -5
  160. package/types/Cardano/Ledger/PubKeyHash.d.ts.map +1 -0
  161. package/types/Cardano/Ledger/Redeemer.d.ts +303 -0
  162. package/types/Cardano/Ledger/Redeemer.d.ts.map +1 -0
  163. package/types/Cardano/Ledger/RewardAddress.d.ts +60 -0
  164. package/types/Cardano/Ledger/RewardAddress.d.ts.map +1 -0
  165. package/types/Cardano/Ledger/Signature.d.ts +13 -0
  166. package/types/Cardano/Ledger/Signature.d.ts.map +1 -0
  167. package/types/Cardano/Ledger/Tx.d.ts +375 -0
  168. package/types/Cardano/Ledger/Tx.d.ts.map +1 -0
  169. package/types/{Ledger → Cardano/Ledger}/TxHash.d.ts +35 -5
  170. package/types/Cardano/Ledger/TxHash.d.ts.map +1 -0
  171. package/types/Cardano/Ledger/TxOutput.d.ts +438 -0
  172. package/types/Cardano/Ledger/TxOutput.d.ts.map +1 -0
  173. package/types/Cardano/Ledger/TxOutputDatum.d.ts +98 -0
  174. package/types/Cardano/Ledger/TxOutputDatum.d.ts.map +1 -0
  175. package/types/Cardano/Ledger/UTxO.d.ts +1420 -0
  176. package/types/Cardano/Ledger/UTxO.d.ts.map +1 -0
  177. package/types/Cardano/Ledger/UTxORef.d.ts +222 -0
  178. package/types/Cardano/Ledger/UTxORef.d.ts.map +1 -0
  179. package/types/{Ledger → Cardano/Ledger}/ValidatorHash.d.ts +5 -5
  180. package/types/Cardano/Ledger/ValidatorHash.d.ts.map +1 -0
  181. package/types/{Ledger → Cardano/Ledger}/index.d.ts +6 -0
  182. package/types/Cardano/Ledger/index.d.ts.map +1 -0
  183. package/types/Cardano/Network/IsMainnet.d.ts.map +1 -0
  184. package/types/{Network → Cardano/Network}/Params.d.ts +32 -4
  185. package/types/Cardano/Network/Params.d.ts.map +1 -0
  186. package/types/Cardano/Network/UTxO.d.ts +15 -0
  187. package/types/Cardano/Network/UTxO.d.ts.map +1 -0
  188. package/types/Cardano/Network/UTxOsAt.d.ts +9 -0
  189. package/types/Cardano/Network/UTxOsAt.d.ts.map +1 -0
  190. package/types/Cardano/Network/errors.d.ts +39 -0
  191. package/types/Cardano/Network/errors.d.ts.map +1 -0
  192. package/types/{Network → Cardano/Network}/index.d.ts +1 -0
  193. package/types/Cardano/Network/index.d.ts.map +1 -0
  194. package/types/Cardano/TxBuilder.d.ts +232 -0
  195. package/types/Cardano/TxBuilder.d.ts.map +1 -0
  196. package/types/Cardano/Uplc/Builtins.d.ts +163 -0
  197. package/types/Cardano/Uplc/Builtins.d.ts.map +1 -0
  198. package/types/Cardano/Uplc/Cek.d.ts +165 -0
  199. package/types/Cardano/Uplc/Cek.d.ts.map +1 -0
  200. package/types/Cardano/Uplc/Cost.d.ts +93 -0
  201. package/types/Cardano/Uplc/Cost.d.ts.map +1 -0
  202. package/types/{Uplc → Cardano/Uplc}/Data.d.ts +149 -15
  203. package/types/Cardano/Uplc/Data.d.ts.map +1 -0
  204. package/types/Cardano/Uplc/Script.d.ts +87 -0
  205. package/types/Cardano/Uplc/Script.d.ts.map +1 -0
  206. package/types/Cardano/Uplc/ScriptContext.d.ts +21 -0
  207. package/types/Cardano/Uplc/ScriptContext.d.ts.map +1 -0
  208. package/types/Cardano/Uplc/Term.d.ts +454 -0
  209. package/types/Cardano/Uplc/Term.d.ts.map +1 -0
  210. package/types/Cardano/Uplc/Type.d.ts +29 -0
  211. package/types/Cardano/Uplc/Type.d.ts.map +1 -0
  212. package/types/Cardano/Uplc/Value.d.ts +152 -0
  213. package/types/Cardano/Uplc/Value.d.ts.map +1 -0
  214. package/types/Cardano/Uplc/index.d.ts +7 -0
  215. package/types/Cardano/Uplc/index.d.ts.map +1 -0
  216. package/types/Cardano/Wallet.d.ts +73 -0
  217. package/types/Cardano/Wallet.d.ts.map +1 -0
  218. package/types/Cardano/index.d.ts +7 -0
  219. package/types/Cardano/index.d.ts.map +1 -0
  220. package/types/Codecs/Base32.d.ts.map +1 -0
  221. package/types/Codecs/Bech32.d.ts.map +1 -0
  222. package/types/Codecs/BigEndian.d.ts.map +1 -0
  223. package/types/Codecs/Bits.d.ts.map +1 -0
  224. package/types/{internal → Codecs}/Bytes.d.ts +7 -6
  225. package/types/Codecs/Bytes.d.ts.map +1 -0
  226. package/types/{Cbor.d.ts → Codecs/Cbor.d.ts} +77 -55
  227. package/types/Codecs/Cbor.d.ts.map +1 -0
  228. package/types/{internal → Codecs}/Flat.d.ts +2 -0
  229. package/types/Codecs/Flat.d.ts.map +1 -0
  230. package/types/Codecs/Float.d.ts.map +1 -0
  231. package/types/Codecs/LittleEndian.d.ts +19 -0
  232. package/types/Codecs/LittleEndian.d.ts.map +1 -0
  233. package/types/Codecs/Uint64.d.ts +16 -0
  234. package/types/Codecs/Uint64.d.ts.map +1 -0
  235. package/types/{internal → Codecs}/Utf8.d.ts +2 -2
  236. package/types/Codecs/Utf8.d.ts.map +1 -0
  237. package/types/Codecs/ZigZag.d.ts +3 -0
  238. package/types/Codecs/ZigZag.d.ts.map +1 -0
  239. package/types/Codecs/index.d.ts +8 -0
  240. package/types/Codecs/index.d.ts.map +1 -0
  241. package/types/Crypto/Bip32.d.ts +29 -0
  242. package/types/Crypto/Bip32.d.ts.map +1 -0
  243. package/types/Crypto/Bip39.d.ts +43 -0
  244. package/types/Crypto/Bip39.d.ts.map +1 -0
  245. package/types/Crypto/Blake2b.d.ts +16 -0
  246. package/types/Crypto/Blake2b.d.ts.map +1 -0
  247. package/types/Crypto/Curve.d.ts +161 -0
  248. package/types/Crypto/Curve.d.ts.map +1 -0
  249. package/types/Crypto/Ed25519.d.ts +155 -0
  250. package/types/Crypto/Ed25519.d.ts.map +1 -0
  251. package/types/Crypto/EdDSA.d.ts +159 -0
  252. package/types/Crypto/EdDSA.d.ts.map +1 -0
  253. package/types/Crypto/Field.d.ts +273 -0
  254. package/types/Crypto/Field.d.ts.map +1 -0
  255. package/types/Crypto/Hmac.d.ts +20 -0
  256. package/types/Crypto/Hmac.d.ts.map +1 -0
  257. package/types/Crypto/Keccak.d.ts +16 -0
  258. package/types/Crypto/Keccak.d.ts.map +1 -0
  259. package/types/Crypto/Pbkdf2.d.ts +15 -0
  260. package/types/Crypto/Pbkdf2.d.ts.map +1 -0
  261. package/types/Crypto/Sha2_256.d.ts +36 -0
  262. package/types/Crypto/Sha2_256.d.ts.map +1 -0
  263. package/types/Crypto/Sha2_512.d.ts +31 -0
  264. package/types/Crypto/Sha2_512.d.ts.map +1 -0
  265. package/types/Crypto/Sha3_256.d.ts +8 -0
  266. package/types/Crypto/Sha3_256.d.ts.map +1 -0
  267. package/types/Crypto/errors.d.ts +10 -0
  268. package/types/Crypto/errors.d.ts.map +1 -0
  269. package/types/Crypto/index.d.ts +12 -0
  270. package/types/Crypto/index.d.ts.map +1 -0
  271. package/types/index.d.ts +3 -5
  272. package/types/index.d.ts.map +1 -1
  273. package/dist/Address.js +0 -13
  274. package/dist/Address.js.map +0 -1
  275. package/dist/Bech32.js.map +0 -1
  276. package/dist/Cbor.js.map +0 -1
  277. package/dist/Ledger/Address.js.map +0 -1
  278. package/dist/Ledger/AssetClass.js.map +0 -1
  279. package/dist/Ledger/Assets.js +0 -120
  280. package/dist/Ledger/Assets.js.map +0 -1
  281. package/dist/Ledger/Credential.js +0 -17
  282. package/dist/Ledger/Credential.js.map +0 -1
  283. package/dist/Ledger/DatumHash.js +0 -21
  284. package/dist/Ledger/DatumHash.js.map +0 -1
  285. package/dist/Ledger/IsMainnet.js +0 -4
  286. package/dist/Ledger/IsMainnet.js.map +0 -1
  287. package/dist/Ledger/MintingPolicy.js +0 -45
  288. package/dist/Ledger/MintingPolicy.js.map +0 -1
  289. package/dist/Ledger/NetworkParams.js +0 -40
  290. package/dist/Ledger/NetworkParams.js.map +0 -1
  291. package/dist/Ledger/PubKeyHash.js.map +0 -1
  292. package/dist/Ledger/TxHash.js +0 -23
  293. package/dist/Ledger/TxHash.js.map +0 -1
  294. package/dist/Ledger/TxId.js +0 -23
  295. package/dist/Ledger/TxId.js.map +0 -1
  296. package/dist/Ledger/TxInput.js +0 -51
  297. package/dist/Ledger/TxInput.js.map +0 -1
  298. package/dist/Ledger/TxOutput.js +0 -118
  299. package/dist/Ledger/TxOutput.js.map +0 -1
  300. package/dist/Ledger/TxOutputDatum.js.map +0 -1
  301. package/dist/Ledger/TxOutputId.js +0 -55
  302. package/dist/Ledger/TxOutputId.js.map +0 -1
  303. package/dist/Ledger/UTxO.js +0 -43
  304. package/dist/Ledger/UTxO.js.map +0 -1
  305. package/dist/Ledger/UTxORef.js.map +0 -1
  306. package/dist/Ledger/ValidatorHash.js.map +0 -1
  307. package/dist/Ledger/index.js.map +0 -1
  308. package/dist/Network/IsMainnet.js.map +0 -1
  309. package/dist/Network/Params.js.map +0 -1
  310. package/dist/Network/UTxOsAt.js +0 -4
  311. package/dist/Network/UTxOsAt.js.map +0 -1
  312. package/dist/Network/errors.js +0 -16
  313. package/dist/Network/errors.js.map +0 -1
  314. package/dist/Network/index.js.map +0 -1
  315. package/dist/Uplc/Cek.js +0 -3
  316. package/dist/Uplc/Cek.js.map +0 -1
  317. package/dist/Uplc/Data.js.map +0 -1
  318. package/dist/Uplc/DataSchema.js +0 -118
  319. package/dist/Uplc/DataSchema.js.map +0 -1
  320. package/dist/Uplc/Primitive.js +0 -23
  321. package/dist/Uplc/Primitive.js.map +0 -1
  322. package/dist/Uplc/index.js +0 -3
  323. package/dist/Uplc/index.js.map +0 -1
  324. package/dist/internal/Base32.js.map +0 -1
  325. package/dist/internal/BigEndian.js.map +0 -1
  326. package/dist/internal/Bits.js.map +0 -1
  327. package/dist/internal/Bytes.js.map +0 -1
  328. package/dist/internal/Flat.js.map +0 -1
  329. package/dist/internal/Float.js.map +0 -1
  330. package/dist/internal/Utf8.js.map +0 -1
  331. package/tsconfig.build.tsbuildinfo +0 -1
  332. package/tsconfig.check.tsbuildinfo +0 -1
  333. package/tsconfig.tsbuildinfo +0 -1
  334. package/types/Address.d.ts +0 -5
  335. package/types/Address.d.ts.map +0 -1
  336. package/types/Bech32.d.ts.map +0 -1
  337. package/types/Cbor.d.ts.map +0 -1
  338. package/types/Ledger/Address.d.ts.map +0 -1
  339. package/types/Ledger/AssetClass.d.ts.map +0 -1
  340. package/types/Ledger/Assets.d.ts +0 -70
  341. package/types/Ledger/Assets.d.ts.map +0 -1
  342. package/types/Ledger/Credential.d.ts.map +0 -1
  343. package/types/Ledger/DatumHash.d.ts.map +0 -1
  344. package/types/Ledger/IsMainnet.d.ts +0 -6
  345. package/types/Ledger/IsMainnet.d.ts.map +0 -1
  346. package/types/Ledger/MintingPolicy.d.ts.map +0 -1
  347. package/types/Ledger/NetworkParams.d.ts +0 -40
  348. package/types/Ledger/NetworkParams.d.ts.map +0 -1
  349. package/types/Ledger/PubKeyHash.d.ts.map +0 -1
  350. package/types/Ledger/TxHash.d.ts.map +0 -1
  351. package/types/Ledger/TxId.d.ts +0 -70
  352. package/types/Ledger/TxId.d.ts.map +0 -1
  353. package/types/Ledger/TxInput.d.ts +0 -55
  354. package/types/Ledger/TxInput.d.ts.map +0 -1
  355. package/types/Ledger/TxOutput.d.ts +0 -63
  356. package/types/Ledger/TxOutput.d.ts.map +0 -1
  357. package/types/Ledger/TxOutputDatum.d.ts +0 -41
  358. package/types/Ledger/TxOutputDatum.d.ts.map +0 -1
  359. package/types/Ledger/TxOutputId.d.ts +0 -133
  360. package/types/Ledger/TxOutputId.d.ts.map +0 -1
  361. package/types/Ledger/UTxO.d.ts +0 -55
  362. package/types/Ledger/UTxO.d.ts.map +0 -1
  363. package/types/Ledger/UTxORef.d.ts +0 -133
  364. package/types/Ledger/UTxORef.d.ts.map +0 -1
  365. package/types/Ledger/ValidatorHash.d.ts.map +0 -1
  366. package/types/Ledger/index.d.ts.map +0 -1
  367. package/types/Network/IsMainnet.d.ts.map +0 -1
  368. package/types/Network/Params.d.ts.map +0 -1
  369. package/types/Network/UTxOsAt.d.ts +0 -9
  370. package/types/Network/UTxOsAt.d.ts.map +0 -1
  371. package/types/Network/errors.d.ts +0 -18
  372. package/types/Network/errors.d.ts.map +0 -1
  373. package/types/Network/index.d.ts.map +0 -1
  374. package/types/Uplc/Cek.d.ts +0 -72
  375. package/types/Uplc/Cek.d.ts.map +0 -1
  376. package/types/Uplc/Data.d.ts.map +0 -1
  377. package/types/Uplc/DataSchema.d.ts +0 -227
  378. package/types/Uplc/DataSchema.d.ts.map +0 -1
  379. package/types/Uplc/Primitive.d.ts +0 -26
  380. package/types/Uplc/Primitive.d.ts.map +0 -1
  381. package/types/Uplc/index.d.ts +0 -3
  382. package/types/Uplc/index.d.ts.map +0 -1
  383. package/types/internal/Base32.d.ts.map +0 -1
  384. package/types/internal/BigEndian.d.ts.map +0 -1
  385. package/types/internal/Bits.d.ts.map +0 -1
  386. package/types/internal/Bytes.d.ts.map +0 -1
  387. package/types/internal/Flat.d.ts.map +0 -1
  388. package/types/internal/Float.d.ts.map +0 -1
  389. package/types/internal/Utf8.d.ts.map +0 -1
  390. /package/dist/{Network → Cardano/Network}/IsMainnet.js +0 -0
  391. /package/dist/{internal → Codecs}/BigEndian.js +0 -0
  392. /package/dist/{internal → Codecs}/Bits.js +0 -0
  393. /package/dist/{internal → Codecs}/Float.js +0 -0
  394. /package/types/{Network → Cardano/Network}/IsMainnet.d.ts +0 -0
  395. /package/types/{internal → Codecs}/Base32.d.ts +0 -0
  396. /package/types/{Bech32.d.ts → Codecs/Bech32.d.ts} +0 -0
  397. /package/types/{internal → Codecs}/BigEndian.d.ts +0 -0
  398. /package/types/{internal → Codecs}/Bits.d.ts +0 -0
  399. /package/types/{internal → Codecs}/Float.d.ts +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Cbor.js","sourceRoot":"","sources":["../../src/Codecs/Cbor.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import * as Bits from "./Bits.js";
2
+ import * as ZigZag from "./ZigZag.js";
2
3
  /**
3
4
  * @param bytes
4
5
  * @returns
@@ -271,6 +272,18 @@ function parseRawByte(b) {
271
272
  function rawByteIsLast(b) {
272
273
  return (b & 0b10000000) == 0;
273
274
  }
275
+ export function intSize(x, signed = true) {
276
+ if (typeof x == "number") {
277
+ return intSize(BigInt(x));
278
+ }
279
+ else {
280
+ if (signed) {
281
+ x = ZigZag.toUnsigned(x);
282
+ }
283
+ const n = x.toString(2).length;
284
+ return 4 + Math.ceil(n / 7) * 8;
285
+ }
286
+ }
274
287
  /**
275
288
  * @param bitWriter
276
289
  * @param x
@@ -295,4 +308,7 @@ export function encodeInt(bitWriter, x) {
295
308
  }
296
309
  }
297
310
  }
311
+ export function listSize(items, itemSize) {
312
+ return (1 + items.length + items.reduce((prev, item) => itemSize(item) + prev, 0));
313
+ }
298
314
  //# sourceMappingURL=Flat.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Flat.js","sourceRoot":"","sources":["../../src/Codecs/Flat.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Float.js","sourceRoot":"","sources":["../../src/Codecs/Float.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,31 @@
1
+ import { Either } from "effect";
2
+ import * as BigEndian from "./BigEndian.js";
3
+ import * as Bytes from "./Bytes.js";
4
+ /**
5
+ * @import { IntLike } from "../index.js"
6
+ */
7
+ /**
8
+ * Little Endian bytes to bigint (doesnt need to be 32 bytes long)
9
+ * @param bytes
10
+ * @returns
11
+ */
12
+ export function decode(bytes) {
13
+ return BigEndian.decode(Bytes.toArray(bytes).reverse());
14
+ }
15
+ export function decodeOrThrow(bytes) {
16
+ return Either.getOrThrow(decode(bytes));
17
+ }
18
+ /**
19
+ * Little Endian 32 bytes
20
+ * @param {IntLike} x
21
+ * @returns {number[]}
22
+ */
23
+ export function encode32(x) {
24
+ if (typeof x == "number") {
25
+ return encode32(BigInt(x));
26
+ }
27
+ else {
28
+ return Bytes.pad(BigEndian.encode(x).reverse(), 32);
29
+ }
30
+ }
31
+ //# sourceMappingURL=LittleEndian.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LittleEndian.js","sourceRoot":"","sources":["../../src/Codecs/LittleEndian.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAY,MAAM,QAAQ,CAAA;AACzC,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA;AAC3C,OAAO,KAAK,KAAK,MAAM,YAAY,CAAA;AAEnC;;GAEG;AAEH;;;;GAIG;AACH,MAAM,UAAU,MAAM,CACpB,KAAsB;IAEtB,OAAO,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC,CAAA;AACzD,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,KAAsB;IAClD,OAAO,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;AACzC,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,QAAQ,CAAC,CAAkB;IACzC,IAAI,OAAO,CAAC,IAAI,QAAQ,EAAE,CAAC;QACzB,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;IAC5B,CAAC;SAAM,CAAC;QACN,OAAO,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,EAAE,EAAE,CAAC,CAAA;IACrD,CAAC;AACH,CAAC"}
@@ -0,0 +1,89 @@
1
+ export const Zero = { high: 0, low: 0 };
2
+ export function fromBytes(bytes, littleEndian = true) {
3
+ let low;
4
+ let high;
5
+ if (littleEndian) {
6
+ low =
7
+ (bytes[0] << 0) | (bytes[1] << 8) | (bytes[2] << 16) | (bytes[3] << 24);
8
+ high =
9
+ (bytes[4] << 0) | (bytes[5] << 8) | (bytes[6] << 16) | (bytes[7] << 24);
10
+ }
11
+ else {
12
+ high =
13
+ (bytes[0] << 24) | (bytes[1] << 16) | (bytes[2] << 8) | (bytes[3] << 0);
14
+ low =
15
+ (bytes[4] << 24) | (bytes[5] << 16) | (bytes[6] << 8) | (bytes[7] << 0);
16
+ }
17
+ return { high: high >>> 0, low: low >>> 0 };
18
+ }
19
+ export function fromHex(hex) {
20
+ const high = parseInt(hex.slice(0, 8), 16);
21
+ const low = parseInt(hex.slice(8, 16), 16);
22
+ return { high: high >>> 0, low: low >>> 0 };
23
+ }
24
+ export function toBytes(x, littleEndian = true) {
25
+ const res = [
26
+ 0x000000ff & x.low,
27
+ (0x0000ff00 & x.low) >>> 8,
28
+ (0x00ff0000 & x.low) >>> 16,
29
+ (0xff000000 & x.low) >>> 24,
30
+ 0x000000ff & x.high,
31
+ (0x0000ff00 & x.high) >>> 8,
32
+ (0x00ff0000 & x.high) >>> 16,
33
+ (0xff000000 & x.high) >>> 24
34
+ ];
35
+ if (!littleEndian) {
36
+ res.reverse();
37
+ }
38
+ return res;
39
+ }
40
+ export function equals(a, b) {
41
+ return a.high == b.high && a.low == b.low;
42
+ }
43
+ export function not(x) {
44
+ return { high: ~x.high, low: ~x.low };
45
+ }
46
+ export function and(a, b) {
47
+ return { high: a.high & b.high, low: a.low & b.low };
48
+ }
49
+ export function xor(a, b) {
50
+ return {
51
+ high: (a.high ^ b.high) >>> 0,
52
+ low: (a.low ^ b.low) >>> 0
53
+ };
54
+ }
55
+ export function add(a, b) {
56
+ const low = a.low + b.low;
57
+ let high = a.high + b.high;
58
+ if (low >= 0x100000000) {
59
+ high += 1;
60
+ }
61
+ return { high: high >>> 0, low: low >>> 0 };
62
+ }
63
+ export function rotr(x, n) {
64
+ let h = x.high;
65
+ let l = x.low;
66
+ if (n == 32) {
67
+ return { high: l, low: h };
68
+ }
69
+ else if (n > 32) {
70
+ n -= 32;
71
+ [h, l] = [l, h];
72
+ }
73
+ return {
74
+ high: ((h >>> n) | (l << (32 - n))) >>> 0,
75
+ low: ((l >>> n) | (h << (32 - n))) >>> 0
76
+ };
77
+ }
78
+ export function shiftr(x, n) {
79
+ if (n >= 32) {
80
+ return { high: 0, low: x.high >>> (n - 32) };
81
+ }
82
+ else {
83
+ return {
84
+ high: x.high >>> n,
85
+ low: ((x.low >>> n) | (x.high << (32 - n))) >>> 0
86
+ };
87
+ }
88
+ }
89
+ //# sourceMappingURL=Uint64.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Uint64.js","sourceRoot":"","sources":["../../src/Codecs/Uint64.ts"],"names":[],"mappings":"AAKA,MAAM,CAAC,MAAM,IAAI,GAAW,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAA;AAE/C,MAAM,UAAU,SAAS,CACvB,KAAe,EACf,eAAwB,IAAI;IAE5B,IAAI,GAAW,CAAA;IACf,IAAI,IAAY,CAAA;IAEhB,IAAI,YAAY,EAAE,CAAC;QACjB,GAAG;YACD,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAA;QACzE,IAAI;YACF,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAA;IAC3E,CAAC;SAAM,CAAC;QACN,IAAI;YACF,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA;QACzE,GAAG;YACD,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA;IAC3E,CAAC;IAED,OAAO,EAAE,IAAI,EAAE,IAAI,KAAK,CAAC,EAAE,GAAG,EAAE,GAAG,KAAK,CAAC,EAAE,CAAA;AAC7C,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,GAAW;IACjC,MAAM,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;IAC1C,MAAM,GAAG,GAAG,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAA;IAE1C,OAAO,EAAE,IAAI,EAAE,IAAI,KAAK,CAAC,EAAE,GAAG,EAAE,GAAG,KAAK,CAAC,EAAE,CAAA;AAC7C,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,CAAS,EAAE,eAAwB,IAAI;IAC7D,MAAM,GAAG,GAAG;QACV,UAAU,GAAG,CAAC,CAAC,GAAG;QAClB,CAAC,UAAU,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC;QAC1B,CAAC,UAAU,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE;QAC3B,CAAC,UAAU,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE;QAC3B,UAAU,GAAG,CAAC,CAAC,IAAI;QACnB,CAAC,UAAU,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;QAC3B,CAAC,UAAU,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE;QAC5B,CAAC,UAAU,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE;KAC7B,CAAA;IAED,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,GAAG,CAAC,OAAO,EAAE,CAAA;IACf,CAAC;IAED,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,MAAM,UAAU,MAAM,CAAC,CAAS,EAAE,CAAS;IACzC,OAAO,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,CAAA;AAC3C,CAAC;AAED,MAAM,UAAU,GAAG,CAAC,CAAS;IAC3B,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAA;AACvC,CAAC;AAED,MAAM,UAAU,GAAG,CAAC,CAAS,EAAE,CAAS;IACtC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,EAAE,CAAA;AACtD,CAAC;AAED,MAAM,UAAU,GAAG,CAAC,CAAS,EAAE,CAAS;IACtC,OAAO;QACL,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;QAC7B,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC;KAC3B,CAAA;AACH,CAAC;AAED,MAAM,UAAU,GAAG,CAAC,CAAS,EAAE,CAAS;IACtC,MAAM,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,CAAA;IACzB,IAAI,IAAI,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAA;IAE1B,IAAI,GAAG,IAAI,WAAW,EAAE,CAAC;QACvB,IAAI,IAAI,CAAC,CAAA;IACX,CAAC;IAED,OAAO,EAAE,IAAI,EAAE,IAAI,KAAK,CAAC,EAAE,GAAG,EAAE,GAAG,KAAK,CAAC,EAAE,CAAA;AAC7C,CAAC;AAED,MAAM,UAAU,IAAI,CAAC,CAAS,EAAE,CAAS;IACvC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAA;IACd,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,CAAA;IAEb,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;QACZ,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAA;IAC5B,CAAC;SAAM,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;QAClB,CAAC,IAAI,EAAE,CACN;QAAA,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;IAClB,CAAC;IAED,OAAO;QACL,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QACzC,GAAG,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;KACzC,CAAA;AACH,CAAC;AAED,MAAM,UAAU,MAAM,CAAC,CAAS,EAAE,CAAS;IACzC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;QACZ,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,CAAA;IAC9C,CAAC;SAAM,CAAC;QACN,OAAO;YACL,IAAI,EAAE,CAAC,CAAC,IAAI,KAAK,CAAC;YAClB,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;SAClD,CAAA;IACH,CAAC;AACH,CAAC"}
@@ -1,4 +1,4 @@
1
- import { Effect } from "effect";
1
+ import { Either } from "effect";
2
2
  import * as Bytes from "./Bytes.js";
3
3
  /**
4
4
  * Decodes a list of uint8 bytes into a string using UTF-8 encoding.
@@ -8,7 +8,12 @@ import * as Bytes from "./Bytes.js";
8
8
  * @returns
9
9
  */
10
10
  export function decode(bytes) {
11
- return Effect.sync(() => new TextDecoder("utf-8", { fatal: true }).decode(Bytes.toUint8Array(bytes).buffer)).pipe(Effect.catchAll(() => Effect.fail(Bytes.DecodeException(bytes, "Invalid utf-8 encoding"))));
11
+ try {
12
+ return Either.right(new TextDecoder("utf-8", { fatal: true }).decode(Bytes.toUint8Array(bytes).buffer));
13
+ }
14
+ catch (_e) {
15
+ return Either.left(Bytes.DecodeException(bytes, "Invalid utf-8 encoding"));
16
+ }
12
17
  }
13
18
  /**
14
19
  * Encodes a string into a list of uint8 bytes using UTF-8 encoding.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Utf8.js","sourceRoot":"","sources":["../../src/Codecs/Utf8.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAY,MAAM,QAAQ,CAAA;AACzC,OAAO,KAAK,KAAK,MAAM,YAAY,CAAA;AAEnC;;;;;;GAMG;AACH,MAAM,UAAU,MAAM,CACpB,KAAqC;IAErC,IAAI,CAAC;QACH,OAAO,MAAM,CAAC,KAAK,CACjB,IAAI,WAAW,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,CAC9C,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,MAAM,CACjC,CACF,CAAA;IACH,CAAC;IAAC,OAAO,EAAE,EAAE,CAAC;QACZ,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,KAAK,EAAE,wBAAwB,CAAC,CAAC,CAAA;IAC5E,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,MAAM,CAAC,GAAW;IAChC,OAAO,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;AACtC,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,OAAO,CAAC,KAAqC;IAC3D;;OAEG;IACH,MAAM,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;IAE/B,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,EAAE,CAAC;QACrC,OAAO,KAAK,CAAA;IACd,CAAC;IAED,IAAI,CAAC;QACH,IAAI,WAAW,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,UAAU,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAA;QAE3E,OAAO,IAAI,CAAA;IACb,CAAC;IAAC,OAAO,EAAE,EAAE,CAAC;QACZ,OAAO,KAAK,CAAA;IACd,CAAC;AACH,CAAC"}
@@ -0,0 +1,26 @@
1
+ export function toSigned(x) {
2
+ if (typeof x == "number") {
3
+ return toSigned(BigInt(x));
4
+ }
5
+ else if (x < 0n) {
6
+ throw new Error(`invalid zigzag encoding ('${x}' isn't a positive number)`);
7
+ }
8
+ else if (x % 2n == 0n) {
9
+ return x / 2n;
10
+ }
11
+ else {
12
+ return -(x + 1n) / 2n;
13
+ }
14
+ }
15
+ export function toUnsigned(x) {
16
+ if (typeof x == "number") {
17
+ return toUnsigned(BigInt(x));
18
+ }
19
+ else if (x < 0n) {
20
+ return -x * 2n - 1n;
21
+ }
22
+ else {
23
+ return x * 2n;
24
+ }
25
+ }
26
+ //# sourceMappingURL=ZigZag.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ZigZag.js","sourceRoot":"","sources":["../../src/Codecs/ZigZag.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,QAAQ,CAAC,CAAkB;IACzC,IAAI,OAAO,CAAC,IAAI,QAAQ,EAAE,CAAC;QACzB,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;IAC5B,CAAC;SAAM,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,4BAA4B,CAAC,CAAA;IAC7E,CAAC;SAAM,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC;QACxB,OAAO,CAAC,GAAG,EAAE,CAAA;IACf,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,CAAA;IACvB,CAAC;AACH,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,CAAkB;IAC3C,IAAI,OAAO,CAAC,IAAI,QAAQ,EAAE,CAAC;QACzB,OAAO,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;IAC9B,CAAC;SAAM,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;QAClB,OAAO,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,CAAA;IACrB,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,EAAE,CAAA;IACf,CAAC;AACH,CAAC"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * TODO: should we export any other namespaces for public consumption?
3
+ */
4
+ export * as Bech32 from "./Bech32.js";
5
+ export * as Bytes from "./Bytes.js";
6
+ export * as Cbor from "./Cbor.js";
7
+ export * as Utf8 from "./Utf8.js";
8
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/Codecs/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AACrC,OAAO,KAAK,KAAK,MAAM,YAAY,CAAA;AACnC,OAAO,KAAK,IAAI,MAAM,WAAW,CAAA;AACjC,OAAO,KAAK,IAAI,MAAM,WAAW,CAAA"}
@@ -0,0 +1,131 @@
1
+ import { Either, ParseResult, Schema } from "effect";
2
+ import * as Bech32 from "../Codecs/Bech32.js";
3
+ import * as BigEndian from "../Codecs/BigEndian.js";
4
+ import * as Bytes from "../Codecs/Bytes.js";
5
+ import * as LE from "../Codecs/LittleEndian.js";
6
+ import * as Ed25519 from "./Ed25519.js";
7
+ import * as Hmac from "./Hmac.js";
8
+ import * as Pbkdf2 from "./Pbkdf2.js";
9
+ /**
10
+ * Used during `PrivateKey` derivation, to create a new `PrivateKey` instance with a non-publicly deriveable `PubKey`.
11
+ */
12
+ export const HARDEN = 0x80000000;
13
+ export function isValidSigningKey(sk) {
14
+ if (sk.startsWith("addr_sk")) {
15
+ const decodeResult = Bech32.decode(sk);
16
+ if (decodeResult._tag == "Left") {
17
+ return false;
18
+ }
19
+ const { prefix, bytes } = decodeResult.right;
20
+ if (bytes.length != 96) {
21
+ return false;
22
+ }
23
+ if (prefix != "addr_sk") {
24
+ return false;
25
+ }
26
+ return true;
27
+ }
28
+ return false;
29
+ }
30
+ export const SigningKey = Schema.String.pipe(Schema.filter((pk) => {
31
+ return isValidSigningKey(pk) || "Invalid Bip32 Private Signing Key";
32
+ }), Schema.brand("Crypto.Bip32.SigningKey"));
33
+ function makeSigningKeyUnsafe(bytes) {
34
+ return Bech32.encode("addr_sk", Bytes.toUint8Array(bytes));
35
+ }
36
+ export function isValidVerificationKey(pk) {
37
+ if (pk.startsWith("addr_vk")) {
38
+ const decodeResult = Bech32.decode(pk);
39
+ if (decodeResult._tag == "Left") {
40
+ return false;
41
+ }
42
+ const { prefix, bytes } = decodeResult.right;
43
+ if (bytes.length != 32) {
44
+ return false;
45
+ }
46
+ if (prefix != "addr_vk") {
47
+ return false;
48
+ }
49
+ return true;
50
+ }
51
+ return false;
52
+ }
53
+ export const VerificationKey = Schema.String.pipe(Schema.filter((pk) => {
54
+ return isValidSigningKey(pk) || "Invalid Bip32 Public Verification Key";
55
+ }), Schema.brand("Crypto.Bip32.VerificationKey"));
56
+ export const makeVerificationKeyUnsafe = (bytes) => Bech32.encode("addr_vk", Bytes.toUint8Array(bytes));
57
+ export const makeVerificationKey = (bytes) => {
58
+ const vk = makeVerificationKeyUnsafe(bytes);
59
+ if (!isValidVerificationKey(vk)) {
60
+ return Either.left(new ParseResult.Unexpected(vk, "Invalid Verification Key"));
61
+ }
62
+ return Either.right(vk);
63
+ };
64
+ /**
65
+ * @param {number[]} entropy
66
+ * @param {boolean} force
67
+ * @returns {Bip32PrivateKey}
68
+ */
69
+ export function skFromEntropy(entropy, force = true) {
70
+ const bytes = Pbkdf2.deriveSync(Hmac.sha2_512Sync, new Uint8Array([]), Bytes.toUint8Array(entropy), 4096, 96);
71
+ const kl = bytes.slice(0, 32);
72
+ const kr = bytes.slice(32, 64);
73
+ if (!force) {
74
+ if ((kl[31] & 0b00100000) != 0) {
75
+ throw new Error("invalid root secret");
76
+ }
77
+ }
78
+ kl[0] &= 0b11111000;
79
+ kl[31] &= 0b00011111;
80
+ kl[31] |= 0b01000000;
81
+ const c = bytes.slice(64, 96);
82
+ return makeSigningKeyUnsafe(Bytes.concat(kl, kr, c));
83
+ }
84
+ export const skBytes = (sk) => Bytes.toUint8Array(Either.getOrThrow(Bech32.decode(sk)).bytes);
85
+ export const vkBytes = (vk) => Bytes.toUint8Array(Either.getOrThrow(Bech32.decode(vk)).bytes);
86
+ export const deriveVerificationKey = (sk) => Bech32.encode("addr_vk", Either.getOrThrow(Ed25519.derivePublicKey(skBytes(sk), false)));
87
+ const k = (sk) => skBytes(sk).slice(0, 64);
88
+ const kl = (sk) => skBytes(sk).slice(0, 32);
89
+ const kr = (sk) => skBytes(sk).slice(32, 64);
90
+ const c = (sk) => skBytes(sk).slice(64, 96);
91
+ const calcChildZorC = (sk, i, d) => {
92
+ const ib = BigEndian.encode(BigInt(i)).reverse();
93
+ while (ib.length < 4) {
94
+ ib.push(0);
95
+ }
96
+ if (ib.length != 4) {
97
+ throw new Error("child index too big");
98
+ }
99
+ if (i < HARDEN) {
100
+ const A = vkBytes(deriveVerificationKey(sk));
101
+ return Hmac.sha2_512Sync(c(sk), Bytes.concat([0x02 + d], A, ib));
102
+ }
103
+ else {
104
+ return Hmac.sha2_512Sync(c(sk), Bytes.concat([0x00 + d], k(sk), ib));
105
+ }
106
+ };
107
+ const calcChildZ = (sk, i) => calcChildZorC(sk, i, 0);
108
+ const calcChildC = (sk, i) => calcChildZorC(sk, i, 1);
109
+ const deriveSingleChildSigningKey = (sk, i) => {
110
+ const Z = calcChildZ(sk, i);
111
+ const kl$ = LE.encode32(8n * LE.decodeOrThrow(Z.slice(0, 28)) + LE.decodeOrThrow(kl(sk))).slice(0, 32);
112
+ const kr$ = LE.encode32(LE.decodeOrThrow(Z.slice(32, 64)) +
113
+ (LE.decodeOrThrow(kr(sk)) %
114
+ 115792089237316195423570985008687907853269984665640564039457584007913129639936n)).slice(0, 32);
115
+ const c = calcChildC(sk, i).slice(32, 64);
116
+ // TODO: discard child key whose public key is the identity point
117
+ return Bech32.encode("addr_sk", Bytes.concat(kl$, kr$, c));
118
+ };
119
+ export const derivePath = (sk, path) => {
120
+ path.forEach((i) => {
121
+ sk = deriveSingleChildSigningKey(sk, i);
122
+ });
123
+ return sk;
124
+ };
125
+ export const sign = (sk) => (message) => {
126
+ return {
127
+ pubKey: deriveVerificationKey(sk),
128
+ signature: Either.getOrThrow(Ed25519.sign(Bytes.toUint8Array(message), k(sk), false))
129
+ };
130
+ };
131
+ //# sourceMappingURL=Bip32.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Bip32.js","sourceRoot":"","sources":["../../src/Crypto/Bip32.ts"],"names":[],"mappings":"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"}