@get-technology-inc/jamf-docs-mcp-server 1.5.0 → 2.0.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 (229) hide show
  1. package/dist/{completions.d.ts → core/completions.d.ts} +3 -1
  2. package/dist/core/completions.d.ts.map +1 -0
  3. package/dist/{completions.js → core/completions.js} +5 -4
  4. package/dist/core/completions.js.map +1 -0
  5. package/dist/core/config.d.ts +56 -0
  6. package/dist/core/config.d.ts.map +1 -0
  7. package/dist/core/config.js +59 -0
  8. package/dist/core/config.js.map +1 -0
  9. package/dist/{constants.d.ts → core/constants.d.ts} +3 -19
  10. package/dist/core/constants.d.ts.map +1 -0
  11. package/dist/{constants.js → core/constants.js} +6 -86
  12. package/dist/core/constants.js.map +1 -0
  13. package/dist/core/create-server.d.ts +17 -0
  14. package/dist/core/create-server.d.ts.map +1 -0
  15. package/dist/core/create-server.js +70 -0
  16. package/dist/core/create-server.js.map +1 -0
  17. package/dist/core/http-client.d.ts +19 -0
  18. package/dist/core/http-client.d.ts.map +1 -0
  19. package/dist/core/http-client.js +62 -0
  20. package/dist/core/http-client.js.map +1 -0
  21. package/dist/core/index.d.ts +25 -0
  22. package/dist/core/index.d.ts.map +1 -0
  23. package/dist/core/index.js +29 -0
  24. package/dist/core/index.js.map +1 -0
  25. package/dist/core/prompts/compare-versions.d.ts.map +1 -0
  26. package/dist/core/prompts/compare-versions.js.map +1 -0
  27. package/dist/core/prompts/index.d.ts.map +1 -0
  28. package/dist/core/prompts/index.js.map +1 -0
  29. package/dist/core/prompts/setup-guide.d.ts.map +1 -0
  30. package/dist/core/prompts/setup-guide.js.map +1 -0
  31. package/dist/core/prompts/troubleshoot.d.ts.map +1 -0
  32. package/dist/core/prompts/troubleshoot.js.map +1 -0
  33. package/dist/{resources → core/resources}/index.d.ts +2 -1
  34. package/dist/core/resources/index.d.ts.map +1 -0
  35. package/dist/{resources → core/resources}/index.js +6 -7
  36. package/dist/core/resources/index.js.map +1 -0
  37. package/dist/core/schemas/index.d.ts.map +1 -0
  38. package/dist/core/schemas/index.js.map +1 -0
  39. package/dist/core/schemas/output.d.ts.map +1 -0
  40. package/dist/core/schemas/output.js.map +1 -0
  41. package/dist/core/services/cache.d.ts +16 -0
  42. package/dist/core/services/cache.d.ts.map +1 -0
  43. package/dist/core/services/cache.js +16 -0
  44. package/dist/core/services/cache.js.map +1 -0
  45. package/dist/{services → core/services}/glossary.d.ts +2 -1
  46. package/dist/core/services/glossary.d.ts.map +1 -0
  47. package/dist/{services → core/services}/glossary.js +10 -11
  48. package/dist/core/services/glossary.js.map +1 -0
  49. package/dist/core/services/interfaces.d.ts +94 -0
  50. package/dist/core/services/interfaces.d.ts.map +1 -0
  51. package/dist/core/services/interfaces.js +8 -0
  52. package/dist/core/services/interfaces.js.map +1 -0
  53. package/dist/core/services/logging.d.ts.map +1 -0
  54. package/dist/core/services/logging.js.map +1 -0
  55. package/dist/{services → core/services}/metadata.d.ts +8 -7
  56. package/dist/core/services/metadata.d.ts.map +1 -0
  57. package/dist/{services → core/services}/metadata.js +43 -39
  58. package/dist/core/services/metadata.js.map +1 -0
  59. package/dist/{services → core/services}/scraper.d.ts +14 -4
  60. package/dist/core/services/scraper.d.ts.map +1 -0
  61. package/dist/{services → core/services}/scraper.js +163 -65
  62. package/dist/core/services/scraper.js.map +1 -0
  63. package/dist/core/services/search-suggestions.d.ts.map +1 -0
  64. package/dist/core/services/search-suggestions.js.map +1 -0
  65. package/dist/{services → core/services}/tokenizer.d.ts +5 -0
  66. package/dist/core/services/tokenizer.d.ts.map +1 -0
  67. package/dist/{services → core/services}/tokenizer.js +30 -14
  68. package/dist/core/services/tokenizer.js.map +1 -0
  69. package/dist/{tools → core/tools}/batch-get-articles.d.ts +2 -1
  70. package/dist/core/tools/batch-get-articles.d.ts.map +1 -0
  71. package/dist/{tools → core/tools}/batch-get-articles.js +2 -2
  72. package/dist/core/tools/batch-get-articles.js.map +1 -0
  73. package/dist/{tools → core/tools}/get-article.d.ts +2 -1
  74. package/dist/core/tools/get-article.d.ts.map +1 -0
  75. package/dist/{tools → core/tools}/get-article.js +2 -2
  76. package/dist/core/tools/get-article.js.map +1 -0
  77. package/dist/core/tools/get-toc.d.ts +8 -0
  78. package/dist/core/tools/get-toc.d.ts.map +1 -0
  79. package/dist/{tools → core/tools}/get-toc.js +3 -3
  80. package/dist/core/tools/get-toc.js.map +1 -0
  81. package/dist/{tools → core/tools}/glossary-lookup.d.ts +2 -1
  82. package/dist/core/tools/glossary-lookup.d.ts.map +1 -0
  83. package/dist/{tools → core/tools}/glossary-lookup.js +2 -2
  84. package/dist/core/tools/glossary-lookup.js.map +1 -0
  85. package/dist/{tools → core/tools}/list-products.d.ts +2 -1
  86. package/dist/core/tools/list-products.d.ts.map +1 -0
  87. package/dist/{tools → core/tools}/list-products.js +2 -2
  88. package/dist/core/tools/list-products.js.map +1 -0
  89. package/dist/core/tools/search.d.ts +8 -0
  90. package/dist/core/tools/search.d.ts.map +1 -0
  91. package/dist/{tools → core/tools}/search.js +2 -2
  92. package/dist/core/tools/search.js.map +1 -0
  93. package/dist/core/types/context.d.ts +15 -0
  94. package/dist/core/types/context.d.ts.map +1 -0
  95. package/dist/core/types/context.js +8 -0
  96. package/dist/core/types/context.js.map +1 -0
  97. package/dist/core/types.d.ts.map +1 -0
  98. package/dist/core/types.js.map +1 -0
  99. package/dist/{utils → core/utils}/bundle.d.ts +5 -0
  100. package/dist/core/utils/bundle.d.ts.map +1 -0
  101. package/dist/{utils → core/utils}/bundle.js +29 -0
  102. package/dist/core/utils/bundle.js.map +1 -0
  103. package/dist/core/utils/concurrency.d.ts.map +1 -0
  104. package/dist/core/utils/concurrency.js.map +1 -0
  105. package/dist/core/utils/doc-type.d.ts.map +1 -0
  106. package/dist/core/utils/doc-type.js.map +1 -0
  107. package/dist/core/utils/progress.d.ts.map +1 -0
  108. package/dist/core/utils/progress.js.map +1 -0
  109. package/dist/core/utils/sanitize.d.ts.map +1 -0
  110. package/dist/core/utils/sanitize.js.map +1 -0
  111. package/dist/core/utils/url.d.ts.map +1 -0
  112. package/dist/core/utils/url.js.map +1 -0
  113. package/dist/index.d.ts +3 -3
  114. package/dist/index.js +26 -58
  115. package/dist/index.js.map +1 -1
  116. package/dist/{services → platforms/node}/cache.d.ts +17 -13
  117. package/dist/platforms/node/cache.d.ts.map +1 -0
  118. package/dist/{services → platforms/node}/cache.js +20 -18
  119. package/dist/platforms/node/cache.js.map +1 -0
  120. package/dist/platforms/node/config.d.ts +14 -0
  121. package/dist/platforms/node/config.d.ts.map +1 -0
  122. package/dist/platforms/node/config.js +99 -0
  123. package/dist/platforms/node/config.js.map +1 -0
  124. package/dist/platforms/node/index.d.ts +8 -0
  125. package/dist/platforms/node/index.d.ts.map +1 -0
  126. package/dist/platforms/node/index.js +8 -0
  127. package/dist/platforms/node/index.js.map +1 -0
  128. package/dist/platforms/node/logger.d.ts +12 -0
  129. package/dist/platforms/node/logger.d.ts.map +1 -0
  130. package/dist/platforms/node/logger.js +15 -0
  131. package/dist/platforms/node/logger.js.map +1 -0
  132. package/dist/platforms/node/metadata.d.ts +18 -0
  133. package/dist/platforms/node/metadata.d.ts.map +1 -0
  134. package/dist/platforms/node/metadata.js +35 -0
  135. package/dist/platforms/node/metadata.js.map +1 -0
  136. package/dist/transport/http.d.ts.map +1 -1
  137. package/dist/transport/http.js +3 -2
  138. package/dist/transport/http.js.map +1 -1
  139. package/dist/transport/index.js +1 -1
  140. package/dist/transport/index.js.map +1 -1
  141. package/package.json +22 -4
  142. package/dist/completions.d.ts.map +0 -1
  143. package/dist/completions.js.map +0 -1
  144. package/dist/constants.d.ts.map +0 -1
  145. package/dist/constants.js.map +0 -1
  146. package/dist/prompts/compare-versions.d.ts.map +0 -1
  147. package/dist/prompts/compare-versions.js.map +0 -1
  148. package/dist/prompts/index.d.ts.map +0 -1
  149. package/dist/prompts/index.js.map +0 -1
  150. package/dist/prompts/setup-guide.d.ts.map +0 -1
  151. package/dist/prompts/setup-guide.js.map +0 -1
  152. package/dist/prompts/troubleshoot.d.ts.map +0 -1
  153. package/dist/prompts/troubleshoot.js.map +0 -1
  154. package/dist/resources/index.d.ts.map +0 -1
  155. package/dist/resources/index.js.map +0 -1
  156. package/dist/schemas/index.d.ts.map +0 -1
  157. package/dist/schemas/index.js.map +0 -1
  158. package/dist/schemas/output.d.ts.map +0 -1
  159. package/dist/schemas/output.js.map +0 -1
  160. package/dist/services/cache.d.ts.map +0 -1
  161. package/dist/services/cache.js.map +0 -1
  162. package/dist/services/glossary.d.ts.map +0 -1
  163. package/dist/services/glossary.js.map +0 -1
  164. package/dist/services/logging.d.ts.map +0 -1
  165. package/dist/services/logging.js.map +0 -1
  166. package/dist/services/metadata.d.ts.map +0 -1
  167. package/dist/services/metadata.js.map +0 -1
  168. package/dist/services/scraper.d.ts.map +0 -1
  169. package/dist/services/scraper.js.map +0 -1
  170. package/dist/services/search-suggestions.d.ts.map +0 -1
  171. package/dist/services/search-suggestions.js.map +0 -1
  172. package/dist/services/tokenizer.d.ts.map +0 -1
  173. package/dist/services/tokenizer.js.map +0 -1
  174. package/dist/tools/batch-get-articles.d.ts.map +0 -1
  175. package/dist/tools/batch-get-articles.js.map +0 -1
  176. package/dist/tools/get-article.d.ts.map +0 -1
  177. package/dist/tools/get-article.js.map +0 -1
  178. package/dist/tools/get-toc.d.ts +0 -7
  179. package/dist/tools/get-toc.d.ts.map +0 -1
  180. package/dist/tools/get-toc.js.map +0 -1
  181. package/dist/tools/glossary-lookup.d.ts.map +0 -1
  182. package/dist/tools/glossary-lookup.js.map +0 -1
  183. package/dist/tools/list-products.d.ts.map +0 -1
  184. package/dist/tools/list-products.js.map +0 -1
  185. package/dist/tools/search.d.ts +0 -7
  186. package/dist/tools/search.d.ts.map +0 -1
  187. package/dist/tools/search.js.map +0 -1
  188. package/dist/types.d.ts.map +0 -1
  189. package/dist/types.js.map +0 -1
  190. package/dist/utils/bundle.d.ts.map +0 -1
  191. package/dist/utils/bundle.js.map +0 -1
  192. package/dist/utils/concurrency.d.ts.map +0 -1
  193. package/dist/utils/concurrency.js.map +0 -1
  194. package/dist/utils/doc-type.d.ts.map +0 -1
  195. package/dist/utils/doc-type.js.map +0 -1
  196. package/dist/utils/progress.d.ts.map +0 -1
  197. package/dist/utils/progress.js.map +0 -1
  198. package/dist/utils/sanitize.d.ts.map +0 -1
  199. package/dist/utils/sanitize.js.map +0 -1
  200. package/dist/utils/url.d.ts.map +0 -1
  201. package/dist/utils/url.js.map +0 -1
  202. /package/dist/{prompts → core/prompts}/compare-versions.d.ts +0 -0
  203. /package/dist/{prompts → core/prompts}/compare-versions.js +0 -0
  204. /package/dist/{prompts → core/prompts}/index.d.ts +0 -0
  205. /package/dist/{prompts → core/prompts}/index.js +0 -0
  206. /package/dist/{prompts → core/prompts}/setup-guide.d.ts +0 -0
  207. /package/dist/{prompts → core/prompts}/setup-guide.js +0 -0
  208. /package/dist/{prompts → core/prompts}/troubleshoot.d.ts +0 -0
  209. /package/dist/{prompts → core/prompts}/troubleshoot.js +0 -0
  210. /package/dist/{schemas → core/schemas}/index.d.ts +0 -0
  211. /package/dist/{schemas → core/schemas}/index.js +0 -0
  212. /package/dist/{schemas → core/schemas}/output.d.ts +0 -0
  213. /package/dist/{schemas → core/schemas}/output.js +0 -0
  214. /package/dist/{services → core/services}/logging.d.ts +0 -0
  215. /package/dist/{services → core/services}/logging.js +0 -0
  216. /package/dist/{services → core/services}/search-suggestions.d.ts +0 -0
  217. /package/dist/{services → core/services}/search-suggestions.js +0 -0
  218. /package/dist/{types.d.ts → core/types.d.ts} +0 -0
  219. /package/dist/{types.js → core/types.js} +0 -0
  220. /package/dist/{utils → core/utils}/concurrency.d.ts +0 -0
  221. /package/dist/{utils → core/utils}/concurrency.js +0 -0
  222. /package/dist/{utils → core/utils}/doc-type.d.ts +0 -0
  223. /package/dist/{utils → core/utils}/doc-type.js +0 -0
  224. /package/dist/{utils → core/utils}/progress.d.ts +0 -0
  225. /package/dist/{utils → core/utils}/progress.js +0 -0
  226. /package/dist/{utils → core/utils}/sanitize.d.ts +0 -0
  227. /package/dist/{utils → core/utils}/sanitize.js +0 -0
  228. /package/dist/{utils → core/utils}/url.d.ts +0 -0
  229. /package/dist/{utils → core/utils}/url.js +0 -0
