@bedolla/enriweb 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (35) hide show
  1. package/LICENSE +619 -0
  2. package/README.md +182 -0
  3. package/dist/client/EnriProxyClient.d.ts +271 -0
  4. package/dist/client/EnriProxyClient.d.ts.map +1 -0
  5. package/dist/client/EnriProxyClient.js +221 -0
  6. package/dist/client/EnriProxyClient.js.map +1 -0
  7. package/dist/index.d.ts +3 -0
  8. package/dist/index.d.ts.map +1 -0
  9. package/dist/index.js +148 -0
  10. package/dist/index.js.map +1 -0
  11. package/dist/package-info.d.ts +8 -0
  12. package/dist/package-info.d.ts.map +1 -0
  13. package/dist/package-info.js +28 -0
  14. package/dist/package-info.js.map +1 -0
  15. package/dist/server/EnriWebServer.d.ts +70 -0
  16. package/dist/server/EnriWebServer.d.ts.map +1 -0
  17. package/dist/server/EnriWebServer.js +218 -0
  18. package/dist/server/EnriWebServer.js.map +1 -0
  19. package/dist/shared/validation.d.ts +54 -0
  20. package/dist/shared/validation.d.ts.map +1 -0
  21. package/dist/shared/validation.js +112 -0
  22. package/dist/shared/validation.js.map +1 -0
  23. package/dist/tools/WebFetchTool.d.ts +232 -0
  24. package/dist/tools/WebFetchTool.d.ts.map +1 -0
  25. package/dist/tools/WebFetchTool.js +429 -0
  26. package/dist/tools/WebFetchTool.js.map +1 -0
  27. package/dist/tools/WebSearchRegistryVerifier.d.ts +323 -0
  28. package/dist/tools/WebSearchRegistryVerifier.d.ts.map +1 -0
  29. package/dist/tools/WebSearchRegistryVerifier.js +890 -0
  30. package/dist/tools/WebSearchRegistryVerifier.js.map +1 -0
  31. package/dist/tools/WebSearchTool.d.ts +132 -0
  32. package/dist/tools/WebSearchTool.d.ts.map +1 -0
  33. package/dist/tools/WebSearchTool.js +101 -0
  34. package/dist/tools/WebSearchTool.js.map +1 -0
  35. package/package.json +54 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WebFetchTool.js","sourceRoot":"","sources":["../../src/tools/WebFetchTool.ts"],"names":[],"mappings":"AAQA,OAAO,EACL,aAAa,EACb,oBAAoB,EACpB,YAAY,EACZ,WAAW,EACX,cAAc,EACf,MAAM,yBAAyB,CAAC;AAEjC;;;;;;;GAOG;AACH,MAAM,0BAA0B,GAAG,IAAI,CAAC;AA0IxC;;GAEG;AACH,MAAM,OAAO,YAAY;IACvB;;OAEG;IACK,MAAM,CAAU,gBAAgB,GAAsB;QAC5D,WAAW;QACX,WAAW;KACZ,CAAC;IAEF;;OAEG;IACK,MAAM,CAAU,eAAe,GAAsB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAEhF;;OAEG;IACc,IAAI,CAAmB;IAExC;;;;OAIG;IACH,YAAmB,IAAsB;QACvC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAED;;;;OAIG;IACI,kBAAkB;QACvB,OAAO,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC;IACnC,CAAC;IAED;;;;;OAKG;IACI,WAAW,CAAC,GAAY;QAC7B,MAAM,GAAG,GAAG,YAAY,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;QAE3C,MAAM,SAAS,GAAG,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;QAChD,MAAM,MAAM,GAAG,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;QAEhE,MAAM,MAAM,GAAG,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;QAC1C,MAAM,GAAG,GAAG,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAE7E,IAAI,CAAC,MAAM,IAAI,CAAC,GAAG,EAAE,CAAC;YACpB,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;QAClE,CAAC;QAED,MAAM,MAAM,GAAG,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC7C,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC;QAC/C,MAAM,cAAc,GAAG,WAAW,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,IAAI,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;QACtF,MAAM,aAAa,GAAG,WAAW,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,IAAI,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;QAEnF,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,GAAG,CAAC,EAAE,CAAC;YAC3C,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;QACjD,CAAC;QAED,MAAM,WAAW,GAAG,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC;QACxD,IAAI,UAAU,GAAuB,MAAM,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC;QAExE,IAAI,WAAW,KAAK,SAAS,IAAI,WAAW,GAAG,CAAC,EAAE,CAAC;YACjD,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;QAClD,CAAC;QAED,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;YAC7B,IAAI,UAAU,GAAG,CAAC,EAAE,CAAC;gBACnB,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;YAC7C,CAAC;YACD,IAAI,UAAU,KAAK,CAAC,EAAE,CAAC;gBACrB,UAAU,GAAG,SAAS,CAAC;YACzB,CAAC;QACH,CAAC;QAED,OAAO;YACL,GAAG;YACH,MAAM;YACN,MAAM;YACN,QAAQ;YACR,WAAW;YACX,UAAU;SACX,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,OAAO,CAAC,MAA0B;QAC7C,MAAM,SAAS,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,eAAe,CAAC,CAAC;QAC7E,MAAM,MAAM,GAAG,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,mBAAmB,CAAC,CAAC;QAElF,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QACrF,MAAM,iBAAiB,GACrB,OAAO,MAAM,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC;QAEpF,IAAI,OAAO,MAAM,CAAC,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;YAC9D,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC;gBACrC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE;gBAC5B,WAAW,EAAE,MAAM,CAAC,WAAW;gBAC/B,UAAU,EAAE,MAAM,CAAC,UAAU;gBAC7B,QAAQ,EAAE,iBAAiB;aAC5B,CAAC,CAAC;YAEH,MAAM,WAAW,GAAG,QAAQ,CAAC,GAAG,IAAI,MAAM,CAAC,GAAG,IAAI,UAAU,CAAC;YAC7D,OAAO;gBACL,OAAO,EAAE,QAAQ,CAAC,OAAO;gBACzB,MAAM,EAAE,QAAQ,CAAC,MAAM;gBACvB,YAAY,EAAE,QAAQ,CAAC,YAAY;gBACnC,SAAS,EAAE,QAAQ,CAAC,SAAS;gBAC7B,GAAG,EAAE,WAAW;gBAChB,MAAM,EAAE,QAAQ,CAAC,MAAM;gBACvB,YAAY,EAAE,QAAQ,CAAC,YAAY;gBACnC,WAAW,EAAE,QAAQ,CAAC,WAAW;gBACjC,WAAW,EAAE,QAAQ,CAAC,WAAW;gBACjC,QAAQ,EAAE,QAAQ,CAAC,QAAQ;gBAC3B,OAAO,EAAE,QAAQ,CAAC,OAAO;gBACzB,iBAAiB,EAAE,QAAQ,CAAC,iBAAiB;aAC9C,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;QAC3E,CAAC;QAED,MAAM,GAAG,GAAW,MAAM,CAAC,GAAG,CAAC;QAC/B,MAAM,SAAS,GAAkD;YAC/D,GAAG,MAAM;YACT,GAAG;SACJ,CAAC;QAEF,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,yBAAyB,CACpD,SAAS,EACT,MAAM,EACN,iBAAiB,CAClB,CAAC;QACF,IAAI,SAAS,EAAE,CAAC;YACd,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC;YACrC,GAAG;YACH,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,QAAQ,EAAE,iBAAiB;SAC5B,CAAC,CAAC;QAEH,OAAO;YACL,OAAO,EAAE,QAAQ,CAAC,OAAO;YACzB,MAAM,EAAE,QAAQ,CAAC,MAAM;YACvB,YAAY,EAAE,QAAQ,CAAC,YAAY;YACnC,SAAS,EAAE,QAAQ,CAAC,SAAS;YAC7B,GAAG,EAAE,QAAQ,CAAC,GAAG,IAAI,GAAG;YACxB,MAAM,EAAE,QAAQ,CAAC,MAAM;YACvB,WAAW,EAAE,QAAQ,CAAC,WAAW;YACjC,QAAQ,EAAE,QAAQ,CAAC,QAAQ;YAC3B,OAAO,EAAE,QAAQ,CAAC,OAAO;YACzB,iBAAiB,EAAE,QAAQ,CAAC,iBAAiB;SAC9C,CAAC;IACJ,CAAC;IAED;;;;;;;OAOG;IACK,KAAK,CAAC,yBAAyB,CACrC,MAAqD,EACrD,MAAuB,EACvB,QAAgB;QAEhB,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACzC,MAAM,WAAW,GAAG,IAAI,CAAC,sBAAsB,CAAC,YAAY,CAAC,CAAC;QAC9D,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,WAAW,GAAG,8BAA8B,WAAW,SAAS,CAAC;QACvE,MAAM,gBAAgB,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC;YAC7C,GAAG,EAAE,WAAW;YAChB,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC;SACpC,CAAC,CAAC;QAEH,IAAI,gBAAgB,CAAC,MAAM,GAAG,GAAG,IAAI,gBAAgB,CAAC,MAAM,IAAI,GAAG,EAAE,CAAC;YACpE,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;QACnE,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,IAAI,GAAG,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,WAAW,CAAC;QAChE,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC;QACvD,MAAM,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC;QAC/D,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC;QACvD,MAAM,aAAa,GAAG,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC;QACvE,MAAM,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC;QAE5D,IAAI,aAAa,GAAkB,IAAI,CAAC;QACxC,IAAI,aAAa,EAAE,CAAC;YAClB,aAAa,GAAG,IAAI,CAAC,yBAAyB,CAAC,aAAa,CAAC,CAAC;QAChE,CAAC;QAED,IAAI,UAAU,GAAkB,IAAI,CAAC;QACrC,IAAI,eAAe,GAAG,KAAK,CAAC;QAE5B,IAAI,aAAa,EAAE,CAAC;YAClB,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAClD,MAAM,EACN,aAAa,EACb,QAAQ,CACT,CAAC;YACF,IAAI,YAAY,EAAE,CAAC;gBACjB,UAAU,GAAG,YAAY,CAAC,OAAO,CAAC;gBAClC,eAAe,GAAG,YAAY,CAAC,SAAS,CAAC;YAC3C,CAAC;QACH,CAAC;QAED,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;QACxB,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACf,KAAK,CAAC,IAAI,CAAC,kBAAkB,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC;QAC3C,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACf,IAAI,WAAW,EAAE,CAAC;YAChB,KAAK,CAAC,IAAI,CAAC,gBAAgB,WAAW,EAAE,CAAC,CAAC;QAC5C,CAAC;QACD,IAAI,OAAO,EAAE,CAAC;YACZ,KAAK,CAAC,IAAI,CAAC,mBAAmB,OAAO,EAAE,CAAC,CAAC;QAC3C,CAAC;QACD,IAAI,OAAO,EAAE,CAAC;YACZ,KAAK,CAAC,IAAI,CAAC,YAAY,OAAO,EAAE,CAAC,CAAC;QACpC,CAAC;QACD,IAAI,WAAW,EAAE,CAAC;YAChB,KAAK,CAAC,IAAI,CAAC,aAAa,WAAW,EAAE,CAAC,CAAC;QACzC,CAAC;QACD,IAAI,aAAa,EAAE,CAAC;YAClB,KAAK,CAAC,IAAI,CAAC,eAAe,aAAa,EAAE,CAAC,CAAC;QAC7C,CAAC;aAAM,IAAI,aAAa,EAAE,CAAC;YACzB,KAAK,CAAC,IAAI,CAAC,eAAe,aAAa,EAAE,CAAC,CAAC;QAC7C,CAAC;QAED,IAAI,UAAU,EAAE,CAAC;YACf,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACf,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YACxB,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACf,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACzB,CAAC;QAED,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC;QAChD,MAAM,UAAU,GAAG,QAAQ,CAAC,MAAM,GAAG,QAAQ,CAAC;QAC9C,MAAM,OAAO,GAAG,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;QAEpE,OAAO;YACL,OAAO;YACP,MAAM,EAAE,GAAG;YACX,YAAY,EAAE,eAAe;YAC7B,SAAS,EAAE,UAAU,IAAI,eAAe,IAAI,gBAAgB,CAAC,SAAS;YACtE,GAAG,EAAE,MAAM,CAAC,GAAG;SAChB,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACK,sBAAsB,CAAC,GAAQ;QACrC,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;QAC5C,IAAI,QAAQ,KAAK,eAAe,IAAI,QAAQ,KAAK,WAAW,EAAE,CAAC;YAC7D,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACzD,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxB,OAAO,IAAI,CAAC;QACd,CAAC;QACD,IAAI,QAAQ,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC;YAC9B,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC1B,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAC1B,MAAM,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;YAC3B,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,OAAO,IAAI,CAAC;YACd,CAAC;YACD,OAAO,GAAG,KAAK,IAAI,MAAM,EAAE,CAAC;QAC9B,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;;OAKG;IACK,kBAAkB,CAAC,KAAa;QACtC,IAAI,CAAC;YACH,MAAM,MAAM,GAAY,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC1C,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC3E,OAAO,IAAI,CAAC;YACd,CAAC;YACD,OAAO,MAAiC,CAAC;QAC3C,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACK,YAAY,CAAC,KAAc;QACjC,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;QAC7B,OAAO,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;IAC7C,CAAC;IAED;;;;;OAKG;IACK,mBAAmB,CAAC,UAAmB;QAC7C,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE,CAAC;YACnC,OAAO,IAAI,CAAC,sBAAsB,CAAC,UAAU,CAAC,CAAC;QACjD,CAAC;QAED,IAAI,OAAO,UAAU,KAAK,QAAQ,IAAI,UAAU,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;YACxF,MAAM,MAAM,GAAG,UAAqC,CAAC;YACrD,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YAChD,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,OAAO,IAAI,CAAC;YACd,CAAC;YACD,OAAO,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAC;QAC7C,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;OAKG;IACK,sBAAsB,CAAC,MAAc;QAC3C,IAAI,OAAO,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;QAE5B,IAAI,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;YAC/B,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACzC,CAAC;QAED,IAAI,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YACjC,OAAO,GAAG,WAAW,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QACxD,CAAC;QAED,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YAC7B,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC7C,CAAC;QAED,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC;YAChC,IAAI,MAAM,CAAC,QAAQ,KAAK,OAAO,IAAI,MAAM,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;gBAChE,OAAO,IAAI,CAAC;YACd,CAAC;YACD,OAAO,MAAM,CAAC,QAAQ,EAAE,CAAC;QAC3B,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACK,yBAAyB,CAAC,aAAqB;QACrD,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,aAAa,CAAC,CAAC;YACtC,IAAI,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE,KAAK,YAAY,EAAE,CAAC;gBACnD,OAAO,IAAI,CAAC;YACd,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAC5D,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACxB,OAAO,IAAI,CAAC;YACd,CAAC;YAED,MAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;YAC1B,MAAM,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;YACzB,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,EAAE,CAAC;gBACpB,OAAO,IAAI,CAAC;YACd,CAAC;YAED,OAAO,sBAAsB,KAAK,IAAI,IAAI,EAAE,CAAC;QAC/C,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED;;;;;;;OAOG;IACK,KAAK,CAAC,oBAAoB,CAChC,MAAuB,EACvB,aAAqB,EACrB,QAAgB;QAEhB,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,aAAa,CAAC,CAAC;QACtC,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC5D,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxB,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC1B,MAAM,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;QACzB,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,EAAE,CAAC;YACpB,OAAO,IAAI,CAAC;QACd,CAAC;QAED,KAAK,MAAM,MAAM,IAAI,YAAY,CAAC,eAAe,EAAE,CAAC;YAClD,KAAK,MAAM,QAAQ,IAAI,YAAY,CAAC,gBAAgB,EAAE,CAAC;gBACrD,MAAM,GAAG,GAAG,qCAAqC,KAAK,IAAI,IAAI,IAAI,MAAM,IAAI,QAAQ,EAAE,CAAC;gBACvF,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC;oBACrC,GAAG;oBACH,QAAQ;iBACT,CAAC,CAAC;gBAEH,IAAI,QAAQ,CAAC,MAAM,IAAI,GAAG,IAAI,QAAQ,CAAC,MAAM,GAAG,GAAG,IAAI,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC1F,OAAO;wBACL,OAAO,EAAE,QAAQ,CAAC,OAAO;wBACzB,SAAS,EAAE,QAAQ,CAAC,SAAS;qBAC9B,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;OAKG;IACI,YAAY,CAAC,MAA0B;QAC5C,MAAM,aAAa,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7D,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,0BAA0B,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACjF,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC;QACtD,MAAM,MAAM,GAAG,WAAW,MAAM,CAAC,GAAG,KAAK,MAAM,CAAC,YAAY,KAAK,MAAM,CAAC,OAAO,CAAC,MAAM,UAAU,aAAa,GAAG,CAAC;QACjH,MAAM,WAAW,GACf,YAAY,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM;YAClC,CAAC,CAAC,sBAAsB,YAAY,cAAc;YAClD,CAAC,CAAC,kBAAkB,CAAC;QAEzB,OAAO,MAAM,GAAG,WAAW,GAAG,OAAO,CAAC;IACxC,CAAC"}
