starknet 6.9.0 → 6.10.1

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 (315) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/LICENSE +1 -1
  3. package/README.md +5 -9
  4. package/dist/account/default.cjs +655 -0
  5. package/dist/account/default.d.ts +67 -0
  6. package/dist/account/default.mjs +652 -0
  7. package/dist/account/index.cjs +27 -0
  8. package/dist/account/index.d.ts +2 -0
  9. package/dist/account/index.mjs +2 -0
  10. package/dist/account/interface.cjs +9 -0
  11. package/dist/account/interface.d.ts +301 -0
  12. package/dist/account/interface.mjs +3 -0
  13. package/dist/channel/index.cjs +27 -0
  14. package/dist/channel/index.d.ts +3 -0
  15. package/dist/channel/index.mjs +3 -0
  16. package/dist/channel/rpc_0_6.cjs +607 -0
  17. package/dist/channel/rpc_0_6.d.ts +78 -0
  18. package/dist/channel/rpc_0_6.mjs +543 -0
  19. package/dist/channel/rpc_0_7.cjs +619 -0
  20. package/dist/channel/rpc_0_7.d.ts +81 -0
  21. package/dist/channel/rpc_0_7.mjs +561 -0
  22. package/dist/constants.cjs +76 -0
  23. package/dist/constants.d.ts +70 -0
  24. package/dist/constants.mjs +60 -0
  25. package/dist/contract/contractFactory.cjs +93 -0
  26. package/dist/contract/contractFactory.d.ts +46 -0
  27. package/dist/contract/contractFactory.mjs +83 -0
  28. package/dist/contract/default.cjs +269 -0
  29. package/dist/contract/default.d.ts +58 -0
  30. package/dist/contract/default.mjs +254 -0
  31. package/dist/contract/index.cjs +38 -0
  32. package/dist/contract/index.d.ts +3 -0
  33. package/dist/contract/index.mjs +3 -0
  34. package/dist/contract/interface.cjs +13 -0
  35. package/dist/contract/interface.d.ts +128 -0
  36. package/dist/contract/interface.mjs +6 -0
  37. package/dist/index.cjs +267 -0
  38. package/dist/index.d.ts +45 -5991
  39. package/dist/index.global.js +728 -609
  40. package/dist/index.global.js.map +1 -1
  41. package/dist/index.mjs +39 -7320
  42. package/dist/provider/errors.cjs +50 -0
  43. package/dist/provider/errors.d.ts +16 -0
  44. package/dist/provider/errors.mjs +35 -0
  45. package/dist/provider/extensions/default.cjs +11 -0
  46. package/dist/provider/extensions/default.d.ts +6 -0
  47. package/dist/provider/extensions/default.mjs +5 -0
  48. package/dist/provider/extensions/starknetId.cjs +174 -0
  49. package/dist/provider/extensions/starknetId.d.ts +10 -0
  50. package/dist/provider/extensions/starknetId.mjs +230 -0
  51. package/dist/provider/index.cjs +56 -0
  52. package/dist/provider/index.d.ts +6 -0
  53. package/dist/provider/index.mjs +6 -0
  54. package/dist/provider/interface.cjs +8 -0
  55. package/dist/provider/interface.d.ts +261 -0
  56. package/dist/provider/interface.mjs +2 -0
  57. package/dist/provider/rpc.cjs +301 -0
  58. package/dist/provider/rpc.d.ts +115 -0
  59. package/dist/provider/rpc.mjs +302 -0
  60. package/dist/service/types.cjs +1 -0
  61. package/dist/service/types.d.ts +5 -0
  62. package/dist/service/types.mjs +0 -0
  63. package/dist/signer/default.cjs +105 -0
  64. package/dist/signer/default.d.ts +12 -0
  65. package/dist/signer/default.mjs +102 -0
  66. package/dist/signer/ethSigner.cjs +123 -0
  67. package/dist/signer/ethSigner.d.ts +25 -0
  68. package/dist/signer/ethSigner.mjs +140 -0
  69. package/dist/signer/index.cjs +38 -0
  70. package/dist/signer/index.d.ts +3 -0
  71. package/dist/signer/index.mjs +3 -0
  72. package/dist/signer/interface.cjs +8 -0
  73. package/dist/signer/interface.d.ts +115 -0
  74. package/dist/signer/interface.mjs +2 -0
  75. package/dist/types/account.cjs +1 -0
  76. package/dist/types/account.d.ts +79 -0
  77. package/dist/types/account.mjs +0 -0
  78. package/dist/types/api/index.cjs +30 -0
  79. package/dist/types/api/index.d.ts +4 -0
  80. package/dist/types/api/index.mjs +4 -0
  81. package/dist/types/api/jsonrpc/index.cjs +1 -0
  82. package/dist/types/api/jsonrpc/index.d.ts +21 -0
  83. package/dist/types/api/jsonrpc/index.mjs +0 -0
  84. package/dist/types/api/rpcspec_0_6/components.cjs +1 -0
  85. package/dist/types/api/rpcspec_0_6/components.d.ts +541 -0
  86. package/dist/types/api/rpcspec_0_6/components.mjs +0 -0
  87. package/dist/types/api/rpcspec_0_6/contract.cjs +1 -0
  88. package/dist/types/api/rpcspec_0_6/contract.d.ts +85 -0
  89. package/dist/types/api/rpcspec_0_6/contract.mjs +0 -0
  90. package/dist/types/api/rpcspec_0_6/errors.cjs +1 -0
  91. package/dist/types/api/rpcspec_0_6/errors.d.ts +128 -0
  92. package/dist/types/api/rpcspec_0_6/errors.mjs +0 -0
  93. package/dist/types/api/rpcspec_0_6/index.cjs +45 -0
  94. package/dist/types/api/rpcspec_0_6/index.d.ts +8 -0
  95. package/dist/types/api/rpcspec_0_6/index.mjs +5 -0
  96. package/dist/types/api/rpcspec_0_6/methods.cjs +1 -0
  97. package/dist/types/api/rpcspec_0_6/methods.d.ts +207 -0
  98. package/dist/types/api/rpcspec_0_6/methods.mjs +0 -0
  99. package/dist/types/api/rpcspec_0_6/nonspec.cjs +65 -0
  100. package/dist/types/api/rpcspec_0_6/nonspec.d.ts +147 -0
  101. package/dist/types/api/rpcspec_0_6/nonspec.mjs +59 -0
  102. package/dist/types/cairoEnum.cjs +1 -0
  103. package/dist/types/cairoEnum.d.ts +2 -0
  104. package/dist/types/cairoEnum.mjs +0 -0
  105. package/dist/types/calldata.cjs +27 -0
  106. package/dist/types/calldata.d.ts +23 -0
  107. package/dist/types/calldata.mjs +21 -0
  108. package/dist/types/contract.cjs +1 -0
  109. package/dist/types/contract.d.ts +27 -0
  110. package/dist/types/contract.mjs +0 -0
  111. package/dist/types/helpers/valuesType.cjs +1 -0
  112. package/dist/types/helpers/valuesType.d.ts +1 -0
  113. package/dist/types/helpers/valuesType.mjs +0 -0
  114. package/dist/types/index.cjs +121 -0
  115. package/dist/types/index.d.ts +10 -0
  116. package/dist/types/index.mjs +10 -0
  117. package/dist/types/lib/contract/abi.cjs +1 -0
  118. package/dist/types/lib/contract/abi.d.ts +71 -0
  119. package/dist/types/lib/contract/abi.mjs +0 -0
  120. package/dist/types/lib/contract/index.cjs +50 -0
  121. package/dist/types/lib/contract/index.d.ts +26 -0
  122. package/dist/types/lib/contract/index.mjs +8 -0
  123. package/dist/types/lib/contract/legacy.cjs +1 -0
  124. package/dist/types/lib/contract/legacy.d.ts +33 -0
  125. package/dist/types/lib/contract/legacy.mjs +0 -0
  126. package/dist/types/lib/contract/sierra.cjs +1 -0
  127. package/dist/types/lib/contract/sierra.d.ts +52 -0
  128. package/dist/types/lib/contract/sierra.mjs +0 -0
  129. package/dist/types/lib/index.cjs +61 -0
  130. package/dist/types/lib/index.d.ts +259 -0
  131. package/dist/types/lib/index.mjs +36 -0
  132. package/dist/types/provider/configuration.cjs +1 -0
  133. package/dist/types/provider/configuration.d.ts +20 -0
  134. package/dist/types/provider/configuration.mjs +0 -0
  135. package/dist/types/provider/index.cjs +27 -0
  136. package/dist/types/provider/index.d.ts +2 -0
  137. package/dist/types/provider/index.mjs +2 -0
  138. package/dist/types/provider/response.cjs +30 -0
  139. package/dist/types/provider/response.d.ts +98 -0
  140. package/dist/types/provider/response.mjs +1 -0
  141. package/dist/types/provider/spec.cjs +1 -0
  142. package/dist/types/provider/spec.d.ts +49 -0
  143. package/dist/types/provider/spec.mjs +0 -0
  144. package/dist/types/signer.cjs +1 -0
  145. package/dist/types/signer.d.ts +49 -0
  146. package/dist/types/signer.mjs +0 -0
  147. package/dist/types/transactionReceipt.cjs +1 -0
  148. package/dist/types/transactionReceipt.d.ts +23 -0
  149. package/dist/types/transactionReceipt.mjs +0 -0
  150. package/dist/types/typedData.cjs +12 -0
  151. package/dist/types/typedData.d.ts +1 -0
  152. package/dist/types/typedData.mjs +3 -0
  153. package/dist/utils/address.cjs +44 -0
  154. package/dist/utils/address.d.ts +55 -0
  155. package/dist/utils/address.mjs +35 -0
  156. package/dist/utils/assert.cjs +11 -0
  157. package/dist/utils/assert.d.ts +12 -0
  158. package/dist/utils/assert.mjs +5 -0
  159. package/dist/utils/cairoDataTypes/felt.cjs +31 -0
  160. package/dist/utils/cairoDataTypes/felt.d.ts +6 -0
  161. package/dist/utils/cairoDataTypes/felt.mjs +27 -0
  162. package/dist/utils/cairoDataTypes/uint256.cjs +113 -0
  163. package/dist/utils/cairoDataTypes/uint256.d.ts +72 -0
  164. package/dist/utils/cairoDataTypes/uint256.mjs +103 -0
  165. package/dist/utils/cairoDataTypes/uint512.cjs +125 -0
  166. package/dist/utils/cairoDataTypes/uint512.d.ts +76 -0
  167. package/dist/utils/cairoDataTypes/uint512.mjs +123 -0
  168. package/dist/utils/calldata/byteArray.cjs +27 -0
  169. package/dist/utils/calldata/byteArray.d.ts +32 -0
  170. package/dist/utils/calldata/byteArray.mjs +20 -0
  171. package/dist/utils/calldata/cairo.cjs +114 -0
  172. package/dist/utils/calldata/cairo.d.ts +196 -0
  173. package/dist/utils/calldata/cairo.mjs +68 -0
  174. package/dist/utils/calldata/enum/CairoCustomEnum.cjs +55 -0
  175. package/dist/utils/calldata/enum/CairoCustomEnum.d.ts +38 -0
  176. package/dist/utils/calldata/enum/CairoCustomEnum.mjs +50 -0
  177. package/dist/utils/calldata/enum/CairoOption.cjs +55 -0
  178. package/dist/utils/calldata/enum/CairoOption.d.ts +37 -0
  179. package/dist/utils/calldata/enum/CairoOption.mjs +50 -0
  180. package/dist/utils/calldata/enum/CairoResult.cjs +54 -0
  181. package/dist/utils/calldata/enum/CairoResult.d.ts +36 -0
  182. package/dist/utils/calldata/enum/CairoResult.mjs +47 -0
  183. package/dist/utils/calldata/enum/index.cjs +38 -0
  184. package/dist/utils/calldata/enum/index.d.ts +3 -0
  185. package/dist/utils/calldata/enum/index.mjs +3 -0
  186. package/dist/utils/calldata/formatter.cjs +55 -0
  187. package/dist/utils/calldata/formatter.d.ts +9 -0
  188. package/dist/utils/calldata/formatter.mjs +58 -0
  189. package/dist/utils/calldata/index.cjs +272 -0
  190. package/dist/utils/calldata/index.d.ts +90 -0
  191. package/dist/utils/calldata/index.mjs +276 -0
  192. package/dist/utils/calldata/parser/index.cjs +29 -0
  193. package/dist/utils/calldata/parser/index.d.ts +5 -0
  194. package/dist/utils/calldata/parser/index.mjs +21 -0
  195. package/dist/utils/calldata/parser/interface.cjs +8 -0
  196. package/dist/utils/calldata/parser/interface.d.ts +20 -0
  197. package/dist/utils/calldata/parser/interface.mjs +2 -0
  198. package/dist/utils/calldata/parser/parser-0-1.1.0.cjs +38 -0
  199. package/dist/utils/calldata/parser/parser-0-1.1.0.d.ts +24 -0
  200. package/dist/utils/calldata/parser/parser-0-1.1.0.mjs +31 -0
  201. package/dist/utils/calldata/parser/parser-2.0.0.cjs +42 -0
  202. package/dist/utils/calldata/parser/parser-2.0.0.d.ts +23 -0
  203. package/dist/utils/calldata/parser/parser-2.0.0.mjs +37 -0
  204. package/dist/utils/calldata/propertyOrder.cjs +159 -0
  205. package/dist/utils/calldata/propertyOrder.d.ts +2 -0
  206. package/dist/utils/calldata/propertyOrder.mjs +189 -0
  207. package/dist/utils/calldata/requestParser.cjs +204 -0
  208. package/dist/utils/calldata/requestParser.d.ts +11 -0
  209. package/dist/utils/calldata/requestParser.mjs +231 -0
  210. package/dist/utils/calldata/responseParser.cjs +200 -0
  211. package/dist/utils/calldata/responseParser.d.ts +11 -0
  212. package/dist/utils/calldata/responseParser.mjs +201 -0
  213. package/dist/utils/calldata/tuple.cjs +106 -0
  214. package/dist/utils/calldata/tuple.d.ts +6 -0
  215. package/dist/utils/calldata/tuple.mjs +88 -0
  216. package/dist/utils/calldata/validate.cjs +241 -0
  217. package/dist/utils/calldata/validate.d.ts +6 -0
  218. package/dist/utils/calldata/validate.mjs +315 -0
  219. package/dist/utils/contract.cjs +40 -0
  220. package/dist/utils/contract.d.ts +37 -0
  221. package/dist/utils/contract.mjs +31 -0
  222. package/dist/utils/ec.cjs +12 -0
  223. package/dist/utils/ec.d.ts +2 -0
  224. package/dist/utils/ec.mjs +2 -0
  225. package/dist/utils/encode.cjs +78 -0
  226. package/dist/utils/encode.d.ts +207 -0
  227. package/dist/utils/encode.mjs +56 -0
  228. package/dist/utils/eth.cjs +22 -0
  229. package/dist/utils/eth.d.ts +22 -0
  230. package/dist/utils/eth.mjs +14 -0
  231. package/dist/utils/events/index.cjs +144 -0
  232. package/dist/utils/events/index.d.ts +84 -0
  233. package/dist/utils/events/index.mjs +136 -0
  234. package/dist/utils/fetchPonyfill.cjs +14 -0
  235. package/dist/utils/fetchPonyfill.d.ts +2 -0
  236. package/dist/utils/fetchPonyfill.mjs +5 -0
  237. package/dist/utils/hash/classHash.cjs +151 -0
  238. package/dist/utils/hash/classHash.d.ts +120 -0
  239. package/dist/utils/hash/classHash.mjs +168 -0
  240. package/dist/utils/hash/index.cjs +49 -0
  241. package/dist/utils/hash/index.d.ts +7 -0
  242. package/dist/utils/hash/index.mjs +4 -0
  243. package/dist/utils/hash/selector.cjs +37 -0
  244. package/dist/utils/hash/selector.d.ts +57 -0
  245. package/dist/utils/hash/selector.mjs +28 -0
  246. package/dist/utils/hash/transactionHash/index.cjs +38 -0
  247. package/dist/utils/hash/transactionHash/index.d.ts +81 -0
  248. package/dist/utils/hash/transactionHash/index.mjs +102 -0
  249. package/dist/utils/hash/transactionHash/v2.cjs +31 -0
  250. package/dist/utils/hash/transactionHash/v2.d.ts +34 -0
  251. package/dist/utils/hash/transactionHash/v2.mjs +57 -0
  252. package/dist/utils/hash/transactionHash/v3.cjs +45 -0
  253. package/dist/utils/hash/transactionHash/v3.d.ts +24 -0
  254. package/dist/utils/hash/transactionHash/v3.mjs +80 -0
  255. package/dist/utils/json.cjs +21 -0
  256. package/dist/utils/json.d.ts +50 -0
  257. package/dist/utils/json.mjs +10 -0
  258. package/dist/utils/merkle.cjs +118 -0
  259. package/dist/utils/merkle.d.ts +87 -0
  260. package/dist/utils/merkle.mjs +114 -0
  261. package/dist/utils/num.cjs +109 -0
  262. package/dist/utils/num.d.ts +283 -0
  263. package/dist/utils/num.mjs +86 -0
  264. package/dist/utils/provider.cjs +182 -0
  265. package/dist/utils/provider.d.ts +217 -0
  266. package/dist/utils/provider.mjs +158 -0
  267. package/dist/utils/responseParser/index.cjs +27 -0
  268. package/dist/utils/responseParser/index.d.ts +2 -0
  269. package/dist/utils/responseParser/index.mjs +2 -0
  270. package/dist/utils/responseParser/interface.cjs +8 -0
  271. package/dist/utils/responseParser/interface.d.ts +13 -0
  272. package/dist/utils/responseParser/interface.mjs +2 -0
  273. package/dist/utils/responseParser/rpc.cjs +83 -0
  274. package/dist/utils/responseParser/rpc.d.ts +19 -0
  275. package/dist/utils/responseParser/rpc.mjs +77 -0
  276. package/dist/utils/shortString.cjs +56 -0
  277. package/dist/utils/shortString.d.ts +116 -0
  278. package/dist/utils/shortString.mjs +39 -0
  279. package/dist/utils/stark.cjs +137 -0
  280. package/dist/utils/stark.d.ts +224 -0
  281. package/dist/utils/stark.mjs +109 -0
  282. package/dist/utils/starknetId.cjs +196 -0
  283. package/dist/utils/starknetId.d.ts +182 -0
  284. package/dist/utils/starknetId.mjs +185 -0
  285. package/dist/utils/transaction.cjs +115 -0
  286. package/dist/utils/transaction.d.ts +185 -0
  287. package/dist/utils/transaction.mjs +98 -0
  288. package/dist/utils/transactionReceipt.cjs +54 -0
  289. package/dist/utils/transactionReceipt.d.ts +33 -0
  290. package/dist/utils/transactionReceipt.mjs +49 -0
  291. package/dist/utils/typedData.cjs +285 -0
  292. package/dist/utils/typedData.d.ts +54 -0
  293. package/dist/utils/typedData.mjs +286 -0
  294. package/dist/utils/uint256.cjs +30 -0
  295. package/dist/utils/uint256.d.ts +45 -0
  296. package/dist/utils/uint256.mjs +11 -0
  297. package/dist/utils/url.cjs +35 -0
  298. package/dist/utils/url.d.ts +29 -0
  299. package/dist/utils/url.mjs +27 -0
  300. package/dist/wallet/account.cjs +115 -0
  301. package/dist/wallet/account.d.ts +31 -0
  302. package/dist/wallet/account.mjs +112 -0
  303. package/dist/wallet/connect.cjs +90 -0
  304. package/dist/wallet/connect.d.ts +82 -0
  305. package/dist/wallet/connect.mjs +64 -0
  306. package/dist/wallet/index.cjs +16 -0
  307. package/dist/wallet/index.d.ts +1 -0
  308. package/dist/wallet/index.mjs +1 -0
  309. package/dist/wallet/types.cjs +1 -0
  310. package/dist/wallet/types.d.ts +4 -0
  311. package/dist/wallet/types.mjs +0 -0
  312. package/package.json +13 -13
  313. package/dist/index.js +0 -7426
  314. package/dist/index.js.map +0 -1
  315. package/dist/index.mjs.map +0 -1
