@hashgraphonline/standards-sdk 0.1.188 → 0.1.190

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 (548) hide show
  1. package/dist/browser/hcs-25/adapters/agentverse.d.ts.map +1 -1
  2. package/dist/browser/hcs-25/adapters/availability.d.ts.map +1 -1
  3. package/dist/browser/hcs-25/adapters/connectivity.d.ts.map +1 -1
  4. package/dist/browser/hcs-25/adapters/ethos.d.ts.map +1 -1
  5. package/dist/browser/hcs-25/adapters/model-evals.d.ts.map +1 -1
  6. package/dist/browser/hcs-25/adapters/simple-evals.d.ts.map +1 -1
  7. package/dist/browser/hcs-25/adapters/x402.d.ts.map +1 -1
  8. package/dist/browser/hcs-25/collectors/acp.d.ts +42 -0
  9. package/dist/browser/hcs-25/collectors/acp.d.ts.map +1 -0
  10. package/dist/browser/hcs-25/collectors/agentverse.d.ts +37 -0
  11. package/dist/browser/hcs-25/collectors/agentverse.d.ts.map +1 -0
  12. package/dist/browser/hcs-25/collectors/availability.d.ts +29 -0
  13. package/dist/browser/hcs-25/collectors/availability.d.ts.map +1 -0
  14. package/dist/browser/hcs-25/collectors/catalog.d.ts +57 -0
  15. package/dist/browser/hcs-25/collectors/catalog.d.ts.map +1 -0
  16. package/dist/browser/hcs-25/collectors/connectivity.d.ts +49 -0
  17. package/dist/browser/hcs-25/collectors/connectivity.d.ts.map +1 -0
  18. package/dist/browser/hcs-25/collectors/endpoints.d.ts +9 -0
  19. package/dist/browser/hcs-25/collectors/endpoints.d.ts.map +1 -0
  20. package/dist/browser/hcs-25/collectors/erc8004.d.ts +104 -0
  21. package/dist/browser/hcs-25/collectors/erc8004.d.ts.map +1 -0
  22. package/dist/browser/hcs-25/collectors/ethos.d.ts +95 -0
  23. package/dist/browser/hcs-25/collectors/ethos.d.ts.map +1 -0
  24. package/dist/browser/hcs-25/collectors/freshness.d.ts +36 -0
  25. package/dist/browser/hcs-25/collectors/freshness.d.ts.map +1 -0
  26. package/dist/browser/hcs-25/collectors/http.d.ts +67 -0
  27. package/dist/browser/hcs-25/collectors/http.d.ts.map +1 -0
  28. package/dist/browser/hcs-25/collectors/index.d.ts +21 -0
  29. package/dist/browser/hcs-25/collectors/index.d.ts.map +1 -0
  30. package/dist/browser/hcs-25/collectors/merge.d.ts +11 -0
  31. package/dist/browser/hcs-25/collectors/merge.d.ts.map +1 -0
  32. package/dist/browser/hcs-25/collectors/model-evals.d.ts +315 -0
  33. package/dist/browser/hcs-25/collectors/model-evals.d.ts.map +1 -0
  34. package/dist/browser/hcs-25/collectors/oss-popularity.d.ts +51 -0
  35. package/dist/browser/hcs-25/collectors/oss-popularity.d.ts.map +1 -0
  36. package/dist/browser/hcs-25/collectors/output-verification.d.ts +37 -0
  37. package/dist/browser/hcs-25/collectors/output-verification.d.ts.map +1 -0
  38. package/dist/browser/hcs-25/collectors/pipeline.d.ts +19 -0
  39. package/dist/browser/hcs-25/collectors/pipeline.d.ts.map +1 -0
  40. package/dist/browser/hcs-25/collectors/runner.d.ts +20 -0
  41. package/dist/browser/hcs-25/collectors/runner.d.ts.map +1 -0
  42. package/dist/browser/hcs-25/collectors/simple-evals.d.ts +91 -0
  43. package/dist/browser/hcs-25/collectors/simple-evals.d.ts.map +1 -0
  44. package/dist/browser/hcs-25/collectors/types.d.ts +113 -0
  45. package/dist/browser/hcs-25/collectors/types.d.ts.map +1 -0
  46. package/dist/browser/hcs-25/collectors/x402-onchain.d.ts +105 -0
  47. package/dist/browser/hcs-25/collectors/x402-onchain.d.ts.map +1 -0
  48. package/dist/browser/hcs-25/collectors/x402.d.ts +48 -0
  49. package/dist/browser/hcs-25/collectors/x402.d.ts.map +1 -0
  50. package/dist/browser/hcs-25/index.d.ts +1 -0
  51. package/dist/browser/hcs-25/index.d.ts.map +1 -1
  52. package/dist/browser/hcs-25/signals/marketplace.d.ts +6 -6
  53. package/dist/browser/hcs-25/signals/marketplace.d.ts.map +1 -1
  54. package/dist/browser/hcs-25/signals/model-evals.d.ts +12 -12
  55. package/dist/browser/hcs-25/signals/model-evals.d.ts.map +1 -1
  56. package/dist/browser/hcs-25/signals/operational.d.ts +15 -12
  57. package/dist/browser/hcs-25/signals/operational.d.ts.map +1 -1
  58. package/dist/browser/hcs-25/signals/simple-evals.d.ts +1 -1
  59. package/dist/browser/hcs-25/signals/simple-evals.d.ts.map +1 -1
  60. package/dist/browser/services/registry-broker/client/agent-network.d.ts +210 -66
  61. package/dist/browser/services/registry-broker/client/agent-network.d.ts.map +1 -1
  62. package/dist/browser/services/registry-broker/client.d.ts +1 -1
  63. package/dist/browser/services/registry-broker/client.d.ts.map +1 -1
  64. package/dist/browser/standards-sdk.browser.js +37 -10
  65. package/dist/browser/standards-sdk.browser.js.map +1 -1
  66. package/dist/browser-root/hcs-25/adapters/agentverse.d.ts.map +1 -1
  67. package/dist/browser-root/hcs-25/adapters/availability.d.ts.map +1 -1
  68. package/dist/browser-root/hcs-25/adapters/connectivity.d.ts.map +1 -1
  69. package/dist/browser-root/hcs-25/adapters/ethos.d.ts.map +1 -1
  70. package/dist/browser-root/hcs-25/adapters/model-evals.d.ts.map +1 -1
  71. package/dist/browser-root/hcs-25/adapters/simple-evals.d.ts.map +1 -1
  72. package/dist/browser-root/hcs-25/adapters/x402.d.ts.map +1 -1
  73. package/dist/browser-root/hcs-25/collectors/acp.d.ts +42 -0
  74. package/dist/browser-root/hcs-25/collectors/acp.d.ts.map +1 -0
  75. package/dist/browser-root/hcs-25/collectors/agentverse.d.ts +37 -0
  76. package/dist/browser-root/hcs-25/collectors/agentverse.d.ts.map +1 -0
  77. package/dist/browser-root/hcs-25/collectors/availability.d.ts +29 -0
  78. package/dist/browser-root/hcs-25/collectors/availability.d.ts.map +1 -0
  79. package/dist/browser-root/hcs-25/collectors/catalog.d.ts +57 -0
  80. package/dist/browser-root/hcs-25/collectors/catalog.d.ts.map +1 -0
  81. package/dist/browser-root/hcs-25/collectors/connectivity.d.ts +49 -0
  82. package/dist/browser-root/hcs-25/collectors/connectivity.d.ts.map +1 -0
  83. package/dist/browser-root/hcs-25/collectors/endpoints.d.ts +9 -0
  84. package/dist/browser-root/hcs-25/collectors/endpoints.d.ts.map +1 -0
  85. package/dist/browser-root/hcs-25/collectors/erc8004.d.ts +104 -0
  86. package/dist/browser-root/hcs-25/collectors/erc8004.d.ts.map +1 -0
  87. package/dist/browser-root/hcs-25/collectors/ethos.d.ts +95 -0
  88. package/dist/browser-root/hcs-25/collectors/ethos.d.ts.map +1 -0
  89. package/dist/browser-root/hcs-25/collectors/freshness.d.ts +36 -0
  90. package/dist/browser-root/hcs-25/collectors/freshness.d.ts.map +1 -0
  91. package/dist/browser-root/hcs-25/collectors/http.d.ts +67 -0
  92. package/dist/browser-root/hcs-25/collectors/http.d.ts.map +1 -0
  93. package/dist/browser-root/hcs-25/collectors/index.d.ts +21 -0
  94. package/dist/browser-root/hcs-25/collectors/index.d.ts.map +1 -0
  95. package/dist/browser-root/hcs-25/collectors/merge.d.ts +11 -0
  96. package/dist/browser-root/hcs-25/collectors/merge.d.ts.map +1 -0
  97. package/dist/browser-root/hcs-25/collectors/model-evals.d.ts +315 -0
  98. package/dist/browser-root/hcs-25/collectors/model-evals.d.ts.map +1 -0
  99. package/dist/browser-root/hcs-25/collectors/oss-popularity.d.ts +51 -0
  100. package/dist/browser-root/hcs-25/collectors/oss-popularity.d.ts.map +1 -0
  101. package/dist/browser-root/hcs-25/collectors/output-verification.d.ts +37 -0
  102. package/dist/browser-root/hcs-25/collectors/output-verification.d.ts.map +1 -0
  103. package/dist/browser-root/hcs-25/collectors/pipeline.d.ts +19 -0
  104. package/dist/browser-root/hcs-25/collectors/pipeline.d.ts.map +1 -0
  105. package/dist/browser-root/hcs-25/collectors/runner.d.ts +20 -0
  106. package/dist/browser-root/hcs-25/collectors/runner.d.ts.map +1 -0
  107. package/dist/browser-root/hcs-25/collectors/simple-evals.d.ts +91 -0
  108. package/dist/browser-root/hcs-25/collectors/simple-evals.d.ts.map +1 -0
  109. package/dist/browser-root/hcs-25/collectors/types.d.ts +113 -0
  110. package/dist/browser-root/hcs-25/collectors/types.d.ts.map +1 -0
  111. package/dist/browser-root/hcs-25/collectors/x402-onchain.d.ts +105 -0
  112. package/dist/browser-root/hcs-25/collectors/x402-onchain.d.ts.map +1 -0
  113. package/dist/browser-root/hcs-25/collectors/x402.d.ts +48 -0
  114. package/dist/browser-root/hcs-25/collectors/x402.d.ts.map +1 -0
  115. package/dist/browser-root/hcs-25/index.d.ts +1 -0
  116. package/dist/browser-root/hcs-25/index.d.ts.map +1 -1
  117. package/dist/browser-root/hcs-25/signals/marketplace.d.ts +6 -6
  118. package/dist/browser-root/hcs-25/signals/marketplace.d.ts.map +1 -1
  119. package/dist/browser-root/hcs-25/signals/model-evals.d.ts +12 -12
  120. package/dist/browser-root/hcs-25/signals/model-evals.d.ts.map +1 -1
  121. package/dist/browser-root/hcs-25/signals/operational.d.ts +15 -12
  122. package/dist/browser-root/hcs-25/signals/operational.d.ts.map +1 -1
  123. package/dist/browser-root/hcs-25/signals/simple-evals.d.ts +1 -1
  124. package/dist/browser-root/hcs-25/signals/simple-evals.d.ts.map +1 -1
  125. package/dist/browser-root/services/registry-broker/client/agent-network.d.ts +210 -66
  126. package/dist/browser-root/services/registry-broker/client/agent-network.d.ts.map +1 -1
  127. package/dist/browser-root/services/registry-broker/client.d.ts +1 -1
  128. package/dist/browser-root/services/registry-broker/client.d.ts.map +1 -1
  129. package/dist/browser-root/standards-sdk.root-browser.js +78 -11
  130. package/dist/browser-root/standards-sdk.root-browser.js.map +1 -1
  131. package/dist/cjs/hcs-25/adapters/agentverse.d.ts.map +1 -1
  132. package/dist/cjs/hcs-25/adapters/availability.d.ts.map +1 -1
  133. package/dist/cjs/hcs-25/adapters/connectivity.d.ts.map +1 -1
  134. package/dist/cjs/hcs-25/adapters/ethos.d.ts.map +1 -1
  135. package/dist/cjs/hcs-25/adapters/model-evals.d.ts.map +1 -1
  136. package/dist/cjs/hcs-25/adapters/simple-evals.d.ts.map +1 -1
  137. package/dist/cjs/hcs-25/adapters/x402.d.ts.map +1 -1
  138. package/dist/cjs/hcs-25/collectors/acp.d.ts +42 -0
  139. package/dist/cjs/hcs-25/collectors/acp.d.ts.map +1 -0
  140. package/dist/cjs/hcs-25/collectors/agentverse.d.ts +37 -0
  141. package/dist/cjs/hcs-25/collectors/agentverse.d.ts.map +1 -0
  142. package/dist/cjs/hcs-25/collectors/availability.d.ts +29 -0
  143. package/dist/cjs/hcs-25/collectors/availability.d.ts.map +1 -0
  144. package/dist/cjs/hcs-25/collectors/catalog.d.ts +57 -0
  145. package/dist/cjs/hcs-25/collectors/catalog.d.ts.map +1 -0
  146. package/dist/cjs/hcs-25/collectors/connectivity.d.ts +49 -0
  147. package/dist/cjs/hcs-25/collectors/connectivity.d.ts.map +1 -0
  148. package/dist/cjs/hcs-25/collectors/endpoints.d.ts +9 -0
  149. package/dist/cjs/hcs-25/collectors/endpoints.d.ts.map +1 -0
  150. package/dist/cjs/hcs-25/collectors/erc8004.d.ts +104 -0
  151. package/dist/cjs/hcs-25/collectors/erc8004.d.ts.map +1 -0
  152. package/dist/cjs/hcs-25/collectors/ethos.d.ts +95 -0
  153. package/dist/cjs/hcs-25/collectors/ethos.d.ts.map +1 -0
  154. package/dist/cjs/hcs-25/collectors/freshness.d.ts +36 -0
  155. package/dist/cjs/hcs-25/collectors/freshness.d.ts.map +1 -0
  156. package/dist/cjs/hcs-25/collectors/http.d.ts +67 -0
  157. package/dist/cjs/hcs-25/collectors/http.d.ts.map +1 -0
  158. package/dist/cjs/hcs-25/collectors/index.d.ts +21 -0
  159. package/dist/cjs/hcs-25/collectors/index.d.ts.map +1 -0
  160. package/dist/cjs/hcs-25/collectors/merge.d.ts +11 -0
  161. package/dist/cjs/hcs-25/collectors/merge.d.ts.map +1 -0
  162. package/dist/cjs/hcs-25/collectors/model-evals.d.ts +315 -0
  163. package/dist/cjs/hcs-25/collectors/model-evals.d.ts.map +1 -0
  164. package/dist/cjs/hcs-25/collectors/oss-popularity.d.ts +51 -0
  165. package/dist/cjs/hcs-25/collectors/oss-popularity.d.ts.map +1 -0
  166. package/dist/cjs/hcs-25/collectors/output-verification.d.ts +37 -0
  167. package/dist/cjs/hcs-25/collectors/output-verification.d.ts.map +1 -0
  168. package/dist/cjs/hcs-25/collectors/pipeline.d.ts +19 -0
  169. package/dist/cjs/hcs-25/collectors/pipeline.d.ts.map +1 -0
  170. package/dist/cjs/hcs-25/collectors/runner.d.ts +20 -0
  171. package/dist/cjs/hcs-25/collectors/runner.d.ts.map +1 -0
  172. package/dist/cjs/hcs-25/collectors/simple-evals.d.ts +91 -0
  173. package/dist/cjs/hcs-25/collectors/simple-evals.d.ts.map +1 -0
  174. package/dist/cjs/hcs-25/collectors/types.d.ts +113 -0
  175. package/dist/cjs/hcs-25/collectors/types.d.ts.map +1 -0
  176. package/dist/cjs/hcs-25/collectors/x402-onchain.d.ts +105 -0
  177. package/dist/cjs/hcs-25/collectors/x402-onchain.d.ts.map +1 -0
  178. package/dist/cjs/hcs-25/collectors/x402.d.ts +48 -0
  179. package/dist/cjs/hcs-25/collectors/x402.d.ts.map +1 -0
  180. package/dist/cjs/hcs-25/index.d.ts +1 -0
  181. package/dist/cjs/hcs-25/index.d.ts.map +1 -1
  182. package/dist/cjs/hcs-25/signals/marketplace.d.ts +6 -6
  183. package/dist/cjs/hcs-25/signals/marketplace.d.ts.map +1 -1
  184. package/dist/cjs/hcs-25/signals/model-evals.d.ts +12 -12
  185. package/dist/cjs/hcs-25/signals/model-evals.d.ts.map +1 -1
  186. package/dist/cjs/hcs-25/signals/operational.d.ts +15 -12
  187. package/dist/cjs/hcs-25/signals/operational.d.ts.map +1 -1
  188. package/dist/cjs/hcs-25/signals/simple-evals.d.ts +1 -1
  189. package/dist/cjs/hcs-25/signals/simple-evals.d.ts.map +1 -1
  190. package/dist/cjs/services/registry-broker/client/agent-network.d.ts +210 -66
  191. package/dist/cjs/services/registry-broker/client/agent-network.d.ts.map +1 -1
  192. package/dist/cjs/services/registry-broker/client.d.ts +1 -1
  193. package/dist/cjs/services/registry-broker/client.d.ts.map +1 -1
  194. package/dist/cjs/standards-sdk.cjs +2 -2
  195. package/dist/cjs/standards-sdk.cjs.map +1 -1
  196. package/dist/es/hcs-25/adapters/agentverse.d.ts.map +1 -1
  197. package/dist/es/hcs-25/adapters/availability.d.ts.map +1 -1
  198. package/dist/es/hcs-25/adapters/connectivity.d.ts.map +1 -1
  199. package/dist/es/hcs-25/adapters/ethos.d.ts.map +1 -1
  200. package/dist/es/hcs-25/adapters/model-evals.d.ts.map +1 -1
  201. package/dist/es/hcs-25/adapters/simple-evals.d.ts.map +1 -1
  202. package/dist/es/hcs-25/adapters/x402.d.ts.map +1 -1
  203. package/dist/es/hcs-25/collectors/acp.d.ts +42 -0
  204. package/dist/es/hcs-25/collectors/acp.d.ts.map +1 -0
  205. package/dist/es/hcs-25/collectors/agentverse.d.ts +37 -0
  206. package/dist/es/hcs-25/collectors/agentverse.d.ts.map +1 -0
  207. package/dist/es/hcs-25/collectors/availability.d.ts +29 -0
  208. package/dist/es/hcs-25/collectors/availability.d.ts.map +1 -0
  209. package/dist/es/hcs-25/collectors/catalog.d.ts +57 -0
  210. package/dist/es/hcs-25/collectors/catalog.d.ts.map +1 -0
  211. package/dist/es/hcs-25/collectors/connectivity.d.ts +49 -0
  212. package/dist/es/hcs-25/collectors/connectivity.d.ts.map +1 -0
  213. package/dist/es/hcs-25/collectors/endpoints.d.ts +9 -0
  214. package/dist/es/hcs-25/collectors/endpoints.d.ts.map +1 -0
  215. package/dist/es/hcs-25/collectors/erc8004.d.ts +104 -0
  216. package/dist/es/hcs-25/collectors/erc8004.d.ts.map +1 -0
  217. package/dist/es/hcs-25/collectors/ethos.d.ts +95 -0
  218. package/dist/es/hcs-25/collectors/ethos.d.ts.map +1 -0
  219. package/dist/es/hcs-25/collectors/freshness.d.ts +36 -0
  220. package/dist/es/hcs-25/collectors/freshness.d.ts.map +1 -0
  221. package/dist/es/hcs-25/collectors/http.d.ts +67 -0
  222. package/dist/es/hcs-25/collectors/http.d.ts.map +1 -0
  223. package/dist/es/hcs-25/collectors/index.d.ts +21 -0
  224. package/dist/es/hcs-25/collectors/index.d.ts.map +1 -0
  225. package/dist/es/hcs-25/collectors/merge.d.ts +11 -0
  226. package/dist/es/hcs-25/collectors/merge.d.ts.map +1 -0
  227. package/dist/es/hcs-25/collectors/model-evals.d.ts +315 -0
  228. package/dist/es/hcs-25/collectors/model-evals.d.ts.map +1 -0
  229. package/dist/es/hcs-25/collectors/oss-popularity.d.ts +51 -0
  230. package/dist/es/hcs-25/collectors/oss-popularity.d.ts.map +1 -0
  231. package/dist/es/hcs-25/collectors/output-verification.d.ts +37 -0
  232. package/dist/es/hcs-25/collectors/output-verification.d.ts.map +1 -0
  233. package/dist/es/hcs-25/collectors/pipeline.d.ts +19 -0
  234. package/dist/es/hcs-25/collectors/pipeline.d.ts.map +1 -0
  235. package/dist/es/hcs-25/collectors/runner.d.ts +20 -0
  236. package/dist/es/hcs-25/collectors/runner.d.ts.map +1 -0
  237. package/dist/es/hcs-25/collectors/simple-evals.d.ts +91 -0
  238. package/dist/es/hcs-25/collectors/simple-evals.d.ts.map +1 -0
  239. package/dist/es/hcs-25/collectors/types.d.ts +113 -0
  240. package/dist/es/hcs-25/collectors/types.d.ts.map +1 -0
  241. package/dist/es/hcs-25/collectors/x402-onchain.d.ts +105 -0
  242. package/dist/es/hcs-25/collectors/x402-onchain.d.ts.map +1 -0
  243. package/dist/es/hcs-25/collectors/x402.d.ts +48 -0
  244. package/dist/es/hcs-25/collectors/x402.d.ts.map +1 -0
  245. package/dist/es/hcs-25/index.d.ts +1 -0
  246. package/dist/es/hcs-25/index.d.ts.map +1 -1
  247. package/dist/es/hcs-25/signals/marketplace.d.ts +6 -6
  248. package/dist/es/hcs-25/signals/marketplace.d.ts.map +1 -1
  249. package/dist/es/hcs-25/signals/model-evals.d.ts +12 -12
  250. package/dist/es/hcs-25/signals/model-evals.d.ts.map +1 -1
  251. package/dist/es/hcs-25/signals/operational.d.ts +15 -12
  252. package/dist/es/hcs-25/signals/operational.d.ts.map +1 -1
  253. package/dist/es/hcs-25/signals/simple-evals.d.ts +1 -1
  254. package/dist/es/hcs-25/signals/simple-evals.d.ts.map +1 -1
  255. package/dist/es/services/registry-broker/client/agent-network.d.ts +210 -66
  256. package/dist/es/services/registry-broker/client/agent-network.d.ts.map +1 -1
  257. package/dist/es/services/registry-broker/client.d.ts +1 -1
  258. package/dist/es/services/registry-broker/client.d.ts.map +1 -1
  259. package/dist/es/standards-sdk.es.js +141 -58
  260. package/dist/es/standards-sdk.es.js.map +1 -1
  261. package/dist/es/standards-sdk.es101.js +2 -2
  262. package/dist/es/standards-sdk.es103.js +2 -2
  263. package/dist/es/standards-sdk.es104.js +1 -1
  264. package/dist/es/standards-sdk.es106.js +1 -1
  265. package/dist/es/standards-sdk.es108.js +2 -2
  266. package/dist/es/standards-sdk.es11.js +1 -1
  267. package/dist/es/standards-sdk.es110.js +1 -1
  268. package/dist/es/standards-sdk.es111.js +2 -2
  269. package/dist/es/standards-sdk.es115.js +3 -3
  270. package/dist/es/standards-sdk.es116.js +4 -4
  271. package/dist/es/standards-sdk.es12.js +1 -1
  272. package/dist/es/standards-sdk.es120.js +4 -4
  273. package/dist/es/standards-sdk.es121.js +11 -11
  274. package/dist/es/standards-sdk.es122.js +176 -240
  275. package/dist/es/standards-sdk.es122.js.map +1 -1
  276. package/dist/es/standards-sdk.es123.js +41 -468
  277. package/dist/es/standards-sdk.es123.js.map +1 -1
  278. package/dist/es/standards-sdk.es124.js +28 -103
  279. package/dist/es/standards-sdk.es124.js.map +1 -1
  280. package/dist/es/standards-sdk.es125.js +185 -145
  281. package/dist/es/standards-sdk.es125.js.map +1 -1
  282. package/dist/es/standards-sdk.es126.js +13 -33
  283. package/dist/es/standards-sdk.es126.js.map +1 -1
  284. package/dist/es/standards-sdk.es127.js +44 -10
  285. package/dist/es/standards-sdk.es127.js.map +1 -1
  286. package/dist/es/standards-sdk.es128.js +150 -172
  287. package/dist/es/standards-sdk.es128.js.map +1 -1
  288. package/dist/es/standards-sdk.es129.js +166 -26
  289. package/dist/es/standards-sdk.es129.js.map +1 -1
  290. package/dist/es/standards-sdk.es13.js +1 -1
  291. package/dist/es/standards-sdk.es130.js +375 -18
  292. package/dist/es/standards-sdk.es130.js.map +1 -1
  293. package/dist/es/standards-sdk.es131.js +371 -139
  294. package/dist/es/standards-sdk.es131.js.map +1 -1
  295. package/dist/es/standards-sdk.es132.js +211 -180
  296. package/dist/es/standards-sdk.es132.js.map +1 -1
  297. package/dist/es/standards-sdk.es133.js +210 -770
  298. package/dist/es/standards-sdk.es133.js.map +1 -1
  299. package/dist/es/standards-sdk.es134.js +376 -10
  300. package/dist/es/standards-sdk.es134.js.map +1 -1
  301. package/dist/es/standards-sdk.es135.js +118 -564
  302. package/dist/es/standards-sdk.es135.js.map +1 -1
  303. package/dist/es/standards-sdk.es136.js +233 -608
  304. package/dist/es/standards-sdk.es136.js.map +1 -1
  305. package/dist/es/standards-sdk.es137.js +1328 -12
  306. package/dist/es/standards-sdk.es137.js.map +1 -1
  307. package/dist/es/standards-sdk.es138.js +133 -2
  308. package/dist/es/standards-sdk.es138.js.map +1 -1
  309. package/dist/es/standards-sdk.es139.js +258 -74
  310. package/dist/es/standards-sdk.es139.js.map +1 -1
  311. package/dist/es/standards-sdk.es14.js +1 -1
  312. package/dist/es/standards-sdk.es140.js +104 -38
  313. package/dist/es/standards-sdk.es140.js.map +1 -1
  314. package/dist/es/standards-sdk.es141.js +252 -2
  315. package/dist/es/standards-sdk.es141.js.map +1 -1
  316. package/dist/es/standards-sdk.es142.js +446 -203
  317. package/dist/es/standards-sdk.es142.js.map +1 -1
  318. package/dist/es/standards-sdk.es143.js +104 -1139
  319. package/dist/es/standards-sdk.es143.js.map +1 -1
  320. package/dist/es/standards-sdk.es144.js +144 -290
  321. package/dist/es/standards-sdk.es144.js.map +1 -1
  322. package/dist/es/standards-sdk.es145.js +31 -419
  323. package/dist/es/standards-sdk.es145.js.map +1 -1
  324. package/dist/es/standards-sdk.es146.js +10 -353
  325. package/dist/es/standards-sdk.es146.js.map +1 -1
  326. package/dist/es/standards-sdk.es147.js +144 -1084
  327. package/dist/es/standards-sdk.es147.js.map +1 -1
  328. package/dist/es/standards-sdk.es148.js +25 -204
  329. package/dist/es/standards-sdk.es148.js.map +1 -1
  330. package/dist/es/standards-sdk.es149.js +17 -1562
  331. package/dist/es/standards-sdk.es149.js.map +1 -1
  332. package/dist/es/standards-sdk.es15.js +1 -1
  333. package/dist/es/standards-sdk.es150.js +128 -1134
  334. package/dist/es/standards-sdk.es150.js.map +1 -1
  335. package/dist/es/standards-sdk.es151.js +199 -14
  336. package/dist/es/standards-sdk.es151.js.map +1 -1
  337. package/dist/es/standards-sdk.es152.js +774 -367
  338. package/dist/es/standards-sdk.es152.js.map +1 -1
  339. package/dist/es/standards-sdk.es153.js +10 -256
  340. package/dist/es/standards-sdk.es153.js.map +1 -1
  341. package/dist/es/standards-sdk.es154.js +567 -4
  342. package/dist/es/standards-sdk.es154.js.map +1 -1
  343. package/dist/es/standards-sdk.es155.js +619 -74
  344. package/dist/es/standards-sdk.es155.js.map +1 -1
  345. package/dist/es/standards-sdk.es156.js +12 -86
  346. package/dist/es/standards-sdk.es156.js.map +1 -1
  347. package/dist/es/standards-sdk.es157.js +2 -60
  348. package/dist/es/standards-sdk.es157.js.map +1 -1
  349. package/dist/es/standards-sdk.es158.js +87 -2547
  350. package/dist/es/standards-sdk.es158.js.map +1 -1
  351. package/dist/es/standards-sdk.es159.js +36 -155
  352. package/dist/es/standards-sdk.es159.js.map +1 -1
  353. package/dist/es/standards-sdk.es16.js +6 -6
  354. package/dist/es/standards-sdk.es160.js +2 -7
  355. package/dist/es/standards-sdk.es160.js.map +1 -1
  356. package/dist/es/standards-sdk.es161.js +223 -74
  357. package/dist/es/standards-sdk.es161.js.map +1 -1
  358. package/dist/es/standards-sdk.es162.js +1122 -47
  359. package/dist/es/standards-sdk.es162.js.map +1 -1
  360. package/dist/es/standards-sdk.es163.js +299 -187
  361. package/dist/es/standards-sdk.es163.js.map +1 -1
  362. package/dist/es/standards-sdk.es164.js +419 -23
  363. package/dist/es/standards-sdk.es164.js.map +1 -1
  364. package/dist/es/standards-sdk.es165.js +352 -55
  365. package/dist/es/standards-sdk.es165.js.map +1 -1
  366. package/dist/es/standards-sdk.es166.js +1113 -86
  367. package/dist/es/standards-sdk.es166.js.map +1 -1
  368. package/dist/es/standards-sdk.es167.js +200 -41
  369. package/dist/es/standards-sdk.es167.js.map +1 -1
  370. package/dist/es/standards-sdk.es168.js +1551 -188
  371. package/dist/es/standards-sdk.es168.js.map +1 -1
  372. package/dist/es/standards-sdk.es169.js +1161 -51
  373. package/dist/es/standards-sdk.es169.js.map +1 -1
  374. package/dist/es/standards-sdk.es170.js +15 -47
  375. package/dist/es/standards-sdk.es170.js.map +1 -1
  376. package/dist/es/standards-sdk.es171.js +445 -50
  377. package/dist/es/standards-sdk.es171.js.map +1 -1
  378. package/dist/es/standards-sdk.es172.js +255 -45
  379. package/dist/es/standards-sdk.es172.js.map +1 -1
  380. package/dist/es/standards-sdk.es173.js +4 -122
  381. package/dist/es/standards-sdk.es173.js.map +1 -1
  382. package/dist/es/standards-sdk.es174.js +77 -50
  383. package/dist/es/standards-sdk.es174.js.map +1 -1
  384. package/dist/es/standards-sdk.es175.js +85 -42
  385. package/dist/es/standards-sdk.es175.js.map +1 -1
  386. package/dist/es/standards-sdk.es176.js +60 -72
  387. package/dist/es/standards-sdk.es176.js.map +1 -1
  388. package/dist/es/standards-sdk.es177.js +2544 -65
  389. package/dist/es/standards-sdk.es177.js.map +1 -1
  390. package/dist/es/standards-sdk.es178.js +159 -44
  391. package/dist/es/standards-sdk.es178.js.map +1 -1
  392. package/dist/es/standards-sdk.es179.js +7 -36
  393. package/dist/es/standards-sdk.es179.js.map +1 -1
  394. package/dist/es/standards-sdk.es18.js +13 -13
  395. package/dist/es/standards-sdk.es180.js +86 -30
  396. package/dist/es/standards-sdk.es180.js.map +1 -1
  397. package/dist/es/standards-sdk.es181.js +65 -34
  398. package/dist/es/standards-sdk.es181.js.map +1 -1
  399. package/dist/es/standards-sdk.es182.js +196 -48
  400. package/dist/es/standards-sdk.es182.js.map +1 -1
  401. package/dist/es/standards-sdk.es183.js +23 -135
  402. package/dist/es/standards-sdk.es183.js.map +1 -1
  403. package/dist/es/standards-sdk.es184.js +54 -38
  404. package/dist/es/standards-sdk.es184.js.map +1 -1
  405. package/dist/es/standards-sdk.es185.js +102 -12470
  406. package/dist/es/standards-sdk.es185.js.map +1 -1
  407. package/dist/es/standards-sdk.es186.js +53 -52
  408. package/dist/es/standards-sdk.es186.js.map +1 -1
  409. package/dist/es/standards-sdk.es187.js +223 -103
  410. package/dist/es/standards-sdk.es187.js.map +1 -1
  411. package/dist/es/standards-sdk.es188.js +66 -75
  412. package/dist/es/standards-sdk.es188.js.map +1 -1
  413. package/dist/es/standards-sdk.es189.js +46 -197
  414. package/dist/es/standards-sdk.es189.js.map +1 -1
  415. package/dist/es/standards-sdk.es19.js +10 -10
  416. package/dist/es/standards-sdk.es190.js +60 -15
  417. package/dist/es/standards-sdk.es190.js.map +1 -1
  418. package/dist/es/standards-sdk.es191.js +47 -670
  419. package/dist/es/standards-sdk.es191.js.map +1 -1
  420. package/dist/es/standards-sdk.es192.js +112 -162
  421. package/dist/es/standards-sdk.es192.js.map +1 -1
  422. package/dist/es/standards-sdk.es193.js +53 -318
  423. package/dist/es/standards-sdk.es193.js.map +1 -1
  424. package/dist/es/standards-sdk.es194.js +54 -341
  425. package/dist/es/standards-sdk.es194.js.map +1 -1
  426. package/dist/es/standards-sdk.es195.js +72 -453
  427. package/dist/es/standards-sdk.es195.js.map +1 -1
  428. package/dist/es/standards-sdk.es196.js +75 -331
  429. package/dist/es/standards-sdk.es196.js.map +1 -1
  430. package/dist/es/standards-sdk.es197.js +44 -76
  431. package/dist/es/standards-sdk.es197.js.map +1 -1
  432. package/dist/es/standards-sdk.es198.js +30 -67
  433. package/dist/es/standards-sdk.es198.js.map +1 -1
  434. package/dist/es/standards-sdk.es199.js +30 -139
  435. package/dist/es/standards-sdk.es199.js.map +1 -1
  436. package/dist/es/standards-sdk.es2.js +2 -2
  437. package/dist/es/standards-sdk.es20.js +1 -1
  438. package/dist/es/standards-sdk.es200.js +34 -517
  439. package/dist/es/standards-sdk.es200.js.map +1 -1
  440. package/dist/es/standards-sdk.es201.js +48 -259
  441. package/dist/es/standards-sdk.es201.js.map +1 -1
  442. package/dist/es/standards-sdk.es202.js +127 -185
  443. package/dist/es/standards-sdk.es202.js.map +1 -1
  444. package/dist/es/standards-sdk.es203.js +36 -113
  445. package/dist/es/standards-sdk.es203.js.map +1 -1
  446. package/dist/es/standards-sdk.es204.js +12464 -134
  447. package/dist/es/standards-sdk.es204.js.map +1 -1
  448. package/dist/es/standards-sdk.es205.js +14 -181
  449. package/dist/es/standards-sdk.es205.js.map +1 -1
  450. package/dist/es/standards-sdk.es206.js +55 -683
  451. package/dist/es/standards-sdk.es206.js.map +1 -1
  452. package/dist/es/standards-sdk.es207.js +93 -167
  453. package/dist/es/standards-sdk.es207.js.map +1 -1
  454. package/dist/es/standards-sdk.es208.js +71 -225
  455. package/dist/es/standards-sdk.es208.js.map +1 -1
  456. package/dist/es/standards-sdk.es209.js +176 -215
  457. package/dist/es/standards-sdk.es209.js.map +1 -1
  458. package/dist/es/standards-sdk.es21.js +1 -1
  459. package/dist/es/standards-sdk.es210.js +675 -0
  460. package/dist/es/standards-sdk.es210.js.map +1 -0
  461. package/dist/es/standards-sdk.es211.js +76 -0
  462. package/dist/es/standards-sdk.es211.js.map +1 -0
  463. package/dist/es/standards-sdk.es212.js +175 -0
  464. package/dist/es/standards-sdk.es212.js.map +1 -0
  465. package/dist/es/standards-sdk.es213.js +325 -0
  466. package/dist/es/standards-sdk.es213.js.map +1 -0
  467. package/dist/es/standards-sdk.es214.js +349 -0
  468. package/dist/es/standards-sdk.es214.js.map +1 -0
  469. package/dist/es/standards-sdk.es215.js +456 -0
  470. package/dist/es/standards-sdk.es215.js.map +1 -0
  471. package/dist/es/standards-sdk.es216.js +334 -0
  472. package/dist/es/standards-sdk.es216.js.map +1 -0
  473. package/dist/es/standards-sdk.es217.js +79 -0
  474. package/dist/es/standards-sdk.es217.js.map +1 -0
  475. package/dist/es/standards-sdk.es218.js +142 -0
  476. package/dist/es/standards-sdk.es218.js.map +1 -0
  477. package/dist/es/standards-sdk.es219.js +520 -0
  478. package/dist/es/standards-sdk.es219.js.map +1 -0
  479. package/dist/es/standards-sdk.es22.js +1 -1
  480. package/dist/es/standards-sdk.es220.js +262 -0
  481. package/dist/es/standards-sdk.es220.js.map +1 -0
  482. package/dist/es/standards-sdk.es221.js +199 -0
  483. package/dist/es/standards-sdk.es221.js.map +1 -0
  484. package/dist/es/standards-sdk.es222.js +122 -0
  485. package/dist/es/standards-sdk.es222.js.map +1 -0
  486. package/dist/es/standards-sdk.es223.js +155 -0
  487. package/dist/es/standards-sdk.es223.js.map +1 -0
  488. package/dist/es/standards-sdk.es224.js +187 -0
  489. package/dist/es/standards-sdk.es224.js.map +1 -0
  490. package/dist/es/standards-sdk.es225.js +687 -0
  491. package/dist/es/standards-sdk.es225.js.map +1 -0
  492. package/dist/es/standards-sdk.es226.js +188 -0
  493. package/dist/es/standards-sdk.es226.js.map +1 -0
  494. package/dist/es/standards-sdk.es227.js +238 -0
  495. package/dist/es/standards-sdk.es227.js.map +1 -0
  496. package/dist/es/standards-sdk.es228.js +242 -0
  497. package/dist/es/standards-sdk.es228.js.map +1 -0
  498. package/dist/es/standards-sdk.es23.js +1 -1
  499. package/dist/es/standards-sdk.es24.js +1 -1
  500. package/dist/es/standards-sdk.es25.js +1 -1
  501. package/dist/es/standards-sdk.es26.js +1 -1
  502. package/dist/es/standards-sdk.es27.js +13 -13
  503. package/dist/es/standards-sdk.es30.js +2 -2
  504. package/dist/es/standards-sdk.es31.js +4 -4
  505. package/dist/es/standards-sdk.es32.js +1 -1
  506. package/dist/es/standards-sdk.es35.js +7 -7
  507. package/dist/es/standards-sdk.es36.js +4 -4
  508. package/dist/es/standards-sdk.es37.js +2 -2
  509. package/dist/es/standards-sdk.es38.js +2 -2
  510. package/dist/es/standards-sdk.es39.js +1 -1
  511. package/dist/es/standards-sdk.es4.js +2 -2
  512. package/dist/es/standards-sdk.es40.js +1 -1
  513. package/dist/es/standards-sdk.es41.js +2 -2
  514. package/dist/es/standards-sdk.es46.js +1 -1
  515. package/dist/es/standards-sdk.es5.js +2 -2
  516. package/dist/es/standards-sdk.es51.js +1 -1
  517. package/dist/es/standards-sdk.es53.js +1 -1
  518. package/dist/es/standards-sdk.es56.js +2 -2
  519. package/dist/es/standards-sdk.es59.js +1 -1
  520. package/dist/es/standards-sdk.es6.js +2 -2
  521. package/dist/es/standards-sdk.es60.js +1 -1
  522. package/dist/es/standards-sdk.es62.js +1 -1
  523. package/dist/es/standards-sdk.es63.js +2 -2
  524. package/dist/es/standards-sdk.es64.js +1 -1
  525. package/dist/es/standards-sdk.es65.js +1 -1
  526. package/dist/es/standards-sdk.es66.js +1 -1
  527. package/dist/es/standards-sdk.es67.js +8 -8
  528. package/dist/es/standards-sdk.es69.js +1 -1
  529. package/dist/es/standards-sdk.es7.js +1 -1
  530. package/dist/es/standards-sdk.es71.js +2 -2
  531. package/dist/es/standards-sdk.es72.js +3 -3
  532. package/dist/es/standards-sdk.es75.js +5 -5
  533. package/dist/es/standards-sdk.es76.js +3 -3
  534. package/dist/es/standards-sdk.es77.js +2 -2
  535. package/dist/es/standards-sdk.es78.js +1 -1
  536. package/dist/es/standards-sdk.es81.js +2 -2
  537. package/dist/es/standards-sdk.es83.js +2 -2
  538. package/dist/es/standards-sdk.es84.js +5 -5
  539. package/dist/es/standards-sdk.es85.js +1 -1
  540. package/dist/es/standards-sdk.es88.js +1 -1
  541. package/dist/es/standards-sdk.es89.js +2 -2
  542. package/dist/es/standards-sdk.es9.js +2 -2
  543. package/dist/es/standards-sdk.es90.js +4 -4
  544. package/dist/es/standards-sdk.es94.js +3 -3
  545. package/dist/es/standards-sdk.es96.js +2 -2
  546. package/dist/es/standards-sdk.es98.js +1 -1
  547. package/dist/es/standards-sdk.es99.js +3 -3
  548. package/package.json +1 -1