@@ -0,0 +1,323 @@
1
+ /**
2
+ * WEB SEARCH REGISTRY VERIFIER
3
+ *
4
+ * Enriches `web_search` results with canonical package version information
5
+ * fetched from official registry APIs when possible.
6
+ *
7
+ * Supported ecosystems:
8
+ * - npm (registry.npmjs.org)
9
+ * - PyPI (pypi.org JSON)
10
+ * - crates.io (crates.io API)
11
+ * - NuGet (.NET) (api.nuget.org v3)
12
+ * - GitHub releases (api.github.com)
13
+ *
14
+ * @module tools/WebSearchRegistryVerifier
15
+ */
16
+ import type { WebSearchResultEntry } from "../client/EnriProxyClient.js";
17
+ /**
18
+ * Supported registry kinds for version verification.
19
+ */
20
+ export type VerifiedRegistryKind = "npm" | "pypi" | "crates" | "nuget" | "github";
21
+ /**
22
+ * A verified version resolved from a canonical registry source.
23
+ */
24
+ export interface VerifiedRegistryVersion {
25
+ /**
26
+ * Version string (as returned by the upstream registry).
27
+ */
28
+ readonly version: string;
29
+ /**
30
+ * Optional publish timestamp in ISO 8601 format.
31
+ */
32
+ readonly published_at?: string;
33
+ /**
34
+ * Source URL used to verify this version.
35
+ */
36
+ readonly source_url: string;
37
+ }
38
+ /**
39
+ * Verification output for a detected registry entity.
40
+ */
41
+ export interface VerifiedRegistryEntity {
42
+ /**
43
+ * Registry kind.
44
+ */
45
+ readonly kind: VerifiedRegistryKind;
46
+ /**
47
+ * Entity identifier (package name, package ID, or repo slug).
48
+ */
49
+ readonly name: string;
50
+ /**
51
+ * Latest stable version, when available.
52
+ */
53
+ readonly latest_stable?: VerifiedRegistryVersion;
54
+ /**
55
+ * Latest prerelease version, when available.
56
+ */
57
+ readonly latest_prerelease?: VerifiedRegistryVersion;
58
+ /**
59
+ * Verification status.
60
+ */
61
+ readonly status: "ok" | "error";
62
+ /**
63
+ * Error message when {@link status} is `error`.
64
+ */
65
+ readonly error?: string;
66
+ }
67
+ /**
68
+ * Dependencies for {@link WebSearchRegistryVerifier}.
69
+ */
70
+ export interface WebSearchRegistryVerifierDeps {
71
+ /**
72
+ * Fetch implementation (Node.js global fetch in production).
73
+ */
74
+ readonly fetchImpl: typeof fetch;
75
+ /**
76
+ * Timeout for registry HTTP requests.
77
+ */
78
+ readonly timeoutMs: number;
79
+ /**
80
+ * Cache TTL in milliseconds for registry lookups.
81
+ */
82
+ readonly cacheTtlMs: number;
83
+ /**
84
+ * Maximum number of entities to verify per `web_search` call.
85
+ *
86
+ * @remarks
87
+ * This protects against excessive outbound traffic when many registry URLs
88
+ * appear in results.
89
+ */
90
+ readonly maxEntitiesPerCall: number;
91
+ /**
92
+ * Optional GitHub token to increase API rate limits.
93
+ */
94
+ readonly githubToken?: string;
95
+ }
96
+ /**
97
+ * Enriches web search results with registry version verification.
98
+ */
99
+ export declare class WebSearchRegistryVerifier {
100
+ /**
101
+ * NuGet V3 service index endpoint.
102
+ */
103
+ private static readonly NUGET_SERVICE_INDEX_URL;
104
+ /**
105
+ * Default concurrency for registry verification.
106
+ */
107
+ private static readonly DEFAULT_CONCURRENCY;
108
+ /**
109
+ * Dependencies.
110
+ */
111
+ private readonly deps;
112
+ /**
113
+ * In-memory TTL cache.
114
+ */
115
+ private readonly cache;
116
+ /**
117
+ * Cached NuGet service index resolution.
118
+ */
119
+ private nugetServiceIndexCache;
120
+ /**
121
+ * Creates a new {@link WebSearchRegistryVerifier}.
122
+ *
123
+ * @param deps - Dependencies
124
+ */
125
+ constructor(deps: WebSearchRegistryVerifierDeps);
126
+ /**
127
+ * Attempts to verify canonical versions for registry entities found in search results.
128
+ *
129
+ * @param results - Search results
130
+ * @returns Verified entities (best-effort)
131
+ */
132
+ verifyFromSearchResults(results: WebSearchResultEntry[]): Promise<VerifiedRegistryEntity[]>;
133
+ /**
134
+ * Collects registry candidates from search result URLs.
135
+ *
136
+ * @param results - Search results
137
+ * @returns Candidate list
138
+ */
139
+ private collectCandidates;
140
+ /**
141
+ * Verifies a single candidate, using cache when available.
142
+ *
143
+ * @param kind - Registry kind
144
+ * @param name - Candidate name
145
+ * @returns Verification result
146
+ */
147
+ private verifyCandidate;
148
+ /**
149
+ * Runs tasks with a fixed concurrency limit.
150
+ *
151
+ * @param tasks - Async tasks
152
+ * @param concurrency - Concurrency limit
153
+ * @returns Results in original order
154
+ */
155
+ private runWithConcurrencyLimit;
156
+ /**
157
+ * Verifies npm package versions via the npm registry.
158
+ *
159
+ * @param packageName - npm package name (may be scoped)
160
+ * @returns Verified registry entity
161
+ */
162
+ private verifyNpm;
163
+ /**
164
+ * Verifies PyPI project versions via the PyPI JSON API.
165
+ *
166
+ * @param projectName - PyPI project name
167
+ * @returns Verified registry entity
168
+ */
169
+ private verifyPyPi;
170
+ /**
171
+ * Verifies crates.io package versions via the crates.io API.
172
+ *
173
+ * @param crateName - Crate name
174
+ * @returns Verified registry entity
175
+ */
176
+ private verifyCrates;
177
+ /**
178
+ * Verifies NuGet package versions via NuGet V3 endpoints.
179
+ *
180
+ * @param packageId - NuGet package ID
181
+ * @returns Verified registry entity
182
+ */
183
+ private verifyNuGet;
184
+ /**
185
+ * Verifies GitHub repository releases via GitHub REST API.
186
+ *
187
+ * @param repoSlug - Repository slug in the form "owner/repo"
188
+ * @returns Verified registry entity
189
+ */
190
+ private verifyGitHub;
191
+ /**
192
+ * Performs an HTTP GET expecting a JSON response.
193
+ *
194
+ * @param url - Target URL
195
+ * @param options - Request options
196
+ * @returns Parsed JSON object/array
197
+ */
198
+ private fetchJson;
199
+ /**
200
+ * Attempts to parse the npm package name from an npmjs.com URL.
201
+ *
202
+ * @param url - Parsed URL
203
+ * @returns Package name or null
204
+ */
205
+ private tryParseNpmPackageName;
206
+ /**
207
+ * Attempts to parse the PyPI project name from a pypi.org URL.
208
+ *
209
+ * @param url - Parsed URL
210
+ * @returns Project name or null
211
+ */
212
+ private tryParsePyPiProjectName;
213
+ /**
214
+ * Attempts to parse the crate name from a crates.io URL.
215
+ *
216
+ * @param url - Parsed URL
217
+ * @returns Crate name or null
218
+ */
219
+ private tryParseCratesName;
220
+ /**
221
+ * Attempts to parse a NuGet package ID from a nuget.org URL.
222
+ *
223
+ * @param url - Parsed URL
224
+ * @returns NuGet package ID or null
225
+ */
226
+ private tryParseNuGetPackageId;
227
+ /**
228
+ * Attempts to parse a GitHub repository slug from a github.com URL.
229
+ *
230
+ * @param url - Parsed URL
231
+ * @returns Repo slug (owner/repo) or null
232
+ */
233
+ private tryParseGitHubRepoSlug;
234
+ /**
235
+ * Returns a record if the input is a plain object.
236
+ *
237
+ * @param value - Unknown value
238
+ * @returns Record or null
239
+ */
240
+ private tryGetRecord;
241
+ /**
242
+ * Returns a non-empty string if possible.
243
+ *
244
+ * @param value - Unknown value
245
+ * @returns Trimmed string or null
246
+ */
247
+ private tryGetNonEmptyString;
248
+ /**
249
+ * Determines whether a version string is a prerelease using SemVer rules.
250
+ *
251
+ * @param version - Version string
252
+ * @returns True when prerelease
253
+ */
254
+ private isPrereleaseVersion;
255
+ /**
256
+ * Best-effort prerelease detection for PyPI version strings.
257
+ *
258
+ * @param version - Version string
259
+ * @returns True when prerelease-like
260
+ */
261
+ private isLikelyPyPiPrerelease;
262
+ /**
263
+ * Picks the best SemVer candidate from a list of versions.
264
+ *
265
+ * @param versions - Version list
266
+ * @param options - Selection options
267
+ * @returns Best version string or null
268
+ */
269
+ private pickBestSemVer;
270
+ /**
271
+ * Picks the best candidate from stable or prerelease sets.
272
+ *
273
+ * @param candidates - Candidate list
274
+ * @param options - Selection options
275
+ * @returns Best candidate or null
276
+ */
277
+ private pickBestVersionCandidate;
278
+ /**
279
+ * Parses SemVer strings (best-effort).
280
+ *
281
+ * @param raw - Version string
282
+ * @returns Parsed semver or null
283
+ */
284
+ private tryParseSemVer;
285
+ /**
286
+ * Compares two SemVer values.
287
+ *
288
+ * @param a - SemVer a
289
+ * @param b - SemVer b
290
+ * @returns Comparison result
291
+ */
292
+ private compareSemVer;
293
+ /**
294
+ * Attempts to parse an integer, returning null for non-numeric identifiers.
295
+ *
296
+ * @param value - String value
297
+ * @returns Parsed integer or null
298
+ */
299
+ private tryParseInt;
300
+ /**
301
+ * Extracts the most recent PyPI upload timestamp for a release entry.
302
+ *
303
+ * @param releaseFiles - Releases[version] value
304
+ * @returns Latest upload time in ISO 8601 or null
305
+ */
306
+ private tryGetLatestPyPiUploadIso;
307
+ /**
308
+ * Resolves NuGet V3 endpoints from the service index, with caching.
309
+ *
310
+ * @returns Service index cache
311
+ */
312
+ private getNuGetServiceIndex;
313
+ /**
314
+ * Attempts to fetch NuGet registration leaf to extract published timestamp.
315
+ *
316
+ * @param registrationsBaseUrl - Registrations base URL
317
+ * @param lowerId - Lowercase package ID
318
+ * @param version - Version string
319
+ * @returns Published ISO 8601 timestamp or null
320
+ */
321
+ private tryFetchNuGetLeafPublishedAt;
322
+ }
323
+ //# sourceMappingURL=WebSearchRegistryVerifier.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WebSearchRegistryVerifier.d.ts","sourceRoot":"","sources":["../../src/tools/WebSearchRegistryVerifier.ts"],"names":[],"mappings":"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"}