agent0-sdk 1.0.3 → 1.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (53) hide show
  1. package/README.md +28 -6
  2. package/dist/browser/eip6963.d.ts +60 -0
  3. package/dist/browser/eip6963.d.ts.map +1 -0
  4. package/dist/browser/eip6963.js +87 -0
  5. package/dist/browser/eip6963.js.map +1 -0
  6. package/dist/browser/index.d.ts +2 -0
  7. package/dist/browser/index.d.ts.map +1 -0
  8. package/dist/browser/index.js +2 -0
  9. package/dist/browser/index.js.map +1 -0
  10. package/dist/browser/viem-chain-client.d.ts +2 -0
  11. package/dist/browser/viem-chain-client.d.ts.map +1 -0
  12. package/dist/browser/viem-chain-client.js +2 -0
  13. package/dist/browser/viem-chain-client.js.map +1 -0
  14. package/dist/core/agent.d.ts +5 -2
  15. package/dist/core/agent.d.ts.map +1 -1
  16. package/dist/core/agent.js +204 -125
  17. package/dist/core/agent.js.map +1 -1
  18. package/dist/core/chain-client.d.ts +129 -0
  19. package/dist/core/chain-client.d.ts.map +1 -0
  20. package/dist/core/chain-client.js +2 -0
  21. package/dist/core/chain-client.js.map +1 -0
  22. package/dist/core/feedback-manager.d.ts +7 -8
  23. package/dist/core/feedback-manager.d.ts.map +1 -1
  24. package/dist/core/feedback-manager.js +107 -60
  25. package/dist/core/feedback-manager.js.map +1 -1
  26. package/dist/core/indexer.d.ts +1 -3
  27. package/dist/core/indexer.d.ts.map +1 -1
  28. package/dist/core/indexer.js +1 -2
  29. package/dist/core/indexer.js.map +1 -1
  30. package/dist/core/sdk.d.ts +19 -20
  31. package/dist/core/sdk.d.ts.map +1 -1
  32. package/dist/core/sdk.js +61 -69
  33. package/dist/core/sdk.js.map +1 -1
  34. package/dist/core/subgraph-client.d.ts +30 -2
  35. package/dist/core/subgraph-client.d.ts.map +1 -1
  36. package/dist/core/subgraph-client.js.map +1 -1
  37. package/dist/core/viem-chain-client.d.ts +78 -0
  38. package/dist/core/viem-chain-client.d.ts.map +1 -0
  39. package/dist/core/viem-chain-client.js +255 -0
  40. package/dist/core/viem-chain-client.js.map +1 -0
  41. package/dist/index.d.ts +2 -2
  42. package/dist/index.d.ts.map +1 -1
  43. package/dist/index.js +1 -1
  44. package/dist/index.js.map +1 -1
  45. package/dist/utils/index.d.ts +1 -0
  46. package/dist/utils/index.d.ts.map +1 -1
  47. package/dist/utils/index.js +1 -0
  48. package/dist/utils/index.js.map +1 -1
  49. package/dist/utils/signatures.d.ts +22 -0
  50. package/dist/utils/signatures.d.ts.map +1 -0
  51. package/dist/utils/signatures.js +40 -0
  52. package/dist/utils/signatures.js.map +1 -0
  53. package/package.json +14 -4
