@microsoft/teamsfx-core 2.0.6-alpha.da822cd72.0 → 2.0.6-alpha.e5db52f29.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.
Files changed (133) hide show
  1. package/build/common/featureFlags.d.ts +1 -0
  2. package/build/common/featureFlags.d.ts.map +1 -1
  3. package/build/common/featureFlags.js +5 -1
  4. package/build/common/featureFlags.js.map +1 -1
  5. package/build/common/local/constants.d.ts +1 -0
  6. package/build/common/local/constants.d.ts.map +1 -1
  7. package/build/common/local/constants.js +1 -0
  8. package/build/common/local/constants.js.map +1 -1
  9. package/build/common/m365/launchHelper.d.ts +1 -1
  10. package/build/common/m365/launchHelper.d.ts.map +1 -1
  11. package/build/common/m365/launchHelper.js +2 -2
  12. package/build/common/m365/launchHelper.js.map +1 -1
  13. package/build/common/m365/packageService.d.ts +1 -0
  14. package/build/common/m365/packageService.d.ts.map +1 -1
  15. package/build/common/m365/packageService.js +68 -0
  16. package/build/common/m365/packageService.js.map +1 -1
  17. package/build/common/spec-parser/adaptiveCardGenerator.d.ts +3 -2
  18. package/build/common/spec-parser/adaptiveCardGenerator.d.ts.map +1 -1
  19. package/build/common/spec-parser/adaptiveCardGenerator.js +49 -19
  20. package/build/common/spec-parser/adaptiveCardGenerator.js.map +1 -1
  21. package/build/common/spec-parser/adaptiveCardWrapper.d.ts.map +1 -1
  22. package/build/common/spec-parser/adaptiveCardWrapper.js.map +1 -1
  23. package/build/common/spec-parser/constants.d.ts +15 -14
  24. package/build/common/spec-parser/constants.d.ts.map +1 -1
  25. package/build/common/spec-parser/constants.js +15 -15
  26. package/build/common/spec-parser/constants.js.map +1 -1
  27. package/build/common/spec-parser/index.d.ts +5 -0
  28. package/build/common/spec-parser/index.d.ts.map +1 -0
  29. package/build/common/spec-parser/index.js +16 -0
  30. package/build/common/spec-parser/index.js.map +1 -0
  31. package/build/common/spec-parser/interfaces.d.ts +20 -4
  32. package/build/common/spec-parser/interfaces.d.ts.map +1 -1
  33. package/build/common/spec-parser/interfaces.js +1 -2
  34. package/build/common/spec-parser/interfaces.js.map +1 -1
  35. package/build/common/spec-parser/manifestUpdater.d.ts +1 -2
  36. package/build/common/spec-parser/manifestUpdater.d.ts.map +1 -1
  37. package/build/common/spec-parser/manifestUpdater.js +9 -98
  38. package/build/common/spec-parser/manifestUpdater.js.map +1 -1
  39. package/build/common/spec-parser/specFilter.d.ts +1 -1
  40. package/build/common/spec-parser/specFilter.d.ts.map +1 -1
  41. package/build/common/spec-parser/specFilter.js +2 -2
  42. package/build/common/spec-parser/specFilter.js.map +1 -1
  43. package/build/common/spec-parser/specParser.d.ts +10 -5
  44. package/build/common/spec-parser/specParser.d.ts.map +1 -1
  45. package/build/common/spec-parser/specParser.js +34 -84
  46. package/build/common/spec-parser/specParser.js.map +1 -1
  47. package/build/common/spec-parser/utils.d.ts +11 -4
  48. package/build/common/spec-parser/utils.d.ts.map +1 -1
  49. package/build/common/spec-parser/utils.js +184 -31
  50. package/build/common/spec-parser/utils.js.map +1 -1
  51. package/build/common/templates-config.json +2 -2
  52. package/build/component/configManager/lifecycle.d.ts +1 -0
  53. package/build/component/configManager/lifecycle.d.ts.map +1 -1
  54. package/build/component/configManager/lifecycle.js +17 -5
  55. package/build/component/configManager/lifecycle.js.map +1 -1
  56. package/build/component/coordinator/index.d.ts.map +1 -1
  57. package/build/component/coordinator/index.js +12 -9
  58. package/build/component/coordinator/index.js.map +1 -1
  59. package/build/component/developerPortalScaffoldUtils.d.ts.map +1 -1
  60. package/build/component/developerPortalScaffoldUtils.js +32 -0
  61. package/build/component/developerPortalScaffoldUtils.js.map +1 -1
  62. package/build/component/driver/add/addWebPart.d.ts.map +1 -1
  63. package/build/component/driver/add/addWebPart.js +2 -0
  64. package/build/component/driver/add/addWebPart.js.map +1 -1
  65. package/build/component/driver/add/interface/AddWebPartArgs.d.ts +4 -0
  66. package/build/component/driver/add/interface/AddWebPartArgs.d.ts.map +1 -1
  67. package/build/component/driver/teamsApp/publishAppPackage.d.ts +1 -0
  68. package/build/component/driver/teamsApp/publishAppPackage.d.ts.map +1 -1
  69. package/build/component/driver/teamsApp/publishAppPackage.js +9 -9
  70. package/build/component/driver/teamsApp/publishAppPackage.js.map +1 -1
  71. package/build/component/driver/teamsApp/teamsappMgr.d.ts +20 -0
  72. package/build/component/driver/teamsApp/teamsappMgr.d.ts.map +1 -0
  73. package/build/component/driver/teamsApp/teamsappMgr.js +278 -0
  74. package/build/component/driver/teamsApp/teamsappMgr.js.map +1 -0
  75. package/build/component/generator/copilotPlugin/generator.d.ts.map +1 -1
  76. package/build/component/generator/copilotPlugin/generator.js +11 -14
  77. package/build/component/generator/copilotPlugin/generator.js.map +1 -1
  78. package/build/component/generator/copilotPlugin/helper.d.ts +5 -2
  79. package/build/component/generator/copilotPlugin/helper.d.ts.map +1 -1
  80. package/build/component/generator/copilotPlugin/helper.js +83 -13
  81. package/build/component/generator/copilotPlugin/helper.js.map +1 -1
  82. package/build/component/generator/generator.d.ts.map +1 -1
  83. package/build/component/generator/generator.js +4 -2
  84. package/build/component/generator/generator.js.map +1 -1
  85. package/build/component/generator/generatorAction.d.ts +1 -1
  86. package/build/component/generator/generatorAction.d.ts.map +1 -1
  87. package/build/component/generator/generatorAction.js +8 -6
  88. package/build/component/generator/generatorAction.js.map +1 -1
  89. package/build/component/generator/officeAddin/generator.js +1 -1
  90. package/build/component/generator/officeAddin/generator.js.map +1 -1
  91. package/build/component/generator/officeAddin/helperMethods.d.ts.map +1 -1
  92. package/build/component/generator/officeAddin/helperMethods.js +20 -17
  93. package/build/component/generator/officeAddin/helperMethods.js.map +1 -1
  94. package/build/component/utils/common.d.ts.map +1 -1
  95. package/build/component/utils/common.js +9 -2
  96. package/build/component/utils/common.js.map +1 -1
  97. package/build/component/utils/envUtil.d.ts +1 -0
  98. package/build/component/utils/envUtil.d.ts.map +1 -1
  99. package/build/component/utils/envUtil.js +5 -0
  100. package/build/component/utils/envUtil.js.map +1 -1
  101. package/build/core/FxCore.d.ts +17 -2
  102. package/build/core/FxCore.d.ts.map +1 -1
  103. package/build/core/FxCore.js +75 -7
  104. package/build/core/FxCore.js.map +1 -1
  105. package/build/core/middleware/projectMigratorV3.js +1 -1
  106. package/build/core/middleware/projectMigratorV3.js.map +1 -1
  107. package/build/question/create.d.ts +7 -6
  108. package/build/question/create.d.ts.map +1 -1
  109. package/build/question/create.js +77 -73
  110. package/build/question/create.js.map +1 -1
  111. package/build/question/inputs/CreateProjectInputs.d.ts +4 -4
  112. package/build/question/inputs/CreateProjectInputs.d.ts.map +1 -1
  113. package/build/question/inputs/SPFxAddWebpartInputs.d.ts +2 -0
  114. package/build/question/inputs/SPFxAddWebpartInputs.d.ts.map +1 -1
  115. package/build/question/options/CreateProjectOptions.d.ts.map +1 -1
  116. package/build/question/options/CreateProjectOptions.js +7 -8
  117. package/build/question/options/CreateProjectOptions.js.map +1 -1
  118. package/build/question/options/SPFxAddWebpartOptions.d.ts.map +1 -1
  119. package/build/question/options/SPFxAddWebpartOptions.js +9 -0
  120. package/build/question/options/SPFxAddWebpartOptions.js.map +1 -1
  121. package/build/question/other.d.ts.map +1 -1
  122. package/build/question/other.js +21 -0
  123. package/build/question/other.js.map +1 -1
  124. package/build/question/questionNames.d.ts +1 -2
  125. package/build/question/questionNames.d.ts.map +1 -1
  126. package/build/question/questionNames.js +1 -2
  127. package/build/question/questionNames.js.map +1 -1
  128. package/package.json +5 -4
  129. package/resource/package.nls.json +13 -15
  130. package/templates/fallback/common.zip +0 -0
  131. package/templates/fallback/csharp.zip +0 -0
  132. package/templates/fallback/js.zip +0 -0
  133. package/templates/fallback/ts.zip +0 -0
