@get-technology-inc/jamf-docs-mcp-server 3.0.5 → 3.0.7

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 (183) hide show
  1. package/dist/core/constants/doc-types.d.ts +48 -0
  2. package/dist/core/constants/doc-types.d.ts.map +1 -0
  3. package/dist/core/constants/doc-types.js +58 -0
  4. package/dist/core/constants/doc-types.js.map +1 -0
  5. package/dist/core/constants/index.d.ts +16 -0
  6. package/dist/core/constants/index.d.ts.map +1 -0
  7. package/dist/core/constants/index.js +12 -0
  8. package/dist/core/constants/index.js.map +1 -0
  9. package/dist/core/constants/limits.d.ts +39 -0
  10. package/dist/core/constants/limits.d.ts.map +1 -0
  11. package/dist/core/constants/limits.js +51 -0
  12. package/dist/core/constants/limits.js.map +1 -0
  13. package/dist/core/constants/locales.d.ts +34 -0
  14. package/dist/core/constants/locales.d.ts.map +1 -0
  15. package/dist/core/constants/locales.js +20 -0
  16. package/dist/core/constants/locales.js.map +1 -0
  17. package/dist/core/constants/products.d.ts +127 -0
  18. package/dist/core/constants/products.d.ts.map +1 -0
  19. package/dist/core/constants/products.js +135 -0
  20. package/dist/core/constants/products.js.map +1 -0
  21. package/dist/core/constants/topics.d.ts +168 -0
  22. package/dist/core/constants/topics.d.ts.map +1 -0
  23. package/dist/core/constants/topics.js +186 -0
  24. package/dist/core/constants/topics.js.map +1 -0
  25. package/dist/core/constants.d.ts +7 -404
  26. package/dist/core/constants.d.ts.map +1 -1
  27. package/dist/core/constants.js +16 -427
  28. package/dist/core/constants.js.map +1 -1
  29. package/dist/core/http-client.d.ts +14 -2
  30. package/dist/core/http-client.d.ts.map +1 -1
  31. package/dist/core/http-client.js +148 -17
  32. package/dist/core/http-client.js.map +1 -1
  33. package/dist/core/index.d.ts +12 -12
  34. package/dist/core/index.d.ts.map +1 -1
  35. package/dist/core/index.js +12 -13
  36. package/dist/core/index.js.map +1 -1
  37. package/dist/core/resources/index.js +1 -1
  38. package/dist/core/resources/index.js.map +1 -1
  39. package/dist/core/schemas/index.d.ts +3 -1
  40. package/dist/core/schemas/index.d.ts.map +1 -1
  41. package/dist/core/schemas/index.js +12 -1
  42. package/dist/core/schemas/index.js.map +1 -1
  43. package/dist/core/schemas/output.d.ts +7 -0
  44. package/dist/core/schemas/output.d.ts.map +1 -1
  45. package/dist/core/schemas/output.js +7 -0
  46. package/dist/core/schemas/output.js.map +1 -1
  47. package/dist/core/services/article-service.d.ts +24 -0
  48. package/dist/core/services/article-service.d.ts.map +1 -0
  49. package/dist/core/services/article-service.js +118 -0
  50. package/dist/core/services/article-service.js.map +1 -0
  51. package/dist/core/services/content-parser.d.ts +38 -0
  52. package/dist/core/services/content-parser.d.ts.map +1 -0
  53. package/dist/core/services/content-parser.js +146 -0
  54. package/dist/core/services/content-parser.js.map +1 -0
  55. package/dist/core/services/ft-client.d.ts +52 -0
  56. package/dist/core/services/ft-client.d.ts.map +1 -0
  57. package/dist/core/services/ft-client.js +87 -0
  58. package/dist/core/services/ft-client.js.map +1 -0
  59. package/dist/core/services/glossary.d.ts +9 -5
  60. package/dist/core/services/glossary.d.ts.map +1 -1
  61. package/dist/core/services/glossary.js +174 -107
  62. package/dist/core/services/glossary.js.map +1 -1
  63. package/dist/core/services/interfaces/cache.d.ts +6 -6
  64. package/dist/core/services/interfaces/cache.d.ts.map +1 -1
  65. package/dist/core/services/interfaces/index.d.ts +3 -3
  66. package/dist/core/services/interfaces/index.d.ts.map +1 -1
  67. package/dist/core/services/interfaces/logger.d.ts +17 -10
  68. package/dist/core/services/interfaces/logger.d.ts.map +1 -1
  69. package/dist/core/services/interfaces/metadata.d.ts +0 -10
  70. package/dist/core/services/interfaces/metadata.d.ts.map +1 -1
  71. package/dist/core/services/interfaces/providers.d.ts +26 -10
  72. package/dist/core/services/interfaces/providers.d.ts.map +1 -1
  73. package/dist/core/services/logging.d.ts +38 -18
  74. package/dist/core/services/logging.d.ts.map +1 -1
  75. package/dist/core/services/logging.js +78 -29
  76. package/dist/core/services/logging.js.map +1 -1
  77. package/dist/core/services/maps-registry.d.ts +82 -0
  78. package/dist/core/services/maps-registry.d.ts.map +1 -0
  79. package/dist/core/services/maps-registry.js +232 -0
  80. package/dist/core/services/maps-registry.js.map +1 -0
  81. package/dist/core/services/metadata.d.ts +18 -9
  82. package/dist/core/services/metadata.d.ts.map +1 -1
  83. package/dist/core/services/metadata.js +113 -254
  84. package/dist/core/services/metadata.js.map +1 -1
  85. package/dist/core/services/search-service.d.ts +31 -0
  86. package/dist/core/services/search-service.d.ts.map +1 -0
  87. package/dist/core/services/search-service.js +471 -0
  88. package/dist/core/services/search-service.js.map +1 -0
  89. package/dist/core/services/toc-service.d.ts +30 -0
  90. package/dist/core/services/toc-service.d.ts.map +1 -0
  91. package/dist/core/services/toc-service.js +101 -0
  92. package/dist/core/services/toc-service.js.map +1 -0
  93. package/dist/core/services/tokenizer.d.ts +1 -1
  94. package/dist/core/services/tokenizer.d.ts.map +1 -1
  95. package/dist/core/services/tokenizer.js +3 -3
  96. package/dist/core/services/tokenizer.js.map +1 -1
  97. package/dist/core/services/topic-resolver.d.ts +57 -0
  98. package/dist/core/services/topic-resolver.d.ts.map +1 -0
  99. package/dist/core/services/topic-resolver.js +185 -0
  100. package/dist/core/services/topic-resolver.js.map +1 -0
  101. package/dist/core/tools/batch-get-articles.d.ts +0 -2
  102. package/dist/core/tools/batch-get-articles.d.ts.map +1 -1
  103. package/dist/core/tools/batch-get-articles.js +12 -46
  104. package/dist/core/tools/batch-get-articles.js.map +1 -1
  105. package/dist/core/tools/get-article.d.ts.map +1 -1
  106. package/dist/core/tools/get-article.js +29 -112
  107. package/dist/core/tools/get-article.js.map +1 -1
  108. package/dist/core/tools/get-toc.js +1 -1
  109. package/dist/core/tools/get-toc.js.map +1 -1
  110. package/dist/core/tools/search.js +5 -5
  111. package/dist/core/tools/search.js.map +1 -1
  112. package/dist/core/types/context.d.ts +5 -2
  113. package/dist/core/types/context.d.ts.map +1 -1
  114. package/dist/core/types.d.ts +141 -31
  115. package/dist/core/types.d.ts.map +1 -1
  116. package/dist/core/types.js.map +1 -1
  117. package/dist/core/utils/bundle.d.ts +14 -1
  118. package/dist/core/utils/bundle.d.ts.map +1 -1
  119. package/dist/core/utils/bundle.js +19 -2
  120. package/dist/core/utils/bundle.js.map +1 -1
  121. package/dist/core/utils/format-article.d.ts +45 -0
  122. package/dist/core/utils/format-article.d.ts.map +1 -0
  123. package/dist/core/utils/format-article.js +138 -0
  124. package/dist/core/utils/format-article.js.map +1 -0
  125. package/dist/core/utils/ft-metadata.d.ts +22 -0
  126. package/dist/core/utils/ft-metadata.d.ts.map +1 -0
  127. package/dist/core/utils/ft-metadata.js +30 -0
  128. package/dist/core/utils/ft-metadata.js.map +1 -0
  129. package/dist/core/utils/sanitize.d.ts.map +1 -1
  130. package/dist/core/utils/sanitize.js +0 -2
  131. package/dist/core/utils/sanitize.js.map +1 -1
  132. package/dist/core/utils/url.d.ts.map +1 -1
  133. package/dist/core/utils/url.js +0 -1
  134. package/dist/core/utils/url.js.map +1 -1
  135. package/dist/index.js +10 -6
  136. package/dist/index.js.map +1 -1
  137. package/dist/platforms/node/http-server.d.ts +13 -0
  138. package/dist/platforms/node/http-server.d.ts.map +1 -0
  139. package/dist/platforms/node/http-server.js +231 -0
  140. package/dist/platforms/node/http-server.js.map +1 -0
  141. package/dist/platforms/node/index.d.ts +1 -1
  142. package/dist/platforms/node/index.d.ts.map +1 -1
  143. package/dist/platforms/node/index.js +1 -1
  144. package/dist/platforms/node/index.js.map +1 -1
  145. package/dist/platforms/node/logger.d.ts +13 -2
  146. package/dist/platforms/node/logger.d.ts.map +1 -1
  147. package/dist/platforms/node/logger.js +17 -4
  148. package/dist/platforms/node/logger.js.map +1 -1
  149. package/dist/transport/http-handler.d.ts +25 -0
  150. package/dist/transport/http-handler.d.ts.map +1 -0
  151. package/dist/transport/http-handler.js +193 -0
  152. package/dist/transport/http-handler.js.map +1 -0
  153. package/dist/transport/http-types.d.ts +22 -0
  154. package/dist/transport/http-types.d.ts.map +1 -0
  155. package/dist/transport/http-types.js +65 -0
  156. package/dist/transport/http-types.js.map +1 -0
  157. package/dist/transport/http.d.ts +4 -8
  158. package/dist/transport/http.d.ts.map +1 -1
  159. package/dist/transport/http.js +4 -376
  160. package/dist/transport/http.js.map +1 -1
  161. package/dist/transport/index.js +2 -2
  162. package/dist/transport/index.js.map +1 -1
  163. package/dist/transport/rate-limiter.d.ts +16 -0
  164. package/dist/transport/rate-limiter.d.ts.map +1 -0
  165. package/dist/transport/rate-limiter.js +55 -0
  166. package/dist/transport/rate-limiter.js.map +1 -0
  167. package/package.json +3 -3
  168. package/dist/core/services/interfaces.d.ts +0 -94
  169. package/dist/core/services/interfaces.d.ts.map +0 -1
  170. package/dist/core/services/interfaces.js +0 -8
  171. package/dist/core/services/interfaces.js.map +0 -1
  172. package/dist/core/services/scraper.d.ts +0 -90
  173. package/dist/core/services/scraper.d.ts.map +0 -1
  174. package/dist/core/services/scraper.js +0 -966
  175. package/dist/core/services/scraper.js.map +0 -1
  176. package/dist/core/utils/doc-type.d.ts +0 -12
  177. package/dist/core/utils/doc-type.d.ts.map +0 -1
  178. package/dist/core/utils/doc-type.js +0 -24
  179. package/dist/core/utils/doc-type.js.map +0 -1
  180. package/dist/platforms/node/metadata.d.ts +0 -18
  181. package/dist/platforms/node/metadata.d.ts.map +0 -1
  182. package/dist/platforms/node/metadata.js +0 -35
  183. package/dist/platforms/node/metadata.js.map +0 -1
