@hashgraphonline/standards-sdk 0.1.185 → 0.1.186

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 (430) hide show
  1. package/dist/browser/hcs-25/adapters/acp.d.ts +20 -0
  2. package/dist/browser/hcs-25/adapters/acp.d.ts.map +1 -0
  3. package/dist/browser/hcs-25/adapters/agentverse.d.ts +34 -0
  4. package/dist/browser/hcs-25/adapters/agentverse.d.ts.map +1 -0
  5. package/dist/browser/hcs-25/adapters/availability.d.ts +22 -0
  6. package/dist/browser/hcs-25/adapters/availability.d.ts.map +1 -0
  7. package/dist/browser/hcs-25/adapters/connectivity.d.ts +25 -0
  8. package/dist/browser/hcs-25/adapters/connectivity.d.ts.map +1 -0
  9. package/dist/browser/hcs-25/adapters/erc8004-feedback.d.ts +19 -0
  10. package/dist/browser/hcs-25/adapters/erc8004-feedback.d.ts.map +1 -0
  11. package/dist/browser/hcs-25/adapters/ethos.d.ts +21 -0
  12. package/dist/browser/hcs-25/adapters/ethos.d.ts.map +1 -0
  13. package/dist/browser/hcs-25/adapters/index.d.ts +21 -0
  14. package/dist/browser/hcs-25/adapters/index.d.ts.map +1 -0
  15. package/dist/browser/hcs-25/adapters/model-evals.d.ts +61 -0
  16. package/dist/browser/hcs-25/adapters/model-evals.d.ts.map +1 -0
  17. package/dist/browser/hcs-25/adapters/normalization.d.ts +20 -0
  18. package/dist/browser/hcs-25/adapters/normalization.d.ts.map +1 -0
  19. package/dist/browser/hcs-25/adapters/oss-popularity.d.ts +22 -0
  20. package/dist/browser/hcs-25/adapters/oss-popularity.d.ts.map +1 -0
  21. package/dist/browser/hcs-25/adapters/output-verification.d.ts +27 -0
  22. package/dist/browser/hcs-25/adapters/output-verification.d.ts.map +1 -0
  23. package/dist/browser/hcs-25/adapters/simple-evals.d.ts +14 -0
  24. package/dist/browser/hcs-25/adapters/simple-evals.d.ts.map +1 -0
  25. package/dist/browser/hcs-25/adapters/x402.d.ts +18 -0
  26. package/dist/browser/hcs-25/adapters/x402.d.ts.map +1 -0
  27. package/dist/browser/hcs-25/identifiers.d.ts +2 -2
  28. package/dist/browser/hcs-25/identifiers.d.ts.map +1 -1
  29. package/dist/browser/hcs-25/index.d.ts +2 -0
  30. package/dist/browser/hcs-25/index.d.ts.map +1 -1
  31. package/dist/browser/hcs-25/scoring.d.ts.map +1 -1
  32. package/dist/browser/hcs-25/signals/index.d.ts +20 -0
  33. package/dist/browser/hcs-25/signals/index.d.ts.map +1 -0
  34. package/dist/browser/hcs-25/signals/marketplace.d.ts +296 -0
  35. package/dist/browser/hcs-25/signals/marketplace.d.ts.map +1 -0
  36. package/dist/browser/hcs-25/signals/metadata.d.ts +40 -0
  37. package/dist/browser/hcs-25/signals/metadata.d.ts.map +1 -0
  38. package/dist/browser/hcs-25/signals/model-evals.d.ts +127 -0
  39. package/dist/browser/hcs-25/signals/model-evals.d.ts.map +1 -0
  40. package/dist/browser/hcs-25/signals/operational.d.ts +757 -0
  41. package/dist/browser/hcs-25/signals/operational.d.ts.map +1 -0
  42. package/dist/browser/hcs-25/signals/simple-evals.d.ts +156 -0
  43. package/dist/browser/hcs-25/signals/simple-evals.d.ts.map +1 -0
  44. package/dist/browser-root/hcs-25/adapters/acp.d.ts +20 -0
  45. package/dist/browser-root/hcs-25/adapters/acp.d.ts.map +1 -0
  46. package/dist/browser-root/hcs-25/adapters/agentverse.d.ts +34 -0
  47. package/dist/browser-root/hcs-25/adapters/agentverse.d.ts.map +1 -0
  48. package/dist/browser-root/hcs-25/adapters/availability.d.ts +22 -0
  49. package/dist/browser-root/hcs-25/adapters/availability.d.ts.map +1 -0
  50. package/dist/browser-root/hcs-25/adapters/connectivity.d.ts +25 -0
  51. package/dist/browser-root/hcs-25/adapters/connectivity.d.ts.map +1 -0
  52. package/dist/browser-root/hcs-25/adapters/erc8004-feedback.d.ts +19 -0
  53. package/dist/browser-root/hcs-25/adapters/erc8004-feedback.d.ts.map +1 -0
  54. package/dist/browser-root/hcs-25/adapters/ethos.d.ts +21 -0
  55. package/dist/browser-root/hcs-25/adapters/ethos.d.ts.map +1 -0
  56. package/dist/browser-root/hcs-25/adapters/index.d.ts +21 -0
  57. package/dist/browser-root/hcs-25/adapters/index.d.ts.map +1 -0
  58. package/dist/browser-root/hcs-25/adapters/model-evals.d.ts +61 -0
  59. package/dist/browser-root/hcs-25/adapters/model-evals.d.ts.map +1 -0
  60. package/dist/browser-root/hcs-25/adapters/normalization.d.ts +20 -0
  61. package/dist/browser-root/hcs-25/adapters/normalization.d.ts.map +1 -0
  62. package/dist/browser-root/hcs-25/adapters/oss-popularity.d.ts +22 -0
  63. package/dist/browser-root/hcs-25/adapters/oss-popularity.d.ts.map +1 -0
  64. package/dist/browser-root/hcs-25/adapters/output-verification.d.ts +27 -0
  65. package/dist/browser-root/hcs-25/adapters/output-verification.d.ts.map +1 -0
  66. package/dist/browser-root/hcs-25/adapters/simple-evals.d.ts +14 -0
  67. package/dist/browser-root/hcs-25/adapters/simple-evals.d.ts.map +1 -0
  68. package/dist/browser-root/hcs-25/adapters/x402.d.ts +18 -0
  69. package/dist/browser-root/hcs-25/adapters/x402.d.ts.map +1 -0
  70. package/dist/browser-root/hcs-25/identifiers.d.ts +2 -2
  71. package/dist/browser-root/hcs-25/identifiers.d.ts.map +1 -1
  72. package/dist/browser-root/hcs-25/index.d.ts +2 -0
  73. package/dist/browser-root/hcs-25/index.d.ts.map +1 -1
  74. package/dist/browser-root/hcs-25/scoring.d.ts.map +1 -1
  75. package/dist/browser-root/hcs-25/signals/index.d.ts +20 -0
  76. package/dist/browser-root/hcs-25/signals/index.d.ts.map +1 -0
  77. package/dist/browser-root/hcs-25/signals/marketplace.d.ts +296 -0
  78. package/dist/browser-root/hcs-25/signals/marketplace.d.ts.map +1 -0
  79. package/dist/browser-root/hcs-25/signals/metadata.d.ts +40 -0
  80. package/dist/browser-root/hcs-25/signals/metadata.d.ts.map +1 -0
  81. package/dist/browser-root/hcs-25/signals/model-evals.d.ts +127 -0
  82. package/dist/browser-root/hcs-25/signals/model-evals.d.ts.map +1 -0
  83. package/dist/browser-root/hcs-25/signals/operational.d.ts +757 -0
  84. package/dist/browser-root/hcs-25/signals/operational.d.ts.map +1 -0
  85. package/dist/browser-root/hcs-25/signals/simple-evals.d.ts +156 -0
  86. package/dist/browser-root/hcs-25/signals/simple-evals.d.ts.map +1 -0
  87. package/dist/cjs/hcs-25/adapters/acp.d.ts +20 -0
  88. package/dist/cjs/hcs-25/adapters/acp.d.ts.map +1 -0
  89. package/dist/cjs/hcs-25/adapters/agentverse.d.ts +34 -0
  90. package/dist/cjs/hcs-25/adapters/agentverse.d.ts.map +1 -0
  91. package/dist/cjs/hcs-25/adapters/availability.d.ts +22 -0
  92. package/dist/cjs/hcs-25/adapters/availability.d.ts.map +1 -0
  93. package/dist/cjs/hcs-25/adapters/connectivity.d.ts +25 -0
  94. package/dist/cjs/hcs-25/adapters/connectivity.d.ts.map +1 -0
  95. package/dist/cjs/hcs-25/adapters/erc8004-feedback.d.ts +19 -0
  96. package/dist/cjs/hcs-25/adapters/erc8004-feedback.d.ts.map +1 -0
  97. package/dist/cjs/hcs-25/adapters/ethos.d.ts +21 -0
  98. package/dist/cjs/hcs-25/adapters/ethos.d.ts.map +1 -0
  99. package/dist/cjs/hcs-25/adapters/index.d.ts +21 -0
  100. package/dist/cjs/hcs-25/adapters/index.d.ts.map +1 -0
  101. package/dist/cjs/hcs-25/adapters/model-evals.d.ts +61 -0
  102. package/dist/cjs/hcs-25/adapters/model-evals.d.ts.map +1 -0
  103. package/dist/cjs/hcs-25/adapters/normalization.d.ts +20 -0
  104. package/dist/cjs/hcs-25/adapters/normalization.d.ts.map +1 -0
  105. package/dist/cjs/hcs-25/adapters/oss-popularity.d.ts +22 -0
  106. package/dist/cjs/hcs-25/adapters/oss-popularity.d.ts.map +1 -0
  107. package/dist/cjs/hcs-25/adapters/output-verification.d.ts +27 -0
  108. package/dist/cjs/hcs-25/adapters/output-verification.d.ts.map +1 -0
  109. package/dist/cjs/hcs-25/adapters/simple-evals.d.ts +14 -0
  110. package/dist/cjs/hcs-25/adapters/simple-evals.d.ts.map +1 -0
  111. package/dist/cjs/hcs-25/adapters/x402.d.ts +18 -0
  112. package/dist/cjs/hcs-25/adapters/x402.d.ts.map +1 -0
  113. package/dist/cjs/hcs-25/identifiers.d.ts +2 -2
  114. package/dist/cjs/hcs-25/identifiers.d.ts.map +1 -1
  115. package/dist/cjs/hcs-25/index.d.ts +2 -0
  116. package/dist/cjs/hcs-25/index.d.ts.map +1 -1
  117. package/dist/cjs/hcs-25/scoring.d.ts.map +1 -1
  118. package/dist/cjs/hcs-25/signals/index.d.ts +20 -0
  119. package/dist/cjs/hcs-25/signals/index.d.ts.map +1 -0
  120. package/dist/cjs/hcs-25/signals/marketplace.d.ts +296 -0
  121. package/dist/cjs/hcs-25/signals/marketplace.d.ts.map +1 -0
  122. package/dist/cjs/hcs-25/signals/metadata.d.ts +40 -0
  123. package/dist/cjs/hcs-25/signals/metadata.d.ts.map +1 -0
  124. package/dist/cjs/hcs-25/signals/model-evals.d.ts +127 -0
  125. package/dist/cjs/hcs-25/signals/model-evals.d.ts.map +1 -0
  126. package/dist/cjs/hcs-25/signals/operational.d.ts +757 -0
  127. package/dist/cjs/hcs-25/signals/operational.d.ts.map +1 -0
  128. package/dist/cjs/hcs-25/signals/simple-evals.d.ts +156 -0
  129. package/dist/cjs/hcs-25/signals/simple-evals.d.ts.map +1 -0
  130. package/dist/cjs/standards-sdk.cjs +2 -2
  131. package/dist/cjs/standards-sdk.cjs.map +1 -1
  132. package/dist/es/hcs-25/adapters/acp.d.ts +20 -0
  133. package/dist/es/hcs-25/adapters/acp.d.ts.map +1 -0
  134. package/dist/es/hcs-25/adapters/agentverse.d.ts +34 -0
  135. package/dist/es/hcs-25/adapters/agentverse.d.ts.map +1 -0
  136. package/dist/es/hcs-25/adapters/availability.d.ts +22 -0
  137. package/dist/es/hcs-25/adapters/availability.d.ts.map +1 -0
  138. package/dist/es/hcs-25/adapters/connectivity.d.ts +25 -0
  139. package/dist/es/hcs-25/adapters/connectivity.d.ts.map +1 -0
  140. package/dist/es/hcs-25/adapters/erc8004-feedback.d.ts +19 -0
  141. package/dist/es/hcs-25/adapters/erc8004-feedback.d.ts.map +1 -0
  142. package/dist/es/hcs-25/adapters/ethos.d.ts +21 -0
  143. package/dist/es/hcs-25/adapters/ethos.d.ts.map +1 -0
  144. package/dist/es/hcs-25/adapters/index.d.ts +21 -0
  145. package/dist/es/hcs-25/adapters/index.d.ts.map +1 -0
  146. package/dist/es/hcs-25/adapters/model-evals.d.ts +61 -0
  147. package/dist/es/hcs-25/adapters/model-evals.d.ts.map +1 -0
  148. package/dist/es/hcs-25/adapters/normalization.d.ts +20 -0
  149. package/dist/es/hcs-25/adapters/normalization.d.ts.map +1 -0
  150. package/dist/es/hcs-25/adapters/oss-popularity.d.ts +22 -0
  151. package/dist/es/hcs-25/adapters/oss-popularity.d.ts.map +1 -0
  152. package/dist/es/hcs-25/adapters/output-verification.d.ts +27 -0
  153. package/dist/es/hcs-25/adapters/output-verification.d.ts.map +1 -0
  154. package/dist/es/hcs-25/adapters/simple-evals.d.ts +14 -0
  155. package/dist/es/hcs-25/adapters/simple-evals.d.ts.map +1 -0
  156. package/dist/es/hcs-25/adapters/x402.d.ts +18 -0
  157. package/dist/es/hcs-25/adapters/x402.d.ts.map +1 -0
  158. package/dist/es/hcs-25/identifiers.d.ts +2 -2
  159. package/dist/es/hcs-25/identifiers.d.ts.map +1 -1
  160. package/dist/es/hcs-25/index.d.ts +2 -0
  161. package/dist/es/hcs-25/index.d.ts.map +1 -1
  162. package/dist/es/hcs-25/scoring.d.ts.map +1 -1
  163. package/dist/es/hcs-25/signals/index.d.ts +20 -0
  164. package/dist/es/hcs-25/signals/index.d.ts.map +1 -0
  165. package/dist/es/hcs-25/signals/marketplace.d.ts +296 -0
  166. package/dist/es/hcs-25/signals/marketplace.d.ts.map +1 -0
  167. package/dist/es/hcs-25/signals/metadata.d.ts +40 -0
  168. package/dist/es/hcs-25/signals/metadata.d.ts.map +1 -0
  169. package/dist/es/hcs-25/signals/model-evals.d.ts +127 -0
  170. package/dist/es/hcs-25/signals/model-evals.d.ts.map +1 -0
  171. package/dist/es/hcs-25/signals/operational.d.ts +757 -0
  172. package/dist/es/hcs-25/signals/operational.d.ts.map +1 -0
  173. package/dist/es/hcs-25/signals/simple-evals.d.ts +156 -0
  174. package/dist/es/hcs-25/signals/simple-evals.d.ts.map +1 -0
  175. package/dist/es/standards-sdk.es.js +109 -40
  176. package/dist/es/standards-sdk.es.js.map +1 -1
  177. package/dist/es/standards-sdk.es101.js +2 -2
  178. package/dist/es/standards-sdk.es103.js +2 -2
  179. package/dist/es/standards-sdk.es104.js +1 -1
  180. package/dist/es/standards-sdk.es106.js +1 -1
  181. package/dist/es/standards-sdk.es108.js +2 -2
  182. package/dist/es/standards-sdk.es11.js +1 -1
  183. package/dist/es/standards-sdk.es110.js +1 -1
  184. package/dist/es/standards-sdk.es111.js +2 -2
  185. package/dist/es/standards-sdk.es115.js +3 -3
  186. package/dist/es/standards-sdk.es116.js +4 -4
  187. package/dist/es/standards-sdk.es117.js +1 -1
  188. package/dist/es/standards-sdk.es117.js.map +1 -1
  189. package/dist/es/standards-sdk.es119.js +10 -9
  190. package/dist/es/standards-sdk.es119.js.map +1 -1
  191. package/dist/es/standards-sdk.es12.js +1 -1
  192. package/dist/es/standards-sdk.es120.js +225 -251
  193. package/dist/es/standards-sdk.es120.js.map +1 -1
  194. package/dist/es/standards-sdk.es121.js +50 -477
  195. package/dist/es/standards-sdk.es121.js.map +1 -1
  196. package/dist/es/standards-sdk.es122.js +244 -97
  197. package/dist/es/standards-sdk.es122.js.map +1 -1
  198. package/dist/es/standards-sdk.es123.js +451 -133
  199. package/dist/es/standards-sdk.es123.js.map +1 -1
  200. package/dist/es/standards-sdk.es124.js +98 -27
  201. package/dist/es/standards-sdk.es124.js.map +1 -1
  202. package/dist/es/standards-sdk.es125.js +156 -8
  203. package/dist/es/standards-sdk.es125.js.map +1 -1
  204. package/dist/es/standards-sdk.es126.js +29 -177
  205. package/dist/es/standards-sdk.es126.js.map +1 -1
  206. package/dist/es/standards-sdk.es127.js +10 -27
  207. package/dist/es/standards-sdk.es127.js.map +1 -1
  208. package/dist/es/standards-sdk.es128.js +179 -19
  209. package/dist/es/standards-sdk.es128.js.map +1 -1
  210. package/dist/es/standards-sdk.es129.js +27 -158
  211. package/dist/es/standards-sdk.es129.js.map +1 -1
  212. package/dist/es/standards-sdk.es13.js +1 -1
  213. package/dist/es/standards-sdk.es130.js +16 -195
  214. package/dist/es/standards-sdk.es130.js.map +1 -1
  215. package/dist/es/standards-sdk.es131.js +133 -763
  216. package/dist/es/standards-sdk.es131.js.map +1 -1
  217. package/dist/es/standards-sdk.es132.js +198 -10
  218. package/dist/es/standards-sdk.es132.js.map +1 -1
  219. package/dist/es/standards-sdk.es133.js +762 -539
  220. package/dist/es/standards-sdk.es133.js.map +1 -1
  221. package/dist/es/standards-sdk.es134.js +10 -623
  222. package/dist/es/standards-sdk.es134.js.map +1 -1
  223. package/dist/es/standards-sdk.es135.js +567 -13
  224. package/dist/es/standards-sdk.es135.js.map +1 -1
  225. package/dist/es/standards-sdk.es136.js +626 -2
  226. package/dist/es/standards-sdk.es136.js.map +1 -1
  227. package/dist/es/standards-sdk.es137.js +12 -86
  228. package/dist/es/standards-sdk.es137.js.map +1 -1
  229. package/dist/es/standards-sdk.es138.js +2 -40
  230. package/dist/es/standards-sdk.es138.js.map +1 -1
  231. package/dist/es/standards-sdk.es139.js +87 -2
  232. package/dist/es/standards-sdk.es139.js.map +1 -1
  233. package/dist/es/standards-sdk.es14.js +1 -1
  234. package/dist/es/standards-sdk.es140.js +37 -232
  235. package/dist/es/standards-sdk.es140.js.map +1 -1
  236. package/dist/es/standards-sdk.es141.js +2 -1140
  237. package/dist/es/standards-sdk.es141.js.map +1 -1
  238. package/dist/es/standards-sdk.es142.js +213 -284
  239. package/dist/es/standards-sdk.es142.js.map +1 -1
  240. package/dist/es/standards-sdk.es143.js +1138 -420
  241. package/dist/es/standards-sdk.es143.js.map +1 -1
  242. package/dist/es/standards-sdk.es144.js +301 -350
  243. package/dist/es/standards-sdk.es144.js.map +1 -1
  244. package/dist/es/standards-sdk.es145.js +417 -1117
  245. package/dist/es/standards-sdk.es145.js.map +1 -1
  246. package/dist/es/standards-sdk.es146.js +348 -201
  247. package/dist/es/standards-sdk.es146.js.map +1 -1
  248. package/dist/es/standards-sdk.es147.js +1035 -1480
  249. package/dist/es/standards-sdk.es147.js.map +1 -1
  250. package/dist/es/standards-sdk.es148.js +181 -1130
  251. package/dist/es/standards-sdk.es148.js.map +1 -1
  252. package/dist/es/standards-sdk.es149.js +1564 -14
  253. package/dist/es/standards-sdk.es149.js.map +1 -1
  254. package/dist/es/standards-sdk.es15.js +1 -1
  255. package/dist/es/standards-sdk.es150.js +1122 -224
  256. package/dist/es/standards-sdk.es150.js.map +1 -1
  257. package/dist/es/standards-sdk.es151.js +17 -4
  258. package/dist/es/standards-sdk.es151.js.map +1 -1
  259. package/dist/es/standards-sdk.es152.js +252 -74
  260. package/dist/es/standards-sdk.es152.js.map +1 -1
  261. package/dist/es/standards-sdk.es153.js +4 -87
  262. package/dist/es/standards-sdk.es153.js.map +1 -1
  263. package/dist/es/standards-sdk.es154.js +73 -52
  264. package/dist/es/standards-sdk.es154.js.map +1 -1
  265. package/dist/es/standards-sdk.es155.js +86 -2546
  266. package/dist/es/standards-sdk.es155.js.map +1 -1
  267. package/dist/es/standards-sdk.es156.js +53 -152
  268. package/dist/es/standards-sdk.es156.js.map +1 -1
  269. package/dist/es/standards-sdk.es157.js +2547 -7
  270. package/dist/es/standards-sdk.es157.js.map +1 -1
  271. package/dist/es/standards-sdk.es158.js +138 -65
  272. package/dist/es/standards-sdk.es158.js.map +1 -1
  273. package/dist/es/standards-sdk.es159.js +7 -65
  274. package/dist/es/standards-sdk.es159.js.map +1 -1
  275. package/dist/es/standards-sdk.es16.js +4 -4
  276. package/dist/es/standards-sdk.es160.js +86 -30
  277. package/dist/es/standards-sdk.es160.js.map +1 -1
  278. package/dist/es/standards-sdk.es161.js +65 -34
  279. package/dist/es/standards-sdk.es161.js.map +1 -1
  280. package/dist/es/standards-sdk.es162.js +194 -48
  281. package/dist/es/standards-sdk.es162.js.map +1 -1
  282. package/dist/es/standards-sdk.es163.js +17 -12473
  283. package/dist/es/standards-sdk.es163.js.map +1 -1
  284. package/dist/es/standards-sdk.es164.js +53 -133
  285. package/dist/es/standards-sdk.es164.js.map +1 -1
  286. package/dist/es/standards-sdk.es165.js +91 -38
  287. package/dist/es/standards-sdk.es165.js.map +1 -1
  288. package/dist/es/standards-sdk.es166.js +47 -15
  289. package/dist/es/standards-sdk.es166.js.map +1 -1
  290. package/dist/es/standards-sdk.es167.js +201 -53
  291. package/dist/es/standards-sdk.es167.js.map +1 -1
  292. package/dist/es/standards-sdk.es168.js +53 -108
  293. package/dist/es/standards-sdk.es168.js.map +1 -1
  294. package/dist/es/standards-sdk.es169.js +47 -79
  295. package/dist/es/standards-sdk.es169.js.map +1 -1
  296. package/dist/es/standards-sdk.es170.js +48 -192
  297. package/dist/es/standards-sdk.es170.js.map +1 -1
  298. package/dist/es/standards-sdk.es171.js +47 -670
  299. package/dist/es/standards-sdk.es171.js.map +1 -1
  300. package/dist/es/standards-sdk.es172.js +110 -61
  301. package/dist/es/standards-sdk.es172.js.map +1 -1
  302. package/dist/es/standards-sdk.es173.js +51 -169
  303. package/dist/es/standards-sdk.es173.js.map +1 -1
  304. package/dist/es/standards-sdk.es174.js +39 -317
  305. package/dist/es/standards-sdk.es174.js.map +1 -1
  306. package/dist/es/standards-sdk.es175.js +72 -346
  307. package/dist/es/standards-sdk.es175.js.map +1 -1
  308. package/dist/es/standards-sdk.es176.js +68 -453
  309. package/dist/es/standards-sdk.es176.js.map +1 -1
  310. package/dist/es/standards-sdk.es177.js +44 -331
  311. package/dist/es/standards-sdk.es177.js.map +1 -1
  312. package/dist/es/standards-sdk.es178.js +31 -71
  313. package/dist/es/standards-sdk.es178.js.map +1 -1
  314. package/dist/es/standards-sdk.es179.js +30 -139
  315. package/dist/es/standards-sdk.es179.js.map +1 -1
  316. package/dist/es/standards-sdk.es18.js +11 -11
  317. package/dist/es/standards-sdk.es180.js +34 -517
  318. package/dist/es/standards-sdk.es180.js.map +1 -1
  319. package/dist/es/standards-sdk.es181.js +48 -259
  320. package/dist/es/standards-sdk.es181.js.map +1 -1
  321. package/dist/es/standards-sdk.es182.js +127 -185
  322. package/dist/es/standards-sdk.es182.js.map +1 -1
  323. package/dist/es/standards-sdk.es183.js +36 -113
  324. package/dist/es/standards-sdk.es183.js.map +1 -1
  325. package/dist/es/standards-sdk.es184.js +12464 -134
  326. package/dist/es/standards-sdk.es184.js.map +1 -1
  327. package/dist/es/standards-sdk.es185.js +14 -181
  328. package/dist/es/standards-sdk.es185.js.map +1 -1
  329. package/dist/es/standards-sdk.es186.js +479 -491
  330. package/dist/es/standards-sdk.es186.js.map +1 -1
  331. package/dist/es/standards-sdk.es187.js +93 -167
  332. package/dist/es/standards-sdk.es187.js.map +1 -1
  333. package/dist/es/standards-sdk.es188.js +61 -223
  334. package/dist/es/standards-sdk.es188.js.map +1 -1
  335. package/dist/es/standards-sdk.es189.js +49 -232
  336. package/dist/es/standards-sdk.es189.js.map +1 -1
  337. package/dist/es/standards-sdk.es19.js +8 -8
  338. package/dist/es/standards-sdk.es190.js +84 -0
  339. package/dist/es/standards-sdk.es190.js.map +1 -0
  340. package/dist/es/standards-sdk.es191.js +203 -0
  341. package/dist/es/standards-sdk.es191.js.map +1 -0
  342. package/dist/es/standards-sdk.es192.js +175 -0
  343. package/dist/es/standards-sdk.es192.js.map +1 -0
  344. package/dist/es/standards-sdk.es193.js +325 -0
  345. package/dist/es/standards-sdk.es193.js.map +1 -0
  346. package/dist/es/standards-sdk.es194.js +349 -0
  347. package/dist/es/standards-sdk.es194.js.map +1 -0
  348. package/dist/es/standards-sdk.es195.js +456 -0
  349. package/dist/es/standards-sdk.es195.js.map +1 -0
  350. package/dist/es/standards-sdk.es196.js +334 -0
  351. package/dist/es/standards-sdk.es196.js.map +1 -0
  352. package/dist/es/standards-sdk.es197.js +79 -0
  353. package/dist/es/standards-sdk.es197.js.map +1 -0
  354. package/dist/es/standards-sdk.es198.js +142 -0
  355. package/dist/es/standards-sdk.es198.js.map +1 -0
  356. package/dist/es/standards-sdk.es199.js +520 -0
  357. package/dist/es/standards-sdk.es199.js.map +1 -0
  358. package/dist/es/standards-sdk.es2.js +2 -2
  359. package/dist/es/standards-sdk.es20.js +1 -1
  360. package/dist/es/standards-sdk.es200.js +262 -0
  361. package/dist/es/standards-sdk.es200.js.map +1 -0
  362. package/dist/es/standards-sdk.es201.js +199 -0
  363. package/dist/es/standards-sdk.es201.js.map +1 -0
  364. package/dist/es/standards-sdk.es202.js +122 -0
  365. package/dist/es/standards-sdk.es202.js.map +1 -0
  366. package/dist/es/standards-sdk.es203.js +155 -0
  367. package/dist/es/standards-sdk.es203.js.map +1 -0
  368. package/dist/es/standards-sdk.es204.js +187 -0
  369. package/dist/es/standards-sdk.es204.js.map +1 -0
  370. package/dist/es/standards-sdk.es205.js +687 -0
  371. package/dist/es/standards-sdk.es205.js.map +1 -0
  372. package/dist/es/standards-sdk.es206.js +188 -0
  373. package/dist/es/standards-sdk.es206.js.map +1 -0
  374. package/dist/es/standards-sdk.es207.js +238 -0
  375. package/dist/es/standards-sdk.es207.js.map +1 -0
  376. package/dist/es/standards-sdk.es208.js +242 -0
  377. package/dist/es/standards-sdk.es208.js.map +1 -0
  378. package/dist/es/standards-sdk.es21.js +1 -1
  379. package/dist/es/standards-sdk.es22.js +1 -1
  380. package/dist/es/standards-sdk.es23.js +1 -1
  381. package/dist/es/standards-sdk.es24.js +1 -1
  382. package/dist/es/standards-sdk.es25.js +1 -1
  383. package/dist/es/standards-sdk.es26.js +1 -1
  384. package/dist/es/standards-sdk.es27.js +11 -11
  385. package/dist/es/standards-sdk.es30.js +2 -2
  386. package/dist/es/standards-sdk.es31.js +4 -4
  387. package/dist/es/standards-sdk.es32.js +1 -1
  388. package/dist/es/standards-sdk.es35.js +5 -5
  389. package/dist/es/standards-sdk.es36.js +4 -4
  390. package/dist/es/standards-sdk.es37.js +2 -2
  391. package/dist/es/standards-sdk.es38.js +2 -2
  392. package/dist/es/standards-sdk.es39.js +1 -1
  393. package/dist/es/standards-sdk.es4.js +2 -2
  394. package/dist/es/standards-sdk.es40.js +1 -1
  395. package/dist/es/standards-sdk.es41.js +2 -2
  396. package/dist/es/standards-sdk.es46.js +1 -1
  397. package/dist/es/standards-sdk.es5.js +2 -2
  398. package/dist/es/standards-sdk.es51.js +1 -1
  399. package/dist/es/standards-sdk.es53.js +1 -1
  400. package/dist/es/standards-sdk.es56.js +2 -2
  401. package/dist/es/standards-sdk.es59.js +1 -1
  402. package/dist/es/standards-sdk.es6.js +2 -2
  403. package/dist/es/standards-sdk.es60.js +1 -1
  404. package/dist/es/standards-sdk.es62.js +1 -1
  405. package/dist/es/standards-sdk.es63.js +2 -2
  406. package/dist/es/standards-sdk.es64.js +1 -1
  407. package/dist/es/standards-sdk.es65.js +1 -1
  408. package/dist/es/standards-sdk.es66.js +1 -1
  409. package/dist/es/standards-sdk.es67.js +6 -6
  410. package/dist/es/standards-sdk.es69.js +1 -1
  411. package/dist/es/standards-sdk.es7.js +1 -1
  412. package/dist/es/standards-sdk.es71.js +2 -2
  413. package/dist/es/standards-sdk.es72.js +3 -3
  414. package/dist/es/standards-sdk.es75.js +5 -5
  415. package/dist/es/standards-sdk.es76.js +3 -3
  416. package/dist/es/standards-sdk.es77.js +2 -2
  417. package/dist/es/standards-sdk.es78.js +1 -1
  418. package/dist/es/standards-sdk.es81.js +2 -2
  419. package/dist/es/standards-sdk.es83.js +2 -2
  420. package/dist/es/standards-sdk.es84.js +3 -3
  421. package/dist/es/standards-sdk.es85.js +1 -1
  422. package/dist/es/standards-sdk.es88.js +1 -1
  423. package/dist/es/standards-sdk.es89.js +2 -2
  424. package/dist/es/standards-sdk.es9.js +2 -2
  425. package/dist/es/standards-sdk.es90.js +4 -4
  426. package/dist/es/standards-sdk.es94.js +3 -3
  427. package/dist/es/standards-sdk.es96.js +2 -2
  428. package/dist/es/standards-sdk.es98.js +1 -1
  429. package/dist/es/standards-sdk.es99.js +3 -3
  430. package/package.json +1 -1