@@ -4,30 +4,27 @@
4
4
  * Dynamically fetches product versions and topic categories from the API
5
5
  * with fallback to static constants.
6
6
  */
7
- import axios from 'axios';
7
+ import { httpGetJson } from '../http-client.js';
8
8
  import * as cheerio from 'cheerio';
9
- import { DOCS_API_URL, JAMF_PRODUCTS, JAMF_TOPICS, REQUEST_CONFIG, CACHE_TTL } from '../constants.js';
9
+ import { DOCS_API_URL, JAMF_PRODUCTS, JAMF_TOPICS } from '../constants.js';
10
10
  import { extractVersionFromBundleId } from '../utils/bundle.js';
11
- import { cache } from './cache.js';
12
- import { createLogger } from './logging.js';
13
- const log = createLogger('metadata');
14
11
  // ============================================================================
15
12
  // API Helpers
16
13
  // ============================================================================
17
- async function fetchJson(url) {
18
- const response = await axios.get(url, {
19
- timeout: REQUEST_CONFIG.TIMEOUT,
20
- headers: {
21
- 'User-Agent': REQUEST_CONFIG.USER_AGENT,
22
- 'Accept': 'application/json'
23
- }
24
- });
25
- return response.data;
14
+ function makeFetchJson(requestConfig) {
15
+ return async (url) => {
16
+ return await httpGetJson(url, {
17
+ timeout: requestConfig.timeout,
18
+ headers: {
19
+ 'User-Agent': requestConfig.userAgent
20
+ }
21
+ });
22
+ };
26
23
  }
27
24
  /**
28
25
  * Discover all available versions for a product
29
26
  */
30
- async function discoverProductVersions(productId) {
27
+ async function discoverProductVersions(productId, fetchJson, log) {
31
28
  const product = JAMF_PRODUCTS[productId];
32
29
  const versions = new Set();
33
30
  try {
@@ -69,11 +66,11 @@ async function discoverProductVersions(productId) {
69
66
  /**
70
67
  * Fetch latest version and metadata for a product from the API
71
68
  */
72
- async function fetchProductMetadata(productId) {
69
+ async function fetchProductMetadata(productId, fetchJson, log) {
73
70
  const product = JAMF_PRODUCTS[productId];
74
71
  try {
75
72
  // Discover all available versions
76
- const availableVersions = await discoverProductVersions(productId);
73
+ const availableVersions = await discoverProductVersions(productId, fetchJson, log);
77
74
  // Search for a doc from this product to get the bundle ID and labels
78
75
  const apiUrl = `${DOCS_API_URL}/api/search?q=${encodeURIComponent(product.name)}&rpp=5`;
79
76
  const response = await fetchJson(apiUrl);
@@ -108,10 +105,12 @@ async function fetchProductMetadata(productId) {
108
105
  * Get all products with their latest metadata
109
106
  * Uses cache with fallback to static constants
110
107
  */
111
- export async function getProductsMetadata() {
108
+ export async function getProductsMetadata(ctx) {
109
+ const log = ctx.logger.createLogger('metadata');
110
+ const fetchJson = makeFetchJson(ctx.config.request);
112
111
  const cacheKey = 'metadata:products';
113
112
  // Check cache
114
- const cached = await cache.get(cacheKey);
113
+ const cached = await ctx.cache.get(cacheKey);
115
114
  if (cached !== null) {
116
115
  return cached;
117
116
  }
@@ -119,7 +118,7 @@ export async function getProductsMetadata() {
119
118
  const productIds = Object.keys(JAMF_PRODUCTS);
120
119
  const fetchResults = await Promise.all(productIds.map(async (productId) => {
121
120
  try {
122
- const metadata = await fetchProductMetadata(productId);
121
+ const metadata = await fetchProductMetadata(productId, fetchJson, log);
123
122
  return { productId, metadata };
124
123
  }
125
124
  catch (error) {
@@ -147,15 +146,16 @@ export async function getProductsMetadata() {
147
146
  }
148
147
  }
149
148
  // Cache for 24 hours
150
- await cache.set(cacheKey, products, CACHE_TTL.ARTICLE_CONTENT);
149
+ await ctx.cache.set(cacheKey, products, ctx.config.cacheTtl.article);
151
150
  return products;
152
151
  }
153
152
  /**
154
153
  * Get the bundle ID for a specific product and version
155
154
  * Returns the latest bundle ID if version is undefined or 'current'
156
155
  */
157
- export async function getBundleIdForVersion(productId, version) {
158
- const products = await getProductsMetadata();
156
+ export async function getBundleIdForVersion(ctx, productId, version) {
157
+ const log = ctx.logger.createLogger('metadata');
158
+ const products = await getProductsMetadata(ctx);
159
159
  const product = products.find(p => p.id === productId);
160
160
  if (product === undefined) {
161
161
  return null;
@@ -176,8 +176,8 @@ export async function getBundleIdForVersion(productId, version) {
176
176
  /**
177
177
  * Get available versions for a product
178
178
  */
179
- export async function getAvailableVersions(productId) {
180
- const products = await getProductsMetadata();
179
+ export async function getAvailableVersions(ctx, productId) {
180
+ const products = await getProductsMetadata(ctx);
181
181
  const product = products.find(p => p.id === productId);
182
182
  return product?.availableVersions ?? [];
183
183
  }
@@ -238,10 +238,10 @@ function categoryToTopicId(title) {
238
238
  /**
239
239
  * Fetch topic categories from TOC for a product
240
240
  */
241
- async function fetchTopicCategories(productId) {
241
+ async function fetchTopicCategories(productId, ctx, fetchJson, log) {
242
242
  try {
243
243
  // First get the latest bundle ID
244
- const products = await getProductsMetadata();
244
+ const products = await getProductsMetadata(ctx);
245
245
  const product = products.find(p => p.id === productId);
246
246
  if (product === undefined) {
247
247
  return [];
@@ -280,10 +280,12 @@ function upsertTopic(topicsMap, category) {
280
280
  /**
281
281
  * Get all topics, combining TOC-derived from all products and manual topics
282
282
  */
283
- export async function getTopicsMetadata() {
283
+ export async function getTopicsMetadata(ctx) {
284
+ const log = ctx.logger.createLogger('metadata');
285
+ const fetchJson = makeFetchJson(ctx.config.request);
284
286
  const cacheKey = 'metadata:topics';
285
287
  // Check cache
286
- const cached = await cache.get(cacheKey);
288
+ const cached = await ctx.cache.get(cacheKey);
287
289
  if (cached !== null) {
288
290
  return cached;
289
291
  }
@@ -300,7 +302,7 @@ export async function getTopicsMetadata() {
300
302
  const productIds = Object.keys(JAMF_PRODUCTS);
301
303
  const tocResults = await Promise.all(productIds.map(async (productId) => {
302
304
  try {
303
- const categories = await fetchTopicCategories(productId);
305
+ const categories = await fetchTopicCategories(productId, ctx, fetchJson, log);
304
306
  return { productId, categories };
305
307
  }
306
308
  catch (error) {
@@ -315,7 +317,7 @@ export async function getTopicsMetadata() {
315
317
  }
316
318
  const topics = Array.from(topicsMap.values());
317
319
  // Cache for 24 hours
318
- await cache.set(cacheKey, topics, CACHE_TTL.ARTICLE_CONTENT);
320
+ await ctx.cache.set(cacheKey, topics, ctx.config.cacheTtl.article);
319
321
  return topics;
320
322
  }
321
323
  // ============================================================================
@@ -324,9 +326,11 @@ export async function getTopicsMetadata() {
324
326
  /**
325
327
  * Check which products have TOC content available
326
328
  */
327
- export async function getProductAvailability() {
329
+ export async function getProductAvailability(ctx) {
330
+ const log = ctx.logger.createLogger('metadata');
331
+ const fetchJson = makeFetchJson(ctx.config.request);
328
332
  const cacheKey = 'metadata:product-availability';
329
- const cached = await cache.get(cacheKey);
333
+ const cached = await ctx.cache.get(cacheKey);
330
334
  if (cached !== null) {
331
335
  return cached;
332
336
  }
@@ -334,7 +338,7 @@ export async function getProductAvailability() {
334
338
  const productIds = Object.keys(JAMF_PRODUCTS);
335
339
  const results = await Promise.all(productIds.map(async (productId) => {
336
340
  try {
337
- const categories = await fetchTopicCategories(productId);
341
+ const categories = await fetchTopicCategories(productId, ctx, fetchJson, log);
338
342
  return { productId, hasContent: categories.length > 0 };
339
343
  }
340
344
  catch {
@@ -345,7 +349,7 @@ export async function getProductAvailability() {
345
349
  availability[productId] = hasContent;
346
350
  }
347
351
  // Cache for 1 hour
348
- await cache.set(cacheKey, availability, 60 * 60 * 1000);
352
+ await ctx.cache.set(cacheKey, availability, 60 * 60 * 1000);
349
353
  return availability;
350
354
  }
351
355
  // ============================================================================
@@ -354,8 +358,8 @@ export async function getProductAvailability() {
354
358
  /**
355
359
  * Get products data formatted for resource response
356
360
  */
357
- export async function getProductsResourceData() {
358
- const products = await getProductsMetadata();
361
+ export async function getProductsResourceData(ctx) {
362
+ const products = await getProductsMetadata(ctx);
359
363
  return {
360
364
  description: 'Available Jamf products for documentation search',
361
365
  products: products.map(p => ({
@@ -373,8 +377,8 @@ export async function getProductsResourceData() {
373
377
  /**
374
378
  * Get topics data formatted for resource response
375
379
  */
376
- export async function getTopicsResourceData() {
377
- const topics = await getTopicsMetadata();
380
+ export async function getTopicsResourceData(ctx) {
381
+ const topics = await getTopicsMetadata(ctx);
378
382
  return {
379
383
  description: 'Topic categories for filtering Jamf documentation searches',
380
384
  totalTopics: topics.length,
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metadata.js","sourceRoot":"","sources":["../../../src/core/services/metadata.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,13 @@
6
6
  */
7
7
  import { type ProductId, type LocaleId } from '../constants.js';
8
8
  import { type SearchResult, type ParsedArticle, type TocEntry, type SearchParams, type TokenInfo, type PaginationInfo, type ArticleSection, type FilterRelaxation, type TruncatedContentInfo } from '../types.js';
9
+ import type { ServerContext } from '../types/context.js';
9
10
  export { ALLOWED_HOSTNAMES, isAllowedHostname } from '../utils/url.js';
11
+ /**
12
+ * Strip locale prefix (e.g. /en-US/, /ja-JP/) from URL path.
13
+ * Frontend URLs include locale in path but backend doesn't accept it.
14
+ */
15
+ export declare function stripLocalePrefix(urlStr: string): string;
10
16
  export declare function transformToBackendUrl(urlStr: string): string;
11
17
  export declare function transformToFrontendUrl(urlStr: string): string;
12
18
  /**
@@ -18,7 +24,11 @@ export declare function cleanSnippet(snippet: string, title: string, product: st
18
24
  * Build Accept-Language header value for a given locale
19
25
  */
20
26
  export declare function buildAcceptLanguage(locale: string): string;
21
- export declare const fetchHtml: (url: string, locale?: string) => Promise<string>;
27
+ /**
28
+ * Fetch HTML from a URL with error handling.
29
+ * Requires a ServerContext for request configuration.
30
+ */
31
+ export declare function fetchHtml(ctx: ServerContext, url: string, locale?: string): Promise<string>;
22
32
  /**
23
33
  * Search response with token and pagination info
24
34
  */
@@ -33,7 +43,7 @@ export interface SearchDocumentationResult {
33
43
  /**
34
44
  * Search Jamf documentation using Zoomin Search API
35
45
  */
36
- export declare function searchDocumentation(params: SearchParams): Promise<SearchDocumentationResult>;
46
+ export declare function searchDocumentation(ctx: ServerContext, params: SearchParams): Promise<SearchDocumentationResult>;
37
47
  /**
38
48
  * Options for fetching articles
39
49
  */
@@ -55,7 +65,7 @@ export interface FetchArticleResult extends ParsedArticle {
55
65
  * Fetch and parse a documentation article
56
66
  * Uses backend URL (learn-be.jamf.com) for pre-rendered content
57
67
  */
58
- export declare function fetchArticle(url: string, options?: FetchArticleOptions): Promise<FetchArticleResult>;
68
+ export declare function fetchArticle(ctx: ServerContext, url: string, options?: FetchArticleOptions): Promise<FetchArticleResult>;
59
69
  /**
60
70
  * Options for fetching table of contents
61
71
  */
@@ -76,5 +86,5 @@ export interface FetchTocResult {
76
86
  * Fetch table of contents for a product
77
87
  * Uses backend TOC endpoint (learn-be.jamf.com/bundle/{bundleId}/toc)
78
88
  */
79
- export declare function fetchTableOfContents(product: ProductId, version?: string, options?: FetchTocOptions): Promise<FetchTocResult>;
89
+ export declare function fetchTableOfContents(ctx: ServerContext, product: ProductId, version?: string, options?: FetchTocOptions): Promise<FetchTocResult>;
80
90
  //# sourceMappingURL=scraper.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scraper.d.ts","sourceRoot":"","sources":["../../../src/core/services/scraper.ts"],"names":[],"mappings":"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"}