@fundamental-ngx/mcp 0.62.0-rc.100

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 (33) hide show
  1. package/README.md +109 -0
  2. package/package.json +21 -0
  3. package/src/data/components.json +61370 -0
  4. package/src/extractors/build-metadata.d.ts +8 -0
  5. package/src/extractors/build-metadata.js +214 -0
  6. package/src/extractors/build-metadata.js.map +1 -0
  7. package/src/extractors/cem-extractor.d.ts +17 -0
  8. package/src/extractors/cem-extractor.js +434 -0
  9. package/src/extractors/cem-extractor.js.map +1 -0
  10. package/src/extractors/changelog-extractor.d.ts +6 -0
  11. package/src/extractors/changelog-extractor.js +118 -0
  12. package/src/extractors/changelog-extractor.js.map +1 -0
  13. package/src/extractors/description-extractor.d.ts +11 -0
  14. package/src/extractors/description-extractor.js +61 -0
  15. package/src/extractors/description-extractor.js.map +1 -0
  16. package/src/extractors/example-extractor.d.ts +19 -0
  17. package/src/extractors/example-extractor.js +70 -0
  18. package/src/extractors/example-extractor.js.map +1 -0
  19. package/src/extractors/token-extractor.d.ts +6 -0
  20. package/src/extractors/token-extractor.js +348 -0
  21. package/src/extractors/token-extractor.js.map +1 -0
  22. package/src/extractors/typedoc-extractor.d.ts +16 -0
  23. package/src/extractors/typedoc-extractor.js +580 -0
  24. package/src/extractors/typedoc-extractor.js.map +1 -0
  25. package/src/index.d.ts +2 -0
  26. package/src/index.js +5 -0
  27. package/src/index.js.map +1 -0
  28. package/src/server.d.ts +1 -0
  29. package/src/server.js +796 -0
  30. package/src/server.js.map +1 -0
  31. package/src/types/component-metadata.d.ts +177 -0
  32. package/src/types/component-metadata.js +24 -0
  33. package/src/types/component-metadata.js.map +1 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cem-extractor.js","sourceRoot":"","sources":["../../../../../libs/mcp-server/src/extractors/cem-extractor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import { ChangelogEntry } from '../types/component-metadata';
