@j0hanz/fetch-url-mcp 1.10.2 → 1.10.4

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 (63) hide show
  1. package/dist/http/native.d.ts.map +1 -1
  2. package/dist/http/native.js +20 -26
  3. package/dist/http/session-teardown.d.ts +17 -0
  4. package/dist/http/session-teardown.d.ts.map +1 -0
  5. package/dist/http/session-teardown.js +30 -0
  6. package/dist/lib/code-lang.d.ts.map +1 -1
  7. package/dist/lib/code-lang.js +2 -8
  8. package/dist/lib/core.d.ts.map +1 -1
  9. package/dist/lib/core.js +2 -0
  10. package/dist/lib/dom-prep.d.ts +2 -0
  11. package/dist/lib/dom-prep.d.ts.map +1 -1
  12. package/dist/lib/dom-prep.js +150 -139
  13. package/dist/lib/md-cleanup.d.ts.map +1 -1
  14. package/dist/lib/md-cleanup.js +53 -20
  15. package/dist/lib/progress.d.ts.map +1 -1
  16. package/dist/lib/progress.js +59 -32
  17. package/dist/lib/sdk-interop.d.ts +8 -0
  18. package/dist/lib/sdk-interop.d.ts.map +1 -0
  19. package/dist/lib/sdk-interop.js +73 -0
  20. package/dist/lib/task-handlers.d.ts +0 -2
  21. package/dist/lib/task-handlers.d.ts.map +1 -1
  22. package/dist/lib/task-handlers.js +9 -94
  23. package/dist/resources/index.js +1 -1
  24. package/dist/server.d.ts.map +1 -1
  25. package/dist/server.js +10 -3
  26. package/dist/tasks/call-contract.d.ts +25 -0
  27. package/dist/tasks/call-contract.d.ts.map +1 -0
  28. package/dist/tasks/call-contract.js +58 -0
  29. package/dist/tasks/cursor-codec.d.ts +5 -0
  30. package/dist/tasks/cursor-codec.d.ts.map +1 -0
  31. package/dist/tasks/cursor-codec.js +41 -0
  32. package/dist/tasks/execution.d.ts +1 -20
  33. package/dist/tasks/execution.d.ts.map +1 -1
  34. package/dist/tasks/execution.js +7 -32
  35. package/dist/tasks/manager.d.ts +1 -5
  36. package/dist/tasks/manager.d.ts.map +1 -1
  37. package/dist/tasks/manager.js +16 -144
  38. package/dist/tasks/owner.d.ts +12 -2
  39. package/dist/tasks/owner.d.ts.map +1 -1
  40. package/dist/tasks/owner.js +52 -3
  41. package/dist/tasks/tool-registry.d.ts +1 -0
  42. package/dist/tasks/tool-registry.d.ts.map +1 -1
  43. package/dist/tasks/waiters.d.ts +27 -0
  44. package/dist/tasks/waiters.d.ts.map +1 -0
  45. package/dist/tasks/waiters.js +113 -0
  46. package/dist/tools/fetch-url-progress.d.ts +17 -0
  47. package/dist/tools/fetch-url-progress.d.ts.map +1 -0
  48. package/dist/tools/fetch-url-progress.js +78 -0
  49. package/dist/tools/fetch-url.d.ts +5 -9
  50. package/dist/tools/fetch-url.d.ts.map +1 -1
  51. package/dist/tools/fetch-url.js +43 -96
  52. package/dist/transform/next-flight.d.ts +2 -0
  53. package/dist/transform/next-flight.d.ts.map +1 -0
  54. package/dist/transform/next-flight.js +285 -0
  55. package/dist/transform/title-policy.d.ts +12 -0
  56. package/dist/transform/title-policy.d.ts.map +1 -0
  57. package/dist/transform/title-policy.js +85 -0
  58. package/dist/transform/transform.d.ts.map +1 -1
  59. package/dist/transform/transform.js +62 -475
  60. package/package.json +4 -4
  61. package/dist/tools/index.d.ts +0 -3
  62. package/dist/tools/index.d.ts.map +0 -1
  63. package/dist/tools/index.js +0 -4