@@ -1,325 +1,47 @@
1
- import { proto } from "@hashgraph/proto";
2
- import { Long } from "@hashgraph/sdk";
3
- import { hasTransactionType, parseKey } from "./standards-sdk.es178.js";
4
- import { Buffer } from "buffer";
5
- class FileParser {
6
- /**
7
- * Parse File Service transaction using unified dual-branch approach
8
- * This handles both regular transactions and signed transaction variants
9
- */
10
- static parseFileTransaction(transaction, originalBytes) {
11
- try {
12
- if (originalBytes || transaction.toBytes) {
13
- try {
14
- const bytesToParse = originalBytes || transaction.toBytes();
15
- const decoded = proto.TransactionList.decode(bytesToParse);
16
- if (decoded.transactionList && decoded.transactionList.length > 0) {
17
- const tx = decoded.transactionList[0];
18
- let txBody = null;
19
- if (tx.bodyBytes && tx.bodyBytes.length > 0) {
20
- txBody = proto.TransactionBody.decode(tx.bodyBytes);
21
- } else if (tx.signedTransactionBytes && tx.signedTransactionBytes.length > 0) {
22
- const signedTx = proto.SignedTransaction.decode(
23
- tx.signedTransactionBytes
24
- );
25
- if (signedTx.bodyBytes) {
26
- txBody = proto.TransactionBody.decode(signedTx.bodyBytes);
27
- }
28
- }
29
- if (txBody) {
30
- const protoResult = this.parseFromProtobufTxBody(txBody);
31
- if (protoResult.type && protoResult.type !== "UNKNOWN") {
32
- return protoResult;
33
- }
34
- }
1
+ import { readMetadataRecord, readNumber } from "./standards-sdk.es178.js";
2
+ import "./standards-sdk.es162.js";
3
+ import "./standards-sdk.es175.js";
4
+ import "./standards-sdk.es176.js";
5
+ import "./standards-sdk.es177.js";
6
+ import { logScale } from "./standards-sdk.es163.js";
7
+ const MISSING = { value: 0, status: "missing" };
8
+ function createX402Adapter(options = {}) {
9
+ const volumeCapUsd = options.volumeCapUsd ?? 1e4;
10
+ const tradesCap = options.tradesCap ?? 500;
11
+ const hasX402Configuration = (subject) => readMetadataRecord(subject, "x402UsageSummary") !== void 0 || subject.metadata !== void 0 && subject.metadata.payTo !== void 0;
12
+ return {
13
+ id: "x402",
14
+ weight: 1,
15
+ contributionMode: "scoped",
16
+ appliesTo: hasX402Configuration,
17
+ components: [
18
+ {
19
+ name: "volume7d",
20
+ normalize: ({ subject }) => {
21
+ const summary = readMetadataRecord(subject, "x402UsageSummary");
22
+ const volume = summary ? readNumber(summary, "volume7dUsd") : null;
23
+ return volume === null ? MISSING : { value: logScale(volume, volumeCapUsd), status: "ok" };
24
+ }
25
+ },
26
+ {
27
+ name: "trades7d",
28
+ normalize: ({ subject }) => {
29
+ const summary = readMetadataRecord(subject, "x402UsageSummary");
30
+ if (!summary) {
31
+ return MISSING;
35
32
  }
36
- } catch (protoError) {
37
- }
38
- }
39
- return this.parseFromTransactionInternals(transaction);
40
- } catch (error) {
41
- return { type: "UNKNOWN", humanReadableType: "Unknown File Transaction" };
42
- }
43
- }
44
- /**
45
- * Parse file transaction from protobuf TransactionBody
46
- * Handles all file operations from decoded protobuf data
47
- */
48
- static parseFromProtobufTxBody(txBody) {
49
- if (txBody.fileCreate) {
50
- const fileCreate = this.parseFileCreate(txBody.fileCreate);
51
- if (fileCreate) {
52
- return {
53
- type: "FILECREATE",
54
- humanReadableType: "File Create",
55
- fileCreate
56
- };
57
- }
58
- }
59
- if (txBody.fileAppend) {
60
- const fileAppend = this.parseFileAppend(txBody.fileAppend);
61
- if (fileAppend) {
62
- return {
63
- type: "FILEAPPEND",
64
- humanReadableType: "File Append",
65
- fileAppend
66
- };
67
- }
68
- }
69
- if (txBody.fileUpdate) {
70
- const fileUpdate = this.parseFileUpdate(txBody.fileUpdate);
71
- if (fileUpdate) {
72
- return {
73
- type: "FILEUPDATE",
74
- humanReadableType: "File Update",
75
- fileUpdate
76
- };
77
- }
78
- }
79
- if (txBody.fileDelete) {
80
- const fileDelete = this.parseFileDelete(txBody.fileDelete);
81
- if (fileDelete) {
82
- return {
83
- type: "FILEDELETE",
84
- humanReadableType: "File Delete",
85
- fileDelete
86
- };
87
- }
88
- }
89
- return {};
90
- }
91
- /**
92
- * Extract file data from Transaction internal fields
93
- * This handles cases where data is stored in Transaction object internals
94
- */
95
- static parseFromTransactionInternals(transaction) {
96
- try {
97
- const tx = transaction;
98
- if (hasTransactionType(transaction, "fileCreate")) {
99
- const fileCreate = {};
100
- if (tx._contents) {
101
- const contentInfo = this.analyzeContent(tx._contents);
102
- fileCreate.contents = contentInfo.encoded;
103
- if (contentInfo.contentType) {
104
- fileCreate.contentType = contentInfo.contentType;
105
- }
106
- if (contentInfo.size) {
107
- fileCreate.contentSize = contentInfo.size;
108
- }
109
- }
110
- if (tx._keys && tx._keys.length > 0) {
111
- const keyList = {
112
- keys: tx._keys
33
+ const inbound = readNumber(summary, "inboundTrades7d") ?? 0;
34
+ const outbound = readNumber(summary, "outboundTrades7d") ?? 0;
35
+ return {
36
+ value: logScale(inbound + outbound, tradesCap),
37
+ status: "ok"
113
38
  };
114
- fileCreate.keys = parseKey({ keyList });
115
- }
116
- if (tx._expirationTime) {
117
- fileCreate.expirationTime = tx._expirationTime.toString();
118
- }
119
- if (tx._memo) {
120
- fileCreate.memo = tx._memo;
121
- }
122
- return {
123
- type: "FILECREATE",
124
- humanReadableType: "File Create",
125
- fileCreate
126
- };
127
- }
128
- if (hasTransactionType(transaction, "fileAppend")) {
129
- const fileAppend = {
130
- fileId: tx._fileId.toString()
131
- };
132
- if (tx._contents) {
133
- const contentInfo = this.analyzeContent(tx._contents);
134
- fileAppend.contents = contentInfo.encoded;
135
- if (contentInfo.size) {
136
- fileAppend.contentSize = contentInfo.size;
137
- }
138
- }
139
- return {
140
- type: "FILEAPPEND",
141
- humanReadableType: "File Append",
142
- fileAppend
143
- };
144
- }
145
- if (hasTransactionType(transaction, "fileUpdate")) {
146
- const fileUpdate = {
147
- fileId: tx._fileId.toString()
148
- };
149
- if (tx._contents) {
150
- const contentInfo = this.analyzeContent(tx._contents);
151
- fileUpdate.contents = contentInfo.encoded;
152
- if (contentInfo.size) {
153
- fileUpdate.contentSize = contentInfo.size;
154
- }
155
- }
156
- if (tx._keys && tx._keys.length > 0) {
157
- const keyList = {
158
- keys: tx._keys
159
- };
160
- fileUpdate.keys = parseKey({ keyList });
161
- }
162
- if (tx._expirationTime) {
163
- fileUpdate.expirationTime = tx._expirationTime.toString();
164
- }
165
- if (tx._memo) {
166
- fileUpdate.memo = tx._memo;
167
- }
168
- return {
169
- type: "FILEUPDATE",
170
- humanReadableType: "File Update",
171
- fileUpdate
172
- };
173
- }
174
- if (hasTransactionType(transaction, "fileDelete")) {
175
- const fileDelete = {
176
- fileId: tx._fileId.toString()
177
- };
178
- return {
179
- type: "FILEDELETE",
180
- humanReadableType: "File Delete",
181
- fileDelete
182
- };
183
- }
184
- return {};
185
- } catch (error) {
186
- return {};
187
- }
188
- }
189
- /**
190
- * Enhanced content analysis with type detection and metadata
191
- */
192
- static analyzeContent(contents) {
193
- const size = contents.length;
194
- const contentBuffer = Buffer.from(contents);
195
- let contentType;
196
- if (size >= 4) {
197
- const header = contentBuffer.subarray(0, 4);
198
- const headerHex = header.toString("hex");
199
- const signatures = {
200
- "89504e47": "image/png",
201
- ffd8ffe0: "image/jpeg",
202
- ffd8ffe1: "image/jpeg",
203
- "47494638": "image/gif",
204
- "25504446": "application/pdf",
205
- "504b0304": "application/zip",
206
- "7f454c46": "application/x-executable",
207
- d0cf11e0: "application/msoffice"
208
- };
209
- contentType = signatures[headerHex.toLowerCase()];
210
- }
211
- if (!contentType) {
212
- try {
213
- const textContent = contentBuffer.toString("utf8");
214
- const hasControlChars = /[\x00-\x08\x0B\x0E-\x1F\x7F]/.test(
215
- textContent
216
- );
217
- const hasReplacementChars = textContent.includes("�");
218
- if (!hasControlChars && !hasReplacementChars) {
219
- if (textContent.trim().startsWith("{") && textContent.trim().endsWith("}")) {
220
- contentType = "application/json";
221
- } else if (textContent.includes("<?xml") || textContent.includes("<html")) {
222
- contentType = "text/xml";
223
- } else if (textContent.includes("<!DOCTYPE html")) {
224
- contentType = "text/html";
225
- } else {
226
- contentType = "text/plain";
227
- }
228
- } else {
229
- contentType = "application/octet-stream";
230
- }
231
- } catch {
232
- contentType = "application/octet-stream";
233
- }
234
- }
235
- let encoded;
236
- if (contentType?.startsWith("text/") || contentType === "application/json") {
237
- try {
238
- encoded = contentBuffer.toString("utf8");
239
- if (encoded.includes("�") || /[\x00-\x08\x0B\x0E-\x1F\x7F]/.test(encoded)) {
240
- encoded = contentBuffer.toString("base64");
241
39
  }
242
- } catch {
243
- encoded = contentBuffer.toString("base64");
244
40
  }
245
- } else {
246
- encoded = contentBuffer.toString("base64");
247
- }
248
- return {
249
- encoded,
250
- contentType,
251
- size
252
- };
253
- }
254
- static parseFileCreate(body) {
255
- if (!body) return void 0;
256
- const data = {};
257
- if (body.expirationTime?.seconds) {
258
- data.expirationTime = `${Long.fromValue(
259
- body.expirationTime.seconds
260
- ).toString()}.${body.expirationTime.nanos}`;
261
- }
262
- if (body.keys) {
263
- data.keys = parseKey({ keyList: body.keys });
264
- }
265
- if (body.contents) {
266
- data.contents = Buffer.from(body.contents).toString("base64");
267
- }
268
- if (body.memo) {
269
- data.memo = body.memo;
270
- }
271
- return data;
272
- }
273
- static parseFileAppend(body) {
274
- if (!body) return void 0;
275
- const data = {};
276
- if (body.fileID) {
277
- data.fileId = `${body.fileID.shardNum ?? 0}.${body.fileID.realmNum ?? 0}.${body.fileID.fileNum ?? 0}`;
278
- }
279
- if (body.contents) {
280
- data.contents = Buffer.from(body.contents).toString("base64");
281
- }
282
- return data;
283
- }
284
- static parseFileUpdate(body) {
285
- if (!body) return void 0;
286
- const data = {};
287
- if (body.fileID) {
288
- data.fileId = `${body.fileID.shardNum ?? 0}.${body.fileID.realmNum ?? 0}.${body.fileID.fileNum ?? 0}`;
289
- }
290
- if (body.expirationTime?.seconds) {
291
- data.expirationTime = `${Long.fromValue(
292
- body.expirationTime.seconds
293
- ).toString()}.${body.expirationTime.nanos}`;
294
- }
295
- if (body.keys) {
296
- data.keys = parseKey({ keyList: body.keys });
297
- }
298
- if (body.contents) {
299
- data.contents = Buffer.from(body.contents).toString("base64");
300
- }
301
- if (body.memo?.value !== void 0) {
302
- data.memo = body.memo.value;
303
- }
304
- return data;
305
- }
306
- static parseFileDelete(body) {
307
- if (!body) return void 0;
308
- const data = {};
309
- if (body.fileID) {
310
- data.fileId = `${body.fileID.shardNum ?? 0}.${body.fileID.realmNum ?? 0}.${body.fileID.fileNum ?? 0}`;
311
- }
312
- return data;
313
- }
314
- /**
315
- * Parse File Service transaction from Transaction object
316
- * This is the unified entry point that delegates to the comprehensive parsing logic
317
- */
318
- static parseFromTransactionObject(transaction) {
319
- return this.parseFileTransaction(transaction);
320
- }
41
+ ]
42
+ };
321
43
  }
322
44
  export {
323
- FileParser
45
+ createX402Adapter
324
46
  };
325
47
  //# sourceMappingURL=standards-sdk.es174.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"standards-sdk.es174.js","sources":["../../src/utils/parsers/file-parser.ts"],"sourcesContent":["import { proto } from '@hashgraph/proto';\nimport { Long, Transaction } from '@hashgraph/sdk';\nimport {\n FileCreateData,\n FileAppendData,\n FileUpdateData,\n FileDeleteData,\n} from '../transaction-parser-types';\nimport {\n parseKey,\n extractTransactionBody,\n hasTransactionType,\n} from './parser-utils';\nimport { Buffer } from 'buffer';\nimport { FileId } from '@hashgraph/sdk';\n\n/**\n * File Service Parser\n *\n * Handles parsing for all file-related transaction types including:\n * - File creation, updates, append, and deletion\n * - Proper dual-branch parsing (regular vs signed transactions)\n * - Comprehensive protobuf extraction\n * - Enhanced content handling with type detection\n */\nexport class FileParser {\n /**\n * Parse File Service transaction using unified dual-branch approach\n * This handles both regular transactions and signed transaction variants\n */\n static parseFileTransaction(\n transaction: Transaction,\n originalBytes?: Uint8Array,\n ): {\n type?: string;\n humanReadableType?: string;\n fileCreate?: FileCreateData;\n fileAppend?: FileAppendData;\n fileUpdate?: FileUpdateData;\n fileDelete?: FileDeleteData;\n [key: string]: unknown;\n } {\n try {\n if (originalBytes || transaction.toBytes) {\n try {\n const bytesToParse = originalBytes || transaction.toBytes();\n const decoded = proto.TransactionList.decode(bytesToParse);\n\n if (decoded.transactionList && decoded.transactionList.length > 0) {\n const tx = decoded.transactionList[0];\n let txBody: proto.ITransactionBody | null = null;\n\n if (tx.bodyBytes && tx.bodyBytes.length > 0) {\n txBody = proto.TransactionBody.decode(tx.bodyBytes);\n } else if (\n tx.signedTransactionBytes &&\n tx.signedTransactionBytes.length > 0\n ) {\n const signedTx = proto.SignedTransaction.decode(\n tx.signedTransactionBytes,\n );\n if (signedTx.bodyBytes) {\n txBody = proto.TransactionBody.decode(signedTx.bodyBytes);\n }\n }\n\n if (txBody) {\n const protoResult = this.parseFromProtobufTxBody(txBody);\n if (protoResult.type && protoResult.type !== 'UNKNOWN') {\n return protoResult;\n }\n }\n }\n } catch (protoError) {}\n }\n\n return this.parseFromTransactionInternals(transaction);\n } catch (error) {\n return { type: 'UNKNOWN', humanReadableType: 'Unknown File Transaction' };\n }\n }\n\n /**\n * Parse file transaction from protobuf TransactionBody\n * Handles all file operations from decoded protobuf data\n */\n private static parseFromProtobufTxBody(txBody: proto.ITransactionBody): {\n type?: string;\n humanReadableType?: string;\n [key: string]: unknown;\n } {\n if (txBody.fileCreate) {\n const fileCreate = this.parseFileCreate(txBody.fileCreate);\n if (fileCreate) {\n return {\n type: 'FILECREATE',\n humanReadableType: 'File Create',\n fileCreate,\n };\n }\n }\n\n if (txBody.fileAppend) {\n const fileAppend = this.parseFileAppend(txBody.fileAppend);\n if (fileAppend) {\n return {\n type: 'FILEAPPEND',\n humanReadableType: 'File Append',\n fileAppend,\n };\n }\n }\n\n if (txBody.fileUpdate) {\n const fileUpdate = this.parseFileUpdate(txBody.fileUpdate);\n if (fileUpdate) {\n return {\n type: 'FILEUPDATE',\n humanReadableType: 'File Update',\n fileUpdate,\n };\n }\n }\n\n if (txBody.fileDelete) {\n const fileDelete = this.parseFileDelete(txBody.fileDelete);\n if (fileDelete) {\n return {\n type: 'FILEDELETE',\n humanReadableType: 'File Delete',\n fileDelete,\n };\n }\n }\n\n return {};\n }\n\n /**\n * Extract file data from Transaction internal fields\n * This handles cases where data is stored in Transaction object internals\n */\n private static parseFromTransactionInternals(transaction: Transaction): {\n type?: string;\n humanReadableType?: string;\n [key: string]: unknown;\n } {\n try {\n const tx = transaction as unknown as {\n _fileId?: { toString(): string };\n _contents?: Uint8Array;\n _keys?: unknown[];\n _expirationTime?: { toString(): string };\n _memo?: string;\n constructor?: { name?: string };\n };\n\n if (hasTransactionType(transaction, 'fileCreate')) {\n const fileCreate: FileCreateData = {};\n\n if (tx._contents) {\n const contentInfo = this.analyzeContent(tx._contents);\n fileCreate.contents = contentInfo.encoded;\n if (contentInfo.contentType) {\n fileCreate.contentType = contentInfo.contentType;\n }\n if (contentInfo.size) {\n fileCreate.contentSize = contentInfo.size;\n }\n }\n\n if (tx._keys && tx._keys.length > 0) {\n const keyList: proto.IKeyList = {\n keys: tx._keys as unknown as proto.IKey[],\n };\n fileCreate.keys = parseKey({ keyList });\n }\n\n if (tx._expirationTime) {\n fileCreate.expirationTime = tx._expirationTime.toString();\n }\n\n if (tx._memo) {\n fileCreate.memo = tx._memo;\n }\n\n return {\n type: 'FILECREATE',\n humanReadableType: 'File Create',\n fileCreate,\n };\n }\n\n if (hasTransactionType(transaction, 'fileAppend')) {\n const fileAppend: FileAppendData = {\n fileId: tx._fileId.toString(),\n };\n\n if (tx._contents) {\n const contentInfo = this.analyzeContent(tx._contents);\n fileAppend.contents = contentInfo.encoded;\n if (contentInfo.size) {\n fileAppend.contentSize = contentInfo.size;\n }\n }\n\n return {\n type: 'FILEAPPEND',\n humanReadableType: 'File Append',\n fileAppend,\n };\n }\n\n if (hasTransactionType(transaction, 'fileUpdate')) {\n const fileUpdate: FileUpdateData = {\n fileId: tx._fileId.toString(),\n };\n\n if (tx._contents) {\n const contentInfo = this.analyzeContent(tx._contents);\n fileUpdate.contents = contentInfo.encoded;\n if (contentInfo.size) {\n fileUpdate.contentSize = contentInfo.size;\n }\n }\n\n if (tx._keys && tx._keys.length > 0) {\n const keyList: proto.IKeyList = {\n keys: tx._keys as unknown as proto.IKey[],\n };\n fileUpdate.keys = parseKey({ keyList });\n }\n\n if (tx._expirationTime) {\n fileUpdate.expirationTime = tx._expirationTime.toString();\n }\n\n if (tx._memo) {\n fileUpdate.memo = tx._memo;\n }\n\n return {\n type: 'FILEUPDATE',\n humanReadableType: 'File Update',\n fileUpdate,\n };\n }\n\n if (hasTransactionType(transaction, 'fileDelete')) {\n const fileDelete: FileDeleteData = {\n fileId: tx._fileId.toString(),\n };\n\n return {\n type: 'FILEDELETE',\n humanReadableType: 'File Delete',\n fileDelete,\n };\n }\n\n return {};\n } catch (error) {\n return {};\n }\n }\n\n /**\n * Enhanced content analysis with type detection and metadata\n */\n private static analyzeContent(contents: Uint8Array): {\n encoded: string;\n contentType?: string;\n size: number;\n } {\n const size = contents.length;\n const contentBuffer = Buffer.from(contents);\n\n let contentType: string | undefined;\n\n if (size >= 4) {\n const header = contentBuffer.subarray(0, 4);\n const headerHex = header.toString('hex');\n\n const signatures: Record<string, string> = {\n '89504e47': 'image/png',\n ffd8ffe0: 'image/jpeg',\n ffd8ffe1: 'image/jpeg',\n '47494638': 'image/gif',\n '25504446': 'application/pdf',\n '504b0304': 'application/zip',\n '7f454c46': 'application/x-executable',\n d0cf11e0: 'application/msoffice',\n };\n\n contentType = signatures[headerHex.toLowerCase()];\n }\n\n if (!contentType) {\n try {\n const textContent = contentBuffer.toString('utf8');\n const hasControlChars = /[\\x00-\\x08\\x0B\\x0E-\\x1F\\x7F]/.test(\n textContent,\n );\n const hasReplacementChars = textContent.includes('\\uFFFD');\n\n if (!hasControlChars && !hasReplacementChars) {\n if (\n textContent.trim().startsWith('{') &&\n textContent.trim().endsWith('}')\n ) {\n contentType = 'application/json';\n } else if (\n textContent.includes('<?xml') ||\n textContent.includes('<html')\n ) {\n contentType = 'text/xml';\n } else if (textContent.includes('<!DOCTYPE html')) {\n contentType = 'text/html';\n } else {\n contentType = 'text/plain';\n }\n } else {\n contentType = 'application/octet-stream';\n }\n } catch {\n contentType = 'application/octet-stream';\n }\n }\n\n let encoded: string;\n if (\n contentType?.startsWith('text/') ||\n contentType === 'application/json'\n ) {\n try {\n encoded = contentBuffer.toString('utf8');\n if (\n encoded.includes('\\uFFFD') ||\n /[\\x00-\\x08\\x0B\\x0E-\\x1F\\x7F]/.test(encoded)\n ) {\n encoded = contentBuffer.toString('base64');\n }\n } catch {\n encoded = contentBuffer.toString('base64');\n }\n } else {\n encoded = contentBuffer.toString('base64');\n }\n\n return {\n encoded,\n contentType,\n size,\n };\n }\n static parseFileCreate(\n body: proto.IFileCreateTransactionBody,\n ): FileCreateData | undefined {\n if (!body) return undefined;\n const data: FileCreateData = {};\n if (body.expirationTime?.seconds) {\n data.expirationTime = `${Long.fromValue(\n body.expirationTime.seconds,\n ).toString()}.${body.expirationTime.nanos}`;\n }\n if (body.keys) {\n data.keys = parseKey({ keyList: body.keys });\n }\n if (body.contents) {\n data.contents = Buffer.from(body.contents).toString('base64');\n }\n if (body.memo) {\n data.memo = body.memo;\n }\n return data;\n }\n\n static parseFileAppend(\n body: proto.IFileAppendTransactionBody,\n ): FileAppendData | undefined {\n if (!body) return undefined;\n const data: FileAppendData = {};\n if (body.fileID) {\n data.fileId = `${body.fileID.shardNum ?? 0}.${\n body.fileID.realmNum ?? 0\n }.${body.fileID.fileNum ?? 0}`;\n }\n if (body.contents) {\n data.contents = Buffer.from(body.contents).toString('base64');\n }\n return data;\n }\n\n static parseFileUpdate(\n body: proto.IFileUpdateTransactionBody,\n ): FileUpdateData | undefined {\n if (!body) return undefined;\n const data: FileUpdateData = {};\n if (body.fileID) {\n data.fileId = `${body.fileID.shardNum ?? 0}.${\n body.fileID.realmNum ?? 0\n }.${body.fileID.fileNum ?? 0}`;\n }\n if (body.expirationTime?.seconds) {\n data.expirationTime = `${Long.fromValue(\n body.expirationTime.seconds,\n ).toString()}.${body.expirationTime.nanos}`;\n }\n if (body.keys) {\n data.keys = parseKey({ keyList: body.keys });\n }\n if (body.contents) {\n data.contents = Buffer.from(body.contents).toString('base64');\n }\n if (body.memo?.value !== undefined) {\n data.memo = body.memo.value;\n }\n return data;\n }\n\n static parseFileDelete(\n body: proto.IFileDeleteTransactionBody,\n ): FileDeleteData | undefined {\n if (!body) return undefined;\n const data: FileDeleteData = {};\n if (body.fileID) {\n data.fileId = `${body.fileID.shardNum ?? 0}.${\n body.fileID.realmNum ?? 0\n }.${body.fileID.fileNum ?? 0}`;\n }\n return data;\n }\n\n /**\n * Parse File Service transaction from Transaction object\n * This is the unified entry point that delegates to the comprehensive parsing logic\n */\n static parseFromTransactionObject(transaction: Transaction): {\n type?: string;\n humanReadableType?: string;\n [key: string]: unknown;\n } {\n return this.parseFileTransaction(transaction);\n }\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"standards-sdk.es174.js","sources":["../../src/hcs-25/adapters/x402.ts"],"sourcesContent":["import type {\n Hcs25AdapterDefinition,\n Hcs25NormalizedValue,\n Hcs25Subject,\n} from '../types';\nimport { readMetadataRecord, readNumber } from '../signals';\nimport { logScale } from './normalization';\n\n/**\n * Options for the x402 usage adapter.\n */\nexport interface Hcs25X402AdapterOptions {\n /** 7-day USD volume cap for log scaling. Default 10000. */\n volumeCapUsd?: number;\n /** 7-day trade count cap for log scaling. Default 500. */\n tradesCap?: number;\n}\n\nconst MISSING: Hcs25NormalizedValue = { value: 0, status: 'missing' };\n\n/**\n * Creates the `x402` adapter: converts onchain x402 usage (USD volume plus\n * trade counts) into bounded trust components using log scaling. It only\n * applies to subjects carrying x402 payment configuration or a stored usage\n * summary.\n */\nexport function createX402Adapter(\n options: Hcs25X402AdapterOptions = {},\n): Hcs25AdapterDefinition {\n const volumeCapUsd = options.volumeCapUsd ?? 10000;\n const tradesCap = options.tradesCap ?? 500;\n\n const hasX402Configuration = (subject: Hcs25Subject): boolean =>\n readMetadataRecord(subject, 'x402UsageSummary') !== undefined ||\n (subject.metadata !== undefined && subject.metadata.payTo !== undefined);\n\n return {\n id: 'x402',\n weight: 1,\n contributionMode: 'scoped',\n appliesTo: hasX402Configuration,\n components: [\n {\n name: 'volume7d',\n normalize: ({ subject }): Hcs25NormalizedValue => {\n const summary = readMetadataRecord(subject, 'x402UsageSummary');\n const volume = summary ? readNumber(summary, 'volume7dUsd') : null;\n return volume === null\n ? MISSING\n : { value: logScale(volume, volumeCapUsd), status: 'ok' };\n },\n },\n {\n name: 'trades7d',\n normalize: ({ subject }): Hcs25NormalizedValue => {\n const summary = readMetadataRecord(subject, 'x402UsageSummary');\n if (!summary) {\n return MISSING;\n }\n const inbound = readNumber(summary, 'inboundTrades7d') ?? 0;\n const outbound = readNumber(summary, 'outboundTrades7d') ?? 0;\n return {\n value: logScale(inbound + outbound, tradesCap),\n status: 'ok',\n };\n },\n },\n ],\n };\n}\n"],"names":[],"mappings":";;;;;;AAkBA,MAAM,UAAgC,EAAE,OAAO,GAAG,QAAQ,UAAA;AAQnD,SAAS,kBACd,UAAmC,IACX;AACxB,QAAM,eAAe,QAAQ,gBAAgB;AAC7C,QAAM,YAAY,QAAQ,aAAa;AAEvC,QAAM,uBAAuB,CAAC,YAC5B,mBAAmB,SAAS,kBAAkB,MAAM,UACnD,QAAQ,aAAa,UAAa,QAAQ,SAAS,UAAU;AAEhE,SAAO;AAAA,IACL,IAAI;AAAA,IACJ,QAAQ;AAAA,IACR,kBAAkB;AAAA,IAClB,WAAW;AAAA,IACX,YAAY;AAAA,MACV;AAAA,QACE,MAAM;AAAA,QACN,WAAW,CAAC,EAAE,cAAoC;AAChD,gBAAM,UAAU,mBAAmB,SAAS,kBAAkB;AAC9D,gBAAM,SAAS,UAAU,WAAW,SAAS,aAAa,IAAI;AAC9D,iBAAO,WAAW,OACd,UACA,EAAE,OAAO,SAAS,QAAQ,YAAY,GAAG,QAAQ,KAAA;AAAA,QACvD;AAAA,MAAA;AAAA,MAEF;AAAA,QACE,MAAM;AAAA,QACN,WAAW,CAAC,EAAE,cAAoC;AAChD,gBAAM,UAAU,mBAAmB,SAAS,kBAAkB;AAC9D,cAAI,CAAC,SAAS;AACZ,mBAAO;AAAA,UACT;AACA,gBAAM,UAAU,WAAW,SAAS,iBAAiB,KAAK;AAC1D,gBAAM,WAAW,WAAW,SAAS,kBAAkB,KAAK;AAC5D,iBAAO;AAAA,YACL,OAAO,SAAS,UAAU,UAAU,SAAS;AAAA,YAC7C,QAAQ;AAAA,UAAA;AAAA,QAEZ;AAAA,MAAA;AAAA,IACF;AAAA,EACF;AAEJ;"}