2
+ /**
3
+ * Extract changelog entries from all library CHANGELOG.md files.
4
+ * Parses conventional-changelog format into structured entries.
5
+ */
6
+ export declare function extractChangelogs(basePath: string): Promise<ChangelogEntry[]>;
@@ -0,0 +1,118 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.extractChangelogs = extractChangelogs;
4
+ const promises_1 = require("fs/promises");
5
+ const path_1 = require("path");
6
+ const LIBRARY_CHANGELOGS = [
7
+ { path: 'libs/core/CHANGELOG.md', library: '@fundamental-ngx/core' },
8
+ { path: 'libs/platform/CHANGELOG.md', library: '@fundamental-ngx/platform' },
9
+ { path: 'libs/btp/CHANGELOG.md', library: '@fundamental-ngx/btp' },
10
+ { path: 'libs/cx/CHANGELOG.md', library: '@fundamental-ngx/cx' },
11
+ { path: 'libs/cdk/CHANGELOG.md', library: '@fundamental-ngx/cdk' },
12
+ { path: 'libs/i18n/CHANGELOG.md', library: '@fundamental-ngx/i18n' }
13
+ ];
14
+ /**
15
+ * Extract changelog entries from all library CHANGELOG.md files.
16
+ * Parses conventional-changelog format into structured entries.
17
+ */
18
+ async function extractChangelogs(basePath) {
19
+ const allEntries = [];
20
+ for (const config of LIBRARY_CHANGELOGS) {
21
+ try {
22
+ const content = await (0, promises_1.readFile)((0, path_1.resolve)(basePath, config.path), 'utf-8');
23
+ const entries = parseChangelog(content, config.library);
24
+ allEntries.push(...entries);
25
+ }
26
+ catch {
27
+ // CHANGELOG.md may not exist for all libraries
28
+ }
29
+ }
30
+ return allEntries;
31
+ }
32
+ /**
33
+ * Parse a CHANGELOG.md into structured entries.
34
+ *
35
+ * Supports two formats:
36
+ *
37
+ * Lerna (pre-0.58):
38
+ * ```
39
+ * # [0.58.0-rc.25](url) (2025-11-26)
40
+ * ### Bug Fixes
41
+ * * **core:** description (#1234) (hash)
42
+ * ### Features
43
+ * * **platform:** description (#1234) (hash)
44
+ * ### BREAKING CHANGES
45
+ * * **core:** description
46
+ * ```
47
+ *
48
+ * NX Release (0.58+):
49
+ * ```
50
+ * ## 0.62.0-rc.67 (2026-04-11)
51
+ * ### 🩹 Fixes
52
+ * - **core:** description ([#1234](url))
53
+ * ### 🚀 Features
54
+ * - **platform:** description ([#1234](url))
55
+ * ### ⚠️ Breaking Changes
56
+ * - **core:** description
57
+ * ```
58
+ */
59
+ function parseChangelog(content, library) {
60
+ const entries = [];
61
+ const lines = content.split('\n');
62
+ let currentVersion = '';
63
+ let currentSection = null;
64
+ for (const line of lines) {
65
+ // Version header - Lerna: # [0.58.0-rc.25](url) (date)
66
+ const lernaVersionMatch = line.match(/^#\s+\[([^\]]+)\]/);
67
+ if (lernaVersionMatch) {
68
+ currentVersion = lernaVersionMatch[1];
69
+ currentSection = null;
70
+ continue;
71
+ }
72
+ // Version header - NX: ## 0.62.0-rc.67 (date)
73
+ const nxVersionMatch = line.match(/^## (\d+\.\d+\.\d+(?:-[^\s]+)?)\s+\(/);
74
+ if (nxVersionMatch) {
75
+ currentVersion = nxVersionMatch[1];
76
+ currentSection = null;
77
+ continue;
78
+ }
79
+ // Section header - matches both Lerna ("Bug Fixes", "Features") and NX ("🩹 Fixes", "🚀 Features")
80
+ if (line.match(/^###?\s+(?:🩹\s+)?(?:Bug )?Fixes/i)) {
81
+ currentSection = 'fix';
82
+ continue;
83
+ }
84
+ if (line.match(/^###?\s+(?:🚀\s+)?Features/i)) {
85
+ currentSection = 'feature';
86
+ continue;
87
+ }
88
+ if (line.match(/^###?\s+(?:⚠️\s+)?Breaking Change/i)) {
89
+ currentSection = 'breaking';
90
+ continue;
91
+ }
92
+ if (line.match(/^###?\s+Deprecat/i)) {
93
+ currentSection = 'deprecation';
94
+ continue;
95
+ }
96
+ // Entry line - Lerna: * **scope:** desc | NX: - **scope:** desc
97
+ if (currentSection && currentVersion) {
98
+ const entryMatch = line.match(/^[-*]\s+(?:⚠️\s+)?\*\*([^*:]+):\*\*\s+(.+)/);
99
+ if (entryMatch) {
100
+ const scope = entryMatch[1].trim();
101
+ const rawDescription = entryMatch[2]
102
+ .replace(/\s*\(\[[\da-f]+\]\([^)]+\)\)$/, '') // Remove commit hash link (Lerna)
103
+ .replace(/\s*\(\[#\d+\]\([^)]+\)\)$/, '') // Remove PR link (NX)
104
+ .replace(/\s*\(#\d+\)/, '') // Remove bare issue reference
105
+ .trim();
106
+ entries.push({
107
+ library,
108
+ version: currentVersion,
109
+ type: currentSection,
110
+ description: rawDescription,
111
+ component: scope !== library.split('/')[1] ? scope : undefined
112
+ });
113
+ }
114
+ }
115
+ }
116
+ return entries;
117
+ }
118
+ //# sourceMappingURL=changelog-extractor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"changelog-extractor.js","sourceRoot":"","sources":["../../../../../libs/mcp-server/src/extractors/changelog-extractor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Extract human-written component descriptions from the docs app header templates.
3
+ *
4
+ * Each component's docs page has a `*-header.component.html` file containing:
5
+ * ```html
6
+ * <description>Human-readable description text...</description>
7
+ * ```
8
+ *
9
+ * @returns Map from `"<package>/<component>"` (e.g. `"core/wizard"`) to the description string.
10
+ */
11
+ export declare function extractDescriptions(basePath: string): Promise<Map<string, string>>;
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.extractDescriptions = extractDescriptions;
4
+ const fast_glob_1 = require("fast-glob");
5
+ const promises_1 = require("fs/promises");
6
+ const path_1 = require("path");
7
+ /**
8
+ * Extract human-written component descriptions from the docs app header templates.
9
+ *
10
+ * Each component's docs page has a `*-header.component.html` file containing:
11
+ * ```html
12
+ * <description>Human-readable description text...</description>
13
+ * ```
14
+ *
15
+ * @returns Map from `"<package>/<component>"` (e.g. `"core/wizard"`) to the description string.
16
+ */
17
+ async function extractDescriptions(basePath) {
18
+ const docsRoot = (0, path_1.resolve)(basePath, 'libs/docs');
19
+ const pattern = '*/**/*-header.component.html';
20
+ const files = await (0, fast_glob_1.glob)(pattern, { cwd: docsRoot, absolute: false });
21
+ const descriptions = new Map();
22
+ await Promise.all(files.map(async (relPath) => {
23
+ // relPath: "core/wizard/wizard-header/wizard-header.component.html"
24
+ const parts = relPath.split('/');
25
+ if (parts.length < 3) {
26
+ return;
27
+ }
28
+ const pkg = parts[0]; // "core", "platform", "btp", etc.
29
+ const component = parts[1]; // "wizard", "info-label", etc.
30
+ const key = `${pkg}/${component}`;
31
+ try {
32
+ const html = await (0, promises_1.readFile)((0, path_1.resolve)(docsRoot, relPath), 'utf-8');
33
+ const description = parseDescription(html);
34
+ if (description) {
35
+ descriptions.set(key, description);
36
+ }
37
+ }
38
+ catch {
39
+ // skip unreadable files
40
+ }
41
+ }));
42
+ return descriptions;
43
+ }
44
+ /**
45
+ * Parse the `<description>...</description>` content from a header template,
46
+ * stripping HTML tags and normalising whitespace into a plain-text string.
47
+ */
48
+ function parseDescription(html) {
49
+ const match = html.match(/<description>([\s\S]*?)<\/description>/);
50
+ if (!match) {
51
+ return null;
52
+ }
53
+ const raw = match[1]
54
+ // Strip HTML tags
55
+ .replace(/<[^>]+>/g, ' ')
56
+ // Collapse whitespace
57
+ .replace(/\s+/g, ' ')
58
+ .trim();
59
+ return raw || null;
60
+ }
61
+ //# sourceMappingURL=description-extractor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"description-extractor.js","sourceRoot":"","sources":["../../../../../libs/mcp-server/src/extractors/description-extractor.ts"],"names":[],"mappings":";;AAcA,kDAgCC;AA9CD,yCAAiC;AACjC,0CAAuC;AACvC,+BAA+B;AAE/B;;;;;;;;;GASG;AACI,KAAK,UAAU,mBAAmB,CAAC,QAAgB;IACtD,MAAM,QAAQ,GAAG,IAAA,cAAO,EAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;IAChD,MAAM,OAAO,GAAG,8BAA8B,CAAC;IAC/C,MAAM,KAAK,GAAG,MAAM,IAAA,gBAAI,EAAC,OAAO,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;IAEtE,MAAM,YAAY,GAAG,IAAI,GAAG,EAAkB,CAAC;IAE/C,MAAM,OAAO,CAAC,GAAG,CACb,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;QACxB,oEAAoE;QACpE,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACjC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACnB,OAAO;QACX,CAAC;QAED,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,kCAAkC;QACxD,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,+BAA+B;QAC3D,MAAM,GAAG,GAAG,GAAG,GAAG,IAAI,SAAS,EAAE,CAAC;QAElC,IAAI,CAAC;YACD,MAAM,IAAI,GAAG,MAAM,IAAA,mBAAQ,EAAC,IAAA,cAAO,EAAC,QAAQ,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,CAAC;YACjE,MAAM,WAAW,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC;YAC3C,IAAI,WAAW,EAAE,CAAC;gBACd,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;YACvC,CAAC;QACL,CAAC;QAAC,MAAM,CAAC;YACL,wBAAwB;QAC5B,CAAC;IACL,CAAC,CAAC,CACL,CAAC;IAEF,OAAO,YAAY,CAAC;AACxB,CAAC;AAED;;;GAGG;AACH,SAAS,gBAAgB,CAAC,IAAY;IAClC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,wCAAwC,CAAC,CAAC;IACnE,IAAI,CAAC,KAAK,EAAE,CAAC;QACT,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC;QAChB,kBAAkB;SACjB,OAAO,CAAC,UAAU,EAAE,GAAG,CAAC;QACzB,sBAAsB;SACrB,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC;SACpB,IAAI,EAAE,CAAC;IAEZ,OAAO,GAAG,IAAI,IAAI,CAAC;AACvB,CAAC"}
@@ -0,0 +1,19 @@
1
+ export interface ComponentExample {
2
+ /** Component directory name, e.g. "button", "dialog" */
3
+ componentDir: string;
4
+ /** Library name, e.g. "core", "platform" */
5
+ libraryDir: string;
6
+ /** Example file name, e.g. "button-types-example" */
7
+ name: string;
8
+ /** Description derived from file name */
9
+ description: string;
10
+ /** TypeScript source code */
11
+ typescript: string;
12
+ /** HTML template (if separate file exists) */
13
+ html?: string;
14
+ }
15
+ /**
16
+ * Extract example components from the docs folder.
17
+ * Examples live at: libs/docs/{library}/{component}/examples/*-example.component.ts
18
+ */
19
+ export declare function extractExamples(basePath: string): Promise<Map<string, ComponentExample[]>>;
@@ -0,0 +1,70 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.extractExamples = extractExamples;
4
+ const fast_glob_1 = require("fast-glob");
5
+ const promises_1 = require("fs/promises");
6
+ const path_1 = require("path");
7
+ /**
8
+ * Extract example components from the docs folder.
9
+ * Examples live at: libs/docs/{library}/{component}/examples/*-example.component.ts
10
+ */
11
+ async function extractExamples(basePath) {
12
+ const pattern = 'libs/docs/*/*/examples/*-example.component.ts';
13
+ const files = await (0, fast_glob_1.glob)(pattern, { cwd: basePath, absolute: false });
14
+ const exampleMap = new Map();
15
+ for (const file of files) {
16
+ // Parse path: libs/docs/{library}/{component}/examples/{name}.component.ts
17
+ const parts = file.split('/');
18
+ if (parts.length < 6) {
19
+ continue;
20
+ }
21
+ const libraryDir = parts[2]; // e.g. "core", "platform"
22
+ const componentDir = parts[3]; // e.g. "button", "dialog"
23
+ const fileName = parts[5]; // e.g. "button-types-example.component.ts"
24
+ // Skip non-example files
25
+ if (!fileName.includes('-example.component.ts')) {
26
+ continue;
27
+ }
28
+ const exampleName = fileName.replace('.component.ts', '');
29
+ const description = formatExampleName(exampleName);
30
+ try {
31
+ const tsContent = await (0, promises_1.readFile)((0, path_1.resolve)(basePath, file), 'utf-8');
32
+ // Check for a matching HTML template
33
+ const htmlPath = file.replace('.component.ts', '.component.html');
34
+ let htmlContent;
35
+ try {
36
+ htmlContent = await (0, promises_1.readFile)((0, path_1.resolve)(basePath, htmlPath), 'utf-8');
37
+ }
38
+ catch {
39
+ // No separate HTML file — template is inline in the TS file
40
+ }
41
+ const example = {
42
+ componentDir,
43
+ libraryDir,
44
+ name: exampleName,
45
+ description,
46
+ typescript: tsContent,
47
+ html: htmlContent
48
+ };
49
+ const key = `${libraryDir}/${componentDir}`;
50
+ const existing = exampleMap.get(key) ?? [];
51
+ existing.push(example);
52
+ exampleMap.set(key, existing);
53
+ }
54
+ catch {
55
+ // Skip unreadable files
56
+ }
57
+ }
58
+ return exampleMap;
59
+ }
60
+ /**
61
+ * Convert a file name like "button-types-example" to "Button Types".
62
+ */
63
+ function formatExampleName(name) {
64
+ return name
65
+ .replace(/-example$/, '')
66
+ .split('-')
67
+ .map((word) => word.charAt(0).toUpperCase() + word.slice(1))
68
+ .join(' ');
69
+ }
70
+ //# sourceMappingURL=example-extractor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"example-extractor.js","sourceRoot":"","sources":["../../../../../libs/mcp-server/src/extractors/example-extractor.ts"],"names":[],"mappings":";;AAuBA,0CAwDC;AA/ED,yCAAiC;AACjC,0CAAuC;AACvC,+BAA+B;AAiB/B;;;GAGG;AACI,KAAK,UAAU,eAAe,CAAC,QAAgB;IAClD,MAAM,OAAO,GAAG,+CAA+C,CAAC;IAChE,MAAM,KAAK,GAAG,MAAM,IAAA,gBAAI,EAAC,OAAO,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;IAEtE,MAAM,UAAU,GAAG,IAAI,GAAG,EAA8B,CAAC;IAEzD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACvB,2EAA2E;QAC3E,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC9B,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACnB,SAAS;QACb,CAAC;QAED,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,0BAA0B;QACvD,MAAM,YAAY,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,0BAA0B;QACzD,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,2CAA2C;QAEtE,yBAAyB;QACzB,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,uBAAuB,CAAC,EAAE,CAAC;YAC9C,SAAS;QACb,CAAC;QAED,MAAM,WAAW,GAAG,QAAQ,CAAC,OAAO,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC;QAC1D,MAAM,WAAW,GAAG,iBAAiB,CAAC,WAAW,CAAC,CAAC;QAEnD,IAAI,CAAC;YACD,MAAM,SAAS,GAAG,MAAM,IAAA,mBAAQ,EAAC,IAAA,cAAO,EAAC,QAAQ,EAAE,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC;YAEnE,qCAAqC;YACrC,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,iBAAiB,CAAC,CAAC;YAClE,IAAI,WAA+B,CAAC;YACpC,IAAI,CAAC;gBACD,WAAW,GAAG,MAAM,IAAA,mBAAQ,EAAC,IAAA,cAAO,EAAC,QAAQ,EAAE,QAAQ,CAAC,EAAE,OAAO,CAAC,CAAC;YACvE,CAAC;YAAC,MAAM,CAAC;gBACL,4DAA4D;YAChE,CAAC;YAED,MAAM,OAAO,GAAqB;gBAC9B,YAAY;gBACZ,UAAU;gBACV,IAAI,EAAE,WAAW;gBACjB,WAAW;gBACX,UAAU,EAAE,SAAS;gBACrB,IAAI,EAAE,WAAW;aACpB,CAAC;YAEF,MAAM,GAAG,GAAG,GAAG,UAAU,IAAI,YAAY,EAAE,CAAC;YAC5C,MAAM,QAAQ,GAAG,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;YAC3C,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACvB,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QAClC,CAAC;QAAC,MAAM,CAAC;YACL,wBAAwB;QAC5B,CAAC;IACL,CAAC;IAED,OAAO,UAAU,CAAC;AACtB,CAAC;AAED;;GAEG;AACH,SAAS,iBAAiB,CAAC,IAAY;IACnC,OAAO,IAAI;SACN,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC;SACxB,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;SAC3D,IAAI,CAAC,GAAG,CAAC,CAAC;AACnB,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { DesignToken } from '../types/component-metadata';
2
+ /**
3
+ * Extract design tokens from fundamental-styles utility CSS files
4
+ * and SAP theming CSS custom properties.
5
+ */
6
+ export declare function extractDesignTokens(basePath: string): Promise<DesignToken[]>;