@@ -0,0 +1,278 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.teamsappMgr = void 0;
4
+ const tslib_1 = require("tslib");
5
+ // Copyright (c) Microsoft Corporation.
6
+ // Licensed under the MIT license.
7
+ const teamsfx_api_1 = require("@microsoft/teamsfx-api");
8
+ const adm_zip_1 = tslib_1.__importDefault(require("adm-zip"));
9
+ const fs_extra_1 = tslib_1.__importDefault(require("fs-extra"));
10
+ const path = tslib_1.__importStar(require("path"));
11
+ const typedi_1 = require("typedi");
12
+ const util = tslib_1.__importStar(require("util"));
13
+ const localizeUtils_1 = require("../../../common/localizeUtils");
14
+ const tools_1 = require("../../../common/tools");
15
+ const common_1 = require("../../../error/common");
16
+ const lifecycle_1 = require("../../configManager/lifecycle");
17
+ const utils_1 = require("../../utils");
18
+ const envUtil_1 = require("../../utils/envUtil");
19
+ const pathUtils_1 = require("../../utils/pathUtils");
20
+ const configure_1 = require("./configure");
21
+ const constants_1 = require("./constants");
22
+ const createAppPackage_1 = require("./createAppPackage");
23
+ const publishAppPackage_1 = require("./publishAppPackage");
24
+ const ManifestUtils_1 = require("./utils/ManifestUtils");
25
+ class TeamsAppMgr {
26
+ async ensureAppPackageFile(inputs) {
27
+ // if no package file input, then do package first
28
+ if (!inputs["package-file"]) {
29
+ const packageRes = await this.packageTeamsApp(inputs);
30
+ if (packageRes.isErr()) {
31
+ return teamsfx_api_1.err(packageRes.error);
32
+ }
33
+ inputs["package-file"] = packageRes.value.outputZipPath;
34
+ }
35
+ if (!(await fs_extra_1.default.pathExists(inputs["package-file"]))) {
36
+ return teamsfx_api_1.err(new common_1.FileNotFoundError("updateTeamsApp", inputs["package-file"]));
37
+ }
38
+ return teamsfx_api_1.ok(undefined);
39
+ }
40
+ async readManifestFromZip(appPackagePath) {
41
+ const archivedFile = await fs_extra_1.default.readFile(appPackagePath);
42
+ const zipEntries = new adm_zip_1.default(archivedFile).getEntries();
43
+ const manifestFile = zipEntries.find((x) => x.entryName === constants_1.Constants.MANIFEST_FILE);
44
+ if (manifestFile) {
45
+ const manifestContent = manifestFile.getData().toString();
46
+ const manifest = JSON.parse(manifestContent);
47
+ return teamsfx_api_1.ok(manifest);
48
+ }
49
+ return teamsfx_api_1.err(new common_1.FileNotFoundError("readManifestFromZip", appPackagePath + ":" + constants_1.Constants.MANIFEST_FILE));
50
+ }
51
+ async checkAndTryToLoadEnv(inputs) {
52
+ //check placeholders in manifest file, if there are unresolved placeholders in manifest file, try to load env file
53
+ const manifestFile = inputs["manifest-file"];
54
+ const manifestString = await fs_extra_1.default.readFile(manifestFile, { encoding: "utf-8" });
55
+ const unresolved = [];
56
+ const resovled = [];
57
+ lifecycle_1.resolveString(manifestString, resovled, unresolved);
58
+ let env = undefined;
59
+ if (unresolved.length > 0) {
60
+ if (!inputs["env-file"]) {
61
+ const envRes = await envUtil_1.envUtil.listEnv(inputs.projectPath);
62
+ if (envRes.isErr()) {
63
+ return teamsfx_api_1.err(envRes.error);
64
+ }
65
+ const envs = envRes.value;
66
+ const envFolderPathRes = await pathUtils_1.pathUtils.getEnvFolderPath(inputs.projectPath);
67
+ if (envFolderPathRes.isErr()) {
68
+ return teamsfx_api_1.err(envFolderPathRes.error);
69
+ }
70
+ const envFolder = envFolderPathRes.value;
71
+ if (!envFolder)
72
+ return teamsfx_api_1.ok(env);
73
+ if (inputs.env) {
74
+ // env provided
75
+ if (envs.includes(inputs.env)) {
76
+ //env provided and found
77
+ inputs["env-file"] = path.join(envFolder, `.env.${inputs.env}`);
78
+ env = inputs.env;
79
+ }
80
+ else {
81
+ // env provided but not found
82
+ return teamsfx_api_1.err(new common_1.FileNotFoundError("updateTeamsApp", path.join(envFolder, `.env.${inputs.env}`)));
83
+ }
84
+ }
85
+ else {
86
+ //env not provided
87
+ if (envs.length > 1) {
88
+ //need provide
89
+ return teamsfx_api_1.err(new common_1.MissingRequiredInputError("env", "updateTeamsApp"));
90
+ }
91
+ else if (envs.length === 1) {
92
+ // no need provide
93
+ env = envs[0];
94
+ inputs["env-file"] = path.join(envFolder, `.env.${env}`);
95
+ }
96
+ else {
97
+ // no env file found
98
+ }
99
+ }
100
+ }
101
+ if (inputs["env-file"]) {
102
+ const res = await envUtil_1.envUtil.loadEnvFile(inputs["env-file"]);
103
+ if (res.isErr()) {
104
+ return teamsfx_api_1.err(res.error);
105
+ }
106
+ }
107
+ }
108
+ return teamsfx_api_1.ok(env);
109
+ }
110
+ async packageTeamsApp(inputs) {
111
+ if (!inputs["manifest-file"]) {
112
+ const defaultManifestPath = ManifestUtils_1.manifestUtils.getTeamsAppManifestPath(inputs.projectPath);
113
+ if (!(await fs_extra_1.default.pathExists(defaultManifestPath))) {
114
+ return teamsfx_api_1.err(new common_1.MissingRequiredInputError("package-file/manifest-file", "updateTeamsApp"));
115
+ }
116
+ inputs["manifest-file"] = defaultManifestPath;
117
+ }
118
+ else {
119
+ if (!(await fs_extra_1.default.pathExists(inputs["manifest-file"]))) {
120
+ return teamsfx_api_1.err(new common_1.FileNotFoundError("updateTeamsApp", inputs["manifest-file"]));
121
+ }
122
+ }
123
+ const loadEnvRes = await this.checkAndTryToLoadEnv(inputs);
124
+ if (loadEnvRes.isErr())
125
+ return teamsfx_api_1.err(loadEnvRes.error);
126
+ const env = loadEnvRes.value;
127
+ // reach here means manifes-file is provided and exists
128
+ inputs["output-package-file"] =
129
+ inputs["output-package-file"] ||
130
+ path.join(inputs.projectPath, "appPackage", "build", env ? `appPackage.${env}.zip` : "appPackage.zip");
131
+ inputs["output-manifest-file"] =
132
+ inputs["output-manifest-file"] ||
133
+ path.join(inputs.projectPath, "appPackage", "build", env ? `manifest.${env}.json` : "manifest.json");
134
+ const packageArgs = {
135
+ manifestPath: inputs["manifest-file"],
136
+ outputZipPath: inputs["output-package-file"],
137
+ outputJsonPath: inputs["output-manifest-file"],
138
+ };
139
+ const buildDriver = typedi_1.Container.get(createAppPackage_1.actionName);
140
+ const driverContext = utils_1.createDriverContext(inputs);
141
+ const res = (await buildDriver.execute(packageArgs, driverContext)).result;
142
+ if (res.isErr()) {
143
+ return teamsfx_api_1.err(res.error);
144
+ }
145
+ return teamsfx_api_1.ok(packageArgs);
146
+ }
147
+ /**
148
+ * entry of validate teams app
149
+ */
150
+ async validateTeamsApp(inputs) {
151
+ const context = utils_1.createDriverContext(inputs);
152
+ if (!inputs["manifest-file"] && !inputs["package-file"]) {
153
+ // neither manifest-file nor package-file provided, use default manifest file
154
+ const defaultManifestPath = ManifestUtils_1.manifestUtils.getTeamsAppManifestPath(inputs.projectPath);
155
+ if (!(await fs_extra_1.default.pathExists(defaultManifestPath))) {
156
+ return teamsfx_api_1.err(new common_1.MissingRequiredInputError("package-file/manifest-file", "validateTeamsApp"));
157
+ }
158
+ inputs["manifest-file"] = defaultManifestPath;
159
+ }
160
+ if (inputs["manifest-file"]) {
161
+ const loadEnvRes = await this.checkAndTryToLoadEnv(inputs);
162
+ if (loadEnvRes.isErr())
163
+ return teamsfx_api_1.err(loadEnvRes.error);
164
+ const teamsAppManifestFilePath = inputs["manifest-file"];
165
+ const args = {
166
+ manifestPath: teamsAppManifestFilePath,
167
+ showMessage: (inputs === null || inputs === void 0 ? void 0 : inputs.showMessage) != undefined ? inputs.showMessage : true,
168
+ };
169
+ const driver = typedi_1.Container.get("teamsApp/validateManifest");
170
+ const result = (await driver.execute(args, context)).result;
171
+ if (result.isErr()) {
172
+ return teamsfx_api_1.err(result.error);
173
+ }
174
+ }
175
+ else if (inputs["package-file"]) {
176
+ const teamsAppPackageFilePath = inputs["package-file"];
177
+ const args = {
178
+ appPackagePath: teamsAppPackageFilePath,
179
+ showMessage: true,
180
+ };
181
+ const driver = typedi_1.Container.get("teamsApp/validateAppPackage");
182
+ const result = (await driver.execute(args, context)).result;
183
+ if (result.isErr()) {
184
+ return teamsfx_api_1.err(result.error);
185
+ }
186
+ }
187
+ return teamsfx_api_1.ok(undefined);
188
+ }
189
+ /**
190
+ * entry of update teams app
191
+ */
192
+ async updateTeamsApp(inputs) {
193
+ var _a;
194
+ // 1. zip package if necessary
195
+ const packageRes = await this.ensureAppPackageFile(inputs);
196
+ if (packageRes.isErr()) {
197
+ return teamsfx_api_1.err(packageRes.error);
198
+ }
199
+ const appPackageFile = inputs["package-file"];
200
+ const driverContext = utils_1.createDriverContext(inputs);
201
+ // 2. validate against app package
202
+ const args = {
203
+ appPackagePath: appPackageFile,
204
+ showMessage: true,
205
+ };
206
+ const driver = typedi_1.Container.get("teamsApp/validateAppPackage");
207
+ const validateRes = (await driver.execute(args, driverContext)).result;
208
+ if (validateRes.isErr()) {
209
+ return teamsfx_api_1.err(validateRes.error);
210
+ }
211
+ // 3. update app package
212
+ const updateTeamsAppArgs = {
213
+ appPackagePath: appPackageFile,
214
+ };
215
+ const configureDriver = typedi_1.Container.get(configure_1.actionName);
216
+ const updateRes = (await configureDriver.execute(updateTeamsAppArgs, driverContext)).result;
217
+ if (updateRes.isErr()) {
218
+ return teamsfx_api_1.err(updateRes.error);
219
+ }
220
+ // 4. show result
221
+ let loginHint = "";
222
+ const accountRes = await driverContext.m365TokenProvider.getJsonObject({
223
+ scopes: tools_1.AppStudioScopes,
224
+ });
225
+ if (accountRes.isOk()) {
226
+ loginHint = accountRes.value.unique_name;
227
+ }
228
+ const manifestRes = await this.readManifestFromZip(appPackageFile);
229
+ if (manifestRes.isErr()) {
230
+ return teamsfx_api_1.err(manifestRes.error);
231
+ }
232
+ const manifest = manifestRes.value;
233
+ const teamsAppId = manifest.id;
234
+ const url = util.format(constants_1.Constants.DEVELOPER_PORTAL_APP_PACKAGE_URL, teamsAppId, loginHint);
235
+ const message = [
236
+ {
237
+ content: localizeUtils_1.getLocalizedString("plugins.appstudio.teamsAppUpdatedCLINotice"),
238
+ color: teamsfx_api_1.Colors.BRIGHT_GREEN,
239
+ },
240
+ { content: url, color: teamsfx_api_1.Colors.BRIGHT_CYAN },
241
+ ];
242
+ void ((_a = driverContext.ui) === null || _a === void 0 ? void 0 : _a.showMessage("info", message, false));
243
+ return teamsfx_api_1.ok(undefined);
244
+ }
245
+ async publishTeamsApp(inputs) {
246
+ var _a;
247
+ // 1. zip package if necessary
248
+ const packageRes = await this.ensureAppPackageFile(inputs);
249
+ if (packageRes.isErr()) {
250
+ return teamsfx_api_1.err(packageRes.error);
251
+ }
252
+ const appPackageFile = inputs["package-file"];
253
+ const driverContext = utils_1.createDriverContext(inputs);
254
+ // 2. validate against app package
255
+ const args = {
256
+ appPackagePath: appPackageFile,
257
+ showMessage: true,
258
+ };
259
+ const driver = typedi_1.Container.get("teamsApp/validateAppPackage");
260
+ const validateRes = (await driver.execute(args, driverContext)).result;
261
+ if (validateRes.isErr()) {
262
+ return teamsfx_api_1.err(validateRes.error);
263
+ }
264
+ // 3. publish app package
265
+ const publishArgs = {
266
+ appPackagePath: appPackageFile,
267
+ };
268
+ const publishDriver = typedi_1.Container.get(publishAppPackage_1.actionName);
269
+ const updateRes = (await publishDriver.execute(publishArgs, driverContext)).result;
270
+ if (updateRes.isErr()) {
271
+ return teamsfx_api_1.err(updateRes.error);
272
+ }
273
+ void ((_a = driverContext.ui) === null || _a === void 0 ? void 0 : _a.showMessage("info", `publish successfully, Go to admin portal: ${constants_1.Constants.TEAMS_ADMIN_PORTAL}`, false));
274
+ return teamsfx_api_1.ok(undefined);
275
+ }
276
+ }
277
+ exports.teamsappMgr = new TeamsAppMgr();
278
+ //# sourceMappingURL=teamsappMgr.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"teamsappMgr.js","sourceRoot":"","sources":["../../../../src/component/driver/teamsApp/teamsappMgr.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"generator.d.ts","sourceRoot":"","sources":["../../../../src/component/generator/copilotPlugin/generator.ts"],"names":[],"mappings":"AAQA,OAAO,EACL,OAAO,EAEP,OAAO,EACP,MAAM,EAIN,MAAM,EAIN,OAAO,EACR,MAAM,wBAAwB,CAAC;AAwChC,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAC;CACtB;AAED,qBAAa,sBAAsB;WASb,mBAAmB,CACrC,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,MAAM,EACd,eAAe,EAAE,MAAM,GACtB,OAAO,CAAC,MAAM,CAAC,4BAA4B,EAAE,OAAO,CAAC,CAAC;WAkBrC,wBAAwB,CAC1C,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,MAAM,EACd,eAAe,EAAE,MAAM,GACtB,OAAO,CAAC,MAAM,CAAC,4BAA4B,EAAE,OAAO,CAAC,CAAC;mBAUpC,aAAa;CAwKnC"}
1
+ {"version":3,"file":"generator.d.ts","sourceRoot":"","sources":["../../../../src/component/generator/copilotPlugin/generator.ts"],"names":[],"mappings":"AAQA,OAAO,EACL,OAAO,EAEP,OAAO,EACP,MAAM,EAIN,MAAM,EAIN,OAAO,EACR,MAAM,wBAAwB,CAAC;AA2ChC,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAC;CACtB;AAED,qBAAa,sBAAsB;WASb,mBAAmB,CACrC,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,MAAM,EACd,eAAe,EAAE,MAAM,GACtB,OAAO,CAAC,MAAM,CAAC,4BAA4B,EAAE,OAAO,CAAC,CAAC;WAkBrC,wBAAwB,CAC1C,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,MAAM,EACd,eAAe,EAAE,MAAM,GACtB,OAAO,CAAC,MAAM,CAAC,4BAA4B,EAAE,OAAO,CAAC,CAAC;mBAUpC,aAAa;CAyKnC"}
@@ -13,19 +13,15 @@ const generator_1 = require("../generator");
13
13
  const path_1 = tslib_1.__importDefault(require("path"));
