Skip to content

Commit f6b17be

Browse files
committed
feat(ui5_create_app): Add sourceTemplate section to manifest.json
1 parent 3e49ef3 commit f6b17be

7 files changed

Lines changed: 20 additions & 3 deletions

File tree

resources/template-js/webapp/manifest.json

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,11 @@
1818
"odataVersion": "4.0"
1919
}
2020
}
21-
}<% } %>
21+
}<% } %>,
22+
"sourceTemplate": {
23+
"id": "@ui5/mcp-server:js",
24+
"version": "<%= mcpServerVersion %>"
25+
}
2226
},
2327

2428
"sap.ui": {

resources/template-ts/webapp/manifest.json

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,11 @@
1818
"odataVersion": "4.0"
1919
}
2020
}
21-
}<% } %>
21+
}<% } %>,
22+
"sourceTemplate": {
23+
"id": "@ui5/mcp-server:ts",
24+
"version": "<%= mcpServerVersion %>"
25+
}
2226
},
2327

2428
"sap.ui": {

src/tools/create_ui5_app/create_ui5_app.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ import ODataMetadata from "./ODataMetadata.js";
1010
import {CreateUi5AppParams, CreateUi5AppResult} from "./schema.js";
1111
import {getLogger} from "@ui5/logger";
1212
import {isUi5Framework, Ui5Framework} from "../../utils/ui5Framework.js";
13-
import {dirExists, InvalidInputError} from "../../utils.js";
13+
import {dirExists, InvalidInputError, PKG_VERSION} from "../../utils.js";
1414
import isValidUrl from "./isValidUrl.js";
1515

1616
const log = getLogger("tools:create_ui5_app:create_ui5_app");
@@ -230,6 +230,7 @@ The minimum version for ${framework} is ${minFwkVersionToUse}.`
230230
qunitCoverageFile: semver.gte(frameworkVersion, "1.113.0") ?
231231
"qunit-coverage-istanbul.js" :
232232
"qunit-coverage.js",
233+
mcpServerVersion: PKG_VERSION,
233234
gte1_98_0: semver.gte(frameworkVersion, "1.98.0"),
234235
gte1_100_0: semver.gte(frameworkVersion, "1.100.0"),
235236
gte1_104_0: semver.gte(frameworkVersion, "1.104.0"),

src/tools/create_ui5_app/templateProcessor.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,8 @@ export interface TemplateVars {
3838
defaultTheme: string;
3939
/** QUnit coverage file - depends on UI5 version */
4040
qunitCoverageFile: string;
41+
/** Version of the MCP server, for source template metadata */
42+
mcpServerVersion: string;
4143
/** Flags for version-specific features */
4244
gte1_98_0: boolean;
4345
gte1_100_0: boolean;

test/expected/create_ui5_app/com.test.apiapp/webapp/manifest.json

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,10 @@
99
"description": "{{appDescription}}",
1010
"applicationVersion": {
1111
"version": "${version}"
12+
},
13+
"sourceTemplate": {
14+
"id": "@ui5/mcp-server:ts",
15+
"version": "0.2.5"
1216
}
1317
},
1418

test/lib/tools/create_ui5_app/create_ui5_app.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -175,6 +175,7 @@ test("All parameters", async (t) => {
175175
gte1_142_0: false,
176176
lt1_110_0: false,
177177
lt1_124_0: false,
178+
mcpServerVersion: "0.2.5",
178179
namespace: "com.test.apiapp",
179180
oDataEntitySet: "Products",
180181
oDataV4Url: "https://localhost/odata/v4/service/",

tsconfig.base.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
"moduleResolution": "node16",
55
"module": "node16",
66
"target": "es2022",
7+
"resolveJsonModule": true,
78

89
"lib": ["es2022", "DOM"],
910
"strict": true,

0 commit comments

Comments
 (0)