admanagekit-mcp-server 1.1.0 → 1.1.1
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/dist/tools/documentation.js +36 -16
- package/dist/tools/documentation.js.map +1 -1
- package/dist/types.d.ts +0 -3
- package/dist/types.js +11 -39
- package/dist/types.js.map +1 -1
- package/dist/utils/doc-loader.d.ts +24 -0
- package/dist/utils/doc-loader.js +77 -1
- package/dist/utils/doc-loader.js.map +1 -1
- package/package.json +1 -1
|
@@ -6,6 +6,19 @@ const doc_loader_js_1 = require("../utils/doc-loader.js");
|
|
|
6
6
|
const search_js_1 = require("../utils/search.js");
|
|
7
7
|
const types_js_1 = require("../types.js");
|
|
8
8
|
const topicKeys = Object.keys(types_js_1.TOPIC_MAP);
|
|
9
|
+
/**
|
|
10
|
+
* Builds an enum schema from values discovered in the bundled docs.
|
|
11
|
+
*
|
|
12
|
+
* z.enum() requires a non-empty tuple, so if discovery finds nothing (docs
|
|
13
|
+
* missing or unreadable) this degrades to a plain string rather than throwing
|
|
14
|
+
* at registration time and taking the whole server down. Each tool still
|
|
15
|
+
* validates the value at call time and reports what is actually available.
|
|
16
|
+
*/
|
|
17
|
+
function discoveredEnum(values, description) {
|
|
18
|
+
return values.length > 0
|
|
19
|
+
? zod_1.z.enum(values).describe(description)
|
|
20
|
+
: zod_1.z.string().describe(description);
|
|
21
|
+
}
|
|
9
22
|
function registerDocumentationTools(server) {
|
|
10
23
|
// Tool 1: search_docs
|
|
11
24
|
server.tool("search_docs", "Search across all AdManageKit documentation (docs/, wiki/, README) for a query. Returns matching sections with file paths and relevant snippets.", {
|
|
@@ -75,9 +88,7 @@ function registerDocumentationTools(server) {
|
|
|
75
88
|
});
|
|
76
89
|
// Tool 3: get_api_reference
|
|
77
90
|
server.tool("get_api_reference", "Get the API reference for a specific AdManageKit class or component. Returns method signatures, parameters, and usage examples.", {
|
|
78
|
-
class_name:
|
|
79
|
-
.enum(types_js_1.API_CLASS_NAMES)
|
|
80
|
-
.describe("The class or component name to look up"),
|
|
91
|
+
class_name: discoveredEnum((0, doc_loader_js_1.discoverApiClassNames)(), "The class or component name to look up"),
|
|
81
92
|
}, async ({ class_name }) => {
|
|
82
93
|
const sections = (0, doc_loader_js_1.loadApiSections)();
|
|
83
94
|
const content = sections.get(class_name);
|
|
@@ -109,9 +120,7 @@ function registerDocumentationTools(server) {
|
|
|
109
120
|
});
|
|
110
121
|
// Tool 4: get_release_notes
|
|
111
122
|
server.tool("get_release_notes", "Get release notes for a specific AdManageKit version. Returns new features, breaking changes, migration guides, and bug fixes.", {
|
|
112
|
-
version:
|
|
113
|
-
.enum(["latest", ...types_js_1.RELEASE_VERSIONS])
|
|
114
|
-
.describe("The version to get release notes for (e.g., '3.3.5', '3.0.0'). Use 'latest' for the most recent."),
|
|
123
|
+
version: discoveredEnum(["latest", ...(0, doc_loader_js_1.discoverReleaseVersions)()], "The version to get release notes for (e.g., '4.4.0', '3.0.0'). Use 'latest' for the most recent."),
|
|
115
124
|
}, async ({ version }) => {
|
|
116
125
|
const content = (0, doc_loader_js_1.loadReleaseNotes)(version);
|
|
117
126
|
if (!content) {
|
|
@@ -119,7 +128,7 @@ function registerDocumentationTools(server) {
|
|
|
119
128
|
content: [
|
|
120
129
|
{
|
|
121
130
|
type: "text",
|
|
122
|
-
text: `No release notes found for version ${version}. Available versions: ${
|
|
131
|
+
text: `No release notes found for version ${version}. Available versions: ${(0, doc_loader_js_1.discoverReleaseVersions)().join(", ")}`,
|
|
123
132
|
},
|
|
124
133
|
],
|
|
125
134
|
};
|
|
@@ -130,9 +139,7 @@ function registerDocumentationTools(server) {
|
|
|
130
139
|
});
|
|
131
140
|
// Tool 5: get_migration_guide
|
|
132
141
|
server.tool("get_migration_guide", "Get the migration guide for upgrading between AdManageKit versions. Covers breaking changes, deprecated APIs, and step-by-step migration instructions.", {
|
|
133
|
-
target_version:
|
|
134
|
-
.enum(types_js_1.MIGRATION_VERSIONS)
|
|
135
|
-
.describe("The version you are migrating TO (e.g., '3.0.0', '2.9.0')"),
|
|
142
|
+
target_version: discoveredEnum((0, doc_loader_js_1.discoverMigrationVersions)(), "The version you are migrating TO (e.g., '4.2.0', '3.0.0')"),
|
|
136
143
|
}, async ({ target_version }) => {
|
|
137
144
|
const content = (0, doc_loader_js_1.loadMigrationGuide)(target_version);
|
|
138
145
|
if (!content) {
|
|
@@ -140,7 +147,7 @@ function registerDocumentationTools(server) {
|
|
|
140
147
|
content: [
|
|
141
148
|
{
|
|
142
149
|
type: "text",
|
|
143
|
-
text: `No migration guide found for version ${target_version}. Migration guides are available for: ${
|
|
150
|
+
text: `No migration guide found for version ${target_version}. Migration guides are available for: ${(0, doc_loader_js_1.discoverMigrationVersions)().join(", ")}`,
|
|
144
151
|
},
|
|
145
152
|
],
|
|
146
153
|
};
|
|
@@ -151,6 +158,9 @@ function registerDocumentationTools(server) {
|
|
|
151
158
|
});
|
|
152
159
|
// Tool 6: list_documentation
|
|
153
160
|
server.tool("list_documentation", "List all available AdManageKit documentation topics, API references, release notes, and wiki pages.", {}, async () => {
|
|
161
|
+
const apiClassNames = (0, doc_loader_js_1.discoverApiClassNames)();
|
|
162
|
+
const releaseVersions = (0, doc_loader_js_1.discoverReleaseVersions)();
|
|
163
|
+
const migrationVersions = (0, doc_loader_js_1.discoverMigrationVersions)();
|
|
154
164
|
const listing = `# AdManageKit Documentation
|
|
155
165
|
|
|
156
166
|
## Ad Types
|
|
@@ -176,7 +186,8 @@ function registerDocumentationTools(server) {
|
|
|
176
186
|
- **billing-integration** - Google Play Billing setup and usage
|
|
177
187
|
- **purchase-categories** - CONSUMABLE, FEATURE_UNLOCK, LIFETIME_PREMIUM, REMOVE_ADS
|
|
178
188
|
- **consumables** - Consumable product handling
|
|
179
|
-
- **subscriptions** - Subscription management
|
|
189
|
+
- **subscriptions** - Subscription management, account hold, payment recovery
|
|
190
|
+
- **subscription-offers** - Offers, trials, intro pricing, price comparison
|
|
180
191
|
- **subscription-upgrades** - Upgrade/downgrade flows
|
|
181
192
|
|
|
182
193
|
## Multi-Provider
|
|
@@ -187,19 +198,28 @@ function registerDocumentationTools(server) {
|
|
|
187
198
|
- **java-usage** - Java (non-Kotlin) usage guide
|
|
188
199
|
|
|
189
200
|
## API Reference Classes
|
|
190
|
-
${
|
|
201
|
+
${apiClassNames.map((c) => `- ${c}`).join("\n")}
|
|
191
202
|
|
|
192
203
|
## Release Notes
|
|
193
|
-
${
|
|
204
|
+
${releaseVersions.map((v) => `- v${v}`).join("\n")}
|
|
194
205
|
|
|
195
206
|
## Migration Guides
|
|
196
|
-
${
|
|
207
|
+
${migrationVersions.map((v) => `- Migrating to ${v}`).join("\n")}
|
|
197
208
|
|
|
198
209
|
---
|
|
199
210
|
Use \`get_doc_by_topic\`, \`get_api_reference\`, \`get_release_notes\`, or \`get_migration_guide\` to access specific documentation.
|
|
200
211
|
Use \`search_docs\` to search across all documentation.`;
|
|
212
|
+
// The grouped topic listing above is hand-written, so it can fall behind
|
|
213
|
+
// TOPIC_MAP. Surface anything it missed rather than leaving a registered
|
|
214
|
+
// topic undiscoverable — the failure mode this tool previously had.
|
|
215
|
+
const undocumented = topicKeys.filter((key) => !listing.includes(`**${key}**`));
|
|
216
|
+
const complete = undocumented.length > 0
|
|
217
|
+
? listing.replace("\n---\nUse `get_doc_by_topic`", `\n## Other Topics\n${undocumented
|
|
218
|
+
.map((k) => `- **${k}**`)
|
|
219
|
+
.join("\n")}\n\n---\nUse \`get_doc_by_topic\``)
|
|
220
|
+
: listing;
|
|
201
221
|
return {
|
|
202
|
-
content: [{ type: "text", text:
|
|
222
|
+
content: [{ type: "text", text: complete }],
|
|
203
223
|
};
|
|
204
224
|
});
|
|
205
225
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"documentation.js","sourceRoot":"","sources":["../../src/tools/documentation.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"documentation.js","sourceRoot":"","sources":["../../src/tools/documentation.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -12,7 +12,4 @@ export interface SearchResult {
|
|
|
12
12
|
score: number;
|
|
13
13
|
}
|
|
14
14
|
export declare const TOPIC_MAP: Record<string, string[]>;
|
|
15
|
-
export declare const API_CLASS_NAMES: readonly ["AdManageKitConfig", "BillingConfig", "AdManager", "AppOpenManager", "BannerAdView", "NativeAdViews", "NativeAdManager", "RewardedAdManager", "AppPurchase", "PurchaseItem", "AdRetryManager", "AdDebugUtils", "AdLoadCallback", "AdManagerCallback", "InterstitialAdBuilder", "WeakReferenceHolder"];
|
|
16
|
-
export declare const RELEASE_VERSIONS: readonly ["3.3.8", "3.3.7", "3.3.5", "3.3.4", "3.3.3", "3.3.2", "3.3.0", "3.1.0", "3.0.0", "2.9.0", "2.8.0", "2.7.0", "2.6.0", "2.5.0", "2.3.0", "2.2.0", "2.1.0"];
|
|
17
|
-
export declare const MIGRATION_VERSIONS: readonly ["3.0.0", "2.9.0", "2.8.0", "2.7.0"];
|
|
18
15
|
export declare const TEST_AD_UNITS: Record<string, string>;
|
package/dist/types.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.TEST_AD_UNITS = exports.
|
|
3
|
+
exports.TEST_AD_UNITS = exports.TOPIC_MAP = void 0;
|
|
4
4
|
exports.TOPIC_MAP = {
|
|
5
5
|
interstitial: [
|
|
6
6
|
"docs/interstitial-ads.md",
|
|
@@ -26,6 +26,7 @@ exports.TOPIC_MAP = {
|
|
|
26
26
|
"purchase-categories": ["wiki/Purchase-Categories.md"],
|
|
27
27
|
consumables: ["wiki/Consumable-Products.md"],
|
|
28
28
|
subscriptions: ["wiki/Subscriptions.md"],
|
|
29
|
+
"subscription-offers": ["wiki/Subscription-Offers.md"],
|
|
29
30
|
"subscription-upgrades": ["wiki/Subscription-Upgrades.md"],
|
|
30
31
|
"java-usage": ["docs/JAVA_USAGE_GUIDE.md"],
|
|
31
32
|
"native-template-view": ["docs/NATIVE_TEMPLATE_VIEW.md"],
|
|
@@ -45,44 +46,15 @@ exports.TOPIC_MAP = {
|
|
|
45
46
|
"wiki/Yandex-Integration.md",
|
|
46
47
|
],
|
|
47
48
|
};
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
"AppPurchase",
|
|
58
|
-
"PurchaseItem",
|
|
59
|
-
"AdRetryManager",
|
|
60
|
-
"AdDebugUtils",
|
|
61
|
-
"AdLoadCallback",
|
|
62
|
-
"AdManagerCallback",
|
|
63
|
-
"InterstitialAdBuilder",
|
|
64
|
-
"WeakReferenceHolder",
|
|
65
|
-
];
|
|
66
|
-
exports.RELEASE_VERSIONS = [
|
|
67
|
-
"3.3.8",
|
|
68
|
-
"3.3.7",
|
|
69
|
-
"3.3.5",
|
|
70
|
-
"3.3.4",
|
|
71
|
-
"3.3.3",
|
|
72
|
-
"3.3.2",
|
|
73
|
-
"3.3.0",
|
|
74
|
-
"3.1.0",
|
|
75
|
-
"3.0.0",
|
|
76
|
-
"2.9.0",
|
|
77
|
-
"2.8.0",
|
|
78
|
-
"2.7.0",
|
|
79
|
-
"2.6.0",
|
|
80
|
-
"2.5.0",
|
|
81
|
-
"2.3.0",
|
|
82
|
-
"2.2.0",
|
|
83
|
-
"2.1.0",
|
|
84
|
-
];
|
|
85
|
-
exports.MIGRATION_VERSIONS = ["3.0.0", "2.9.0", "2.8.0", "2.7.0"];
|
|
49
|
+
// API class names, release versions and migration versions are deliberately NOT
|
|
50
|
+
// listed here. They are derived from the bundled documentation at startup by
|
|
51
|
+
// discoverApiClassNames(), discoverReleaseVersions() and
|
|
52
|
+
// discoverMigrationVersions() in utils/doc-loader.ts.
|
|
53
|
+
//
|
|
54
|
+
// They used to be hardcoded and drifted badly: the release list stopped at 3.3.8
|
|
55
|
+
// while 38 release-notes files existed, so every version from 3.4.0 onward was
|
|
56
|
+
// rejected by the tool schema, and "latest" returned February 2026. Deriving them
|
|
57
|
+
// means shipping a doc is sufficient to make it reachable.
|
|
86
58
|
exports.TEST_AD_UNITS = {
|
|
87
59
|
banner: "ca-app-pub-3940256099942544/6300978111",
|
|
88
60
|
interstitial: "ca-app-pub-3940256099942544/1033173712",
|
package/dist/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";;;AAgBa,QAAA,SAAS,GAA6B;IACjD,YAAY,EAAE;QACZ,0BAA0B;QAC1B,oCAAoC;QACpC,0BAA0B;KAC3B;IACD,MAAM,EAAE,CAAC,4BAA4B,EAAE,yBAAyB,CAAC;IACjE,MAAM,EAAE,CAAC,gCAAgC,EAAE,oBAAoB,CAAC;IAChE,UAAU,EAAE,CAAC,sBAAsB,EAAE,sBAAsB,CAAC;IAC5D,QAAQ,EAAE,CAAC,sBAAsB,EAAE,sBAAsB,CAAC;IAC1D,oBAAoB,EAAE;QACpB,+BAA+B;QAC/B,+BAA+B;KAChC;IACD,mBAAmB,EAAE,CAAC,8BAA8B,CAAC;IACrD,aAAa,EAAE,CAAC,6BAA6B,EAAE,uBAAuB,CAAC;IACvE,OAAO,EAAE,CAAC,6BAA6B,EAAE,yBAAyB,CAAC;IACnE,sBAAsB,EAAE,CAAC,oCAAoC,CAAC;IAC9D,qBAAqB,EAAE;QACrB,4BAA4B;QAC5B,6BAA6B;KAC9B;IACD,qBAAqB,EAAE,CAAC,6BAA6B,CAAC;IACtD,WAAW,EAAE,CAAC,6BAA6B,CAAC;IAC5C,aAAa,EAAE,CAAC,uBAAuB,CAAC;IACxC,uBAAuB,EAAE,CAAC,+BAA+B,CAAC;IAC1D,YAAY,EAAE,CAAC,0BAA0B,CAAC;IAC1C,sBAAsB,EAAE,CAAC,8BAA8B,CAAC;IACxD,mBAAmB,EAAE,CAAC,8BAA8B,CAAC;IACrD,gBAAgB,EAAE;QAChB,4BAA4B;QAC5B,wCAAwC;KACzC;IACD,qBAAqB,EAAE,CAAC,gCAAgC,CAAC;IACzD,2BAA2B,EAAE,CAAC,mCAAmC,CAAC;IAClE,0BAA0B,EAAE;QAC1B,kCAAkC;QAClC,kCAAkC;KACnC;IACD,oBAAoB,EAAE;QACpB,4BAA4B;QAC5B,4BAA4B;KAC7B;CACF,CAAC;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";;;AAgBa,QAAA,SAAS,GAA6B;IACjD,YAAY,EAAE;QACZ,0BAA0B;QAC1B,oCAAoC;QACpC,0BAA0B;KAC3B;IACD,MAAM,EAAE,CAAC,4BAA4B,EAAE,yBAAyB,CAAC;IACjE,MAAM,EAAE,CAAC,gCAAgC,EAAE,oBAAoB,CAAC;IAChE,UAAU,EAAE,CAAC,sBAAsB,EAAE,sBAAsB,CAAC;IAC5D,QAAQ,EAAE,CAAC,sBAAsB,EAAE,sBAAsB,CAAC;IAC1D,oBAAoB,EAAE;QACpB,+BAA+B;QAC/B,+BAA+B;KAChC;IACD,mBAAmB,EAAE,CAAC,8BAA8B,CAAC;IACrD,aAAa,EAAE,CAAC,6BAA6B,EAAE,uBAAuB,CAAC;IACvE,OAAO,EAAE,CAAC,6BAA6B,EAAE,yBAAyB,CAAC;IACnE,sBAAsB,EAAE,CAAC,oCAAoC,CAAC;IAC9D,qBAAqB,EAAE;QACrB,4BAA4B;QAC5B,6BAA6B;KAC9B;IACD,qBAAqB,EAAE,CAAC,6BAA6B,CAAC;IACtD,WAAW,EAAE,CAAC,6BAA6B,CAAC;IAC5C,aAAa,EAAE,CAAC,uBAAuB,CAAC;IACxC,qBAAqB,EAAE,CAAC,6BAA6B,CAAC;IACtD,uBAAuB,EAAE,CAAC,+BAA+B,CAAC;IAC1D,YAAY,EAAE,CAAC,0BAA0B,CAAC;IAC1C,sBAAsB,EAAE,CAAC,8BAA8B,CAAC;IACxD,mBAAmB,EAAE,CAAC,8BAA8B,CAAC;IACrD,gBAAgB,EAAE;QAChB,4BAA4B;QAC5B,wCAAwC;KACzC;IACD,qBAAqB,EAAE,CAAC,gCAAgC,CAAC;IACzD,2BAA2B,EAAE,CAAC,mCAAmC,CAAC;IAClE,0BAA0B,EAAE;QAC1B,kCAAkC;QAClC,kCAAkC;KACnC;IACD,oBAAoB,EAAE;QACpB,4BAA4B;QAC5B,4BAA4B;KAC7B;CACF,CAAC;AAEF,gFAAgF;AAChF,6EAA6E;AAC7E,yDAAyD;AACzD,sDAAsD;AACtD,EAAE;AACF,iFAAiF;AACjF,+EAA+E;AAC/E,kFAAkF;AAClF,2DAA2D;AAE9C,QAAA,aAAa,GAA2B;IACnD,MAAM,EAAE,wCAAwC;IAChD,YAAY,EAAE,wCAAwC;IACtD,MAAM,EAAE,wCAAwC;IAChD,QAAQ,EAAE,wCAAwC;IAClD,QAAQ,EAAE,wCAAwC;CACnD,CAAC"}
|
|
@@ -13,5 +13,29 @@ export declare function loadFile(relativePath: string): string;
|
|
|
13
13
|
export declare function loadAllDocSections(): DocSection[];
|
|
14
14
|
export declare function loadApiSections(): Map<string, string>;
|
|
15
15
|
export declare function loadTopicFiles(files: string[]): string;
|
|
16
|
+
/**
|
|
17
|
+
* Versions that have a release-notes file, newest first.
|
|
18
|
+
*
|
|
19
|
+
* Derived by scanning docs/release-notes/ rather than hardcoded, so a new
|
|
20
|
+
* release becomes queryable as soon as its notes are bundled. The previous
|
|
21
|
+
* hardcoded list silently stopped at 3.3.8 and made every later release
|
|
22
|
+
* unreachable through get_release_notes.
|
|
23
|
+
*/
|
|
24
|
+
export declare function discoverReleaseVersions(): string[];
|
|
25
|
+
/**
|
|
26
|
+
* Versions with a "### Migrating to X" section in the README, newest first.
|
|
27
|
+
* Derived from the README so a new migration guide needs no code change.
|
|
28
|
+
*/
|
|
29
|
+
export declare function discoverMigrationVersions(): string[];
|
|
30
|
+
/**
|
|
31
|
+
* Class/component names documented in docs/API_REFERENCE.md, in document order.
|
|
32
|
+
* Derived from the file's own headings, so newly documented types are
|
|
33
|
+
* immediately reachable through get_api_reference.
|
|
34
|
+
*/
|
|
35
|
+
export declare function discoverApiClassNames(): string[];
|
|
36
|
+
/**
|
|
37
|
+
* Loads release notes for a version. `"latest"` resolves to the newest version
|
|
38
|
+
* actually present, rather than a hardcoded one that goes stale every release.
|
|
39
|
+
*/
|
|
16
40
|
export declare function loadReleaseNotes(version: string): string;
|
|
17
41
|
export declare function loadMigrationGuide(version: string): string;
|
package/dist/utils/doc-loader.js
CHANGED
|
@@ -38,6 +38,9 @@ exports.loadFile = loadFile;
|
|
|
38
38
|
exports.loadAllDocSections = loadAllDocSections;
|
|
39
39
|
exports.loadApiSections = loadApiSections;
|
|
40
40
|
exports.loadTopicFiles = loadTopicFiles;
|
|
41
|
+
exports.discoverReleaseVersions = discoverReleaseVersions;
|
|
42
|
+
exports.discoverMigrationVersions = discoverMigrationVersions;
|
|
43
|
+
exports.discoverApiClassNames = discoverApiClassNames;
|
|
41
44
|
exports.loadReleaseNotes = loadReleaseNotes;
|
|
42
45
|
exports.loadMigrationGuide = loadMigrationGuide;
|
|
43
46
|
const fs = __importStar(require("node:fs"));
|
|
@@ -45,6 +48,8 @@ const path = __importStar(require("node:path"));
|
|
|
45
48
|
let resolvedRoot = null;
|
|
46
49
|
let docSections = null;
|
|
47
50
|
let apiSections = null;
|
|
51
|
+
let releaseVersions = null;
|
|
52
|
+
let migrationVersions = null;
|
|
48
53
|
/**
|
|
49
54
|
* Resolves the root directory containing docs/, wiki/, and README.md.
|
|
50
55
|
*
|
|
@@ -210,9 +215,80 @@ function loadTopicFiles(files) {
|
|
|
210
215
|
}
|
|
211
216
|
return parts.join("\n\n");
|
|
212
217
|
}
|
|
218
|
+
/**
|
|
219
|
+
* Compares two dot-separated versions numerically, newest first.
|
|
220
|
+
* Falls back to string comparison for any non-numeric component.
|
|
221
|
+
*/
|
|
222
|
+
function compareVersionsDesc(a, b) {
|
|
223
|
+
const pa = a.split(".");
|
|
224
|
+
const pb = b.split(".");
|
|
225
|
+
for (let i = 0; i < Math.max(pa.length, pb.length); i++) {
|
|
226
|
+
const na = Number(pa[i] ?? 0);
|
|
227
|
+
const nb = Number(pb[i] ?? 0);
|
|
228
|
+
if (Number.isNaN(na) || Number.isNaN(nb)) {
|
|
229
|
+
const cmp = (pb[i] ?? "").localeCompare(pa[i] ?? "");
|
|
230
|
+
if (cmp !== 0)
|
|
231
|
+
return cmp;
|
|
232
|
+
continue;
|
|
233
|
+
}
|
|
234
|
+
if (na !== nb)
|
|
235
|
+
return nb - na;
|
|
236
|
+
}
|
|
237
|
+
return 0;
|
|
238
|
+
}
|
|
239
|
+
/**
|
|
240
|
+
* Versions that have a release-notes file, newest first.
|
|
241
|
+
*
|
|
242
|
+
* Derived by scanning docs/release-notes/ rather than hardcoded, so a new
|
|
243
|
+
* release becomes queryable as soon as its notes are bundled. The previous
|
|
244
|
+
* hardcoded list silently stopped at 3.3.8 and made every later release
|
|
245
|
+
* unreachable through get_release_notes.
|
|
246
|
+
*/
|
|
247
|
+
function discoverReleaseVersions() {
|
|
248
|
+
if (releaseVersions)
|
|
249
|
+
return releaseVersions;
|
|
250
|
+
const versions = [];
|
|
251
|
+
for (const file of discoverFiles("docs/release-notes", "")) {
|
|
252
|
+
const match = path.basename(file).match(/^RELEASE_NOTES_v(.+)\.md$/);
|
|
253
|
+
if (match)
|
|
254
|
+
versions.push(match[1]);
|
|
255
|
+
}
|
|
256
|
+
releaseVersions = versions.sort(compareVersionsDesc);
|
|
257
|
+
return releaseVersions;
|
|
258
|
+
}
|
|
259
|
+
/**
|
|
260
|
+
* Versions with a "### Migrating to X" section in the README, newest first.
|
|
261
|
+
* Derived from the README so a new migration guide needs no code change.
|
|
262
|
+
*/
|
|
263
|
+
function discoverMigrationVersions() {
|
|
264
|
+
if (migrationVersions)
|
|
265
|
+
return migrationVersions;
|
|
266
|
+
const readme = loadFile("README.md");
|
|
267
|
+
const found = new Set();
|
|
268
|
+
for (const match of readme.matchAll(/^###\s+Migrating to\s+(\S+)\s*$/gm)) {
|
|
269
|
+
found.add(match[1]);
|
|
270
|
+
}
|
|
271
|
+
migrationVersions = Array.from(found).sort(compareVersionsDesc);
|
|
272
|
+
return migrationVersions;
|
|
273
|
+
}
|
|
274
|
+
/**
|
|
275
|
+
* Class/component names documented in docs/API_REFERENCE.md, in document order.
|
|
276
|
+
* Derived from the file's own headings, so newly documented types are
|
|
277
|
+
* immediately reachable through get_api_reference.
|
|
278
|
+
*/
|
|
279
|
+
function discoverApiClassNames() {
|
|
280
|
+
return Array.from(loadApiSections().keys());
|
|
281
|
+
}
|
|
282
|
+
/**
|
|
283
|
+
* Loads release notes for a version. `"latest"` resolves to the newest version
|
|
284
|
+
* actually present, rather than a hardcoded one that goes stale every release.
|
|
285
|
+
*/
|
|
213
286
|
function loadReleaseNotes(version) {
|
|
214
287
|
if (version === "latest") {
|
|
215
|
-
|
|
288
|
+
const newest = discoverReleaseVersions()[0];
|
|
289
|
+
if (!newest)
|
|
290
|
+
return "";
|
|
291
|
+
version = newest;
|
|
216
292
|
}
|
|
217
293
|
return loadFile(`docs/release-notes/RELEASE_NOTES_v${version}.md`);
|
|
218
294
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"doc-loader.js","sourceRoot":"","sources":["../../src/utils/doc-loader.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"doc-loader.js","sourceRoot":"","sources":["../../src/utils/doc-loader.ts"],"names":[],"mappings":"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"}
|