@@ -0,0 +1,85 @@
1
+ const TITLE_PART_SEPARATOR = /\s*(?:[-|:•·]|–|—)\s*/u;
2
+ const LEADING_HEADING_PATTERN = /^(#{1,6})\s+(.+?)\s*$/;
3
+ const HEADING_SCAN_LIMIT = 12;
4
+ export function normalizeSyntheticTitleToken(value) {
5
+ return (value ?? '').replace(/\s+/g, ' ').trim().toLowerCase();
6
+ }
7
+ export function shouldPreferPrimaryHeadingTitle(primaryHeading, title) {
8
+ const primary = normalizeSyntheticTitleToken(primaryHeading);
9
+ if (!primary)
10
+ return false;
11
+ const normalizedTitle = normalizeSyntheticTitleToken(title);
12
+ if (!normalizedTitle)
13
+ return true;
14
+ if (normalizedTitle === primary)
15
+ return true;
16
+ return normalizedTitle
17
+ .split(TITLE_PART_SEPARATOR)
18
+ .some((part) => part === primary);
19
+ }
20
+ export function isGithubRepositoryRootUrl(url) {
21
+ let parsed;
22
+ try {
23
+ parsed = new URL(url);
24
+ }
25
+ catch {
26
+ return false;
27
+ }
28
+ const hostname = parsed.hostname.toLowerCase();
29
+ if (hostname !== 'github.com' && hostname !== 'www.github.com') {
30
+ return false;
31
+ }
32
+ return parsed.pathname.split('/').filter(Boolean).length === 2;
33
+ }
34
+ function normalizeHeadingText(value) {
35
+ return value.replace(/\s+/g, ' ').trim().toLowerCase();
36
+ }
37
+ export function stripLeadingHeading(markdown, headingText) {
38
+ if (!markdown)
39
+ return markdown;
40
+ const lines = markdown.split('\n');
41
+ const target = normalizeHeadingText(headingText);
42
+ let nonEmptySeen = 0;
43
+ for (let index = 0; index < lines.length && nonEmptySeen < HEADING_SCAN_LIMIT; index += 1) {
44
+ const trimmed = lines[index]?.trim() ?? '';
45
+ if (!trimmed)
46
+ continue;
47
+ nonEmptySeen += 1;
48
+ const match = LEADING_HEADING_PATTERN.exec(trimmed);
49
+ if (!match)
50
+ continue;
51
+ const current = normalizeHeadingText(match[2] ?? '');
52
+ if (current !== target)
53
+ return markdown;
54
+ lines.splice(index, 1);
55
+ if ((lines[index] ?? '').trim() === '') {
56
+ lines.splice(index, 1);
57
+ }
58
+ return lines.join('\n');
59
+ }
60
+ return markdown;
61
+ }
62
+ export function maybeStripGithubPrimaryHeading(markdown, primaryHeading, url) {
63
+ if (primaryHeading === undefined || !isGithubRepositoryRootUrl(url)) {
64
+ return markdown;
65
+ }
66
+ return stripLeadingHeading(markdown, primaryHeading);
67
+ }
68
+ function buildSyntheticTitlePrefix(url, favicon, suppressFavicon) {
69
+ if (!favicon || suppressFavicon)
70
+ return ' ';
71
+ let alt = '';
72
+ try {
73
+ alt = new URL(url).hostname;
74
+ }
75
+ catch {
76
+ /* skip */
77
+ }
78
+ return ` ![${alt}](${favicon}) `;
79
+ }
80
+ export function maybePrependSyntheticTitle(markdown, context, url) {
81
+ if (!context.title || /^(#{1,6})\s/.test(markdown.trimStart())) {
82
+ return markdown;
83
+ }
84
+ return `#${buildSyntheticTitlePrefix(url, context.favicon, context.suppressSyntheticFavicon)}${context.title}\n\n${markdown}`;
85
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"transform.d.ts","sourceRoot":"","sources":["../../src/transform/transform.ts"],"names":[],"mappings":"AAgDA,OAAO,KAAK,EACV,gBAAgB,EAChB,iBAAiB,EACjB,gBAAgB,EAChB,uBAAuB,EACvB,aAAa,EACb,gBAAgB,EAChB,qBAAqB,EAEtB,MAAM,YAAY,CAAC;AAqCpB,UAAU,WAAW;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;CACnB;AAqJD,wBAAgB,mBAAmB,CACjC,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,MAAM,EACb,MAAM,CAAC,EAAE,WAAW,GACnB,qBAAqB,GAAG,IAAI,CAE9B;AAED,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,qBAAqB,GAAG,IAAI,EACrC,OAAO,CAAC,EAAE;IAAE,SAAS,CAAC,EAAE,OAAO,CAAA;CAAE,GAChC,MAAM,CAER;AAwYD,wBAAgB,cAAc,CAC5B,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,MAAM,EACX,OAAO,GAAE;IAAE,cAAc,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,WAAW,CAAA;CAExD,GACA,gBAAgB,CAGlB;AAgLD,wBAAgB,cAAc,CAC5B,IAAI,EAAE,MAAM,EACZ,QAAQ,CAAC,EAAE,aAAa,EACxB,OAAO,CAAC,EAAE;IACR,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B,GACA,MAAM,CAsBR;AAuJD,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,gBAAgB,GAAG,IAAI,EAChC,sBAAsB,EAAE,MAAM,GAAG,QAAQ,GACxC,OAAO,CAQT;AAiED,wBAAgB,gCAAgC,CAC9C,OAAO,EAAE,gBAAgB,GAAG,IAAI,GAC/B,OAAO,IAAI,gBAAgB,CAE7B;AAED,wBAAgB,0BAA0B,CACxC,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,gBAAgB,GAAG,IAAI,EAChC,aAAa,EAAE,iBAAiB,EAChC,wBAAwB,EAAE,OAAO,EACjC,eAAe,EAAE,OAAO,GACvB,aAAa,GAAG,SAAS,CAuB3B;AAo8BD,wBAAgB,gCAAgC,CAC9C,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,gBAAgB,GACxB,uBAAuB,CAqCzB;AAaD,UAAU,kBAAkB;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,wBAAgB,qBAAqB,IAAI,kBAAkB,GAAG,IAAI,CAEjE;AAED,wBAAsB,2BAA2B,IAAI,OAAO,CAAC,IAAI,CAAC,CAEjE;AAED,KAAK,yBAAyB,GAAG,gBAAgB,GAAG;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAkH1E,wBAAsB,uBAAuB,CAC3C,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,gBAAgB,GACxB,OAAO,CAAC,uBAAuB,CAAC,CAElC;AAED,wBAAsB,yBAAyB,CAC7C,UAAU,EAAE,UAAU,EACtB,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,yBAAyB,GACjC,OAAO,CAAC,uBAAuB,CAAC,CAElC"}
1
+ {"version":3,"file":"transform.d.ts","sourceRoot":"","sources":["../../src/transform/transform.ts"],"names":[],"mappings":"AAsDA,OAAO,KAAK,EACV,gBAAgB,EAChB,iBAAiB,EACjB,gBAAgB,EAChB,uBAAuB,EACvB,aAAa,EACb,gBAAgB,EAChB,qBAAqB,EAEtB,MAAM,YAAY,CAAC;AAqCpB,UAAU,WAAW;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;CACnB;AA8ID,wBAAgB,mBAAmB,CACjC,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,MAAM,EACb,MAAM,CAAC,EAAE,WAAW,GACnB,qBAAqB,GAAG,IAAI,CAE9B;AAED,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,qBAAqB,GAAG,IAAI,EACrC,OAAO,CAAC,EAAE;IAAE,SAAS,CAAC,EAAE,OAAO,CAAA;CAAE,GAChC,MAAM,CAER;AA6YD,wBAAgB,cAAc,CAC5B,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,MAAM,EACX,OAAO,GAAE;IAAE,cAAc,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,WAAW,CAAA;CAExD,GACA,gBAAgB,CAGlB;AAmLD,wBAAgB,cAAc,CAC5B,IAAI,EAAE,MAAM,EACZ,QAAQ,CAAC,EAAE,aAAa,EACxB,OAAO,CAAC,EAAE;IACR,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B,GACA,MAAM,CAsBR;AAkJD,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,gBAAgB,GAAG,IAAI,EAChC,sBAAsB,EAAE,MAAM,GAAG,QAAQ,GACxC,OAAO,CAQT;AAgED,wBAAgB,gCAAgC,CAC9C,OAAO,EAAE,gBAAgB,GAAG,IAAI,GAC/B,OAAO,IAAI,gBAAgB,CAE7B;AAED,wBAAgB,0BAA0B,CACxC,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,gBAAgB,GAAG,IAAI,EAChC,aAAa,EAAE,iBAAiB,EAChC,wBAAwB,EAAE,OAAO,EACjC,eAAe,EAAE,OAAO,GACvB,aAAa,GAAG,SAAS,CAuB3B;AAgYD,wBAAgB,gCAAgC,CAC9C,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,gBAAgB,GACxB,uBAAuB,CAqCzB;AAaD,UAAU,kBAAkB;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,wBAAgB,qBAAqB,IAAI,kBAAkB,GAAG,IAAI,CAEjE;AAED,wBAAsB,2BAA2B,IAAI,OAAO,CAAC,IAAI,CAAC,CAEjE;AAED,KAAK,yBAAyB,GAAG,gBAAgB,GAAG;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAkH1E,wBAAsB,uBAAuB,CAC3C,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,gBAAgB,GACxB,OAAO,CAAC,uBAAuB,CAAC,CAElC;AAED,wBAAsB,yBAAyB,CAC7C,UAAU,EAAE,UAAU,EACtB,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,yBAAyB,GACjC,OAAO,CAAC,uBAAuB,CAAC,CAElC"}