14
14
  const actionExecutionMW_1 = require("../../middleware/actionExecutionMW");
15
15
  const telemetryEvents_1 = require("../spfx/utils/telemetryEvents");
16
- const specParser_1 = require("../../../common/spec-parser/specParser");
17
16
  const questionNames_1 = require("../../../question/questionNames");
18
17
  const helper_1 = require("./helper");
19
- const interfaces_1 = require("../../../common/spec-parser/interfaces");
20
18
  const localizeUtils_1 = require("../../../common/localizeUtils");
21
19
  const ManifestUtils_1 = require("../../driver/teamsApp/utils/ManifestUtils");
22
20
  const create_1 = require("../../../question/create");
23
21
  const fs = tslib_1.__importStar(require("fs-extra"));
24
22
  const error_1 = require("../../../error");
25
- const utils_1 = require("../../../common/spec-parser/utils");
26
- const constants_1 = require("../../../common/spec-parser/constants");
23
+ const spec_parser_1 = require("../../../common/spec-parser");
27
24
  const util = tslib_1.__importStar(require("util"));
28
- const specParserError_1 = require("../../../common/spec-parser/specParserError");
29
25
  const util_1 = require("../../../question/util");
30
26
  const fromApiSpeccomponentName = "copilot-plugin-existing-api";