@@ -10655,7 +10655,7 @@ var starknet = (() => {
10655
10655
  function isString2(data) {
10656
10656
  return typeof data === "string" || data instanceof String;
10657
10657
  }
10658
- function isObject2(data) {
10658
+ function isObject3(data) {
10659
10659
  return toString.call(data) === "[object Object]";
10660
10660
  }
10661
10661
  function isInstanceStrict(data, prototype) {
@@ -10673,7 +10673,7 @@ var starknet = (() => {
10673
10673
  options = cb;
10674
10674
  cb = null;
10675
10675
  }
10676
- if (!isObject2(options))
10676
+ if (!isObject3(options))
10677
10677
  options = { Error: "Failed Check" };
10678
10678
  if (!bool) {
10679
10679
  if (cb) {
@@ -10694,7 +10694,7 @@ var starknet = (() => {
10694
10694
  exports.isDate = isDate;
10695
10695
  exports.isEmptyString = isEmptyString;
10696
10696
  exports.isString = isString2;
10697
- exports.isObject = isObject2;
10697
+ exports.isObject = isObject3;
10698
10698
  exports.validate = validate;
10699
10699
  }
10700
10700
  });
@@ -12699,7 +12699,9 @@ var starknet = (() => {
12699
12699
  RPC: () => api_exports2,
12700
12700
  RPC06: () => rpc_0_6_exports,
12701
12701
  RPC07: () => rpc_0_7_exports,
12702
+ RPCResponseParser: () => RPCResponseParser,
12702
12703
  ReceiptTx: () => ReceiptTx,
12704
+ ResponseParser: () => ResponseParser,
12703
12705
  RpcChannel: () => RpcChannel2,
12704
12706
  RpcProvider: () => RpcProvider2,
12705
12707
  Signer: () => Signer,
@@ -12746,7 +12748,6 @@ var starknet = (() => {
12746
12748
  num: () => num_exports,
12747
12749
  number: () => number3,
12748
12750
  parseCalldataField: () => parseCalldataField,
12749
- parseUDCEvent: () => parseUDCEvent,
12750
12751
  provider: () => provider_exports,
12751
12752
  selector: () => selector_exports,
12752
12753
  shortString: () => shortString_exports,
@@ -12770,6 +12771,7 @@ var starknet = (() => {
12770
12771
  ADDR_BOUND: () => ADDR_BOUND,
12771
12772
  API_VERSION: () => API_VERSION,
12772
12773
  BaseUrl: () => BaseUrl,
12774
+ FeeMarginPercentage: () => FeeMarginPercentage,
12773
12775
  IS_BROWSER: () => IS_BROWSER,
12774
12776
  MASK_250: () => MASK_250,
12775
12777
  MAX_STORAGE_ITEM_SIZE: () => MAX_STORAGE_ITEM_SIZE,
@@ -12785,8 +12787,7 @@ var starknet = (() => {
12785
12787
  TRANSACTION_VERSION: () => ETransactionVersion4,
12786
12788
  TransactionHashPrefix: () => TransactionHashPrefix,
12787
12789
  UDC: () => UDC,
12788
- ZERO: () => ZERO,
12789
- feeMarginPercentage: () => feeMarginPercentage
12790
+ ZERO: () => ZERO
12790
12791
  });
12791
12792
 
12792
12793
  // src/types/api/index.ts
@@ -12842,76 +12843,65 @@ var starknet = (() => {
12842
12843
  var components_exports = {};
12843
12844
 
12844
12845
  // src/types/api/rpcspec_0_6/nonspec.ts
12845
- var ETransactionType = /* @__PURE__ */ ((ETransactionType3) => {
12846
- ETransactionType3["DECLARE"] = "DECLARE";
12847
- ETransactionType3["DEPLOY"] = "DEPLOY";
12848
- ETransactionType3["DEPLOY_ACCOUNT"] = "DEPLOY_ACCOUNT";
12849
- ETransactionType3["INVOKE"] = "INVOKE";
12850
- ETransactionType3["L1_HANDLER"] = "L1_HANDLER";
12851
- return ETransactionType3;
12852
- })(ETransactionType || {});
12853
- var ESimulationFlag = /* @__PURE__ */ ((ESimulationFlag3) => {
12854
- ESimulationFlag3["SKIP_VALIDATE"] = "SKIP_VALIDATE";
12855
- ESimulationFlag3["SKIP_FEE_CHARGE"] = "SKIP_FEE_CHARGE";
12856
- return ESimulationFlag3;
12857
- })(ESimulationFlag || {});
12858
- var ETransactionStatus = /* @__PURE__ */ ((ETransactionStatus3) => {
12859
- ETransactionStatus3["RECEIVED"] = "RECEIVED";
12860
- ETransactionStatus3["REJECTED"] = "REJECTED";
12861
- ETransactionStatus3["ACCEPTED_ON_L2"] = "ACCEPTED_ON_L2";
12862
- ETransactionStatus3["ACCEPTED_ON_L1"] = "ACCEPTED_ON_L1";
12863
- return ETransactionStatus3;
12864
- })(ETransactionStatus || {});
12865
- var ETransactionFinalityStatus = /* @__PURE__ */ ((ETransactionFinalityStatus3) => {
12866
- ETransactionFinalityStatus3["ACCEPTED_ON_L2"] = "ACCEPTED_ON_L2";
12867
- ETransactionFinalityStatus3["ACCEPTED_ON_L1"] = "ACCEPTED_ON_L1";
12868
- return ETransactionFinalityStatus3;
12869
- })(ETransactionFinalityStatus || {});
12870
- var ETransactionExecutionStatus = /* @__PURE__ */ ((ETransactionExecutionStatus3) => {
12871
- ETransactionExecutionStatus3["SUCCEEDED"] = "SUCCEEDED";
12872
- ETransactionExecutionStatus3["REVERTED"] = "REVERTED";
12873
- return ETransactionExecutionStatus3;
12874
- })(ETransactionExecutionStatus || {});
12875
- var EBlockTag = /* @__PURE__ */ ((EBlockTag3) => {
12876
- EBlockTag3["LATEST"] = "latest";
12877
- EBlockTag3["PENDING"] = "pending";
12878
- return EBlockTag3;
12879
- })(EBlockTag || {});
12880
- var EDataAvailabilityMode = /* @__PURE__ */ ((EDataAvailabilityMode3) => {
12881
- EDataAvailabilityMode3["L1"] = "L1";
12882
- EDataAvailabilityMode3["L2"] = "L2";
12883
- return EDataAvailabilityMode3;
12884
- })(EDataAvailabilityMode || {});
12885
- var EDAMode = /* @__PURE__ */ ((EDAMode4) => {
12886
- EDAMode4[EDAMode4["L1"] = 0] = "L1";
12887
- EDAMode4[EDAMode4["L2"] = 1] = "L2";
12888
- return EDAMode4;
12889
- })(EDAMode || {});
12890
- var ETransactionVersion = /* @__PURE__ */ ((ETransactionVersion5) => {
12891
- ETransactionVersion5["V0"] = "0x0";
12892
- ETransactionVersion5["V1"] = "0x1";
12893
- ETransactionVersion5["V2"] = "0x2";
12894
- ETransactionVersion5["V3"] = "0x3";
12895
- ETransactionVersion5["F0"] = "0x100000000000000000000000000000000";
12896
- ETransactionVersion5["F1"] = "0x100000000000000000000000000000001";
12897
- ETransactionVersion5["F2"] = "0x100000000000000000000000000000002";
12898
- ETransactionVersion5["F3"] = "0x100000000000000000000000000000003";
12899
- return ETransactionVersion5;
12900
- })(ETransactionVersion || {});
12901
- var ETransactionVersion2 = /* @__PURE__ */ ((ETransactionVersion24) => {
12902
- ETransactionVersion24["V0"] = "0x0";
12903
- ETransactionVersion24["V1"] = "0x1";
12904
- ETransactionVersion24["V2"] = "0x2";
12905
- ETransactionVersion24["F0"] = "0x100000000000000000000000000000000";
12906
- ETransactionVersion24["F1"] = "0x100000000000000000000000000000001";
12907
- ETransactionVersion24["F2"] = "0x100000000000000000000000000000002";
12908
- return ETransactionVersion24;
12909
- })(ETransactionVersion2 || {});
12910
- var ETransactionVersion3 = /* @__PURE__ */ ((ETransactionVersion34) => {
12911
- ETransactionVersion34["V3"] = "0x3";
12912
- ETransactionVersion34["F3"] = "0x100000000000000000000000000000003";
12913
- return ETransactionVersion34;
12914
- })(ETransactionVersion3 || {});
12846
+ var ETransactionType = {
12847
+ DECLARE: "DECLARE",
12848
+ DEPLOY: "DEPLOY",
12849
+ DEPLOY_ACCOUNT: "DEPLOY_ACCOUNT",
12850
+ INVOKE: "INVOKE",
12851
+ L1_HANDLER: "L1_HANDLER"
12852
+ };
12853
+ var ESimulationFlag = {
12854
+ SKIP_VALIDATE: "SKIP_VALIDATE",
12855
+ SKIP_FEE_CHARGE: "SKIP_FEE_CHARGE"
12856
+ };
12857
+ var ETransactionStatus = {
12858
+ RECEIVED: "RECEIVED",
12859
+ REJECTED: "REJECTED",
12860
+ ACCEPTED_ON_L2: "ACCEPTED_ON_L2",
12861
+ ACCEPTED_ON_L1: "ACCEPTED_ON_L1"
12862
+ };
12863
+ var ETransactionFinalityStatus = {
12864
+ ACCEPTED_ON_L2: "ACCEPTED_ON_L2",
12865
+ ACCEPTED_ON_L1: "ACCEPTED_ON_L1"
12866
+ };
12867
+ var ETransactionExecutionStatus = {
12868
+ SUCCEEDED: "SUCCEEDED",
12869
+ REVERTED: "REVERTED"
12870
+ };
12871
+ var EBlockTag = {
12872
+ PENDING: "pending",
12873
+ LATEST: "latest"
12874
+ };
12875
+ var EDataAvailabilityMode = {
12876
+ L1: "L1",
12877
+ L2: "L2"
12878
+ };
12879
+ var EDAMode = {
12880
+ L1: 0,
12881
+ L2: 1
12882
+ };
12883
+ var ETransactionVersion = {
12884
+ V0: "0x0",
12885
+ V1: "0x1",
12886
+ V2: "0x2",
12887
+ V3: "0x3",
12888
+ F0: "0x100000000000000000000000000000000",
12889
+ F1: "0x100000000000000000000000000000001",
12890
+ F2: "0x100000000000000000000000000000002",
12891
+ F3: "0x100000000000000000000000000000003"
12892
+ };
12893
+ var ETransactionVersion2 = {
12894
+ V0: "0x0",
12895
+ V1: "0x1",
12896
+ V2: "0x2",
12897
+ F0: "0x100000000000000000000000000000000",
12898
+ F1: "0x100000000000000000000000000000001",
12899
+ F2: "0x100000000000000000000000000000002"
12900
+ };
12901
+ var ETransactionVersion3 = {
12902
+ V3: "0x3",
12903
+ F3: "0x100000000000000000000000000000003"
12904
+ };
12915
12905
 
12916
12906
  // node_modules/starknet-types-07/dist/esm/index.js
12917
12907
  var esm_exports = {};
@@ -12960,76 +12950,65 @@ var starknet = (() => {
12960
12950
  var components_exports2 = {};
12961
12951
 
12962
12952
  // node_modules/starknet-types-07/dist/esm/api/nonspec.js
12963
- var ETransactionType2;
12964
- (function(ETransactionType3) {
12965
- ETransactionType3["DECLARE"] = "DECLARE";
12966
- ETransactionType3["DEPLOY"] = "DEPLOY";
12967
- ETransactionType3["DEPLOY_ACCOUNT"] = "DEPLOY_ACCOUNT";
12968
- ETransactionType3["INVOKE"] = "INVOKE";
12969
- ETransactionType3["L1_HANDLER"] = "L1_HANDLER";
12970
- })(ETransactionType2 || (ETransactionType2 = {}));
12971
- var ESimulationFlag2;
12972
- (function(ESimulationFlag3) {
12973
- ESimulationFlag3["SKIP_VALIDATE"] = "SKIP_VALIDATE";
12974
- ESimulationFlag3["SKIP_FEE_CHARGE"] = "SKIP_FEE_CHARGE";
12975
- })(ESimulationFlag2 || (ESimulationFlag2 = {}));
12976
- var ETransactionStatus2;
12977
- (function(ETransactionStatus3) {
12978
- ETransactionStatus3["RECEIVED"] = "RECEIVED";
12979
- ETransactionStatus3["REJECTED"] = "REJECTED";
12980
- ETransactionStatus3["ACCEPTED_ON_L2"] = "ACCEPTED_ON_L2";
12981
- ETransactionStatus3["ACCEPTED_ON_L1"] = "ACCEPTED_ON_L1";
12982
- })(ETransactionStatus2 || (ETransactionStatus2 = {}));
12983
- var ETransactionFinalityStatus2;
12984
- (function(ETransactionFinalityStatus3) {
12985
- ETransactionFinalityStatus3["ACCEPTED_ON_L2"] = "ACCEPTED_ON_L2";
12986
- ETransactionFinalityStatus3["ACCEPTED_ON_L1"] = "ACCEPTED_ON_L1";
12987
- })(ETransactionFinalityStatus2 || (ETransactionFinalityStatus2 = {}));
12988
- var ETransactionExecutionStatus2;
12989
- (function(ETransactionExecutionStatus3) {
12990
- ETransactionExecutionStatus3["SUCCEEDED"] = "SUCCEEDED";
12991
- ETransactionExecutionStatus3["REVERTED"] = "REVERTED";
12992
- })(ETransactionExecutionStatus2 || (ETransactionExecutionStatus2 = {}));
12993
- var EBlockTag2;
12994
- (function(EBlockTag3) {
12995
- EBlockTag3["LATEST"] = "latest";
12996
- EBlockTag3["PENDING"] = "pending";
12997
- })(EBlockTag2 || (EBlockTag2 = {}));
12998
- var EDataAvailabilityMode2;
12999
- (function(EDataAvailabilityMode3) {
13000
- EDataAvailabilityMode3["L1"] = "L1";
13001
- EDataAvailabilityMode3["L2"] = "L2";
13002
- })(EDataAvailabilityMode2 || (EDataAvailabilityMode2 = {}));
13003
- var EDAMode2;
13004
- (function(EDAMode4) {
13005
- EDAMode4[EDAMode4["L1"] = 0] = "L1";
13006
- EDAMode4[EDAMode4["L2"] = 1] = "L2";
13007
- })(EDAMode2 || (EDAMode2 = {}));
13008
- var ETransactionVersion4;
13009
- (function(ETransactionVersion5) {
13010
- ETransactionVersion5["V0"] = "0x0";
13011
- ETransactionVersion5["V1"] = "0x1";
13012
- ETransactionVersion5["V2"] = "0x2";
13013
- ETransactionVersion5["V3"] = "0x3";
13014
- ETransactionVersion5["F0"] = "0x100000000000000000000000000000000";
13015
- ETransactionVersion5["F1"] = "0x100000000000000000000000000000001";
13016
- ETransactionVersion5["F2"] = "0x100000000000000000000000000000002";
13017
- ETransactionVersion5["F3"] = "0x100000000000000000000000000000003";
13018
- })(ETransactionVersion4 || (ETransactionVersion4 = {}));
13019
- var ETransactionVersion22;
13020
- (function(ETransactionVersion24) {
13021
- ETransactionVersion24["V0"] = "0x0";
13022
- ETransactionVersion24["V1"] = "0x1";
13023
- ETransactionVersion24["V2"] = "0x2";
13024
- ETransactionVersion24["F0"] = "0x100000000000000000000000000000000";
13025
- ETransactionVersion24["F1"] = "0x100000000000000000000000000000001";
13026
- ETransactionVersion24["F2"] = "0x100000000000000000000000000000002";
13027
- })(ETransactionVersion22 || (ETransactionVersion22 = {}));
13028
- var ETransactionVersion32;
13029
- (function(ETransactionVersion34) {
13030
- ETransactionVersion34["V3"] = "0x3";
13031
- ETransactionVersion34["F3"] = "0x100000000000000000000000000000003";
13032
- })(ETransactionVersion32 || (ETransactionVersion32 = {}));
12953
+ var ETransactionType2 = {
12954
+ DECLARE: "DECLARE",
12955
+ DEPLOY: "DEPLOY",
12956
+ DEPLOY_ACCOUNT: "DEPLOY_ACCOUNT",
12957
+ INVOKE: "INVOKE",
12958
+ L1_HANDLER: "L1_HANDLER"
12959
+ };
12960
+ var ESimulationFlag2 = {
12961
+ SKIP_VALIDATE: "SKIP_VALIDATE",
12962
+ SKIP_FEE_CHARGE: "SKIP_FEE_CHARGE"
12963
+ };
12964
+ var ETransactionStatus2 = {
12965
+ RECEIVED: "RECEIVED",
12966
+ REJECTED: "REJECTED",
12967
+ ACCEPTED_ON_L2: "ACCEPTED_ON_L2",
12968
+ ACCEPTED_ON_L1: "ACCEPTED_ON_L1"
12969
+ };
12970
+ var ETransactionFinalityStatus2 = {
12971
+ ACCEPTED_ON_L2: "ACCEPTED_ON_L2",
12972
+ ACCEPTED_ON_L1: "ACCEPTED_ON_L1"
12973
+ };
12974
+ var ETransactionExecutionStatus2 = {
12975
+ SUCCEEDED: "SUCCEEDED",
12976
+ REVERTED: "REVERTED"
12977
+ };
12978
+ var EBlockTag2 = {
12979
+ LATEST: "latest",
12980
+ PENDING: "pending"
12981
+ };
12982
+ var EDataAvailabilityMode2 = {
12983
+ L1: "L1",
12984
+ L2: "L2"
12985
+ };
12986
+ var EDAMode2 = {
12987
+ L1: 0,
12988
+ L2: 1
12989
+ };
12990
+ var ETransactionVersion4 = {
12991
+ V0: "0x0",
12992
+ V1: "0x1",
12993
+ V2: "0x2",
12994
+ V3: "0x3",
12995
+ F0: "0x100000000000000000000000000000000",
12996
+ F1: "0x100000000000000000000000000000001",
12997
+ F2: "0x100000000000000000000000000000002",
12998
+ F3: "0x100000000000000000000000000000003"
12999
+ };
13000
+ var ETransactionVersion22 = {
13001
+ V0: "0x0",
13002
+ V1: "0x1",
13003
+ V2: "0x2",
13004
+ F0: "0x100000000000000000000000000000000",
13005
+ F1: "0x100000000000000000000000000000001",
13006
+ F2: "0x100000000000000000000000000000002"
13007
+ };
13008
+ var ETransactionVersion32 = {
13009
+ V3: "0x3",
13010
+ F3: "0x100000000000000000000000000000003"
13011
+ };
13033
13012
 
13034
13013
  // node_modules/starknet-types-07/dist/esm/wallet-api/index.js
13035
13014
  var wallet_api_exports = {};
@@ -13039,17 +13018,15 @@ var starknet = (() => {
13039
13018
  });
13040
13019
 
13041
13020
  // node_modules/starknet-types-07/dist/esm/wallet-api/constants.js
13042
- var Permission;
13043
- (function(Permission2) {
13044
- Permission2["Accounts"] = "accounts";
13045
- })(Permission || (Permission = {}));
13021
+ var Permission = {
13022
+ ACCOUNTS: "accounts"
13023
+ };
13046
13024
 
13047
13025
  // node_modules/starknet-types-07/dist/esm/wallet-api/typedData.js
13048
- var TypedDataRevision;
13049
- (function(TypedDataRevision2) {
13050
- TypedDataRevision2["Active"] = "1";
13051
- TypedDataRevision2["Legacy"] = "0";
13052
- })(TypedDataRevision || (TypedDataRevision = {}));
13026
+ var TypedDataRevision = {
13027
+ ACTIVE: "1",
13028
+ LEGACY: "0"
13029
+ };
13053
13030
 
13054
13031
  // src/utils/encode.ts
13055
13032
  var encode_exports = {};
@@ -13296,35 +13273,37 @@ var starknet = (() => {
13296
13273
  var RANGE_FELT = range(ZERO, PRIME - 1n);
13297
13274
  var RANGE_I128 = range(-(2n ** 127n), 2n ** 127n - 1n);
13298
13275
  var RANGE_U128 = range(ZERO, 2n ** 128n - 1n);
13299
- var BaseUrl = /* @__PURE__ */ ((BaseUrl2) => {
13300
- BaseUrl2["SN_MAIN"] = "https://alpha-mainnet.starknet.io";
13301
- BaseUrl2["SN_SEPOLIA"] = "https://alpha-sepolia.starknet.io";
13302
- return BaseUrl2;
13303
- })(BaseUrl || {});
13304
- var NetworkName = /* @__PURE__ */ ((NetworkName2) => {
13305
- NetworkName2["SN_MAIN"] = "SN_MAIN";
13306
- NetworkName2["SN_SEPOLIA"] = "SN_SEPOLIA";
13307
- return NetworkName2;
13308
- })(NetworkName || {});
13309
- var StarknetChainId = /* @__PURE__ */ ((StarknetChainId6) => {
13310
- StarknetChainId6["SN_MAIN"] = "0x534e5f4d41494e";
13311
- StarknetChainId6["SN_SEPOLIA"] = "0x534e5f5345504f4c4941";
13312
- return StarknetChainId6;
13313
- })(StarknetChainId || {});
13314
- var TransactionHashPrefix = /* @__PURE__ */ ((TransactionHashPrefix2) => {
13315
- TransactionHashPrefix2["DECLARE"] = "0x6465636c617265";
13316
- TransactionHashPrefix2["DEPLOY"] = "0x6465706c6f79";
13317
- TransactionHashPrefix2["DEPLOY_ACCOUNT"] = "0x6465706c6f795f6163636f756e74";
13318
- TransactionHashPrefix2["INVOKE"] = "0x696e766f6b65";
13319
- TransactionHashPrefix2["L1_HANDLER"] = "0x6c315f68616e646c6572";
13320
- return TransactionHashPrefix2;
13321
- })(TransactionHashPrefix || {});
13322
- var feeMarginPercentage = /* @__PURE__ */ ((feeMarginPercentage2) => {
13323
- feeMarginPercentage2[feeMarginPercentage2["L1_BOUND_MAX_AMOUNT"] = 50] = "L1_BOUND_MAX_AMOUNT";
13324
- feeMarginPercentage2[feeMarginPercentage2["L1_BOUND_MAX_PRICE_PER_UNIT"] = 50] = "L1_BOUND_MAX_PRICE_PER_UNIT";
13325
- feeMarginPercentage2[feeMarginPercentage2["MAX_FEE"] = 50] = "MAX_FEE";
13326
- return feeMarginPercentage2;
13327
- })(feeMarginPercentage || {});
13276
+ var BaseUrl = {
13277
+ SN_MAIN: "https://alpha-mainnet.starknet.io",
13278
+ SN_SEPOLIA: "https://alpha-sepolia.starknet.io"
13279
+ };
13280
+ var NetworkName = {
13281
+ SN_MAIN: "SN_MAIN",
13282
+ SN_SEPOLIA: "SN_SEPOLIA"
13283
+ };
13284
+ var StarknetChainId = {
13285
+ SN_MAIN: "0x534e5f4d41494e",
13286
+ // encodeShortString('SN_MAIN'),
13287
+ SN_SEPOLIA: "0x534e5f5345504f4c4941"
13288
+ // encodeShortString('SN_SEPOLIA')
13289
+ };
13290
+ var TransactionHashPrefix = {
13291
+ DECLARE: "0x6465636c617265",
13292
+ // encodeShortString('declare'),
13293
+ DEPLOY: "0x6465706c6f79",
13294
+ // encodeShortString('deploy'),
13295
+ DEPLOY_ACCOUNT: "0x6465706c6f795f6163636f756e74",
13296
+ // encodeShortString('deploy_account'),
13297
+ INVOKE: "0x696e766f6b65",
13298
+ // encodeShortString('invoke'),
13299
+ L1_HANDLER: "0x6c315f68616e646c6572"
13300
+ // encodeShortString('l1_handler'),
13301
+ };
13302
+ var FeeMarginPercentage = {
13303
+ L1_BOUND_MAX_AMOUNT: 50,
13304
+ L1_BOUND_MAX_PRICE_PER_UNIT: 50,
13305
+ MAX_FEE: 50
13306
+ };
13328
13307
  var UDC = {
13329
13308
  ADDRESS: "0x041a78e741e5af2fec34b695679bc6891742439f7afb8484ecd7766661ad02bf",
13330
13309
  ENTRYPOINT: "deployContract"
@@ -13951,79 +13930,71 @@ var starknet = (() => {
13951
13930
  });
13952
13931
 
13953
13932
  // src/types/calldata.ts
13954
- var ValidateType = /* @__PURE__ */ ((ValidateType2) => {
13955
- ValidateType2["DEPLOY"] = "DEPLOY";
13956
- ValidateType2["CALL"] = "CALL";
13957
- ValidateType2["INVOKE"] = "INVOKE";
13958
- return ValidateType2;
13959
- })(ValidateType || {});
13960
- var Uint = /* @__PURE__ */ ((Uint2) => {
13961
- Uint2["u8"] = "core::integer::u8";
13962
- Uint2["u16"] = "core::integer::u16";
13963
- Uint2["u32"] = "core::integer::u32";
13964
- Uint2["u64"] = "core::integer::u64";
13965
- Uint2["u128"] = "core::integer::u128";
13966
- Uint2["u256"] = "core::integer::u256";
13967
- Uint2["u512"] = "core::integer::u512";
13968
- return Uint2;
13969
- })(Uint || {});
13970
- var Literal = /* @__PURE__ */ ((Literal2) => {
13971
- Literal2["ClassHash"] = "core::starknet::class_hash::ClassHash";
13972
- Literal2["ContractAddress"] = "core::starknet::contract_address::ContractAddress";
13973
- Literal2["Secp256k1Point"] = "core::starknet::secp256k1::Secp256k1Point";
13974
- return Literal2;
13975
- })(Literal || {});
13933
+ var ValidateType = {
13934
+ DEPLOY: "DEPLOY",
13935
+ CALL: "CALL",
13936
+ INVOKE: "INVOKE"
13937
+ };
13938
+ var Uint = {
13939
+ u8: "core::integer::u8",
13940
+ u16: "core::integer::u16",
13941
+ u32: "core::integer::u32",
13942
+ u64: "core::integer::u64",
13943
+ u128: "core::integer::u128",
13944
+ u256: "core::integer::u256",
13945
+ // This one is struct
13946
+ u512: "core::integer::u512"
13947
+ // This one is struct
13948
+ };
13949
+ var Literal = {
13950
+ ClassHash: "core::starknet::class_hash::ClassHash",
13951
+ ContractAddress: "core::starknet::contract_address::ContractAddress",
13952
+ Secp256k1Point: "core::starknet::secp256k1::Secp256k1Point"
13953
+ };
13976
13954
 
13977
13955
  // src/types/lib/contract/index.ts
13978
- var EntryPointType = /* @__PURE__ */ ((EntryPointType2) => {
13979
- EntryPointType2["EXTERNAL"] = "EXTERNAL";
13980
- EntryPointType2["L1_HANDLER"] = "L1_HANDLER";
13981
- EntryPointType2["CONSTRUCTOR"] = "CONSTRUCTOR";
13982
- return EntryPointType2;
13983
- })(EntryPointType || {});
13956
+ var EntryPointType = {
13957
+ EXTERNAL: "EXTERNAL",
13958
+ L1_HANDLER: "L1_HANDLER",
13959
+ CONSTRUCTOR: "CONSTRUCTOR"
13960
+ };
13984
13961
 
13985
13962
  // src/types/lib/index.ts
13986
- var TransactionType = /* @__PURE__ */ ((TransactionType2) => {
13987
- TransactionType2["DECLARE"] = "DECLARE";
13988
- TransactionType2["DEPLOY"] = "DEPLOY";
13989
- TransactionType2["DEPLOY_ACCOUNT"] = "DEPLOY_ACCOUNT";
13990
- TransactionType2["INVOKE"] = "INVOKE_FUNCTION";
13991
- return TransactionType2;
13992
- })(TransactionType || {});
13993
- var TransactionStatus = /* @__PURE__ */ ((TransactionStatus2) => {
13994
- TransactionStatus2["NOT_RECEIVED"] = "NOT_RECEIVED";
13995
- TransactionStatus2["RECEIVED"] = "RECEIVED";
13996
- TransactionStatus2["ACCEPTED_ON_L2"] = "ACCEPTED_ON_L2";
13997
- TransactionStatus2["ACCEPTED_ON_L1"] = "ACCEPTED_ON_L1";
13998
- TransactionStatus2["REJECTED"] = "REJECTED";
13999
- TransactionStatus2["REVERTED"] = "REVERTED";
14000
- return TransactionStatus2;
14001
- })(TransactionStatus || {});
14002
- var TransactionFinalityStatus = /* @__PURE__ */ ((TransactionFinalityStatus2) => {
14003
- TransactionFinalityStatus2["NOT_RECEIVED"] = "NOT_RECEIVED";
14004
- TransactionFinalityStatus2["RECEIVED"] = "RECEIVED";
14005
- TransactionFinalityStatus2["ACCEPTED_ON_L2"] = "ACCEPTED_ON_L2";
14006
- TransactionFinalityStatus2["ACCEPTED_ON_L1"] = "ACCEPTED_ON_L1";
14007
- return TransactionFinalityStatus2;
14008
- })(TransactionFinalityStatus || {});
14009
- var TransactionExecutionStatus = /* @__PURE__ */ ((TransactionExecutionStatus2) => {
14010
- TransactionExecutionStatus2["REJECTED"] = "REJECTED";
14011
- TransactionExecutionStatus2["REVERTED"] = "REVERTED";
14012
- TransactionExecutionStatus2["SUCCEEDED"] = "SUCCEEDED";
14013
- return TransactionExecutionStatus2;
14014
- })(TransactionExecutionStatus || {});
14015
- var BlockStatus = /* @__PURE__ */ ((BlockStatus2) => {
14016
- BlockStatus2["PENDING"] = "PENDING";
14017
- BlockStatus2["ACCEPTED_ON_L1"] = "ACCEPTED_ON_L1";
14018
- BlockStatus2["ACCEPTED_ON_L2"] = "ACCEPTED_ON_L2";
14019
- BlockStatus2["REJECTED"] = "REJECTED";
14020
- return BlockStatus2;
14021
- })(BlockStatus || {});
14022
- var BlockTag = /* @__PURE__ */ ((BlockTag2) => {
14023
- BlockTag2["pending"] = "pending";
14024
- BlockTag2["latest"] = "latest";
14025
- return BlockTag2;
14026
- })(BlockTag || {});
13963
+ var TransactionType = {
13964
+ DECLARE: "DECLARE",
13965
+ DEPLOY: "DEPLOY",
13966
+ DEPLOY_ACCOUNT: "DEPLOY_ACCOUNT",
13967
+ INVOKE: "INVOKE_FUNCTION"
13968
+ };
13969
+ var TransactionStatus = {
13970
+ NOT_RECEIVED: "NOT_RECEIVED",
13971
+ RECEIVED: "RECEIVED",
13972
+ ACCEPTED_ON_L2: "ACCEPTED_ON_L2",
13973
+ ACCEPTED_ON_L1: "ACCEPTED_ON_L1",
13974
+ REJECTED: "REJECTED",
13975
+ REVERTED: "REVERTED"
13976
+ };
13977
+ var TransactionFinalityStatus = {
13978
+ NOT_RECEIVED: "NOT_RECEIVED",
13979
+ RECEIVED: "RECEIVED",
13980
+ ACCEPTED_ON_L2: "ACCEPTED_ON_L2",
13981
+ ACCEPTED_ON_L1: "ACCEPTED_ON_L1"
13982
+ };
13983
+ var TransactionExecutionStatus = {
13984
+ REJECTED: "REJECTED",
13985
+ REVERTED: "REVERTED",
13986
+ SUCCEEDED: "SUCCEEDED"
13987
+ };
13988
+ var BlockStatus = {
13989
+ PENDING: "PENDING",
13990
+ ACCEPTED_ON_L1: "ACCEPTED_ON_L1",
13991
+ ACCEPTED_ON_L2: "ACCEPTED_ON_L2",
13992
+ REJECTED: "REJECTED"
13993
+ };
13994
+ var BlockTag = {
13995
+ PENDING: "pending",
13996
+ LATEST: "latest"
13997
+ };
14027
13998
 
14028
13999
  // src/utils/assert.ts
14029
14000
  function assert(condition, message) {
@@ -14065,18 +14036,19 @@ var starknet = (() => {
14065
14036
  function isBigInt(value) {
14066
14037
  return typeof value === "bigint";
14067
14038
  }
14068
- function toHex(number4) {
14069
- return addHexPrefix(toBigInt(number4).toString(16));
14039
+ function toHex(value) {
14040
+ return addHexPrefix(toBigInt(value).toString(16));
14070
14041
  }
14071
14042
  var toHexString = toHex;
14072
14043
  function toStorageKey(number4) {
14073
- const res = addHexPrefix(toBigInt(number4).toString(16).padStart(64, "0"));
14074
- return res;
14044
+ return addHexPrefix(toBigInt(number4).toString(16).padStart(64, "0"));
14075
14045
  }
14076
14046
  function hexToDecimalString(hex) {
14077
14047
  return BigInt(addHexPrefix(hex)).toString(10);
14078
14048
  }
14079
- var cleanHex = (hex) => hex.toLowerCase().replace(/^(0x)0+/, "$1");
14049
+ function cleanHex(hex) {
14050
+ return hex.toLowerCase().replace(/^(0x)0+/, "$1");
14051
+ }
14080
14052
  function assertInRange(input, lowerBound, upperBound, inputName = "") {
14081
14053
  const messageSuffix = inputName === "" ? "invalid length" : `invalid ${inputName} length`;
14082
14054
  const inputBigInt = BigInt(input);
@@ -14087,39 +14059,43 @@ var starknet = (() => {
14087
14059
  `Message not signable, ${messageSuffix}.`
14088
14060
  );
14089
14061
  }
14090
- function bigNumberishArrayToDecimalStringArray(rawCalldata) {
14091
- return rawCalldata.map((x) => toBigInt(x).toString(10));
14062
+ function bigNumberishArrayToDecimalStringArray(data) {
14063
+ return data.map((x) => toBigInt(x).toString(10));
14092
14064
  }
14093
- function bigNumberishArrayToHexadecimalStringArray(rawCalldata) {
14094
- return rawCalldata.map((x) => toHex(x));
14065
+ function bigNumberishArrayToHexadecimalStringArray(data) {
14066
+ return data.map((x) => toHex(x));
14095
14067
  }
14096
- var isStringWholeNumber = (value) => /^\d+$/.test(value);
14097
- function getDecimalString(value) {
14098
- if (isHex(value)) {
14099
- return hexToDecimalString(value);
14068
+ function isStringWholeNumber(str) {
14069
+ return /^\d+$/.test(str);
14070
+ }
14071
+ function getDecimalString(str) {
14072
+ if (isHex(str)) {
14073
+ return hexToDecimalString(str);
14100
14074
  }
14101
- if (isStringWholeNumber(value)) {
14102
- return value;
14075
+ if (isStringWholeNumber(str)) {
14076
+ return str;
14103
14077
  }
14104
- throw new Error(`${value} need to be hex-string or whole-number-string`);
14078
+ throw new Error(`${str} needs to be a hex-string or whole-number-string`);
14105
14079
  }
14106
- function getHexString(value) {
14107
- if (isHex(value)) {
14108
- return value;
14080
+ function getHexString(str) {
14081
+ if (isHex(str)) {
14082
+ return str;
14109
14083
  }
14110
- if (isStringWholeNumber(value)) {
14111
- return toHexString(value);
14084
+ if (isStringWholeNumber(str)) {
14085
+ return toHexString(str);
14112
14086
  }
14113
- throw new Error(`${value} need to be hex-string or whole-number-string`);
14087
+ throw new Error(`${str} needs to be a hex-string or whole-number-string`);
14114
14088
  }
14115
- function getHexStringArray(value) {
14116
- return value.map((el) => getHexString(el));
14089
+ function getHexStringArray(array) {
14090
+ return array.map(getHexString);
14117
14091
  }
14118
- var toCairoBool = (value) => (+value).toString();
14119
- function hexToBytes2(value) {
14120
- if (!isHex(value))
14121
- throw new Error(`${value} need to be a hex-string`);
14122
- let adaptedValue = removeHexPrefix(value);
14092
+ function toCairoBool(value) {
14093
+ return (+value).toString();
14094
+ }
14095
+ function hexToBytes2(str) {
14096
+ if (!isHex(str))
14097
+ throw new Error(`${str} needs to be a hex-string`);
14098
+ let adaptedValue = removeHexPrefix(str);
14123
14099
  if (adaptedValue.length % 2 !== 0) {
14124
14100
  adaptedValue = `0${adaptedValue}`;
14125
14101
  }
@@ -14136,7 +14112,7 @@ var starknet = (() => {
14136
14112
  return typeof value === "boolean";
14137
14113
  }
14138
14114
 
14139
- // src/utils/selector.ts
14115
+ // src/utils/hash/selector.ts
14140
14116
  var selector_exports = {};
14141
14117
  __export(selector_exports, {
14142
14118
  getSelector: () => getSelector,
@@ -16559,7 +16535,7 @@ var starknet = (() => {
16559
16535
  return state[0];
16560
16536
  }
16561
16537
 
16562
- // src/utils/selector.ts
16538
+ // src/utils/hash/selector.ts
16563
16539
  function keccakBn(value) {
16564
16540
  const hexWithoutPrefix = removeHexPrefix(toHex(BigInt(value)));
16565
16541
  const evenHex = hexWithoutPrefix.length % 2 === 0 ? hexWithoutPrefix : `0${hexWithoutPrefix}`;
@@ -16683,6 +16659,7 @@ var starknet = (() => {
16683
16659
  isTypeFelt: () => isTypeFelt,
16684
16660
  isTypeLiteral: () => isTypeLiteral,
16685
16661
  isTypeNamedTuple: () => isTypeNamedTuple,
16662
+ isTypeNonZero: () => isTypeNonZero,
16686
16663
  isTypeOption: () => isTypeOption,
16687
16664
  isTypeResult: () => isTypeResult,
16688
16665
  isTypeSecp256k1Point: () => isTypeSecp256k1Point,
@@ -16984,6 +16961,9 @@ var starknet = (() => {
16984
16961
  }
16985
16962
  return cairo === "1";
16986
16963
  }
16964
+ function isTypeNonZero(type) {
16965
+ return type.startsWith("core::zeroable::NonZero::");
16966
+ }
16987
16967
  function getAbiContractVersion(abi) {
16988
16968
  if (abi.find((it) => it.type === "interface")) {
16989
16969
  return { cairo: "1", compiler: "2" };
@@ -17064,19 +17044,18 @@ var starknet = (() => {
17064
17044
  };
17065
17045
 
17066
17046
  // src/utils/calldata/enum/CairoOption.ts
17067
- var CairoOptionVariant = /* @__PURE__ */ ((CairoOptionVariant2) => {
17068
- CairoOptionVariant2[CairoOptionVariant2["Some"] = 0] = "Some";
17069
- CairoOptionVariant2[CairoOptionVariant2["None"] = 1] = "None";
17070
- return CairoOptionVariant2;
17071
- })(CairoOptionVariant || {});
17047
+ var CairoOptionVariant = {
17048
+ Some: 0,
17049
+ None: 1
17050
+ };
17072
17051
  var CairoOption = class {
17073
17052
  Some;
17074
17053
  None;
17075
17054
  constructor(variant, someContent) {
17076
- if (!(variant in CairoOptionVariant)) {
17055
+ if (!(variant in Object.values(CairoOptionVariant))) {
17077
17056
  throw new Error("Wrong variant : should be CairoOptionVariant.Some or .None.");
17078
17057
  }
17079
- if (variant === 0 /* Some */) {
17058
+ if (variant === CairoOptionVariant.Some) {
17080
17059
  if (typeof someContent === "undefined") {
17081
17060
  throw new Error(
17082
17061
  'The creation of a Cairo Option with "Some" variant needs a content as input.'
@@ -17117,19 +17096,18 @@ var starknet = (() => {
17117
17096
  };
17118
17097
 
17119
17098
  // src/utils/calldata/enum/CairoResult.ts
17120
- var CairoResultVariant = /* @__PURE__ */ ((CairoResultVariant2) => {
17121
- CairoResultVariant2[CairoResultVariant2["Ok"] = 0] = "Ok";
17122
- CairoResultVariant2[CairoResultVariant2["Err"] = 1] = "Err";
17123
- return CairoResultVariant2;
17124
- })(CairoResultVariant || {});
17099
+ var CairoResultVariant = {
17100
+ Ok: 0,
17101
+ Err: 1
17102
+ };
17125
17103
  var CairoResult = class {
17126
17104
  Ok;
17127
17105
  Err;
17128
17106
  constructor(variant, resultContent) {
17129
- if (!(variant in CairoResultVariant)) {
17107
+ if (!(variant in Object.values(CairoResultVariant))) {
17130
17108
  throw new Error("Wrong variant : should be CairoResultVariant.Ok or .Err.");
17131
17109
  }
17132
- if (variant === 0 /* Ok */) {
17110
+ if (variant === CairoResultVariant.Ok) {
17133
17111
  this.Ok = resultContent;
17134
17112
  this.Err = void 0;
17135
17113
  } else {
@@ -17435,6 +17413,9 @@ var starknet = (() => {
17435
17413
  if (isTypeEthAddress(abiType)) {
17436
17414
  return unorderedItem;
17437
17415
  }
17416
+ if (isTypeNonZero(abiType)) {
17417
+ return unorderedItem;
17418
+ }
17438
17419
  if (isTypeByteArray(abiType)) {
17439
17420
  return unorderedItem;
17440
17421
  }
@@ -17517,12 +17498,12 @@ var starknet = (() => {
17517
17498
  );
17518
17499
  if (unorderedResult.isOk()) {
17519
17500
  return new CairoResult(
17520
- 0 /* Ok */,
17501
+ CairoResultVariant.Ok,
17521
17502
  orderInput(unorderedObject2.unwrap(), resultOkType)
17522
17503
  );
17523
17504
  }
17524
17505
  return new CairoResult(
17525
- 1 /* Err */,
17506
+ CairoResultVariant.Err,
17526
17507
  orderInput(unorderedObject2.unwrap(), resultErrType)
17527
17508
  );
17528
17509
  }
@@ -17534,11 +17515,11 @@ var starknet = (() => {
17534
17515
  );
17535
17516
  if (unorderedOption.isSome()) {
17536
17517
  return new CairoOption(
17537
- 0 /* Some */,
17518
+ CairoOptionVariant.Some,
17538
17519
  orderInput(unorderedOption.unwrap(), resultSomeType)
17539
17520
  );
17540
17521
  }
17541
- return new CairoOption(1 /* None */, {});
17522
+ return new CairoOption(CairoOptionVariant.None, {});
17542
17523
  }
17543
17524
  const unorderedCustomEnum = unorderedObject2;
17544
17525
  const variants = Object.entries(unorderedCustomEnum.variant);
@@ -17674,7 +17655,7 @@ var starknet = (() => {
17674
17655
  }
17675
17656
  const typeVariantSome = listTypeVariant2.type;
17676
17657
  if (typeVariantSome === "()") {
17677
- return 0 /* Some */.toString();
17658
+ return CairoOptionVariant.Some.toString();
17678
17659
  }
17679
17660
  const parsedParameter2 = parseCalldataValue(
17680
17661
  myOption.unwrap(),
@@ -17683,11 +17664,11 @@ var starknet = (() => {
17683
17664
  enums
17684
17665
  );
17685
17666
  if (Array.isArray(parsedParameter2)) {
17686
- return [0 /* Some */.toString(), ...parsedParameter2];
17667
+ return [CairoOptionVariant.Some.toString(), ...parsedParameter2];
17687
17668
  }
17688
- return [0 /* Some */.toString(), parsedParameter2];
17669
+ return [CairoOptionVariant.Some.toString(), parsedParameter2];
17689
17670
  }
17690
- return 1 /* None */.toString();
17671
+ return CairoOptionVariant.None.toString();
17691
17672
  }
17692
17673
  if (isTypeResult(type)) {
17693
17674
  const myResult = element;
@@ -17698,7 +17679,7 @@ var starknet = (() => {
17698
17679
  }
17699
17680
  const typeVariantOk = listTypeVariant3.type;
17700
17681
  if (typeVariantOk === "()") {
17701
- return 0 /* Ok */.toString();
17682
+ return CairoResultVariant.Ok.toString();
17702
17683
  }
17703
17684
  const parsedParameter3 = parseCalldataValue(
17704
17685
  myResult.unwrap(),
@@ -17707,9 +17688,9 @@ var starknet = (() => {
17707
17688
  enums
17708
17689
  );
17709
17690
  if (Array.isArray(parsedParameter3)) {
17710
- return [0 /* Ok */.toString(), ...parsedParameter3];
17691
+ return [CairoResultVariant.Ok.toString(), ...parsedParameter3];
17711
17692
  }
17712
- return [0 /* Ok */.toString(), parsedParameter3];
17693
+ return [CairoResultVariant.Ok.toString(), parsedParameter3];
17713
17694
  }
17714
17695
  const listTypeVariant2 = variants.find((variant) => variant.name === "Err");
17715
17696
  if (typeof listTypeVariant2 === "undefined") {
@@ -17717,13 +17698,13 @@ var starknet = (() => {
17717
17698
  }
17718
17699
  const typeVariantErr = listTypeVariant2.type;
17719
17700
  if (typeVariantErr === "()") {
17720
- return 1 /* Err */.toString();
17701
+ return CairoResultVariant.Err.toString();
17721
17702
  }
17722
17703
  const parsedParameter2 = parseCalldataValue(myResult.unwrap(), typeVariantErr, structs, enums);
17723
17704
  if (Array.isArray(parsedParameter2)) {
17724
- return [1 /* Err */.toString(), ...parsedParameter2];
17705
+ return [CairoResultVariant.Err.toString(), ...parsedParameter2];
17725
17706
  }
17726
- return [1 /* Err */.toString(), parsedParameter2];
17707
+ return [CairoResultVariant.Err.toString(), parsedParameter2];
17727
17708
  }
17728
17709
  const myEnum = element;
17729
17710
  const activeVariant = myEnum.activeVariant();
@@ -17742,6 +17723,9 @@ var starknet = (() => {
17742
17723
  }
17743
17724
  return [numActiveVariant.toString(), parsedParameter];
17744
17725
  }
17726
+ if (isTypeNonZero(type)) {
17727
+ return parseBaseTypes(getArrayType(type), element);
17728
+ }
17745
17729
  if (typeof element === "object") {
17746
17730
  throw Error(`Parameter ${element} do not align with abi parameter ${type}`);
17747
17731
  }
@@ -17759,6 +17743,8 @@ var starknet = (() => {
17759
17743
  value = splitLongString(value);
17760
17744
  }
17761
17745
  return parseCalldataValue(value, input.type, structs, enums);
17746
+ case isTypeNonZero(type):
17747
+ return parseBaseTypes(getArrayType(type), value);
17762
17748
  case type === "core::starknet::eth_address::EthAddress":
17763
17749
  return parseBaseTypes(type, value);
17764
17750
  case (isTypeStruct(type, structs) || isTypeTuple(type) || CairoUint256.isAbiType(type) || CairoUint256.isAbiType(type)):
@@ -17850,6 +17836,10 @@ var starknet = (() => {
17850
17836
  }
17851
17837
  return parsedDataArr;
17852
17838
  }
17839
+ if (isTypeNonZero(element.type)) {
17840
+ const el = { name: "", type: getArrayType(element.type) };
17841
+ return parseResponseValue(responseIterator, el, structs, enums);
17842
+ }
17853
17843
  if (structs && element.type in structs && structs[element.type]) {
17854
17844
  if (element.type === "core::starknet::eth_address::EthAddress") {
17855
17845
  return parseBaseTypes2(element.type, responseIterator);
@@ -17875,12 +17865,12 @@ var starknet = (() => {
17875
17865
  return acc;
17876
17866
  }, {});
17877
17867
  if (element.type.startsWith("core::option::Option")) {
17878
- const content = variantNum === 0 /* Some */ ? rawEnum.Some : void 0;
17868
+ const content = variantNum === CairoOptionVariant.Some ? rawEnum.Some : void 0;
17879
17869
  return new CairoOption(variantNum, content);
17880
17870
  }
17881
17871
  if (element.type.startsWith("core::result::Result")) {
17882
17872
  let content;
17883
- if (variantNum === 0 /* Ok */) {
17873
+ if (variantNum === CairoResultVariant.Ok) {
17884
17874
  content = rawEnum.Ok;
17885
17875
  } else {
17886
17876
  content = rawEnum.Err;
@@ -17941,6 +17931,8 @@ var starknet = (() => {
17941
17931
  }
17942
17932
  }
17943
17933
  return parsedDataArr;
17934
+ case isTypeNonZero(type):
17935
+ return parseResponseValue(responseIterator, output3, structs, enums);
17944
17936
  default:
17945
17937
  return parseBaseTypes2(type, responseIterator);
17946
17938
  }
@@ -17984,70 +17976,70 @@ var starknet = (() => {
17984
17976
  );
17985
17977
  let param;
17986
17978
  switch (input.type) {
17987
- case "core::integer::u256" /* u256 */:
17979
+ case Uint.u256:
17988
17980
  param = new CairoUint256(parameter).toBigInt();
17989
17981
  break;
17990
- case "core::integer::u512" /* u512 */:
17982
+ case Uint.u512:
17991
17983
  param = new CairoUint512(parameter).toBigInt();
17992
17984
  break;
17993
17985
  default:
17994
17986
  param = toBigInt(parameter);
17995
17987
  }
17996
17988
  switch (input.type) {
17997
- case "core::integer::u8" /* u8 */:
17989
+ case Uint.u8:
17998
17990
  assert(
17999
17991
  param >= 0n && param <= 255n,
18000
17992
  `Validate: arg ${input.name} cairo typed ${input.type} should be in range [0 - 255]`
18001
17993
  );
18002
17994
  break;
18003
- case "core::integer::u16" /* u16 */:
17995
+ case Uint.u16:
18004
17996
  assert(
18005
17997
  param >= 0n && param <= 65535n,
18006
17998
  `Validate: arg ${input.name} cairo typed ${input.type} should be in range [0, 65535]`
18007
17999
  );
18008
18000
  break;
18009
- case "core::integer::u32" /* u32 */:
18001
+ case Uint.u32:
18010
18002
  assert(
18011
18003
  param >= 0n && param <= 4294967295n,
18012
18004
  `Validate: arg ${input.name} cairo typed ${input.type} should be in range [0, 4294967295]`
18013
18005
  );
18014
18006
  break;
18015
- case "core::integer::u64" /* u64 */:
18007
+ case Uint.u64:
18016
18008
  assert(
18017
18009
  param >= 0n && param <= 2n ** 64n - 1n,
18018
18010
  `Validate: arg ${input.name} cairo typed ${input.type} should be in range [0, 2^64-1]`
18019
18011
  );
18020
18012
  break;
18021
- case "core::integer::u128" /* u128 */:
18013
+ case Uint.u128:
18022
18014
  assert(
18023
18015
  param >= 0n && param <= 2n ** 128n - 1n,
18024
18016
  `Validate: arg ${input.name} cairo typed ${input.type} should be in range [0, 2^128-1]`
18025
18017
  );
18026
18018
  break;
18027
- case "core::integer::u256" /* u256 */:
18019
+ case Uint.u256:
18028
18020
  assert(
18029
18021
  param >= 0n && param <= 2n ** 256n - 1n,
18030
18022
  `Validate: arg ${input.name} is ${input.type} 0 - 2^256-1`
18031
18023
  );
18032
18024
  break;
18033
- case "core::integer::u512" /* u512 */:
18025
+ case Uint.u512:
18034
18026
  assert(CairoUint512.is(param), `Validate: arg ${input.name} is ${input.type} 0 - 2^512-1`);
18035
18027
  break;
18036
- case "core::starknet::class_hash::ClassHash" /* ClassHash */:
18028
+ case Literal.ClassHash:
18037
18029
  assert(
18038
18030
  // from : https://github.com/starkware-libs/starknet-specs/blob/29bab650be6b1847c92d4461d4c33008b5e50b1a/api/starknet_api_openrpc.json#L1670
18039
18031
  param >= 0n && param <= 2n ** 252n - 1n,
18040
18032
  `Validate: arg ${input.name} cairo typed ${input.type} should be in range [0, 2^252-1]`
18041
18033
  );
18042
18034
  break;
18043
- case "core::starknet::contract_address::ContractAddress" /* ContractAddress */:
18035
+ case Literal.ContractAddress:
18044
18036
  assert(
18045
18037
  // from : https://github.com/starkware-libs/starknet-specs/blob/29bab650be6b1847c92d4461d4c33008b5e50b1a/api/starknet_api_openrpc.json#L1245
18046
18038
  param >= 0n && param <= 2n ** 252n - 1n,
18047
18039
  `Validate: arg ${input.name} cairo typed ${input.type} should be in range [0, 2^252-1]`
18048
18040
  );
18049
18041
  break;
18050
- case "core::starknet::secp256k1::Secp256k1Point" /* Secp256k1Point */: {
18042
+ case Literal.Secp256k1Point: {
18051
18043
  assert(
18052
18044
  param >= 0n && param <= 2n ** 512n - 1n,
18053
18045
  `Validate: arg ${input.name} must be ${input.type} : a 512 bits number.`
@@ -18065,7 +18057,7 @@ var starknet = (() => {
18065
18057
  );
18066
18058
  };
18067
18059
  var validateStruct = (parameter, input, structs) => {
18068
- if (input.type === "core::integer::u256" /* u256 */ || input.type === "core::integer::u512" /* u512 */) {
18060
+ if (input.type === Uint.u256 || input.type === Uint.u512) {
18069
18061
  validateUint(parameter, input);
18070
18062
  return;
18071
18063
  }
@@ -18157,6 +18149,42 @@ var starknet = (() => {
18157
18149
  );
18158
18150
  }
18159
18151
  };
18152
+ var validateNonZero = (parameter, input) => {
18153
+ const baseType = getArrayType(input.type);
18154
+ assert(
18155
+ isTypeUint(baseType) && baseType !== CairoUint512.abiSelector || isTypeFelt(baseType),
18156
+ `Validate: ${input.name} type is not authorized for NonZero type.`
18157
+ );
18158
+ switch (true) {
18159
+ case isTypeFelt(baseType):
18160
+ validateFelt(parameter, input);
18161
+ assert(
18162
+ BigInt(parameter.toString(10)) > 0,
18163
+ "Validate: value 0 is not authorized in NonZero felt252 type."
18164
+ );
18165
+ break;
18166
+ case isTypeUint(baseType):
18167
+ validateUint(parameter, { name: "", type: baseType });
18168
+ switch (input.type) {
18169
+ case Uint.u256:
18170
+ assert(
18171
+ new CairoUint256(parameter).toBigInt() > 0,
18172
+ "Validate: value 0 is not authorized in NonZero uint256 type."
18173
+ );
18174
+ break;
18175
+ default:
18176
+ assert(
18177
+ toBigInt(parameter) > 0,
18178
+ "Validate: value 0 is not authorized in NonZero uint type."
18179
+ );
18180
+ }
18181
+ break;
18182
+ default:
18183
+ throw new Error(
18184
+ `Validate Unhandled: argument ${input.name}, type ${input.type}, value ${parameter}`
18185
+ );
18186
+ }
18187
+ };
18160
18188
  function validateFields(abiMethod, args, structs, enums) {
18161
18189
  abiMethod.inputs.reduce((acc, input) => {
18162
18190
  const parameter = args[acc];
@@ -18190,6 +18218,9 @@ var starknet = (() => {
18190
18218
  case isTypeTuple(input.type):
18191
18219
  validateTuple(parameter, input);
18192
18220
  break;
18221
+ case isTypeNonZero(input.type):
18222
+ validateNonZero(parameter, input);
18223
+ break;
18193
18224
  default:
18194
18225
  throw new Error(
18195
18226
  `Validate Unhandled: argument ${input.name}, type ${input.type}, value ${parameter}`
@@ -18218,20 +18249,20 @@ var starknet = (() => {
18218
18249
  * @param args ArgsOrCalldata - arguments that are passed to the method
18219
18250
  */
18220
18251
  validate(type, method, args = []) {
18221
- if (type !== "DEPLOY" /* DEPLOY */) {
18252
+ if (type !== ValidateType.DEPLOY) {
18222
18253
  const invocableFunctionNames = this.abi.filter((abi) => {
18223
18254
  if (abi.type !== "function")
18224
18255
  return false;
18225
18256
  const isView = abi.stateMutability === "view" || abi.state_mutability === "view";
18226
- return type === "INVOKE" /* INVOKE */ ? !isView : isView;
18257
+ return type === ValidateType.INVOKE ? !isView : isView;
18227
18258
  }).map((abi) => abi.name);
18228
18259
  assert(
18229
18260
  invocableFunctionNames.includes(method),
18230
- `${type === "INVOKE" /* INVOKE */ ? "invocable" : "viewable"} method not found in abi`
18261
+ `${type === ValidateType.INVOKE ? "invocable" : "viewable"} method not found in abi`
18231
18262
  );
18232
18263
  }
18233
18264
  const abiMethod = this.abi.find(
18234
- (abi) => type === "DEPLOY" /* DEPLOY */ ? abi.name === method && abi.type === "constructor" : abi.name === method && abi.type === "function"
18265
+ (abi) => type === ValidateType.DEPLOY ? abi.name === method && abi.type === "constructor" : abi.name === method && abi.type === "function"
18235
18266
  );
18236
18267
  if (isNoConstructorValid(method, args, abiMethod)) {
18237
18268
  return;
@@ -18311,14 +18342,14 @@ var starknet = (() => {
18311
18342
  const keys = [...Object.getOwnPropertyNames(value), ...methodsKeys];
18312
18343
  if (keys.includes("isSome") && keys.includes("isNone")) {
18313
18344
  const myOption = value;
18314
- const variantNb = myOption.isSome() ? 0 /* Some */ : 1 /* None */;
18345
+ const variantNb = myOption.isSome() ? CairoOptionVariant.Some : CairoOptionVariant.None;
18315
18346
  if (myOption.isSome())
18316
18347
  return getEntries({ 0: variantNb, 1: myOption.unwrap() }, `${prefix}${kk}.`);
18317
18348
  return [[`${prefix}${kk}`, felt(variantNb)]];
18318
18349
  }
18319
18350
  if (keys.includes("isOk") && keys.includes("isErr")) {
18320
18351
  const myResult = value;
18321
- const variantNb = myResult.isOk() ? 0 /* Ok */ : 1 /* Err */;
18352
+ const variantNb = myResult.isOk() ? CairoResultVariant.Ok : CairoResultVariant.Err;
18322
18353
  return getEntries({ 0: variantNb, 1: myResult.unwrap() }, `${prefix}${kk}.`);
18323
18354
  }
18324
18355
  if (keys.includes("variant") && keys.includes("activeVariant")) {
@@ -18469,6 +18500,7 @@ var starknet = (() => {
18469
18500
  computeCompiledClassHash: () => computeCompiledClassHash,
18470
18501
  computeContractClassHash: () => computeContractClassHash,
18471
18502
  computeHashOnElements: () => computeHashOnElements3,
18503
+ computeHintedClassHash: () => computeHintedClassHash,
18472
18504
  computeLegacyContractClassHash: () => computeLegacyContractClassHash,
18473
18505
  computePedersenHash: () => computePedersenHash,
18474
18506
  computePedersenHashOnElements: () => computePedersenHashOnElements,
@@ -19918,7 +19950,7 @@ var starknet = (() => {
19918
19950
  }
19919
19951
  function calculateDeclareTransactionHash(classHash, senderAddress, version, maxFee, chainId, nonce, compiledClassHash) {
19920
19952
  return calculateTransactionHashCommon(
19921
- "0x6465636c617265" /* DECLARE */,
19953
+ TransactionHashPrefix.DECLARE,
19922
19954
  version,
19923
19955
  senderAddress,
19924
19956
  0,
@@ -19931,7 +19963,7 @@ var starknet = (() => {
19931
19963
  function calculateDeployAccountTransactionHash(contractAddress, classHash, constructorCalldata, salt, version, maxFee, chainId, nonce) {
19932
19964
  const calldata = [classHash, salt, ...constructorCalldata];
19933
19965
  return calculateTransactionHashCommon(
19934
- "0x6465706c6f795f6163636f756e74" /* DEPLOY_ACCOUNT */,
19966
+ TransactionHashPrefix.DEPLOY_ACCOUNT,
19935
19967
  version,
19936
19968
  contractAddress,
19937
19969
  0,
@@ -19943,7 +19975,7 @@ var starknet = (() => {
19943
19975
  }
19944
19976
  function calculateTransactionHash(contractAddress, version, calldata, maxFee, chainId, nonce) {
19945
19977
  return calculateTransactionHashCommon(
19946
- "0x696e766f6b65" /* INVOKE */,
19978
+ TransactionHashPrefix.INVOKE,
19947
19979
  version,
19948
19980
  contractAddress,
19949
19981
  0,
@@ -19997,7 +20029,7 @@ var starknet = (() => {
19997
20029
  }
19998
20030
  function calculateDeployAccountTransactionHash2(contractAddress, classHash, compiledConstructorCalldata, salt, version, chainId, nonce, nonceDataAvailabilityMode, feeDataAvailabilityMode, resourceBounds, tip, paymasterData) {
19999
20031
  return calculateTransactionHashCommon2(
20000
- "0x6465706c6f795f6163636f756e74" /* DEPLOY_ACCOUNT */,
20032
+ TransactionHashPrefix.DEPLOY_ACCOUNT,
20001
20033
  version,
20002
20034
  contractAddress,
20003
20035
  chainId,
@@ -20012,7 +20044,7 @@ var starknet = (() => {
20012
20044
  }
20013
20045
  function calculateDeclareTransactionHash2(classHash, compiledClassHash, senderAddress, version, chainId, nonce, accountDeploymentData, nonceDataAvailabilityMode, feeDataAvailabilityMode, resourceBounds, tip, paymasterData) {
20014
20046
  return calculateTransactionHashCommon2(
20015
- "0x6465636c617265" /* DECLARE */,
20047
+ TransactionHashPrefix.DECLARE,
20016
20048
  version,
20017
20049
  senderAddress,
20018
20050
  chainId,
@@ -20027,7 +20059,7 @@ var starknet = (() => {
20027
20059
  }
20028
20060
  function calculateInvokeTransactionHash(senderAddress, version, compiledCalldata, chainId, nonce, accountDeploymentData, nonceDataAvailabilityMode, feeDataAvailabilityMode, resourceBounds, tip, paymasterData) {
20029
20061
  return calculateTransactionHashCommon2(
20030
- "0x696e766f6b65" /* INVOKE */,
20062
+ TransactionHashPrefix.INVOKE,
20031
20063
  version,
20032
20064
  senderAddress,
20033
20065
  chainId,
@@ -20043,9 +20075,7 @@ var starknet = (() => {
20043
20075
 
20044
20076
  // src/utils/hash/transactionHash/index.ts
20045
20077
  function isV3InvokeTx(args) {
20046
- return [ETransactionVersion4.V3, ETransactionVersion4.F3].includes(
20047
- args.version
20048
- );
20078
+ return [ETransactionVersion4.V3, ETransactionVersion4.F3].includes(args.version);
20049
20079
  }
20050
20080
  function calculateInvokeTransactionHash2(args) {
20051
20081
  if (isV3InvokeTx(args)) {
@@ -20073,9 +20103,7 @@ var starknet = (() => {
20073
20103
  );
20074
20104
  }
20075
20105
  function isV3DeclareTx(args) {
20076
- return [ETransactionVersion4.V3, ETransactionVersion4.F3].includes(
20077
- args.version
20078
- );
20106
+ return [ETransactionVersion4.V3, ETransactionVersion4.F3].includes(args.version);
20079
20107
  }
20080
20108
  function calculateDeclareTransactionHash3(args) {
20081
20109
  if (isV3DeclareTx(args)) {
@@ -20105,9 +20133,7 @@ var starknet = (() => {
20105
20133
  );
20106
20134
  }
20107
20135
  function isV3DeployAccountTx(args) {
20108
- return [ETransactionVersion4.V3, ETransactionVersion4.F3].includes(
20109
- args.version
20110
- );
20136
+ return [ETransactionVersion4.V3, ETransactionVersion4.F3].includes(args.version);
20111
20137
  }
20112
20138
  function calculateDeployAccountTransactionHash3(args) {
20113
20139
  if (isV3DeployAccountTx(args)) {
@@ -20689,14 +20715,14 @@ var starknet = (() => {
20689
20715
  }
20690
20716
 
20691
20717
  // src/utils/json.ts
20692
- var parseIntAsNumberOrBigInt = (x) => {
20693
- if (!isInteger(x))
20694
- return parseFloat(x);
20695
- const v = parseInt(x, 10);
20696
- return Number.isSafeInteger(v) ? v : BigInt(x);
20718
+ var parseIntAsNumberOrBigInt = (str) => {
20719
+ if (!isInteger(str))
20720
+ return parseFloat(str);
20721
+ const num = parseInt(str, 10);
20722
+ return Number.isSafeInteger(num) ? num : BigInt(str);
20697
20723
  };
20698
- var parse2 = (x) => parse(String(x), void 0, parseIntAsNumberOrBigInt);
20699
- var parseAlwaysAsBig = (x) => parse(String(x), void 0, parseNumberAndBigInt);
20724
+ var parse2 = (str) => parse(String(str), void 0, parseIntAsNumberOrBigInt);
20725
+ var parseAlwaysAsBig = (str) => parse(String(str), void 0, parseNumberAndBigInt);
20700
20726
  var stringify2 = (value, replacer, space, numberStringifiers) => stringify(value, replacer, space, numberStringifiers);
20701
20727
  var stringifyAlwaysAsBig = stringify2;
20702
20728
 
@@ -25081,10 +25107,10 @@ var starknet = (() => {
25081
25107
  function signatureToHexArray(sig) {
25082
25108
  return bigNumberishArrayToHexadecimalStringArray(formatSignature(sig));
25083
25109
  }
25084
- function estimatedFeeToMaxFee(estimatedFee, overhead = 50 /* MAX_FEE */) {
25110
+ function estimatedFeeToMaxFee(estimatedFee, overhead = FeeMarginPercentage.MAX_FEE) {
25085
25111
  return addPercent(estimatedFee, overhead);
25086
25112
  }
25087
- function estimateFeeToBounds(estimate, amountOverhead = 50 /* L1_BOUND_MAX_AMOUNT */, priceOverhead = 50 /* L1_BOUND_MAX_PRICE_PER_UNIT */) {
25113
+ function estimateFeeToBounds(estimate, amountOverhead = FeeMarginPercentage.L1_BOUND_MAX_AMOUNT, priceOverhead = FeeMarginPercentage.L1_BOUND_MAX_PRICE_PER_UNIT) {
25088
25114
  if (isBigInt(estimate)) {
25089
25115
  return {
25090
25116
  l2_gas: { max_amount: "0x0", max_price_per_unit: "0x0" },
@@ -25779,7 +25805,6 @@ var starknet = (() => {
25779
25805
  __export(provider_exports, {
25780
25806
  Block: () => Block,
25781
25807
  createSierraContractClass: () => createSierraContractClass,
25782
- formatHash: () => formatHash,
25783
25808
  getDefaultNodeUrl: () => getDefaultNodeUrl,
25784
25809
  isPendingBlock: () => isPendingBlock,
25785
25810
  isPendingStateUpdate: () => isPendingStateUpdate,
@@ -25787,7 +25812,6 @@ var starknet = (() => {
25787
25812
  isV3Tx: () => isV3Tx,
25788
25813
  isVersion: () => isVersion,
25789
25814
  parseContract: () => parseContract,
25790
- txIdentifier: () => txIdentifier,
25791
25815
  validBlockTags: () => validBlockTags,
25792
25816
  wait: () => wait
25793
25817
  });
@@ -25818,26 +25842,23 @@ var starknet = (() => {
25818
25842
  if (!mute) {
25819
25843
  console.warn("Using default public node url, please provide nodeUrl in provider options!");
25820
25844
  }
25821
- const nodes = RPC_NODES[networkName ?? "SN_SEPOLIA" /* SN_SEPOLIA */];
25845
+ const nodes = RPC_NODES[networkName ?? NetworkName.SN_SEPOLIA];
25822
25846
  const randIdx = Math.floor(Math.random() * nodes.length);
25823
25847
  return nodes[randIdx];
25824
25848
  };
25825
- function formatHash(hashValue) {
25826
- if (isString(hashValue))
25827
- return hashValue;
25828
- return toHex(hashValue);
25829
- }
25830
- function txIdentifier(txHash, txId) {
25831
- if (!txHash) {
25832
- return `transactionId=${JSON.stringify(txId)}`;
25833
- }
25834
- const hashString = formatHash(txHash);
25835
- return `transactionHash=${hashString}`;
25836
- }
25837
25849
  var validBlockTags = Object.values(BlockTag);
25838
25850
  var Block = class {
25851
+ /**
25852
+ * @param {BlockIdentifier} hash if not null, contains the block hash
25853
+ */
25839
25854
  hash = null;
25855
+ /**
25856
+ * @param {BlockIdentifier} number if not null, contains the block number
25857
+ */
25840
25858
  number = null;
25859
+ /**
25860
+ * @param {BlockIdentifier} tag if not null, contains "pending" or "latest"
25861
+ */
25841
25862
  tag = null;
25842
25863
  setIdentifier(__identifier) {
25843
25864
  if (isString(__identifier)) {
@@ -25855,16 +25876,31 @@ var starknet = (() => {
25855
25876
  } else if (isNumber(__identifier)) {
25856
25877
  this.number = __identifier;
25857
25878
  } else {
25858
- this.tag = "pending" /* pending */;
25879
+ this.tag = BlockTag.PENDING;
25859
25880
  }
25860
25881
  if (isNumber(this.number) && this.number < 0) {
25861
25882
  throw TypeError(`Block number (${this.number}) can't be negative`);
25862
25883
  }
25863
25884
  }
25885
+ /**
25886
+ * Create a Block instance
25887
+ * @param {BlockIdentifier} _identifier hex string and BigInt are detected as block hashes.
25888
+ * decimal string and number are detected as block numbers.
25889
+ * text string are detected as block tag.
25890
+ * null is considered as a 'pending' block tag.
25891
+ */
25864
25892
  constructor(_identifier) {
25865
25893
  this.setIdentifier(_identifier);
25866
25894
  }
25867
25895
  // TODO: fix any
25896
+ /**
25897
+ * @returns {any} the identifier as a string
25898
+ * @example
25899
+ * ```typescript
25900
+ * const result = new provider.Block(123456n).queryIdentifier;
25901
+ * // result = "blockHash=0x1e240"
25902
+ * ```
25903
+ */
25868
25904
  get queryIdentifier() {
25869
25905
  if (this.number !== null) {
25870
25906
  return `blockNumber=${this.number}`;
@@ -25875,6 +25911,14 @@ var starknet = (() => {
25875
25911
  return `blockNumber=${this.tag}`;
25876
25912
  }
25877
25913
  // TODO: fix any
25914
+ /**
25915
+ * @returns {any} the identifier as an object
25916
+ * @example
25917
+ * ```typescript
25918
+ * const result = new provider.Block(56789).identifier;
25919
+ * // result = { block_number: 56789 }
25920
+ * ```
25921
+ */
25878
25922
  get identifier() {
25879
25923
  if (this.number !== null) {
25880
25924
  return { block_number: this.number };
@@ -25884,6 +25928,16 @@ var starknet = (() => {
25884
25928
  }
25885
25929
  return this.tag;
25886
25930
  }
25931
+ /**
25932
+ * change the identifier of an existing Block instance
25933
+ * @example
25934
+ * ```typescript
25935
+ * const myBlock = new provider.Block("latest");
25936
+ * myBlock.identifier ="0x3456789abc";
25937
+ * const result = myBlock.identifier;
25938
+ * // result = { block_hash: '0x3456789abc' }
25939
+ * ```
25940
+ */
25887
25941
  set identifier(_identifier) {
25888
25942
  this.setIdentifier(_identifier);
25889
25943
  }
@@ -26016,7 +26070,7 @@ var starknet = (() => {
26016
26070
  // src/channel/rpc_0_6.ts
26017
26071
  var defaultOptions = {
26018
26072
  headers: { "Content-Type": "application/json" },
26019
- blockIdentifier: "pending" /* pending */,
26073
+ blockIdentifier: BlockTag.PENDING,
26020
26074
  retries: 200
26021
26075
  };
26022
26076
  var RpcChannel = class {
@@ -26067,7 +26121,7 @@ var starknet = (() => {
26067
26121
  const { code, message, data } = rpcError;
26068
26122
  throw new LibraryError(
26069
26123
  `RPC: ${method} with params ${stringify2(params, null, 2)}
26070
-
26124
+
26071
26125
  ${code}: ${message}: ${stringify2(data)}`
26072
26126
  );
26073
26127
  }
@@ -26495,7 +26549,7 @@ var starknet = (() => {
26495
26549
  account_deployment_data: invocation.accountDeploymentData.map((it) => toHex(it))
26496
26550
  };
26497
26551
  }
26498
- if (invocation.type === "INVOKE_FUNCTION" /* INVOKE */) {
26552
+ if (invocation.type === TransactionType.INVOKE) {
26499
26553
  return {
26500
26554
  // v0 v1 v3
26501
26555
  type: rpcspec_0_6_exports.ETransactionType.INVOKE,
@@ -26505,7 +26559,7 @@ var starknet = (() => {
26505
26559
  ...details
26506
26560
  };
26507
26561
  }
26508
- if (invocation.type === "DECLARE" /* DECLARE */) {
26562
+ if (invocation.type === TransactionType.DECLARE) {
26509
26563
  if (!isSierra(invocation.contract)) {
26510
26564
  return {
26511
26565
  type: invocation.type,
@@ -26528,7 +26582,7 @@ var starknet = (() => {
26528
26582
  ...details
26529
26583
  };
26530
26584
  }
26531
- if (invocation.type === "DEPLOY_ACCOUNT" /* DEPLOY_ACCOUNT */) {
26585
+ if (invocation.type === TransactionType.DEPLOY_ACCOUNT) {
26532
26586
  const { account_deployment_data, ...restDetails } = details;
26533
26587
  return {
26534
26588
  type: invocation.type,
@@ -26550,7 +26604,7 @@ var starknet = (() => {
26550
26604
  });
26551
26605
  var defaultOptions2 = {
26552
26606
  headers: { "Content-Type": "application/json" },
26553
- blockIdentifier: "pending" /* pending */,
26607
+ blockIdentifier: BlockTag.PENDING,
26554
26608
  retries: 200
26555
26609
  };
26556
26610
  var RpcChannel2 = class {
@@ -27047,7 +27101,7 @@ var starknet = (() => {
27047
27101
  account_deployment_data: invocation.accountDeploymentData.map((it) => toHex(it))
27048
27102
  };
27049
27103
  }
27050
- if (invocation.type === "INVOKE_FUNCTION" /* INVOKE */) {
27104
+ if (invocation.type === TransactionType.INVOKE) {
27051
27105
  return {
27052
27106
  // v0 v1 v3
27053
27107
  type: esm_exports.ETransactionType.INVOKE,
@@ -27057,7 +27111,7 @@ var starknet = (() => {
27057
27111
  ...details
27058
27112
  };
27059
27113
  }
27060
- if (invocation.type === "DECLARE" /* DECLARE */) {
27114
+ if (invocation.type === TransactionType.DECLARE) {
27061
27115
  if (!isSierra(invocation.contract)) {
27062
27116
  return {
27063
27117
  type: invocation.type,
@@ -27080,7 +27134,7 @@ var starknet = (() => {
27080
27134
  ...details
27081
27135
  };
27082
27136
  }
27083
- if (invocation.type === "DEPLOY_ACCOUNT" /* DEPLOY_ACCOUNT */) {
27137
+ if (invocation.type === TransactionType.DEPLOY_ACCOUNT) {
27084
27138
  const { account_deployment_data, ...restDetails } = details;
27085
27139
  return {
27086
27140
  type: invocation.type,
@@ -27209,13 +27263,13 @@ var starknet = (() => {
27209
27263
  return this.statusReceipt === "error";
27210
27264
  }
27211
27265
  static isSuccess(transactionReceipt) {
27212
- return transactionReceipt.execution_status === "SUCCEEDED" /* SUCCEEDED */;
27266
+ return transactionReceipt.execution_status === TransactionExecutionStatus.SUCCEEDED;
27213
27267
  }
27214
27268
  static isReverted(transactionReceipt) {
27215
- return transactionReceipt.execution_status === "REVERTED" /* REVERTED */;
27269
+ return transactionReceipt.execution_status === TransactionExecutionStatus.REVERTED;
27216
27270
  }
27217
27271
  static isRejected(transactionReceipt) {
27218
- return transactionReceipt.status === "REJECTED" /* REJECTED */;
27272
+ return transactionReceipt.status === TransactionExecutionStatus.REJECTED;
27219
27273
  }
27220
27274
  };
27221
27275
 
@@ -27226,7 +27280,7 @@ var starknet = (() => {
27226
27280
  constructor(optionsOrProvider) {
27227
27281
  if (optionsOrProvider && "channel" in optionsOrProvider) {
27228
27282
  this.channel = optionsOrProvider.channel;
27229
- this.responseParser = optionsOrProvider.responseParser;
27283
+ this.responseParser = "responseParser" in optionsOrProvider ? optionsOrProvider.responseParser : new RPCResponseParser();
27230
27284
  } else {
27231
27285
  this.channel = new RpcChannel2({ ...optionsOrProvider, waitMode: false });
27232
27286
  this.responseParser = new RPCResponseParser(optionsOrProvider?.feeMarginPercentage);
@@ -27279,10 +27333,10 @@ var starknet = (() => {
27279
27333
  * ```
27280
27334
  */
27281
27335
  async waitForBlock(blockIdentifier = "pending", retryInterval = 5e3) {
27282
- if (blockIdentifier === "latest" /* latest */)
27336
+ if (blockIdentifier === BlockTag.LATEST)
27283
27337
  return;
27284
27338
  const currentBlock = await this.getBlockNumber();
27285
- const targetBlock = blockIdentifier === "pending" /* pending */ ? currentBlock + 1 : Number(toHex(blockIdentifier));
27339
+ const targetBlock = blockIdentifier === BlockTag.PENDING ? currentBlock + 1 : Number(toHex(blockIdentifier));
27286
27340
  if (targetBlock <= currentBlock)
27287
27341
  return;
27288
27342
  const { retries } = this.channel;
@@ -27341,11 +27395,11 @@ var starknet = (() => {
27341
27395
  }
27342
27396
  /**
27343
27397
  * Return transactions from pending block
27344
- * @deprecated Instead use getBlock(BlockTag.pending); (will be removed in next minor version)
27398
+ * @deprecated Instead use getBlock(BlockTag.PENDING); (will be removed in next minor version)
27345
27399
  * Utility method, same result can be achieved using getBlockWithTxHashes(BlockTag.pending);
27346
27400
  */
27347
27401
  async getPendingTransactions() {
27348
- const { transactions } = await this.getBlockWithTxHashes("pending" /* pending */).then(
27402
+ const { transactions } = await this.getBlockWithTxHashes(BlockTag.PENDING).then(
27349
27403
  this.responseParser.parseGetBlockResponse
27350
27404
  );
27351
27405
  return Promise.all(transactions.map((it) => this.getTransactionByHash(it)));
@@ -27436,7 +27490,7 @@ var starknet = (() => {
27436
27490
  return this.channel.getEstimateFee(
27437
27491
  [
27438
27492
  {
27439
- type: "INVOKE_FUNCTION" /* INVOKE */,
27493
+ type: TransactionType.INVOKE,
27440
27494
  ...invocation,
27441
27495
  ...invocationDetails
27442
27496
  }
@@ -27448,7 +27502,7 @@ var starknet = (() => {
27448
27502
  return this.channel.getEstimateFee(
27449
27503
  [
27450
27504
  {
27451
- type: "DECLARE" /* DECLARE */,
27505
+ type: TransactionType.DECLARE,
27452
27506
  ...invocation,
27453
27507
  ...details
27454
27508
  }
@@ -27460,7 +27514,7 @@ var starknet = (() => {
27460
27514
  return this.channel.getEstimateFee(
27461
27515
  [
27462
27516
  {
27463
- type: "DEPLOY_ACCOUNT" /* DEPLOY_ACCOUNT */,
27517
+ type: TransactionType.DEPLOY_ACCOUNT,
27464
27518
  ...invocation,
27465
27519
  ...details
27466
27520
  }
@@ -27835,32 +27889,30 @@ var starknet = (() => {
27835
27889
  }
27836
27890
  return encoded;
27837
27891
  }
27838
- var StarknetIdContract = /* @__PURE__ */ ((StarknetIdContract2) => {
27839
- StarknetIdContract2["MAINNET"] = "0x6ac597f8116f886fa1c97a23fa4e08299975ecaf6b598873ca6792b9bbfb678";
27840
- StarknetIdContract2["TESTNET_SEPOLIA"] = "0x0707f09bc576bd7cfee59694846291047e965f4184fe13dac62c56759b3b6fa7";
27841
- return StarknetIdContract2;
27842
- })(StarknetIdContract || {});
27892
+ var StarknetIdContract = {
27893
+ MAINNET: "0x6ac597f8116f886fa1c97a23fa4e08299975ecaf6b598873ca6792b9bbfb678",
27894
+ TESTNET_SEPOLIA: "0x154bc2e1af9260b9e66af0e9c46fc757ff893b3ff6a85718a810baf1474"
27895
+ };
27843
27896
  function getStarknetIdContract(chainId) {
27844
27897
  switch (chainId) {
27845
- case "0x534e5f4d41494e" /* SN_MAIN */:
27846
- return "0x6ac597f8116f886fa1c97a23fa4e08299975ecaf6b598873ca6792b9bbfb678" /* MAINNET */;
27847
- case "0x534e5f5345504f4c4941" /* SN_SEPOLIA */:
27848
- return "0x0707f09bc576bd7cfee59694846291047e965f4184fe13dac62c56759b3b6fa7" /* TESTNET_SEPOLIA */;
27898
+ case StarknetChainId.SN_MAIN:
27899
+ return StarknetIdContract.MAINNET;
27900
+ case StarknetChainId.SN_SEPOLIA:
27901
+ return StarknetIdContract.TESTNET_SEPOLIA;
27849
27902
  default:
27850
27903
  throw new Error("Starknet.id is not yet deployed on this network");
27851
27904
  }
27852
27905
  }
27853
- var StarknetIdIdentityContract = /* @__PURE__ */ ((StarknetIdIdentityContract2) => {
27854
- StarknetIdIdentityContract2["MAINNET"] = "0x05dbdedc203e92749e2e746e2d40a768d966bd243df04a6b712e222bc040a9af";
27855
- StarknetIdIdentityContract2["TESTNET_SEPOLIA"] = "0x070DF8B4F5cb2879f8592849fA8f3134da39d25326B8558cc9C8FE8D47EA3A90";
27856
- return StarknetIdIdentityContract2;
27857
- })(StarknetIdIdentityContract || {});
27906
+ var StarknetIdIdentityContract = {
27907
+ MAINNET: "0x05dbdedc203e92749e2e746e2d40a768d966bd243df04a6b712e222bc040a9af",
27908
+ TESTNET_SEPOLIA: "0x3697660a0981d734780731949ecb2b4a38d6a58fc41629ed611e8defda"
27909
+ };
27858
27910
  function getStarknetIdIdentityContract(chainId) {
27859
27911
  switch (chainId) {
27860
- case "0x534e5f4d41494e" /* SN_MAIN */:
27861
- return "0x05dbdedc203e92749e2e746e2d40a768d966bd243df04a6b712e222bc040a9af" /* MAINNET */;
27862
- case "0x534e5f5345504f4c4941" /* SN_SEPOLIA */:
27863
- return "0x070DF8B4F5cb2879f8592849fA8f3134da39d25326B8558cc9C8FE8D47EA3A90" /* TESTNET_SEPOLIA */;
27912
+ case StarknetChainId.SN_MAIN:
27913
+ return StarknetIdIdentityContract.MAINNET;
27914
+ case StarknetChainId.SN_SEPOLIA:
27915
+ return StarknetIdIdentityContract.TESTNET_SEPOLIA;
27864
27916
  default:
27865
27917
  throw new Error("Starknet.id verifier contract is not yet deployed on this network");
27866
27918
  }
@@ -27868,57 +27920,54 @@ var starknet = (() => {
27868
27920
  var StarknetIdMulticallContract = "0x034ffb8f4452df7a613a0210824d6414dbadcddce6c6e19bf4ddc9e22ce5f970";
27869
27921
  function getStarknetIdMulticallContract(chainId) {
27870
27922
  switch (chainId) {
27871
- case "0x534e5f4d41494e" /* SN_MAIN */:
27923
+ case StarknetChainId.SN_MAIN:
27872
27924
  return StarknetIdMulticallContract;
27873
- case "0x534e5f5345504f4c4941" /* SN_SEPOLIA */:
27925
+ case StarknetChainId.SN_SEPOLIA:
27874
27926
  return StarknetIdMulticallContract;
27875
27927
  default:
27876
27928
  throw new Error("Starknet.id multicall contract is not yet deployed on this network");
27877
27929
  }
27878
27930
  }
27879
- var StarknetIdVerifierContract = /* @__PURE__ */ ((StarknetIdVerifierContract2) => {
27880
- StarknetIdVerifierContract2["MAINNET"] = "0x07d14dfd8ee95b41fce179170d88ba1f0d5a512e13aeb232f19cfeec0a88f8bf";
27881
- StarknetIdVerifierContract2["TESTNET_SEPOLIA"] = "0x0182EcE8173C216A395f4828e1523541b7e3600bf190CB252E1a1A0cE219d184";
27882
- return StarknetIdVerifierContract2;
27883
- })(StarknetIdVerifierContract || {});
27931
+ var StarknetIdVerifierContract = {
27932
+ MAINNET: "0x07d14dfd8ee95b41fce179170d88ba1f0d5a512e13aeb232f19cfeec0a88f8bf",
27933
+ TESTNET_SEPOLIA: "0x60B94fEDe525f815AE5E8377A463e121C787cCCf3a36358Aa9B18c12c4D566"
27934
+ };
27884
27935
  function getStarknetIdVerifierContract(chainId) {
27885
27936
  switch (chainId) {
27886
- case "0x534e5f4d41494e" /* SN_MAIN */:
27887
- return "0x07d14dfd8ee95b41fce179170d88ba1f0d5a512e13aeb232f19cfeec0a88f8bf" /* MAINNET */;
27888
- case "0x534e5f5345504f4c4941" /* SN_SEPOLIA */:
27889
- return "0x0182EcE8173C216A395f4828e1523541b7e3600bf190CB252E1a1A0cE219d184" /* TESTNET_SEPOLIA */;
27937
+ case StarknetChainId.SN_MAIN:
27938
+ return StarknetIdVerifierContract.MAINNET;
27939
+ case StarknetChainId.SN_SEPOLIA:
27940
+ return StarknetIdVerifierContract.TESTNET_SEPOLIA;
27890
27941
  default:
27891
27942
  throw new Error("Starknet.id verifier contract is not yet deployed on this network");
27892
27943
  }
27893
27944
  }
27894
- var StarknetIdPfpContract = /* @__PURE__ */ ((StarknetIdPfpContract2) => {
27895
- StarknetIdPfpContract2["MAINNET"] = "0x070aaa20ec4a46da57c932d9fd89ca5e6bb9ca3188d3df361a32306aff7d59c7";
27896
- StarknetIdPfpContract2["TESTNET_SEPOLIA"] = "0x058061bb6bdc501eE215172c9f87d557C1E0f466dC498cA81b18f998Bf1362b2";
27897
- return StarknetIdPfpContract2;
27898
- })(StarknetIdPfpContract || {});
27945
+ var StarknetIdPfpContract = {
27946
+ MAINNET: "0x070aaa20ec4a46da57c932d9fd89ca5e6bb9ca3188d3df361a32306aff7d59c7",
27947
+ TESTNET_SEPOLIA: "0x9e7bdb8dabd02ea8cfc23b1d1c5278e46490f193f87516ed5ff2dfec02"
27948
+ };
27899
27949
  function getStarknetIdPfpContract(chainId) {
27900
27950
  switch (chainId) {
27901
- case "0x534e5f4d41494e" /* SN_MAIN */:
27902
- return "0x070aaa20ec4a46da57c932d9fd89ca5e6bb9ca3188d3df361a32306aff7d59c7" /* MAINNET */;
27903
- case "0x534e5f5345504f4c4941" /* SN_SEPOLIA */:
27904
- return "0x058061bb6bdc501eE215172c9f87d557C1E0f466dC498cA81b18f998Bf1362b2" /* TESTNET_SEPOLIA */;
27951
+ case StarknetChainId.SN_MAIN:
27952
+ return StarknetIdPfpContract.MAINNET;
27953
+ case StarknetChainId.SN_SEPOLIA:
27954
+ return StarknetIdPfpContract.TESTNET_SEPOLIA;
27905
27955
  default:
27906
27956
  throw new Error(
27907
27957
  "Starknet.id profile picture verifier contract is not yet deployed on this network"
27908
27958
  );
27909
27959
  }
27910
27960
  }
27911
- var StarknetIdPopContract = /* @__PURE__ */ ((StarknetIdPopContract2) => {
27912
- StarknetIdPopContract2["MAINNET"] = "0x0293eb2ba9862f762bd3036586d5755a782bd22e6f5028320f1d0405fd47bff4";
27913
- StarknetIdPopContract2["TESTNET_SEPOLIA"] = "0x0023FE3b845ed5665a9eb3792bbB17347B490EE4090f855C1298d03BB5F49B49";
27914
- return StarknetIdPopContract2;
27915
- })(StarknetIdPopContract || {});
27961
+ var StarknetIdPopContract = {
27962
+ MAINNET: "0x0293eb2ba9862f762bd3036586d5755a782bd22e6f5028320f1d0405fd47bff4",
27963
+ TESTNET_SEPOLIA: "0x15ae88ae054caa74090b89025c1595683f12edf7a4ed2ad0274de3e1d4a"
27964
+ };
27916
27965
  function getStarknetIdPopContract(chainId) {
27917
27966
  switch (chainId) {
27918
- case "0x534e5f4d41494e" /* SN_MAIN */:
27919
- return "0x0293eb2ba9862f762bd3036586d5755a782bd22e6f5028320f1d0405fd47bff4" /* MAINNET */;
27920
- case "0x534e5f5345504f4c4941" /* SN_SEPOLIA */:
27921
- return "0x0023FE3b845ed5665a9eb3792bbB17347B490EE4090f855C1298d03BB5F49B49" /* TESTNET_SEPOLIA */;
27967
+ case StarknetChainId.SN_MAIN:
27968
+ return StarknetIdPopContract.MAINNET;
27969
+ case StarknetChainId.SN_SEPOLIA:
27970
+ return StarknetIdPopContract.TESTNET_SEPOLIA;
27922
27971
  default:
27923
27972
  throw new Error(
27924
27973
  "Starknet.id proof of personhood verifier contract is not yet deployed on this network"
@@ -27981,7 +28030,14 @@ var starknet = (() => {
27981
28030
  const chainId = await provider.getChainId();
27982
28031
  const contract = StarknetIdContract2 ?? getStarknetIdContract(chainId);
27983
28032
  try {
27984
- const hexDomain = await this.executeStarkName(provider, address, contract);
28033
+ const hexDomain = await provider.callContract({
28034
+ contractAddress: contract,
28035
+ entrypoint: "address_to_domain",
28036
+ calldata: CallData.compile({
28037
+ address,
28038
+ hint: []
28039
+ })
28040
+ });
27985
28041
  const decimalDomain = hexDomain.map((element) => BigInt(element)).slice(1);
27986
28042
  const stringDomain = useDecoded(decimalDomain);
27987
28043
  if (!stringDomain) {
@@ -27995,26 +28051,6 @@ var starknet = (() => {
27995
28051
  throw Error("Could not get stark name");
27996
28052
  }
27997
28053
  }
27998
- static async executeStarkName(provider, address, contract) {
27999
- try {
28000
- return await provider.callContract({
28001
- contractAddress: contract,
28002
- entrypoint: "address_to_domain",
28003
- calldata: CallData.compile({
28004
- address,
28005
- hint: []
28006
- })
28007
- });
28008
- } catch (initialError) {
28009
- return await provider.callContract({
28010
- contractAddress: contract,
28011
- entrypoint: "address_to_domain",
28012
- calldata: CallData.compile({
28013
- address
28014
- })
28015
- });
28016
- }
28017
- }
28018
28054
  static async getAddressFromStarkName(provider, name, StarknetIdContract2) {
28019
28055
  const chainId = await provider.getChainId();
28020
28056
  const contract = StarknetIdContract2 ?? getStarknetIdContract(chainId);
@@ -28039,21 +28075,13 @@ var starknet = (() => {
28039
28075
  const popContract = StarknetIdPopContract2 ?? getStarknetIdPopContract(chainId);
28040
28076
  const multicallAddress = StarknetIdMulticallContract2 ?? getStarknetIdMulticallContract(chainId);
28041
28077
  try {
28042
- const initialCalldata = [];
28043
- const fallbackCalldata = [];
28044
- initialCalldata.push({
28045
- execution: execution({}),
28046
- to: dynamicCallData(contract),
28047
- selector: dynamicCallData(getSelectorFromName("address_to_domain")),
28048
- calldata: [dynamicCallData(address), dynamicCallData("0")]
28049
- });
28050
- fallbackCalldata.push({
28051
- execution: execution({}),
28052
- to: dynamicCallData(contract),
28053
- selector: dynamicFelt(getSelectorFromName("address_to_domain")),
28054
- calldata: [dynamicCallData(address)]
28055
- });
28056
28078
  const calls = [
28079
+ {
28080
+ execution: execution({}),
28081
+ to: dynamicCallData(contract),
28082
+ selector: dynamicCallData(getSelectorFromName("address_to_domain")),
28083
+ calldata: [dynamicCallData(address), dynamicCallData("0")]
28084
+ },
28057
28085
  {
28058
28086
  execution: execution({}),
28059
28087
  to: dynamicFelt(contract),
@@ -28135,15 +28163,13 @@ var starknet = (() => {
28135
28163
  calldata: [dynamicCallData(void 0, [7, 1]), dynamicCallData(void 0, [7, 2])]
28136
28164
  }
28137
28165
  ];
28138
- initialCalldata.push(...calls);
28139
- fallbackCalldata.push(...calls);
28140
- const data = await this.executeStarkProfile(
28141
- provider,
28142
- multicallAddress,
28143
- "aggregate",
28144
- initialCalldata,
28145
- fallbackCalldata
28146
- );
28166
+ const data = await provider.callContract({
28167
+ contractAddress: multicallAddress,
28168
+ entrypoint: "aggregate",
28169
+ calldata: CallData.compile({
28170
+ calls
28171
+ })
28172
+ });
28147
28173
  if (Array.isArray(data)) {
28148
28174
  const size = parseInt(data[0], 16);
28149
28175
  const finalArray = [];
@@ -28183,25 +28209,6 @@ var starknet = (() => {
28183
28209
  throw Error("Could not get user stark profile data from address");
28184
28210
  }
28185
28211
  }
28186
- static async executeStarkProfile(provider, contract, functionName, initialCalldata, fallbackCalldata) {
28187
- try {
28188
- return await provider.callContract({
28189
- contractAddress: contract,
28190
- entrypoint: functionName,
28191
- calldata: CallData.compile({
28192
- calls: initialCalldata
28193
- })
28194
- });
28195
- } catch (initialError) {
28196
- return await provider.callContract({
28197
- contractAddress: contract,
28198
- entrypoint: functionName,
28199
- calldata: CallData.compile({
28200
- calls: fallbackCalldata
28201
- })
28202
- });
28203
- }
28204
- }
28205
28212
  };
28206
28213
 
28207
28214
  // src/provider/extensions/default.ts
@@ -28245,16 +28252,30 @@ var starknet = (() => {
28245
28252
  branches = [];
28246
28253
  root;
28247
28254
  hashMethod;
28255
+ /**
28256
+ * Create a Merkle tree
28257
+ *
28258
+ * @param leafHashes hex-string array
28259
+ * @param hashMethod hash method to use, default: Pedersen
28260
+ * @returns created Merkle tree
28261
+ * @example
28262
+ * ```typescript
28263
+ * const leaves = ['0x1', '0x2', '0x3', '0x4', '0x5', '0x6', '0x7'];
28264
+ * const tree = new MerkleTree(leaves);
28265
+ * // tree = {
28266
+ * // branches: [['0x5bb9440e2...', '0x262697b88...', ...], ['0x38118a340...', ...], ...],
28267
+ * // leaves: ['0x1', '0x2', '0x3', '0x4', '0x5', '0x6', '0x7'],
28268
+ * // root: '0x7f748c75e5bdb7ae28013f076b8ab650c4e01d3530c6e5ab665f9f1accbe7d4',
28269
+ * // hashMethod: [Function computePedersenHash],
28270
+ * // }
28271
+ * ```
28272
+ */
28248
28273
  constructor(leafHashes, hashMethod = computePedersenHash) {
28249
28274
  this.hashMethod = hashMethod;
28250
28275
  this.leaves = leafHashes;
28251
28276
  this.root = this.build(leafHashes);
28252
28277
  }
28253
- /**
28254
- * Create Merkle tree
28255
- * @param leaves hex-string array
28256
- * @returns format: hex-string; Merkle tree root
28257
- */
28278
+ /** @ignore */
28258
28279
  build(leaves) {
28259
28280
  if (leaves.length === 1) {
28260
28281
  return leaves[0];
@@ -28273,19 +28294,44 @@ var starknet = (() => {
28273
28294
  return this.build(newLeaves);
28274
28295
  }
28275
28296
  /**
28276
- * Create hash from ordered a and b, Pedersen hash default
28277
- * @returns format: hex-string
28297
+ * Calculate hash from ordered a and b, Pedersen hash default
28298
+ *
28299
+ * @param a first value
28300
+ * @param b second value
28301
+ * @param hashMethod hash method to use, default: Pedersen
28302
+ * @returns result of the hash function
28303
+ * @example
28304
+ * ```typescript
28305
+ * const result1 = MerkleTree.hash('0xabc', '0xdef');
28306
+ * // result1 = '0x484f029da7914ada038b1adf67fc83632364a3ebc2cd9349b41ab61626d9e82'
28307
+ *
28308
+ * const customHashMethod = (a, b) => `custom_${a}_${b}`;
28309
+ * const result2 = MerkleTree.hash('0xabc', '0xdef', customHashMethod);
28310
+ * // result2 = 'custom_2748_3567'
28311
+ * ```
28278
28312
  */
28279
28313
  static hash(a, b, hashMethod = computePedersenHash) {
28280
28314
  const [aSorted, bSorted] = [BigInt(a), BigInt(b)].sort((x, y) => x >= y ? 1 : -1);
28281
28315
  return hashMethod(aSorted, bSorted);
28282
28316
  }
28283
28317
  /**
28284
- * Return path to leaf
28318
+ * Calculates the merkle membership proof path
28319
+ *
28285
28320
  * @param leaf hex-string
28286
28321
  * @param branch hex-string array
28287
28322
  * @param hashPath hex-string array
28288
- * @returns format: hex-string array
28323
+ * @returns collection of merkle proof hex-string hashes
28324
+ * @example
28325
+ * ```typescript
28326
+ * const leaves = ['0x1', '0x2', '0x3', '0x4', '0x5', '0x6', '0x7'];
28327
+ * const tree = new MerkleTree(leaves);
28328
+ * const result = tree.getProof('0x3');
28329
+ * // result = [
28330
+ * // '0x4',
28331
+ * // '0x5bb9440e27889a364bcb678b1f679ecd1347acdedcbf36e83494f857cc58026',
28332
+ * // '0x8c0e46dd2df9aaf3a8ebfbc25408a582ad7fa7171f0698ddbbc5130b4b4e60',
28333
+ * // ]
28334
+ * ```
28289
28335
  */
28290
28336
  getProof(leaf, branch = this.leaves, hashPath = []) {
28291
28337
  const index = branch.indexOf(leaf);
@@ -28326,14 +28372,14 @@ var starknet = (() => {
28326
28372
  )
28327
28373
  };
28328
28374
  var revisionConfiguration = {
28329
- [TypedDataRevision.Active]: {
28375
+ [TypedDataRevision.ACTIVE]: {
28330
28376
  domain: "StarknetDomain",
28331
28377
  hashMethod: computePoseidonHashOnElements,
28332
28378
  hashMerkleMethod: computePoseidonHash,
28333
28379
  escapeTypeString: (s) => `"${s}"`,
28334
28380
  presetTypes
28335
28381
  },
28336
- [TypedDataRevision.Legacy]: {
28382
+ [TypedDataRevision.LEGACY]: {
28337
28383
  domain: "StarkNetDomain",
28338
28384
  hashMethod: computePedersenHashOnElements,
28339
28385
  hashMerkleMethod: computePedersenHash,
@@ -28346,10 +28392,10 @@ var starknet = (() => {
28346
28392
  assert(value >= min && value <= max, `${value} (${type}) is out of bounds [${min}, ${max}]`);
28347
28393
  }
28348
28394
  function identifyRevision({ types, domain }) {
28349
- if (revisionConfiguration[TypedDataRevision.Active].domain in types && domain.revision === TypedDataRevision.Active)
28350
- return TypedDataRevision.Active;
28351
- if (revisionConfiguration[TypedDataRevision.Legacy].domain in types && (domain.revision ?? TypedDataRevision.Legacy) === TypedDataRevision.Legacy)
28352
- return TypedDataRevision.Legacy;
28395
+ if (revisionConfiguration[TypedDataRevision.ACTIVE].domain in types && domain.revision === TypedDataRevision.ACTIVE)
28396
+ return TypedDataRevision.ACTIVE;
28397
+ if (revisionConfiguration[TypedDataRevision.LEGACY].domain in types && (domain.revision ?? TypedDataRevision.LEGACY) === TypedDataRevision.LEGACY)
28398
+ return TypedDataRevision.LEGACY;
28353
28399
  return void 0;
28354
28400
  }
28355
28401
  function getHex(value) {
@@ -28374,10 +28420,10 @@ var starknet = (() => {
28374
28420
  function isMerkleTreeType(type) {
28375
28421
  return type.type === "merkletree";
28376
28422
  }
28377
- function getDependencies(types, type, dependencies = [], contains = "", revision = TypedDataRevision.Legacy) {
28423
+ function getDependencies(types, type, dependencies = [], contains = "", revision = TypedDataRevision.LEGACY) {
28378
28424
  if (type[type.length - 1] === "*") {
28379
28425
  type = type.slice(0, -1);
28380
- } else if (revision === TypedDataRevision.Active) {
28426
+ } else if (revision === TypedDataRevision.ACTIVE) {
28381
28427
  if (type === "enum") {
28382
28428
  type = contains;
28383
28429
  } else if (type.match(/^\(.*\)$/)) {
@@ -28415,8 +28461,8 @@ var starknet = (() => {
28415
28461
  }
28416
28462
  return "raw";
28417
28463
  }
28418
- function encodeType(types, type, revision = TypedDataRevision.Legacy) {
28419
- const allTypes = revision === TypedDataRevision.Active ? { ...types, ...revisionConfiguration[revision].presetTypes } : types;
28464
+ function encodeType(types, type, revision = TypedDataRevision.LEGACY) {
28465
+ const allTypes = revision === TypedDataRevision.ACTIVE ? { ...types, ...revisionConfiguration[revision].presetTypes } : types;
28420
28466
  const [primary, ...dependencies] = getDependencies(
28421
28467
  allTypes,
28422
28468
  type,
@@ -28428,17 +28474,17 @@ var starknet = (() => {
28428
28474
  const esc = revisionConfiguration[revision].escapeTypeString;
28429
28475
  return newTypes.map((dependency) => {
28430
28476
  const dependencyElements = allTypes[dependency].map((t) => {
28431
- const targetType = t.type === "enum" && revision === TypedDataRevision.Active ? t.contains : t.type;
28477
+ const targetType = t.type === "enum" && revision === TypedDataRevision.ACTIVE ? t.contains : t.type;
28432
28478
  const typeString = targetType.match(/^\(.*\)$/) ? `(${targetType.slice(1, -1).split(",").map((e) => e ? esc(e) : e).join(",")})` : esc(targetType);
28433
28479
  return `${esc(t.name)}:${typeString}`;
28434
28480
  });
28435
28481
  return `${esc(dependency)}(${dependencyElements})`;
28436
28482
  }).join("");
28437
28483
  }
28438
- function getTypeHash(types, type, revision = TypedDataRevision.Legacy) {
28484
+ function getTypeHash(types, type, revision = TypedDataRevision.LEGACY) {
28439
28485
  return getSelectorFromName(encodeType(types, type, revision));
28440
28486
  }
28441
- function encodeValue(types, type, data, ctx = {}, revision = TypedDataRevision.Legacy) {
28487
+ function encodeValue(types, type, data, ctx = {}, revision = TypedDataRevision.LEGACY) {
28442
28488
  if (types[type]) {
28443
28489
  return [type, getStructHash(types, type, data, revision)];
28444
28490
  }
@@ -28461,7 +28507,7 @@ var starknet = (() => {
28461
28507
  }
28462
28508
  switch (type) {
28463
28509
  case "enum": {
28464
- if (revision === TypedDataRevision.Active) {
28510
+ if (revision === TypedDataRevision.ACTIVE) {
28465
28511
  const [variantKey, variantData] = Object.entries(data)[0];
28466
28512
  const parentType = types[ctx.parent][0];
28467
28513
  const enumType = types[parentType.contains];
@@ -28495,7 +28541,7 @@ var starknet = (() => {
28495
28541
  return ["felt", prepareSelector(data)];
28496
28542
  }
28497
28543
  case "string": {
28498
- if (revision === TypedDataRevision.Active) {
28544
+ if (revision === TypedDataRevision.ACTIVE) {
28499
28545
  const byteArray = byteArrayFromString(data);
28500
28546
  const elements = [
28501
28547
  byteArray.data.length,
@@ -28508,7 +28554,7 @@ var starknet = (() => {
28508
28554
  return [type, getHex(data)];
28509
28555
  }
28510
28556
  case "i128": {
28511
- if (revision === TypedDataRevision.Active) {
28557
+ if (revision === TypedDataRevision.ACTIVE) {
28512
28558
  const value = BigInt(data);
28513
28559
  assertRange(value, type, RANGE_I128);
28514
28560
  return [type, getHex(value < 0n ? PRIME + value : value)];
@@ -28517,40 +28563,40 @@ var starknet = (() => {
28517
28563
  }
28518
28564
  case "timestamp":
28519
28565
  case "u128": {
28520
- if (revision === TypedDataRevision.Active) {
28566
+ if (revision === TypedDataRevision.ACTIVE) {
28521
28567
  assertRange(data, type, RANGE_U128);
28522
28568
  }
28523
28569
  return [type, getHex(data)];
28524
28570
  }
28525
28571
  case "felt":
28526
28572
  case "shortstring": {
28527
- if (revision === TypedDataRevision.Active) {
28573
+ if (revision === TypedDataRevision.ACTIVE) {
28528
28574
  assertRange(getHex(data), type, RANGE_FELT);
28529
28575
  }
28530
28576
  return [type, getHex(data)];
28531
28577
  }
28532
28578
  case "ClassHash":
28533
28579
  case "ContractAddress": {
28534
- if (revision === TypedDataRevision.Active) {
28580
+ if (revision === TypedDataRevision.ACTIVE) {
28535
28581
  assertRange(data, type, RANGE_FELT);
28536
28582
  }
28537
28583
  return [type, getHex(data)];
28538
28584
  }
28539
28585
  case "bool": {
28540
- if (revision === TypedDataRevision.Active) {
28586
+ if (revision === TypedDataRevision.ACTIVE) {
28541
28587
  assert(typeof data === "boolean", `Type mismatch for ${type} ${data}`);
28542
28588
  }
28543
28589
  return [type, getHex(data)];
28544
28590
  }
28545
28591
  default: {
28546
- if (revision === TypedDataRevision.Active) {
28592
+ if (revision === TypedDataRevision.ACTIVE) {
28547
28593
  throw new Error(`Unsupported type: ${type}`);
28548
28594
  }
28549
28595
  return [type, getHex(data)];
28550
28596
  }
28551
28597
  }
28552
28598
  }
28553
- function encodeData(types, type, data, revision = TypedDataRevision.Legacy) {
28599
+ function encodeData(types, type, data, revision = TypedDataRevision.LEGACY) {
28554
28600
  const targetType = types[type] ?? revisionConfiguration[revision].presetTypes[type];
28555
28601
  const [returnTypes, values] = targetType.reduce(
28556
28602
  ([ts, vs], field) => {
@@ -28569,7 +28615,7 @@ var starknet = (() => {
28569
28615
  );
28570
28616
  return [returnTypes, values];
28571
28617
  }
28572
- function getStructHash(types, type, data, revision = TypedDataRevision.Legacy) {
28618
+ function getStructHash(types, type, data, revision = TypedDataRevision.LEGACY) {
28573
28619
  return revisionConfiguration[revision].hashMethod(encodeData(types, type, data, revision)[1]);
28574
28620
  }
28575
28621
  function getMessageHash(typedData, account) {
@@ -28824,7 +28870,128 @@ var starknet = (() => {
28824
28870
  }
28825
28871
  };
28826
28872
 
28827
- // src/utils/events.ts
28873
+ // src/utils/events/index.ts
28874
+ var events_exports = {};
28875
+ __export(events_exports, {
28876
+ getAbiEvents: () => getAbiEvents,
28877
+ isAbiEvent: () => isAbiEvent,
28878
+ isObject: () => isObject2,
28879
+ parseEvents: () => parseEvents,
28880
+ parseUDCEvent: () => parseUDCEvent
28881
+ });
28882
+ function isAbiEvent(object) {
28883
+ return object.type === "event";
28884
+ }
28885
+ function getCairo0AbiEvents(abi) {
28886
+ return abi.filter((abiEntry) => abiEntry.type === "event").reduce((acc, abiEntry) => {
28887
+ const entryName = abiEntry.name;
28888
+ const abiEntryMod = { ...abiEntry };
28889
+ abiEntryMod.name = entryName;
28890
+ return {
28891
+ ...acc,
28892
+ [addHexPrefix(esm_exports2.keccak(utf8ToArray(entryName)).toString(16))]: abiEntryMod
28893
+ };
28894
+ }, {});
28895
+ }
28896
+ function getCairo1AbiEvents(abi) {
28897
+ const abiEventsStructs = abi.filter((obj) => isAbiEvent(obj) && obj.kind === "struct");
28898
+ const abiEventsEnums = abi.filter((obj) => isAbiEvent(obj) && obj.kind === "enum");
28899
+ const abiEventsData = abiEventsStructs.reduce((acc, event) => {
28900
+ let nameList = [];
28901
+ let { name } = event;
28902
+ let flat = false;
28903
+ const findName = (variant) => variant.type === name;
28904
+ while (true) {
28905
+ const eventEnum = abiEventsEnums.find((eventE) => eventE.variants.some(findName));
28906
+ if (typeof eventEnum === "undefined")
28907
+ break;
28908
+ const variant = eventEnum.variants.find(findName);
28909
+ nameList.unshift(variant.name);
28910
+ if (variant.kind === "flat")
28911
+ flat = true;
28912
+ name = eventEnum.name;
28913
+ }
28914
+ if (nameList.length === 0) {
28915
+ throw new Error("inconsistency in ABI events definition.");
28916
+ }
28917
+ if (flat)
28918
+ nameList = [nameList[nameList.length - 1]];
28919
+ const final = nameList.pop();
28920
+ let result = {
28921
+ [addHexPrefix(esm_exports2.keccak(utf8ToArray(final)).toString(16))]: event
28922
+ };
28923
+ while (nameList.length > 0) {
28924
+ result = {
28925
+ [addHexPrefix(esm_exports2.keccak(utf8ToArray(nameList.pop())).toString(16))]: result
28926
+ };
28927
+ }
28928
+ result = { ...result };
28929
+ return mergeAbiEvents(acc, result);
28930
+ }, {});
28931
+ return abiEventsData;
28932
+ }
28933
+ function getAbiEvents(abi) {
28934
+ return isCairo1Abi(abi) ? getCairo1AbiEvents(abi) : getCairo0AbiEvents(abi);
28935
+ }
28936
+ function isObject2(item) {
28937
+ return item && typeof item === "object" && !Array.isArray(item);
28938
+ }
28939
+ function mergeAbiEvents(target, source) {
28940
+ const output3 = { ...target };
28941
+ if (isObject2(target) && isObject2(source)) {
28942
+ Object.keys(source).forEach((key) => {
28943
+ if (isObject2(source[key])) {
28944
+ if (!(key in target))
28945
+ Object.assign(output3, { [key]: source[key] });
28946
+ else
28947
+ output3[key] = mergeAbiEvents(target[key], source[key]);
28948
+ } else {
28949
+ Object.assign(output3, { [key]: source[key] });
28950
+ }
28951
+ });
28952
+ }
28953
+ return output3;
28954
+ }
28955
+ function parseEvents(providerReceivedEvents, abiEvents, abiStructs, abiEnums) {
28956
+ const ret = providerReceivedEvents.flat().reduce((acc, recEvent) => {
28957
+ let abiEvent = abiEvents[recEvent.keys.shift() ?? 0];
28958
+ if (!abiEvent) {
28959
+ return acc;
28960
+ }
28961
+ while (!abiEvent.name) {
28962
+ const hashName = recEvent.keys.shift();
28963
+ assert(!!hashName, 'Not enough data in "key" property of this event.');
28964
+ abiEvent = abiEvent[hashName];
28965
+ }
28966
+ const parsedEvent = {};
28967
+ parsedEvent[abiEvent.name] = {};
28968
+ const keysIter = recEvent.keys[Symbol.iterator]();
28969
+ const dataIter = recEvent.data[Symbol.iterator]();
28970
+ const abiEventKeys = abiEvent.members?.filter((it) => it.kind === "key") || abiEvent.keys;
28971
+ const abiEventData = abiEvent.members?.filter((it) => it.kind === "data") || abiEvent.data;
28972
+ abiEventKeys.forEach((key) => {
28973
+ parsedEvent[abiEvent.name][key.name] = responseParser(
28974
+ keysIter,
28975
+ key,
28976
+ abiStructs,
28977
+ abiEnums,
28978
+ parsedEvent[abiEvent.name]
28979
+ );
28980
+ });
28981
+ abiEventData.forEach((data) => {
28982
+ parsedEvent[abiEvent.name][data.name] = responseParser(
28983
+ dataIter,
28984
+ data,
28985
+ abiStructs,
28986
+ abiEnums,
28987
+ parsedEvent[abiEvent.name]
28988
+ );
28989
+ });
28990
+ acc.push(parsedEvent);
28991
+ return acc;
28992
+ }, []);
28993
+ return ret;
28994
+ }
28828
28995
  function parseUDCEvent(txReceipt) {
28829
28996
  if (!txReceipt.events) {
28830
28997
  throw new Error("UDC emitted event is empty");
@@ -29051,7 +29218,7 @@ var starknet = (() => {
29051
29218
  );
29052
29219
  const estimate = await this.getUniversalSuggestedFee(
29053
29220
  version,
29054
- { type: "INVOKE_FUNCTION" /* INVOKE */, payload: transactions },
29221
+ { type: TransactionType.INVOKE, payload: transactions },
29055
29222
  {
29056
29223
  ...details,
29057
29224
  version
@@ -29109,7 +29276,7 @@ var starknet = (() => {
29109
29276
  const estimate = await this.getUniversalSuggestedFee(
29110
29277
  version,
29111
29278
  {
29112
- type: "DECLARE" /* DECLARE */,
29279
+ type: TransactionType.DECLARE,
29113
29280
  payload: declareContractPayload
29114
29281
  },
29115
29282
  {
@@ -29177,7 +29344,7 @@ var starknet = (() => {
29177
29344
  const estimate = await this.getUniversalSuggestedFee(
29178
29345
  version,
29179
29346
  {
29180
- type: "DEPLOY_ACCOUNT" /* DEPLOY_ACCOUNT */,
29347
+ type: TransactionType.DEPLOY_ACCOUNT,
29181
29348
  payload: {
29182
29349
  classHash,
29183
29350
  constructorCalldata: compiledCalldata,
@@ -29294,16 +29461,16 @@ var starknet = (() => {
29294
29461
  async getSuggestedFee({ type, payload }, details) {
29295
29462
  let feeEstimate;
29296
29463
  switch (type) {
29297
- case "INVOKE_FUNCTION" /* INVOKE */:
29464
+ case TransactionType.INVOKE:
29298
29465
  feeEstimate = await this.estimateInvokeFee(payload, details);
29299
29466
  break;
29300
- case "DECLARE" /* DECLARE */:
29467
+ case TransactionType.DECLARE:
29301
29468
  feeEstimate = await this.estimateDeclareFee(payload, details);
29302
29469
  break;
29303
- case "DEPLOY_ACCOUNT" /* DEPLOY_ACCOUNT */:
29470
+ case TransactionType.DEPLOY_ACCOUNT:
29304
29471
  feeEstimate = await this.estimateAccountDeployFee(payload, details);
29305
29472
  break;
29306
- case "DEPLOY" /* DEPLOY */:
29473
+ case TransactionType.DEPLOY:
29307
29474
  feeEstimate = await this.estimateDeployFee(payload, details);
29308
29475
  break;
29309
29476
  default:
@@ -29405,7 +29572,7 @@ var starknet = (() => {
29405
29572
  const chainId = await this.getChainId();
29406
29573
  const versions = details.versions.map((it) => toTransactionVersion(it));
29407
29574
  const tx0Payload = "payload" in invocations[0] ? invocations[0].payload : invocations[0];
29408
- const cairoVersion = invocations[0].type === "DEPLOY_ACCOUNT" /* DEPLOY_ACCOUNT */ ? await this.getCairoVersion(tx0Payload.classHash) : await this.getCairoVersion();
29575
+ const cairoVersion = invocations[0].type === TransactionType.DEPLOY_ACCOUNT ? await this.getCairoVersion(tx0Payload.classHash) : await this.getCairoVersion();
29409
29576
  return Promise.all(
29410
29577
  [].concat(invocations).map(async (transaction, index) => {
29411
29578
  const txPayload = "payload" in transaction ? transaction.payload : transaction;
@@ -29425,7 +29592,7 @@ var starknet = (() => {
29425
29592
  blockIdentifier,
29426
29593
  version: ""
29427
29594
  };
29428
- if (transaction.type === "INVOKE_FUNCTION" /* INVOKE */) {
29595
+ if (transaction.type === TransactionType.INVOKE) {
29429
29596
  const versionX = reduceV2(versions[1]);
29430
29597
  signerDetails.version = versionX;
29431
29598
  common2.version = versionX;
@@ -29438,7 +29605,7 @@ var starknet = (() => {
29438
29605
  ...payload
29439
29606
  };
29440
29607
  }
29441
- if (transaction.type === "DEPLOY" /* DEPLOY */) {
29608
+ if (transaction.type === TransactionType.DEPLOY) {
29442
29609
  const versionX = reduceV2(versions[1]);
29443
29610
  signerDetails.version = versionX;
29444
29611
  common2.version = versionX;
@@ -29447,10 +29614,10 @@ var starknet = (() => {
29447
29614
  return {
29448
29615
  ...common2,
29449
29616
  ...payload,
29450
- type: "INVOKE_FUNCTION" /* INVOKE */
29617
+ type: TransactionType.INVOKE
29451
29618
  };
29452
29619
  }
29453
- if (transaction.type === "DECLARE" /* DECLARE */) {
29620
+ if (transaction.type === TransactionType.DECLARE) {
29454
29621
  const versionX = !isSierra(txPayload.contract) ? versions[0] : versions[1];
29455
29622
  signerDetails.version = versionX;
29456
29623
  common2.version = versionX;
@@ -29460,7 +29627,7 @@ var starknet = (() => {
29460
29627
  ...payload
29461
29628
  };
29462
29629
  }
29463
- if (transaction.type === "DEPLOY_ACCOUNT" /* DEPLOY_ACCOUNT */) {
29630
+ if (transaction.type === TransactionType.DEPLOY_ACCOUNT) {
29464
29631
  const versionX = reduceV2(versions[1]);
29465
29632
  signerDetails.version = versionX;
29466
29633
  common2.version = versionX;
@@ -29665,60 +29832,6 @@ var starknet = (() => {
29665
29832
  // TODO: MISSING ESTIMATES
29666
29833
  };
29667
29834
 
29668
- // src/utils/events/index.ts
29669
- var events_exports = {};
29670
- __export(events_exports, {
29671
- getAbiEvents: () => getAbiEvents,
29672
- parseEvents: () => parseEvents
29673
- });
29674
- function getAbiEvents(abi) {
29675
- return abi.filter((abiEntry) => abiEntry.type === "event" && (abiEntry.size || abiEntry.kind !== "enum")).reduce((acc, abiEntry) => {
29676
- const entryName = abiEntry.name.slice(abiEntry.name.lastIndexOf(":") + 1);
29677
- const abiEntryMod = { ...abiEntry };
29678
- abiEntryMod.name = entryName;
29679
- return {
29680
- ...acc,
29681
- [addHexPrefix(esm_exports2.keccak(utf8ToArray(entryName)).toString(16))]: abiEntryMod
29682
- };
29683
- }, {});
29684
- }
29685
- function parseEvents(providerReceivedEvents, abiEvents, abiStructs, abiEnums) {
29686
- const ret = providerReceivedEvents.flat().reduce((acc, recEvent) => {
29687
- const abiEvent = abiEvents[recEvent.keys[0]];
29688
- if (!abiEvent) {
29689
- return acc;
29690
- }
29691
- const parsedEvent = {};
29692
- parsedEvent[abiEvent.name] = {};
29693
- recEvent.keys.shift();
29694
- const keysIter = recEvent.keys[Symbol.iterator]();
29695
- const dataIter = recEvent.data[Symbol.iterator]();
29696
- const abiEventKeys = abiEvent.members?.filter((it) => it.kind === "key") || abiEvent.keys;
29697
- const abiEventData = abiEvent.members?.filter((it) => it.kind === "data") || abiEvent.data;
29698
- abiEventKeys.forEach((key) => {
29699
- parsedEvent[abiEvent.name][key.name] = responseParser(
29700
- keysIter,
29701
- key,
29702
- abiStructs,
29703
- abiEnums,
29704
- parsedEvent[abiEvent.name]
29705
- );
29706
- });
29707
- abiEventData.forEach((data) => {
29708
- parsedEvent[abiEvent.name][data.name] = responseParser(
29709
- dataIter,
29710
- data,
29711
- abiStructs,
29712
- abiEnums,
29713
- parsedEvent[abiEvent.name]
29714
- );
29715
- });
29716
- acc.push(parsedEvent);
29717
- return acc;
29718
- }, []);
29719
- return ret;
29720
- }
29721
-
29722
29835
  // src/contract/default.ts
29723
29836
  var splitArgsAndOptions = (args) => {
29724
29837
  const options = [
@@ -29871,7 +29984,7 @@ var starknet = (() => {
29871
29984
  assert(this.address !== null, "contract is not connected to an address");
29872
29985
  const calldata = getCalldata(args, () => {
29873
29986
  if (parseRequest) {
29874
- this.callData.validate("CALL" /* CALL */, method, args);
29987
+ this.callData.validate(ValidateType.CALL, method, args);
29875
29988
  return this.callData.compile(method, args);
29876
29989
  }
29877
29990
  console.warn("Call skipped parsing but provided rawArgs, possible malfunction request");
@@ -29898,7 +30011,7 @@ var starknet = (() => {
29898
30011
  assert(this.address !== null, "contract is not connected to an address");
29899
30012
  const calldata = getCalldata(args, () => {
29900
30013
  if (parseRequest) {
29901
- this.callData.validate("INVOKE" /* INVOKE */, method, args);
30014
+ this.callData.validate(ValidateType.INVOKE, method, args);
29902
30015
  return this.callData.compile(method, args);
29903
30016
  }
29904
30017
  console.warn("Invoke skipped parsing but provided rawArgs, possible malfunction request");
@@ -29931,7 +30044,7 @@ var starknet = (() => {
29931
30044
  async estimate(method, args = []) {
29932
30045
  assert(this.address !== null, "contract is not connected to an address");
29933
30046
  if (!getCalldata(args, () => false)) {
29934
- this.callData.validate("INVOKE" /* INVOKE */, method, args);
30047
+ this.callData.validate(ValidateType.INVOKE, method, args);
29935
30048
  }
29936
30049
  const invocation = this.populate(method, args);
29937
30050
  if ("estimateInvokeFee" in this.providerOrAccount) {
@@ -30013,7 +30126,7 @@ var starknet = (() => {
30013
30126
  const { args: param, options = { parseRequest: true } } = splitArgsAndOptions(args);
30014
30127
  const constructorCalldata = getCalldata(param, () => {
30015
30128
  if (options.parseRequest) {
30016
- this.CallData.validate("DEPLOY" /* DEPLOY */, "constructor", param);
30129
+ this.CallData.validate(ValidateType.DEPLOY, "constructor", param);
30017
30130
  return this.CallData.compile("constructor", param);
30018
30131
  }
30019
30132
  console.warn("Call skipped parsing but provided rawArgs, possible malfunction request");
@@ -30056,16 +30169,22 @@ var starknet = (() => {
30056
30169
  // ethers.js' getDeployTransaction can't be supported as it requires the account or signer to return a signed transaction which is not possible with the current implementation
30057
30170
  };
30058
30171
 
30172
+ // src/utils/responseParser/interface.ts
30173
+ var ResponseParser = class {
30174
+ };
30175
+
30059
30176
  // src/utils/address.ts
30060
30177
  function addAddressPadding(address) {
30061
- return addHexPrefix(removeHexPrefix(toHex(address)).padStart(64, "0"));
30178
+ const hex = toHex(addHexPrefix(address.toString()));
30179
+ const padded = removeHexPrefix(hex).padStart(64, "0");
30180
+ return addHexPrefix(padded);
30062
30181
  }
30063
30182
  function validateAndParseAddress(address) {
30064
- assertInRange(address, ZERO, ADDR_BOUND - 1n, "Starknet Address");
30065
30183
  const result = addAddressPadding(address);
30066
30184
  if (!result.match(/^(0x)?[0-9a-fA-F]{64}$/)) {
30067
30185
  throw new Error("Invalid Address Format");
30068
30186
  }
30187
+ assertInRange(result, ZERO, ADDR_BOUND - 1n, "Starknet Address");
30069
30188
  return result;
30070
30189
  }
30071
30190
  function getChecksumAddress(address) {