@@ -0,0 +1,48 @@
1
+ /**
2
+ * Document type constants for filtering search results by content category
3
+ */
4
+ export declare const DOC_TYPES: {
5
+ readonly documentation: {
6
+ readonly name: "Documentation";
7
+ readonly description: "Main product documentation";
8
+ readonly labelKey: "content-techdocs";
9
+ };
10
+ readonly 'release-notes': {
11
+ readonly name: "Release Notes";
12
+ readonly description: "Version release notes and changelogs";
13
+ readonly labelKey: "content-releasenotes";
14
+ };
15
+ readonly training: {
16
+ readonly name: "Training";
17
+ readonly description: "Training materials and video guides";
18
+ readonly labelKey: "content-training";
19
+ };
20
+ readonly 'solution-guide': {
21
+ readonly name: "Solution Guide";
22
+ readonly description: "Solution guides and best practices";
23
+ readonly labelKey: "content-solutionguide";
24
+ };
25
+ readonly glossary: {
26
+ readonly name: "Glossary";
27
+ readonly description: "Technical glossary and terminology";
28
+ readonly labelKey: "content-glossary";
29
+ };
30
+ readonly 'getting-started': {
31
+ readonly name: "Getting Started";
32
+ readonly description: "Getting started guides and quickstart content";
33
+ readonly labelKey: "content-gettingstarted";
34
+ };
35
+ };
36
+ export type DocTypeId = keyof typeof DOC_TYPES;
37
+ export declare const DOC_TYPE_LABEL_MAP: Record<DocTypeId, string>;
38
+ /**
39
+ * Forward mapping: docType -> Fluid Topics `jamf:contentType` metadata value.
40
+ *
41
+ * Note: The FT API uses 'Technical Documentation' for multiple doc types
42
+ * (documentation, training, solution-guide, getting-started), so reverse
43
+ * lookup (contentType -> docType) will always return 'documentation' for
44
+ * these entries. This is a known FT API limitation.
45
+ */
46
+ export declare const DOC_TYPE_CONTENT_TYPE_MAP: Record<string, string>;
47
+ export declare const DOC_TYPE_IDS: [string, ...string[]];
48
+ //# sourceMappingURL=doc-types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"doc-types.d.ts","sourceRoot":"","sources":["../../../src/core/constants/doc-types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+BZ,CAAC;AAEX,MAAM,MAAM,SAAS,GAAG,MAAM,OAAO,SAAS,CAAC;AAG/C,eAAO,MAAM,kBAAkB,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAE3B,CAAC;AAE/B;;;;;;;GAOG;AACH,eAAO,MAAM,yBAAyB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAO5D,CAAC;AAGF,eAAO,MAAM,YAAY,EAA6B,CAAC,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC,CAAC"}
@@ -0,0 +1,58 @@
1
+ /**
2
+ * Document type constants for filtering search results by content category
3
+ */
4
+ // Document types for filtering search results by content category
5
+ // Each type maps to a legacy `content-*` label key used by the FT search filter
6
+ export const DOC_TYPES = {
7
+ 'documentation': {
8
+ name: 'Documentation',
9
+ description: 'Main product documentation',
10
+ labelKey: 'content-techdocs',
11
+ },
12
+ 'release-notes': {
13
+ name: 'Release Notes',
14
+ description: 'Version release notes and changelogs',
15
+ labelKey: 'content-releasenotes',
16
+ },
17
+ 'training': {
18
+ name: 'Training',
19
+ description: 'Training materials and video guides',
20
+ labelKey: 'content-training',
21
+ },
22
+ 'solution-guide': {
23
+ name: 'Solution Guide',
24
+ description: 'Solution guides and best practices',
25
+ labelKey: 'content-solutionguide',
26
+ },
27
+ 'glossary': {
28
+ name: 'Glossary',
29
+ description: 'Technical glossary and terminology',
30
+ labelKey: 'content-glossary',
31
+ },
32
+ 'getting-started': {
33
+ name: 'Getting Started',
34
+ description: 'Getting started guides and quickstart content',
35
+ labelKey: 'content-gettingstarted',
36
+ },
37
+ };
38
+ // Forward mapping: docType enum value -> API label key
39
+ export const DOC_TYPE_LABEL_MAP = Object.fromEntries(Object.entries(DOC_TYPES).map(([id, dt]) => [id, dt.labelKey]));
40
+ /**
41
+ * Forward mapping: docType -> Fluid Topics `jamf:contentType` metadata value.
42
+ *
43
+ * Note: The FT API uses 'Technical Documentation' for multiple doc types
44
+ * (documentation, training, solution-guide, getting-started), so reverse
45
+ * lookup (contentType -> docType) will always return 'documentation' for
46
+ * these entries. This is a known FT API limitation.
47
+ */
48
+ export const DOC_TYPE_CONTENT_TYPE_MAP = {
49
+ 'documentation': 'Technical Documentation',
50
+ 'release-notes': 'Release Notes',
51
+ 'glossary': 'Glossary',
52
+ 'training': 'Technical Documentation',
53
+ 'solution-guide': 'Technical Documentation',
54
+ 'getting-started': 'Technical Documentation',
55
+ };
56
+ // Derived ID array (shared by schemas, completions, etc.)
57
+ export const DOC_TYPE_IDS = Object.keys(DOC_TYPES);
58
+ //# sourceMappingURL=doc-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"doc-types.js","sourceRoot":"","sources":["../../../src/core/constants/doc-types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,kEAAkE;AAClE,gFAAgF;AAChF,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,eAAe,EAAE;QACf,IAAI,EAAE,eAAe;QACrB,WAAW,EAAE,4BAA4B;QACzC,QAAQ,EAAE,kBAAkB;KAC7B;IACD,eAAe,EAAE;QACf,IAAI,EAAE,eAAe;QACrB,WAAW,EAAE,sCAAsC;QACnD,QAAQ,EAAE,sBAAsB;KACjC;IACD,UAAU,EAAE;QACV,IAAI,EAAE,UAAU;QAChB,WAAW,EAAE,qCAAqC;QAClD,QAAQ,EAAE,kBAAkB;KAC7B;IACD,gBAAgB,EAAE;QAChB,IAAI,EAAE,gBAAgB;QACtB,WAAW,EAAE,oCAAoC;QACjD,QAAQ,EAAE,uBAAuB;KAClC;IACD,UAAU,EAAE;QACV,IAAI,EAAE,UAAU;QAChB,WAAW,EAAE,oCAAoC;QACjD,QAAQ,EAAE,kBAAkB;KAC7B;IACD,iBAAiB,EAAE;QACjB,IAAI,EAAE,iBAAiB;QACvB,WAAW,EAAE,+CAA+C;QAC5D,QAAQ,EAAE,wBAAwB;KACnC;CACO,CAAC;AAIX,uDAAuD;AACvD,MAAM,CAAC,MAAM,kBAAkB,GAA8B,MAAM,CAAC,WAAW,CAC7E,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAClC,CAAC;AAE/B;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAA2B;IAC/D,eAAe,EAAE,yBAAyB;IAC1C,eAAe,EAAE,eAAe;IAChC,UAAU,EAAE,UAAU;IACtB,UAAU,EAAE,yBAAyB;IACrC,gBAAgB,EAAE,yBAAyB;IAC3C,iBAAiB,EAAE,yBAAyB;CAC7C,CAAC;AAEF,0DAA0D;AAC1D,MAAM,CAAC,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAA0B,CAAC"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * Constants barrel — re-exports everything for backward compatibility.
3
+ *
4
+ * Consumers can import from '../constants.js' (which resolves to this barrel)
5
+ * or directly from the sub-modules (e.g. '../constants/products.js').
6
+ */
7
+ export { SERVER_ICON, DOCS_BASE_URL, FT_API_BASE, buildDocUrl, buildUrlPattern, JAMF_PRODUCTS, PRODUCT_IDS, } from './products.js';
8
+ export type { ProductId } from './products.js';
9
+ export { DEFAULT_LOCALE, SUPPORTED_LOCALES, SUPPORTED_LOCALE_IDS, toValidLocale, } from './locales.js';
10
+ export type { LocaleId } from './locales.js';
11
+ export { JAMF_TOPICS, TOPIC_IDS, } from './topics.js';
12
+ export type { TopicId } from './topics.js';
13
+ export { DOC_TYPES, DOC_TYPE_LABEL_MAP, DOC_TYPE_CONTENT_TYPE_MAP, DOC_TYPE_IDS, } from './doc-types.js';
14
+ export type { DocTypeId } from './doc-types.js';
15
+ export { ResponseFormat, OutputMode, CONTENT_LIMITS, TOKEN_CONFIG, PAGINATION_CONFIG, SELECTORS, } from './limits.js';
16
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/constants/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EACL,WAAW,EACX,aAAa,EACb,WAAW,EACX,WAAW,EACX,eAAe,EACf,aAAa,EACb,WAAW,GACZ,MAAM,eAAe,CAAC;AACvB,YAAY,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE/C,OAAO,EACL,cAAc,EACd,iBAAiB,EACjB,oBAAoB,EACpB,aAAa,GACd,MAAM,cAAc,CAAC;AACtB,YAAY,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAE7C,OAAO,EACL,WAAW,EACX,SAAS,GACV,MAAM,aAAa,CAAC;AACrB,YAAY,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAE3C,OAAO,EACL,SAAS,EACT,kBAAkB,EAClB,yBAAyB,EACzB,YAAY,GACb,MAAM,gBAAgB,CAAC;AACxB,YAAY,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAEhD,OAAO,EACL,cAAc,EACd,UAAU,EACV,cAAc,EACd,YAAY,EACZ,iBAAiB,EACjB,SAAS,GACV,MAAM,aAAa,CAAC"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Constants barrel — re-exports everything for backward compatibility.
3
+ *
4
+ * Consumers can import from '../constants.js' (which resolves to this barrel)
5
+ * or directly from the sub-modules (e.g. '../constants/products.js').
6
+ */
7
+ export { SERVER_ICON, DOCS_BASE_URL, FT_API_BASE, buildDocUrl, buildUrlPattern, JAMF_PRODUCTS, PRODUCT_IDS, } from './products.js';
8
+ export { DEFAULT_LOCALE, SUPPORTED_LOCALES, SUPPORTED_LOCALE_IDS, toValidLocale, } from './locales.js';
9
+ export { JAMF_TOPICS, TOPIC_IDS, } from './topics.js';
10
+ export { DOC_TYPES, DOC_TYPE_LABEL_MAP, DOC_TYPE_CONTENT_TYPE_MAP, DOC_TYPE_IDS, } from './doc-types.js';
11
+ export { ResponseFormat, OutputMode, CONTENT_LIMITS, TOKEN_CONFIG, PAGINATION_CONFIG, SELECTORS, } from './limits.js';
12
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/constants/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EACL,WAAW,EACX,aAAa,EACb,WAAW,EACX,WAAW,EACX,eAAe,EACf,aAAa,EACb,WAAW,GACZ,MAAM,eAAe,CAAC;AAGvB,OAAO,EACL,cAAc,EACd,iBAAiB,EACjB,oBAAoB,EACpB,aAAa,GACd,MAAM,cAAc,CAAC;AAGtB,OAAO,EACL,WAAW,EACX,SAAS,GACV,MAAM,aAAa,CAAC;AAGrB,OAAO,EACL,SAAS,EACT,kBAAkB,EAClB,yBAAyB,EACzB,YAAY,GACb,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EACL,cAAc,EACd,UAAU,EACV,cAAc,EACd,YAAY,EACZ,iBAAiB,EACjB,SAAS,GACV,MAAM,aAAa,CAAC"}
@@ -0,0 +1,39 @@
1
+ /**
2
+ * Operational limits, token config, pagination, response formats, and HTML selectors
3
+ */
4
+ export declare enum ResponseFormat {
5
+ MARKDOWN = "markdown",
6
+ JSON = "json"
7
+ }
8
+ export declare enum OutputMode {
9
+ FULL = "full",
10
+ COMPACT = "compact"
11
+ }
12
+ export declare const CONTENT_LIMITS: {
13
+ readonly MAX_SEARCH_RESULTS: 50;
14
+ readonly DEFAULT_SEARCH_RESULTS: 10;
15
+ readonly FILTER_OVERFETCH_MULTIPLIER: 3;
16
+ readonly FILTER_OVERFETCH_CAP: 150;
17
+ readonly MAX_CONTENT_LENGTH: 100000;
18
+ readonly MAX_SNIPPET_LENGTH: 500;
19
+ };
20
+ export declare const TOKEN_CONFIG: {
21
+ readonly DEFAULT_MAX_TOKENS: 5000;
22
+ readonly MAX_TOKENS_LIMIT: 50000;
23
+ readonly MIN_TOKENS: 100;
24
+ readonly CHARS_PER_TOKEN: 4;
25
+ readonly CODE_CHARS_PER_TOKEN: 3;
26
+ };
27
+ export declare const PAGINATION_CONFIG: {
28
+ readonly DEFAULT_PAGE: 1;
29
+ readonly DEFAULT_PAGE_SIZE: 10;
30
+ readonly MAX_PAGE: 100;
31
+ };
32
+ export declare const SELECTORS: {
33
+ readonly CONTENT: "article, .article-content, main article, #content";
34
+ readonly TITLE: "h1";
35
+ readonly BREADCRUMB: "[class*=\"breadcrumb\"] a, nav[aria-label=\"breadcrumb\"] a";
36
+ readonly RELATED: "nav.related-links a, .related-topics a, [class*=\"related\"] a";
37
+ readonly REMOVE: "script, style, noscript, footer, [id=\"initial-data\"], [class*=\"cookie\"], [class*=\"tracking\"], [class*=\"analytics\"]";
38
+ };
39
+ //# sourceMappingURL=limits.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"limits.d.ts","sourceRoot":"","sources":["../../../src/core/constants/limits.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,oBAAY,cAAc;IACxB,QAAQ,aAAa;IACrB,IAAI,SAAS;CACd;AAGD,oBAAY,UAAU;IACpB,IAAI,SAAS;IACb,OAAO,YAAY;CACpB;AAGD,eAAO,MAAM,cAAc;;;;;;;CAOjB,CAAC;AAGX,eAAO,MAAM,YAAY;;;;;;CAMf,CAAC;AAGX,eAAO,MAAM,iBAAiB;;;;CAIpB,CAAC;AAGX,eAAO,MAAM,SAAS;;;;;;CAaZ,CAAC"}
@@ -0,0 +1,51 @@
1
+ /**
2
+ * Operational limits, token config, pagination, response formats, and HTML selectors
3
+ */
4
+ // Response format
5
+ export var ResponseFormat;
6
+ (function (ResponseFormat) {
7
+ ResponseFormat["MARKDOWN"] = "markdown";
8
+ ResponseFormat["JSON"] = "json";
9
+ })(ResponseFormat || (ResponseFormat = {}));
10
+ // Output mode (detail level)
11
+ export var OutputMode;
12
+ (function (OutputMode) {
13
+ OutputMode["FULL"] = "full";
14
+ OutputMode["COMPACT"] = "compact";
15
+ })(OutputMode || (OutputMode = {}));
16
+ // Content limits
17
+ export const CONTENT_LIMITS = {
18
+ MAX_SEARCH_RESULTS: 50,
19
+ DEFAULT_SEARCH_RESULTS: 10,
20
+ FILTER_OVERFETCH_MULTIPLIER: 3, // fetch 3x when client-side filters need post-filtering
21
+ FILTER_OVERFETCH_CAP: 150, // absolute cap on over-fetched results
22
+ MAX_CONTENT_LENGTH: 100000, // 100KB
23
+ MAX_SNIPPET_LENGTH: 500
24
+ };
25
+ // Token configuration (Context7 style)
26
+ export const TOKEN_CONFIG = {
27
+ DEFAULT_MAX_TOKENS: 5000,
28
+ MAX_TOKENS_LIMIT: 50000,
29
+ MIN_TOKENS: 100,
30
+ CHARS_PER_TOKEN: 4, // Estimation ratio
31
+ CODE_CHARS_PER_TOKEN: 3 // Code blocks have higher token density
32
+ };
33
+ // Pagination configuration
34
+ export const PAGINATION_CONFIG = {
35
+ DEFAULT_PAGE: 1,
36
+ DEFAULT_PAGE_SIZE: 10,
37
+ MAX_PAGE: 100
38
+ };
39
+ // HTML selectors for learn.jamf.com (React-based site)
40
+ export const SELECTORS = {
41
+ // Main content - learn.jamf.com uses semantic article tag
42
+ CONTENT: 'article, .article-content, main article, #content',
43
+ TITLE: 'h1',
44
+ // Navigation - learn.jamf.com structure
45
+ BREADCRUMB: '[class*="breadcrumb"] a, nav[aria-label="breadcrumb"] a',
46
+ // Related content
47
+ RELATED: 'nav.related-links a, .related-topics a, [class*="related"] a',
48
+ // Elements to remove (scripts, tracking, etc.)
49
+ REMOVE: 'script, style, noscript, footer, [id="initial-data"], [class*="cookie"], [class*="tracking"], [class*="analytics"]'
50
+ };
51
+ //# sourceMappingURL=limits.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"limits.js","sourceRoot":"","sources":["../../../src/core/constants/limits.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,kBAAkB;AAClB,MAAM,CAAN,IAAY,cAGX;AAHD,WAAY,cAAc;IACxB,uCAAqB,CAAA;IACrB,+BAAa,CAAA;AACf,CAAC,EAHW,cAAc,KAAd,cAAc,QAGzB;AAED,6BAA6B;AAC7B,MAAM,CAAN,IAAY,UAGX;AAHD,WAAY,UAAU;IACpB,2BAAa,CAAA;IACb,iCAAmB,CAAA;AACrB,CAAC,EAHW,UAAU,KAAV,UAAU,QAGrB;AAED,iBAAiB;AACjB,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,kBAAkB,EAAE,EAAE;IACtB,sBAAsB,EAAE,EAAE;IAC1B,2BAA2B,EAAE,CAAC,EAAQ,wDAAwD;IAC9F,oBAAoB,EAAE,GAAG,EAAa,uCAAuC;IAC7E,kBAAkB,EAAE,MAAM,EAAY,QAAQ;IAC9C,kBAAkB,EAAE,GAAG;CACf,CAAC;AAEX,uCAAuC;AACvC,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,kBAAkB,EAAE,IAAI;IACxB,gBAAgB,EAAE,KAAK;IACvB,UAAU,EAAE,GAAG;IACf,eAAe,EAAE,CAAC,EAAG,mBAAmB;IACxC,oBAAoB,EAAE,CAAC,CAAE,wCAAwC;CACzD,CAAC;AAEX,2BAA2B;AAC3B,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,YAAY,EAAE,CAAC;IACf,iBAAiB,EAAE,EAAE;IACrB,QAAQ,EAAE,GAAG;CACL,CAAC;AAEX,uDAAuD;AACvD,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,0DAA0D;IAC1D,OAAO,EAAE,mDAAmD;IAC5D,KAAK,EAAE,IAAI;IAEX,wCAAwC;IACxC,UAAU,EAAE,yDAAyD;IAErE,kBAAkB;IAClB,OAAO,EAAE,8DAA8D;IAEvE,+CAA+C;IAC/C,MAAM,EAAE,oHAAoH;CACpH,CAAC"}
@@ -0,0 +1,34 @@
1
+ /**
2
+ * Locale constants for Jamf documentation
3
+ */
4
+ export declare const DEFAULT_LOCALE = "en-US";
5
+ export declare const SUPPORTED_LOCALES: {
6
+ readonly 'en-US': {
7
+ readonly name: "English";
8
+ };
9
+ readonly 'ja-JP': {
10
+ readonly name: "日本語";
11
+ };
12
+ readonly 'zh-TW': {
13
+ readonly name: "繁體中文";
14
+ };
15
+ readonly 'de-DE': {
16
+ readonly name: "Deutsch";
17
+ };
18
+ readonly 'es-ES': {
19
+ readonly name: "Español";
20
+ };
21
+ readonly 'fr-FR': {
22
+ readonly name: "Français";
23
+ };
24
+ readonly 'nl-NL': {
25
+ readonly name: "Nederlands";
26
+ };
27
+ readonly 'th-TH': {
28
+ readonly name: "ไทย";
29
+ };
30
+ };
31
+ export type LocaleId = keyof typeof SUPPORTED_LOCALES;
32
+ export declare const SUPPORTED_LOCALE_IDS: [string, ...string[]];
33
+ export declare function toValidLocale(candidate: string): LocaleId;
34
+ //# sourceMappingURL=locales.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"locales.d.ts","sourceRoot":"","sources":["../../../src/core/constants/locales.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,eAAO,MAAM,cAAc,UAAU,CAAC;AAEtC,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;CASpB,CAAC;AAEX,MAAM,MAAM,QAAQ,GAAG,MAAM,OAAO,iBAAiB,CAAC;AACtD,eAAO,MAAM,oBAAoB,EAAqC,CAAC,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC,CAAC;AAE5F,wBAAgB,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,QAAQ,CAEzD"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Locale constants for Jamf documentation
3
+ */
4
+ // Supported locales for Jamf documentation (learn.jamf.com)
5
+ export const DEFAULT_LOCALE = 'en-US';
6
+ export const SUPPORTED_LOCALES = {
7
+ 'en-US': { name: 'English' },
8
+ 'ja-JP': { name: '日本語' },
9
+ 'zh-TW': { name: '繁體中文' },
10
+ 'de-DE': { name: 'Deutsch' },
11
+ 'es-ES': { name: 'Español' },
12
+ 'fr-FR': { name: 'Français' },
13
+ 'nl-NL': { name: 'Nederlands' },
14
+ 'th-TH': { name: 'ไทย' },
15
+ };
16
+ export const SUPPORTED_LOCALE_IDS = Object.keys(SUPPORTED_LOCALES);
17
+ export function toValidLocale(candidate) {
18
+ return candidate in SUPPORTED_LOCALES ? candidate : DEFAULT_LOCALE;
19
+ }
20
+ //# sourceMappingURL=locales.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"locales.js","sourceRoot":"","sources":["../../../src/core/constants/locales.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,4DAA4D;AAC5D,MAAM,CAAC,MAAM,cAAc,GAAG,OAAO,CAAC;AAEtC,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;IAC5B,OAAO,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE;IACxB,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;IACzB,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;IAC5B,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;IAC5B,OAAO,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE;IAC7B,OAAO,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE;IAC/B,OAAO,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE;CAChB,CAAC;AAGX,MAAM,CAAC,MAAM,oBAAoB,GAAG,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAA0B,CAAC;AAE5F,MAAM,UAAU,aAAa,CAAC,SAAiB;IAC7C,OAAO,SAAS,IAAI,iBAAiB,CAAC,CAAC,CAAC,SAAqB,CAAC,CAAC,CAAC,cAAc,CAAC;AACjF,CAAC"}
@@ -0,0 +1,127 @@
1
+ /**
2
+ * Product constants, base URLs, and URL helpers for Jamf documentation
3
+ */
4
+ export declare const SERVER_ICON = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAiUlEQVR4nGNgGAU4QEpKxX9qYpItpwSA9N+58wyOSXYENR0AYw+IA9AdQr4DehgQmEgHYIsGujuA7IRIqQNwOYp8B1ABUOQAOat4svDwcQA1wNB2ACVBPzwcQA0wtB0w4NlwwB1ADTC0HUBu1hs+DqAGGNoOAAbxCVLx8HIANQBZvaMB65qNKAAA5fafYXNsHh0AAAAASUVORK5CYII=";
5
+ export declare const DOCS_BASE_URL = "https://learn.jamf.com";
6
+ export declare const FT_API_BASE = "https://learn.jamf.com";
7
+ /**
8
+ * Build a full documentation URL with locale
9
+ */
10
+ export declare function buildDocUrl(locale: string, bundleId: string, page: string): string;
11
+ /**
12
+ * Build a URL pattern path (without base URL) for a given locale and bundleId
13
+ */
14
+ export declare function buildUrlPattern(locale: string, bundleId: string): string;
15
+ export declare const JAMF_PRODUCTS: {
16
+ readonly 'jamf-pro': {
17
+ readonly id: "jamf-pro";
18
+ readonly name: "Jamf Pro";
19
+ readonly description: "Apple device management for enterprise";
20
+ readonly bundleId: "jamf-pro-documentation";
21
+ readonly searchLabel: "product-pro";
22
+ readonly latestVersion: "current";
23
+ readonly versions: readonly ["current"];
24
+ };
25
+ readonly 'jamf-school': {
26
+ readonly id: "jamf-school";
27
+ readonly name: "Jamf School";
28
+ readonly description: "Apple device management for education";
29
+ readonly bundleId: "jamf-school-documentation";
30
+ readonly searchLabel: "product-school";
31
+ readonly latestVersion: "current";
32
+ readonly versions: readonly ["current"];
33
+ };
34
+ readonly 'jamf-connect': {
35
+ readonly id: "jamf-connect";
36
+ readonly name: "Jamf Connect";
37
+ readonly description: "Identity and access management";
38
+ readonly bundleId: "jamf-connect-documentation";
39
+ readonly searchLabel: "product-connect";
40
+ readonly latestVersion: "current";
41
+ readonly versions: readonly ["current"];
42
+ };
43
+ readonly 'jamf-protect': {
44
+ readonly id: "jamf-protect";
45
+ readonly name: "Jamf Protect";
46
+ readonly description: "Endpoint security for Apple";
47
+ readonly bundleId: "jamf-protect-documentation";
48
+ readonly searchLabel: "product-protect";
49
+ readonly latestVersion: "current";
50
+ readonly versions: readonly ["current"];
51
+ };
52
+ readonly 'jamf-now': {
53
+ readonly id: "jamf-now";
54
+ readonly name: "Jamf Now";
55
+ readonly description: "Simple Apple device management for small businesses";
56
+ readonly bundleId: "jamf-now-documentation";
57
+ readonly searchLabel: "product-now";
58
+ readonly latestVersion: "current";
59
+ readonly versions: readonly ["current"];
60
+ };
61
+ readonly 'jamf-safe-internet': {
62
+ readonly id: "jamf-safe-internet";
63
+ readonly name: "Jamf Safe Internet";
64
+ readonly description: "Content filtering and web security for education and business";
65
+ readonly bundleId: "jamf-safe-internet-documentation";
66
+ readonly searchLabel: "product-safeinternet";
67
+ readonly latestVersion: "current";
68
+ readonly versions: readonly ["current"];
69
+ };
70
+ readonly 'jamf-insights': {
71
+ readonly id: "jamf-insights";
72
+ readonly name: "Jamf Insights";
73
+ readonly description: "Analytics and reporting platform for Apple fleet";
74
+ readonly bundleId: "jamf-insights-documentation";
75
+ readonly searchLabel: "product-insights";
76
+ readonly latestVersion: "current";
77
+ readonly versions: readonly ["current"];
78
+ };
79
+ readonly 'jamf-rapididentity': {
80
+ readonly id: "jamf-rapididentity";
81
+ readonly name: "RapidIdentity";
82
+ readonly description: "Identity and access management platform";
83
+ readonly bundleId: "jamf-rapididentity-documentation";
84
+ readonly searchLabel: "product-rapididentity";
85
+ readonly latestVersion: "current";
86
+ readonly versions: readonly ["current"];
87
+ };
88
+ readonly 'jamf-trust': {
89
+ readonly id: "jamf-trust";
90
+ readonly name: "Jamf Trust";
91
+ readonly description: "Zero-trust network access for Apple devices";
92
+ readonly bundleId: "jamf-trust-documentation";
93
+ readonly searchLabel: "product-trust";
94
+ readonly latestVersion: "current";
95
+ readonly versions: readonly ["current"];
96
+ };
97
+ readonly 'jamf-routines': {
98
+ readonly id: "jamf-routines";
99
+ readonly name: "Jamf Routines";
100
+ readonly description: "Automated workflow orchestration for device management";
101
+ readonly bundleId: "jamf-routines-documentation";
102
+ readonly searchLabel: "product-routines";
103
+ readonly latestVersion: "current";
104
+ readonly versions: readonly ["current"];
105
+ };
106
+ readonly 'self-service-plus': {
107
+ readonly id: "self-service-plus";
108
+ readonly name: "Self Service+";
109
+ readonly description: "Next-generation self-service portal for macOS";
110
+ readonly bundleId: "self-service-plus-documentation";
111
+ readonly searchLabel: "product-self-service";
112
+ readonly latestVersion: "current";
113
+ readonly versions: readonly ["current"];
114
+ };
115
+ readonly 'jamf-app-catalog': {
116
+ readonly id: "jamf-app-catalog";
117
+ readonly name: "Jamf App Catalog";
118
+ readonly description: "Curated application catalog for managed deployments";
119
+ readonly bundleId: "jamf-app-catalog";
120
+ readonly searchLabel: "product-appcatalog";
121
+ readonly latestVersion: "current";
122
+ readonly versions: readonly ["current"];
123
+ };
124
+ };
125
+ export type ProductId = keyof typeof JAMF_PRODUCTS;
126
+ export declare const PRODUCT_IDS: [string, ...string[]];
127
+ //# sourceMappingURL=products.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"products.d.ts","sourceRoot":"","sources":["../../../src/core/constants/products.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,eAAO,MAAM,WAAW,+RAA+R,CAAC;AAGxT,eAAO,MAAM,aAAa,2BAA2B,CAAC;AAEtD,eAAO,MAAM,WAAW,2BAAgB,CAAC;AAEzC;;GAEG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAElF;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAExE;AAGD,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6GhB,CAAC;AAEX,MAAM,MAAM,SAAS,GAAG,MAAM,OAAO,aAAa,CAAC;AAGnD,eAAO,MAAM,WAAW,EAAiC,CAAC,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC,CAAC"}
@@ -0,0 +1,135 @@
1
+ /**
2
+ * Product constants, base URLs, and URL helpers for Jamf documentation
3
+ */
4
+ // Server icon (32x32 PNG, document theme, base64 data URI)
5
+ export const SERVER_ICON = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAiUlEQVR4nGNgGAU4QEpKxX9qYpItpwSA9N+58wyOSXYENR0AYw+IA9AdQr4DehgQmEgHYIsGujuA7IRIqQNwOYp8B1ABUOQAOat4svDwcQA1wNB2ACVBPzwcQA0wtB0w4NlwwB1ADTC0HUBu1hs+DqAGGNoOAAbxCVLx8HIANQBZvaMB65qNKAAA5fafYXNsHh0AAAAASUVORK5CYII=';
6
+ // Base URLs
7
+ export const DOCS_BASE_URL = 'https://learn.jamf.com';
8
+ // Fluid Topics API (learn.jamf.com hosts FT 5.x)
9
+ export const FT_API_BASE = DOCS_BASE_URL;
10
+ /**
11
+ * Build a full documentation URL with locale
12
+ */
13
+ export function buildDocUrl(locale, bundleId, page) {
14
+ return `${DOCS_BASE_URL}/${locale}/bundle/${bundleId}/page/${page}`;
15
+ }
16
+ /**
17
+ * Build a URL pattern path (without base URL) for a given locale and bundleId
18
+ */
19
+ export function buildUrlPattern(locale, bundleId) {
20
+ return `${locale}/bundle/${bundleId}/page`;
21
+ }
22
+ // Supported products - updated URL patterns for learn.jamf.com
23
+ export const JAMF_PRODUCTS = {
24
+ 'jamf-pro': {
25
+ id: 'jamf-pro',
26
+ name: 'Jamf Pro',
27
+ description: 'Apple device management for enterprise',
28
+ bundleId: 'jamf-pro-documentation',
29
+ searchLabel: 'product-pro', // Legacy metadata label for FT search filter
30
+ latestVersion: 'current',
31
+ versions: ['current'] // learn.jamf.com uses latest version only
32
+ },
33
+ 'jamf-school': {
34
+ id: 'jamf-school',
35
+ name: 'Jamf School',
36
+ description: 'Apple device management for education',
37
+ bundleId: 'jamf-school-documentation',
38
+ searchLabel: 'product-school',
39
+ latestVersion: 'current',
40
+ versions: ['current']
41
+ },
42
+ 'jamf-connect': {
43
+ id: 'jamf-connect',
44
+ name: 'Jamf Connect',
45
+ description: 'Identity and access management',
46
+ bundleId: 'jamf-connect-documentation',
47
+ searchLabel: 'product-connect',
48
+ latestVersion: 'current',
49
+ versions: ['current']
50
+ },
51
+ 'jamf-protect': {
52
+ id: 'jamf-protect',
53
+ name: 'Jamf Protect',
54
+ description: 'Endpoint security for Apple',
55
+ bundleId: 'jamf-protect-documentation',
56
+ searchLabel: 'product-protect',
57
+ latestVersion: 'current',
58
+ versions: ['current']
59
+ },
60
+ 'jamf-now': {
61
+ id: 'jamf-now',
62
+ name: 'Jamf Now',
63
+ description: 'Simple Apple device management for small businesses',
64
+ bundleId: 'jamf-now-documentation',
65
+ searchLabel: 'product-now',
66
+ latestVersion: 'current',
67
+ versions: ['current']
68
+ },
69
+ 'jamf-safe-internet': {
70
+ id: 'jamf-safe-internet',
71
+ name: 'Jamf Safe Internet',
72
+ description: 'Content filtering and web security for education and business',
73
+ bundleId: 'jamf-safe-internet-documentation',
74
+ searchLabel: 'product-safeinternet',
75
+ latestVersion: 'current',
76
+ versions: ['current']
77
+ },
78
+ 'jamf-insights': {
79
+ id: 'jamf-insights',
80
+ name: 'Jamf Insights',
81
+ description: 'Analytics and reporting platform for Apple fleet',
82
+ bundleId: 'jamf-insights-documentation',
83
+ searchLabel: 'product-insights',
84
+ latestVersion: 'current',
85
+ versions: ['current']
86
+ },
87
+ 'jamf-rapididentity': {
88
+ id: 'jamf-rapididentity',
89
+ name: 'RapidIdentity',
90
+ description: 'Identity and access management platform',
91
+ bundleId: 'jamf-rapididentity-documentation',
92
+ searchLabel: 'product-rapididentity',
93
+ latestVersion: 'current',
94
+ versions: ['current']
95
+ },
96
+ 'jamf-trust': {
97
+ id: 'jamf-trust',
98
+ name: 'Jamf Trust',
99
+ description: 'Zero-trust network access for Apple devices',
100
+ bundleId: 'jamf-trust-documentation',
101
+ searchLabel: 'product-trust',
102
+ latestVersion: 'current',
103
+ versions: ['current']
104
+ },
105
+ 'jamf-routines': {
106
+ id: 'jamf-routines',
107
+ name: 'Jamf Routines',
108
+ description: 'Automated workflow orchestration for device management',
109
+ bundleId: 'jamf-routines-documentation',
110
+ searchLabel: 'product-routines',
111
+ latestVersion: 'current',
112
+ versions: ['current']
113
+ },
114
+ 'self-service-plus': {
115
+ id: 'self-service-plus',
116
+ name: 'Self Service+',
117
+ description: 'Next-generation self-service portal for macOS',
118
+ bundleId: 'self-service-plus-documentation',
119
+ searchLabel: 'product-self-service',
120
+ latestVersion: 'current',
121
+ versions: ['current']
122
+ },
123
+ 'jamf-app-catalog': {
124
+ id: 'jamf-app-catalog',
125
+ name: 'Jamf App Catalog',
126
+ description: 'Curated application catalog for managed deployments',
127
+ bundleId: 'jamf-app-catalog',
128
+ searchLabel: 'product-appcatalog',
129
+ latestVersion: 'current',
130
+ versions: ['current']
131
+ }
132
+ };
133
+ // Derived ID array (shared by schemas, completions, etc.)
134
+ export const PRODUCT_IDS = Object.keys(JAMF_PRODUCTS);
135
+ //# sourceMappingURL=products.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"products.js","sourceRoot":"","sources":["../../../src/core/constants/products.ts"],"names":[],"mappings":"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"}