31
27
  const fromApiSpecTemplateName = "copilot-plugin-existing-api";
@@ -56,30 +52,31 @@ class CopilotPluginGenerator {
56
52
  const templateRes = await generator_1.Generator.generateTemplate(context, destinationPath, templateName, language === create_1.ProgrammingLanguage.CSharp ? create_1.ProgrammingLanguage.CSharp : undefined);
57
53
  if (templateRes.isErr())
58
54
  return teamsfx_api_1.err(templateRes.error);
59
- const url = (_a = inputs[questionNames_1.QuestionNames.ApiSpecLocation]) !== null && _a !== void 0 ? _a : (_b = inputs.openAIPluginManifest) === null || _b === void 0 ? void 0 : _b.api.url;
55
+ let url = (_a = inputs[questionNames_1.QuestionNames.ApiSpecLocation]) !== null && _a !== void 0 ? _a : (_b = inputs.openAIPluginManifest) === null || _b === void 0 ? void 0 : _b.api.url;
56
+ url = url.trim();
60
57
  context.telemetryReporter.sendTelemetryEvent(copilotPluginExistingApiSpecUrlTelemetryEvent, {
61
58
  [isRemoteUrlTelemetryProperty]: util_1.isValidHttpUrl(url).toString(),
62
59
  });
63
60
  // validate API spec
64
- const specParser = new specParser_1.SpecParser(url);
61
+ const specParser = new spec_parser_1.SpecParser(url);
65
62
  const validationRes = await specParser.validate();
66
63
  const warnings = validationRes.warnings;
67
- const operationIdWarning = warnings.find((w) => w.type === interfaces_1.WarningType.OperationIdMissing);
64
+ const operationIdWarning = warnings.find((w) => w.type === spec_parser_1.WarningType.OperationIdMissing);
68
65
  if (operationIdWarning && operationIdWarning.data) {
69
66
  const apisMissingOperationId = operationIdWarning.data.filter((api) => filters.includes(api));
70
67
  if (apisMissingOperationId.length > 0) {
71
- operationIdWarning.content = util.format(constants_1.ConstantString.MissingOperationId, apisMissingOperationId.join(", "));
68
+ operationIdWarning.content = util.format(localizeUtils_1.getLocalizedString("core.common.MissingOperationId"), apisMissingOperationId.join(", "));
72
69
  delete operationIdWarning.data;
73
70
  }
74
71
  else {
75
72
  warnings.splice(warnings.indexOf(operationIdWarning), 1);
76
73
  }
77
74
  }
78
- const specVersionWarning = warnings.find((w) => w.type === interfaces_1.WarningType.ConvertSwaggerToOpenAPI);
75
+ const specVersionWarning = warnings.find((w) => w.type === spec_parser_1.WarningType.ConvertSwaggerToOpenAPI);
79
76
  if (specVersionWarning) {
80
77
  specVersionWarning.content = ""; // We don't care content of this warning
81
78
  }
82
- if (validationRes.status === interfaces_1.ValidationStatus.Error) {
79
+ if (validationRes.status === spec_parser_1.ValidationStatus.Error) {
83
80
  helper_1.logValidationResults(validationRes.errors, warnings, context, true, false, true);
84
81
  const errorMessage = inputs.platform === teamsfx_api_1.Platform.VSCode
85
82
  ? localizeUtils_1.getLocalizedString("core.createProjectQuestion.apiSpec.multipleValidationErrors.vscode.message")
@@ -92,7 +89,7 @@ class CopilotPluginGenerator {
92
89
  await fs.ensureDir(apiSpecFolderPath);
93
90
  let isYaml;
94
91
  try {
95
- isYaml = await utils_1.isYamlSpecFile(url);
92
+ isYaml = await helper_1.isYamlSpecFile(url);
96
93
  }
97
94
  catch (e) {
98
95
  isYaml = false;
@@ -108,7 +105,7 @@ class CopilotPluginGenerator {
108
105
  });
109
106
  if (generateResult.warnings.length > 0) {
110
107
  generateResult.warnings.find((o) => {
111
- if (o.type === interfaces_1.WarningType.OperationOnlyContainsOptionalParam) {
108
+ if (o.type === spec_parser_1.WarningType.OperationOnlyContainsOptionalParam) {
112
109
  o.content = ""; // We don't care content of this warning
113
110
  }
114
111
  });
@@ -149,7 +146,7 @@ class CopilotPluginGenerator {
149
146
  }
150
147
  catch (e) {
151
148
  let error;
152
- if (e instanceof specParserError_1.SpecParserError) {
149
+ if (e instanceof spec_parser_1.SpecParserError) {
153
150
  error = helper_1.convertSpecParserErrorToFxError(e);
154
151
  }
155
152
  else {
@@ -1 +1 @@
1
- {"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../src/component/generator/copilotPlugin/generator.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;;AAElC;;GAEG;AAEH,+CAA8C;AAC9C,wDAagC;AAChC,4CAAyC;AACzC,wDAAwB;AACxB,0EAAuE;AACvE,mEAAgE;AAChE,uEAAoE;AACpE,mEAAgE;AAChE,qCAQkB;AAClB,uEAAuF;AACvF,iEAAmE;AACnE,6EAA0E;AAC1E,qDAA+D;AAC/D,qDAA+B;AAC/B,0CAA+C;AAC/C,6DAAmE;AACnE,qEAAuE;AACvE,mDAA6B;AAC7B,iFAA8E;AAC9E,iDAAwD;AAExD,MAAM,wBAAwB,GAAG,6BAA6B,CAAC;AAC/D,MAAM,uBAAuB,GAAG,6BAA6B,CAAC;AAC9D,MAAM,6BAA6B,GAAG,gCAAgC,CAAC;AACvE,MAAM,4BAA4B,GAAG,gCAAgC,CAAC;AACtE,MAAM,iBAAiB,GAAG,uBAAuB,CAAC;AAClD,MAAM,mBAAmB,GAAG,cAAc,CAAC;AAC3C,MAAM,mBAAmB,GAAG,cAAc,CAAC;AAE3C,MAAM,uBAAuB,GAAG,kBAAkB,CAAC;AACnD,MAAM,6CAA6C,GAAG,sCAAsC,CAAC;AAC7F,MAAM,4BAA4B,GAAG,YAAY,CAAC;AAMlD,MAAa,sBAAsB;IAS1B,MAAM,CAAC,KAAK,CAAC,mBAAmB,CACrC,OAAgB,EAChB,MAAc,EACd,eAAuB;QAEvB,OAAO,MAAM,IAAI,CAAC,aAAa,CAC7B,OAAO,EACP,MAAM,EACN,eAAe,EACf,uBAAuB,EACvB,wBAAwB,CACzB,CAAC;IACJ,CAAC;IAUM,MAAM,CAAC,KAAK,CAAC,wBAAwB,CAC1C,OAAgB,EAChB,MAAc,EACd,eAAuB;QAEvB,OAAO,MAAM,IAAI,CAAC,aAAa,CAC7B,OAAO,EACP,MAAM,EACN,eAAe,EACf,4BAA4B,EAC5B,6BAA6B,CAC9B,CAAC;IACJ,CAAC;IAEO,MAAM,CAAC,KAAK,CAAC,aAAa,CAChC,OAAgB,EAChB,MAAc,EACd,eAAuB,EACvB,YAAoB,EACpB,aAAqB;;QAErB,IAAI;YACF,MAAM,OAAO,GAAG,MAAM,CAAC,6BAAa,CAAC,OAAO,CAAC,CAAC;YAC9C,MAAM,QAAQ,GAAG,MAAM,CAAC,6BAAa,CAAC,mBAAmB,CAAC,CAAC;YAC3D,MAAM,qBAAqB,GACzB,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,6BAAa,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAC5E,OAAO,CAAC,iBAAiB,GAAG,qBAAS,CAAC,mBAAmB,CAAC,OAAO,EAAE,qBAAqB,CAAC,CAAC;YAC1F,MAAM,OAAO,GAAG,MAAM,CAAC,6BAAa,CAAC,YAAY,CAAa,CAAC;YAC/D,oBAAoB;YACpB,MAAM,WAAW,GAAG,MAAM,qBAAS,CAAC,gBAAgB,CAClD,OAAO,EACP,eAAe,EACf,YAAY,EACZ,QAAQ,KAAK,4BAAmB,CAAC,MAAM,CAAC,CAAC,CAAC,4BAAmB,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CACjF,CAAC;YACF,IAAI,WAAW,CAAC,KAAK,EAAE;gBAAE,OAAO,iBAAG,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;YAEvD,MAAM,GAAG,GAAG,MAAA,MAAM,CAAC,6BAAa,CAAC,eAAe,CAAC,mCAAI,MAAA,MAAM,CAAC,oBAAoB,0CAAE,GAAG,CAAC,GAAG,CAAC;YAC1F,OAAO,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,6CAA6C,EAAE;gBAC1F,CAAC,4BAA4B,CAAC,EAAE,qBAAc,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;aAC/D,CAAC,CAAC;YAEH,oBAAoB;YACpB,MAAM,UAAU,GAAG,IAAI,uBAAU,CAAC,GAAG,CAAC,CAAC;YACvC,MAAM,aAAa,GAAG,MAAM,UAAU,CAAC,QAAQ,EAAE,CAAC;YAClD,MAAM,QAAQ,GAAG,aAAa,CAAC,QAAQ,CAAC;YACxC,MAAM,kBAAkB,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,wBAAW,CAAC,kBAAkB,CAAC,CAAC;YAC3F,IAAI,kBAAkB,IAAI,kBAAkB,CAAC,IAAI,EAAE;gBACjD,MAAM,sBAAsB,GAAI,kBAAkB,CAAC,IAAiB,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAClF,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CACtB,CAAC;gBACF,IAAI,sBAAsB,CAAC,MAAM,GAAG,CAAC,EAAE;oBACrC,kBAAkB,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,CACtC,0BAAc,CAAC,kBAAkB,EACjC,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,CAClC,CAAC;oBACF,OAAO,kBAAkB,CAAC,IAAI,CAAC;iBAChC;qBAAM;oBACL,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC,CAAC;iBAC1D;aACF;YAED,MAAM,kBAAkB,GAAG,QAAQ,CAAC,IAAI,CACtC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,wBAAW,CAAC,uBAAuB,CACtD,CAAC;YACF,IAAI,kBAAkB,EAAE;gBACtB,kBAAkB,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC,wCAAwC;aAC1E;YAED,IAAI,aAAa,CAAC,MAAM,KAAK,6BAAgB,CAAC,KAAK,EAAE;gBACnD,6BAAoB,CAAC,aAAa,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;gBACjF,MAAM,YAAY,GAChB,MAAM,CAAC,QAAQ,KAAK,sBAAQ,CAAC,MAAM;oBACjC,CAAC,CAAC,kCAAkB,CAChB,4EAA4E,CAC7E;oBACH,CAAC,CAAC,kCAAkB,CAChB,qEAAqE,CACtE,CAAC;gBACR,OAAO,iBAAG,CACR,IAAI,uBAAS,CAAC,aAAa,EAAE,uBAAuB,EAAE,YAAY,EAAE,YAAY,CAAC,CAClF,CAAC;aACH;YAED,iBAAiB;YACjB,MAAM,YAAY,GAAG,cAAI,CAAC,IAAI,CAC5B,eAAe,EACf,kCAAoB,EACpB,sCAAwB,CACzB,CAAC;YAEF,MAAM,iBAAiB,GAAG,cAAI,CAAC,IAAI,CAAC,eAAe,EAAE,kCAAoB,EAAE,iBAAiB,CAAC,CAAC;YAC9F,MAAM,EAAE,CAAC,SAAS,CAAC,iBAAiB,CAAC,CAAC;YAEtC,IAAI,MAAe,CAAC;YACpB,IAAI;gBACF,MAAM,GAAG,MAAM,sBAAc,CAAC,GAAG,CAAC,CAAC;aACpC;YAAC,OAAO,CAAC,EAAE;gBACV,MAAM,GAAG,KAAK,CAAC;aAChB;YACD,MAAM,eAAe,GAAG,cAAI,CAAC,IAAI,CAC/B,iBAAiB,EACjB,MAAM,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,mBAAmB,CACnD,CAAC;YAEF,MAAM,kBAAkB,GAAG,cAAI,CAAC,IAAI,CAClC,eAAe,EACf,kCAAoB,EACpB,yCAA2B,CAC5B,CAAC;YACF,MAAM,cAAc,GAAG,MAAM,UAAU,CAAC,QAAQ,CAC9C,YAAY,EACZ,OAAO,EACP,eAAe,EACf,kBAAkB,CACnB,CAAC;YAEF,OAAO,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,+CAAsC,EAAE;gBACnF,CAAC,4DAAmD,CAAC,EAAE,cAAc,CAAC,UAAU,CAAC,QAAQ,EAAE;gBAC3F,CAAC,0DAAiD,CAAC,EAAE,cAAc,CAAC,QAAQ;qBACzE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,IAAI,GAAG,CAAC,CAAC,OAAO,CAAC;qBAChD,IAAI,CAAC,GAAG,CAAC;aACb,CAAC,CAAC;YAEH,IAAI,cAAc,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;gBACtC,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;oBACjC,IAAI,CAAC,CAAC,IAAI,KAAK,wBAAW,CAAC,kCAAkC,EAAE;wBAC7D,CAAC,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC,wCAAwC;qBACzD;gBACH,CAAC,CAAC,CAAC;gBACH,QAAQ,CAAC,IAAI,CAAC,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAC;aAC3C;YAED,kDAAkD;YAClD,MAAM,WAAW,GAAG,MAAM,6BAAa,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC;YAEvE,IAAI,WAAW,CAAC,KAAK,EAAE,EAAE;gBACvB,OAAO,iBAAG,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;aAC/B;YAED,MAAM,aAAa,GAAG,WAAW,CAAC,KAAK,CAAC;YACxC,IAAI,MAAM,CAAC,oBAAoB,EAAE;gBAC/B,MAAM,iBAAiB,GAAG,MAAM,mCAA0B,CAAC,cAAc,CACvE,MAAM,CAAC,oBAAoB,EAC3B,aAAa,EACb,YAAY,CACb,CAAC;gBACF,IAAI,iBAAiB,CAAC,KAAK,EAAE;oBAAE,OAAO,iBAAG,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;aACpE;YAED,eAAe;YACf,IAAI,MAAM,CAAC,QAAQ,KAAK,sBAAQ,CAAC,GAAG,IAAI,MAAM,CAAC,QAAQ,KAAK,sBAAQ,CAAC,EAAE,EAAE;gBACvE,MAAM,WAAW,GAAG,mCAA0B,CAAC,QAAQ,EAAE,aAAa,EAAE,eAAe,CAAC,CAAC;gBAEzF,IAAI,WAAW,EAAE;oBACf,KAAK,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;iBAC5C;aACF;YAED,IAAI,MAAM,CAAC,QAAQ,KAAK,sBAAQ,CAAC,MAAM,EAAE;gBACvC,OAAO,gBAAE,CAAC;oBACR,QAAQ,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;wBACjC,OAAO;4BACL,IAAI,EAAE,OAAO,CAAC,IAAI;4BAClB,OAAO,EAAE,OAAO,CAAC,OAAO;4BACxB,IAAI,EAAE,OAAO,CAAC,IAAI;yBACnB,CAAC;oBACJ,CAAC,CAAC;iBACH,CAAC,CAAC;aACJ;iBAAM;gBACL,OAAO,gBAAE,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,CAAC;aACpC;SACF;QAAC,OAAO,CAAC,EAAE;YACV,IAAI,KAAc,CAAC;YACnB,IAAI,CAAC,YAAY,iCAAe,EAAE;gBAChC,KAAK,GAAG,wCAA+B,CAAC,CAAC,CAAC,CAAC;aAC5C;iBAAM;gBACL,KAAK,GAAG,qBAAa,CAAC,CAAC,CAAC,CAAC;aAC1B;YACD,OAAO,iBAAG,CAAC,KAAK,CAAC,CAAC;SACnB;IACH,CAAC;CACF;AA5MC;IARC,WAAK,CAAC;QACL,qCAAiB,CAAC;YAChB,eAAe,EAAE,IAAI;YACrB,sBAAsB,EAAE,wBAAwB;YAChD,kBAAkB,EAAE,iCAAe,CAAC,QAAQ;YAC5C,WAAW,EAAE,wBAAwB;SACtC,CAAC;KACH,CAAC;;;;uDAaD;AAUD;IARC,WAAK,CAAC;QACL,qCAAiB,CAAC;YAChB,eAAe,EAAE,IAAI;YACrB,sBAAsB,EAAE,6BAA6B;YACrD,kBAAkB,EAAE,iCAAe,CAAC,QAAQ;YAC5C,WAAW,EAAE,6BAA6B;SAC3C,CAAC;KACH,CAAC;;;;4DAaD;AA3CH,wDAqNC"}
1
+ {"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../src/component/generator/copilotPlugin/generator.ts"],"names":[],"mappings":"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"}
@@ -2,8 +2,8 @@
2
2
  * @author yuqzho@microsoft.com
3
3
  */
4
4
  import { Context, FxError, OpenAIPluginManifest, Result, TeamsAppManifest, ApiOperation, Warning } from "@microsoft/teamsfx-api";
5
- import { ErrorType as ApiSpecErrorType, WarningResult } from "../../../common/spec-parser/interfaces";
6
- import { SpecParserError } from "../../../common/spec-parser/specParserError";
5
+ import { ErrorType as ApiSpecErrorType, WarningResult, SpecParserError } from "../../../common/spec-parser";
6
+ import { ErrorResult as ApiSpecErrorResult } from "../../../common/spec-parser/interfaces";
7
7
  declare enum OpenAIPluginManifestErrorType {
8
8
  AuthNotSupported = "openai-pliugin-auth-not-supported",
9
9
  ApiUrlMissing = "openai-plugin-api-url-missing"
@@ -20,6 +20,7 @@ export interface ErrorResult {
20
20
  * The content of the error.
21
21
  */
22
22
  content: string;
23
+ data?: any;
23
24
  }
24
25
  export declare class OpenAIPluginManifestHelper {
25
26
  static loadOpenAIPluginManifest(input: string): Promise<OpenAIPluginManifest>;
@@ -29,5 +30,7 @@ export declare function listOperations(context: Context, manifest: OpenAIPluginM
29
30
  export declare function logValidationResults(errors: ErrorResult[], warnings: WarningResult[], context: Context, isApiSpec: boolean, shouldLogWarning: boolean, shouldSkipTelemetry: boolean, existingCorrelationId?: string): void;
30
31
  export declare function generateScaffoldingSummary(warnings: Warning[], teamsManifest: TeamsAppManifest, projectPath: string): string;
31
32
  export declare function convertSpecParserErrorToFxError(error: SpecParserError): FxError;
33
+ export declare function isYamlSpecFile(specPath: string): Promise<boolean>;
34
+ export declare function formatValidationErrors(errors: ApiSpecErrorResult[]): ApiSpecErrorResult[];
32
35
  export {};
33
36
  //# sourceMappingURL=helper.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"helper.d.ts","sourceRoot":"","sources":["../../../../src/component/generator/copilotPlugin/helper.ts"],"names":[],"mappings":"AAGA;;GAEG;AAEH,OAAO,EACL,OAAO,EACP,OAAO,EAEP,oBAAoB,EACpB,MAAM,EAIN,gBAAgB,EAChB,YAAY,EAEZ,OAAO,EAMR,MAAM,wBAAwB,CAAC;AAGhC,OAAO,EACL,SAAS,IAAI,gBAAgB,EAE7B,aAAa,EAEd,MAAM,wCAAwC,CAAC;AAShD,OAAO,EAAE,eAAe,EAAE,MAAM,6CAA6C,CAAC;AAgB9E,aAAK,6BAA6B;IAChC,gBAAgB,sCAAsC;IACtD,aAAa,kCAAkC;CAChD;AAED,eAAO,MAAM,sCAAsC,gCAAgC,CAAC;AACpF,eAAO,MAAM,mDAAmD,gBAAgB,CAAC;AACjF,eAAO,MAAM,iDAAiD,aAAa,CAAC;AAE5E,MAAM,WAAW,WAAW;IAC1B;;OAEG;IACH,IAAI,EAAE,gBAAgB,GAAG,6BAA6B,CAAC;IAEvD;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,qBAAa,0BAA0B;WACxB,wBAAwB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC;WA0BtE,cAAc,CACzB,oBAAoB,EAAE,oBAAoB,EAC1C,gBAAgB,EAAE,gBAAgB,EAClC,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;CAUvC;AAED,wBAAsB,cAAc,CAClC,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,oBAAoB,GAAG,SAAS,EAC1C,UAAU,EAAE,MAAM,GAAG,SAAS,EAC9B,iBAAiB,EAAE,MAAM,GAAG,SAAS,EACrC,mBAAmB,UAAO,EAC1B,gBAAgB,UAAO,EACvB,qBAAqB,CAAC,EAAE,MAAM,GAC7B,OAAO,CAAC,MAAM,CAAC,YAAY,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC,CA2EhD;AAoBD,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,WAAW,EAAE,EACrB,QAAQ,EAAE,aAAa,EAAE,EACzB,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,OAAO,EAClB,gBAAgB,EAAE,OAAO,EACzB,mBAAmB,EAAE,OAAO,EAC5B,qBAAqB,CAAC,EAAE,MAAM,GAC7B,IAAI,CAuEN;AA0BD,wBAAgB,0BAA0B,CACxC,QAAQ,EAAE,OAAO,EAAE,EACnB,aAAa,EAAE,gBAAgB,EAC/B,WAAW,EAAE,MAAM,GAClB,MAAM,CA6BR;AAkKD,wBAAgB,+BAA+B,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO,CAE/E"}
1
+ {"version":3,"file":"helper.d.ts","sourceRoot":"","sources":["../../../../src/component/generator/copilotPlugin/helper.ts"],"names":[],"mappings":"AAGA;;GAEG;AAEH,OAAO,EACL,OAAO,EACP,OAAO,EAEP,oBAAoB,EACpB,MAAM,EAIN,gBAAgB,EAChB,YAAY,EAEZ,OAAO,EAMR,MAAM,wBAAwB,CAAC;AAGhC,OAAO,EAEL,SAAS,IAAI,gBAAgB,EAE7B,aAAa,EAEb,eAAe,EAChB,MAAM,6BAA6B,CAAC;AAQrC,OAAO,EAEL,WAAW,IAAI,kBAAkB,EAClC,MAAM,wCAAwC,CAAC;AAgBhD,aAAK,6BAA6B;IAChC,gBAAgB,sCAAsC;IACtD,aAAa,kCAAkC;CAChD;AAED,eAAO,MAAM,sCAAsC,gCAAgC,CAAC;AACpF,eAAO,MAAM,mDAAmD,gBAAgB,CAAC;AACjF,eAAO,MAAM,iDAAiD,aAAa,CAAC;AAE5E,MAAM,WAAW,WAAW;IAC1B;;OAEG;IACH,IAAI,EAAE,gBAAgB,GAAG,6BAA6B,CAAC;IAEvD;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB,IAAI,CAAC,EAAE,GAAG,CAAC;CACZ;AAED,qBAAa,0BAA0B;WACxB,wBAAwB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC;WA0BtE,cAAc,CACzB,oBAAoB,EAAE,oBAAoB,EAC1C,gBAAgB,EAAE,gBAAgB,EAClC,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;CAUvC;AAED,wBAAsB,cAAc,CAClC,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,oBAAoB,GAAG,SAAS,EAC1C,UAAU,EAAE,MAAM,GAAG,SAAS,EAC9B,iBAAiB,EAAE,MAAM,GAAG,SAAS,EACrC,mBAAmB,UAAO,EAC1B,gBAAgB,UAAO,EACvB,qBAAqB,CAAC,EAAE,MAAM,GAC7B,OAAO,CAAC,MAAM,CAAC,YAAY,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC,CA4EhD;AAoBD,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,WAAW,EAAE,EACrB,QAAQ,EAAE,aAAa,EAAE,EACzB,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,OAAO,EAClB,gBAAgB,EAAE,OAAO,EACzB,mBAAmB,EAAE,OAAO,EAC5B,qBAAqB,CAAC,EAAE,MAAM,GAC7B,IAAI,CAuEN;AA0BD,wBAAgB,0BAA0B,CACxC,QAAQ,EAAE,OAAO,EAAE,EACnB,aAAa,EAAE,gBAAgB,EAC/B,WAAW,EAAE,MAAM,GAClB,MAAM,CA6BR;AAkKD,wBAAgB,+BAA+B,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO,CAE/E;AAED,wBAAsB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAiBvE;AAED,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,kBAAkB,EAAE,GAAG,kBAAkB,EAAE,CAQzF"}
@@ -2,7 +2,7 @@
2
2
  // Copyright (c) Microsoft Corporation.
3
3
  // Licensed under the MIT license.
4
4
  Object.defineProperty(exports, "__esModule", { value: true });
5
- exports.convertSpecParserErrorToFxError = exports.generateScaffoldingSummary = exports.logValidationResults = exports.listOperations = exports.OpenAIPluginManifestHelper = exports.specParserGenerateResultWarningsTelemetryProperty = exports.specParserGenerateResultAllSuccessTelemetryProperty = exports.specParserGenerateResultTelemetryEvent = void 0;
5
+ exports.formatValidationErrors = exports.isYamlSpecFile = exports.convertSpecParserErrorToFxError = exports.generateScaffoldingSummary = exports.logValidationResults = exports.listOperations = exports.OpenAIPluginManifestHelper = exports.specParserGenerateResultWarningsTelemetryProperty = exports.specParserGenerateResultAllSuccessTelemetryProperty = exports.specParserGenerateResultTelemetryEvent = void 0;
6
6
  const tslib_1 = require("tslib");
7
7
  /**
8
8
  * @author yuqzho@microsoft.com
@@ -10,8 +10,7 @@ const tslib_1 = require("tslib");
10
10
  const teamsfx_api_1 = require("@microsoft/teamsfx-api");
11
11
  const axios_1 = tslib_1.__importDefault(require("axios"));
12
12
  const utils_1 = require("../utils");
13
- const interfaces_1 = require("../../../common/spec-parser/interfaces");
14
- const specParser_1 = require("../../../common/spec-parser/specParser");
13
+ const spec_parser_1 = require("../../../common/spec-parser");
15
14
  const fs_extra_1 = tslib_1.__importDefault(require("fs-extra"));
16
15
  const localizeUtils_1 = require("../../../common/localizeUtils");
17
16
  const error_1 = require("../../../error");
@@ -19,7 +18,7 @@ const os_1 = require("os");
19
18
  const constant_1 = require("../../configManager/constant");
20
19
  const ManifestUtils_1 = require("../../driver/teamsApp/utils/ManifestUtils");
21
20
  const path_1 = tslib_1.__importDefault(require("path"));
22
- const specParserError_1 = require("../../../common/spec-parser/specParserError");
21
+ const interfaces_1 = require("../../../common/spec-parser/interfaces");
23
22
  const manifestFilePath = "/.well-known/ai-plugin.json";
24
23
  const componentName = "OpenAIPluginManifestHelper";
25
24
  var OpenAIPluginManifestErrorType;
@@ -71,10 +70,11 @@ async function listOperations(context, manifest, apiSpecUrl, teamsManifestPath,
71
70
  apiSpecUrl = manifest.api.url;
72
71
  }
73
72
  try {
74
- const specParser = new specParser_1.SpecParser(apiSpecUrl);
73
+ const specParser = new spec_parser_1.SpecParser(apiSpecUrl);
75
74
  const validationRes = await specParser.validate();
75
+ validationRes.errors = formatValidationErrors(validationRes.errors);
76
76
  logValidationResults(validationRes.errors, validationRes.warnings, context, true, shouldLogWarning, false, existingCorrelationId);
77
- if (validationRes.status === interfaces_1.ValidationStatus.Error) {
77
+ if (validationRes.status === spec_parser_1.ValidationStatus.Error) {
78
78
  return teamsfx_api_1.err(validationRes.errors);
79
79
  }
80
80
  let operations = await specParser.list();
@@ -93,7 +93,7 @@ async function listOperations(context, manifest, apiSpecUrl, teamsManifestPath,
93
93
  if (operations.length == 0) {
94
94
  const errors = [
95
95
  {
96
- type: interfaces_1.ErrorType.NoExtraAPICanBeAdded,
96
+ type: spec_parser_1.ErrorType.NoExtraAPICanBeAdded,
97
97
  content: localizeUtils_1.getLocalizedString("error.copilotPlugin.noExtraAPICanBeAdded"),
98
98
  },
99
99
  ];
@@ -109,7 +109,7 @@ async function listOperations(context, manifest, apiSpecUrl, teamsManifestPath,
109
109
  return teamsfx_api_1.ok(sortedOperations);
110
110
  }
111
111
  catch (e) {
112
- if (e instanceof specParserError_1.SpecParserError) {
112
+ if (e instanceof spec_parser_1.SpecParserError) {
113
113
  throw convertSpecParserErrorToFxError(e);
114
114
  }
115
115
  else {
@@ -227,11 +227,11 @@ function generateScaffoldingSummary(warnings, teamsManifest, projectPath) {
227
227
  exports.generateScaffoldingSummary = generateScaffoldingSummary;
228
228
  function formatApiSpecValidationWarningMessage(specWarnings, apiSpecFileName) {
229
229
  const resultWarnings = [];
230
- const operationIdWarning = specWarnings.find((w) => w.type === interfaces_1.WarningType.OperationIdMissing);
230
+ const operationIdWarning = specWarnings.find((w) => w.type === spec_parser_1.WarningType.OperationIdMissing);
231
231
  if (operationIdWarning) {
232
232
  resultWarnings.push(localizeUtils_1.getLocalizedString("core.copilotPlugin.scaffold.summary.warning.operationId", `${constant_1.SummaryConstant.NotExecuted} ${operationIdWarning.content}`, teamsfx_api_1.ManifestTemplateFileName));
233
233
  }
234
- const swaggerWarning = specWarnings.find((w) => w.type === interfaces_1.WarningType.ConvertSwaggerToOpenAPI);
234
+ const swaggerWarning = specWarnings.find((w) => w.type === spec_parser_1.WarningType.ConvertSwaggerToOpenAPI);
235
235
  if (swaggerWarning) {
236
236
  resultWarnings.push(`${constant_1.SummaryConstant.NotExecuted} ` +
237
237
  localizeUtils_1.getLocalizedString("core.copilotPlugin.scaffold.summary.warning.swaggerVersion", apiSpecFileName));
@@ -269,8 +269,8 @@ function validateTeamsManifestLength(teamsManifest, projectPath, warnings) {
269
269
  resultWarnings.push(formatLengthExceedingErrorMessage("/description/full", descriptionFullLimit));
270
270
  }
271
271
  // validate command
272
- if (teamsfx_api_1.ManifestUtil.parseCommonProperties(teamsManifest).isCopilotPlugin) {
273
- const optionalParamsOnlyWarnings = warnings.filter((o) => o.type === interfaces_1.WarningType.OperationOnlyContainsOptionalParam);
272
+ if (teamsfx_api_1.ManifestUtil.parseCommonProperties(teamsManifest).isApiME) {
273
+ const optionalParamsOnlyWarnings = warnings.filter((o) => o.type === spec_parser_1.WarningType.OperationOnlyContainsOptionalParam);
274
274
  const commands = teamsManifest.composeExtensions[0].commands;
275
275
  if (optionalParamsOnlyWarnings) {
276
276
  for (const optionalParamsOnlyWarning of optionalParamsOnlyWarnings) {
@@ -285,7 +285,7 @@ function validateTeamsManifestLength(teamsManifest, projectPath, warnings) {
285
285
  for (const command of commands) {
286
286
  if (command.type === "query") {
287
287
  if (!command.apiResponseRenderingTemplateFile) {
288
- const errorDetail = (_e = warnings.find((w) => w.type === interfaces_1.WarningType.GenerateCardFailed && w.data === command.id)) === null || _e === void 0 ? void 0 : _e.content;
288
+ const errorDetail = (_e = warnings.find((w) => w.type === spec_parser_1.WarningType.GenerateCardFailed && w.data === command.id)) === null || _e === void 0 ? void 0 : _e.content;
289
289
  resultWarnings.push(localizeUtils_1.getLocalizedString("core.copilotPlugin.scaffold.summary.warning.teamsManifest.missingCardTemlate", "apiResponseRenderingTemplateFile", command.id) +
290
290
  localizeUtils_1.getLocalizedString("core.copilotPlugin.scaffold.summary.warning.teamsManifest.missingCardTemlate.mitigation", teamsfx_api_1.AppPackageFolderName, `composeExtensions/commands/${command.id}/apiResponseRenderingTemplateFile`, path_1.default.join(teamsfx_api_1.AppPackageFolderName, teamsfx_api_1.ManifestTemplateFileName)) +
291
291
  (errorDetail ? os_1.EOL + errorDetail : ""));
@@ -303,4 +303,74 @@ function convertSpecParserErrorToFxError(error) {
303
303
  return new teamsfx_api_1.SystemError("SpecParser", error.errorType.toString(), error.message, error.message);
304
304
  }
305
305
  exports.convertSpecParserErrorToFxError = convertSpecParserErrorToFxError;
306
+ async function isYamlSpecFile(specPath) {
307
+ if (specPath.endsWith(".yaml") || specPath.endsWith(".yml")) {
308
+ return true;
309
+ }
310
+ else if (specPath.endsWith(".json")) {
311
+ return false;
312
+ }
313
+ const isRemoteFile = specPath.startsWith("http:") || specPath.startsWith("https:");
314
+ const fileContent = isRemoteFile
315
+ ? (await axios_1.default.get(specPath)).data
316
+ : await fs_extra_1.default.readFile(specPath, "utf-8");
317
+ try {
318
+ JSON.parse(fileContent);
319
+ return false;
320
+ }
321
+ catch (error) {
322
+ return true;
323
+ }
324
+ }
325
+ exports.isYamlSpecFile = isYamlSpecFile;
326
+ function formatValidationErrors(errors) {
327
+ return errors.map((error) => {
328
+ return {
329
+ type: error.type,
330
+ content: formatValidationErrorContent(error),
331
+ data: error.data,
332
+ };
333
+ });
334
+ }
335
+ exports.formatValidationErrors = formatValidationErrors;
336
+ function formatValidationErrorContent(error) {
337
+ try {
338
+ switch (error.type) {
339
+ case interfaces_1.ErrorType.SpecNotValid: {
340
+ let content = error.content;
341
+ if (error.content.startsWith("ResolverError: Error downloading")) {
342
+ content = error.content
343
+ .split("\n")
344
+ .map((o) => o.trim())
345
+ .join(". ");
346
+ content = content + ". " + localizeUtils_1.getLocalizedString("core.common.ErrorFetchApiSpec");
347
+ }
348
+ return content;
349
+ }
350
+ case interfaces_1.ErrorType.RemoteRefNotSupported:
351
+ return localizeUtils_1.getLocalizedString("core.common.RemoteRefNotSupported", error.data.join(", "));
352
+ case interfaces_1.ErrorType.NoServerInformation:
353
+ return localizeUtils_1.getLocalizedString("core.common.NoServerInformation");
354
+ case interfaces_1.ErrorType.UrlProtocolNotSupported:
355
+ return localizeUtils_1.getLocalizedString("core.common.UrlProtocolNotSupported", error.data);
356
+ case interfaces_1.ErrorType.RelativeServerUrlNotSupported:
357
+ return localizeUtils_1.getLocalizedString("core.common.RelativeServerUrlNotSupported");
358
+ case interfaces_1.ErrorType.NoSupportedApi:
359
+ return localizeUtils_1.getLocalizedString("core.common.NoSupportedApi");
360
+ case interfaces_1.ErrorType.NoExtraAPICanBeAdded:
361
+ return localizeUtils_1.getLocalizedString("error.copilotPlugin.noExtraAPICanBeAdded");
362
+ case interfaces_1.ErrorType.ResolveServerUrlFailed:
363
+ return error.content;
364
+ case interfaces_1.ErrorType.Cancelled:
365
+ return localizeUtils_1.getLocalizedString("core.common.CancelledMessage");
366
+ case interfaces_1.ErrorType.SwaggerNotSupported:
367
+ return localizeUtils_1.getLocalizedString("core.common.SwaggerNotSupported");
368
+ default:
369
+ return error.content;
370
+ }
371
+ }
372
+ catch (e) {
373
+ return error.content;
374
+ }
375
+ }
306
376
  //# sourceMappingURL=helper.js.map