@get-technology-inc/jamf-docs-mcp-server 1.0.0 → 1.2.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.
- package/README.md +61 -139
- package/dist/completions.d.ts +13 -0
- package/dist/completions.d.ts.map +1 -0
- package/dist/completions.js +31 -0
- package/dist/completions.js.map +1 -0
- package/dist/constants.d.ts +123 -1
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +187 -17
- package/dist/constants.js.map +1 -1
- package/dist/index.js +46 -6
- package/dist/index.js.map +1 -1
- package/dist/prompts/compare-versions.d.ts +7 -0
- package/dist/prompts/compare-versions.d.ts.map +1 -0
- package/dist/prompts/compare-versions.js +56 -0
- package/dist/prompts/compare-versions.js.map +1 -0
- package/dist/prompts/index.d.ts +6 -0
- package/dist/prompts/index.d.ts.map +1 -0
- package/dist/prompts/index.js +12 -0
- package/dist/prompts/index.js.map +1 -0
- package/dist/prompts/setup-guide.d.ts +7 -0
- package/dist/prompts/setup-guide.d.ts.map +1 -0
- package/dist/prompts/setup-guide.js +53 -0
- package/dist/prompts/setup-guide.js.map +1 -0
- package/dist/prompts/troubleshoot.d.ts +7 -0
- package/dist/prompts/troubleshoot.d.ts.map +1 -0
- package/dist/prompts/troubleshoot.js +52 -0
- package/dist/prompts/troubleshoot.js.map +1 -0
- package/dist/resources/index.d.ts +13 -0
- package/dist/resources/index.d.ts.map +1 -0
- package/dist/resources/index.js +121 -0
- package/dist/resources/index.js.map +1 -0
- package/dist/schemas/index.d.ts +29 -63
- package/dist/schemas/index.d.ts.map +1 -1
- package/dist/schemas/index.js +35 -16
- package/dist/schemas/index.js.map +1 -1
- package/dist/schemas/output.d.ts +63 -0
- package/dist/schemas/output.d.ts.map +1 -0
- package/dist/schemas/output.js +63 -0
- package/dist/schemas/output.js.map +1 -0
- package/dist/services/cache.d.ts +37 -12
- package/dist/services/cache.d.ts.map +1 -1
- package/dist/services/cache.js +141 -41
- package/dist/services/cache.js.map +1 -1
- package/dist/services/metadata.d.ts +78 -0
- package/dist/services/metadata.d.ts.map +1 -0
- package/dist/services/metadata.js +362 -0
- package/dist/services/metadata.js.map +1 -0
- package/dist/services/scraper.d.ts +3 -2
- package/dist/services/scraper.d.ts.map +1 -1
- package/dist/services/scraper.js +170 -145
- package/dist/services/scraper.js.map +1 -1
- package/dist/services/search-suggestions.d.ts +27 -0
- package/dist/services/search-suggestions.d.ts.map +1 -0
- package/dist/services/search-suggestions.js +193 -0
- package/dist/services/search-suggestions.js.map +1 -0
- package/dist/services/tokenizer.d.ts +17 -1
- package/dist/services/tokenizer.d.ts.map +1 -1
- package/dist/services/tokenizer.js +122 -66
- package/dist/services/tokenizer.js.map +1 -1
- package/dist/tools/get-article.d.ts +1 -1
- package/dist/tools/get-article.d.ts.map +1 -1
- package/dist/tools/get-article.js +145 -70
- package/dist/tools/get-article.js.map +1 -1
- package/dist/tools/get-toc.d.ts +1 -1
- package/dist/tools/get-toc.d.ts.map +1 -1
- package/dist/tools/get-toc.js +107 -47
- package/dist/tools/get-toc.js.map +1 -1
- package/dist/tools/list-products.d.ts +1 -1
- package/dist/tools/list-products.d.ts.map +1 -1
- package/dist/tools/list-products.js +42 -13
- package/dist/tools/list-products.js.map +1 -1
- package/dist/tools/search.d.ts +1 -1
- package/dist/tools/search.d.ts.map +1 -1
- package/dist/tools/search.js +142 -69
- package/dist/tools/search.js.map +1 -1
- package/dist/transport/http.d.ts +12 -0
- package/dist/transport/http.d.ts.map +1 -0
- package/dist/transport/http.js +297 -0
- package/dist/transport/http.js.map +1 -0
- package/dist/transport/index.d.ts +13 -0
- package/dist/transport/index.d.ts.map +1 -0
- package/dist/transport/index.js +40 -0
- package/dist/transport/index.js.map +1 -0
- package/dist/types.d.ts +12 -18
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/dist/utils/doc-type.d.ts +9 -0
- package/dist/utils/doc-type.d.ts.map +1 -0
- package/dist/utils/doc-type.js +16 -0
- package/dist/utils/doc-type.js.map +1 -0
- package/dist/utils/progress.d.ts +13 -0
- package/dist/utils/progress.d.ts.map +1 -0
- package/dist/utils/progress.js +18 -0
- package/dist/utils/progress.js.map +1 -0
- package/dist/utils/sanitize.d.ts +30 -0
- package/dist/utils/sanitize.d.ts.map +1 -0
- package/dist/utils/sanitize.js +57 -0
- package/dist/utils/sanitize.js.map +1 -0
- package/dist/utils/url.d.ts +11 -0
- package/dist/utils/url.d.ts.map +1 -0
- package/dist/utils/url.js +23 -0
- package/dist/utils/url.js.map +1 -0
- package/package.json +8 -5
|
@@ -0,0 +1,362 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Metadata service for Jamf documentation
|
|
3
|
+
*
|
|
4
|
+
* Dynamically fetches product versions and topic categories from the API
|
|
5
|
+
* with fallback to static constants.
|
|
6
|
+
*/
|
|
7
|
+
import axios from 'axios';
|
|
8
|
+
import * as cheerio from 'cheerio';
|
|
9
|
+
import { DOCS_API_URL, JAMF_PRODUCTS, JAMF_TOPICS, REQUEST_CONFIG, CACHE_TTL } from '../constants.js';
|
|
10
|
+
import { cache } from './cache.js';
|
|
11
|
+
// ============================================================================
|
|
12
|
+
// API Helpers
|
|
13
|
+
// ============================================================================
|
|
14
|
+
async function fetchJson(url) {
|
|
15
|
+
const response = await axios.get(url, {
|
|
16
|
+
timeout: REQUEST_CONFIG.TIMEOUT,
|
|
17
|
+
headers: {
|
|
18
|
+
'User-Agent': REQUEST_CONFIG.USER_AGENT,
|
|
19
|
+
'Accept': 'application/json'
|
|
20
|
+
}
|
|
21
|
+
});
|
|
22
|
+
return response.data;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Discover all available versions for a product
|
|
26
|
+
*/
|
|
27
|
+
async function discoverProductVersions(productId) {
|
|
28
|
+
const product = JAMF_PRODUCTS[productId];
|
|
29
|
+
const versions = new Set();
|
|
30
|
+
try {
|
|
31
|
+
// Search with a broad query to find all bundle versions
|
|
32
|
+
const apiUrl = `${DOCS_API_URL}/api/search?q=${encodeURIComponent(product.name)}&rpp=100`;
|
|
33
|
+
const response = await fetchJson(apiUrl);
|
|
34
|
+
const versionRegex = /-(\d+\.\d+\.\d+)$/;
|
|
35
|
+
const bundlePrefix = `${product.bundleId}-`;
|
|
36
|
+
for (const wrapper of response.Results) {
|
|
37
|
+
const bundleId = wrapper.leading_result?.bundle_id;
|
|
38
|
+
// Skip if no bundle_id (null or undefined)
|
|
39
|
+
if (bundleId === null || bundleId === undefined) {
|
|
40
|
+
continue;
|
|
41
|
+
}
|
|
42
|
+
// Check if this is a versioned documentation bundle for our product
|
|
43
|
+
if (bundleId.startsWith(bundlePrefix) || bundleId === product.bundleId) {
|
|
44
|
+
const match = versionRegex.exec(bundleId);
|
|
45
|
+
if (match?.[1] !== undefined) {
|
|
46
|
+
versions.add(match[1]);
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
catch (error) {
|
|
52
|
+
console.error(`[METADATA] Error discovering versions for ${productId}:`, error);
|
|
53
|
+
}
|
|
54
|
+
// Sort versions in descending order (newest first)
|
|
55
|
+
return Array.from(versions).sort((a, b) => {
|
|
56
|
+
const partsA = a.split('.').map(Number);
|
|
57
|
+
const partsB = b.split('.').map(Number);
|
|
58
|
+
for (let i = 0; i < 3; i++) {
|
|
59
|
+
const diff = (partsB[i] ?? 0) - (partsA[i] ?? 0);
|
|
60
|
+
if (diff !== 0) {
|
|
61
|
+
return diff;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
return 0;
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Fetch latest version and metadata for a product from the API
|
|
69
|
+
*/
|
|
70
|
+
async function fetchProductMetadata(productId) {
|
|
71
|
+
const product = JAMF_PRODUCTS[productId];
|
|
72
|
+
try {
|
|
73
|
+
// Discover all available versions
|
|
74
|
+
const availableVersions = await discoverProductVersions(productId);
|
|
75
|
+
// Search for a doc from this product to get the bundle ID and labels
|
|
76
|
+
const apiUrl = `${DOCS_API_URL}/api/search?q=${encodeURIComponent(product.name)}&rpp=5`;
|
|
77
|
+
const response = await fetchJson(apiUrl);
|
|
78
|
+
for (const wrapper of response.Results) {
|
|
79
|
+
const result = wrapper.leading_result;
|
|
80
|
+
const bundleId = result?.bundle_id;
|
|
81
|
+
// Skip if no bundle_id or doesn't match our product
|
|
82
|
+
if (bundleId?.startsWith(product.bundleId) !== true) {
|
|
83
|
+
continue;
|
|
84
|
+
}
|
|
85
|
+
// Extract version from bundle_id (e.g., "jamf-pro-documentation-11.24.0" → "11.24.0")
|
|
86
|
+
const versionRegex = /-(\d+\.\d+\.\d+)$/;
|
|
87
|
+
const versionMatch = versionRegex.exec(bundleId);
|
|
88
|
+
const latestVersion = versionMatch?.[1] ?? 'current';
|
|
89
|
+
// Find product label key
|
|
90
|
+
const productLabel = result?.labels?.find(l => l.key.startsWith('product-') && !l.key.includes('-'));
|
|
91
|
+
const labelKey = productLabel?.key ?? product.searchLabel;
|
|
92
|
+
return {
|
|
93
|
+
id: productId,
|
|
94
|
+
name: product.name,
|
|
95
|
+
description: product.description,
|
|
96
|
+
bundleId,
|
|
97
|
+
latestVersion,
|
|
98
|
+
availableVersions: availableVersions.length > 0 ? availableVersions : [latestVersion],
|
|
99
|
+
labelKey
|
|
100
|
+
};
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
catch (error) {
|
|
104
|
+
console.error(`[METADATA] Error fetching metadata for ${productId}:`, error);
|
|
105
|
+
}
|
|
106
|
+
return null;
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* Get all products with their latest metadata
|
|
110
|
+
* Uses cache with fallback to static constants
|
|
111
|
+
*/
|
|
112
|
+
export async function getProductsMetadata() {
|
|
113
|
+
const cacheKey = 'metadata:products';
|
|
114
|
+
// Check cache
|
|
115
|
+
const cached = await cache.get(cacheKey);
|
|
116
|
+
if (cached !== null) {
|
|
117
|
+
return cached;
|
|
118
|
+
}
|
|
119
|
+
// Fetch metadata for all products concurrently
|
|
120
|
+
const productIds = Object.keys(JAMF_PRODUCTS);
|
|
121
|
+
const fetchResults = await Promise.all(productIds.map(async (productId) => {
|
|
122
|
+
try {
|
|
123
|
+
const metadata = await fetchProductMetadata(productId);
|
|
124
|
+
return { productId, metadata };
|
|
125
|
+
}
|
|
126
|
+
catch (error) {
|
|
127
|
+
console.error(`[METADATA] Failed to fetch metadata for ${productId}:`, error);
|
|
128
|
+
return { productId, metadata: null };
|
|
129
|
+
}
|
|
130
|
+
}));
|
|
131
|
+
const products = [];
|
|
132
|
+
for (const { productId, metadata } of fetchResults) {
|
|
133
|
+
if (metadata !== null) {
|
|
134
|
+
products.push(metadata);
|
|
135
|
+
}
|
|
136
|
+
else {
|
|
137
|
+
// Fallback to static data
|
|
138
|
+
const product = JAMF_PRODUCTS[productId];
|
|
139
|
+
products.push({
|
|
140
|
+
id: productId,
|
|
141
|
+
name: product.name,
|
|
142
|
+
description: product.description,
|
|
143
|
+
bundleId: product.bundleId,
|
|
144
|
+
latestVersion: product.latestVersion,
|
|
145
|
+
availableVersions: [product.latestVersion],
|
|
146
|
+
labelKey: product.searchLabel
|
|
147
|
+
});
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
// Cache for 24 hours
|
|
151
|
+
await cache.set(cacheKey, products, CACHE_TTL.ARTICLE_CONTENT);
|
|
152
|
+
return products;
|
|
153
|
+
}
|
|
154
|
+
/**
|
|
155
|
+
* Get the bundle ID for a specific product and version
|
|
156
|
+
* Returns the latest bundle ID if version is undefined or 'current'
|
|
157
|
+
*/
|
|
158
|
+
export async function getBundleIdForVersion(productId, version) {
|
|
159
|
+
const products = await getProductsMetadata();
|
|
160
|
+
const product = products.find(p => p.id === productId);
|
|
161
|
+
if (product === undefined) {
|
|
162
|
+
return null;
|
|
163
|
+
}
|
|
164
|
+
// If no version specified or 'current', return latest
|
|
165
|
+
if (version === undefined || version === 'current' || version === 'latest') {
|
|
166
|
+
return product.bundleId;
|
|
167
|
+
}
|
|
168
|
+
// Check if requested version is available
|
|
169
|
+
if (!product.availableVersions.includes(version)) {
|
|
170
|
+
console.error(`[METADATA] Version ${version} not available for ${productId}. Available: ${product.availableVersions.join(', ')}`);
|
|
171
|
+
return null;
|
|
172
|
+
}
|
|
173
|
+
// Construct versioned bundle ID
|
|
174
|
+
const baseBundle = JAMF_PRODUCTS[productId].bundleId;
|
|
175
|
+
return `${baseBundle}-${version}`;
|
|
176
|
+
}
|
|
177
|
+
/**
|
|
178
|
+
* Get available versions for a product
|
|
179
|
+
*/
|
|
180
|
+
export async function getAvailableVersions(productId) {
|
|
181
|
+
const products = await getProductsMetadata();
|
|
182
|
+
const product = products.find(p => p.id === productId);
|
|
183
|
+
return product?.availableVersions ?? [];
|
|
184
|
+
}
|
|
185
|
+
// ============================================================================
|
|
186
|
+
// Topic Categories from TOC
|
|
187
|
+
// ============================================================================
|
|
188
|
+
/**
|
|
189
|
+
* Parse TOC HTML to extract categories
|
|
190
|
+
*/
|
|
191
|
+
function parseTocCategories(tocData) {
|
|
192
|
+
const categories = [];
|
|
193
|
+
// Sort by nav ID number
|
|
194
|
+
const sortedEntries = Object.entries(tocData)
|
|
195
|
+
.filter(([key]) => key.startsWith('nav-'))
|
|
196
|
+
.sort((a, b) => {
|
|
197
|
+
const numA = parseInt(a[0].replace('nav-', ''), 10);
|
|
198
|
+
const numB = parseInt(b[0].replace('nav-', ''), 10);
|
|
199
|
+
return numA - numB;
|
|
200
|
+
});
|
|
201
|
+
for (const [navId, html] of sortedEntries) {
|
|
202
|
+
if (typeof html !== 'string' || !html.includes('<ul')) {
|
|
203
|
+
continue;
|
|
204
|
+
}
|
|
205
|
+
const $ = cheerio.load(html);
|
|
206
|
+
const children = [];
|
|
207
|
+
// Get all article titles in this section
|
|
208
|
+
$('a').each((_, el) => {
|
|
209
|
+
const title = $(el).text().trim();
|
|
210
|
+
if (title !== '') {
|
|
211
|
+
children.push(title);
|
|
212
|
+
}
|
|
213
|
+
});
|
|
214
|
+
if (children.length > 0) {
|
|
215
|
+
// First child is usually the section title
|
|
216
|
+
const title = children[0] ?? 'Untitled';
|
|
217
|
+
categories.push({
|
|
218
|
+
navId,
|
|
219
|
+
title,
|
|
220
|
+
articleCount: children.length,
|
|
221
|
+
children: children.slice(1) // Exclude the title itself
|
|
222
|
+
});
|
|
223
|
+
}
|
|
224
|
+
}
|
|
225
|
+
return categories;
|
|
226
|
+
}
|
|
227
|
+
/**
|
|
228
|
+
* Convert TOC category to topic ID (slug)
|
|
229
|
+
*/
|
|
230
|
+
function categoryToTopicId(title) {
|
|
231
|
+
return title
|
|
232
|
+
.toLowerCase()
|
|
233
|
+
.replace(/[^a-z0-9\s-]/g, '')
|
|
234
|
+
.replace(/\s+/g, '-')
|
|
235
|
+
.replace(/-+/g, '-')
|
|
236
|
+
.replace(/^-|-$/g, '')
|
|
237
|
+
.slice(0, 30); // Limit length
|
|
238
|
+
}
|
|
239
|
+
/**
|
|
240
|
+
* Fetch topic categories from TOC for a product
|
|
241
|
+
*/
|
|
242
|
+
async function fetchTopicCategories(productId) {
|
|
243
|
+
try {
|
|
244
|
+
// First get the latest bundle ID
|
|
245
|
+
const products = await getProductsMetadata();
|
|
246
|
+
const product = products.find(p => p.id === productId);
|
|
247
|
+
if (product === undefined) {
|
|
248
|
+
return [];
|
|
249
|
+
}
|
|
250
|
+
const tocUrl = `${DOCS_API_URL}/bundle/${product.bundleId}/toc`;
|
|
251
|
+
const tocData = await fetchJson(tocUrl);
|
|
252
|
+
return parseTocCategories(tocData);
|
|
253
|
+
}
|
|
254
|
+
catch (error) {
|
|
255
|
+
console.error(`[METADATA] Error fetching TOC categories for ${productId}:`, error);
|
|
256
|
+
return [];
|
|
257
|
+
}
|
|
258
|
+
}
|
|
259
|
+
/**
|
|
260
|
+
* Add or update a topic in the map
|
|
261
|
+
*/
|
|
262
|
+
function upsertTopic(topicsMap, category) {
|
|
263
|
+
const topicId = categoryToTopicId(category.title);
|
|
264
|
+
if (!topicsMap.has(topicId)) {
|
|
265
|
+
// Add new topic from TOC
|
|
266
|
+
topicsMap.set(topicId, {
|
|
267
|
+
id: topicId,
|
|
268
|
+
name: category.title,
|
|
269
|
+
source: 'toc',
|
|
270
|
+
articleCount: category.articleCount
|
|
271
|
+
});
|
|
272
|
+
}
|
|
273
|
+
else {
|
|
274
|
+
// Update existing topic with article count (accumulate across products)
|
|
275
|
+
const existing = topicsMap.get(topicId);
|
|
276
|
+
if (existing !== undefined) {
|
|
277
|
+
existing.articleCount = (existing.articleCount ?? 0) + category.articleCount;
|
|
278
|
+
}
|
|
279
|
+
}
|
|
280
|
+
}
|
|
281
|
+
/**
|
|
282
|
+
* Get all topics, combining TOC-derived from all products and manual topics
|
|
283
|
+
*/
|
|
284
|
+
export async function getTopicsMetadata() {
|
|
285
|
+
const cacheKey = 'metadata:topics';
|
|
286
|
+
// Check cache
|
|
287
|
+
const cached = await cache.get(cacheKey);
|
|
288
|
+
if (cached !== null) {
|
|
289
|
+
return cached;
|
|
290
|
+
}
|
|
291
|
+
const topicsMap = new Map();
|
|
292
|
+
// Start with manual topics as fallback
|
|
293
|
+
for (const [id, topic] of Object.entries(JAMF_TOPICS)) {
|
|
294
|
+
topicsMap.set(id, {
|
|
295
|
+
id,
|
|
296
|
+
name: topic.name,
|
|
297
|
+
source: 'manual'
|
|
298
|
+
});
|
|
299
|
+
}
|
|
300
|
+
// Fetch TOC categories from ALL products concurrently
|
|
301
|
+
const productIds = Object.keys(JAMF_PRODUCTS);
|
|
302
|
+
const tocResults = await Promise.all(productIds.map(async (productId) => {
|
|
303
|
+
try {
|
|
304
|
+
const categories = await fetchTopicCategories(productId);
|
|
305
|
+
return { productId, categories };
|
|
306
|
+
}
|
|
307
|
+
catch (error) {
|
|
308
|
+
console.error(`[METADATA] Error fetching TOC for ${productId}:`, error);
|
|
309
|
+
return { productId, categories: [] };
|
|
310
|
+
}
|
|
311
|
+
}));
|
|
312
|
+
for (const { categories } of tocResults) {
|
|
313
|
+
for (const category of categories) {
|
|
314
|
+
upsertTopic(topicsMap, category);
|
|
315
|
+
}
|
|
316
|
+
}
|
|
317
|
+
const topics = Array.from(topicsMap.values());
|
|
318
|
+
// Cache for 24 hours
|
|
319
|
+
await cache.set(cacheKey, topics, CACHE_TTL.ARTICLE_CONTENT);
|
|
320
|
+
return topics;
|
|
321
|
+
}
|
|
322
|
+
// ============================================================================
|
|
323
|
+
// Convenience functions for Resources
|
|
324
|
+
// ============================================================================
|
|
325
|
+
/**
|
|
326
|
+
* Get products data formatted for resource response
|
|
327
|
+
*/
|
|
328
|
+
export async function getProductsResourceData() {
|
|
329
|
+
const products = await getProductsMetadata();
|
|
330
|
+
return {
|
|
331
|
+
description: 'Available Jamf products for documentation search',
|
|
332
|
+
products: products.map(p => ({
|
|
333
|
+
id: p.id,
|
|
334
|
+
name: p.name,
|
|
335
|
+
description: p.description,
|
|
336
|
+
latestVersion: p.latestVersion,
|
|
337
|
+
availableVersions: p.availableVersions,
|
|
338
|
+
bundleId: p.bundleId
|
|
339
|
+
})),
|
|
340
|
+
lastUpdated: new Date().toISOString(),
|
|
341
|
+
usage: 'Use product ID (e.g., "jamf-pro") with jamf_docs_search or jamf_docs_get_toc tools. Use version parameter to query specific versions.'
|
|
342
|
+
};
|
|
343
|
+
}
|
|
344
|
+
/**
|
|
345
|
+
* Get topics data formatted for resource response
|
|
346
|
+
*/
|
|
347
|
+
export async function getTopicsResourceData() {
|
|
348
|
+
const topics = await getTopicsMetadata();
|
|
349
|
+
return {
|
|
350
|
+
description: 'Topic categories for filtering Jamf documentation searches',
|
|
351
|
+
totalTopics: topics.length,
|
|
352
|
+
topics: topics.map(t => ({
|
|
353
|
+
id: t.id,
|
|
354
|
+
name: t.name,
|
|
355
|
+
source: t.source,
|
|
356
|
+
...(t.articleCount !== undefined ? { articleCount: t.articleCount } : {})
|
|
357
|
+
})),
|
|
358
|
+
lastUpdated: new Date().toISOString(),
|
|
359
|
+
usage: 'Use topic ID (e.g., "enrollment") with jamf_docs_search tool to filter results'
|
|
360
|
+
};
|
|
361
|
+
}
|
|
362
|
+
//# sourceMappingURL=metadata.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"metadata.js","sourceRoot":"","sources":["../../src/services/metadata.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
*/
|
|
7
7
|
import { type ProductId } from '../constants.js';
|
|
8
8
|
import { type SearchResult, type ParsedArticle, type TocEntry, type SearchParams, type TokenInfo, type PaginationInfo, type ArticleSection } from '../types.js';
|
|
9
|
+
export { ALLOWED_HOSTNAMES, isAllowedHostname } from '../utils/url.js';
|
|
9
10
|
/**
|
|
10
11
|
* Search response with token and pagination info
|
|
11
12
|
*/
|
|
@@ -24,6 +25,7 @@ export declare function searchDocumentation(params: SearchParams): Promise<Searc
|
|
|
24
25
|
export interface FetchArticleOptions {
|
|
25
26
|
includeRelated?: boolean;
|
|
26
27
|
section?: string;
|
|
28
|
+
summaryOnly?: boolean;
|
|
27
29
|
maxTokens?: number;
|
|
28
30
|
}
|
|
29
31
|
/**
|
|
@@ -57,6 +59,5 @@ export interface FetchTocResult {
|
|
|
57
59
|
* Fetch table of contents for a product
|
|
58
60
|
* Uses backend TOC endpoint (learn-be.jamf.com/bundle/{bundleId}/toc)
|
|
59
61
|
*/
|
|
60
|
-
export declare function fetchTableOfContents(product: ProductId,
|
|
61
|
-
options?: FetchTocOptions): Promise<FetchTocResult>;
|
|
62
|
+
export declare function fetchTableOfContents(product: ProductId, version?: string, options?: FetchTocOptions): Promise<FetchTocResult>;
|
|
62
63
|
//# sourceMappingURL=scraper.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scraper.d.ts","sourceRoot":"","sources":["../../src/services/scraper.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"scraper.d.ts","sourceRoot":"","sources":["../../src/services/scraper.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AASH,OAAO,EAUL,KAAK,SAAS,EAEf,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAGL,KAAK,YAAY,EACjB,KAAK,aAAa,EAClB,KAAK,QAAQ,EACb,KAAK,YAAY,EAEjB,KAAK,SAAS,EACd,KAAK,cAAc,EACnB,KAAK,cAAc,EACpB,MAAM,aAAa,CAAC;AAoDrB,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AA6KvE;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,UAAU,EAAE,cAAc,CAAC;IAC3B,SAAS,EAAE,SAAS,CAAC;CACtB;AAED;;GAEG;AACH,wBAAsB,mBAAmB,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,yBAAyB,CAAC,CAsKlG;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAmB,SAAQ,aAAa;IACvD,SAAS,EAAE,SAAS,CAAC;IACrB,QAAQ,EAAE,cAAc,EAAE,CAAC;CAC5B;AAED;;;GAGG;AACH,wBAAsB,YAAY,CAChC,GAAG,EAAE,MAAM,EACX,OAAO,GAAE,mBAAwB,GAChC,OAAO,CAAC,kBAAkB,CAAC,CAmH7B;AAmFD;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,GAAG,EAAE,QAAQ,EAAE,CAAC;IAChB,UAAU,EAAE,cAAc,CAAC;IAC3B,SAAS,EAAE,SAAS,CAAC;CACtB;AAkBD;;;GAGG;AACH,wBAAsB,oBAAoB,CACxC,OAAO,EAAE,SAAS,EAClB,OAAO,SAAY,EACnB,OAAO,GAAE,eAAoB,GAC5B,OAAO,CAAC,cAAc,CAAC,CA+FzB"}
|