@@ -1 +1 @@
1
- {"version":3,"file":"agent.js","sourceRoot":"","sources":["../../src/core/agent.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAMhC,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAE9D,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAEpE;;GAEG;AACH,MAAM,OAAO,KAAK;IAOhB,YAAoB,GAAQ,EAAE,gBAAkC;QAA5C,QAAG,GAAH,GAAG,CAAK;QAJpB,mBAAc,GAAG,IAAI,GAAG,EAAU,CAAC;QAKzC,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;QACzC,IAAI,CAAC,gBAAgB,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,CAAC;IACpD,CAAC;IAED,uBAAuB;IACvB,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC;IACvC,CAAC;IAED,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC;IACxC,CAAC;IAED,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC;IACpC,CAAC;IAED,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC;IAC3C,CAAC;IAED,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC;IACrC,CAAC;IAED,IAAI,WAAW;QACb,MAAM,EAAE,GAAG,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,YAAY,CAAC,GAAG,CAAC,CAAC;QACpF,OAAO,EAAE,EAAE,KAAK,CAAC;IACnB,CAAC;IAED,IAAI,WAAW;QACb,MAAM,EAAE,GAAG,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,YAAY,CAAC,GAAG,CAAC,CAAC;QACpF,OAAO,EAAE,EAAE,KAAK,CAAC;IACnB,CAAC;IAED,IAAI,WAAW;QACb,MAAM,EAAE,GAAG,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,YAAY,CAAC,GAAG,CAAC,CAAC;QACpF,OAAO,EAAE,EAAE,KAAK,CAAC;IACnB,CAAC;IAED,IAAI,aAAa;QACf,OAAO,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC;IAC7C,CAAC;IAED,IAAI,QAAQ;QACV,MAAM,EAAE,GAAG,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,YAAY,CAAC,GAAG,CAAC,CAAC;QACpF,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,CAAC;IAC5B,CAAC;IAED,IAAI,UAAU;QACZ,MAAM,EAAE,GAAG,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,YAAY,CAAC,GAAG,CAAC,CAAC;QACpF,OAAO,EAAE,EAAE,IAAI,EAAE,UAAU,CAAC;IAC9B,CAAC;IAED,IAAI,YAAY;QACd,MAAM,EAAE,GAAG,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,YAAY,CAAC,GAAG,CAAC,CAAC;QACpF,OAAO,EAAE,EAAE,IAAI,EAAE,YAAY,CAAC;IAChC,CAAC;IAED,IAAI,SAAS;QACX,MAAM,EAAE,GAAG,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,YAAY,CAAC,GAAG,CAAC,CAAC;QACpF,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,CAAC;IAC7B,CAAC;IAED,sBAAsB;IACtB,KAAK,CAAC,MAAM,CAAC,QAAgB,EAAE,UAAkB,YAAY,EAAE,YAAqB,IAAI;QACtF,sCAAsC;QACtC,IAAI,CAAC,gBAAgB,CAAC,SAAS,GAAG,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,MAAM,CACtE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,KAAK,YAAY,CAAC,GAAG,CACrC,CAAC;QAEF,0DAA0D;QAC1D,MAAM,IAAI,GAA4B,EAAE,OAAO,EAAE,CAAC;QAClD,IAAI,SAAS,EAAE,CAAC;YACd,IAAI,CAAC;gBACH,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC;gBAChF,IAAI,YAAY,EAAE,CAAC;oBACjB,IAAI,YAAY,CAAC,QAAQ;wBAAE,IAAI,CAAC,QAAQ,GAAG,YAAY,CAAC,QAAQ,CAAC;oBACjE,IAAI,YAAY,CAAC,UAAU;wBAAE,IAAI,CAAC,UAAU,GAAG,YAAY,CAAC,UAAU,CAAC;oBACvE,IAAI,YAAY,CAAC,YAAY;wBAAE,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC,YAAY,CAAC;gBAC/E,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,4CAA4C;YAC9C,CAAC;QACH,CAAC;QAED,uBAAuB;QACvB,MAAM,WAAW,GAAa;YAC5B,IAAI,EAAE,YAAY,CAAC,GAAG;YACtB,KAAK,EAAE,QAAQ;YACf,IAAI;SACL,CAAC;QACF,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAClD,IAAI,CAAC,gBAAgB,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;QAEhE,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,SAAiB,EAAE,UAAkB,MAAM,EAAE,YAAqB,IAAI;QACjF,sCAAsC;QACtC,IAAI,CAAC,gBAAgB,CAAC,SAAS,GAAG,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,MAAM,CACtE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,KAAK,YAAY,CAAC,GAAG,CACrC,CAAC;QAEF,0DAA0D;QAC1D,MAAM,IAAI,GAA4B,EAAE,OAAO,EAAE,CAAC;QAClD,IAAI,SAAS,EAAE,CAAC;YACd,IAAI,CAAC;gBACH,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC;gBACjF,IAAI,YAAY,EAAE,SAAS,EAAE,CAAC;oBAC5B,IAAI,CAAC,SAAS,GAAG,YAAY,CAAC,SAAS,CAAC;gBAC1C,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,4CAA4C;YAC9C,CAAC;QACH,CAAC;QAED,uBAAuB;QACvB,MAAM,WAAW,GAAa;YAC5B,IAAI,EAAE,YAAY,CAAC,GAAG;YACtB,KAAK,EAAE,SAAS;YAChB,IAAI;SACL,CAAC;QACF,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAClD,IAAI,CAAC,gBAAgB,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;QAEhE,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,CAAC,IAAY,EAAE,UAAkB,KAAK;QAC1C,gCAAgC;QAChC,IAAI,CAAC,gBAAgB,CAAC,SAAS,GAAG,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,MAAM,CACtE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,KAAK,YAAY,CAAC,GAAG,CACrC,CAAC;QAEF,uBAAuB;QACvB,IAAI,IAAI,KAAK,IAAI,CAAC,kBAAkB,EAAE,CAAC;YACrC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QACvC,CAAC;QAED,uBAAuB;QACvB,MAAM,WAAW,GAAa;YAC5B,IAAI,EAAE,YAAY,CAAC,GAAG;YACtB,KAAK,EAAE,IAAI;YACX,IAAI,EAAE,EAAE,OAAO,EAAE;SAClB,CAAC;QACF,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAClD,IAAI,CAAC,gBAAgB,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;QAEhE,OAAO,IAAI,CAAC;IACd,CAAC;IAaD,cAAc,CACZ,IAA6D,EAC7D,IAAa;QAEb,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GACnB,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ;YAC9B,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE;YACxC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAgC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;QAE9D,IAAI,IAAI,KAAK,SAAS,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YAC9C,uBAAuB;YACvB,IAAI,CAAC,gBAAgB,CAAC,SAAS,GAAG,EAAE,CAAC;QACvC,CAAC;aAAM,CAAC;YACN,iDAAiD;YACjD,IAAI,CAAC,gBAAgB,CAAC,SAAS,GAAG,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE;gBAC9E,MAAM,WAAW,GAAG,IAAI,KAAK,SAAS,IAAI,EAAE,CAAC,IAAI,KAAK,IAAI,CAAC;gBAC3D,MAAM,YAAY,GAAG,KAAK,KAAK,SAAS,IAAI,EAAE,CAAC,KAAK,KAAK,KAAK,CAAC;gBAC/D,OAAO,CAAC,CAAC,WAAW,IAAI,YAAY,CAAC,CAAC;YACxC,CAAC,CAAC,CAAC;QACL,CAAC;QAED,IAAI,CAAC,gBAAgB,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;QAChE,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACH,eAAe;QACb,OAAO,IAAI,CAAC,cAAc,EAAE,CAAC;IAC/B,CAAC;IAED,2BAA2B;IACnB,wBAAwB;QAC9B,8BAA8B;QAC9B,MAAM,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,IAAI,CACnD,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,KAAK,YAAY,CAAC,IAAI,CACtC,CAAC;QACF,IAAI,QAAQ,EAAE,CAAC;YACb,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,+CAA+C;QAC/C,MAAM,YAAY,GAAa;YAC7B,IAAI,EAAE,YAAY,CAAC,IAAI;YACvB,KAAK,EAAE,iCAAiC;YACxC,IAAI,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;SACrD,CAAC;QACF,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACnD,OAAO,YAAY,CAAC;IACtB,CAAC;IAED,QAAQ,CAAC,IAAY,EAAE,eAAwB,KAAK;QAClD;;;;;;WAMG;QACH,IAAI,YAAY,EAAE,CAAC;YACjB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC;gBACzB,MAAM,IAAI,KAAK,CACb,4BAA4B,IAAI,IAAI;oBAClC,4CAA4C,CAC/C,CAAC;YACJ,CAAC;QACH,CAAC;QAED,MAAM,YAAY,GAAG,IAAI,CAAC,wBAAwB,EAAE,CAAC;QAErD,qCAAqC;QACrC,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;YACvB,YAAY,CAAC,IAAI,GAAG,EAAE,CAAC;QACzB,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;YAC7C,YAAY,CAAC,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;QAChC,CAAC;QAED,qDAAqD;QACrD,MAAM,MAAM,GAAG,YAAY,CAAC,IAAI,CAAC,MAAkB,CAAC;QACpD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;YAC3B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACpB,CAAC;QAED,IAAI,CAAC,gBAAgB,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;QAChE,OAAO,IAAI,CAAC;IACd,CAAC;IAED,WAAW,CAAC,IAAY;QACtB;;;;WAIG;QACH,qBAAqB;QACrB,MAAM,YAAY,GAAG,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,IAAI,CACvD,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,KAAK,YAAY,CAAC,IAAI,CACtC,CAAC;QAEF,IAAI,YAAY,IAAI,YAAY,CAAC,IAAI,EAAE,CAAC;YACtC,MAAM,MAAM,GAAG,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC;YACxC,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC1B,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;gBACnC,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC;oBACjB,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;gBAC1B,CAAC;YACH,CAAC;YACD,IAAI,CAAC,gBAAgB,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;QAClE,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED,SAAS,CAAC,IAAY,EAAE,eAAwB,KAAK;QACnD;;;;;;WAMG;QACH,IAAI,YAAY,EAAE,CAAC;YACjB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC1B,MAAM,IAAI,KAAK,CACb,6BAA6B,IAAI,IAAI;oBACnC,4CAA4C,CAC/C,CAAC;YACJ,CAAC;QACH,CAAC;QAED,MAAM,YAAY,GAAG,IAAI,CAAC,wBAAwB,EAAE,CAAC;QAErD,sCAAsC;QACtC,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;YACvB,YAAY,CAAC,IAAI,GAAG,EAAE,CAAC;QACzB,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YAC9C,YAAY,CAAC,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;QACjC,CAAC;QAED,qDAAqD;QACrD,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,OAAmB,CAAC;QACtD,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;YAC5B,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACrB,CAAC;QAED,IAAI,CAAC,gBAAgB,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;QAChE,OAAO,IAAI,CAAC;IACd,CAAC;IAED,YAAY,CAAC,IAAY;QACvB;;;;WAIG;QACH,qBAAqB;QACrB,MAAM,YAAY,GAAG,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,IAAI,CACvD,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,KAAK,YAAY,CAAC,IAAI,CACtC,CAAC;QAEF,IAAI,YAAY,IAAI,YAAY,CAAC,IAAI,EAAE,CAAC;YACtC,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC;YAC1C,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC3B,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;gBACpC,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC;oBACjB,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;gBAC3B,CAAC;YACH,CAAC;YACD,IAAI,CAAC,gBAAgB,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;QAClE,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,cAAc,CAClB,SAAkB,EAClB,IAIC;QAED,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC;YACnC,MAAM,IAAI,KAAK,CACb,gEAAgE;gBAC9D,uDAAuD,CAC1D,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;YAChC,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAC;QAClF,CAAC;QAED,6BAA6B;QAC7B,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,CAAC;YAC9C,MAAM,IAAI,KAAK,CAAC,8BAA8B,SAAS,EAAE,CAAC,CAAC;QAC7D,CAAC;QAED,MAAM,EAAE,OAAO,EAAE,GAAG,YAAY,CAAC,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;QAChE,MAAM,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,mBAAmB,EAAE,CAAC;QAExD,wCAAwC;QACxC,IAAI,CAAC;YACH,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,YAAY,CAC1D,gBAAgB,EAChB,gBAAgB,EAChB,MAAM,CAAC,OAAO,CAAC,CAChB,CAAC;YACF,IACE,OAAO,aAAa,KAAK,QAAQ;gBACjC,aAAa,CAAC,WAAW,EAAE,KAAK,SAAS,CAAC,WAAW,EAAE,EACvD,CAAC;gBACD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;gBACzC,IAAI,CAAC,gBAAgB,CAAC,aAAa,GAAG,SAAS,CAAC;gBACpD,IAAI,CAAC,gBAAgB,CAAC,aAAa,GAAG,OAAO,CAAC;gBAC1C,IAAI,CAAC,gBAAgB,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;gBAChE,OAAO,EAAE,CAAC;YACZ,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,qBAAqB;QACvB,CAAC;QAED,sFAAsF;QACtF,qEAAqE;QACrE,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC1E,MAAM,QAAQ,GAAG,WAAW,EAAE,SAAS,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;QACzE,MAAM,aAAa,GAAG,IAAI,EAAE,QAAQ,IAAI,QAAQ,GAAG,EAAE,CAAC;QACtD,IAAI,aAAa,GAAG,QAAQ,EAAE,CAAC;YAC7B,MAAM,IAAI,KAAK,CAAC,qBAAqB,aAAa,gCAAgC,QAAQ,GAAG,CAAC,CAAC;QACjG,CAAC;QACD,IAAI,aAAa,GAAG,QAAQ,GAAG,GAAG,EAAE,CAAC;YACnC,MAAM,IAAI,KAAK,CACb,qBAAqB,aAAa,6BAA6B;gBAC7D,2EAA2E;gBAC3E,gBAAgB,QAAQ,GAAG,CAC9B,CAAC;QACJ,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;QACzC,MAAM,iBAAiB,GAAG,MAAM,gBAAgB,CAAC,UAAU,EAAE,CAAC;QAC9D,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,YAAY,CAClD,gBAAgB,EAChB,SAAS,EACT,MAAM,CAAC,OAAO,CAAC,CAChB,CAAC;QAEF,4EAA4E;QAC5E,kDAAkD;QAClD,IAAI,UAA8B,CAAC;QACnC,IAAI,aAAiC,CAAC;QACtC,IAAI,CAAC;YACH,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,YAAY,CAAC,gBAAgB,EAAE,cAAc,CAAC,CAAC;YAC5F,gGAAgG;YAChG,6DAA6D;YAC7D,UAAU,GAAG,UAAU,EAAE,IAAI,IAAI,UAAU,EAAE,CAAC,CAAC,CAAC,CAAC;YACjD,aAAa,GAAG,UAAU,EAAE,OAAO,IAAI,UAAU,EAAE,CAAC,CAAC,CAAC,CAAC;QACzD,CAAC;QAAC,MAAM,CAAC;YACP,0BAA0B;QAC5B,CAAC;QAED,uFAAuF;QACvF,4CAA4C;QAC5C,IAAI,sBAA0C,CAAC;QAC/C,IAAI,CAAC;YACH,sBAAsB,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,YAAY,CAAC,gBAAgB,EAAE,kBAAkB,CAAC,CAAC;QACxG,CAAC;QAAC,MAAM,CAAC;YACP,SAAS;QACX,CAAC;QAED,yEAAyE;QACzE,MAAM,sBAAsB,GAAG,KAAK,EAAE,GAAW,EAAE,EAAE;YACnD,MAAM,EAAE,GAAI,gBAAwB,CAAC,WAAW;gBAC9C,CAAC,CAAE,gBAAwB,CAAC,WAAW,CAAC,gBAAgB,CAAC;gBACzD,CAAC,CAAC,IAAI,CAAC;YACT,IAAI,EAAE,EAAE,WAAW,EAAE,CAAC;gBACpB,MAAM,EAAE,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,aAAa,CAAC,EAAE,GAAG,CAAC,CAAC;YAC/E,CAAC;iBAAM,IAAK,gBAAwB,CAAC,WAAW,EAAE,cAAc,EAAE,CAAC;gBACjE,MAAO,gBAAwB,CAAC,WAAW,CAAC,cAAc,CACxD,MAAM,CAAC,OAAO,CAAC,EACf,SAAS,EACT,MAAM,CAAC,aAAa,CAAC,EACrB,GAAG,CACJ,CAAC;YACJ,CAAC;QACH,CAAC,CAAC;QAEF,sBAAsB;QACtB,IAAI,SAA6B,CAAC;QAClC,IAAI,IAAI,EAAE,SAAS,EAAE,CAAC;YACpB,SAAS;gBACP,OAAO,IAAI,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACvF,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gBAChC,SAAS,GAAG,KAAK,SAAS,EAAE,CAAC;YAC/B,CAAC;QACH,CAAC;aAAM,CAAC;YACN,wGAAwG;YACxG,MAAM,kBAAkB,GAAuC,IAAI,EAAE,eAAe,CAAC;YACrF,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC;YAEhE,0FAA0F;YAC1F,IAAI,CAAC,kBAAkB,EAAE,CAAC;gBACxB,IAAI,CAAC,gBAAgB,IAAI,gBAAgB,CAAC,WAAW,EAAE,KAAK,SAAS,CAAC,WAAW,EAAE,EAAE,CAAC;oBACpF,MAAM,IAAI,KAAK,CACb,gDAAgD;wBAC9C,uEAAuE;wBACvE,iBAAiB,gBAAgB,IAAI,SAAS,kBAAkB,SAAS,GAAG,CAC/E,CAAC;gBACJ,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,SAAS,CAAC,kBAAyB,CAAC,CAAC;gBACrF,IAAI,aAAa,CAAC,WAAW,EAAE,KAAK,SAAS,CAAC,WAAW,EAAE,EAAE,CAAC;oBAC5D,MAAM,IAAI,KAAK,CACb,4BAA4B,aAAa,+BAA+B,SAAS,IAAI,CACtF,CAAC;gBACJ,CAAC;YACH,CAAC;YAED,MAAM,WAAW,GAAa,EAAE,CAAC;YACjC,IAAI,UAAU;gBAAE,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAC7C,uDAAuD;YACvD,WAAW,CAAC,IAAI,CAAC,yBAAyB,EAAE,kBAAkB,EAAE,oCAAoC,EAAE,6BAA6B,CAAC,CAAC;YACrI,MAAM,cAAc,GAAG,CAAC,aAAa,IAAI,GAAG,EAAE,GAAG,CAAC,CAAC;YAEnD,6EAA6E;YAC7E,IAAI,sBAAsB,EAAE,CAAC;gBAC3B,MAAM,KAAK,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,CACvC,cAAc,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,CACzC,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;oBACpB,IAAI,CAAC;wBACH,MAAM,QAAQ,GAAG,MAAM,CAAC,gBAAgB,CAAC,UAAU,CAAC;4BAClD,IAAI,EAAE,EAAE;4BACR,OAAO,EAAE,EAAE;4BACX,OAAO;4BACP,iBAAiB;yBAClB,CAAC,CAAC;wBACH,OAAO,QAAQ,CAAC,WAAW,EAAE,KAAK,MAAM,CAAC,sBAAsB,CAAC,CAAC,WAAW,EAAE,CAAC;oBACjF,CAAC;oBAAC,MAAM,CAAC;wBACP,OAAO,KAAK,CAAC;oBACf,CAAC;gBACH,CAAC,CAAC,CAAC;gBACH,IAAI,KAAK,EAAE,CAAC;oBACV,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;oBAC9B,cAAc,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACnC,CAAC;YACH,CAAC;YAED,4EAA4E;YAC5E,MAAM,QAAQ,GAAqD,EAAE,CAAC;YACtE,KAAK,MAAM,EAAE,IAAI,WAAW,EAAE,CAAC;gBAC7B,KAAK,MAAM,EAAE,IAAI,cAAc,EAAE,CAAC;oBAChC,QAAQ,CAAC,IAAI,CACX,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,4BAA4B,CAAC;wBAC/C,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC;wBACxB,SAAS;wBACT,KAAK;wBACL,QAAQ,EAAE,MAAM,CAAC,aAAa,CAAC;wBAC/B,OAAO;wBACP,iBAAiB;wBACjB,UAAU,EAAE,EAAE;wBACd,aAAa,EAAE,EAAE;qBAClB,CAAC,CACH,CAAC;oBACF,QAAQ,CAAC,IAAI,CACX,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,mCAAmC,CAAC;wBACtD,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC;wBACxB,SAAS;wBACT,QAAQ,EAAE,MAAM,CAAC,aAAa,CAAC;wBAC/B,OAAO;wBACP,iBAAiB;wBACjB,UAAU,EAAE,EAAE;wBACd,aAAa,EAAE,EAAE;qBAClB,CAAC,CACH,CAAC;gBACJ,CAAC;YACH,CAAC;YAED,IAAI,SAAkB,CAAC;YACvB,MAAM,kBAAkB,GAAG,KAAK,EAAE,UAAiC,EAAE,EAAE;gBACrE,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;oBACzB,IAAI,CAAC;wBACH,MAAM,GAAG,GACP,UAAU,KAAK,WAAW;4BACxB,CAAC,CAAC,kBAAkB;gCAClB,CAAC,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,iBAAiB,CACzC,kBAAyB,EACzB,CAAC,CAAC,MAAM,EACR,CAAC,CAAC,KAAK,EACP,CAAC,CAAC,OAAO,CACV;gCACH,CAAC,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,CAAC;4BACzE,CAAC,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;wBAE5E,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,sBAAsB,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;wBAChG,MAAM,QAAQ,GACZ,UAAU,KAAK,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,CAAC,gBAAgB,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;wBAChG,IAAI,CAAC,QAAQ,IAAI,SAAS,CAAC,WAAW,EAAE,KAAK,QAAQ,EAAE,CAAC;4BACtD,MAAM,IAAI,KAAK,CACb,wCAAwC,UAAU,wBAAwB,SAAS,iBAAiB,QAAQ,IAAI,SAAS,EAAE,CAC5H,CAAC;wBACJ,CAAC;wBAED,MAAM,sBAAsB,CAAC,GAAG,CAAC,CAAC;wBAClC,SAAS,GAAG,GAAG,CAAC;wBAChB,OAAO;oBACT,CAAC;oBAAC,OAAO,CAAC,EAAE,CAAC;wBACX,SAAS,GAAG,CAAC,CAAC;oBAChB,CAAC;gBACH,CAAC;YACH,CAAC,CAAC;YAEF,4CAA4C;YAC5C,MAAM,kBAAkB,CAAC,WAAW,CAAC,CAAC;YAEtC,6FAA6F;YAC7F,IAAI,CAAC,SAAS,IAAI,gBAAgB,EAAE,CAAC;gBACnC,MAAM,kBAAkB,CAAC,OAAO,CAAC,CAAC;YACpC,CAAC;YAED,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,MAAM,GAAG,GAAG,SAAS,YAAY,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;gBAC/E,MAAM,IAAI,KAAK,CAAC,yEAAyE,GAAG,EAAE,CAAC,CAAC;YAClG,CAAC;QACH,CAAC;QAED,mEAAmE;QACnE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,gBAAgB,CACvD,gBAAgB,EAChB,gBAAgB,EAChB,EAAE,EACF,MAAM,CAAC,OAAO,CAAC,EACf,SAAS,EACT,MAAM,CAAC,aAAa,CAAC,EACrB,SAAS,CACV,CAAC;QAEF,iCAAiC;QACjC,IAAI,CAAC,gBAAgB,CAAC,aAAa,GAAG,SAAS,CAAC;QAChD,IAAI,CAAC,gBAAgB,CAAC,aAAa,GAAG,OAAO,CAAC;QAC9C,IAAI,CAAC,gBAAgB,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;QAEhE,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,SAAS,CAAC,MAAe;QACvB,IAAI,CAAC,gBAAgB,CAAC,MAAM,GAAG,MAAM,CAAC;QACtC,IAAI,CAAC,gBAAgB,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;QAChE,OAAO,IAAI,CAAC;IACd,CAAC;IAED,cAAc,CAAC,WAAoB;QACjC,IAAI,CAAC,gBAAgB,CAAC,WAAW,GAAG,WAAW,CAAC;QAChD,IAAI,CAAC,gBAAgB,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;QAChE,OAAO,IAAI,CAAC;IACd,CAAC;IAED,QAAQ,CACN,aAAsB,KAAK,EAC3B,iBAA0B,KAAK,EAC/B,iBAA0B,KAAK;QAE/B,MAAM,WAAW,GAA4B,EAAE,CAAC;QAChD,IAAI,UAAU;YAAE,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;QACxD,IAAI,cAAc;YAAE,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC;QACjE,IAAI,cAAc;YAAE,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC;QAEjE,IAAI,CAAC,gBAAgB,CAAC,WAAW,GAAG,WAAW,CAAC;QAChD,IAAI,CAAC,gBAAgB,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;QAChE,OAAO,IAAI,CAAC;IACd,CAAC;IAED,WAAW,CAAC,EAA2B;QACrC,kCAAkC;QAClC,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;YAClC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC/B,CAAC;QAED,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;QAClD,IAAI,CAAC,gBAAgB,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;QAChE,OAAO,IAAI,CAAC;IACd,CAAC;IAED,WAAW;QACT,OAAO,EAAE,GAAG,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,CAAC;IAC/C,CAAC;IAED,WAAW,CAAC,GAAW;QACrB,IAAI,GAAG,IAAI,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,CAAC;YAC1C,OAAO,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;YAC3C,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAChC,IAAI,CAAC,gBAAgB,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;QAClE,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,mBAAmB;QACjB,OAAO,IAAI,CAAC,gBAAgB,CAAC;IAC/B,CAAC;IAED;;OAEG;IACH,UAAU,CAAC,IAAa,EAAE,WAAoB,EAAE,KAAW;QACzD,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACvB,IAAI,CAAC,gBAAgB,CAAC,IAAI,GAAG,IAAI,CAAC;QACpC,CAAC;QACD,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YAC9B,IAAI,CAAC,gBAAgB,CAAC,WAAW,GAAG,WAAW,CAAC;QAClD,CAAC;QACD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,IAAI,CAAC,gBAAgB,CAAC,KAAK,GAAG,KAAK,CAAC;QACtC,CAAC;QAED,IAAI,CAAC,gBAAgB,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;QAChE,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,YAAY;QAChB,sBAAsB;QACtB,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,CAAC;YACtE,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAC;QAC9E,CAAC;QAED,IAAI,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC;YAClC,mEAAmE;YACnE,8CAA8C;YAC9C,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;YACzC,MAAM,uBAAuB,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,mBAAmB,EAAE,CAAC,UAAU,EAAE,CAAC;YAElF,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,UAAW,CAAC,mBAAmB,CAC5D,IAAI,CAAC,gBAAgB,EACrB,OAAO,EACP,uBAAuB,CACxB,CAAC;YAEF,sCAAsC;YACtC,kEAAkE;YAClE,IAAI,IAAI,CAAC,cAAc,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;gBACjC,IAAI,CAAC;oBACH,MAAM,IAAI,CAAC,sBAAsB,EAAE,CAAC;gBACtC,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,uEAAuE;gBACzE,CAAC;YACH,CAAC;YAED,4BAA4B;YAC5B,MAAM,EAAE,OAAO,EAAE,GAAG,YAAY,CAAC,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;YAEhE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,gBAAgB,CACvD,IAAI,CAAC,GAAG,CAAC,mBAAmB,EAAE,EAC9B,aAAa,EACb,EAAE,EACF,MAAM,CAAC,OAAO,CAAC,EACf,UAAU,OAAO,EAAE,CACpB,CAAC;YAEF,uEAAuE;YACvE,0EAA0E;YAC1E,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,kBAAkB,CAAC,MAAM,EAAE,QAAQ,CAAC,gBAAgB,CAAC,CAAC;YAClF,CAAC;YAAC,MAAM,CAAC;gBACP,uEAAuE;YACzE,CAAC;YAED,oBAAoB;YACpB,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,aAAa,CAAC;YAChD,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,WAAW,CAAC;YAC3C,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC;YAE5B,IAAI,CAAC,gBAAgB,CAAC,QAAQ,GAAG,UAAU,OAAO,EAAE,CAAC;YACrD,OAAO,IAAI,CAAC,gBAAgB,CAAC;QAC/B,CAAC;aAAM,CAAC;YACN,0BAA0B;YAC1B,wCAAwC;YACxC,MAAM,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAEjC,yBAAyB;YACzB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;YACzC,MAAM,uBAAuB,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,mBAAmB,EAAE,CAAC,UAAU,EAAE,CAAC;YAClF,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,UAAW,CAAC,mBAAmB,CAC5D,IAAI,CAAC,gBAAgB,EACrB,OAAO,EACP,uBAAuB,CACxB,CAAC;YAEF,iCAAiC;YACjC,MAAM,EAAE,OAAO,EAAE,GAAG,YAAY,CAAC,IAAI,CAAC,gBAAgB,CAAC,OAAQ,CAAC,CAAC;YACjE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,gBAAgB,CACvD,IAAI,CAAC,GAAG,CAAC,mBAAmB,EAAE,EAC9B,aAAa,EACb,EAAE,EACF,MAAM,CAAC,OAAO,CAAC,EACf,UAAU,OAAO,EAAE,CACpB,CAAC;YAEF,uCAAuC;YACvC,MAAM,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;YAErD,oBAAoB;YACpB,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,aAAa,CAAC;YAChD,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,WAAW,CAAC;YAC3C,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC;YAE5B,IAAI,CAAC,gBAAgB,CAAC,QAAQ,GAAG,UAAU,OAAO,EAAE,CAAC;YACrD,OAAO,IAAI,CAAC,gBAAgB,CAAC;QAC/B,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,YAAY,CAAC,QAAgB;QACjC,sBAAsB;QACtB,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,CAAC;YACtE,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAC;QAC9E,CAAC;QAED,IAAI,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC;YAClC,8CAA8C;YAC9C,MAAM,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;YACjC,OAAO,IAAI,CAAC,gBAAgB,CAAC;QAC/B,CAAC;aAAM,CAAC;YACN,0BAA0B;YAC1B,OAAO,MAAM,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;QAC/C,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,WAAW,CAAC,QAAgB;QAChC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC;YACnC,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;QACjE,CAAC;QAED,MAAM,EAAE,OAAO,EAAE,GAAG,YAAY,CAAC,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;QAChE,MAAM,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,gBAAgB,CACxC,IAAI,CAAC,GAAG,CAAC,mBAAmB,EAAE,EAC9B,aAAa,EACb,EAAE,EACF,MAAM,CAAC,OAAO,CAAC,EACf,QAAQ,CACT,CAAC;QAEF,IAAI,CAAC,gBAAgB,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAC1C,IAAI,CAAC,gBAAgB,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;IAClE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,QAAQ,CAAC,QAAiB;QAC9B,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC;YACnC,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;QAC9D,CAAC;QAED,MAAM,EAAE,OAAO,EAAE,GAAG,YAAY,CAAC,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;QAChE,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC;QACjD,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;QACzC,CAAC;QAED,kDAAkD;QAClD,MAAM,iBAAiB,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC;QACjD,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,SAAS,CAAC,iBAAiB,CAAC,EAAE,CAAC;YACtD,MAAM,IAAI,KAAK,CAAC,oBAAoB,QAAQ,EAAE,CAAC,CAAC;QAClD,CAAC;QAED,gEAAgE;QAChE,IAAI,iBAAiB,KAAK,4CAA4C,EAAE,CAAC;YACvE,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;QAC3D,CAAC;QAED,6BAA6B;QAC7B,MAAM,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,CAAC;QAEjF,oCAAoC;QACpC,IAAI,eAAe,CAAC,WAAW,EAAE,KAAK,YAAY,CAAC,WAAW,EAAE,EAAE,CAAC;YACjE,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;QACvD,CAAC;QAED,MAAM,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,mBAAmB,EAAE,CAAC;QACxD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,gBAAgB,CACvD,gBAAgB,EAChB,cAAc,EACd,EAAE,EACF,YAAY,EACZ,eAAe,EACf,MAAM,CAAC,OAAO,CAAC,CAChB,CAAC;QAEF,OAAO;YACL,MAAM;YACN,IAAI,EAAE,YAAY;YAClB,EAAE,EAAE,eAAe;YACnB,OAAO,EAAE,IAAI,CAAC,gBAAgB,CAAC,OAAO;SACvC,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,mBAAmB;QAC/B,oCAAoC;QACpC,MAAM,eAAe,GAAG,IAAI,CAAC,+BAA+B,EAAE,CAAC;QAE/D,2BAA2B;QAC3B,MAAM,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,mBAAmB,EAAE,CAAC;QAExD,qDAAqD;QACrD,wCAAwC;QACxC,IAAI,MAAc,CAAC;QACnB,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC/B,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,gBAAgB,CACjD,gBAAgB,EAChB,UAAU,EACV,EAAE,EAAE,sBAAsB;YAC1B,EAAE,EAAE,iBAAiB;YACrB,eAAe,CAChB,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,gBAAgB,CACjD,gBAAgB,EAChB,UAAU,EACV,EAAE,CAAC,sBAAsB;YACzB,kCAAkC;aACnC,CAAC;QACJ,CAAC;QAED,uBAAuB;QACvB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;QAErE,+BAA+B;QAC/B,MAAM,OAAO,GAAG,IAAI,CAAC,0BAA0B,CAAC,OAAO,CAAC,CAAC;QAEzD,2BAA2B;QAC3B,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;QACzC,IAAI,CAAC,gBAAgB,CAAC,OAAO,GAAG,GAAG,OAAO,IAAI,OAAO,EAAE,CAAC;QACxD,IAAI,CAAC,gBAAgB,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;IAClE,CAAC;IAEO,KAAK,CAAC,gBAAgB,CAAC,QAAgB;QAC7C,oCAAoC;QACpC,MAAM,eAAe,GAAG,IAAI,CAAC,+BAA+B,EAAE,CAAC;QAE/D,iCAAiC;QACjC,MAAM,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,mBAAmB,EAAE,CAAC;QACxD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,gBAAgB,CACvD,gBAAgB,EAChB,UAAU,EACV,EAAE,EACF,QAAQ,EACR,eAAe,CAChB,CAAC;QAEF,uBAAuB;QACvB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;QAErE,+BAA+B;QAC/B,MAAM,OAAO,GAAG,IAAI,CAAC,0BAA0B,CAAC,OAAO,CAAC,CAAC;QAEzD,2BAA2B;QAC3B,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;QACzC,IAAI,CAAC,gBAAgB,CAAC,OAAO,GAAG,GAAG,OAAO,IAAI,OAAO,EAAE,CAAC;QACxD,IAAI,CAAC,gBAAgB,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAC1C,IAAI,CAAC,gBAAgB,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;QAEhE,OAAO,IAAI,CAAC,gBAAgB,CAAC;IAC/B,CAAC;IAEO,KAAK,CAAC,sBAAsB;QAClC,MAAM,eAAe,GAAG,IAAI,CAAC,+BAA+B,EAAE,CAAC;QAC/D,MAAM,EAAE,OAAO,EAAE,GAAG,YAAY,CAAC,IAAI,CAAC,gBAAgB,CAAC,OAAQ,CAAC,CAAC;QACjE,MAAM,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,mBAAmB,EAAE,CAAC;QAExD,+CAA+C;QAC/C,2DAA2D;QAC3D,KAAK,MAAM,KAAK,IAAI,eAAe,EAAE,CAAC;YACpC,IAAI,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC;gBAC/C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,gBAAgB,CACvD,gBAAgB,EAChB,aAAa,EACb,EAAE,EACF,MAAM,CAAC,OAAO,CAAC,EACf,KAAK,CAAC,WAAW,EACjB,KAAK,CAAC,aAAa,CACpB,CAAC;gBAEF,gDAAgD;gBAChD,0FAA0F;gBAC1F,IAAI,CAAC;oBACH,MAAM,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,kBAAkB,CAAC,MAAM,EAAE,QAAQ,CAAC,gBAAgB,CAAC,CAAC;gBAClF,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,uEAAuE;gBACzE,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAEO,+BAA+B;QACrC,MAAM,OAAO,GAA8D,EAAE,CAAC;QAE9E,wFAAwF;QACxF,4EAA4E;QAC5E,gDAAgD;QAEhD,0BAA0B;QAC1B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC1E,mDAAmD;YACnD,IAAI,GAAG,KAAK,aAAa,EAAE,CAAC;gBAC1B,SAAS;YACX,CAAC;YAED,IAAI,UAAsB,CAAC;YAC3B,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gBAC9B,UAAU,GAAG,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAC/C,CAAC;iBAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gBACrC,UAAU,GAAG,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;YAC1D,CAAC;iBAAM,CAAC;gBACN,UAAU,GAAG,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;YAC/D,CAAC;YAED,OAAO,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,GAAG,EAAE,aAAa,EAAE,UAAU,EAAE,CAAC,CAAC;QAChE,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAEO,0BAA0B,CAAC,OAA0C;QAC3E,qDAAqD;QACrD,MAAM,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,mBAAmB,EAAE,CAAC;QACxD,MAAM,kBAAkB,GAAG,oEAAoE,CAAC,CAAC,oCAAoC;QAErI,6BAA6B;QAC7B,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,IAAI,IAAI,EAAE,EAAE,CAAC;YACrC,IAAI,CAAC;gBACH,kCAAkC;gBAClC,MAAM,MAAM,GAAG,gBAAgB,CAAC,SAAS,CAAC,QAAQ,CAAC;oBACjD,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAA4B,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE;oBACtJ,IAAI,EAAE,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC;iBACjF,CAAC,CAAC;gBACH,IAAI,MAAM,IAAI,MAAM,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;oBAC3C,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;gBAChD,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,0DAA0D;gBAC1D,IAAI,CAAC;oBACH,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC3D,qFAAqF;oBACrF,IAAI,MAAM,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;wBACvB,MAAM,MAAM,GAAG,OAAO,MAAM,CAAC,CAAC,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;wBAChF,IAAI,MAAM,KAAK,kBAAkB,IAAI,MAAM,CAAC,WAAW,EAAE,KAAK,kBAAkB,CAAC,WAAW,EAAE,EAAE,CAAC;4BAC/F,gCAAgC;4BAChC,MAAM,UAAU,GAAG,OAAO,MAAM,CAAC,CAAC,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;4BACpF,0CAA0C;4BAC1C,MAAM,UAAU,GAAG,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC;4BAClF,OAAO,MAAM,CAAC,IAAI,GAAG,UAAU,CAAC,CAAC;wBACnC,CAAC;oBACH,CAAC;gBACH,CAAC;gBAAC,MAAM,CAAC;oBACP,qBAAqB;gBACvB,CAAC;YACH,CAAC;QACH,CAAC;QAED,4DAA4D;QAC5D,6FAA6F;QAC7F,8CAA8C;QAE9C,MAAM,IAAI,KAAK,CAAC,6FAA6F,CAAC,CAAC;IACjH,CAAC;CACF"}
1
+ {"version":3,"file":"agent.js","sourceRoot":"","sources":["../../src/core/agent.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,129 @@
1
+ import type { Address } from '../models/types.js';
2
+ export type TransactionOptions = {
3
+ gasLimit?: bigint;
4
+ gasPrice?: bigint;
5
+ maxFeePerGas?: bigint;
6
+ maxPriorityFeePerGas?: bigint;
7
+ };
8
+ export type Hex = `0x${string}`;
9
+ export type ChainLog = {
10
+ address: Address;
11
+ data: Hex;
12
+ topics: Hex[];
13
+ blockNumber?: bigint;
14
+ transactionHash?: Hex;
15
+ logIndex?: number;
16
+ };
17
+ export type ChainReceipt = {
18
+ transactionHash: Hex;
19
+ blockNumber: bigint;
20
+ status: 'success' | 'reverted';
21
+ logs: ChainLog[];
22
+ };
23
+ /**
24
+ * Minimal EIP-1193 provider shape (wallet/injected provider).
25
+ */
26
+ export type EIP1193Provider = {
27
+ request(args: {
28
+ method: string;
29
+ params?: unknown[] | Record<string, unknown>;
30
+ }): Promise<unknown>;
31
+ };
32
+ /**
33
+ * Internal on-chain abstraction used across the SDK.
34
+ *
35
+ * This deliberately avoids leaking web3 library types (viem) into most of the codebase.
36
+ */
37
+ export interface ChainClient {
38
+ /**
39
+ * Configured chain id for this SDK instance.
40
+ */
41
+ readonly chainId: number;
42
+ /**
43
+ * RPC URL used for reads.
44
+ */
45
+ readonly rpcUrl: string;
46
+ /**
47
+ * Returns the active account address (if available) without prompting the user.
48
+ */
49
+ getAddress(): Promise<Address | undefined>;
50
+ /**
51
+ * Ensures an active account exists; may prompt via wallet provider if configured.
52
+ */
53
+ ensureAddress(): Promise<Address>;
54
+ /**
55
+ * Read-only contract call.
56
+ */
57
+ readContract<T = unknown>(args: {
58
+ address: Address;
59
+ abi: readonly unknown[];
60
+ functionName: string;
61
+ args?: readonly unknown[];
62
+ }): Promise<T>;
63
+ /**
64
+ * Write contract call (sends a transaction).
65
+ * Returns transaction hash.
66
+ */
67
+ writeContract(args: {
68
+ address: Address;
69
+ abi: readonly unknown[];
70
+ functionName: string;
71
+ args?: readonly unknown[];
72
+ options?: TransactionOptions;
73
+ }): Promise<`0x${string}`>;
74
+ /**
75
+ * Send a raw transaction to a contract (pre-encoded data).
76
+ * Returns transaction hash.
77
+ */
78
+ sendTransaction(args: {
79
+ to: Address;
80
+ data: `0x${string}`;
81
+ options?: TransactionOptions;
82
+ }): Promise<`0x${string}`>;
83
+ /**
84
+ * Wait for a transaction to be mined.
85
+ */
86
+ waitForTransaction(args: {
87
+ hash: Hex;
88
+ timeoutMs?: number;
89
+ }): Promise<ChainReceipt>;
90
+ /**
91
+ * Fetch logs from the public RPC.
92
+ */
93
+ getEventLogs(args: {
94
+ address: Address;
95
+ abi: readonly unknown[];
96
+ eventName: string;
97
+ /**
98
+ * Event args filter (supports indexed args). Leave undefined to fetch all.
99
+ */
100
+ eventArgs?: Record<string, unknown>;
101
+ fromBlock?: bigint;
102
+ toBlock?: bigint;
103
+ }): Promise<ChainLog[]>;
104
+ /**
105
+ * Chain helpers.
106
+ */
107
+ getBlockNumber(): Promise<bigint>;
108
+ getBlockTimestamp(blockTag?: 'latest'): Promise<bigint>;
109
+ /**
110
+ * Crypto helpers (used throughout the SDK for hashes/signature validation).
111
+ */
112
+ keccak256Utf8(message: string): `0x${string}`;
113
+ isAddress(address: string): boolean;
114
+ toChecksumAddress(address: string): Address;
115
+ /**
116
+ * Signing helpers (available only when a signer is configured).
117
+ */
118
+ signMessage(message: string | Uint8Array): Promise<`0x${string}`>;
119
+ signTypedData(args: {
120
+ domain: Record<string, unknown>;
121
+ types: Record<string, Array<{
122
+ name: string;
123
+ type: string;
124
+ }>>;
125
+ primaryType: string;
126
+ message: Record<string, unknown>;
127
+ }): Promise<`0x${string}`>;
128
+ }
129
+ //# sourceMappingURL=chain-client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chain-client.d.ts","sourceRoot":"","sources":["../../src/core/chain-client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=chain-client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chain-client.js","sourceRoot":"","sources":["../../src/core/chain-client.ts"],"names":[],"mappings":""}
@@ -1,24 +1,23 @@
1
1
  /**
2
2
  * Feedback management system for Agent0 SDK
3
3
  */
4
- import { ethers } from 'ethers';
5
4
  import type { Feedback, SearchFeedbackParams, FeedbackFileInput } from '../models/interfaces.js';
6
5
  import type { AgentId, Address, URI, IdemKey } from '../models/types.js';
7
- import type { Web3Client } from './web3-client.js';
6
+ import type { ChainClient } from './chain-client.js';
8
7
  import type { IPFSClient } from './ipfs-client.js';
9
8
  import type { SubgraphClient } from './subgraph-client.js';
10
9
  /**
11
10
  * Manages feedback operations for the Agent0 SDK
12
11
  */
13
12
  export declare class FeedbackManager {
14
- private web3Client;
13
+ private chainClient;
15
14
  private ipfsClient?;
16
- private reputationRegistry?;
17
- private identityRegistry?;
15
+ private reputationRegistryAddress?;
16
+ private identityRegistryAddress?;
18
17
  private subgraphClient?;
19
18
  private getSubgraphClientForChain?;
20
19
  private defaultChainId?;
21
- constructor(web3Client: Web3Client, ipfsClient?: IPFSClient | undefined, reputationRegistry?: ethers.Contract | undefined, identityRegistry?: ethers.Contract | undefined, subgraphClient?: SubgraphClient | undefined);
20
+ constructor(chainClient: ChainClient, ipfsClient?: IPFSClient | undefined, reputationRegistryAddress?: Address | undefined, identityRegistryAddress?: Address | undefined, subgraphClient?: SubgraphClient | undefined);
22
21
  /**
23
22
  * Set function to get subgraph client for a specific chain (for multi-chain support)
24
23
  */
@@ -26,11 +25,11 @@ export declare class FeedbackManager {
26
25
  /**
27
26
  * Set reputation registry contract (for lazy initialization)
28
27
  */
29
- setReputationRegistry(registry: ethers.Contract): void;
28
+ setReputationRegistryAddress(address: Address): void;
30
29
  /**
31
30
  * Set identity registry contract (for lazy initialization)
32
31
  */
33
- setIdentityRegistry(registry: ethers.Contract): void;
32
+ setIdentityRegistryAddress(address: Address): void;
34
33
  /**
35
34
  * Prepare an off-chain feedback file.
36
35
  *
@@ -1 +1 @@
1
- {"version":3,"file":"feedback-manager.d.ts","sourceRoot":"","sources":["../../src/core/feedback-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"feedback-manager.d.ts","sourceRoot":"","sources":["../../src/core/feedback-manager.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EACV,QAAQ,EACR,oBAAoB,EAEpB,iBAAiB,EAClB,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,EAAa,OAAO,EAAE,MAAM,oBAAoB,CAAC;AACpF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAM3D;;GAEG;AACH,qBAAa,eAAe;IAKxB,OAAO,CAAC,WAAW;IACnB,OAAO,CAAC,UAAU,CAAC;IACnB,OAAO,CAAC,yBAAyB,CAAC;IAClC,OAAO,CAAC,uBAAuB,CAAC;IAChC,OAAO,CAAC,cAAc,CAAC;IARzB,OAAO,CAAC,yBAAyB,CAAC,CAAmD;IACrF,OAAO,CAAC,cAAc,CAAC,CAAS;gBAGtB,WAAW,EAAE,WAAW,EACxB,UAAU,CAAC,EAAE,UAAU,YAAA,EACvB,yBAAyB,CAAC,EAAE,OAAO,YAAA,EACnC,uBAAuB,CAAC,EAAE,OAAO,YAAA,EACjC,cAAc,CAAC,EAAE,cAAc,YAAA;IAGzC;;OAEG;IACH,uBAAuB,CACrB,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,KAAK,cAAc,GAAG,SAAS,EACxD,cAAc,EAAE,MAAM,GACrB,IAAI;IAKP;;OAEG;IACH,4BAA4B,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAIpD;;OAEG;IACH,0BAA0B,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAIlD;;;;;OAKG;IACH,mBAAmB,CACjB,KAAK,EAAE,iBAAiB,EACxB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC9B,iBAAiB;IAsBpB;;OAEG;IACG,YAAY,CAChB,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,MAAM,EACb,IAAI,CAAC,EAAE,MAAM,EACb,IAAI,CAAC,EAAE,MAAM,EACb,QAAQ,CAAC,EAAE,MAAM,EACjB,YAAY,CAAC,EAAE,iBAAiB,EAChC,IAAI,CAAC,EAAE,OAAO,GACb,OAAO,CAAC,QAAQ,CAAC;IAkKpB;;;OAGG;IACG,WAAW,CACf,OAAO,EAAE,OAAO,EAChB,aAAa,EAAE,OAAO,EACtB,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,QAAQ,CAAC;IAIpB;;OAEG;YACW,0BAA0B;IAkGxC;;;;OAIG;IACG,cAAc,CAAC,MAAM,EAAE,oBAAoB,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAoGvE;;OAEG;IACH,OAAO,CAAC,2BAA2B;IA4EnC;;;OAGG;IACH,OAAO,CAAC,iBAAiB;IAczB;;OAEG;IACG,cAAc,CAClB,OAAO,EAAE,OAAO,EAChB,aAAa,EAAE,OAAO,EACtB,aAAa,EAAE,MAAM,EACrB,WAAW,EAAE,GAAG,EAChB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,MAAM,CAAC;IAqBlB;;OAEG;IACG,cAAc,CAAC,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAyB9E;;;OAGG;IACG,oBAAoB,CACxB,OAAO,EAAE,OAAO,EAChB,IAAI,CAAC,EAAE,MAAM,EACb,IAAI,CAAC,EAAE,MAAM,GACZ,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE,CAAC;CAkIpD"}
@@ -2,15 +2,17 @@
2
2
  * Feedback management system for Agent0 SDK
3
3
  */
4
4
  import { parseAgentId, formatAgentId, formatFeedbackId, parseFeedbackId } from '../utils/id-format.js';
5
+ import { REPUTATION_REGISTRY_ABI } from './contracts.js';
6
+ import { decodeEventLog } from 'viem';
5
7
  /**
6
8
  * Manages feedback operations for the Agent0 SDK
7
9
  */
8
10
  export class FeedbackManager {
9
- constructor(web3Client, ipfsClient, reputationRegistry, identityRegistry, subgraphClient) {
10
- this.web3Client = web3Client;
11
+ constructor(chainClient, ipfsClient, reputationRegistryAddress, identityRegistryAddress, subgraphClient) {
12
+ this.chainClient = chainClient;
11
13
  this.ipfsClient = ipfsClient;
12
- this.reputationRegistry = reputationRegistry;
13
- this.identityRegistry = identityRegistry;
14
+ this.reputationRegistryAddress = reputationRegistryAddress;
15
+ this.identityRegistryAddress = identityRegistryAddress;
14
16
  this.subgraphClient = subgraphClient;
15
17
  }
16
18
  /**
@@ -23,14 +25,14 @@ export class FeedbackManager {
23
25
  /**
24
26
  * Set reputation registry contract (for lazy initialization)
25
27
  */
26
- setReputationRegistry(registry) {
27
- this.reputationRegistry = registry;
28
+ setReputationRegistryAddress(address) {
29
+ this.reputationRegistryAddress = address;
28
30
  }
29
31
  /**
30
32
  * Set identity registry contract (for lazy initialization)
31
33
  */
32
- setIdentityRegistry(registry) {
33
- this.identityRegistry = registry;
34
+ setIdentityRegistryAddress(address) {
35
+ this.identityRegistryAddress = address;
34
36
  }
35
37
  /**
36
38
  * Prepare an off-chain feedback file.
@@ -62,25 +64,26 @@ export class FeedbackManager {
62
64
  // Parse agent ID
63
65
  const { tokenId, chainId: agentChainId } = parseAgentId(agentId);
64
66
  // Get client address (the one giving feedback)
65
- const clientAddress = this.web3Client.address;
66
- if (!clientAddress) {
67
- throw new Error('No signer available. Cannot give feedback without a wallet.');
68
- }
67
+ const clientAddress = await this.chainClient.ensureAddress();
69
68
  // Ensure the SDK/provider is configured for the same chain as the agentId we are targeting.
70
69
  // (giveFeedback is an on-chain tx, so we must settle on the agent's chain).
71
- const providerChainId = Number((await this.web3Client.provider.getNetwork()).chainId);
72
- if (providerChainId !== agentChainId) {
70
+ if (this.chainClient.chainId !== agentChainId) {
73
71
  throw new Error(`Chain mismatch for giveFeedback: agentId=${agentId} targets chainId=${agentChainId}, ` +
74
- `but the SDK provider is connected to chainId=${providerChainId}. ` +
72
+ `but the SDK is configured for chainId=${this.chainClient.chainId}. ` +
75
73
  `Initialize SDK with chainId=${agentChainId} and the correct rpcUrl.`);
76
74
  }
77
75
  // Get current feedback index for this client-agent pair
78
76
  let feedbackIndex;
79
77
  try {
80
- if (!this.reputationRegistry) {
78
+ if (!this.reputationRegistryAddress) {
81
79
  throw new Error('Reputation registry not available');
82
80
  }
83
- const lastIndex = await this.web3Client.callContract(this.reputationRegistry, 'getLastIndex', BigInt(tokenId), clientAddress);
81
+ const lastIndex = await this.chainClient.readContract({
82
+ address: this.reputationRegistryAddress,
83
+ abi: REPUTATION_REGISTRY_ABI,
84
+ functionName: 'getLastIndex',
85
+ args: [BigInt(tokenId), clientAddress],
86
+ });
84
87
  feedbackIndex = Number(lastIndex) + 1;
85
88
  }
86
89
  catch (error) {
@@ -101,9 +104,7 @@ export class FeedbackManager {
101
104
  try {
102
105
  // Build an ERC-8004 compliant off-chain feedback file:
103
106
  // include MUST fields from the spec + optional on-chain fields, then append rich off-chain fields.
104
- const identityRegistryAddress = this.identityRegistry
105
- ? this.identityRegistry.target
106
- : '0x0';
107
+ const identityRegistryAddress = this.identityRegistryAddress || '0x0000000000000000000000000000000000000000';
107
108
  const createdAt = typeof feedbackFile?.createdAt === 'string'
108
109
  ? feedbackFile.createdAt
109
110
  : new Date().toISOString();
@@ -125,7 +126,7 @@ export class FeedbackManager {
125
126
  feedbackUri = `ipfs://${cid}`;
126
127
  // Calculate hash of sorted JSON
127
128
  const sortedJson = JSON.stringify(fileForStorage, Object.keys(fileForStorage).sort());
128
- feedbackHash = this.web3Client.keccak256(sortedJson);
129
+ feedbackHash = this.chainClient.keccak256Utf8(sortedJson);
129
130
  }
130
131
  catch (error) {
131
132
  // Failed to store on IPFS - log error but continue without IPFS storage
@@ -140,13 +141,25 @@ export class FeedbackManager {
140
141
  throw new Error('feedbackFile provided, but no IPFS backend is configured (pinata/filecoinPin/node).');
141
142
  }
142
143
  // Submit to blockchain
143
- if (!this.reputationRegistry) {
144
+ if (!this.reputationRegistryAddress) {
144
145
  throw new Error('Reputation registry not available');
145
146
  }
146
147
  try {
147
- const txHash = await this.web3Client.transactContract(this.reputationRegistry, 'giveFeedback', {}, BigInt(tokenId), scoreOnChain, tag1OnChain, tag2OnChain, endpointOnChain, feedbackUri, feedbackHash);
148
- // Wait for transaction confirmation
149
- await this.web3Client.waitForTransaction(txHash);
148
+ const txHash = await this.chainClient.writeContract({
149
+ address: this.reputationRegistryAddress,
150
+ abi: REPUTATION_REGISTRY_ABI,
151
+ functionName: 'giveFeedback',
152
+ args: [
153
+ BigInt(tokenId),
154
+ scoreOnChain,
155
+ tag1OnChain,
156
+ tag2OnChain,
157
+ endpointOnChain,
158
+ feedbackUri,
159
+ feedbackHash,
160
+ ],
161
+ });
162
+ await this.chainClient.waitForTransaction({ hash: txHash });
150
163
  }
151
164
  catch (error) {
152
165
  const errorMessage = error instanceof Error ? error.message : String(error);
@@ -200,40 +213,60 @@ export class FeedbackManager {
200
213
  * Get feedback from blockchain
201
214
  */
202
215
  async _getFeedbackFromBlockchain(agentId, clientAddress, feedbackIndex) {
203
- if (!this.reputationRegistry) {
216
+ if (!this.reputationRegistryAddress) {
204
217
  throw new Error('Reputation registry not available');
205
218
  }
206
219
  const { tokenId } = parseAgentId(agentId);
207
220
  try {
208
- const [score, tag1, tag2, isRevoked] = await this.web3Client.callContract(this.reputationRegistry, 'readFeedback', BigInt(tokenId), clientAddress, BigInt(feedbackIndex));
221
+ const [score, tag1, tag2, isRevoked] = await this.chainClient.readContract({
222
+ address: this.reputationRegistryAddress,
223
+ abi: REPUTATION_REGISTRY_ABI,
224
+ functionName: 'readFeedback',
225
+ args: [BigInt(tokenId), clientAddress, BigInt(feedbackIndex)],
226
+ });
209
227
  const tags = [tag1, tag2].filter((t) => t && t !== '');
210
228
  // Best-effort: fetch endpoint + feedbackURI from the NewFeedback event (these are on-chain).
211
229
  let endpoint;
212
230
  let fileURI;
213
231
  try {
214
- const latestBlock = await this.web3Client.provider.getBlockNumber();
215
- const fromBlock = Math.max(0, latestBlock - 200000); // bounded scan to avoid huge log queries
216
- const filter = this.reputationRegistry.filters.NewFeedback(BigInt(tokenId), clientAddress, null);
217
- const logs = await this.reputationRegistry.queryFilter(filter, fromBlock, latestBlock);
218
- for (const ev of logs) {
219
- // ethers typing can be EventLog OR raw Log; parse defensively.
220
- let parsed;
232
+ const latestBlock = await this.chainClient.getBlockNumber();
233
+ const fromBlock = latestBlock > 200000n ? latestBlock - 200000n : 0n;
234
+ const logs = await this.chainClient.getEventLogs({
235
+ address: this.reputationRegistryAddress,
236
+ abi: REPUTATION_REGISTRY_ABI,
237
+ eventName: 'NewFeedback',
238
+ eventArgs: {
239
+ agentId: BigInt(tokenId),
240
+ clientAddress,
241
+ },
242
+ fromBlock,
243
+ toBlock: latestBlock,
244
+ });
245
+ for (const log of logs) {
221
246
  try {
222
- parsed = this.reputationRegistry.interface.parseLog(ev);
247
+ if (!log.topics || log.topics.length === 0)
248
+ continue;
249
+ const parsed = decodeEventLog({
250
+ abi: REPUTATION_REGISTRY_ABI,
251
+ data: log.data,
252
+ topics: log.topics,
253
+ });
254
+ if (parsed.eventName !== 'NewFeedback')
255
+ continue;
256
+ const idx = parsed.args?.feedbackIndex;
257
+ if (idx !== undefined && Number(idx) === feedbackIndex) {
258
+ const ep = parsed.args?.endpoint;
259
+ const uri = parsed.args?.feedbackURI ?? parsed.args?.feedbackUri;
260
+ if (typeof ep === 'string' && ep.length > 0)
261
+ endpoint = ep;
262
+ if (typeof uri === 'string' && uri.length > 0)
263
+ fileURI = uri;
264
+ break;
265
+ }
223
266
  }
224
267
  catch {
225
268
  // ignore
226
269
  }
227
- const idx = parsed?.args?.feedbackIndex;
228
- if (idx !== undefined && Number(idx) === feedbackIndex) {
229
- const ep = parsed?.args?.endpoint;
230
- const uri = parsed?.args?.feedbackURI ?? parsed?.args?.feedbackUri;
231
- if (typeof ep === 'string' && ep.length > 0)
232
- endpoint = ep;
233
- if (typeof uri === 'string' && uri.length > 0)
234
- fileURI = uri;
235
- break;
236
- }
237
270
  }
238
271
  }
239
272
  catch {
@@ -453,12 +486,17 @@ export class FeedbackManager {
453
486
  * Append response to feedback
454
487
  */
455
488
  async appendResponse(agentId, clientAddress, feedbackIndex, responseUri, responseHash) {
456
- if (!this.reputationRegistry) {
489
+ if (!this.reputationRegistryAddress) {
457
490
  throw new Error('Reputation registry not available');
458
491
  }
459
492
  const { tokenId } = parseAgentId(agentId);
460
493
  try {
461
- const txHash = await this.web3Client.transactContract(this.reputationRegistry, 'appendResponse', {}, BigInt(tokenId), clientAddress, BigInt(feedbackIndex), responseUri, responseHash);
494
+ const txHash = await this.chainClient.writeContract({
495
+ address: this.reputationRegistryAddress,
496
+ abi: REPUTATION_REGISTRY_ABI,
497
+ functionName: 'appendResponse',
498
+ args: [BigInt(tokenId), clientAddress, BigInt(feedbackIndex), responseUri, responseHash],
499
+ });
462
500
  return txHash;
463
501
  }
464
502
  catch (error) {
@@ -470,17 +508,19 @@ export class FeedbackManager {
470
508
  * Revoke feedback
471
509
  */
472
510
  async revokeFeedback(agentId, feedbackIndex) {
473
- if (!this.reputationRegistry) {
511
+ if (!this.reputationRegistryAddress) {
474
512
  throw new Error('Reputation registry not available');
475
513
  }
476
514
  const { tokenId } = parseAgentId(agentId);
477
515
  // Get client address (the one revoking - must be the reviewer)
478
- const clientAddress = this.web3Client.address;
479
- if (!clientAddress) {
480
- throw new Error('No signer available');
481
- }
516
+ await this.chainClient.ensureAddress();
482
517
  try {
483
- const txHash = await this.web3Client.transactContract(this.reputationRegistry, 'revokeFeedback', {}, BigInt(tokenId), BigInt(feedbackIndex));
518
+ const txHash = await this.chainClient.writeContract({
519
+ address: this.reputationRegistryAddress,
520
+ abi: REPUTATION_REGISTRY_ABI,
521
+ functionName: 'revokeFeedback',
522
+ args: [BigInt(tokenId), BigInt(feedbackIndex)],
523
+ });
484
524
  return txHash;
485
525
  }
486
526
  catch (error) {
@@ -572,7 +612,7 @@ export class FeedbackManager {
572
612
  }
573
613
  }
574
614
  // Fallback to blockchain query (requires matching chain)
575
- if (!this.reputationRegistry) {
615
+ if (!this.reputationRegistryAddress) {
576
616
  throw new Error('Reputation registry not available');
577
617
  }
578
618
  // For blockchain query, we need the chain to match the SDK's default chain
@@ -583,14 +623,21 @@ export class FeedbackManager {
583
623
  `Use subgraph-based summary instead.`);
584
624
  }
585
625
  try {
586
- // Get all clients who gave feedback
587
- const clientsResult = await this.web3Client.callContract(this.reputationRegistry, 'getClients', BigInt(tokenId));
588
- // ethers may return a read-only Result array; copy to a plain mutable array
589
- const clients = Array.isArray(clientsResult) ? Array.from(clientsResult) : [];
590
- if (clients.length === 0) {
626
+ const clients = await this.chainClient.readContract({
627
+ address: this.reputationRegistryAddress,
628
+ abi: REPUTATION_REGISTRY_ABI,
629
+ functionName: 'getClients',
630
+ args: [BigInt(tokenId)],
631
+ });
632
+ if (!clients || clients.length === 0) {
591
633
  return { count: 0, averageScore: 0 };
592
634
  }
593
- const [count, averageScore] = await this.web3Client.callContract(this.reputationRegistry, 'getSummary', BigInt(tokenId), clients, tag1 || '', tag2 || '');
635
+ const [count, averageScore] = await this.chainClient.readContract({
636
+ address: this.reputationRegistryAddress,
637
+ abi: REPUTATION_REGISTRY_ABI,
638
+ functionName: 'getSummary',
639
+ args: [BigInt(tokenId), clients, tag1 || '', tag2 || ''],
640
+ });
594
641
  return {
595
642
  count: Number(count),
596
643
  averageScore: Number(averageScore),