@microsoft/teamsfx-core 2.0.8-alpha.d1a09e202.0 → 2.0.8-alpha.ded43fb2d.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/common/constants.d.ts +5 -5
- package/build/common/constants.d.ts.map +1 -1
- package/build/common/constants.js +5 -5
- package/build/common/constants.js.map +1 -1
- package/build/common/deps-checker/constant/message.d.ts +1 -1
- package/build/common/deps-checker/constant/message.d.ts.map +1 -1
- package/build/common/deps-checker/constant/message.js +1 -1
- package/build/common/deps-checker/constant/message.js.map +1 -1
- package/build/common/deps-checker/util/fileHelper.js +1 -1
- package/build/common/deps-checker/util/fileHelper.js.map +1 -1
- package/build/common/featureFlags.d.ts +74 -6
- package/build/common/featureFlags.d.ts.map +1 -1
- package/build/common/featureFlags.js +72 -32
- package/build/common/featureFlags.js.map +1 -1
- package/build/common/m365/launchHelper.d.ts.map +1 -1
- package/build/common/m365/launchHelper.js +3 -2
- package/build/common/m365/launchHelper.js.map +1 -1
- package/build/common/projectSettingsHelper.d.ts +7 -2
- package/build/common/projectSettingsHelper.d.ts.map +1 -1
- package/build/common/projectSettingsHelper.js +25 -7
- package/build/common/projectSettingsHelper.js.map +1 -1
- package/build/common/projectTypeChecker.d.ts +2 -0
- package/build/common/projectTypeChecker.d.ts.map +1 -1
- package/build/common/projectTypeChecker.js +13 -0
- package/build/common/projectTypeChecker.js.map +1 -1
- package/build/common/samples.d.ts +1 -2
- package/build/common/samples.d.ts.map +1 -1
- package/build/common/samples.js +37 -83
- package/build/common/samples.js.map +1 -1
- package/build/common/stringUtils.d.ts +10 -0
- package/build/common/stringUtils.d.ts.map +1 -0
- package/build/common/stringUtils.js +121 -0
- package/build/common/stringUtils.js.map +1 -0
- package/build/common/telemetry.d.ts +6 -1
- package/build/common/telemetry.d.ts.map +1 -1
- package/build/common/telemetry.js +29 -6
- package/build/common/telemetry.js.map +1 -1
- package/build/common/templates-config.json +1 -1
- package/build/common/wrappedAxiosClient.d.ts.map +1 -1
- package/build/common/wrappedAxiosClient.js +7 -5
- package/build/common/wrappedAxiosClient.js.map +1 -1
- package/build/component/configManager/constant.d.ts +2 -1
- package/build/component/configManager/constant.d.ts.map +1 -1
- package/build/component/configManager/constant.js +1 -0
- package/build/component/configManager/constant.js.map +1 -1
- package/build/component/configManager/validator.js +1 -1
- package/build/component/configManager/validator.js.map +1 -1
- package/build/component/constants.js +2 -2
- package/build/component/constants.js.map +1 -1
- package/build/component/coordinator/index.d.ts +0 -39
- package/build/component/coordinator/index.d.ts.map +1 -1
- package/build/component/coordinator/index.js +118 -202
- package/build/component/coordinator/index.js.map +1 -1
- package/build/component/driver/aad/create.d.ts +1 -0
- package/build/component/driver/aad/create.d.ts.map +1 -1
- package/build/component/driver/aad/create.js +22 -11
- package/build/component/driver/aad/create.js.map +1 -1
- package/build/component/driver/aad/error/aadManifestError.d.ts +6 -0
- package/build/component/driver/aad/error/aadManifestError.d.ts.map +1 -1
- package/build/component/driver/aad/error/aadManifestError.js +25 -1
- package/build/component/driver/aad/error/aadManifestError.js.map +1 -1
- package/build/component/driver/aad/error/clientSecretNotAllowedError.d.ts +5 -0
- package/build/component/driver/aad/error/clientSecretNotAllowedError.d.ts.map +1 -0
- package/build/component/driver/aad/error/clientSecretNotAllowedError.js +23 -0
- package/build/component/driver/aad/error/clientSecretNotAllowedError.js.map +1 -0
- package/build/component/driver/aad/error/credentialInvalidLifetimeError.d.ts +5 -0
- package/build/component/driver/aad/error/credentialInvalidLifetimeError.d.ts.map +1 -0
- package/build/component/driver/aad/error/credentialInvalidLifetimeError.js +23 -0
- package/build/component/driver/aad/error/credentialInvalidLifetimeError.js.map +1 -0
- package/build/component/driver/aad/interface/IAADDefinition.d.ts +1 -0
- package/build/component/driver/aad/interface/IAADDefinition.d.ts.map +1 -1
- package/build/component/driver/aad/interface/createAadAppArgs.d.ts +3 -0
- package/build/component/driver/aad/interface/createAadAppArgs.d.ts.map +1 -1
- package/build/component/driver/aad/permissions/index.d.ts.map +1 -1
- package/build/component/driver/aad/permissions/index.js +9 -0
- package/build/component/driver/aad/permissions/index.js.map +1 -1
- package/build/component/driver/aad/utility/aadAppClient.d.ts +3 -2
- package/build/component/driver/aad/utility/aadAppClient.d.ts.map +1 -1
- package/build/component/driver/aad/utility/aadAppClient.js +35 -17
- package/build/component/driver/aad/utility/aadAppClient.js.map +1 -1
- package/build/component/driver/aad/utility/aadManifestHelper.d.ts.map +1 -1
- package/build/component/driver/aad/utility/aadManifestHelper.js +9 -1
- package/build/component/driver/aad/utility/aadManifestHelper.js.map +1 -1
- package/build/component/driver/aad/utility/constants.d.ts +6 -0
- package/build/component/driver/aad/utility/constants.d.ts.map +1 -1
- package/build/component/driver/aad/utility/constants.js +8 -2
- package/build/component/driver/aad/utility/constants.js.map +1 -1
- package/build/component/driver/apiKey/create.d.ts +0 -3
- package/build/component/driver/apiKey/create.d.ts.map +1 -1
- package/build/component/driver/apiKey/create.js +23 -48
- package/build/component/driver/apiKey/create.js.map +1 -1
- package/build/component/driver/apiKey/interface/createApiKeyArgs.d.ts +2 -0
- package/build/component/driver/apiKey/interface/createApiKeyArgs.d.ts.map +1 -1
- package/build/component/driver/apiKey/interface/updateApiKeyArgs.d.ts +9 -0
- package/build/component/driver/apiKey/interface/updateApiKeyArgs.d.ts.map +1 -0
- package/build/component/driver/apiKey/interface/updateApiKeyArgs.js +5 -0
- package/build/component/driver/apiKey/interface/updateApiKeyArgs.js.map +1 -0
- package/build/component/driver/apiKey/update.d.ts +13 -0
- package/build/component/driver/apiKey/update.d.ts.map +1 -0
- package/build/component/driver/apiKey/update.js +182 -0
- package/build/component/driver/apiKey/update.js.map +1 -0
- package/build/component/driver/apiKey/utility/constants.d.ts +2 -0
- package/build/component/driver/apiKey/utility/constants.d.ts.map +1 -1
- package/build/component/driver/apiKey/utility/constants.js +2 -0
- package/build/component/driver/apiKey/utility/constants.js.map +1 -1
- package/build/component/driver/apiKey/utility/utility.d.ts +7 -0
- package/build/component/driver/apiKey/utility/utility.d.ts.map +1 -0
- package/build/component/driver/apiKey/utility/utility.js +55 -0
- package/build/component/driver/apiKey/utility/utility.js.map +1 -0
- package/build/component/driver/deploy/spfx/utility/spoClient.d.ts.map +1 -1
- package/build/component/driver/deploy/spfx/utility/spoClient.js +3 -1
- package/build/component/driver/deploy/spfx/utility/spoClient.js.map +1 -1
- package/build/component/driver/index.d.ts +1 -0
- package/build/component/driver/index.d.ts.map +1 -1
- package/build/component/driver/index.js +1 -0
- package/build/component/driver/index.js.map +1 -1
- package/build/component/driver/middleware/addSWADeployTelemetry.js +2 -2
- package/build/component/driver/middleware/addSWADeployTelemetry.js.map +1 -1
- package/build/component/driver/oauth/create.d.ts +12 -0
- package/build/component/driver/oauth/create.d.ts.map +1 -0
- package/build/component/driver/oauth/create.js +179 -0
- package/build/component/driver/oauth/create.js.map +1 -0
- package/build/component/driver/oauth/error/oauthAuthInfoInvalid.d.ts +5 -0
- package/build/component/driver/oauth/error/oauthAuthInfoInvalid.d.ts.map +1 -0
- package/build/component/driver/oauth/error/oauthAuthInfoInvalid.js +21 -0
- package/build/component/driver/oauth/error/oauthAuthInfoInvalid.js.map +1 -0
- package/build/component/driver/oauth/error/oauthDomainInvalid.d.ts +5 -0
- package/build/component/driver/oauth/error/oauthDomainInvalid.d.ts.map +1 -0
- package/build/component/driver/oauth/error/oauthDomainInvalid.js +22 -0
- package/build/component/driver/oauth/error/oauthDomainInvalid.js.map +1 -0
- package/build/component/driver/oauth/error/oauthFailedToGetDomain.d.ts +5 -0
- package/build/component/driver/oauth/error/oauthFailedToGetDomain.d.ts.map +1 -0
- package/build/component/driver/oauth/error/oauthFailedToGetDomain.js +21 -0
- package/build/component/driver/oauth/error/oauthFailedToGetDomain.js.map +1 -0
- package/build/component/driver/oauth/error/oauthNameTooLong.d.ts +5 -0
- package/build/component/driver/oauth/error/oauthNameTooLong.d.ts.map +1 -0
- package/build/component/driver/oauth/error/oauthNameTooLong.js +21 -0
- package/build/component/driver/oauth/error/oauthNameTooLong.js.map +1 -0
- package/build/component/driver/oauth/interface/createOauthArgs.d.ts +12 -0
- package/build/component/driver/oauth/interface/createOauthArgs.d.ts.map +1 -0
- package/build/component/driver/oauth/interface/createOauthArgs.js +5 -0
- package/build/component/driver/oauth/interface/createOauthArgs.js.map +1 -0
- package/build/component/driver/oauth/interface/createOauthOutputs.d.ts +7 -0
- package/build/component/driver/oauth/interface/createOauthOutputs.d.ts.map +1 -0
- package/build/component/driver/oauth/interface/createOauthOutputs.js +10 -0
- package/build/component/driver/oauth/interface/createOauthOutputs.js.map +1 -0
- package/build/component/driver/oauth/utility/constants.d.ts +11 -0
- package/build/component/driver/oauth/utility/constants.d.ts.map +1 -0
- package/build/component/driver/oauth/utility/constants.js +16 -0
- package/build/component/driver/oauth/utility/constants.js.map +1 -0
- package/build/component/driver/oauth/utility/utility.d.ts +11 -0
- package/build/component/driver/oauth/utility/utility.d.ts.map +1 -0
- package/build/component/driver/oauth/utility/utility.js +83 -0
- package/build/component/driver/oauth/utility/utility.js.map +1 -0
- package/build/component/driver/script/scriptDriver.d.ts.map +1 -1
- package/build/component/driver/script/scriptDriver.js +8 -8
- package/build/component/driver/script/scriptDriver.js.map +1 -1
- package/build/component/driver/teamsApp/clients/appStudioClient.d.ts +10 -3
- package/build/component/driver/teamsApp/clients/appStudioClient.d.ts.map +1 -1
- package/build/component/driver/teamsApp/clients/appStudioClient.js +54 -2
- package/build/component/driver/teamsApp/clients/appStudioClient.js.map +1 -1
- package/build/component/driver/teamsApp/constants.d.ts +4 -0
- package/build/component/driver/teamsApp/constants.d.ts.map +1 -1
- package/build/component/driver/teamsApp/constants.js +4 -0
- package/build/component/driver/teamsApp/constants.js.map +1 -1
- package/build/component/driver/teamsApp/createAppPackage.d.ts +2 -1
- package/build/component/driver/teamsApp/createAppPackage.d.ts.map +1 -1
- package/build/component/driver/teamsApp/createAppPackage.js +38 -23
- package/build/component/driver/teamsApp/createAppPackage.js.map +1 -1
- package/build/component/driver/teamsApp/interfaces/ApiSecretRegistration.d.ts +20 -0
- package/build/component/driver/teamsApp/interfaces/ApiSecretRegistration.d.ts.map +1 -1
- package/build/component/driver/teamsApp/interfaces/ApiSecretRegistration.js.map +1 -1
- package/build/component/driver/teamsApp/interfaces/OauthRegistration.d.ts +44 -0
- package/build/component/driver/teamsApp/interfaces/OauthRegistration.d.ts.map +1 -0
- package/build/component/driver/teamsApp/interfaces/OauthRegistration.js +21 -0
- package/build/component/driver/teamsApp/interfaces/OauthRegistration.js.map +1 -0
- package/build/component/driver/teamsApp/teamsappMgr.d.ts.map +1 -1
- package/build/component/driver/teamsApp/teamsappMgr.js +22 -8
- package/build/component/driver/teamsApp/teamsappMgr.js.map +1 -1
- package/build/component/driver/teamsApp/utils/ManifestUtils.d.ts.map +1 -1
- package/build/component/driver/teamsApp/utils/ManifestUtils.js +3 -15
- package/build/component/driver/teamsApp/utils/ManifestUtils.js.map +1 -1
- package/build/component/driver/teamsApp/utils/telemetry.d.ts +1 -0
- package/build/component/driver/teamsApp/utils/telemetry.d.ts.map +1 -1
- package/build/component/driver/teamsApp/utils/telemetry.js +1 -0
- package/build/component/driver/teamsApp/utils/telemetry.js.map +1 -1
- package/build/component/driver/teamsApp/utils/utils.d.ts +1 -0
- package/build/component/driver/teamsApp/utils/utils.d.ts.map +1 -1
- package/build/component/driver/teamsApp/utils/utils.js +5 -1
- package/build/component/driver/teamsApp/utils/utils.js.map +1 -1
- package/build/component/driver/teamsApp/validateTestCases.d.ts +18 -0
- package/build/component/driver/teamsApp/validateTestCases.d.ts.map +1 -1
- package/build/component/driver/teamsApp/validateTestCases.js +132 -50
- package/build/component/driver/teamsApp/validateTestCases.js.map +1 -1
- package/build/component/generator/copilotPlugin/generator.d.ts.map +1 -1
- package/build/component/generator/copilotPlugin/generator.js +4 -5
- package/build/component/generator/copilotPlugin/generator.js.map +1 -1
- package/build/component/generator/copilotPlugin/helper.d.ts +2 -2
- package/build/component/generator/copilotPlugin/helper.d.ts.map +1 -1
- package/build/component/generator/copilotPlugin/helper.js +94 -42
- package/build/component/generator/copilotPlugin/helper.js.map +1 -1
- package/build/component/generator/generator.d.ts +2 -1
- package/build/component/generator/generator.d.ts.map +1 -1
- package/build/component/generator/generator.js +5 -3
- package/build/component/generator/generator.js.map +1 -1
- package/build/component/generator/generatorProvider.d.ts +3 -0
- package/build/component/generator/generatorProvider.d.ts.map +1 -0
- package/build/component/generator/generatorProvider.js +9 -0
- package/build/component/generator/generatorProvider.js.map +1 -0
- package/build/component/generator/officeAddin/generator.d.ts +16 -2
- package/build/component/generator/officeAddin/generator.d.ts.map +1 -1
- package/build/component/generator/officeAddin/generator.js +97 -44
- package/build/component/generator/officeAddin/generator.js.map +1 -1
- package/build/component/generator/officeAddin/helperMethods.d.ts +0 -3
- package/build/component/generator/officeAddin/helperMethods.d.ts.map +1 -1
- package/build/component/generator/officeAddin/helperMethods.js +0 -65
- package/build/component/generator/officeAddin/helperMethods.js.map +1 -1
- package/build/component/generator/officeXMLAddin/generator.d.ts +6 -2
- package/build/component/generator/officeXMLAddin/generator.d.ts.map +1 -1
- package/build/component/generator/officeXMLAddin/generator.js +39 -19
- package/build/component/generator/officeXMLAddin/generator.js.map +1 -1
- package/build/component/generator/officeXMLAddin/projectConfig.d.ts +21 -33
- package/build/component/generator/officeXMLAddin/projectConfig.d.ts.map +1 -1
- package/build/component/generator/officeXMLAddin/projectConfig.js +85 -86
- package/build/component/generator/officeXMLAddin/projectConfig.js.map +1 -1
- package/build/component/generator/templates/templateGenerator.d.ts +13 -0
- package/build/component/generator/templates/templateGenerator.d.ts.map +1 -0
- package/build/component/generator/templates/templateGenerator.js +136 -0
- package/build/component/generator/templates/templateGenerator.js.map +1 -0
- package/build/component/generator/templates/templateInfo.d.ts +10 -0
- package/build/component/generator/templates/templateInfo.d.ts.map +1 -0
- package/build/component/generator/templates/templateInfo.js +3 -0
- package/build/component/generator/templates/templateInfo.js.map +1 -0
- package/build/component/generator/templates/templateNames.d.ts +44 -0
- package/build/component/generator/templates/templateNames.d.ts.map +1 -0
- package/build/component/generator/templates/templateNames.js +88 -0
- package/build/component/generator/templates/templateNames.js.map +1 -0
- package/build/component/generator/templates/templateReplaceMap.d.ts +5 -0
- package/build/component/generator/templates/templateReplaceMap.d.ts.map +1 -0
- package/build/component/generator/templates/templateReplaceMap.js +39 -0
- package/build/component/generator/templates/templateReplaceMap.js.map +1 -0
- package/build/component/generator/utils.d.ts +1 -0
- package/build/component/generator/utils.d.ts.map +1 -1
- package/build/component/generator/utils.js +2 -1
- package/build/component/generator/utils.js.map +1 -1
- package/build/component/middleware/actionExecutionMW.d.ts.map +1 -1
- package/build/component/middleware/actionExecutionMW.js +5 -4
- package/build/component/middleware/actionExecutionMW.js.map +1 -1
- package/build/component/middleware/questionMW.d.ts.map +1 -1
- package/build/component/middleware/questionMW.js +9 -1
- package/build/component/middleware/questionMW.js.map +1 -1
- package/build/component/utils/envUtil.d.ts +0 -1
- package/build/component/utils/envUtil.d.ts.map +1 -1
- package/build/component/utils/envUtil.js +1 -13
- package/build/component/utils/envUtil.js.map +1 -1
- package/build/component/utils/metadataGraphPermssion.d.ts +8 -6
- package/build/component/utils/metadataGraphPermssion.d.ts.map +1 -1
- package/build/component/utils/metadataGraphPermssion.js +10 -2
- package/build/component/utils/metadataGraphPermssion.js.map +1 -1
- package/build/component/utils/metadataRscPermission.d.ts +16 -0
- package/build/component/utils/metadataRscPermission.d.ts.map +1 -0
- package/build/component/utils/metadataRscPermission.js +69 -0
- package/build/component/utils/metadataRscPermission.js.map +1 -0
- package/build/component/utils/metadataUtil.d.ts.map +1 -1
- package/build/component/utils/metadataUtil.js +2 -0
- package/build/component/utils/metadataUtil.js.map +1 -1
- package/build/component/utils.d.ts +2 -1
- package/build/component/utils.d.ts.map +1 -1
- package/build/component/utils.js +43 -1
- package/build/component/utils.js.map +1 -1
- package/build/core/FxCore.d.ts +3 -3
- package/build/core/FxCore.d.ts.map +1 -1
- package/build/core/FxCore.js +82 -17
- package/build/core/FxCore.js.map +1 -1
- package/build/error/common.js +1 -1
- package/build/error/common.js.map +1 -1
- package/build/error/script.d.ts +2 -2
- package/build/error/script.d.ts.map +1 -1
- package/build/error/script.js +6 -6
- package/build/error/script.js.map +1 -1
- package/build/index.d.ts +3 -0
- package/build/index.d.ts.map +1 -1
- package/build/index.js +5 -1
- package/build/index.js.map +1 -1
- package/build/question/constants.d.ts.map +1 -1
- package/build/question/constants.js +6 -1
- package/build/question/constants.js.map +1 -1
- package/build/question/create.d.ts +17 -8
- package/build/question/create.d.ts.map +1 -1
- package/build/question/create.js +323 -236
- package/build/question/create.js.map +1 -1
- package/build/question/inputs/CreateProjectInputs.d.ts +8 -6
- package/build/question/inputs/CreateProjectInputs.d.ts.map +1 -1
- package/build/question/options/CreateProjectOptions.d.ts.map +1 -1
- package/build/question/options/CreateProjectOptions.js +37 -11
- package/build/question/options/CreateProjectOptions.js.map +1 -1
- package/build/question/questionNames.d.ts +1 -1
- package/build/question/questionNames.d.ts.map +1 -1
- package/build/question/questionNames.js +1 -1
- package/build/question/questionNames.js.map +1 -1
- package/package.json +11 -6
- package/resource/package.nls.json +96 -46
- package/resource/yaml-schema/v1.5/yaml.schema.json +1663 -0
- package/resource/yaml-schema/yaml.schema.json +77 -2
- 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/generator/officeAddin/config/projectsJsonData.d.ts +0 -26
- package/build/component/generator/officeAddin/config/projectsJsonData.d.ts.map +0 -1
- package/build/component/generator/officeAddin/config/projectsJsonData.js +0 -165
- package/build/component/generator/officeAddin/config/projectsJsonData.js.map +0 -1
|
@@ -2,32 +2,39 @@
|
|
|
2
2
|
// Copyright (c) Microsoft Corporation.
|
|
3
3
|
// Licensed under the MIT license.
|
|
4
4
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
|
-
exports.OfficeAddinGenerator = void 0;
|
|
5
|
+
exports.OfficeAddinGeneratorNew = exports.getHost = exports.OfficeAddinGenerator = void 0;
|
|
6
6
|
const tslib_1 = require("tslib");
|
|
7
7
|
/**
|
|
8
8
|
* @author yefuwang@microsoft.com
|
|
9
9
|
*/
|
|
10
|
+
const lib_1 = require("@feathersjs/hooks/lib");
|
|
10
11
|
const teamsfx_api_1 = require("@microsoft/teamsfx-api");
|
|
11
|
-
const path_1 = require("path");
|
|
12
|
-
const helperMethods_1 = require("./helperMethods");
|
|
13
|
-
const office_addin_manifest_1 = require("office-addin-manifest");
|
|
14
|
-
const projectsJsonData_1 = tslib_1.__importDefault(require("./config/projectsJsonData"));
|
|
15
12
|
const childProcess = tslib_1.__importStar(require("child_process"));
|
|
16
|
-
const
|
|
17
|
-
const lodash_1 = tslib_1.__importDefault(require("lodash"));
|
|
18
|
-
const lib_1 = require("@feathersjs/hooks/lib");
|
|
19
|
-
const actionExecutionMW_1 = require("../../middleware/actionExecutionMW");
|
|
20
|
-
const generator_1 = require("../generator");
|
|
13
|
+
const office_addin_manifest_1 = require("office-addin-manifest");
|
|
21
14
|
const office_addin_project_1 = require("office-addin-project");
|
|
22
|
-
const
|
|
23
|
-
const
|
|
15
|
+
const path_1 = require("path");
|
|
16
|
+
const util_1 = require("util");
|
|
24
17
|
const localizeUtils_1 = require("../../../common/localizeUtils");
|
|
25
18
|
const error_1 = require("../../../error");
|
|
26
|
-
const
|
|
19
|
+
const create_1 = require("../../../question/create");
|
|
20
|
+
const questionNames_1 = require("../../../question/questionNames");
|
|
21
|
+
const actionExecutionMW_1 = require("../../middleware/actionExecutionMW");
|
|
22
|
+
const generator_1 = require("../generator");
|
|
23
|
+
const projectConfig_1 = require("../officeXMLAddin/projectConfig");
|
|
24
|
+
const helperMethods_1 = require("./helperMethods");
|
|
25
|
+
const lodash_1 = require("lodash");
|
|
26
|
+
const utils_1 = require("../utils");
|
|
27
|
+
const templateGenerator_1 = require("../templates/templateGenerator");
|
|
28
|
+
const utils_2 = require("../../utils");
|
|
27
29
|
const componentName = "office-addin";
|
|
28
30
|
const telemetryEvent = "generate";
|
|
29
31
|
const templateName = "office-addin";
|
|
30
32
|
const templateNameForWXPO = "office-json-addin";
|
|
33
|
+
/**
|
|
34
|
+
* case 1: project-type=office-xml-addin-type AND addin-host=outlook
|
|
35
|
+
* case 2: project-type=office-addin-type (addin-host=undefined)
|
|
36
|
+
* case 3: project-type=outlook-addin-type (addin-host=undefined)
|
|
37
|
+
*/
|
|
31
38
|
class OfficeAddinGenerator {
|
|
32
39
|
static async generate(context, inputs, destinationPath) {
|
|
33
40
|
const result = await OfficeAddinGenerator.doScaffolding(context, inputs, destinationPath);
|
|
@@ -35,8 +42,11 @@ class OfficeAddinGenerator {
|
|
|
35
42
|
return teamsfx_api_1.err(result.error);
|
|
36
43
|
}
|
|
37
44
|
// If lang is undefined, it means the project is created from a folder.
|
|
38
|
-
const lang = inputs[questionNames_1.QuestionNames.ProgrammingLanguage];
|
|
39
|
-
const langKey =
|
|
45
|
+
const lang = lodash_1.toLower(inputs[questionNames_1.QuestionNames.ProgrammingLanguage]);
|
|
46
|
+
const langKey = inputs[questionNames_1.QuestionNames.Capabilities] === create_1.CapabilityOptions.outlookAddinImport().id ||
|
|
47
|
+
inputs[questionNames_1.QuestionNames.Capabilities] === create_1.CapabilityOptions.officeAddinImport().id
|
|
48
|
+
? "ts"
|
|
49
|
+
: utils_1.convertToLangKey(lang);
|
|
40
50
|
const templateRes = await generator_1.Generator.generateTemplate(context, destinationPath, inputs[questionNames_1.QuestionNames.ProjectType] === create_1.ProjectTypeOptions.officeAddin().id
|
|
41
51
|
? templateNameForWXPO
|
|
42
52
|
: templateName, langKey);
|
|
@@ -48,43 +58,54 @@ class OfficeAddinGenerator {
|
|
|
48
58
|
return util_1.promisify(childProcess.exec)(cmdLine);
|
|
49
59
|
}
|
|
50
60
|
static async doScaffolding(context, inputs, destinationPath) {
|
|
51
|
-
const template = create_1.getTemplate(inputs);
|
|
52
61
|
const name = inputs[questionNames_1.QuestionNames.AppName];
|
|
53
62
|
const addinRoot = destinationPath;
|
|
54
63
|
const fromFolder = inputs[questionNames_1.QuestionNames.OfficeAddinFolder];
|
|
55
|
-
const language = inputs[questionNames_1.QuestionNames.ProgrammingLanguage];
|
|
56
|
-
const
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
64
|
+
const language = lodash_1.toLower(inputs[questionNames_1.QuestionNames.ProgrammingLanguage]);
|
|
65
|
+
const projectType = inputs[questionNames_1.QuestionNames.ProjectType];
|
|
66
|
+
const capability = inputs[questionNames_1.QuestionNames.Capabilities];
|
|
67
|
+
const inputHost = inputs[questionNames_1.QuestionNames.OfficeAddinHost];
|
|
68
|
+
let host = inputHost;
|
|
69
|
+
if (projectType === create_1.ProjectTypeOptions.outlookAddin().id ||
|
|
70
|
+
(projectType === create_1.ProjectTypeOptions.officeXMLAddin().id &&
|
|
71
|
+
inputHost === create_1.OfficeAddinHostOptions.outlook().id)) {
|
|
72
|
+
host = "outlook";
|
|
73
|
+
}
|
|
74
|
+
else if (projectType === create_1.ProjectTypeOptions.officeAddin().id) {
|
|
75
|
+
if (capability === "json-taskpane") {
|
|
76
|
+
host = "wxpo"; // wxpo - support word, excel, powerpoint, outlook
|
|
77
|
+
}
|
|
78
|
+
else if (capability === create_1.CapabilityOptions.officeContentAddin().id) {
|
|
79
|
+
host = "xp"; // content add-in support excel, powerpoint
|
|
80
|
+
}
|
|
81
|
+
}
|
|
61
82
|
const workingDir = process.cwd();
|
|
62
|
-
const
|
|
83
|
+
const importProgressStr = projectType === create_1.ProjectTypeOptions.officeAddin().id
|
|
84
|
+
? localizeUtils_1.getLocalizedString("core.generator.officeAddin.importOfficeProject.title")
|
|
85
|
+
: localizeUtils_1.getLocalizedString("core.generator.officeAddin.importProject.title");
|
|
86
|
+
const importProgress = context.userInteraction.createProgressBar(importProgressStr, 3);
|
|
63
87
|
process.chdir(addinRoot);
|
|
64
88
|
try {
|
|
65
89
|
if (!fromFolder) {
|
|
66
90
|
// from template
|
|
67
|
-
const
|
|
68
|
-
const
|
|
69
|
-
const
|
|
70
|
-
const projectLink = isOfficeAddin
|
|
71
|
-
? jsonData.getProjectDownloadLinkNew(template, language, framework)
|
|
72
|
-
: jsonData.getProjectDownloadLink(template, language);
|
|
91
|
+
const framework = create_1.getOfficeAddinFramework(inputs);
|
|
92
|
+
const templateConfig = projectConfig_1.getOfficeAddinTemplateConfig(projectType, inputs[questionNames_1.QuestionNames.OfficeAddinHost]);
|
|
93
|
+
const projectLink = templateConfig[capability].framework[framework][language];
|
|
73
94
|
// Copy project template files from project repository
|
|
74
95
|
if (projectLink) {
|
|
75
|
-
await
|
|
96
|
+
const fetchRes = await utils_2.fetchAndUnzip("office-addin-generator", projectLink, addinRoot);
|
|
97
|
+
if (fetchRes.isErr()) {
|
|
98
|
+
return teamsfx_api_1.err(fetchRes.error);
|
|
99
|
+
}
|
|
100
|
+
let cmdLine = ""; // Call 'convert-to-single-host' npm script in generated project, passing in host parameter
|
|
76
101
|
if (inputs[questionNames_1.QuestionNames.ProjectType] === create_1.ProjectTypeOptions.officeAddin().id) {
|
|
77
|
-
|
|
78
|
-
const cmdLine = `npm run convert-to-single-host --if-present -- ${lodash_1.default.toLower("wxpo" // support word, excel, powerpoint, outlook
|
|
79
|
-
)} ${"json"}`;
|
|
80
|
-
await OfficeAddinGenerator.childProcessExec(cmdLine);
|
|
102
|
+
cmdLine = `npm run convert-to-single-host --if-present -- ${host} json`;
|
|
81
103
|
}
|
|
82
104
|
else {
|
|
83
|
-
|
|
84
|
-
const cmdLine = `npm run convert-to-single-host --if-present -- ${lodash_1.default.toLower(host)}`;
|
|
85
|
-
await OfficeAddinGenerator.childProcessExec(cmdLine);
|
|
105
|
+
cmdLine = `npm run convert-to-single-host --if-present -- ${host}`;
|
|
86
106
|
}
|
|
87
|
-
|
|
107
|
+
await OfficeAddinGenerator.childProcessExec(cmdLine);
|
|
108
|
+
const manifestPath = templateConfig[capability].manifestPath;
|
|
88
109
|
// modify manifest guid and DisplayName
|
|
89
110
|
await office_addin_manifest_1.OfficeAddinManifest.modifyManifestFile(`${path_1.join(addinRoot, manifestPath)}`, "random", `${name}`);
|
|
90
111
|
await helperMethods_1.HelperMethods.moveManifestLocation(addinRoot, manifestPath);
|
|
@@ -138,19 +159,51 @@ async function getHost(addinManifestPath) {
|
|
|
138
159
|
const addinManifest = await teamsfx_api_1.ManifestUtil.loadFromPath(addinManifestPath);
|
|
139
160
|
let host = "Outlook";
|
|
140
161
|
switch ((_c = (_b = (_a = addinManifest.extensions) === null || _a === void 0 ? void 0 : _a[0].requirements) === null || _b === void 0 ? void 0 : _b.scopes) === null || _c === void 0 ? void 0 : _c[0]) {
|
|
141
|
-
|
|
142
|
-
|
|
162
|
+
case "document":
|
|
163
|
+
host = "Word";
|
|
164
|
+
break;
|
|
143
165
|
case "mail":
|
|
144
166
|
host = "Outlook";
|
|
167
|
+
break;
|
|
145
168
|
// case "notebook":
|
|
146
169
|
// host = "OneNote";
|
|
147
|
-
|
|
148
|
-
|
|
170
|
+
case "presentation":
|
|
171
|
+
host = "PowerPoint";
|
|
172
|
+
break;
|
|
149
173
|
// case "project":
|
|
150
174
|
// host = "Project";
|
|
151
|
-
|
|
152
|
-
|
|
175
|
+
case "workbook":
|
|
176
|
+
host = "Excel";
|
|
177
|
+
break;
|
|
153
178
|
}
|
|
154
179
|
return host;
|
|
155
180
|
}
|
|
181
|
+
exports.getHost = getHost;
|
|
182
|
+
class OfficeAddinGeneratorNew extends templateGenerator_1.DefaultTemplateGenerator {
|
|
183
|
+
constructor() {
|
|
184
|
+
super(...arguments);
|
|
185
|
+
this.componentName = "office-addin-generator";
|
|
186
|
+
}
|
|
187
|
+
// activation condition
|
|
188
|
+
activate(context, inputs) {
|
|
189
|
+
const projectType = inputs[questionNames_1.QuestionNames.ProjectType];
|
|
190
|
+
return create_1.ProjectTypeOptions.officeAddinAllIds().includes(projectType);
|
|
191
|
+
}
|
|
192
|
+
async getTemplateInfos(context, inputs, actionContext) {
|
|
193
|
+
const projectType = inputs[questionNames_1.QuestionNames.ProjectType];
|
|
194
|
+
const tplName = projectType === create_1.ProjectTypeOptions.officeAddin().id ? templateNameForWXPO : templateName;
|
|
195
|
+
let lang = lodash_1.toLower(inputs[questionNames_1.QuestionNames.ProgrammingLanguage]);
|
|
196
|
+
lang =
|
|
197
|
+
inputs[questionNames_1.QuestionNames.Capabilities] === create_1.CapabilityOptions.outlookAddinImport().id ||
|
|
198
|
+
inputs[questionNames_1.QuestionNames.Capabilities] === create_1.CapabilityOptions.officeAddinImport().id
|
|
199
|
+
? create_1.ProgrammingLanguage.TS
|
|
200
|
+
: lang;
|
|
201
|
+
const replaceMap = {};
|
|
202
|
+
return Promise.resolve(teamsfx_api_1.ok([{ templateName: tplName, language: lang, replaceMap }]));
|
|
203
|
+
}
|
|
204
|
+
async post(context, inputs, destinationPath, actionContext) {
|
|
205
|
+
return await OfficeAddinGenerator.doScaffolding(context, inputs, destinationPath);
|
|
206
|
+
}
|
|
207
|
+
}
|
|
208
|
+
exports.OfficeAddinGeneratorNew = OfficeAddinGeneratorNew;
|
|
156
209
|
//# sourceMappingURL=generator.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../src/component/generator/officeAddin/generator.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;;AAElC;;GAEG;AAEH,wDASgC;AAChC
|
|
1
|
+
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../src/component/generator/officeAddin/generator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,4 @@
|
|
|
1
1
|
export declare class HelperMethods {
|
|
2
|
-
static downloadProjectTemplateZipFile(projectFolder: string, projectRepo: string): Promise<void>;
|
|
3
|
-
static unzipProjectTemplate(projectFolder: string): Promise<void>;
|
|
4
|
-
static moveUnzippedFiles(projectFolder: string): void;
|
|
5
2
|
static copyAddinFiles(fromFolder: string, toFolder: string): void;
|
|
6
3
|
static updateManifest(projectRoot: string, addinManifestPath: string): Promise<void>;
|
|
7
4
|
static moveManifestLocation(projectRoot: string, manifestRelativePath: string): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helperMethods.d.ts","sourceRoot":"","sources":["../../../../src/component/generator/officeAddin/helperMethods.ts"],"names":[],"mappings":"AAiBA,qBAAa,aAAa;
|
|
1
|
+
{"version":3,"file":"helperMethods.d.ts","sourceRoot":"","sources":["../../../../src/component/generator/officeAddin/helperMethods.ts"],"names":[],"mappings":"AAiBA,qBAAa,aAAa;IACxB,MAAM,CAAC,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;WAMpD,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;WAwB7E,oBAAoB,CAC/B,WAAW,EAAE,MAAM,EACnB,oBAAoB,EAAE,MAAM,GAC3B,OAAO,CAAC,IAAI,CAAC;CA2CjB;AAED,wBAAgB,iBAAiB,CAAC,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,GAAG,IAAI,CAKxF"}
|
|
@@ -8,77 +8,12 @@ const tslib_1 = require("tslib");
|
|
|
8
8
|
* @author darrmill@microsoft.com, yefuwang@microsoft.com
|
|
9
9
|
*/
|
|
10
10
|
const teamsfx_api_1 = require("@microsoft/teamsfx-api");
|
|
11
|
-
const fs_1 = tslib_1.__importDefault(require("fs"));
|
|
12
11
|
const fs_extra_1 = tslib_1.__importDefault(require("fs-extra"));
|
|
13
12
|
const path = tslib_1.__importStar(require("path"));
|
|
14
|
-
const unzip = tslib_1.__importStar(require("unzipper"));
|
|
15
13
|
const ManifestUtils_1 = require("../../driver/teamsApp/utils/ManifestUtils");
|
|
16
|
-
const node_fetch_1 = tslib_1.__importDefault(require("node-fetch"));
|
|
17
14
|
const common_1 = require("../../../error/common");
|
|
18
15
|
const zipFile = "project.zip";
|
|
19
16
|
class HelperMethods {
|
|
20
|
-
static async downloadProjectTemplateZipFile(projectFolder, projectRepo) {
|
|
21
|
-
const projectTemplateZipFile = projectRepo;
|
|
22
|
-
let response;
|
|
23
|
-
try {
|
|
24
|
-
response = await node_fetch_1.default(projectTemplateZipFile, { method: "GET" });
|
|
25
|
-
}
|
|
26
|
-
catch (e) {
|
|
27
|
-
throw new common_1.AccessGithubError(projectTemplateZipFile, "OfficeAddinGenerator", e);
|
|
28
|
-
}
|
|
29
|
-
return new Promise((resolve, reject) => {
|
|
30
|
-
if (response.body) {
|
|
31
|
-
response.body
|
|
32
|
-
.pipe(fs_1.default.createWriteStream(path.resolve(projectFolder, zipFile)))
|
|
33
|
-
.on("error", (err) => {
|
|
34
|
-
reject(new common_1.AccessGithubError(projectTemplateZipFile, "OfficeAddinGenerator", err));
|
|
35
|
-
})
|
|
36
|
-
.on("close", () => {
|
|
37
|
-
HelperMethods.unzipProjectTemplate(projectFolder)
|
|
38
|
-
.then(() => {
|
|
39
|
-
resolve();
|
|
40
|
-
})
|
|
41
|
-
.catch((err) => {
|
|
42
|
-
reject(err);
|
|
43
|
-
});
|
|
44
|
-
});
|
|
45
|
-
}
|
|
46
|
-
else {
|
|
47
|
-
reject(new common_1.AccessGithubError(projectTemplateZipFile, "OfficeAddinGenerator", new Error(`Response body of GET "${projectTemplateZipFile}" is null.`)));
|
|
48
|
-
}
|
|
49
|
-
});
|
|
50
|
-
}
|
|
51
|
-
static async unzipProjectTemplate(projectFolder) {
|
|
52
|
-
return new Promise((resolve, reject) => {
|
|
53
|
-
// TODO: Verify file exists
|
|
54
|
-
const readStream = fs_1.default.createReadStream(path.resolve(`${projectFolder}/${zipFile}`));
|
|
55
|
-
readStream
|
|
56
|
-
.pipe(unzip.Extract({ path: projectFolder }))
|
|
57
|
-
.on("error", function (err) {
|
|
58
|
-
unzipErrorHandler(projectFolder, reject, err);
|
|
59
|
-
})
|
|
60
|
-
.on("close", () => {
|
|
61
|
-
HelperMethods.moveUnzippedFiles(projectFolder);
|
|
62
|
-
resolve();
|
|
63
|
-
});
|
|
64
|
-
});
|
|
65
|
-
}
|
|
66
|
-
static moveUnzippedFiles(projectFolder) {
|
|
67
|
-
// delete original zip file
|
|
68
|
-
const zipFilePath = path.resolve(`${projectFolder}/${zipFile}`);
|
|
69
|
-
if (fs_1.default.existsSync(zipFilePath)) {
|
|
70
|
-
fs_1.default.unlinkSync(zipFilePath);
|
|
71
|
-
}
|
|
72
|
-
// get path to unzipped folder
|
|
73
|
-
const unzippedFolder = fs_1.default.readdirSync(projectFolder).filter(function (file) {
|
|
74
|
-
return fs_1.default.statSync(`${projectFolder}/${file}`).isDirectory();
|
|
75
|
-
});
|
|
76
|
-
// construct paths to move files out of unzipped folder into project root folder
|
|
77
|
-
const fromFolder = path.resolve(`${projectFolder}/${unzippedFolder[0]}`);
|
|
78
|
-
HelperMethods.copyAddinFiles(fromFolder, projectFolder);
|
|
79
|
-
// delete project zipped folder
|
|
80
|
-
fs_1.default.rmSync(fromFolder, { recursive: true, force: true });
|
|
81
|
-
}
|
|
82
17
|
static copyAddinFiles(fromFolder, toFolder) {
|
|
83
18
|
fs_extra_1.default.copySync(fromFolder, toFolder, {
|
|
84
19
|
filter: (path) => !path.includes("node_modules"),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helperMethods.js","sourceRoot":"","sources":["../../../../src/component/generator/officeAddin/helperMethods.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;;AAElC;;GAEG;AACH,wDAAkE;
|
|
1
|
+
{"version":3,"file":"helperMethods.js","sourceRoot":"","sources":["../../../../src/component/generator/officeAddin/helperMethods.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,10 @@
|
|
|
1
|
-
import { FxError, Inputs, Result
|
|
1
|
+
import { Context, FxError, Inputs, Result } from "@microsoft/teamsfx-api";
|
|
2
|
+
import { ActionContext } from "../../middleware/actionExecutionMW";
|
|
3
|
+
/**
|
|
4
|
+
* project-type=office-xml-addin-type addin-host!==outlook
|
|
5
|
+
*/
|
|
2
6
|
export declare class OfficeXMLAddinGenerator {
|
|
3
|
-
static generate(context: Context, inputs: Inputs, destinationPath: string): Promise<Result<undefined, FxError>>;
|
|
7
|
+
static generate(context: Context, inputs: Inputs, destinationPath: string, actionContext?: ActionContext): Promise<Result<undefined, FxError>>;
|
|
4
8
|
static childProcessExec(cmdLine: string): Promise<{
|
|
5
9
|
stdout: string;
|
|
6
10
|
stderr: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generator.d.ts","sourceRoot":"","sources":["../../../../src/component/generator/officeXMLAddin/generator.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAW,OAAO,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"generator.d.ts","sourceRoot":"","sources":["../../../../src/component/generator/officeXMLAddin/generator.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAW,MAAM,wBAAwB,CAAC;AASnF,OAAO,EAAqB,aAAa,EAAE,MAAM,oCAAoC,CAAC;AAmBtF;;GAEG;AACH,qBAAa,uBAAuB;WASrB,QAAQ,CACnB,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,MAAM,EACd,eAAe,EAAE,MAAM,EACvB,aAAa,CAAC,EAAE,aAAa,GAC5B,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;WAgGlB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC;QAC7D,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;CAGH"}
|
|
@@ -10,55 +10,75 @@ const tslib_1 = require("tslib");
|
|
|
10
10
|
const lib_1 = require("@feathersjs/hooks/lib");
|
|
11
11
|
const teamsfx_api_1 = require("@microsoft/teamsfx-api");
|
|
12
12
|
const childProcess = tslib_1.__importStar(require("child_process"));
|
|
13
|
-
const lodash_1 = tslib_1.
|
|
13
|
+
const lodash_1 = tslib_1.__importStar(require("lodash"));
|
|
14
14
|
const office_addin_manifest_1 = require("office-addin-manifest");
|
|
15
15
|
const path_1 = require("path");
|
|
16
16
|
const util_1 = require("util");
|
|
17
|
-
const
|
|
18
|
-
const helperMethods_1 = require("../officeAddin/helperMethods");
|
|
19
|
-
const actionExecutionMW_1 = require("../../middleware/actionExecutionMW");
|
|
17
|
+
const localizeUtils_1 = require("../../../common/localizeUtils");
|
|
20
18
|
const error_1 = require("../../../error");
|
|
21
|
-
const create_1 = require("../../../question/create");
|
|
22
19
|
const questionNames_1 = require("../../../question/questionNames");
|
|
20
|
+
const actionExecutionMW_1 = require("../../middleware/actionExecutionMW");
|
|
21
|
+
const generator_1 = require("../generator");
|
|
23
22
|
const projectConfig_1 = require("./projectConfig");
|
|
24
|
-
const
|
|
23
|
+
const utils_1 = require("../utils");
|
|
24
|
+
const utils_2 = require("../../utils");
|
|
25
25
|
const COMPONENT_NAME = "office-xml-addin";
|
|
26
26
|
const TELEMETRY_EVENT = "generate";
|
|
27
27
|
const TEMPLATE_BASE = "office-xml-addin";
|
|
28
|
+
const TEMPLATE_COMMON_NAME = "office-xml-addin-common";
|
|
29
|
+
const TEMPLATE_COMMON_LANG = "common";
|
|
30
|
+
/**
|
|
31
|
+
* project-type=office-xml-addin-type addin-host!==outlook
|
|
32
|
+
*/
|
|
28
33
|
class OfficeXMLAddinGenerator {
|
|
29
|
-
static async generate(context, inputs, destinationPath) {
|
|
30
|
-
const host = inputs[questionNames_1.QuestionNames.
|
|
31
|
-
const
|
|
32
|
-
const lang = inputs[questionNames_1.QuestionNames.ProgrammingLanguage]
|
|
34
|
+
static async generate(context, inputs, destinationPath, actionContext) {
|
|
35
|
+
const host = inputs[questionNames_1.QuestionNames.OfficeAddinHost];
|
|
36
|
+
const capability = inputs[questionNames_1.QuestionNames.Capabilities];
|
|
37
|
+
const lang = lodash_1.default.toLower(inputs[questionNames_1.QuestionNames.ProgrammingLanguage]);
|
|
38
|
+
const langKey = utils_1.convertToLangKey(lang);
|
|
33
39
|
const appName = inputs[questionNames_1.QuestionNames.AppName];
|
|
34
|
-
const
|
|
35
|
-
const
|
|
40
|
+
const projectType = inputs[questionNames_1.QuestionNames.ProjectType];
|
|
41
|
+
const templateConfig = projectConfig_1.getOfficeAddinTemplateConfig(projectType, host);
|
|
42
|
+
const templateName = templateConfig[capability].localTemplate;
|
|
43
|
+
const projectLink = templateConfig[capability].framework["default"][lang];
|
|
36
44
|
const workingDir = process.cwd();
|
|
37
45
|
const progressBar = context.userInteraction.createProgressBar(localizeUtils_1.getLocalizedString("core.createProjectQuestion.officeXMLAddin.bar.title"), 1);
|
|
46
|
+
lodash_1.merge(actionContext === null || actionContext === void 0 ? void 0 : actionContext.telemetryProps, {
|
|
47
|
+
["office-xml-addin-host" /* host */]: host,
|
|
48
|
+
["office-xml-addin-project" /* project */]: capability,
|
|
49
|
+
["office-xml-addin-lang" /* lang */]: lang,
|
|
50
|
+
});
|
|
38
51
|
try {
|
|
39
52
|
process.chdir(destinationPath);
|
|
40
53
|
await progressBar.start();
|
|
41
54
|
await progressBar.next(localizeUtils_1.getLocalizedString("core.createProjectQuestion.officeXMLAddin.bar.detail"));
|
|
42
|
-
if (!!
|
|
55
|
+
if (!!projectLink) {
|
|
43
56
|
// [Condition]: Project have remote repo (not manifest-only proj)
|
|
44
57
|
// -> Step: Download the project from GitHub
|
|
45
|
-
await
|
|
58
|
+
const fetchRes = await utils_2.fetchAndUnzip("office-xml-addin-generator", projectLink, destinationPath);
|
|
59
|
+
if (fetchRes.isErr()) {
|
|
60
|
+
return teamsfx_api_1.err(fetchRes.error);
|
|
61
|
+
}
|
|
46
62
|
// -> Step: Convert to single Host
|
|
47
63
|
await OfficeXMLAddinGenerator.childProcessExec(`npm run convert-to-single-host --if-present -- ${lodash_1.default.toLower(host)}`);
|
|
48
64
|
}
|
|
49
65
|
else {
|
|
50
66
|
// [Condition]: Manifest Only
|
|
51
67
|
// -> Step: Copy proj files for manifest-only project
|
|
52
|
-
const getManifestOnlyProjectTemplateRes = await generator_1.Generator.generateTemplate(context, destinationPath, `${TEMPLATE_BASE}-manifest-only`,
|
|
68
|
+
const getManifestOnlyProjectTemplateRes = await generator_1.Generator.generateTemplate(context, destinationPath, `${TEMPLATE_BASE}-manifest-only`, langKey);
|
|
53
69
|
if (getManifestOnlyProjectTemplateRes.isErr())
|
|
54
|
-
|
|
70
|
+
throw teamsfx_api_1.err(getManifestOnlyProjectTemplateRes.error);
|
|
55
71
|
}
|
|
56
72
|
// -> Common Step: Copy the README (or with manifest for manifest-only proj)
|
|
57
|
-
const getReadmeTemplateRes = await generator_1.Generator.generateTemplate(context, destinationPath, `${TEMPLATE_BASE}-${templateName}`,
|
|
73
|
+
const getReadmeTemplateRes = await generator_1.Generator.generateTemplate(context, destinationPath, `${TEMPLATE_BASE}-${templateName}`, langKey);
|
|
58
74
|
if (getReadmeTemplateRes.isErr())
|
|
59
|
-
|
|
75
|
+
throw teamsfx_api_1.err(getReadmeTemplateRes.error);
|
|
60
76
|
// -> Common Step: Modify the Manifest
|
|
61
77
|
await office_addin_manifest_1.OfficeAddinManifest.modifyManifestFile(`${path_1.join(destinationPath, "manifest.xml")}`, "random", `${appName}`);
|
|
78
|
+
// -> Common Step: Generate OfficeXMLAddin specific `teamsapp.yml`
|
|
79
|
+
const generateOfficeYMLRes = await generator_1.Generator.generateTemplate(context, destinationPath, TEMPLATE_COMMON_NAME, TEMPLATE_COMMON_LANG);
|
|
80
|
+
if (generateOfficeYMLRes.isErr())
|
|
81
|
+
throw teamsfx_api_1.err(generateOfficeYMLRes.error);
|
|
62
82
|
process.chdir(workingDir);
|
|
63
83
|
await progressBar.end(true, true);
|
|
64
84
|
return teamsfx_api_1.ok(undefined);
|
|
@@ -83,7 +103,7 @@ tslib_1.__decorate([
|
|
|
83
103
|
}),
|
|
84
104
|
]),
|
|
85
105
|
tslib_1.__metadata("design:type", Function),
|
|
86
|
-
tslib_1.__metadata("design:paramtypes", [Object, Object, String]),
|
|
106
|
+
tslib_1.__metadata("design:paramtypes", [Object, Object, String, Object]),
|
|
87
107
|
tslib_1.__metadata("design:returntype", Promise)
|
|
88
108
|
], OfficeXMLAddinGenerator, "generate", null);
|
|
89
109
|
exports.OfficeXMLAddinGenerator = OfficeXMLAddinGenerator;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../src/component/generator/officeXMLAddin/generator.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;;AAElC;;GAEG;AAEH,+CAA8C;AAC9C,wDAAmF;AACnF,oEAA8C;AAC9C,
|
|
1
|
+
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../src/component/generator/officeXMLAddin/generator.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;;AAElC;;GAEG;AAEH,+CAA8C;AAC9C,wDAAmF;AACnF,oEAA8C;AAC9C,yDAAkC;AAClC,iEAA4D;AAC5D,+BAA4B;AAC5B,+BAAiC;AACjC,iEAAmE;AACnE,0CAA+C;AAC/C,mEAAgE;AAChE,0EAAsF;AACtF,4CAAyC;AAEzC,mDAA+D;AAC/D,oCAA4C;AAC5C,uCAA4C;AAE5C,MAAM,cAAc,GAAG,kBAAkB,CAAC;AAC1C,MAAM,eAAe,GAAG,UAAU,CAAC;AACnC,MAAM,aAAa,GAAG,kBAAkB,CAAC;AACzC,MAAM,oBAAoB,GAAG,yBAAyB,CAAC;AACvD,MAAM,oBAAoB,GAAG,QAAQ,CAAC;AAQtC;;GAEG;AACH,MAAa,uBAAuB;IASlC,MAAM,CAAC,KAAK,CAAC,QAAQ,CACnB,OAAgB,EAChB,MAAc,EACd,eAAuB,EACvB,aAA6B;QAE7B,MAAM,IAAI,GAAG,MAAM,CAAC,6BAAa,CAAC,eAAe,CAAW,CAAC;QAC7D,MAAM,UAAU,GAAG,MAAM,CAAC,6BAAa,CAAC,YAAY,CAAC,CAAC;QACtD,MAAM,IAAI,GAAG,gBAAC,CAAC,OAAO,CAAC,MAAM,CAAC,6BAAa,CAAC,mBAAmB,CAAC,CAEhD,CAAC;QACjB,MAAM,OAAO,GAAG,wBAAgB,CAAC,IAAI,CAAC,CAAC;QACvC,MAAM,OAAO,GAAG,MAAM,CAAC,6BAAa,CAAC,OAAO,CAAW,CAAC;QACxD,MAAM,WAAW,GAAG,MAAM,CAAC,6BAAa,CAAC,WAAW,CAAC,CAAC;QACtD,MAAM,cAAc,GAAG,4CAA4B,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;QACvE,MAAM,YAAY,GAAG,cAAc,CAAC,UAAU,CAAC,CAAC,aAAa,CAAC;QAC9D,MAAM,WAAW,GAAG,cAAc,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC;QAC1E,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;QACjC,MAAM,WAAW,GAAG,OAAO,CAAC,eAAe,CAAC,iBAAiB,CAC3D,kCAAkB,CAAC,qDAAqD,CAAC,EACzE,CAAC,CACF,CAAC;QAEF,cAAK,CAAC,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,cAAc,EAAE;YACnC,oCAAwC,EAAE,IAAI;YAC9C,0CAA2C,EAAE,UAAU;YACvD,oCAAwC,EAAE,IAAI;SAC/C,CAAC,CAAC;QAEH,IAAI;YACF,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;YAC/B,MAAM,WAAW,CAAC,KAAK,EAAE,CAAC;YAC1B,MAAM,WAAW,CAAC,IAAI,CACpB,kCAAkB,CAAC,sDAAsD,CAAC,CAC3E,CAAC;YAEF,IAAI,CAAC,CAAC,WAAW,EAAE;gBACjB,iEAAiE;gBAEjE,4CAA4C;gBAC5C,MAAM,QAAQ,GAAG,MAAM,qBAAa,CAClC,4BAA4B,EAC5B,WAAW,EACX,eAAe,CAChB,CAAC;gBACF,IAAI,QAAQ,CAAC,KAAK,EAAE,EAAE;oBACpB,OAAO,iBAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;iBAC5B;gBACD,kCAAkC;gBAClC,MAAM,uBAAuB,CAAC,gBAAgB,CAC5C,kDAAkD,gBAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CACpE,CAAC;aACH;iBAAM;gBACL,6BAA6B;gBAE7B,qDAAqD;gBACrD,MAAM,iCAAiC,GAAG,MAAM,qBAAS,CAAC,gBAAgB,CACxE,OAAO,EACP,eAAe,EACf,GAAG,aAAa,gBAAgB,EAChC,OAAO,CACR,CAAC;gBACF,IAAI,iCAAiC,CAAC,KAAK,EAAE;oBAC3C,MAAM,iBAAG,CAAC,iCAAiC,CAAC,KAAK,CAAC,CAAC;aACtD;YAED,4EAA4E;YAC5E,MAAM,oBAAoB,GAAG,MAAM,qBAAS,CAAC,gBAAgB,CAC3D,OAAO,EACP,eAAe,EACf,GAAG,aAAa,IAAI,YAAY,EAAE,EAClC,OAAO,CACR,CAAC;YACF,IAAI,oBAAoB,CAAC,KAAK,EAAE;gBAAE,MAAM,iBAAG,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC;YAExE,sCAAsC;YACtC,MAAM,2CAAmB,CAAC,kBAAkB,CAC1C,GAAG,WAAI,CAAC,eAAe,EAAE,cAAc,CAAC,EAAE,EAC1C,QAAQ,EACR,GAAG,OAAO,EAAE,CACb,CAAC;YAEF,kEAAkE;YAClE,MAAM,oBAAoB,GAAG,MAAM,qBAAS,CAAC,gBAAgB,CAC3D,OAAO,EACP,eAAe,EACf,oBAAoB,EACpB,oBAAoB,CACrB,CAAC;YACF,IAAI,oBAAoB,CAAC,KAAK,EAAE;gBAAE,MAAM,iBAAG,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC;YAExE,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YAC1B,MAAM,WAAW,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YAClC,OAAO,gBAAE,CAAC,SAAS,CAAC,CAAC;SACtB;QAAC,OAAO,CAAC,EAAE;YACV,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YAC1B,MAAM,WAAW,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;YACnC,OAAO,iBAAG,CAAC,qBAAa,CAAC,CAAU,CAAC,CAAC,CAAC;SACvC;IACH,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,OAAe;QAIlD,OAAO,gBAAS,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC;IAC/C,CAAC;CACF;AA3GC;IARC,WAAK,CAAC;QACL,qCAAiB,CAAC;YAChB,eAAe,EAAE,IAAI;YACrB,sBAAsB,EAAE,cAAc;YACtC,kBAAkB,EAAE,eAAe;YACnC,WAAW,EAAE,cAAc;SAC5B,CAAC;KACH,CAAC;;;;6CAoGD;AA5GH,0DAoHC"}
|
|
@@ -1,36 +1,24 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
3
|
-
* @param host Office host
|
|
4
|
-
* @returns the detail proj options[] of the host
|
|
2
|
+
* @author zyun@microsoft.com
|
|
5
3
|
*/
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
*/
|
|
27
|
-
export declare function getOfficeXMLAddinHostProjectTemplateName(host: string, proj: string): string;
|
|
28
|
-
/**
|
|
29
|
-
* Get the Repo Info of the proj
|
|
30
|
-
* @param host wxp
|
|
31
|
-
* @param proj proj name
|
|
32
|
-
* @param lang ts or js
|
|
33
|
-
* @returns Repo Info
|
|
34
|
-
*/
|
|
35
|
-
export declare function getOfficeXMLAddinHostProjectRepoInfo(host: string, proj: string, lang: "ts" | "js"): string;
|
|
4
|
+
interface IOfficeAddinHostConfig {
|
|
5
|
+
[property: string]: {
|
|
6
|
+
title: string;
|
|
7
|
+
detail: string;
|
|
8
|
+
localTemplate: string;
|
|
9
|
+
manifestPath?: string;
|
|
10
|
+
framework: {
|
|
11
|
+
[property: string]: {
|
|
12
|
+
typescript?: string;
|
|
13
|
+
javascript?: string;
|
|
14
|
+
};
|
|
15
|
+
};
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
interface IOfficeAddinProjectConfig {
|
|
19
|
+
[property: string]: IOfficeAddinHostConfig;
|
|
20
|
+
}
|
|
21
|
+
export declare const OfficeAddinProjectConfig: IOfficeAddinProjectConfig;
|
|
22
|
+
export declare function getOfficeAddinTemplateConfig(projectType: string, addinHost?: string): IOfficeAddinHostConfig;
|
|
23
|
+
export {};
|
|
36
24
|
//# sourceMappingURL=projectConfig.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"projectConfig.d.ts","sourceRoot":"","sources":["../../../../src/component/generator/officeXMLAddin/projectConfig.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"projectConfig.d.ts","sourceRoot":"","sources":["../../../../src/component/generator/officeXMLAddin/projectConfig.ts"],"names":[],"mappings":"AAKA;;GAEG;AAEH,UAAU,sBAAsB;IAC9B,CAAC,QAAQ,EAAE,MAAM,GAAG;QAClB,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,aAAa,EAAE,MAAM,CAAC;QACtB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,SAAS,EAAE;YACT,CAAC,QAAQ,EAAE,MAAM,GAAG;gBAClB,UAAU,CAAC,EAAE,MAAM,CAAC;gBACpB,UAAU,CAAC,EAAE,MAAM,CAAC;aACrB,CAAC;SACH,CAAC;KACH,CAAC;CACH;AAED,UAAU,yBAAyB;IACjC,CAAC,QAAQ,EAAE,MAAM,GAAG,sBAAsB,CAAC;CAC5C;AAsCD,eAAO,MAAM,wBAAwB,EAAE,yBA0HtC,CAAC;AAEF,wBAAgB,4BAA4B,CAC1C,WAAW,EAAE,MAAM,EACnB,SAAS,CAAC,EAAE,MAAM,GACjB,sBAAsB,CASxB"}
|