@microsoft/teamsfx-core 3.0.5-alpha.4dbe374ea.0 → 3.0.5-alpha.74d05e096.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.
- package/build/client/graphClient.d.ts +8 -4
- package/build/client/graphClient.d.ts.map +1 -1
- package/build/client/graphClient.js +35 -8
- package/build/client/graphClient.js.map +1 -1
- package/build/client/interfaces/GetGroupResponse.d.ts +6 -0
- package/build/client/interfaces/GetGroupResponse.d.ts.map +1 -0
- package/build/client/interfaces/GetGroupResponse.js +5 -0
- package/build/client/interfaces/GetGroupResponse.js.map +1 -0
- package/build/client/interfaces/GetUserResponse.d.ts +7 -0
- package/build/client/interfaces/GetUserResponse.d.ts.map +1 -0
- package/build/client/interfaces/GetUserResponse.js +5 -0
- package/build/client/interfaces/GetUserResponse.js.map +1 -0
- package/build/common/constants.d.ts +1 -0
- package/build/common/constants.d.ts.map +1 -1
- package/build/common/constants.js +2 -1
- package/build/common/constants.js.map +1 -1
- package/build/common/featureFlags.js +4 -4
- package/build/common/featureFlags.js.map +1 -1
- package/build/common/permissionInterface.d.ts +6 -0
- package/build/common/permissionInterface.d.ts.map +1 -1
- package/build/common/templates-config.json +1 -1
- package/build/component/configManager/validator.d.ts.map +1 -1
- package/build/component/configManager/validator.js +1 -0
- package/build/component/configManager/validator.js.map +1 -1
- package/build/component/coordinator/index.d.ts.map +1 -1
- package/build/component/coordinator/index.js +0 -1
- package/build/component/coordinator/index.js.map +1 -1
- package/build/component/deps-checker/constant/helpLink.d.ts +2 -0
- package/build/component/deps-checker/constant/helpLink.d.ts.map +1 -1
- package/build/component/deps-checker/constant/helpLink.js +3 -1
- package/build/component/deps-checker/constant/helpLink.js.map +1 -1
- package/build/component/deps-checker/internal/funcToolChecker.js +4 -4
- package/build/component/deps-checker/internal/funcToolChecker.js.map +1 -1
- package/build/component/deps-checker/internal/testToolChecker.js +4 -4
- package/build/component/deps-checker/internal/testToolChecker.js.map +1 -1
- package/build/component/driver/index.d.ts +19 -20
- package/build/component/driver/index.d.ts.map +1 -1
- package/build/component/driver/index.js +19 -20
- package/build/component/driver/index.js.map +1 -1
- package/build/component/driver/m365/acquire.d.ts +3 -0
- package/build/component/driver/m365/acquire.d.ts.map +1 -1
- package/build/component/driver/m365/acquire.js +29 -19
- package/build/component/driver/m365/acquire.js.map +1 -1
- package/build/component/driver/share/utils.d.ts.map +1 -1
- package/build/component/driver/share/utils.js +12 -10
- package/build/component/driver/share/utils.js.map +1 -1
- package/build/component/driver/teamsApp/utils/PluginManifestUtils.d.ts +1 -1
- package/build/component/driver/teamsApp/utils/PluginManifestUtils.d.ts.map +1 -1
- package/build/component/driver/teamsApp/utils/PluginManifestUtils.js +5 -2
- package/build/component/driver/teamsApp/utils/PluginManifestUtils.js.map +1 -1
- package/build/component/driver/util/utils.d.ts.map +1 -1
- package/build/component/driver/util/utils.js +6 -4
- package/build/component/driver/util/utils.js.map +1 -1
- package/build/component/feature/collaboration.d.ts +7 -1
- package/build/component/feature/collaboration.d.ts.map +1 -1
- package/build/component/feature/collaboration.js +84 -1
- package/build/component/feature/collaboration.js.map +1 -1
- package/build/component/generator/openApiSpec/helper.d.ts.map +1 -1
- package/build/component/generator/openApiSpec/helper.js +132 -98
- package/build/component/generator/openApiSpec/helper.js.map +1 -1
- package/build/component/m365/constants.d.ts +1 -0
- package/build/component/m365/constants.d.ts.map +1 -1
- package/build/component/m365/constants.js +2 -1
- package/build/component/m365/constants.js.map +1 -1
- package/build/component/m365/packageService.d.ts +6 -1
- package/build/component/m365/packageService.d.ts.map +1 -1
- package/build/component/m365/packageService.js +45 -8
- package/build/component/m365/packageService.js.map +1 -1
- package/build/core/FxCore.d.ts.map +1 -1
- package/build/core/FxCore.js +1 -29
- package/build/core/FxCore.js.map +1 -1
- package/build/core/collaborator.d.ts +1 -0
- package/build/core/collaborator.d.ts.map +1 -1
- package/build/core/collaborator.js +55 -29
- package/build/core/collaborator.js.map +1 -1
- package/build/core/share.d.ts.map +1 -1
- package/build/core/share.js +16 -2
- package/build/core/share.js.map +1 -1
- package/build/error/depCheck.js +1 -1
- package/build/error/depCheck.js.map +1 -1
- package/build/question/collaborator.d.ts +6 -0
- package/build/question/collaborator.d.ts.map +1 -0
- package/build/question/collaborator.js +166 -0
- package/build/question/collaborator.js.map +1 -0
- package/build/question/index.d.ts.map +1 -1
- package/build/question/index.js +3 -2
- package/build/question/index.js.map +1 -1
- package/build/question/inputs/ShareInputs.d.ts +2 -2
- package/build/question/inputs/ShareInputs.d.ts.map +1 -1
- package/build/question/options/ShareOptions.js +1 -1
- package/build/question/options/ShareOptions.js.map +1 -1
- package/build/question/other.d.ts +1 -4
- package/build/question/other.d.ts.map +1 -1
- package/build/question/other.js +2 -145
- package/build/question/other.js.map +1 -1
- package/build/question/share.d.ts +1 -3
- package/build/question/share.d.ts.map +1 -1
- package/build/question/share.js +2 -14
- package/build/question/share.js.map +1 -1
- package/build/tsconfig.tsbuildinfo +1 -1
- package/package.json +4 -4
- package/resource/package.nls.json +9 -8
- package/resource/yaml-schema/v1.10/yaml.schema.json +2058 -0
- package/resource/yaml-schema/yaml.schema.json +5 -54
- package/templates/fallback/common.zip +0 -0
- package/templates/fallback/csharp.zip +0 -0
- package/templates/fallback/js.zip +0 -0
- package/templates/fallback/python.zip +0 -0
- package/templates/fallback/ts.zip +0 -0
- package/build/component/driver/share/shareToOthers.d.ts +0 -17
- package/build/component/driver/share/shareToOthers.d.ts.map +0 -1
- package/build/component/driver/share/shareToOthers.js +0 -127
- package/build/component/driver/share/shareToOthers.js.map +0 -1
|
@@ -15,7 +15,7 @@ export declare class PluginManifestUtils {
|
|
|
15
15
|
content: string;
|
|
16
16
|
color: Colors;
|
|
17
17
|
}>;
|
|
18
|
-
getDefaultNextAvailableApiSpecPath(apiSpecPath: string, apiSpecFolder: string,
|
|
18
|
+
getDefaultNextAvailableApiSpecPath(apiSpecPath: string, apiSpecFolder: string, isKiotaIntegration?: boolean): Promise<string>;
|
|
19
19
|
getApiSpecFileName(openApiSpecFileNamePrefix: string, openApiSpecFileType: string, apiSpecFileNameSuffix: number, isKiotaIntegration: boolean): string;
|
|
20
20
|
getApiSpecFilePathFromPlugin(plugin: PluginManifestSchema, pluginPath: string): Promise<string[]>;
|
|
21
21
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PluginManifestUtils.d.ts","sourceRoot":"","sources":["../../../../../src/component/driver/teamsApp/utils/PluginManifestUtils.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,MAAM,EAGN,OAAO,EACP,OAAO,EAEP,QAAQ,EACR,oBAAoB,EACpB,MAAM,EACN,gBAAgB,EAGjB,MAAM,wBAAwB,CAAC;AAUhC,OAAO,EAAE,8BAA8B,EAAE,MAAM,gCAAgC,CAAC;AAIhF,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"PluginManifestUtils.d.ts","sourceRoot":"","sources":["../../../../../src/component/driver/teamsApp/utils/PluginManifestUtils.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,MAAM,EAGN,OAAO,EACP,OAAO,EAEP,QAAQ,EACR,oBAAoB,EACpB,MAAM,EACN,gBAAgB,EAGjB,MAAM,wBAAwB,CAAC;AAUhC,OAAO,EAAE,8BAA8B,EAAE,MAAM,gCAAgC,CAAC;AAIhF,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAI3D,qBAAa,mBAAmB;IACjB,sBAAsB,CACjC,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,MAAM,CAAC,oBAAoB,EAAE,OAAO,CAAC,CAAC;IAiBjD;;;;OAIG;IACU,WAAW,CACtB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,aAAa,GACrB,OAAO,CAAC,MAAM,CAAC,oBAAoB,EAAE,OAAO,CAAC,CAAC;IAoBpC,qBAAqB,CAChC,MAAM,EAAE,OAAO,EACf,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,aAAa,GACrB,OAAO,CAAC,MAAM,CAAC,8BAA8B,EAAE,OAAO,CAAC,CAAC;IA6B9C,mCAAmC,CAC9C,QAAQ,EAAE,gBAAgB,EAC1B,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,OAAO,CAAC,CAAC;IAiB9B,mBAAmB,CACxB,aAAa,EAAE,8BAA8B,EAC7C,QAAQ,EAAE,QAAQ,GACjB,MAAM,GAAG,KAAK,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAsCxC,kCAAkC,CAC7C,WAAW,EAAE,MAAM,EACnB,aAAa,EAAE,MAAM,EACrB,kBAAkB,UAAQ;IAwC5B,kBAAkB,CAChB,yBAAyB,EAAE,MAAM,EACjC,mBAAmB,EAAE,MAAM,EAC3B,qBAAqB,EAAE,MAAM,EAC7B,kBAAkB,EAAE,OAAO,GAC1B,MAAM;IAWH,4BAA4B,CAChC,MAAM,EAAE,oBAAoB,EAC5B,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,MAAM,EAAE,CAAC;CAiBrB;AAED,eAAO,MAAM,mBAAmB,qBAA4B,CAAC"}
|
|
@@ -18,6 +18,7 @@ const constant_1 = require("../../../configManager/constant");
|
|
|
18
18
|
const os_1 = require("os");
|
|
19
19
|
const envFunctionUtils_1 = require("../../../utils/envFunctionUtils");
|
|
20
20
|
const utils_2 = require("../../../../common/utils");
|
|
21
|
+
const featureFlags_1 = require("../../../../common/featureFlags");
|
|
21
22
|
class PluginManifestUtils {
|
|
22
23
|
async readPluginManifestFile(path) {
|
|
23
24
|
if (!(await fs_extra_1.default.pathExists(path))) {
|
|
@@ -118,13 +119,15 @@ class PluginManifestUtils {
|
|
|
118
119
|
return outputMessage;
|
|
119
120
|
}
|
|
120
121
|
}
|
|
121
|
-
async getDefaultNextAvailableApiSpecPath(apiSpecPath, apiSpecFolder,
|
|
122
|
+
async getDefaultNextAvailableApiSpecPath(apiSpecPath, apiSpecFolder, isKiotaIntegration = false) {
|
|
122
123
|
let isYaml = false;
|
|
123
124
|
try {
|
|
124
125
|
isYaml = !(await (0, utils_2.isJsonSpecFile)(apiSpecPath));
|
|
125
126
|
}
|
|
126
127
|
catch (e) { }
|
|
127
|
-
let openApiSpecFileName =
|
|
128
|
+
let openApiSpecFileName = isYaml || featureFlags_1.featureFlagManager.getBooleanValue(featureFlags_1.FeatureFlags.KiotaNPMIntegration)
|
|
129
|
+
? teamsfx_api_1.DefaultApiSpecYamlFileName
|
|
130
|
+
: teamsfx_api_1.DefaultApiSpecJsonFileName;
|
|
128
131
|
// Check if the default file name already exists
|
|
129
132
|
if (!(await fs_extra_1.default.pathExists(path_1.default.join(apiSpecFolder, openApiSpecFileName)))) {
|
|
130
133
|
return path_1.default.join(apiSpecFolder, openApiSpecFileName);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PluginManifestUtils.js","sourceRoot":"","sources":["../../../../../src/component/driver/teamsApp/utils/PluginManifestUtils.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;;AAElC,wDAagC;AAChC,gEAA0B;AAC1B,qDAA8E;AAC9E,kEAAiC;AACjC,wDAAwB;AACxB,mDAAgD;AAChD,mCAA8C;AAC9C,wCAAoD;AACpD,sCAA2C;AAC3C,oEAAwF;AAExF,8DAAkE;AAClE,2BAAyB;AACzB,sEAA+D;AAE/D,oDAA0D;
|
|
1
|
+
{"version":3,"file":"PluginManifestUtils.js","sourceRoot":"","sources":["../../../../../src/component/driver/teamsApp/utils/PluginManifestUtils.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../src/component/driver/util/utils.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../src/component/driver/util/utils.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAOhD,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAGxD,wBAAgB,gBAAgB,CAC9B,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GACrC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAMpC;AAGD,wBAAgB,aAAa,CAC3B,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC7B,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EACtC,kBAAkB,CAAC,EAAE,MAAM,EAAE,GAC5B,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAQrB;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,aAAa,CAYjE;AAED,wBAAsB,gCAAgC,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CA4BzF"}
|
|
@@ -6,6 +6,7 @@ exports.updateVersionForTeamsAppYamlFile = exports.createDriverContext = exports
|
|
|
6
6
|
const tslib_1 = require("tslib");
|
|
7
7
|
const fs_extra_1 = tslib_1.__importDefault(require("fs-extra"));
|
|
8
8
|
const path_1 = tslib_1.__importDefault(require("path"));
|
|
9
|
+
const semver_1 = tslib_1.__importDefault(require("semver"));
|
|
9
10
|
const yaml_1 = require("yaml");
|
|
10
11
|
const globalVars_1 = require("../../../common/globalVars");
|
|
11
12
|
const versionMetadata_1 = require("../../../common/versionMetadata");
|
|
@@ -49,12 +50,13 @@ async function updateVersionForTeamsAppYamlFile(projectPath) {
|
|
|
49
50
|
if (await fs_extra_1.default.pathExists(ymlPath)) {
|
|
50
51
|
const ymlContent = await fs_extra_1.default.readFile(ymlPath, "utf-8");
|
|
51
52
|
const document = (0, yaml_1.parseDocument)(ymlContent);
|
|
52
|
-
const version = document.get("version");
|
|
53
|
-
|
|
54
|
-
|
|
53
|
+
const version = document.get("version").slice(1);
|
|
54
|
+
const validVersion = semver_1.default.coerce(version);
|
|
55
|
+
if (validVersion && semver_1.default.lte(validVersion, "1.7.0")) {
|
|
56
|
+
if (semver_1.default.lte(validVersion, "1.6.0")) {
|
|
55
57
|
convertOutputJsonPathToOutputFolder(document);
|
|
56
58
|
}
|
|
57
|
-
if (
|
|
59
|
+
if (semver_1.default.eq(validVersion, "1.3.0")) {
|
|
58
60
|
renameClientSecret(document);
|
|
59
61
|
}
|
|
60
62
|
document.set("version", "v1.8");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/component/driver/util/utils.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;;AAGlC,gEAA0B;AAC1B,wDAAwB;AACxB,+BAAqC;AACrC,2DAAmD;AACnD,qEAAgE;AAGhE,2DAA2D;AAC3D,SAAgB,gBAAgB,CAC9B,iBAAsC;IAEtC,MAAM,MAAM,GAAuC,EAAE,CAAC;IACtD,KAAK,MAAM,CAAC,YAAY,EAAE,UAAU,CAAC,IAAI,iBAAiB,EAAE;QAC1D,MAAM,CAAC,YAAY,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;KAChD;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AARD,4CAQC;AAED,2DAA2D;AAC3D,SAAgB,aAAa,CAC3B,KAA6B,EAC7B,iBAAsC,EACtC,kBAA6B;IAE7B,MAAM,MAAM,GAAG,IAAI,GAAG,EAAkB,CAAC;IACzC,KAAK,MAAM,CAAC,UAAU,EAAE,UAAU,CAAC,IAAI,iBAAiB,EAAE;QACxD,IAAI,CAAC,CAAA,kBAAkB,aAAlB,kBAAkB,uBAAlB,kBAAkB,CAAE,QAAQ,CAAC,UAAU,CAAC,CAAA,EAAE;YAC7C,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;SAC3C;KACF;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAZD,sCAYC;AAED,SAAgB,mBAAmB,CAAC,MAAc;IAChD,MAAM,aAAa,GAAkB;QACnC,oBAAoB,EAAE,kBAAK,CAAC,aAAa,CAAC,oBAAoB;QAC9D,iBAAiB,EAAE,kBAAK,CAAC,aAAa,CAAC,iBAAiB;QACxD,EAAE,EAAE,kBAAK,CAAC,EAAE;QACZ,WAAW,EAAE,SAAS;QACtB,WAAW,EAAE,kBAAK,CAAC,WAAW;QAC9B,iBAAiB,EAAE,kBAAK,CAAC,iBAAkB;QAC3C,WAAW,EAAE,MAAM,CAAC,WAAY;QAChC,QAAQ,EAAE,MAAM,CAAC,QAAQ;KAC1B,CAAC;IACF,OAAO,aAAa,CAAC;AACvB,CAAC;AAZD,kDAYC;AAEM,KAAK,UAAU,gCAAgC,CAAC,WAAmB;IACxE,KAAK,MAAM,YAAY,IAAI,+BAAa,EAAE;QACxC,MAAM,OAAO,GAAG,cAAI,CAAC,IAAI,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;QACrD,IAAI,MAAM,kBAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE;YAChC,MAAM,UAAU,GAAG,MAAM,kBAAE,CAAC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YACvD,MAAM,QAAQ,GAAG,IAAA,oBAAa,EAAC,UAAU,CAAC,CAAC;YAC3C,MAAM,OAAO,
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/component/driver/util/utils.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;;AAGlC,gEAA0B;AAC1B,wDAAwB;AACxB,4DAA4B;AAC5B,+BAAqC;AACrC,2DAAmD;AACnD,qEAAgE;AAGhE,2DAA2D;AAC3D,SAAgB,gBAAgB,CAC9B,iBAAsC;IAEtC,MAAM,MAAM,GAAuC,EAAE,CAAC;IACtD,KAAK,MAAM,CAAC,YAAY,EAAE,UAAU,CAAC,IAAI,iBAAiB,EAAE;QAC1D,MAAM,CAAC,YAAY,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;KAChD;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AARD,4CAQC;AAED,2DAA2D;AAC3D,SAAgB,aAAa,CAC3B,KAA6B,EAC7B,iBAAsC,EACtC,kBAA6B;IAE7B,MAAM,MAAM,GAAG,IAAI,GAAG,EAAkB,CAAC;IACzC,KAAK,MAAM,CAAC,UAAU,EAAE,UAAU,CAAC,IAAI,iBAAiB,EAAE;QACxD,IAAI,CAAC,CAAA,kBAAkB,aAAlB,kBAAkB,uBAAlB,kBAAkB,CAAE,QAAQ,CAAC,UAAU,CAAC,CAAA,EAAE;YAC7C,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;SAC3C;KACF;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAZD,sCAYC;AAED,SAAgB,mBAAmB,CAAC,MAAc;IAChD,MAAM,aAAa,GAAkB;QACnC,oBAAoB,EAAE,kBAAK,CAAC,aAAa,CAAC,oBAAoB;QAC9D,iBAAiB,EAAE,kBAAK,CAAC,aAAa,CAAC,iBAAiB;QACxD,EAAE,EAAE,kBAAK,CAAC,EAAE;QACZ,WAAW,EAAE,SAAS;QACtB,WAAW,EAAE,kBAAK,CAAC,WAAW;QAC9B,iBAAiB,EAAE,kBAAK,CAAC,iBAAkB;QAC3C,WAAW,EAAE,MAAM,CAAC,WAAY;QAChC,QAAQ,EAAE,MAAM,CAAC,QAAQ;KAC1B,CAAC;IACF,OAAO,aAAa,CAAC;AACvB,CAAC;AAZD,kDAYC;AAEM,KAAK,UAAU,gCAAgC,CAAC,WAAmB;IACxE,KAAK,MAAM,YAAY,IAAI,+BAAa,EAAE;QACxC,MAAM,OAAO,GAAG,cAAI,CAAC,IAAI,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;QACrD,IAAI,MAAM,kBAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE;YAChC,MAAM,UAAU,GAAG,MAAM,kBAAE,CAAC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YACvD,MAAM,QAAQ,GAAG,IAAA,oBAAa,EAAC,UAAU,CAAC,CAAC;YAC3C,MAAM,OAAO,GAAI,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAC7D,MAAM,YAAY,GAAG,gBAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAC5C,IAAI,YAAY,IAAI,gBAAM,CAAC,GAAG,CAAC,YAAY,EAAE,OAAO,CAAC,EAAE;gBACrD,IAAI,gBAAM,CAAC,GAAG,CAAC,YAAY,EAAE,OAAO,CAAC,EAAE;oBACrC,mCAAmC,CAAC,QAAQ,CAAC,CAAC;iBAC/C;gBAED,IAAI,gBAAM,CAAC,EAAE,CAAC,YAAY,EAAE,OAAO,CAAC,EAAE;oBACpC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;iBAC9B;gBAED,QAAQ,CAAC,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;gBAChC,MAAM,UAAU,GAAG,QAAQ,CAAC,QAAQ,EAAE,CAAC;gBACvC,8IAA8I;gBAC9I,MAAM,cAAc,GAAG,UAAU,CAAC,OAAO,CACvC,mHAAmH,EACnH,UAAU,CACX,CAAC;gBACF,MAAM,kBAAE,CAAC,SAAS,CAAC,OAAO,EAAE,cAAc,EAAE,MAAM,CAAC,CAAC;aACrD;SACF;KACF;AACH,CAAC;AA5BD,4EA4BC;AAED,SAAS,oBAAoB,CAC3B,QAAa,EACb,cAAsB,EACtB,SAAkC;IAElC,MAAM,QAAQ,GAAG,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;IAC1C,QAAQ,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE;QAC9B,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QAC/C,IAAI,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YAC3C,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAS,EAAE,EAAE;;gBAClC,IAAI,IAAI,IAAI,CAAA,MAAA,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,0CAAE,KAAK,MAAK,cAAc,EAAE;oBAC5D,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;oBACxC,IAAI,QAAQ,EAAE;wBACZ,SAAS,CAAC,QAAQ,CAAC,CAAC;qBACrB;iBACF;YACH,CAAC,CAAC,CAAC;SACJ;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,mCAAmC,CAAC,QAAa;IACxD,oBAAoB,CAAC,QAAQ,EAAE,wBAAwB,EAAE,CAAC,QAAQ,EAAE,EAAE;;QACpE,MAAM,cAAc,GAAG,MAAA,QAAQ,CAAC,GAAG,CAAC,gBAAgB,EAAE,IAAI,CAAC,0CAAE,KAAK,CAAC;QACnE,IAAI,OAAO,cAAc,KAAK,QAAQ,EAAE;YACtC,QAAQ,CAAC,GAAG,CAAC,cAAc,EAAE,cAAI,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC;YAC3D,QAAQ,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;SACnC;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,kBAAkB,CAAC,QAAa;IACvC,oBAAoB,CAAC,QAAQ,EAAE,iBAAiB,EAAE,CAAC,QAAQ,EAAE,EAAE;;QAC7D,MAAM,WAAW,GAAG,MAAA,QAAQ,CAAC,GAAG,CAAC,cAAc,EAAE,IAAI,CAAC,0CAAE,KAAK,CAAC;QAC9D,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE;YACnC,QAAQ,CAAC,GAAG,CAAC,qBAAqB,EAAE,WAAW,CAAC,CAAC;YACjD,QAAQ,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;SACjC;IACH,CAAC,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Context, FxError, LogProvider, M365TokenProvider, Result } from "@microsoft/teamsfx-api";
|
|
2
|
-
import { AadOwner, ResourcePermission, TeamsAppAdmin } from "../../common/permissionInterface";
|
|
2
|
+
import { AadOwner, AgentOwner, ResourcePermission, TeamsAppAdmin } from "../../common/permissionInterface";
|
|
3
3
|
import { AppUser } from "../driver/teamsApp/interfaces/appdefinitions/appUser";
|
|
4
4
|
export declare class AadCollaboration {
|
|
5
5
|
private readonly aadAppClient;
|
|
@@ -17,4 +17,10 @@ export declare class TeamsCollaboration {
|
|
|
17
17
|
checkPermission(ctx: Context, teamsAppId: string, userInfo: AppUser): Promise<Result<ResourcePermission[], FxError>>;
|
|
18
18
|
private handleError;
|
|
19
19
|
}
|
|
20
|
+
export declare class AgentCollaboration {
|
|
21
|
+
private readonly tokenProvider;
|
|
22
|
+
constructor(m365TokenProvider: M365TokenProvider);
|
|
23
|
+
grantPermission(ctx: Context, titleId: string, userInfo: AppUser): Promise<Result<ResourcePermission[], FxError>>;
|
|
24
|
+
listCollaborator(ctx: Context, titleId: string): Promise<Result<AgentOwner[], FxError>>;
|
|
25
|
+
}
|
|
20
26
|
//# sourceMappingURL=collaboration.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"collaboration.d.ts","sourceRoot":"","sources":["../../../src/component/feature/collaboration.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,OAAO,EACP,OAAO,EACP,WAAW,EACX,iBAAiB,EACjB,MAAM,EAGP,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"collaboration.d.ts","sourceRoot":"","sources":["../../../src/component/feature/collaboration.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,OAAO,EACP,OAAO,EACP,WAAW,EACX,iBAAiB,EACjB,MAAM,EAGP,MAAM,wBAAwB,CAAC;AAOhC,OAAO,EACL,QAAQ,EACR,UAAU,EACV,kBAAkB,EAClB,aAAa,EACd,MAAM,kCAAkC,CAAC;AAS1C,OAAO,EAAE,OAAO,EAAE,MAAM,sDAAsD,CAAC;AAW/E,qBACa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAe;gBAEhC,iBAAiB,EAAE,iBAAiB,EAAE,WAAW,CAAC,EAAE,WAAW;IAO9D,eAAe,CAC1B,GAAG,EAAE,OAAO,EACZ,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,MAAM,CAAC,kBAAkB,EAAE,EAAE,OAAO,CAAC,CAAC;IAqBpC,gBAAgB,CAC3B,GAAG,EAAE,OAAO,EACZ,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,OAAO,CAAC,CAAC;IAY1B,eAAe,CAC1B,GAAG,EAAE,OAAO,EACZ,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,MAAM,CAAC,kBAAkB,EAAE,EAAE,OAAO,CAAC,CAAC;IAmBjD,OAAO,CAAC,WAAW;CAiBpB;AAED,qBACa,kBAAkB;IAC7B,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAoB;gBAEtC,iBAAiB,EAAE,iBAAiB;IAOnC,eAAe,CAC1B,GAAG,EAAE,OAAO,EACZ,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,OAAO,GAChB,OAAO,CAAC,MAAM,CAAC,kBAAkB,EAAE,EAAE,OAAO,CAAC,CAAC;IAyBpC,gBAAgB,CAC3B,GAAG,EAAE,OAAO,EACZ,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,MAAM,CAAC,aAAa,EAAE,EAAE,OAAO,CAAC,CAAC;IAqC/B,eAAe,CAC1B,GAAG,EAAE,OAAO,EACZ,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,OAAO,GAChB,OAAO,CAAC,MAAM,CAAC,kBAAkB,EAAE,EAAE,OAAO,CAAC,CAAC;IA2BjD,OAAO,CAAC,WAAW;CAoBpB;AAED,qBACa,kBAAkB;IAC7B,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAoB;gBAEtC,iBAAiB,EAAE,iBAAiB;IAQnC,eAAe,CAC1B,GAAG,EAAE,OAAO,EACZ,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,OAAO,GAChB,OAAO,CAAC,MAAM,CAAC,kBAAkB,EAAE,EAAE,OAAO,CAAC,CAAC;IA4BpC,gBAAgB,CAC3B,GAAG,EAAE,OAAO,EACZ,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,MAAM,CAAC,UAAU,EAAE,EAAE,OAAO,CAAC,CAAC;CA8B1C"}
|
|
@@ -2,15 +2,18 @@
|
|
|
2
2
|
// Copyright (c) Microsoft Corporation.
|
|
3
3
|
// Licensed under the MIT license.
|
|
4
4
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
|
-
exports.TeamsCollaboration = exports.AadCollaboration = void 0;
|
|
5
|
+
exports.AgentCollaboration = exports.TeamsCollaboration = exports.AadCollaboration = void 0;
|
|
6
6
|
const tslib_1 = require("tslib");
|
|
7
7
|
const lib_1 = require("@feathersjs/hooks/lib");
|
|
8
8
|
const teamsfx_api_1 = require("@microsoft/teamsfx-api");
|
|
9
9
|
const axios_1 = tslib_1.__importDefault(require("axios"));
|
|
10
10
|
const typedi_1 = require("typedi");
|
|
11
|
+
const graphClient_1 = require("../../client/graphClient");
|
|
11
12
|
const teamsDevPortalClient_1 = require("../../client/teamsDevPortalClient");
|
|
12
13
|
const constants_1 = require("../../common/constants");
|
|
13
14
|
const globalVars_1 = require("../../common/globalVars");
|
|
15
|
+
const packageService_1 = require("../../component/m365/packageService");
|
|
16
|
+
const serviceConstant_1 = require("../../component/m365/serviceConstant");
|
|
14
17
|
const common_1 = require("../../error/common");
|
|
15
18
|
const teamsApp_1 = require("../../error/teamsApp");
|
|
16
19
|
const aadAppClient_1 = require("../driver/aad/utility/aadAppClient");
|
|
@@ -24,6 +27,7 @@ const EventName = {
|
|
|
24
27
|
};
|
|
25
28
|
const componentNameAad = "fx-resource-aad-app-for-teams";
|
|
26
29
|
const componentNameTeams = "AppStudioPlugin";
|
|
30
|
+
const componentNameAgent = "AgentPlugin";
|
|
27
31
|
let AadCollaboration = class AadCollaboration {
|
|
28
32
|
constructor(m365TokenProvider, logProvider) {
|
|
29
33
|
this.aadAppClient = new aadAppClient_1.AadAppClient(m365TokenProvider, logProvider);
|
|
@@ -253,4 +257,83 @@ TeamsCollaboration = tslib_1.__decorate([
|
|
|
253
257
|
tslib_1.__metadata("design:paramtypes", [Object])
|
|
254
258
|
], TeamsCollaboration);
|
|
255
259
|
exports.TeamsCollaboration = TeamsCollaboration;
|
|
260
|
+
let AgentCollaboration = class AgentCollaboration {
|
|
261
|
+
constructor(m365TokenProvider) {
|
|
262
|
+
this.tokenProvider = m365TokenProvider;
|
|
263
|
+
}
|
|
264
|
+
async grantPermission(ctx, titleId, userInfo) {
|
|
265
|
+
const mosTokenRes = await this.tokenProvider.getAccessToken({
|
|
266
|
+
scopes: [serviceConstant_1.MosServiceScope],
|
|
267
|
+
});
|
|
268
|
+
if (mosTokenRes.isErr()) {
|
|
269
|
+
return (0, teamsfx_api_1.err)(mosTokenRes.error);
|
|
270
|
+
}
|
|
271
|
+
const mosToken = mosTokenRes.value;
|
|
272
|
+
// grant owner permission
|
|
273
|
+
const res = await packageService_1.PackageService.GetSharedInstance().addOwner(mosToken, titleId, userInfo);
|
|
274
|
+
if (res.isErr()) {
|
|
275
|
+
return (0, teamsfx_api_1.err)(res.error);
|
|
276
|
+
}
|
|
277
|
+
const result = [
|
|
278
|
+
{
|
|
279
|
+
name: packageService_1.AgentPermission.name,
|
|
280
|
+
roles: [packageService_1.AgentPermission.owner],
|
|
281
|
+
type: packageService_1.AgentPermission.type,
|
|
282
|
+
resourceId: titleId,
|
|
283
|
+
},
|
|
284
|
+
];
|
|
285
|
+
return (0, teamsfx_api_1.ok)(result);
|
|
286
|
+
}
|
|
287
|
+
async listCollaborator(ctx, titleId) {
|
|
288
|
+
const mosTokenRes = await this.tokenProvider.getAccessToken({
|
|
289
|
+
scopes: [serviceConstant_1.MosServiceScope],
|
|
290
|
+
});
|
|
291
|
+
if (mosTokenRes.isErr()) {
|
|
292
|
+
return (0, teamsfx_api_1.err)(mosTokenRes.error);
|
|
293
|
+
}
|
|
294
|
+
const mosToken = mosTokenRes.value;
|
|
295
|
+
const res = await packageService_1.PackageService.GetSharedInstance().previewApp(mosToken, titleId);
|
|
296
|
+
if (res.isErr()) {
|
|
297
|
+
return (0, teamsfx_api_1.err)(res.error);
|
|
298
|
+
}
|
|
299
|
+
const owners = res.value.owners;
|
|
300
|
+
const agentOwners = [];
|
|
301
|
+
const graphClient = new graphClient_1.GraphClient(this.tokenProvider);
|
|
302
|
+
for (const owner of owners) {
|
|
303
|
+
const userInfo = await graphClient.getUserInfoFromId(owner.entityId);
|
|
304
|
+
if (userInfo) {
|
|
305
|
+
agentOwners.push({
|
|
306
|
+
userObjectId: owner.entityId,
|
|
307
|
+
displayName: userInfo.displayName,
|
|
308
|
+
userPrincipalName: userInfo.userPrincipalName,
|
|
309
|
+
resourceId: titleId,
|
|
310
|
+
});
|
|
311
|
+
}
|
|
312
|
+
}
|
|
313
|
+
return (0, teamsfx_api_1.ok)(agentOwners);
|
|
314
|
+
}
|
|
315
|
+
};
|
|
316
|
+
tslib_1.__decorate([
|
|
317
|
+
(0, lib_1.hooks)([
|
|
318
|
+
(0, globalVars_1.ErrorContextMW)({ source: "M365", component: "AgentCollaboration" }),
|
|
319
|
+
(0, addStartAndEndTelemetry_1.addStartAndEndTelemetry)(EventName.grantPermission, componentNameAgent),
|
|
320
|
+
]),
|
|
321
|
+
tslib_1.__metadata("design:type", Function),
|
|
322
|
+
tslib_1.__metadata("design:paramtypes", [Object, String, Object]),
|
|
323
|
+
tslib_1.__metadata("design:returntype", Promise)
|
|
324
|
+
], AgentCollaboration.prototype, "grantPermission", null);
|
|
325
|
+
tslib_1.__decorate([
|
|
326
|
+
(0, lib_1.hooks)([
|
|
327
|
+
(0, globalVars_1.ErrorContextMW)({ source: "M365", component: "AgentCollaboration" }),
|
|
328
|
+
(0, addStartAndEndTelemetry_1.addStartAndEndTelemetry)(EventName.listCollaborator, componentNameAgent),
|
|
329
|
+
]),
|
|
330
|
+
tslib_1.__metadata("design:type", Function),
|
|
331
|
+
tslib_1.__metadata("design:paramtypes", [Object, String]),
|
|
332
|
+
tslib_1.__metadata("design:returntype", Promise)
|
|
333
|
+
], AgentCollaboration.prototype, "listCollaborator", null);
|
|
334
|
+
AgentCollaboration = tslib_1.__decorate([
|
|
335
|
+
(0, typedi_1.Service)("agent-collaboration"),
|
|
336
|
+
tslib_1.__metadata("design:paramtypes", [Object])
|
|
337
|
+
], AgentCollaboration);
|
|
338
|
+
exports.AgentCollaboration = AgentCollaboration;
|
|
256
339
|
//# sourceMappingURL=collaboration.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"collaboration.js","sourceRoot":"","sources":["../../../src/component/feature/collaboration.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;;AAElC,+CAA8C;AAC9C,wDAQgC;AAChC,0DAA0B;AAC1B,mCAAiC;AACjC,4EAAyE;AACzE,sDAAyD;AACzD,wDAAyD;
|
|
1
|
+
{"version":3,"file":"collaboration.js","sourceRoot":"","sources":["../../../src/component/feature/collaboration.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helper.d.ts","sourceRoot":"","sources":["../../../../src/component/generator/openApiSpec/helper.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"helper.d.ts","sourceRoot":"","sources":["../../../../src/component/generator/openApiSpec/helper.ts"],"names":[],"mappings":"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"}
|
|
@@ -707,12 +707,12 @@ const commonLanguages = [
|
|
|
707
707
|
constants_2.ProgrammingLanguage.PY,
|
|
708
708
|
constants_2.ProgrammingLanguage.CSharp,
|
|
709
709
|
];
|
|
710
|
-
async function updatePromptForCustomApi(spec, language, chatFolder) {
|
|
710
|
+
async function updatePromptForCustomApi(spec, language, chatFolder, promptFileName) {
|
|
711
711
|
if (commonLanguages.includes(language)) {
|
|
712
712
|
const object = `{ "path": null, "body": null, "query": null }`;
|
|
713
713
|
const cSharpObject = `{ "path": {}, "body": {}, "query": {} }`;
|
|
714
|
-
const promptFilePath = path_1.default.join(chatFolder,
|
|
715
|
-
const prompt = `The following is a conversation with an AI assistant.\nThe assistant can help to call APIs for the open api spec file${spec.info.description ? ". " + spec.info.description : "."}\nIf the API doesn't require parameters, invoke it with default JSON object ${language === constants_2.ProgrammingLanguage.CSharp ? cSharpObject : object}.\n\
|
|
714
|
+
const promptFilePath = path_1.default.join(chatFolder, promptFileName);
|
|
715
|
+
const prompt = `The following is a conversation with an AI assistant.\nThe assistant can help to call APIs for the open api spec file${spec.info.description ? ". " + spec.info.description : "."}\nIf the API doesn't require parameters, invoke it with default JSON object ${language === constants_2.ProgrammingLanguage.CSharp ? cSharpObject : object}.\n\n${shouldGenerateTeamsAIV2Code(language) ? "context:\nAvailable actions: {{getAction}}." : ""}`;
|
|
716
716
|
await fs_extra_1.default.writeFile(promptFilePath, prompt, { encoding: "utf-8", flag: "w" });
|
|
717
717
|
}
|
|
718
718
|
}
|
|
@@ -789,10 +789,13 @@ function filterSchema(schema) {
|
|
|
789
789
|
}
|
|
790
790
|
return filteredSchema;
|
|
791
791
|
}
|
|
792
|
+
function shouldGenerateTeamsAIV2Code(language) {
|
|
793
|
+
return language === constants_2.ProgrammingLanguage.JS || language === constants_2.ProgrammingLanguage.TS;
|
|
794
|
+
}
|
|
792
795
|
async function updateActionForCustomApi(specItems, language, chatFolder) {
|
|
793
796
|
var _a, _b, _c;
|
|
794
797
|
if (commonLanguages.includes(language)) {
|
|
795
|
-
const actionsFilePath = path_1.default.join(chatFolder, "actions.json");
|
|
798
|
+
const actionsFilePath = path_1.default.join(chatFolder, shouldGenerateTeamsAIV2Code(language) ? "functions.json" : "actions.json");
|
|
796
799
|
const actions = [];
|
|
797
800
|
for (const item of specItems) {
|
|
798
801
|
const parameters = {
|
|
@@ -844,88 +847,26 @@ async function updateActionForCustomApi(specItems, language, chatFolder) {
|
|
|
844
847
|
parameters: parameters,
|
|
845
848
|
});
|
|
846
849
|
}
|
|
847
|
-
|
|
850
|
+
if (shouldGenerateTeamsAIV2Code(language)) {
|
|
851
|
+
// Convert actions array to object format for Teams AI v2
|
|
852
|
+
const actionsObject = {};
|
|
853
|
+
for (const action of actions) {
|
|
854
|
+
if (action.name) {
|
|
855
|
+
actionsObject[action.name] = {
|
|
856
|
+
name: action.name,
|
|
857
|
+
description: action.description,
|
|
858
|
+
parameters: action.parameters,
|
|
859
|
+
};
|
|
860
|
+
}
|
|
861
|
+
}
|
|
862
|
+
await fs_extra_1.default.writeFile(actionsFilePath, JSON.stringify(actionsObject, null, 2));
|
|
863
|
+
}
|
|
864
|
+
else {
|
|
865
|
+
await fs_extra_1.default.writeFile(actionsFilePath, JSON.stringify(actions, null, 2));
|
|
866
|
+
}
|
|
848
867
|
}
|
|
849
868
|
}
|
|
850
869
|
const ActionCode = {
|
|
851
|
-
javascript: `
|
|
852
|
-
app.ai.action("{{operationId}}", async (context, state, parameter) => {
|
|
853
|
-
const client = await api.getClient();
|
|
854
|
-
// Add authentication configuration for the client
|
|
855
|
-
const apiPath = client.paths["{{pathUrl}}"];
|
|
856
|
-
if (apiPath && apiPath.{{method}}) {
|
|
857
|
-
const result = await apiPath.{{method}}(parameter.path, parameter.body, {
|
|
858
|
-
params: parameter.query,
|
|
859
|
-
});
|
|
860
|
-
if (!result || !result.data) {
|
|
861
|
-
throw new Error("Get empty result from api call.");
|
|
862
|
-
}
|
|
863
|
-
const cardName = "{{operationId}}".replace(/[^a-zA-Z0-9]/g, "_");
|
|
864
|
-
const cardTemplatePath = path.join(__dirname, '../adaptiveCards', cardName + '.json');
|
|
865
|
-
const isTeamsChannel = context.activity.channelId === Channels.Msteams;
|
|
866
|
-
if (await fs.exists(cardTemplatePath)){
|
|
867
|
-
const card = generateAdaptiveCard(cardTemplatePath, result);
|
|
868
|
-
await context.sendActivity({
|
|
869
|
-
attachments: [card],
|
|
870
|
-
...(isTeamsChannel ? { channelData: { feedbackLoopEnabled: true }} : {}),
|
|
871
|
-
entities: [
|
|
872
|
-
{
|
|
873
|
-
type: "https://schema.org/Message",
|
|
874
|
-
"@type": "Message",
|
|
875
|
-
"@context": "https://schema.org",
|
|
876
|
-
additionalType: ["AIGeneratedContent"], // AI Generated label
|
|
877
|
-
},
|
|
878
|
-
]
|
|
879
|
-
});
|
|
880
|
-
}
|
|
881
|
-
else {
|
|
882
|
-
await context.sendActivity(JSON.stringify(result.data));
|
|
883
|
-
}
|
|
884
|
-
} else {
|
|
885
|
-
await context.sendActivity("no result");
|
|
886
|
-
}
|
|
887
|
-
return "result";
|
|
888
|
-
});
|
|
889
|
-
`,
|
|
890
|
-
typescript: `
|
|
891
|
-
app.ai.action("{{operationId}}", async (context: TurnContext, state: ApplicationTurnState, parameter: any) => {
|
|
892
|
-
const client = await api.getClient();
|
|
893
|
-
// Add authentication configuration for the client
|
|
894
|
-
const apiPath = client.paths["{{pathUrl}}"];
|
|
895
|
-
if (apiPath && apiPath.{{method}}) {
|
|
896
|
-
const result = await apiPath.{{method}}(parameter.path, parameter.body, {
|
|
897
|
-
params: parameter.query,
|
|
898
|
-
});
|
|
899
|
-
if (!result || !result.data) {
|
|
900
|
-
throw new Error("Get empty result from api call.");
|
|
901
|
-
}
|
|
902
|
-
const cardName = "{{operationId}}".replace(/[^a-zA-Z0-9]/g, "_");
|
|
903
|
-
const cardTemplatePath = path.join(__dirname, '../adaptiveCards', cardName + '.json');
|
|
904
|
-
const isTeamsChannel = context.activity.channelId === Channels.Msteams;
|
|
905
|
-
if (await fs.exists(cardTemplatePath)){
|
|
906
|
-
const card = generateAdaptiveCard(cardTemplatePath, result);
|
|
907
|
-
await context.sendActivity({
|
|
908
|
-
attachments: [card],
|
|
909
|
-
...(isTeamsChannel ? { channelData: { feedbackLoopEnabled: true }} : {}),
|
|
910
|
-
entities: [
|
|
911
|
-
{
|
|
912
|
-
type: "https://schema.org/Message",
|
|
913
|
-
"@type": "Message",
|
|
914
|
-
"@context": "https://schema.org",
|
|
915
|
-
additionalType: ["AIGeneratedContent"], // AI Generated label
|
|
916
|
-
},
|
|
917
|
-
]
|
|
918
|
-
});
|
|
919
|
-
}
|
|
920
|
-
else {
|
|
921
|
-
await context.sendActivity(JSON.stringify(result.data));
|
|
922
|
-
}
|
|
923
|
-
} else {
|
|
924
|
-
await context.sendActivity("no result");
|
|
925
|
-
}
|
|
926
|
-
return "result";
|
|
927
|
-
});
|
|
928
|
-
`,
|
|
929
870
|
python: `
|
|
930
871
|
@bot_app.ai.action("{{operationId}}")
|
|
931
872
|
async def {{operationId}}(
|
|
@@ -1000,6 +941,92 @@ async def {{operationId}}(
|
|
|
1000
941
|
return "complete";
|
|
1001
942
|
}`,
|
|
1002
943
|
};
|
|
944
|
+
const functionDefinitionCode = {
|
|
945
|
+
javascript: `.function(
|
|
946
|
+
functionDefs.{{operationId}}.name,
|
|
947
|
+
functionDefs.{{operationId}}.description,
|
|
948
|
+
functionDefs.{{operationId}}.parameters,
|
|
949
|
+
async (parameter) => {
|
|
950
|
+
const result = await functionHandlers.{{operationId}}Handler(parameter);
|
|
951
|
+
if(result) {
|
|
952
|
+
await send(result);
|
|
953
|
+
return "result showed";
|
|
954
|
+
} else {
|
|
955
|
+
return "no result";
|
|
956
|
+
}
|
|
957
|
+
}
|
|
958
|
+
)`,
|
|
959
|
+
typescript: `.function(
|
|
960
|
+
functionDefs.{{operationId}}.name,
|
|
961
|
+
functionDefs.{{operationId}}.description,
|
|
962
|
+
functionDefs.{{operationId}}.parameters,
|
|
963
|
+
async (parameter) => {
|
|
964
|
+
const result = await functionHandlers.{{operationId}}Handler(parameter);
|
|
965
|
+
if(result) {
|
|
966
|
+
await send(result);
|
|
967
|
+
return "result showed";
|
|
968
|
+
} else {
|
|
969
|
+
return "no result";
|
|
970
|
+
}
|
|
971
|
+
}
|
|
972
|
+
)`,
|
|
973
|
+
};
|
|
974
|
+
const functionHandlerCode = {
|
|
975
|
+
javascript: `const {{operationId}}Handler = async (
|
|
976
|
+
parameters
|
|
977
|
+
) => {
|
|
978
|
+
const client = await api.getClient();
|
|
979
|
+
// Add authentication configuration for the client
|
|
980
|
+
const apiPath = client.paths["{{pathUrl}}"];
|
|
981
|
+
if (apiPath && apiPath.{{method}}) {
|
|
982
|
+
const result = await apiPath.{{method}}(parameters.path, parameters.body, {
|
|
983
|
+
params: parameters.query,
|
|
984
|
+
});
|
|
985
|
+
if (!result || !result.data) {
|
|
986
|
+
throw new Error("Get empty result from api call.");
|
|
987
|
+
}
|
|
988
|
+
const cardName = "{{operationId}}".replace(/[^a-zA-Z0-9]/g, "_");
|
|
989
|
+
const cardTemplatePath = path.join(__dirname, '../adaptiveCards', cardName + '.json');
|
|
990
|
+
if (await fs.exists(cardTemplatePath)){
|
|
991
|
+
const card = generateAdaptiveCard(cardTemplatePath, result);
|
|
992
|
+
return card;
|
|
993
|
+
} else {
|
|
994
|
+
return JSON.stringify(result.data);
|
|
995
|
+
}
|
|
996
|
+
} else {
|
|
997
|
+
return "";
|
|
998
|
+
}
|
|
999
|
+
|
|
1000
|
+
};
|
|
1001
|
+
|
|
1002
|
+
module.exports = { {{operationId}}Handler };`,
|
|
1003
|
+
typescript: `export const {{operationId}}Handler = async (
|
|
1004
|
+
parameter: any
|
|
1005
|
+
) => {
|
|
1006
|
+
const client = await api.getClient();
|
|
1007
|
+
// Add authentication configuration for the client
|
|
1008
|
+
const apiPath = client.paths["{{pathUrl}}"];
|
|
1009
|
+
if (apiPath && apiPath.{{method}}) {
|
|
1010
|
+
const result = await apiPath.{{method}}(parameter.path, parameter.body, {
|
|
1011
|
+
params: parameter.query,
|
|
1012
|
+
});
|
|
1013
|
+
if (!result || !result.data) {
|
|
1014
|
+
throw new Error("Get empty result from api call.");
|
|
1015
|
+
}
|
|
1016
|
+
const cardName = "{{operationId}}".replace(/[^a-zA-Z0-9]/g, "_");
|
|
1017
|
+
const cardTemplatePath = path.join(__dirname, '../adaptiveCards', cardName + '.json');
|
|
1018
|
+
if (await fs.exists(cardTemplatePath)){
|
|
1019
|
+
const card = generateAdaptiveCard(cardTemplatePath, result);
|
|
1020
|
+
return card;
|
|
1021
|
+
} else {
|
|
1022
|
+
return JSON.stringify(result.data);
|
|
1023
|
+
}
|
|
1024
|
+
} else {
|
|
1025
|
+
return "";
|
|
1026
|
+
}
|
|
1027
|
+
|
|
1028
|
+
};`,
|
|
1029
|
+
};
|
|
1003
1030
|
const AuthCode = {
|
|
1004
1031
|
javascript: {
|
|
1005
1032
|
actionCode: `addAuthConfig(client);`,
|
|
@@ -1010,28 +1037,33 @@ const AuthCode = {
|
|
|
1010
1037
|
actionPlaceholder: `// Add authentication configuration for the client`,
|
|
1011
1038
|
},
|
|
1012
1039
|
};
|
|
1013
|
-
async function updateCodeForCustomApi(specItems, language, destinationPath, openapiSpecFileName
|
|
1040
|
+
async function updateCodeForCustomApi(specItems, language, destinationPath, openapiSpecFileName) {
|
|
1014
1041
|
if (language === constants_2.ProgrammingLanguage.JS || language === constants_2.ProgrammingLanguage.TS) {
|
|
1015
|
-
const codeTemplate = ActionCode[language === constants_2.ProgrammingLanguage.JS ? "javascript" : "typescript"];
|
|
1016
1042
|
const appFolderPath = path_1.default.join(destinationPath, "src", "app");
|
|
1017
|
-
const
|
|
1043
|
+
const functionDefinitionTemplate = functionDefinitionCode[language === constants_2.ProgrammingLanguage.JS ? "javascript" : "typescript"];
|
|
1044
|
+
const functionHandlerTemplate = functionHandlerCode[language === constants_2.ProgrammingLanguage.JS ? "javascript" : "typescript"];
|
|
1018
1045
|
const authCodeTemplate = AuthCode[language === constants_2.ProgrammingLanguage.JS ? "javascript" : "typescript"];
|
|
1046
|
+
const appFilePath = path_1.default.join(appFolderPath, language === constants_2.ProgrammingLanguage.JS ? "app.js" : "app.ts");
|
|
1047
|
+
const handlerFilePath = path_1.default.join(appFolderPath, language === constants_2.ProgrammingLanguage.JS ? "handlers.js" : "handlers.ts");
|
|
1048
|
+
const functionDefinitionsCode = [];
|
|
1049
|
+
const functionHandlersCode = [];
|
|
1019
1050
|
for (const item of specItems) {
|
|
1020
1051
|
const auth = item.auth;
|
|
1021
|
-
|
|
1052
|
+
functionDefinitionsCode.push(functionDefinitionTemplate.replace(/{{operationId}}/g, item.item.operationId));
|
|
1053
|
+
functionHandlersCode.push(functionHandlerTemplate
|
|
1022
1054
|
.replace(authCodeTemplate.actionPlaceholder, auth ? authCodeTemplate.actionCode : "")
|
|
1023
1055
|
.replace(/{{operationId}}/g, item.item.operationId)
|
|
1024
1056
|
.replace(/{{pathUrl}}/g, item.pathUrl)
|
|
1025
|
-
.replace(/{{method}}/g, item.method);
|
|
1026
|
-
actionsCode.push(code);
|
|
1057
|
+
.replace(/{{method}}/g, item.method));
|
|
1027
1058
|
}
|
|
1028
|
-
|
|
1029
|
-
const
|
|
1030
|
-
|
|
1031
|
-
const
|
|
1059
|
+
const appFileContent = (await fs_extra_1.default.readFile(appFilePath)).toString();
|
|
1060
|
+
const updatedAppFileContent = appFileContent.replace("// Replace with function definition code", `${functionDefinitionsCode.join("\n")};`);
|
|
1061
|
+
await fs_extra_1.default.writeFile(appFilePath, updatedAppFileContent);
|
|
1062
|
+
const handlerFileContent = (await fs_extra_1.default.readFile(handlerFilePath)).toString();
|
|
1063
|
+
const updatedHandlerFileContent = handlerFileContent
|
|
1032
1064
|
.replace("{{OPENAPI_SPEC_PATH}}", openapiSpecFileName)
|
|
1033
|
-
.replace("// Replace with
|
|
1034
|
-
await fs_extra_1.default.writeFile(
|
|
1065
|
+
.replace("// Replace with function handler code", functionHandlersCode.join("\t\t\n"));
|
|
1066
|
+
await fs_extra_1.default.writeFile(handlerFilePath, updatedHandlerFileContent);
|
|
1035
1067
|
}
|
|
1036
1068
|
else if (language === constants_2.ProgrammingLanguage.PY) {
|
|
1037
1069
|
// Update code in bot.py
|
|
@@ -1078,13 +1110,15 @@ async function updateCodeForCustomApi(specItems, language, destinationPath, open
|
|
|
1078
1110
|
}
|
|
1079
1111
|
async function updateForCustomApi(spec, language, destinationPath, openapiSpecFileName) {
|
|
1080
1112
|
const warnings = [];
|
|
1081
|
-
let chatFolder =
|
|
1113
|
+
let chatFolder = shouldGenerateTeamsAIV2Code(language)
|
|
1114
|
+
? path_1.default.join(destinationPath, "src", "app")
|
|
1115
|
+
: path_1.default.join(destinationPath, "src", "prompts", "chat");
|
|
1082
1116
|
if (language === constants_2.ProgrammingLanguage.CSharp) {
|
|
1083
1117
|
chatFolder = path_1.default.join(destinationPath, "prompts", "Chat");
|
|
1084
1118
|
}
|
|
1085
1119
|
await fs_extra_1.default.ensureDir(chatFolder);
|
|
1086
1120
|
// 1. update prompt folder
|
|
1087
|
-
await updatePromptForCustomApi(spec, language, chatFolder);
|
|
1121
|
+
await updatePromptForCustomApi(spec, language, chatFolder, shouldGenerateTeamsAIV2Code(language) ? "instructions.txt" : "skprompt.txt");
|
|
1088
1122
|
const [specItems, needAuth] = parseSpec(spec);
|
|
1089
1123
|
// 2. update adaptive card folder
|
|
1090
1124
|
const generateWarnings = await updateAdaptiveCardForCustomApi(specItems, language, destinationPath);
|
|
@@ -1092,7 +1126,7 @@ async function updateForCustomApi(spec, language, destinationPath, openapiSpecFi
|
|
|
1092
1126
|
// 3. update actions file
|
|
1093
1127
|
await updateActionForCustomApi(specItems, language, chatFolder);
|
|
1094
1128
|
// 4. update code
|
|
1095
|
-
await updateCodeForCustomApi(specItems, language, destinationPath, openapiSpecFileName
|
|
1129
|
+
await updateCodeForCustomApi(specItems, language, destinationPath, openapiSpecFileName);
|
|
1096
1130
|
// 5. add prompt suggestions
|
|
1097
1131
|
const manifestPath = path_1.default.join(destinationPath, teamsfx_api_1.AppPackageFolderName, teamsfx_api_1.ManifestTemplateFileName);
|
|
1098
1132
|
await updatePromptSuggestions(specItems, manifestPath);
|