@@ -1,793 +1,233 @@
1
- import { proto } from "@hashgraph/proto";
2
- import { Buffer } from "buffer";
3
- import { Hbar, Long, HbarUnit, Transaction } from "@hashgraph/sdk";
4
- import { ethers } from "ethers";
5
- import { TransactionParsingError } from "./standards-sdk.es134.js";
6
- import { resolveTransactionSummary } from "./standards-sdk.es135.js";
7
- import { HTSParser } from "./standards-sdk.es143.js";
8
- import { HCSParser } from "./standards-sdk.es192.js";
9
- import { FileParser } from "./standards-sdk.es193.js";
10
- import { CryptoParser } from "./standards-sdk.es194.js";
11
- import { SCSParser } from "./standards-sdk.es195.js";
12
- import { UtilParser } from "./standards-sdk.es196.js";
13
- import { ScheduleParser } from "./standards-sdk.es144.js";
14
- import { transactionParserRegistry } from "./standards-sdk.es145.js";
15
- import { getTransactionTypeFromBody, getHumanReadableTransactionType } from "./standards-sdk.es146.js";
16
- class TransactionParser {
17
- /**
18
- * Parse transaction bytes in any supported format (base64 or hex, regular or scheduled)
19
- * This is the main entry point for transaction parsing with enhanced retry logic
20
- *
21
- * @param transactionBytes - Transaction bytes in base64 or hex format
22
- * @param options - Parsing options and configuration
23
- * @returns Promise resolving to ParsedTransaction
24
- */
25
- static async parseTransactionBytes(transactionBytes, options = {}) {
26
- const {
27
- enableFallback = true,
28
- strictMode = false,
29
- includeRaw = true,
30
- maxRetries = 2
31
- } = options;
32
- const validation = this.validateTransactionBytes(transactionBytes);
33
- if (!validation.isValid && strictMode) {
34
- throw new TransactionParsingError(
35
- `Invalid transaction bytes format: ${validation.error}`,
36
- "INVALID_FORMAT",
37
- void 0,
38
- transactionBytes
39
- );
1
+ import { readString, isJsonObject } from "./standards-sdk.es198.js";
2
+ import "./standards-sdk.es182.js";
3
+ import "./standards-sdk.es195.js";
4
+ import "./standards-sdk.es196.js";
5
+ import "./standards-sdk.es197.js";
6
+ import { parseTimestampMs } from "./standards-sdk.es123.js";
7
+ import { requestJson, Hcs25CollectorHttpError, isTimeoutError } from "./standards-sdk.es122.js";
8
+ import { fetchX402OnchainUsageState } from "./standards-sdk.es134.js";
9
+ const summaryValues = (summary) => ({
10
+ x402UsageSummary: summary ? {
11
+ volume7dUsd: summary.volume7dUsd ?? 0,
12
+ volume24hUsd: summary.volume24hUsd ?? 0,
13
+ inboundTrades7d: summary.inboundTrades7d ?? 0,
14
+ outboundTrades7d: summary.outboundTrades7d ?? 0
15
+ } : null
16
+ });
17
+ function hasProtocol(subject, wanted) {
18
+ const normalized = wanted.toLowerCase();
19
+ const direct = subject.protocol?.toLowerCase();
20
+ if (direct === normalized) {
21
+ return true;
22
+ }
23
+ const metadataProtocol = typeof subject.metadata?.protocol === "string" ? subject.metadata.protocol.toLowerCase() : null;
24
+ if (metadataProtocol === normalized) {
25
+ return true;
26
+ }
27
+ const list = subject.protocols;
28
+ return Array.isArray(list) && list.some(
29
+ (entry) => typeof entry === "string" && entry.toLowerCase() === normalized
30
+ );
31
+ }
32
+ function hasX402Config(subject) {
33
+ const metadata = subject.metadata ?? {};
34
+ const configured = readString(metadata, "payTo") !== null && readString(metadata, "asset") !== null && readString(metadata, "network") !== null;
35
+ return configured || hasProtocol(subject, "x402");
36
+ }
37
+ function readCursor(subject) {
38
+ const raw = subject.metadata?.x402UsageCursor;
39
+ return raw === void 0 ? void 0 : raw;
40
+ }
41
+ function createX402SignalAdapter(options = {}) {
42
+ const source = options.source ?? "onchain";
43
+ const ttlMs = options.ttlMs ?? 6 * 60 * 60 * 1e3;
44
+ const failureTtlMs = options.failureTtlMs ?? 3 * 60 * 60 * 1e3;
45
+ const fetchUsage = options.fetchUsageState ?? fetchX402OnchainUsageState;
46
+ const isHttpSource = typeof source === "string" && source !== "onchain";
47
+ const isUrlFn = typeof source === "function";
48
+ const collect = async (subject, context) => {
49
+ const now = context.now.toISOString();
50
+ const metadata = subject.metadata ?? {};
51
+ const payTo = readString(metadata, "payTo");
52
+ const asset = readString(metadata, "asset");
53
+ const network = readString(metadata, "network");
54
+ const cursor = readCursor(subject);
55
+ if (!context.force) {
56
+ const storedStatus = readString(metadata, "x402UsageStatus");
57
+ const storedUpdatedMs = parseTimestampMs(metadata.x402UsageUpdatedAt);
58
+ if (storedStatus && storedUpdatedMs !== null) {
59
+ const ttl = storedStatus === "ok" ? ttlMs : failureTtlMs;
60
+ if (context.now.getTime() - storedUpdatedMs < ttl) {
61
+ const storedSummary = isJsonObject(metadata.x402UsageSummary) ? metadata.x402UsageSummary : null;
62
+ return [
63
+ {
64
+ signalId: "x402.usage",
65
+ status: storedStatus === "ok" ? "ok" : "missing",
66
+ value: storedSummary && typeof storedSummary.volume7dUsd === "number" ? storedSummary.volume7dUsd : null,
67
+ provenance: {
68
+ source: "x402",
69
+ subjectId: payTo ?? subject.id,
70
+ fetchedAt: metadata.x402UsageUpdatedAt
71
+ }
72
+ }
73
+ ];
74
+ }
75
+ }
40
76
  }
41
- let lastError;
42
- let retryCount = 0;
43
- while (retryCount <= maxRetries) {
77
+ if (!options.fetchUsageState && (isHttpSource || isUrlFn)) {
78
+ const resolved = isUrlFn ? source(subject) : source.replace("{payTo}", encodeURIComponent(payTo ?? "")).replace("{asset}", encodeURIComponent(asset ?? "")).replace("{network}", encodeURIComponent(network ?? ""));
79
+ const url = typeof resolved === "string" ? resolved : null;
80
+ if (!url) {
81
+ return [{ signalId: "x402.usage", status: "missing" }];
82
+ }
83
+ const urlWithCursor = cursor && isJsonObject(cursor) && typeof cursor.cursor === "string" ? `${url}${url.includes("?") ? "&" : "?"}cursor=${encodeURIComponent(cursor.cursor)}` : url;
44
84
  try {
45
- const result = await this.parseTransaction(transactionBytes, options);
46
- result.formatDetection = {
47
- originalFormat: validation.format || "base64",
48
- wasConverted: validation.format === "hex",
49
- length: transactionBytes.length
85
+ const data = await requestJson(urlWithCursor, {
86
+ fetch: context.fetch,
87
+ timeoutMs: context.timeoutMs,
88
+ signal: context.signal
89
+ });
90
+ const summary = data.summary ?? data;
91
+ const values = {
92
+ x402UsageStatus: "ok",
93
+ x402UsageUpdatedAt: now,
94
+ x402UsageSource: "indexer",
95
+ ...summaryValues(summary)
50
96
  };
51
- return result;
52
- } catch (error) {
53
- lastError = error instanceof Error ? error : new Error(String(error));
54
- retryCount++;
55
- if (!enableFallback || retryCount > maxRetries) {
56
- if (strictMode) {
57
- throw new TransactionParsingError(
58
- "Failed to parse transaction after all attempts",
59
- "PARSING_FAILED",
60
- lastError,
61
- transactionBytes
62
- );
63
- }
64
- break;
65
- }
66
- try {
67
- const result = this.parseScheduledTransaction(
68
- transactionBytes,
69
- options
70
- );
71
- result.formatDetection = {
72
- originalFormat: validation.format || "base64",
73
- wasConverted: false,
74
- length: transactionBytes.length
75
- };
76
- return result;
77
- } catch (scheduledError) {
97
+ const nextCursor = data.cursor ?? cursor;
98
+ if (nextCursor !== void 0) {
99
+ values.x402UsageCursor = nextCursor;
78
100
  }
79
- }
80
- }
81
- const fallbackResult = this.createFallbackResult(
82
- transactionBytes,
83
- lastError,
84
- void 0
85
- );
86
- if (fallbackResult.details) {
87
- fallbackResult.details.parseAttempts = Math.max(retryCount, 1);
88
- }
89
- return fallbackResult;
90
- }
91
- /**
92
- * Parse a Transaction object directly using unified delegation approach
93
- * This method delegates to specialized parsers for clean separation of concerns
94
- *
95
- * @param transaction - The Transaction object to parse
96
- * @param originalBytes - The original transaction bytes (optional, for protobuf parsing)
97
- * @param options - Parsing options
98
- * @returns Parsed transaction data
99
- */
100
- static parseTransactionObject(transaction, originalBytesOrOptions, options = {}) {
101
- let originalBytes;
102
- let actualOptions;
103
- if (originalBytesOrOptions && !Buffer.isBuffer(originalBytesOrOptions) && !(originalBytesOrOptions instanceof Uint8Array)) {
104
- actualOptions = originalBytesOrOptions;
105
- originalBytes = void 0;
106
- } else {
107
- originalBytes = originalBytesOrOptions;
108
- actualOptions = options;
109
- }
110
- try {
111
- const metadata = this.extractTransactionMetadata(transaction);
112
- const htsResult = HTSParser.parseFromTransactionObject(transaction);
113
- const cryptoResult = CryptoParser.parseFromTransactionObject(transaction);
114
- const hcsResult = HCSParser.parseFromTransactionObject(transaction);
115
- const fileResult = FileParser.parseFromTransactionObject(transaction);
116
- const scsResult = SCSParser.parseFromTransactionObject(transaction);
117
- const scheduleResult = ScheduleParser.parseFromTransactionObject(transaction);
118
- const utilResult = UtilParser.parseFromTransactionObject(transaction);
119
- const results = [
120
- htsResult,
121
- cryptoResult,
122
- hcsResult,
123
- fileResult,
124
- scsResult,
125
- scheduleResult,
126
- utilResult
127
- ];
128
- const primaryResult = results.find((result2) => result2.type && result2.type !== "UNKNOWN") || {};
129
- let finalType = "UNKNOWN";
130
- let finalHumanReadableType = "Unknown Transaction";
131
- let parsedTokenCreation;
132
- let protoParsingResult = {};
133
- if (originalBytes || transaction.toBytes) {
134
- try {
135
- const bytesToParse = originalBytes || transaction.toBytes();
136
- const decoded = proto.TransactionList.decode(bytesToParse);
137
- if (decoded.transactionList && decoded.transactionList.length > 0) {
138
- const tx = decoded.transactionList[0];
139
- if (tx.bodyBytes && tx.bodyBytes.length > 0) {
140
- const txBody = proto.TransactionBody.decode(tx.bodyBytes);
141
- const typeResult = this.detectTransactionTypeFromBody(txBody);
142
- finalType = typeResult.type;
143
- finalHumanReadableType = typeResult.humanReadableType;
144
- protoParsingResult = this.parseTransactionBodyDetails(
145
- txBody,
146
- finalType
147
- );
148
- if (protoParsingResult.tokenCreation) {
149
- parsedTokenCreation = protoParsingResult.tokenCreation;
150
- }
151
- } else if (tx.signedTransactionBytes && tx.signedTransactionBytes.length > 0) {
152
- const signedTx = proto.SignedTransaction.decode(
153
- tx.signedTransactionBytes
154
- );
155
- if (signedTx.bodyBytes) {
156
- const txBody = proto.TransactionBody.decode(signedTx.bodyBytes);
157
- const typeResult = this.detectTransactionTypeFromBody(txBody);
158
- finalType = typeResult.type;
159
- finalHumanReadableType = typeResult.humanReadableType;
160
- protoParsingResult = this.parseTransactionBodyDetails(
161
- txBody,
162
- finalType
163
- );
164
- if (protoParsingResult.tokenCreation) {
165
- parsedTokenCreation = protoParsingResult.tokenCreation;
101
+ return [
102
+ {
103
+ signalId: "x402.usage",
104
+ status: "ok",
105
+ value: summary.volume7dUsd ?? null,
106
+ fields: [{ scope: "root", values }],
107
+ provenance: {
108
+ source: "x402",
109
+ sourceUrl: url,
110
+ subjectId: payTo ?? subject.id,
111
+ fetchedAt: now
112
+ }
113
+ }
114
+ ];
115
+ } catch (error) {
116
+ const missing = error instanceof Hcs25CollectorHttpError && error.status === 404;
117
+ const status = missing ? "missing" : isTimeoutError(error) ? "timeout" : "error";
118
+ return [
119
+ {
120
+ signalId: "x402.usage",
121
+ status,
122
+ fields: [
123
+ {
124
+ scope: "root",
125
+ values: {
126
+ x402UsageStatus: missing ? "missing" : "error",
127
+ x402UsageUpdatedAt: now,
128
+ x402UsageSource: "indexer"
166
129
  }
167
130
  }
168
- }
131
+ ]
169
132
  }
170
- } catch (protoError) {
171
- }
172
- }
173
- if (finalType === "UNKNOWN" && primaryResult.type) {
174
- finalType = primaryResult.type;
175
- finalHumanReadableType = primaryResult.humanReadableType || finalHumanReadableType;
176
- }
177
- const result = {
178
- type: finalType,
179
- humanReadableType: finalHumanReadableType,
180
- transfers: [],
181
- tokenTransfers: [],
182
- ...metadata,
183
- ...primaryResult,
184
- raw: actualOptions.includeRaw ? transaction._transactionBody || {} : void 0
185
- };
186
- this.mergeProtoParsingResults(
187
- result,
188
- protoParsingResult,
189
- htsResult,
190
- transaction,
191
- originalBytes
192
- );
193
- result.transfers = cryptoResult.transfers || result.transfers || [];
194
- result.tokenTransfers = cryptoResult.tokenTransfers || result.tokenTransfers || [];
195
- return result;
196
- } catch (error) {
197
- return {
198
- type: "UNKNOWN",
199
- humanReadableType: "Unknown Transaction",
200
- transfers: [],
201
- tokenTransfers: [],
202
- raw: actualOptions.includeRaw ? {} : void 0,
203
- details: {
204
- error: `Failed to parse Transaction object: ${error instanceof Error ? error.message : String(error)}`
133
+ ];
134
+ }
135
+ }
136
+ if (!payTo || !asset || !network) {
137
+ return [
138
+ {
139
+ signalId: "x402.usage",
140
+ status: "missing",
141
+ fields: [
142
+ {
143
+ scope: "root",
144
+ values: {
145
+ x402UsageStatus: "missing",
146
+ x402UsageUpdatedAt: now,
147
+ x402UsageSource: "onchain",
148
+ x402UsageSummary: null
149
+ }
150
+ }
151
+ ]
205
152
  }
206
- };
153
+ ];
207
154
  }
208
- }
209
- /**
210
- * Parse a base64 encoded transaction body using registry pattern
211
- * @param transactionBodyBase64 - The base64 encoded transaction body
212
- * @returns The parsed transaction
213
- */
214
- static parseTransactionBody(transactionBodyBase64) {
215
155
  try {
216
- const buffer = ethers.decodeBase64(transactionBodyBase64);
217
- const txBody = proto.SchedulableTransactionBody.decode(buffer);
218
- const transactionType = this.getTransactionType(txBody);
219
- const result = {
220
- type: transactionType,
221
- humanReadableType: this.getHumanReadableType(transactionType),
222
- transfers: [],
223
- tokenTransfers: [],
224
- raw: txBody
225
- };
226
- if (txBody.memo) {
227
- result.memo = txBody.memo;
228
- }
229
- if (txBody.transactionFee) {
230
- const hbarAmount = Hbar.fromTinybars(
231
- Long.fromValue(txBody.transactionFee)
232
- );
233
- result.transactionFee = hbarAmount.toString(HbarUnit.Hbar);
234
- }
235
- this.applySchedulableTransactionParsing(txBody, result);
236
- return result;
237
- } catch (error) {
238
- return {
239
- type: "UNKNOWN",
240
- humanReadableType: "Unknown Transaction",
241
- transfers: [],
242
- tokenTransfers: [],
243
- raw: void 0,
244
- details: {
245
- error: `Failed to parse transaction body: ${error instanceof Error ? error.message : String(error)}`
246
- }
247
- };
248
- }
249
- }
250
- /**
251
- * Detect transaction type and human-readable type from transaction body protobuf
252
- * Uses registry pattern to eliminate massive if-else chain
253
- */
254
- static detectTransactionTypeFromBody(txBody) {
255
- return getTransactionTypeFromBody(txBody);
256
- }
257
- /**
258
- * Parse details from a complete schedule response
259
- * @param scheduleResponse - The schedule response to parse
260
- * @returns The parsed transaction
261
- */
262
- static parseScheduleResponse(scheduleResponse) {
263
- if (!scheduleResponse.transaction_body) {
264
- return {
265
- type: "UNKNOWN",
266
- humanReadableType: "Unknown Transaction",
267
- transfers: [],
268
- tokenTransfers: [],
269
- raw: void 0,
270
- details: {
271
- error: "Schedule response missing transaction_body"
156
+ const { summary, cursor: nextCursor } = await fetchUsage(
157
+ { network, asset, payTo, cursor },
158
+ {
159
+ days: options.days,
160
+ ttlMs: options.ttlMs,
161
+ maxRetries: options.maxRetries,
162
+ chunkSizeBlocks: options.chunkSizeBlocks,
163
+ rpcUrls: options.rpcUrls
272
164
  }
273
- };
274
- }
275
- const parsed = this.parseTransactionBody(scheduleResponse.transaction_body);
276
- if (scheduleResponse.memo) {
277
- parsed.memo = scheduleResponse.memo;
278
- }
279
- return parsed;
280
- }
281
- /**
282
- * Determine the transaction type using registry pattern
283
- * @param txBody - The transaction body to determine the type of
284
- * @returns The type of the transaction
285
- */
286
- static getTransactionType(txBody) {
287
- return getTransactionTypeFromBody(txBody).type;
288
- }
289
- /**
290
- * Convert technical transaction type to human-readable format using registry pattern
291
- * @param type - The technical transaction type
292
- * @returns The human-readable transaction type
293
- */
294
- static getHumanReadableType(type) {
295
- return getHumanReadableTransactionType(type);
296
- }
297
- /**
298
- * Get a human-readable summary of the transaction
299
- * @param parsedTx - The parsed transaction
300
- * @returns The human-readable summary of the transaction
301
- */
302
- static getTransactionSummary(parsedTx) {
303
- return resolveTransactionSummary(parsedTx);
304
- }
305
- /**
306
- * Validate transaction bytes format and encoding
307
- * Enhanced validation with better format detection
308
- */
309
- static validateTransactionBytes(transactionBytes) {
310
- if (!transactionBytes || typeof transactionBytes !== "string") {
311
- return {
312
- isValid: false,
313
- error: "Transaction bytes must be a non-empty string"
314
- };
315
- }
316
- const format = this.detectTransactionFormat(transactionBytes);
317
- const base64Regex = /^[A-Za-z0-9+/]*={0,2}$/;
318
- const hexRegex = /^0x[0-9a-fA-F]+$/;
319
- let isValid = false;
320
- let error;
321
- if (format === "hex") {
322
- isValid = hexRegex.test(transactionBytes) && transactionBytes.length > 2;
323
- if (!isValid) {
324
- error = "Invalid hex format";
325
- }
326
- } else {
327
- isValid = base64Regex.test(transactionBytes) && transactionBytes.length > 0;
328
- if (!isValid) {
329
- error = "Invalid base64 format";
330
- }
331
- }
332
- return {
333
- isValid,
334
- format,
335
- error,
336
- length: transactionBytes.length
337
- };
338
- }
339
- /**
340
- * Detects the format of transaction bytes
341
- * @param transactionBytes - The transaction bytes to analyze
342
- * @returns The detected format ('base64' or 'hex')
343
- */
344
- static detectTransactionFormat(transactionBytes) {
345
- return transactionBytes.startsWith("0x") ? "hex" : "base64";
346
- }
347
- /**
348
- * Decodes transaction bytes from string to Uint8Array
349
- * @param transactionBytes - The transaction bytes string (base64 or hex)
350
- * @returns Decoded Uint8Array
351
- * @throws TransactionParsingError if decoding fails
352
- */
353
- static decodeTransactionBytes(transactionBytes) {
354
- try {
355
- const format = this.detectTransactionFormat(transactionBytes);
356
- if (format === "hex") {
357
- const hexString = transactionBytes.slice(2);
358
- return new Uint8Array(Buffer.from(hexString, "hex"));
359
- } else {
360
- return new Uint8Array(Buffer.from(transactionBytes, "base64"));
361
- }
362
- } catch (error) {
363
- throw new TransactionParsingError(
364
- "Failed to decode transaction bytes",
365
- "DECODE_ERROR",
366
- error instanceof Error ? error : void 0,
367
- transactionBytes
368
- );
369
- }
370
- }
371
- /**
372
- * Check if transaction bytes represent a valid Hedera transaction
373
- */
374
- static async isValidHederaTransaction(transactionBytes) {
375
- try {
376
- if (!this.validateTransactionBytes(transactionBytes).isValid) {
377
- return false;
378
- }
379
- const bytes = this.decodeTransactionBytes(transactionBytes);
380
- Transaction.fromBytes(bytes);
381
- return true;
382
- } catch {
383
- return false;
384
- }
385
- }
386
- /**
387
- * Legacy alias for decodeTransactionBytes - keeping for backward compatibility
388
- */
389
- static decodeBytesLegacy(transactionBytes) {
390
- return this.decodeTransactionBytes(transactionBytes);
391
- }
392
- /**
393
- * Parse transaction bytes into structured data using thin orchestration
394
- * Delegates to specialized parsers for clean separation of concerns
395
- */
396
- static async parseTransaction(transactionBytes, options = {}) {
397
- try {
398
- const bytes = this.decodeTransactionBytes(transactionBytes);
399
- const transaction = Transaction.fromBytes(bytes);
400
- const metadata = this.extractTransactionMetadataEnhanced(transaction);
401
- const parserResults = this.runAllParsers(transaction);
402
- const primaryResult = parserResults.find(
403
- (result2) => result2.type && result2.type !== "UNKNOWN"
404
- ) || {};
405
- const protoParsingResult = this.parseFromProtobuf(bytes);
406
- const finalType = protoParsingResult.type || primaryResult.type || "UNKNOWN";
407
- const finalHumanReadableType = protoParsingResult.humanReadableType || primaryResult.humanReadableType || "Unknown Transaction";
408
- const result = {
409
- type: finalType,
410
- humanReadableType: finalHumanReadableType,
411
- transfers: [],
412
- tokenTransfers: [],
413
- details: { ...metadata },
414
- memo: typeof metadata.memo === "string" ? metadata.memo : void 0,
415
- transactionId: typeof metadata.transactionId === "string" ? metadata.transactionId : void 0,
416
- nodeAccountIds: Array.isArray(metadata.nodeAccountIds) ? metadata.nodeAccountIds : [],
417
- maxTransactionFee: typeof metadata.maxTransactionFee === "string" ? metadata.maxTransactionFee : void 0,
418
- validStart: typeof metadata.validStart === "string" ? metadata.validStart : void 0,
419
- validDuration: typeof metadata.validDuration === "string" ? metadata.validDuration : void 0,
420
- raw: options.includeRaw ? {} : void 0
421
- };
422
- this.mergeAllResults(
423
- result,
424
- protoParsingResult,
425
- primaryResult,
426
- parserResults
427
165
  );
428
- return result;
429
- } catch (error) {
430
- throw new TransactionParsingError(
431
- "Failed to parse as regular transaction",
432
- "REGULAR_PARSING_FAILED",
433
- error instanceof Error ? error : void 0,
434
- transactionBytes
435
- );
436
- }
437
- }
438
- /**
439
- * Parse scheduled transaction body
440
- */
441
- static parseScheduledTransaction(transactionBytes, options = {}) {
442
- try {
443
- const parsedTx = this.parseTransactionBody(transactionBytes);
444
- const validation = this.validateTransactionBytes(transactionBytes);
445
- const enhancedResult = {
446
- ...parsedTx,
447
- details: {
448
- ...parsedTx.details || {},
449
- parseMethod: "scheduled",
450
- validation,
451
- parseAttempts: parsedTx.details?.parseAttempts || 1
452
- },
453
- formatDetection: {
454
- originalFormat: validation.format || "base64",
455
- wasConverted: false,
456
- length: transactionBytes.length
457
- }
166
+ const values = {
167
+ x402UsageStatus: summary ? "ok" : "missing",
168
+ x402UsageUpdatedAt: now,
169
+ x402UsageSource: "onchain",
170
+ ...summaryValues(summary)
458
171
  };
459
- return enhancedResult;
460
- } catch (error) {
461
- throw new TransactionParsingError(
462
- "Failed to parse as scheduled transaction",
463
- "SCHEDULED_PARSING_FAILED",
464
- error instanceof Error ? error : void 0,
465
- transactionBytes
466
- );
467
- }
468
- }
469
- /**
470
- * Extract metadata from Transaction object (legacy method - keeping for backward compatibility)
471
- */
472
- static extractTransactionMetadata(transaction) {
473
- return {
474
- transactionId: transaction.transactionId?.toString(),
475
- nodeAccountIds: transaction.nodeAccountIds?.map((id) => id.toString()) || [],
476
- maxTransactionFee: transaction.maxTransactionFee?.toTinybars().toString() || "0",
477
- memo: transaction._transactionMemo || void 0,
478
- transfers: [],
479
- tokenTransfers: []
480
- };
481
- }
482
- /**
483
- * Extract enhanced metadata from Transaction object
484
- */
485
- static extractTransactionMetadataEnhanced(transaction) {
486
- return {
487
- transactionId: transaction.transactionId?.toString(),
488
- nodeAccountIds: transaction.nodeAccountIds?.map((id) => id.toString()) || [],
489
- maxTransactionFee: transaction.maxTransactionFee?.toTinybars().toString() || "0",
490
- memo: transaction._transactionMemo || void 0,
491
- validStart: transaction._transactionValidStart?.toString(),
492
- validDuration: transaction._transactionValidDuration?.toString()
493
- };
494
- }
495
- /**
496
- * Run all available parsers on a transaction
497
- */
498
- static runAllParsers(transaction) {
499
- return [
500
- HTSParser.parseFromTransactionObject(transaction),
501
- CryptoParser.parseFromTransactionObject(transaction),
502
- HCSParser.parseFromTransactionObject(transaction),
503
- FileParser.parseFromTransactionObject(transaction),
504
- SCSParser.parseFromTransactionObject(transaction),
505
- ScheduleParser.parseFromTransactionObject(transaction),
506
- UtilParser.parseFromTransactionObject(transaction)
507
- ];
508
- }
509
- /**
510
- * Parse transaction from protobuf bytes
511
- */
512
- static parseFromProtobuf(bytes) {
513
- const result = {};
514
- try {
515
- const decoded = proto.TransactionList.decode(bytes);
516
- if (decoded.transactionList && decoded.transactionList.length > 0) {
517
- const tx = decoded.transactionList[0];
518
- let txBody = null;
519
- if (tx.bodyBytes && tx.bodyBytes.length > 0) {
520
- txBody = proto.TransactionBody.decode(tx.bodyBytes);
521
- } else if (tx.signedTransactionBytes && tx.signedTransactionBytes.length > 0) {
522
- const signedTx = proto.SignedTransaction.decode(
523
- tx.signedTransactionBytes
524
- );
525
- if (signedTx.bodyBytes) {
526
- txBody = proto.TransactionBody.decode(signedTx.bodyBytes);
172
+ if (nextCursor !== null) {
173
+ values.x402UsageCursor = nextCursor;
174
+ } else if (cursor !== void 0) {
175
+ values.x402UsageCursor = cursor;
176
+ }
177
+ return [
178
+ {
179
+ signalId: "x402.usage",
180
+ status: summary ? "ok" : "missing",
181
+ value: summary?.volume7dUsd ?? null,
182
+ fields: [{ scope: "root", values }],
183
+ provenance: {
184
+ source: "x402",
185
+ subjectId: payTo,
186
+ fetchedAt: now,
187
+ params: { network, asset, source: "onchain" }
527
188
  }
528
189
  }
529
- if (txBody) {
530
- const typeResult = this.detectTransactionTypeFromBody(txBody);
531
- result.type = typeResult.type;
532
- result.humanReadableType = typeResult.humanReadableType;
533
- const details = this.parseTransactionBodyDetails(
534
- txBody,
535
- typeResult.type
536
- );
537
- Object.assign(result, details);
538
- }
539
- }
190
+ ];
540
191
  } catch (error) {
541
- }
542
- return result;
543
- }
544
- /**
545
- * Intelligently merge all parsing results
546
- */
547
- static mergeAllResults(result, protoResult, primaryResult, parserResults) {
548
- const cryptoResult = parserResults.find((r) => r.transfers || r.tokenTransfers) || {};
549
- result.transfers = cryptoResult.transfers || result.transfers || [];
550
- result.tokenTransfers = cryptoResult.tokenTransfers || result.tokenTransfers || [];
551
- Object.keys(protoResult).forEach((key) => {
552
- if (protoResult[key] !== void 0 && key !== "type" && key !== "humanReadableType") {
553
- result[key] = protoResult[key];
554
- }
555
- });
556
- Object.keys(primaryResult).forEach((key) => {
557
- if (primaryResult[key] !== void 0 && !(key in result) && key !== "type" && key !== "humanReadableType") {
558
- result[key] = primaryResult[key];
559
- }
560
- });
561
- }
562
- /**
563
- * Apply schedulable transaction parsing using registry pattern
564
- * Eliminates conditional logic in parseTransactionBody
565
- */
566
- static applySchedulableTransactionParsing(txBody, result) {
567
- if (txBody.cryptoTransfer) {
568
- CryptoParser.parseCryptoTransfers(txBody.cryptoTransfer, result);
569
- }
570
- if (txBody.cryptoDelete) {
571
- result.cryptoDelete = CryptoParser.parseCryptoDelete(txBody.cryptoDelete);
572
- }
573
- if (txBody.cryptoCreateAccount) {
574
- result.cryptoCreateAccount = CryptoParser.parseCryptoCreateAccount(
575
- txBody.cryptoCreateAccount
576
- );
577
- }
578
- if (txBody.cryptoUpdateAccount) {
579
- result.cryptoUpdateAccount = CryptoParser.parseCryptoUpdateAccount(
580
- txBody.cryptoUpdateAccount
581
- );
582
- }
583
- if (txBody.cryptoApproveAllowance) {
584
- result.cryptoApproveAllowance = CryptoParser.parseCryptoApproveAllowance(
585
- txBody.cryptoApproveAllowance
586
- );
587
- }
588
- if (txBody.cryptoDeleteAllowance) {
589
- result.cryptoDeleteAllowance = CryptoParser.parseCryptoDeleteAllowance(
590
- txBody.cryptoDeleteAllowance
591
- );
592
- }
593
- if (txBody.contractCall) {
594
- result.contractCall = SCSParser.parseContractCall(txBody.contractCall);
595
- }
596
- if (txBody.contractCreateInstance) {
597
- result.contractCreate = SCSParser.parseContractCreate(
598
- txBody.contractCreateInstance
599
- );
600
- }
601
- if (txBody.contractUpdateInstance) {
602
- result.contractUpdate = SCSParser.parseContractUpdate(
603
- txBody.contractUpdateInstance
604
- );
605
- }
606
- if (txBody.contractDeleteInstance) {
607
- result.contractDelete = SCSParser.parseContractDelete(
608
- txBody.contractDeleteInstance
609
- );
610
- }
611
- if (txBody.tokenCreation) {
612
- result.tokenCreation = HTSParser.parseTokenCreate(txBody.tokenCreation);
613
- }
614
- if (txBody.tokenMint) {
615
- result.tokenMint = HTSParser.parseTokenMint(txBody.tokenMint);
616
- }
617
- if (txBody.tokenBurn) {
618
- result.tokenBurn = HTSParser.parseTokenBurn(txBody.tokenBurn);
619
- }
620
- if (txBody.tokenUpdate) {
621
- result.tokenUpdate = HTSParser.parseTokenUpdate(txBody.tokenUpdate);
622
- }
623
- if (txBody.tokenFeeScheduleUpdate) {
624
- result.tokenFeeScheduleUpdate = HTSParser.parseTokenFeeScheduleUpdate(
625
- txBody.tokenFeeScheduleUpdate
626
- );
627
- }
628
- if (txBody.tokenFreeze) {
629
- result.tokenFreeze = HTSParser.parseTokenFreeze(txBody.tokenFreeze);
630
- }
631
- if (txBody.tokenUnfreeze) {
632
- result.tokenUnfreeze = HTSParser.parseTokenUnfreeze(txBody.tokenUnfreeze);
633
- }
634
- if (txBody.tokenGrantKyc) {
635
- result.tokenGrantKyc = HTSParser.parseTokenGrantKyc(txBody.tokenGrantKyc);
636
- }
637
- if (txBody.tokenRevokeKyc) {
638
- result.tokenRevokeKyc = HTSParser.parseTokenRevokeKyc(
639
- txBody.tokenRevokeKyc
640
- );
641
- }
642
- if (txBody.tokenPause) {
643
- result.tokenPause = HTSParser.parseTokenPause(txBody.tokenPause);
644
- }
645
- if (txBody.tokenUnpause) {
646
- result.tokenUnpause = HTSParser.parseTokenUnpause(txBody.tokenUnpause);
647
- }
648
- if (txBody.tokenWipe) {
649
- result.tokenWipeAccount = HTSParser.parseTokenWipeAccount(
650
- txBody.tokenWipe
651
- );
652
- }
653
- if (txBody.tokenDeletion) {
654
- result.tokenDelete = HTSParser.parseTokenDelete(txBody.tokenDeletion);
655
- }
656
- if (txBody.tokenAssociate) {
657
- result.tokenAssociate = HTSParser.parseTokenAssociate(
658
- txBody.tokenAssociate
659
- );
660
- }
661
- if (txBody.tokenDissociate) {
662
- result.tokenDissociate = HTSParser.parseTokenDissociate(
663
- txBody.tokenDissociate
664
- );
665
- }
666
- if (txBody.tokenAirdrop) {
667
- result.tokenAirdrop = HTSParser.parseTokenAirdropFromProto(
668
- txBody.tokenAirdrop
669
- );
670
- }
671
- if (txBody.consensusCreateTopic) {
672
- result.consensusCreateTopic = HCSParser.parseConsensusCreateTopic(
673
- txBody.consensusCreateTopic
674
- );
675
- }
676
- if (txBody.consensusSubmitMessage) {
677
- result.consensusSubmitMessage = HCSParser.parseConsensusSubmitMessage(
678
- txBody.consensusSubmitMessage
679
- );
680
- }
681
- if (txBody.consensusUpdateTopic) {
682
- result.consensusUpdateTopic = HCSParser.parseConsensusUpdateTopic(
683
- txBody.consensusUpdateTopic
684
- );
685
- }
686
- if (txBody.consensusDeleteTopic) {
687
- result.consensusDeleteTopic = HCSParser.parseConsensusDeleteTopic(
688
- txBody.consensusDeleteTopic
689
- );
690
- }
691
- if (txBody.fileCreate) {
692
- result.fileCreate = FileParser.parseFileCreate(txBody.fileCreate);
693
- }
694
- if (txBody.fileAppend) {
695
- result.fileAppend = FileParser.parseFileAppend(txBody.fileAppend);
696
- }
697
- if (txBody.fileUpdate) {
698
- result.fileUpdate = FileParser.parseFileUpdate(txBody.fileUpdate);
699
- }
700
- if (txBody.fileDelete) {
701
- result.fileDelete = FileParser.parseFileDelete(txBody.fileDelete);
702
- }
703
- if (txBody.utilPrng) {
704
- result.utilPrng = UtilParser.parseUtilPrng(txBody.utilPrng);
705
- }
706
- }
707
- /**
708
- * Parse transaction body details for all supported transaction types
709
- * Uses a scalable registry pattern instead of if-else chains
710
- */
711
- static parseTransactionBodyDetails(txBody, transactionType) {
712
- const result = {};
713
- const parserConfig = transactionParserRegistry[transactionType];
714
- if (parserConfig) {
715
- const bodyData = txBody[parserConfig.bodyField];
716
- if (bodyData) {
717
- const parserResult = parserConfig.parser(bodyData);
718
- if (parserConfig.spreadResult) {
719
- Object.assign(result, parserResult);
720
- } else {
721
- result[parserConfig.resultField] = parserResult;
192
+ return [
193
+ {
194
+ signalId: "x402.usage",
195
+ status: isTimeoutError(error) ? "timeout" : "error",
196
+ fields: [
197
+ {
198
+ scope: "root",
199
+ values: {
200
+ x402UsageStatus: "error",
201
+ x402UsageUpdatedAt: now,
202
+ x402UsageSource: "onchain",
203
+ x402UsageSummary: null,
204
+ ...cursor !== void 0 ? { x402UsageCursor: cursor } : {}
205
+ }
206
+ }
207
+ ]
722
208
  }
723
- }
724
- }
725
- return result;
726
- }
727
- /**
728
- * Merge protobuf parsing results with parser results using registry pattern
729
- * Eliminates transactionFields array and forEach logic
730
- */
731
- static mergeProtoParsingResults(result, protoResult, htsResult, transaction, originalBytes) {
732
- const fieldsToMerge = Object.values(transactionParserRegistry).map(
733
- (config) => config.resultField
734
- );
735
- for (const field of fieldsToMerge) {
736
- const protoValue = protoResult[field];
737
- const htsValue = htsResult[field];
738
- if (protoValue !== void 0) {
739
- result[field] = protoValue;
740
- } else if (htsValue !== void 0) {
741
- result[field] = htsValue;
742
- } else {
743
- this.handleSpecialFieldExtraction(result, field, transaction);
744
- }
209
+ ];
745
210
  }
746
- }
747
- /**
748
- * Handle special field extraction cases using registry pattern
749
- */
750
- static handleSpecialFieldExtraction(result, field, transaction) {
751
- if (field === "tokenCreation" && result.type === "TOKENCREATE") {
752
- const extracted = HTSParser.extractTokenCreationFromTransaction(transaction);
753
- if (extracted) {
754
- result[field] = extracted;
755
- }
756
- } else if (field === "tokenAirdrop" && result.type === "TOKENAIRDROP") {
757
- const extracted = HTSParser.extractTokenAirdropFromTransaction(transaction);
758
- if (extracted) {
759
- result[field] = extracted;
211
+ };
212
+ return {
213
+ id: "x402",
214
+ produces: ["x402.usage"],
215
+ timeoutMs: options.timeoutMs,
216
+ // On-chain scans need network+asset+payTo; HTTP/custom sources only
217
+ // need a payTo (or the x402 protocol marker) to query.
218
+ appliesTo: options.appliesTo ?? ((subject) => {
219
+ if (hasX402Config(subject)) {
220
+ return true;
221
+ }
222
+ if (!isHttpSource && !isUrlFn && options.fetchUsageState === void 0) {
223
+ return false;
760
224
  }
761
- }
762
- }
763
- /**
764
- * Create fallback result when all parsing methods fail
765
- */
766
- static createFallbackResult(transactionBytes, primaryError, secondaryError) {
767
- const validation = this.validateTransactionBytes(transactionBytes);
768
- return {
769
- type: "UNKNOWN",
770
- humanReadableType: "Unknown Transaction",
771
- transfers: [],
772
- tokenTransfers: [],
773
- details: {
774
- rawBytes: transactionBytes.length > 100 ? transactionBytes.substring(0, 100) + "..." : transactionBytes,
775
- primaryError: primaryError?.message,
776
- secondaryError: secondaryError?.message,
777
- parseAttempts: secondaryError ? 2 : 1,
778
- validation
779
- },
780
- formatDetection: {
781
- originalFormat: validation.format || "base64",
782
- wasConverted: false,
783
- length: transactionBytes.length
784
- },
785
- raw: {}
786
- };
787
- }
225
+ return readString(subject.metadata ?? {}, "payTo") !== null;
226
+ }),
227
+ collect
228
+ };
788
229
  }
789
230
  export {
790
- TransactionParser,
791
- TransactionParsingError
231
+ createX402SignalAdapter
792
232
  };
793
233
  //# sourceMappingURL=standards-sdk.es133.js.map