@microsoft/teamsfx-core 3.0.11 → 3.0.12-alpha.0a63a75aae.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/aadAppClient.d.ts +0 -6
- package/build/client/aadAppClient.d.ts.map +1 -1
- package/build/client/aadAppClient.js +18 -20
- package/build/client/aadAppClient.js.map +1 -1
- package/build/client/graphClient.d.ts +4 -2
- package/build/client/graphClient.d.ts.map +1 -1
- package/build/client/graphClient.js +103 -15
- package/build/client/graphClient.js.map +1 -1
- package/build/client/interfaces/GetJoinedTeamsResponse.d.ts +1 -1
- package/build/client/interfaces/GetJoinedTeamsResponse.d.ts.map +1 -1
- package/build/client/teamsDevPortalClient.d.ts +0 -2
- package/build/client/teamsDevPortalClient.d.ts.map +1 -1
- package/build/client/teamsDevPortalClient.js +50 -72
- package/build/client/teamsDevPortalClient.js.map +1 -1
- package/build/common/accountUtils.js +6 -6
- package/build/common/accountUtils.js.map +1 -1
- package/build/common/authInterface.d.ts +1 -1
- package/build/common/authInterface.d.ts.map +1 -1
- package/build/common/azureUtils.js +1 -2
- package/build/common/azureUtils.js.map +1 -1
- package/build/common/constants.d.ts +1 -0
- package/build/common/constants.d.ts.map +1 -1
- package/build/common/constants.js +24 -23
- package/build/common/constants.js.map +1 -1
- package/build/common/correlator.js +1 -1
- package/build/common/correlator.js.map +1 -1
- package/build/common/daSpecParser.js +33 -28
- package/build/common/daSpecParser.js.map +1 -1
- package/build/common/featureFlags.d.ts +0 -5
- package/build/common/featureFlags.d.ts.map +1 -1
- package/build/common/featureFlags.js +90 -95
- package/build/common/featureFlags.js.map +1 -1
- package/build/common/fetchHelper.d.ts +3 -0
- package/build/common/fetchHelper.d.ts.map +1 -0
- package/build/common/fetchHelper.js +19 -0
- package/build/common/fetchHelper.js.map +1 -0
- package/build/common/globalState.js +2 -3
- package/build/common/globalState.js.map +1 -1
- package/build/common/globalVars.d.ts +1 -1
- package/build/common/globalVars.d.ts.map +1 -1
- package/build/common/globalVars.js +18 -17
- package/build/common/globalVars.js.map +1 -1
- package/build/common/jsonUtils.js +2 -4
- package/build/common/jsonUtils.js.map +1 -1
- package/build/common/kiotaClient.js +7 -8
- package/build/common/kiotaClient.js.map +1 -1
- package/build/common/localizeUtils.d.ts +5 -0
- package/build/common/localizeUtils.d.ts.map +1 -1
- package/build/common/localizeUtils.js +11 -4
- package/build/common/localizeUtils.js.map +1 -1
- package/build/common/permissionInterface.js +1 -1
- package/build/common/permissionInterface.js.map +1 -1
- package/build/common/projectSettingsHelper.js +18 -19
- package/build/common/projectSettingsHelper.js.map +1 -1
- package/build/common/projectTypeChecker.js +12 -15
- package/build/common/projectTypeChecker.js.map +1 -1
- package/build/common/requestUtils.js +4 -6
- package/build/common/requestUtils.js.map +1 -1
- package/build/common/samples.d.ts +1 -1
- package/build/common/samples.d.ts.map +1 -1
- package/build/common/samples.js +13 -7
- package/build/common/samples.js.map +1 -1
- package/build/common/secretmasker/dict.js +6 -4
- package/build/common/secretmasker/dict.js.map +1 -1
- package/build/common/secretmasker/feature.d.ts +1 -1
- package/build/common/secretmasker/feature.d.ts.map +1 -1
- package/build/common/secretmasker/feature.js +10 -10
- package/build/common/secretmasker/feature.js.map +1 -1
- package/build/common/secretmasker/masker.js +8 -10
- package/build/common/secretmasker/masker.js.map +1 -1
- package/build/common/stringUtils.js +12 -13
- package/build/common/stringUtils.js.map +1 -1
- package/build/common/telemetry.js +19 -22
- package/build/common/telemetry.js.map +1 -1
- package/build/common/templates-config.json +4 -3
- package/build/common/tools.js +13 -15
- package/build/common/tools.js.map +1 -1
- package/build/common/utils.js +3 -4
- package/build/common/utils.js.map +1 -1
- package/build/common/versionMetadata.d.ts +2 -2
- package/build/common/versionMetadata.d.ts.map +1 -1
- package/build/common/versionMetadata.js +6 -6
- package/build/common/versionMetadata.js.map +1 -1
- package/build/common/wrappedAxiosClient.d.ts +9 -1
- package/build/common/wrappedAxiosClient.d.ts.map +1 -1
- package/build/common/wrappedAxiosClient.js +88 -35
- package/build/common/wrappedAxiosClient.js.map +1 -1
- package/build/component/configManager/actionInjector.js +23 -16
- package/build/component/configManager/actionInjector.js.map +1 -1
- package/build/component/configManager/constant.js +2 -2
- package/build/component/configManager/constant.js.map +1 -1
- package/build/component/configManager/interface.d.ts +15 -15
- package/build/component/configManager/interface.d.ts.map +1 -1
- package/build/component/configManager/lifecycle.js +9 -8
- package/build/component/configManager/lifecycle.js.map +1 -1
- package/build/component/configManager/parser.js +1 -1
- package/build/component/configManager/parser.js.map +1 -1
- package/build/component/configManager/validator.d.ts +1 -1
- package/build/component/configManager/validator.d.ts.map +1 -1
- package/build/component/configManager/validator.js +2 -1
- package/build/component/configManager/validator.js.map +1 -1
- package/build/component/constant/commonConstant.js +13 -13
- package/build/component/constant/commonConstant.js.map +1 -1
- package/build/component/constant/deployConstant.js +36 -36
- package/build/component/constant/deployConstant.js.map +1 -1
- package/build/component/constants.js +35 -35
- package/build/component/constants.js.map +1 -1
- package/build/component/coordinator/index.js +42 -55
- package/build/component/coordinator/index.js.map +1 -1
- package/build/component/coordinator/summary.d.ts +2 -2
- package/build/component/coordinator/summary.d.ts.map +1 -1
- package/build/component/coordinator/summary.js +3 -0
- package/build/component/coordinator/summary.js.map +1 -1
- package/build/component/deployUtils.js +2 -3
- package/build/component/deployUtils.js.map +1 -1
- package/build/component/deps-checker/checkerFactory.js.map +1 -1
- package/build/component/deps-checker/constant/telemetry.js +4 -4
- package/build/component/deps-checker/constant/telemetry.js.map +1 -1
- package/build/component/deps-checker/coreDepsLoggerAdapter.js +2 -1
- package/build/component/deps-checker/coreDepsLoggerAdapter.js.map +1 -1
- package/build/component/deps-checker/coreDepsTelemetryAdapter.js +10 -3
- package/build/component/deps-checker/coreDepsTelemetryAdapter.js.map +1 -1
- package/build/component/deps-checker/depsChecker.d.ts +2 -2
- package/build/component/deps-checker/depsChecker.d.ts.map +1 -1
- package/build/component/deps-checker/depsChecker.js +2 -2
- package/build/component/deps-checker/depsChecker.js.map +1 -1
- package/build/component/deps-checker/depsManager.d.ts +1 -1
- package/build/component/deps-checker/depsManager.d.ts.map +1 -1
- package/build/component/deps-checker/depsManager.js +8 -5
- package/build/component/deps-checker/depsManager.js.map +1 -1
- package/build/component/deps-checker/internal/dotnetChecker.js +7 -6
- package/build/component/deps-checker/internal/dotnetChecker.js.map +1 -1
- package/build/component/deps-checker/internal/funcToolChecker.d.ts +1 -1
- package/build/component/deps-checker/internal/funcToolChecker.d.ts.map +1 -1
- package/build/component/deps-checker/internal/funcToolChecker.js +12 -14
- package/build/component/deps-checker/internal/funcToolChecker.js.map +1 -1
- package/build/component/deps-checker/internal/nodeChecker.js +18 -22
- package/build/component/deps-checker/internal/nodeChecker.js.map +1 -1
- package/build/component/deps-checker/internal/testToolChecker.d.ts +1 -1
- package/build/component/deps-checker/internal/testToolChecker.d.ts.map +1 -1
- package/build/component/deps-checker/internal/testToolChecker.js +78 -71
- package/build/component/deps-checker/internal/testToolChecker.js.map +1 -1
- package/build/component/deps-checker/internal/vxTestAppChecker.js +3 -1
- package/build/component/deps-checker/internal/vxTestAppChecker.js.map +1 -1
- package/build/component/deps-checker/util/cpUtils.d.ts +0 -1
- package/build/component/deps-checker/util/cpUtils.d.ts.map +1 -1
- package/build/component/deps-checker/util/cpUtils.js +9 -10
- package/build/component/deps-checker/util/cpUtils.js.map +1 -1
- package/build/component/deps-checker/util/downloadHelper.js +2 -3
- package/build/component/deps-checker/util/downloadHelper.js.map +1 -1
- package/build/component/deps-checker/util/fileHelper.js +5 -6
- package/build/component/deps-checker/util/fileHelper.js.map +1 -1
- package/build/component/deps-checker/util/progressIndicator.js +1 -2
- package/build/component/deps-checker/util/progressIndicator.js.map +1 -1
- package/build/component/deps-checker/util/system.js +4 -5
- package/build/component/deps-checker/util/system.js.map +1 -1
- package/build/component/developerPortalScaffoldUtils.js +4 -5
- package/build/component/developerPortalScaffoldUtils.js.map +1 -1
- package/build/component/driver/aad/create.js +18 -21
- package/build/component/driver/aad/create.js.map +1 -1
- package/build/component/driver/aad/error/aadManifestError.js +9 -9
- package/build/component/driver/aad/error/aadManifestError.js.map +1 -1
- package/build/component/driver/aad/error/invalidFieldInManifestError.js.map +1 -1
- package/build/component/driver/aad/error/missingEnvError.js.map +1 -1
- package/build/component/driver/aad/interface/createAadAppOutput.d.ts +1 -1
- package/build/component/driver/aad/interface/createAadAppOutput.d.ts.map +1 -1
- package/build/component/driver/aad/interface/signInAudience.js +1 -1
- package/build/component/driver/aad/interface/signInAudience.js.map +1 -1
- package/build/component/driver/aad/permissions/index.js +3 -3
- package/build/component/driver/aad/permissions/index.js.map +1 -1
- package/build/component/driver/aad/update.js +12 -15
- package/build/component/driver/aad/update.js.map +1 -1
- package/build/component/driver/aad/utility/aadManifestHelper.js +26 -25
- package/build/component/driver/aad/utility/aadManifestHelper.js.map +1 -1
- package/build/component/driver/aad/utility/buildAadManifest.js +3 -6
- package/build/component/driver/aad/utility/buildAadManifest.js.map +1 -1
- package/build/component/driver/aad/utility/constants.js +1 -1
- package/build/component/driver/aad/utility/constants.js.map +1 -1
- package/build/component/driver/add/addWebPart.js +6 -9
- package/build/component/driver/add/addWebPart.js.map +1 -1
- package/build/component/driver/add/utility/constants.js +5 -5
- package/build/component/driver/add/utility/constants.js.map +1 -1
- package/build/component/driver/apiKey/create.js +10 -13
- package/build/component/driver/apiKey/create.js.map +1 -1
- package/build/component/driver/apiKey/interface/createApiKeyOutputs.d.ts +1 -1
- package/build/component/driver/apiKey/interface/createApiKeyOutputs.d.ts.map +1 -1
- package/build/component/driver/apiKey/update.js +9 -12
- package/build/component/driver/apiKey/update.js.map +1 -1
- package/build/component/driver/apiKey/utility/utility.js +4 -5
- package/build/component/driver/apiKey/utility/utility.js.map +1 -1
- package/build/component/driver/arm/constant.js +1 -1
- package/build/component/driver/arm/constant.js.map +1 -1
- package/build/component/driver/arm/deploy.js +4 -6
- package/build/component/driver/arm/deploy.js.map +1 -1
- package/build/component/driver/arm/deployImpl.js +7 -4
- package/build/component/driver/arm/deployImpl.js.map +1 -1
- package/build/component/driver/arm/interface.d.ts +1 -1
- package/build/component/driver/arm/interface.d.ts.map +1 -1
- package/build/component/driver/arm/util/bicepChecker.js +18 -19
- package/build/component/driver/arm/util/bicepChecker.js.map +1 -1
- package/build/component/driver/arm/util/handleError.d.ts +1 -1
- package/build/component/driver/arm/util/handleError.d.ts.map +1 -1
- package/build/component/driver/arm/util/handleError.js +13 -16
- package/build/component/driver/arm/util/handleError.js.map +1 -1
- package/build/component/driver/arm/util/innerHandleError.js +6 -19
- package/build/component/driver/arm/util/innerHandleError.js.map +1 -1
- package/build/component/driver/arm/util/util.js +3 -4
- package/build/component/driver/arm/util/util.js.map +1 -1
- package/build/component/driver/arm/validator.js +1 -2
- package/build/component/driver/arm/validator.js.map +1 -1
- package/build/component/driver/botAadApp/create.js +14 -17
- package/build/component/driver/botAadApp/create.js.map +1 -1
- package/build/component/driver/botAadApp/interface/createBotAadAppOutput.d.ts +1 -1
- package/build/component/driver/botAadApp/interface/createBotAadAppOutput.d.ts.map +1 -1
- package/build/component/driver/botFramework/createOrUpdateBot.js +9 -12
- package/build/component/driver/botFramework/createOrUpdateBot.js.map +1 -1
- package/build/component/driver/deploy/azure/azureAppServiceDeployDriver.js +8 -9
- package/build/component/driver/deploy/azure/azureAppServiceDeployDriver.js.map +1 -1
- package/build/component/driver/deploy/azure/azureFunctionDeployDriver.js +9 -10
- package/build/component/driver/deploy/azure/azureFunctionDeployDriver.js.map +1 -1
- package/build/component/driver/deploy/azure/azureStaticWebAppGetDeploymentTokenDriver.d.ts +1 -1
- package/build/component/driver/deploy/azure/azureStaticWebAppGetDeploymentTokenDriver.d.ts.map +1 -1
- package/build/component/driver/deploy/azure/azureStaticWebAppGetDeploymentTokenDriver.js +13 -15
- package/build/component/driver/deploy/azure/azureStaticWebAppGetDeploymentTokenDriver.js.map +1 -1
- package/build/component/driver/deploy/azure/azureStorageDeployDriver.js +15 -33
- package/build/component/driver/deploy/azure/azureStorageDeployDriver.js.map +1 -1
- package/build/component/driver/deploy/azure/azureStorageStaticWebsiteConfigDriver.d.ts +1 -1
- package/build/component/driver/deploy/azure/azureStorageStaticWebsiteConfigDriver.d.ts.map +1 -1
- package/build/component/driver/deploy/azure/azureStorageStaticWebsiteConfigDriver.js +19 -22
- package/build/component/driver/deploy/azure/azureStorageStaticWebsiteConfigDriver.js.map +1 -1
- package/build/component/driver/deploy/azure/impl/AzureZipDeployImpl.d.ts +0 -1
- package/build/component/driver/deploy/azure/impl/AzureZipDeployImpl.d.ts.map +1 -1
- package/build/component/driver/deploy/azure/impl/AzureZipDeployImpl.js +30 -31
- package/build/component/driver/deploy/azure/impl/AzureZipDeployImpl.js.map +1 -1
- package/build/component/driver/deploy/azure/impl/azureDeployImpl.js +13 -18
- package/build/component/driver/deploy/azure/impl/azureDeployImpl.js.map +1 -1
- package/build/component/driver/deploy/azure/impl/baseDeployImpl.d.ts +1 -1
- package/build/component/driver/deploy/azure/impl/baseDeployImpl.d.ts.map +1 -1
- package/build/component/driver/deploy/azure/impl/baseDeployImpl.js +22 -15
- package/build/component/driver/deploy/azure/impl/baseDeployImpl.js.map +1 -1
- package/build/component/driver/deploy/spfx/deployDriver.js +12 -15
- package/build/component/driver/deploy/spfx/deployDriver.js.map +1 -1
- package/build/component/driver/deploy/spfx/utility/constants.js +12 -12
- package/build/component/driver/deploy/spfx/utility/constants.js.map +1 -1
- package/build/component/driver/deploy/spfx/utility/sleep.js +1 -2
- package/build/component/driver/deploy/spfx/utility/sleep.js.map +1 -1
- package/build/component/driver/deploy/spfx/utility/spoClient.d.ts +0 -2
- package/build/component/driver/deploy/spfx/utility/spoClient.d.ts.map +1 -1
- package/build/component/driver/deploy/spfx/utility/spoClient.js +2 -2
- package/build/component/driver/deploy/spfx/utility/spoClient.js.map +1 -1
- package/build/component/driver/devChannel/create.js +4 -6
- package/build/component/driver/devChannel/create.js.map +1 -1
- package/build/component/driver/devChannel/installApp.d.ts.map +1 -1
- package/build/component/driver/devChannel/installApp.js +7 -10
- package/build/component/driver/devChannel/installApp.js.map +1 -1
- package/build/component/driver/devChannel/interfaces/CreateDevChannelOutput.d.ts +1 -1
- package/build/component/driver/devChannel/interfaces/CreateDevChannelOutput.d.ts.map +1 -1
- package/build/component/driver/devTool/constant.js +6 -6
- package/build/component/driver/devTool/constant.js.map +1 -1
- package/build/component/driver/devTool/httpClient.d.ts +2 -3
- package/build/component/driver/devTool/httpClient.d.ts.map +1 -1
- package/build/component/driver/devTool/httpClient.js +36 -33
- package/build/component/driver/devTool/httpClient.js.map +1 -1
- package/build/component/driver/devTool/installDriver.js +26 -32
- package/build/component/driver/devTool/installDriver.js.map +1 -1
- package/build/component/driver/devTool/nodeInstaller.d.ts +0 -2
- package/build/component/driver/devTool/nodeInstaller.d.ts.map +1 -1
- package/build/component/driver/devTool/nodeInstaller.js +33 -34
- package/build/component/driver/devTool/nodeInstaller.js.map +1 -1
- package/build/component/driver/file/createOrUpdateEnvironmentFile.js +13 -17
- package/build/component/driver/file/createOrUpdateEnvironmentFile.js.map +1 -1
- package/build/component/driver/file/createOrUpdateJsonFile.js +7 -10
- package/build/component/driver/file/createOrUpdateJsonFile.js.map +1 -1
- package/build/component/driver/interface/buildAndDeployArgs.d.ts +10 -10
- package/build/component/driver/interface/buildAndDeployArgs.d.ts.map +1 -1
- package/build/component/driver/interface/commonArgs.d.ts +1 -1
- package/build/component/driver/interface/commonArgs.d.ts.map +1 -1
- package/build/component/driver/interface/provisionArgs.d.ts +2 -2
- package/build/component/driver/interface/provisionArgs.d.ts.map +1 -1
- package/build/component/driver/interface/stepDriver.d.ts +1 -1
- package/build/component/driver/interface/stepDriver.d.ts.map +1 -1
- package/build/component/driver/m365/acquire.d.ts.map +1 -1
- package/build/component/driver/m365/acquire.js +8 -11
- package/build/component/driver/m365/acquire.js.map +1 -1
- package/build/component/driver/middleware/addSWADeployTelemetry.js +6 -7
- package/build/component/driver/middleware/addSWADeployTelemetry.js.map +1 -1
- package/build/component/driver/middleware/addStartAndEndTelemetry.js +5 -6
- package/build/component/driver/middleware/addStartAndEndTelemetry.js.map +1 -1
- package/build/component/driver/oauth/create.js +12 -16
- package/build/component/driver/oauth/create.js.map +1 -1
- package/build/component/driver/oauth/interface/createOauthOutputs.d.ts +1 -1
- package/build/component/driver/oauth/interface/createOauthOutputs.d.ts.map +1 -1
- package/build/component/driver/oauth/update.js +12 -17
- package/build/component/driver/oauth/update.js.map +1 -1
- package/build/component/driver/oauth/utility/utility.d.ts.map +1 -1
- package/build/component/driver/oauth/utility/utility.js +7 -16
- package/build/component/driver/oauth/utility/utility.js.map +1 -1
- package/build/component/driver/script/baseBuildDriver.d.ts +1 -1
- package/build/component/driver/script/baseBuildDriver.d.ts.map +1 -1
- package/build/component/driver/script/baseBuildDriver.js +15 -11
- package/build/component/driver/script/baseBuildDriver.js.map +1 -1
- package/build/component/driver/script/dotnetBuildDriver.js +4 -10
- package/build/component/driver/script/dotnetBuildDriver.js.map +1 -1
- package/build/component/driver/script/npmBuildDriver.js +4 -10
- package/build/component/driver/script/npmBuildDriver.js.map +1 -1
- package/build/component/driver/script/npxBuildDriver.js +4 -10
- package/build/component/driver/script/npxBuildDriver.js.map +1 -1
- package/build/component/driver/script/scriptDriver.d.ts +0 -3
- package/build/component/driver/script/scriptDriver.d.ts.map +1 -1
- package/build/component/driver/script/scriptDriver.js +16 -18
- package/build/component/driver/script/scriptDriver.js.map +1 -1
- package/build/component/driver/share/utils.js +6 -8
- package/build/component/driver/share/utils.js.map +1 -1
- package/build/component/driver/teamsApp/appStudio.d.ts.map +1 -1
- package/build/component/driver/teamsApp/appStudio.js +16 -19
- package/build/component/driver/teamsApp/appStudio.js.map +1 -1
- package/build/component/driver/teamsApp/configure.js +4 -6
- package/build/component/driver/teamsApp/configure.js.map +1 -1
- package/build/component/driver/teamsApp/constants.d.ts +5 -0
- package/build/component/driver/teamsApp/constants.d.ts.map +1 -1
- package/build/component/driver/teamsApp/constants.js +63 -57
- package/build/component/driver/teamsApp/constants.js.map +1 -1
- package/build/component/driver/teamsApp/copyAppPackageToSPFx.d.ts +0 -2
- package/build/component/driver/teamsApp/copyAppPackageToSPFx.d.ts.map +1 -1
- package/build/component/driver/teamsApp/copyAppPackageToSPFx.js +10 -12
- package/build/component/driver/teamsApp/copyAppPackageToSPFx.js.map +1 -1
- package/build/component/driver/teamsApp/create.d.ts.map +1 -1
- package/build/component/driver/teamsApp/create.js +4 -8
- package/build/component/driver/teamsApp/create.js.map +1 -1
- package/build/component/driver/teamsApp/createAppPackage.d.ts.map +1 -1
- package/build/component/driver/teamsApp/createAppPackage.js +44 -48
- package/build/component/driver/teamsApp/createAppPackage.js.map +1 -1
- package/build/component/driver/teamsApp/errors.d.ts.map +1 -1
- package/build/component/driver/teamsApp/errors.js +158 -163
- package/build/component/driver/teamsApp/errors.js.map +1 -1
- package/build/component/driver/teamsApp/interfaces/ApiSecretRegistration.js +3 -3
- package/build/component/driver/teamsApp/interfaces/ApiSecretRegistration.js.map +1 -1
- package/build/component/driver/teamsApp/interfaces/AsyncAppValidationResponse.js +1 -1
- package/build/component/driver/teamsApp/interfaces/AsyncAppValidationResponse.js.map +1 -1
- package/build/component/driver/teamsApp/interfaces/OauthRegistration.js +4 -4
- package/build/component/driver/teamsApp/interfaces/OauthRegistration.js.map +1 -1
- package/build/component/driver/teamsApp/interfaces/appdefinitions/IPublishingAppDefinition.js +1 -1
- package/build/component/driver/teamsApp/interfaces/appdefinitions/IPublishingAppDefinition.js.map +1 -1
- package/build/component/driver/teamsApp/interfaces/appdefinitions/appCategory.js +1 -1
- package/build/component/driver/teamsApp/interfaces/appdefinitions/appCategory.js.map +1 -1
- package/build/component/driver/teamsApp/interfaces/appdefinitions/appItemHostedCapability.js +1 -1
- package/build/component/driver/teamsApp/interfaces/appdefinitions/appItemHostedCapability.js.map +1 -1
- package/build/component/driver/teamsApp/interfaces/appdefinitions/appItemIndustry.js +1 -1
- package/build/component/driver/teamsApp/interfaces/appdefinitions/appItemIndustry.js.map +1 -1
- package/build/component/driver/teamsApp/interfaces/appdefinitions/appPackage.d.ts +0 -2
- package/build/component/driver/teamsApp/interfaces/appdefinitions/appPackage.d.ts.map +1 -1
- package/build/component/driver/teamsApp/interfaces/appdefinitions/appPermissionNodeItemType.js +1 -1
- package/build/component/driver/teamsApp/interfaces/appdefinitions/appPermissionNodeItemType.js.map +1 -1
- package/build/component/driver/teamsApp/interfaces/appdefinitions/disabledScopeItemType.js +1 -1
- package/build/component/driver/teamsApp/interfaces/appdefinitions/disabledScopeItemType.js.map +1 -1
- package/build/component/driver/teamsApp/interfaces/appdefinitions/staticTab.js +1 -1
- package/build/component/driver/teamsApp/interfaces/appdefinitions/staticTab.js.map +1 -1
- package/build/component/driver/teamsApp/publishAppPackage.d.ts.map +1 -1
- package/build/component/driver/teamsApp/publishAppPackage.js +20 -22
- package/build/component/driver/teamsApp/publishAppPackage.js.map +1 -1
- package/build/component/driver/teamsApp/results.js +2 -2
- package/build/component/driver/teamsApp/results.js.map +1 -1
- package/build/component/driver/teamsApp/syncManifest.js +8 -9
- package/build/component/driver/teamsApp/syncManifest.js.map +1 -1
- package/build/component/driver/teamsApp/teamsappMgr.js +3 -5
- package/build/component/driver/teamsApp/teamsappMgr.js.map +1 -1
- package/build/component/driver/teamsApp/utils/CopilotGptManifestUtils.d.ts +0 -1
- package/build/component/driver/teamsApp/utils/CopilotGptManifestUtils.d.ts.map +1 -1
- package/build/component/driver/teamsApp/utils/CopilotGptManifestUtils.js +11 -16
- package/build/component/driver/teamsApp/utils/CopilotGptManifestUtils.js.map +1 -1
- package/build/component/driver/teamsApp/utils/ManifestUtils.d.ts +0 -2
- package/build/component/driver/teamsApp/utils/ManifestUtils.d.ts.map +1 -1
- package/build/component/driver/teamsApp/utils/ManifestUtils.js +17 -24
- package/build/component/driver/teamsApp/utils/ManifestUtils.js.map +1 -1
- package/build/component/driver/teamsApp/utils/PluginManifestUtils.d.ts.map +1 -1
- package/build/component/driver/teamsApp/utils/PluginManifestUtils.js +10 -14
- package/build/component/driver/teamsApp/utils/PluginManifestUtils.js.map +1 -1
- package/build/component/driver/teamsApp/utils/telemetry.js +2 -2
- package/build/component/driver/teamsApp/utils/telemetry.js.map +1 -1
- package/build/component/driver/teamsApp/utils/utils.js +25 -28
- package/build/component/driver/teamsApp/utils/utils.js.map +1 -1
- package/build/component/driver/teamsApp/validate.d.ts.map +1 -1
- package/build/component/driver/teamsApp/validate.js +32 -27
- package/build/component/driver/teamsApp/validate.js.map +1 -1
- package/build/component/driver/teamsApp/validateAppPackage.js +12 -15
- package/build/component/driver/teamsApp/validateAppPackage.js.map +1 -1
- package/build/component/driver/teamsApp/validateTestCases.js +10 -14
- package/build/component/driver/teamsApp/validateTestCases.js.map +1 -1
- package/build/component/driver/typeSpec/compile.js +9 -12
- package/build/component/driver/typeSpec/compile.js.map +1 -1
- package/build/component/driver/util/utils.js +8 -12
- package/build/component/driver/util/utils.js.map +1 -1
- package/build/component/driver/util/wrapUtil.d.ts +1 -1
- package/build/component/driver/util/wrapUtil.d.ts.map +1 -1
- package/build/component/driver/util/wrapUtil.js +14 -13
- package/build/component/driver/util/wrapUtil.js.map +1 -1
- package/build/component/error/componentError.js +12 -6
- package/build/component/error/componentError.js.map +1 -1
- package/build/component/feature/collaboration.d.ts.map +1 -1
- package/build/component/feature/collaboration.js +30 -30
- package/build/component/feature/collaboration.js.map +1 -1
- package/build/component/feature/createAuthFiles.js +1 -2
- package/build/component/feature/createAuthFiles.js.map +1 -1
- package/build/component/feature/sso.js +3 -5
- package/build/component/feature/sso.js.map +1 -1
- package/build/component/generator/combinedProject/generator.js +9 -7
- package/build/component/generator/combinedProject/generator.js.map +1 -1
- package/build/component/generator/configFiles/configGenerator.js +2 -4
- package/build/component/generator/configFiles/configGenerator.js.map +1 -1
- package/build/component/generator/configFiles/jsonMerger.js +1 -2
- package/build/component/generator/configFiles/jsonMerger.js.map +1 -1
- package/build/component/generator/configFiles/renderTemplate.js +1 -2
- package/build/component/generator/configFiles/renderTemplate.js.map +1 -1
- package/build/component/generator/constant.js +1 -1
- package/build/component/generator/constant.js.map +1 -1
- package/build/component/generator/declarativeAgent/generator.d.ts.map +1 -1
- package/build/component/generator/declarativeAgent/generator.js +24 -31
- package/build/component/generator/declarativeAgent/generator.js.map +1 -1
- package/build/component/generator/declarativeAgent/helper.d.ts.map +1 -1
- package/build/component/generator/declarativeAgent/helper.js +154 -61
- package/build/component/generator/declarativeAgent/helper.js.map +1 -1
- package/build/component/generator/declarativeAgent/oneDriveSharePointHandler.js +8 -10
- package/build/component/generator/declarativeAgent/oneDriveSharePointHandler.js.map +1 -1
- package/build/component/generator/defaultGenerator.js +10 -13
- package/build/component/generator/defaultGenerator.js.map +1 -1
- package/build/component/generator/generator.d.ts.map +1 -1
- package/build/component/generator/generator.js +25 -32
- package/build/component/generator/generator.js.map +1 -1
- package/build/component/generator/generatorAction.d.ts +0 -2
- package/build/component/generator/generatorAction.d.ts.map +1 -1
- package/build/component/generator/generatorAction.js +4 -6
- package/build/component/generator/generatorAction.js.map +1 -1
- package/build/component/generator/officeAddin/config/projectProperties.js +2 -2
- package/build/component/generator/officeAddin/config/projectProperties.js.map +1 -1
- package/build/component/generator/officeAddin/generator.d.ts +1 -1
- package/build/component/generator/officeAddin/generator.d.ts.map +1 -1
- package/build/component/generator/officeAddin/generator.js +4 -8
- package/build/component/generator/officeAddin/generator.js.map +1 -1
- package/build/component/generator/officeAddin/helperMethods.js +2 -2
- package/build/component/generator/officeAddin/helperMethods.js.map +1 -1
- package/build/component/generator/officeAddin/metaOSHelper.js +3 -4
- package/build/component/generator/officeAddin/metaOSHelper.js.map +1 -1
- package/build/component/generator/openApiSpec/common.js +11 -10
- package/build/component/generator/openApiSpec/common.js.map +1 -1
- package/build/component/generator/openApiSpec/customEngineAgentGenerator.js +1 -4
- package/build/component/generator/openApiSpec/customEngineAgentGenerator.js.map +1 -1
- package/build/component/generator/openApiSpec/declarativeAgentGenerator.d.ts.map +1 -1
- package/build/component/generator/openApiSpec/declarativeAgentGenerator.js +1 -12
- package/build/component/generator/openApiSpec/declarativeAgentGenerator.js.map +1 -1
- package/build/component/generator/openApiSpec/helper.d.ts.map +1 -1
- package/build/component/generator/openApiSpec/helper.js +25 -28
- package/build/component/generator/openApiSpec/helper.js.map +1 -1
- package/build/component/generator/openApiSpec/kiota.js +1 -2
- package/build/component/generator/openApiSpec/kiota.js.map +1 -1
- package/build/component/generator/openApiSpec/messageExtensionGenerator.js +1 -4
- package/build/component/generator/openApiSpec/messageExtensionGenerator.js.map +1 -1
- package/build/component/generator/other/ssrTabGenerator.js +4 -1
- package/build/component/generator/other/ssrTabGenerator.js.map +1 -1
- package/build/component/generator/other/tdpGenerator.js +5 -5
- package/build/component/generator/other/tdpGenerator.js.map +1 -1
- package/build/component/generator/spfx/depsChecker/generatorChecker.d.ts.map +1 -1
- package/build/component/generator/spfx/depsChecker/generatorChecker.js +6 -8
- package/build/component/generator/spfx/depsChecker/generatorChecker.js.map +1 -1
- package/build/component/generator/spfx/depsChecker/yoChecker.js +4 -4
- package/build/component/generator/spfx/depsChecker/yoChecker.js.map +1 -1
- package/build/component/generator/spfx/error.js +13 -14
- package/build/component/generator/spfx/error.js.map +1 -1
- package/build/component/generator/spfx/spfxGenerator.js +30 -41
- package/build/component/generator/spfx/spfxGenerator.js.map +1 -1
- package/build/component/generator/spfx/utils/constants.js +36 -36
- package/build/component/generator/spfx/utils/constants.js.map +1 -1
- package/build/component/generator/spfx/utils/progress-helper.js +6 -5
- package/build/component/generator/spfx/utils/progress-helper.js.map +1 -1
- package/build/component/generator/spfx/utils/telemetry-helper.js +2 -4
- package/build/component/generator/spfx/utils/telemetry-helper.js.map +1 -1
- package/build/component/generator/spfx/utils/telemetryEvents.js +2 -2
- package/build/component/generator/spfx/utils/telemetryEvents.js.map +1 -1
- package/build/component/generator/spfx/utils/utils.js +9 -9
- package/build/component/generator/spfx/utils/utils.js.map +1 -1
- package/build/component/generator/templateHelper.js +1 -2
- package/build/component/generator/templateHelper.js.map +1 -1
- package/build/component/generator/templates/metadata/index.d.ts.map +1 -1
- package/build/component/generator/templates/metadata/index.js +7 -7
- package/build/component/generator/templates/metadata/index.js.map +1 -1
- package/build/component/generator/templates/templateNames.d.ts +23 -23
- package/build/component/generator/templates/templateNames.d.ts.map +1 -1
- package/build/component/generator/templates/templateNames.js +1 -1
- package/build/component/generator/templates/templateNames.js.map +1 -1
- package/build/component/generator/templates/templateReplaceMap.d.ts.map +1 -1
- package/build/component/generator/templates/templateReplaceMap.js +21 -26
- package/build/component/generator/templates/templateReplaceMap.js.map +1 -1
- package/build/component/generator/utils.d.ts +1 -2
- package/build/component/generator/utils.d.ts.map +1 -1
- package/build/component/generator/utils.js +63 -51
- package/build/component/generator/utils.js.map +1 -1
- package/build/component/local/constants.d.ts +1 -1
- package/build/component/local/constants.d.ts.map +1 -1
- package/build/component/local/constants.js +14 -14
- package/build/component/local/constants.js.map +1 -1
- package/build/component/local/localCertificateManager.d.ts.map +1 -1
- package/build/component/local/localCertificateManager.js +7 -10
- package/build/component/local/localCertificateManager.js.map +1 -1
- package/build/component/local/localEnvManager.js +5 -2
- package/build/component/local/localEnvManager.js.map +1 -1
- package/build/component/local/localTelemetryReporter.js +11 -10
- package/build/component/local/localTelemetryReporter.js.map +1 -1
- package/build/component/local/npmLogHelper.js +2 -3
- package/build/component/local/npmLogHelper.js.map +1 -1
- package/build/component/local/packageJsonHelper.d.ts.map +1 -1
- package/build/component/local/packageJsonHelper.js +4 -6
- package/build/component/local/packageJsonHelper.js.map +1 -1
- package/build/component/local/portChecker.js +2 -3
- package/build/component/local/portChecker.js.map +1 -1
- package/build/component/local/process.js +2 -3
- package/build/component/local/process.js.map +1 -1
- package/build/component/local/taskDefinition.js +1 -2
- package/build/component/local/taskDefinition.js.map +1 -1
- package/build/component/m365/constants.js +1 -1
- package/build/component/m365/constants.js.map +1 -1
- package/build/component/m365/interface.js +1 -1
- package/build/component/m365/interface.js.map +1 -1
- package/build/component/m365/launchHelper.d.ts.map +1 -1
- package/build/component/m365/launchHelper.js +15 -15
- package/build/component/m365/launchHelper.js.map +1 -1
- package/build/component/m365/packageService.d.ts +1 -0
- package/build/component/m365/packageService.d.ts.map +1 -1
- package/build/component/m365/packageService.js +104 -91
- package/build/component/m365/packageService.js.map +1 -1
- package/build/component/m365/serviceConstant.d.ts.map +1 -1
- package/build/component/m365/serviceConstant.js +24 -4
- package/build/component/m365/serviceConstant.js.map +1 -1
- package/build/component/messages.d.ts.map +1 -1
- package/build/component/messages.js +7 -7
- package/build/component/messages.js.map +1 -1
- package/build/component/middleware/actionExecutionMW.js +5 -7
- package/build/component/middleware/actionExecutionMW.js.map +1 -1
- package/build/component/middleware/envMW.js +2 -2
- package/build/component/middleware/envMW.js.map +1 -1
- package/build/component/middleware/questionMW.js +1 -2
- package/build/component/middleware/questionMW.js.map +1 -1
- package/build/component/migrate.js +12 -16
- package/build/component/migrate.js.map +1 -1
- package/build/component/provisionUtils.js +6 -8
- package/build/component/provisionUtils.js.map +1 -1
- package/build/component/resource/botService/appStudio/interfaces/IBotRegistration.js +1 -1
- package/build/component/resource/botService/appStudio/interfaces/IBotRegistration.js.map +1 -1
- package/build/component/resource/botService/botRegistration/botFrameworkRegistration.js +6 -7
- package/build/component/resource/botService/botRegistration/botFrameworkRegistration.js.map +1 -1
- package/build/component/resource/botService/botRegistration/utils.js +1 -2
- package/build/component/resource/botService/botRegistration/utils.js.map +1 -1
- package/build/component/resource/botService/common.js +2 -3
- package/build/component/resource/botService/common.js.map +1 -1
- package/build/component/resource/botService/constants.js +17 -17
- package/build/component/resource/botService/constants.js.map +1 -1
- package/build/component/resource/botService/errors.d.ts +5 -5
- package/build/component/resource/botService/errors.d.ts.map +1 -1
- package/build/component/resource/botService/errors.js +8 -2
- package/build/component/resource/botService/errors.js.map +1 -1
- package/build/component/resource/botService/messages.d.ts.map +1 -1
- package/build/component/resource/botService/messages.js +17 -18
- package/build/component/resource/botService/messages.js.map +1 -1
- package/build/component/resource/botService/retryHandler.js +1 -2
- package/build/component/resource/botService/retryHandler.js.map +1 -1
- package/build/component/resource/botService/strings.js +3 -3
- package/build/component/resource/botService/strings.js.map +1 -1
- package/build/component/telemetry.d.ts +1 -1
- package/build/component/telemetry.d.ts.map +1 -1
- package/build/component/telemetry.js +19 -13
- package/build/component/telemetry.js.map +1 -1
- package/build/component/utils/ResourceGroupHelper.d.ts +1 -1
- package/build/component/utils/ResourceGroupHelper.d.ts.map +1 -1
- package/build/component/utils/ResourceGroupHelper.js +12 -14
- package/build/component/utils/ResourceGroupHelper.js.map +1 -1
- package/build/component/utils/azureClient.d.ts.map +1 -1
- package/build/component/utils/azureClient.js +11 -13
- package/build/component/utils/azureClient.js.map +1 -1
- package/build/component/utils/azureResourceOperation.d.ts.map +1 -1
- package/build/component/utils/azureResourceOperation.js +6 -6
- package/build/component/utils/azureResourceOperation.js.map +1 -1
- package/build/component/utils/azureSdkErrorHandler.js +2 -4
- package/build/component/utils/azureSdkErrorHandler.js.map +1 -1
- package/build/component/utils/charsetUtils.js +4 -5
- package/build/component/utils/charsetUtils.js.map +1 -1
- package/build/component/utils/common.d.ts +1 -1
- package/build/component/utils/common.d.ts.map +1 -1
- package/build/component/utils/common.js +13 -14
- package/build/component/utils/common.js.map +1 -1
- package/build/component/utils/depsChecker/common.d.ts.map +1 -1
- package/build/component/utils/depsChecker/common.js +3 -4
- package/build/component/utils/depsChecker/common.js.map +1 -1
- package/build/component/utils/depsChecker/cpUtils.d.ts +0 -1
- package/build/component/utils/depsChecker/cpUtils.d.ts.map +1 -1
- package/build/component/utils/depsChecker/cpUtils.js +10 -15
- package/build/component/utils/depsChecker/cpUtils.js.map +1 -1
- package/build/component/utils/envFunctionUtils.js +4 -4
- package/build/component/utils/envFunctionUtils.js.map +1 -1
- package/build/component/utils/envUtil.d.ts +2 -4
- package/build/component/utils/envUtil.d.ts.map +1 -1
- package/build/component/utils/envUtil.js +1 -2
- package/build/component/utils/envUtil.js.map +1 -1
- package/build/component/utils/fileOperation.d.ts +0 -1
- package/build/component/utils/fileOperation.d.ts.map +1 -1
- package/build/component/utils/fileOperation.js +5 -7
- package/build/component/utils/fileOperation.js.map +1 -1
- package/build/component/utils/mcpToolFetcher.d.ts +62 -0
- package/build/component/utils/mcpToolFetcher.d.ts.map +1 -0
- package/build/component/utils/mcpToolFetcher.js +208 -0
- package/build/component/utils/mcpToolFetcher.js.map +1 -0
- package/build/component/utils/metadataDAProperties.js +6 -7
- package/build/component/utils/metadataDAProperties.js.map +1 -1
- package/build/component/utils/metadataGraphPermssion.js +3 -5
- package/build/component/utils/metadataGraphPermssion.js.map +1 -1
- package/build/component/utils/metadataRscPermission.js +6 -8
- package/build/component/utils/metadataRscPermission.js.map +1 -1
- package/build/component/utils/metadataUtil.js +22 -16
- package/build/component/utils/metadataUtil.js.map +1 -1
- package/build/component/utils/odrProvider.js +9 -10
- package/build/component/utils/odrProvider.js.map +1 -1
- package/build/component/utils/pathUtils.js +1 -2
- package/build/component/utils/pathUtils.js.map +1 -1
- package/build/component/utils/pipelinePolicy.js +3 -2
- package/build/component/utils/pipelinePolicy.js.map +1 -1
- package/build/component/utils/settingsUtil.js.map +1 -1
- package/build/component/utils/teamsFxTelemetryReporter.d.ts.map +1 -1
- package/build/component/utils/teamsFxTelemetryReporter.js +16 -5
- package/build/component/utils/teamsFxTelemetryReporter.js.map +1 -1
- package/build/core/FxCore.d.ts +10 -7
- package/build/core/FxCore.d.ts.map +1 -1
- package/build/core/FxCore.declarativeAgent.d.ts +10 -0
- package/build/core/FxCore.declarativeAgent.d.ts.map +1 -1
- package/build/core/FxCore.declarativeAgent.js +345 -38
- package/build/core/FxCore.declarativeAgent.js.map +1 -1
- package/build/core/FxCore.js +257 -331
- package/build/core/FxCore.js.map +1 -1
- package/build/core/callback.d.ts +1 -1
- package/build/core/callback.d.ts.map +1 -1
- package/build/core/callback.js +1 -2
- package/build/core/callback.js.map +1 -1
- package/build/core/collaborator.js +46 -54
- package/build/core/collaborator.js.map +1 -1
- package/build/core/crypto.js +3 -1
- package/build/core/crypto.js.map +1 -1
- package/build/core/environment.js +1 -0
- package/build/core/environment.js.map +1 -1
- package/build/core/environmentName.js +9 -11
- package/build/core/environmentName.js.map +1 -1
- package/build/core/generateConfigFiles.js +3 -5
- package/build/core/generateConfigFiles.js.map +1 -1
- package/build/core/middleware/concurrentLocker.d.ts.map +1 -1
- package/build/core/middleware/concurrentLocker.js +4 -9
- package/build/core/middleware/concurrentLocker.js.map +1 -1
- package/build/core/middleware/contextInjector.d.ts.map +1 -1
- package/build/core/middleware/errorHandler.js +4 -5
- package/build/core/middleware/errorHandler.js.map +1 -1
- package/build/core/middleware/fileLocker.js +1 -2
- package/build/core/middleware/fileLocker.js.map +1 -1
- package/build/core/middleware/projectMigratorV3.d.ts +1 -1
- package/build/core/middleware/projectMigratorV3.d.ts.map +1 -1
- package/build/core/middleware/projectMigratorV3.js +33 -35
- package/build/core/middleware/projectMigratorV3.js.map +1 -1
- package/build/core/middleware/projectSettingsLoader.js +4 -5
- package/build/core/middleware/projectSettingsLoader.js.map +1 -1
- package/build/core/middleware/projectVersionChecker.js.map +1 -1
- package/build/core/middleware/retry.js +2 -4
- package/build/core/middleware/retry.js.map +1 -1
- package/build/core/middleware/utils/MigrationUtils.js +6 -6
- package/build/core/middleware/utils/MigrationUtils.js.map +1 -1
- package/build/core/middleware/utils/appYmlGenerator.d.ts.map +1 -1
- package/build/core/middleware/utils/appYmlGenerator.js +9 -8
- package/build/core/middleware/utils/appYmlGenerator.js.map +1 -1
- package/build/core/middleware/utils/debug/appLocalYmlGenerator.js +7 -9
- package/build/core/middleware/utils/debug/appLocalYmlGenerator.js.map +1 -1
- package/build/core/middleware/utils/debug/constants.js +13 -13
- package/build/core/middleware/utils/debug/constants.js.map +1 -1
- package/build/core/middleware/utils/debug/debugMigrationContext.js +6 -1
- package/build/core/middleware/utils/debug/debugMigrationContext.js.map +1 -1
- package/build/core/middleware/utils/debug/debugV3MigrationUtils.js +17 -18
- package/build/core/middleware/utils/debug/debugV3MigrationUtils.js.map +1 -1
- package/build/core/middleware/utils/debug/taskMigrator.d.ts.map +1 -1
- package/build/core/middleware/utils/debug/taskMigrator.js +25 -32
- package/build/core/middleware/utils/debug/taskMigrator.js.map +1 -1
- package/build/core/middleware/utils/migrationContext.d.ts +0 -1
- package/build/core/middleware/utils/migrationContext.d.ts.map +1 -1
- package/build/core/middleware/utils/migrationContext.js +12 -12
- package/build/core/middleware/utils/migrationContext.js.map +1 -1
- package/build/core/middleware/utils/v3MigrationUtils.js +37 -38
- package/build/core/middleware/utils/v3MigrationUtils.js.map +1 -1
- package/build/core/middleware/videoFilterAppBlocker.d.ts.map +1 -1
- package/build/core/middleware/videoFilterAppBlocker.js +4 -5
- package/build/core/middleware/videoFilterAppBlocker.js.map +1 -1
- package/build/core/share.js +6 -10
- package/build/core/share.js.map +1 -1
- package/build/core/telemetry.js +5 -5
- package/build/core/telemetry.js.map +1 -1
- package/build/error/common.d.ts.map +1 -1
- package/build/error/common.js +7 -4
- package/build/error/common.js.map +1 -1
- package/build/error/deploy.js +2 -4
- package/build/error/deploy.js.map +1 -1
- package/build/error/teamsApp.js.map +1 -1
- package/build/error/types.js +1 -1
- package/build/error/types.js.map +1 -1
- package/build/folder.js +2 -3
- package/build/folder.js.map +1 -1
- package/build/question/collaborator.js +10 -13
- package/build/question/collaborator.js.map +1 -1
- package/build/question/constants.d.ts +2 -1
- package/build/question/constants.d.ts.map +1 -1
- package/build/question/constants.js +25 -16
- package/build/question/constants.js.map +1 -1
- package/build/question/create.d.ts +10 -0
- package/build/question/create.d.ts.map +1 -1
- package/build/question/create.js +167 -70
- package/build/question/create.js.map +1 -1
- package/build/question/generator.js +3 -4
- package/build/question/generator.js.map +1 -1
- package/build/question/inputs/AddPluginInputs.d.ts +11 -5
- package/build/question/inputs/AddPluginInputs.d.ts.map +1 -1
- package/build/question/inputs/CreateProjectInputs.d.ts +9 -1
- package/build/question/inputs/CreateProjectInputs.d.ts.map +1 -1
- package/build/question/options/AddPluginOptions.d.ts.map +1 -1
- package/build/question/options/AddPluginOptions.js +22 -6
- package/build/question/options/AddPluginOptions.js.map +1 -1
- package/build/question/options/CreateProjectOptions.d.ts.map +1 -1
- package/build/question/options/CreateProjectOptions.js +24 -1
- package/build/question/options/CreateProjectOptions.js.map +1 -1
- package/build/question/other.d.ts.map +1 -1
- package/build/question/other.js +110 -63
- package/build/question/other.js.map +1 -1
- package/build/question/questionNames.d.ts +4 -3
- package/build/question/questionNames.d.ts.map +1 -1
- package/build/question/questionNames.js +2 -1
- package/build/question/questionNames.js.map +1 -1
- package/build/question/scaffold/commonNodes.d.ts.map +1 -1
- package/build/question/scaffold/commonNodes.js +23 -15
- package/build/question/scaffold/commonNodes.js.map +1 -1
- package/build/question/scaffold/constructNode.d.ts +2 -2
- package/build/question/scaffold/constructNode.d.ts.map +1 -1
- package/build/question/scaffold/constructNode.js +129 -31
- package/build/question/scaffold/constructNode.js.map +1 -1
- package/build/question/scaffold/vs/createRootNode.d.ts.map +1 -1
- package/build/question/scaffold/vs/createRootNode.js +4 -4
- package/build/question/scaffold/vs/createRootNode.js.map +1 -1
- package/build/question/scaffold/vsc/CapabilityOptions.d.ts +1 -0
- package/build/question/scaffold/vsc/CapabilityOptions.d.ts.map +1 -1
- package/build/question/scaffold/vsc/CapabilityOptions.js +50 -43
- package/build/question/scaffold/vsc/CapabilityOptions.js.map +1 -1
- package/build/question/scaffold/vsc/ProjectTypeOptions.d.ts.map +1 -1
- package/build/question/scaffold/vsc/ProjectTypeOptions.js +23 -23
- package/build/question/scaffold/vsc/ProjectTypeOptions.js.map +1 -1
- package/build/question/scaffold/vsc/createFromTdpNode.d.ts.map +1 -1
- package/build/question/scaffold/vsc/createFromTdpNode.js +11 -32
- package/build/question/scaffold/vsc/createFromTdpNode.js.map +1 -1
- package/build/question/scaffold/vsc/createRootNode.d.ts.map +1 -1
- package/build/question/scaffold/vsc/createRootNode.js +13 -39
- package/build/question/scaffold/vsc/createRootNode.js.map +1 -1
- package/build/question/scaffold/vsc/daProjectTypeNode.d.ts +1 -2
- package/build/question/scaffold/vsc/daProjectTypeNode.d.ts.map +1 -1
- package/build/question/scaffold/vsc/daProjectTypeNode.js +10 -19
- package/build/question/scaffold/vsc/daProjectTypeNode.js.map +1 -1
- package/build/question/scaffold/vsc/rootNode.d.ts +12 -0
- package/build/question/scaffold/vsc/rootNode.d.ts.map +1 -0
- package/build/question/scaffold/vsc/rootNode.js +46 -0
- package/build/question/scaffold/vsc/rootNode.js.map +1 -0
- package/build/question/scaffold/vsc/teamsProjectTypeNode.d.ts +18 -0
- package/build/question/scaffold/vsc/teamsProjectTypeNode.d.ts.map +1 -1
- package/build/question/scaffold/vsc/teamsProjectTypeNode.js +176 -39
- package/build/question/scaffold/vsc/teamsProjectTypeNode.js.map +1 -1
- package/build/question/share.js +6 -6
- package/build/question/share.js.map +1 -1
- package/build/question/utils.js +1 -2
- package/build/question/utils.js.map +1 -1
- package/build/ui/validationUtils.d.ts.map +1 -1
- package/build/ui/validationUtils.js +3 -7
- package/build/ui/validationUtils.js.map +1 -1
- package/build/ui/visitor.d.ts +1 -1
- package/build/ui/visitor.d.ts.map +1 -1
- package/build/ui/visitor.js +10 -12
- package/build/ui/visitor.js.map +1 -1
- package/package.json +25 -25
- package/resource/package.nls.cs.json +29 -63
- package/resource/package.nls.de.json +33 -67
- package/resource/package.nls.es.json +30 -64
- package/resource/package.nls.fr.json +31 -65
- package/resource/package.nls.it.json +33 -67
- package/resource/package.nls.ja.json +30 -64
- package/resource/package.nls.json +24 -64
- package/resource/package.nls.ko.json +32 -66
- package/resource/package.nls.pl.json +33 -67
- package/resource/package.nls.pt-BR.json +33 -67
- package/resource/package.nls.ru.json +29 -63
- package/resource/package.nls.tr.json +30 -64
- package/resource/package.nls.zh-Hans.json +30 -64
- package/resource/package.nls.zh-Hant.json +33 -67
- package/resource/package.nls.zh-cn.json +1 -34
- package/resource/package.nls.zh-tw.json +1 -34
- package/resource/templates/package.nls.cs.json +62 -4
- package/resource/templates/package.nls.de.json +65 -7
- package/resource/templates/package.nls.es.json +64 -6
- package/resource/templates/package.nls.fr.json +65 -7
- package/resource/templates/package.nls.it.json +63 -5
- package/resource/templates/package.nls.ja.json +60 -2
- package/resource/templates/package.nls.json +61 -3
- package/resource/templates/package.nls.ko.json +61 -3
- package/resource/templates/package.nls.pl.json +64 -6
- package/resource/templates/package.nls.pt-BR.json +60 -2
- package/resource/templates/package.nls.ru.json +61 -3
- package/resource/templates/package.nls.tr.json +59 -1
- package/resource/templates/package.nls.zh-Hans.json +60 -2
- package/resource/templates/package.nls.zh-Hant.json +63 -5
- package/resource/templates/package.nls.zh-cn.json +55 -1
- package/resource/templates/package.nls.zh-tw.json +55 -1
- package/templates/configs/playground/typescript/.vscode/tasks.json +1 -1
- 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/templates/metadata.zip +0 -0
- package/templates/ui/tdpNode.json +330 -0
- package/templates/ui/wizardNode.json +447 -0
- package/build/question/scaffold/vsc/customEngineAgentNode.d.ts +0 -3
- package/build/question/scaffold/vsc/customEngineAgentNode.d.ts.map +0 -1
- package/build/question/scaffold/vsc/customEngineAgentNode.js +0 -28
- package/build/question/scaffold/vsc/customEngineAgentNode.js.map +0 -1
- package/build/question/scaffold/vsc/graphConnectorProjectTypeNode.d.ts +0 -3
- package/build/question/scaffold/vsc/graphConnectorProjectTypeNode.d.ts.map +0 -1
- package/build/question/scaffold/vsc/graphConnectorProjectTypeNode.js +0 -25
- package/build/question/scaffold/vsc/graphConnectorProjectTypeNode.js.map +0 -1
- package/build/question/scaffold/vsc/officeAddinProjectTypeNode.d.ts +0 -4
- package/build/question/scaffold/vsc/officeAddinProjectTypeNode.d.ts.map +0 -1
- package/build/question/scaffold/vsc/officeAddinProjectTypeNode.js +0 -93
- package/build/question/scaffold/vsc/officeAddinProjectTypeNode.js.map +0 -1
- package/templates/ui/ceaNode.json +0 -30
- package/templates/ui/teamsNode.json +0 -124
package/build/core/FxCore.js
CHANGED
|
@@ -44,16 +44,13 @@ const ManifestUtils_1 = require("../component/driver/teamsApp/utils/ManifestUtil
|
|
|
44
44
|
const PluginManifestUtils_1 = require("../component/driver/teamsApp/utils/PluginManifestUtils");
|
|
45
45
|
const utils_3 = require("../component/driver/teamsApp/utils/utils");
|
|
46
46
|
const utils_4 = require("../component/driver/util/utils");
|
|
47
|
-
require("../component/feature/sso");
|
|
48
|
-
const helper_1 = require("../component/generator/declarativeAgent/helper");
|
|
49
47
|
const oneDriveSharePointHandler_1 = require("../component/generator/declarativeAgent/oneDriveSharePointHandler");
|
|
50
|
-
const
|
|
48
|
+
const helper_1 = require("../component/generator/openApiSpec/helper");
|
|
51
49
|
const templateHelper_1 = require("../component/generator/templateHelper");
|
|
52
50
|
const templateNames_1 = require("../component/generator/templates/templateNames");
|
|
53
51
|
const utils_5 = require("../component/generator/utils");
|
|
54
52
|
const launchHelper_1 = require("../component/m365/launchHelper");
|
|
55
53
|
const packageService_1 = require("../component/m365/packageService");
|
|
56
|
-
const constants_3 = require("../common/constants");
|
|
57
54
|
const envMW_1 = require("../component/middleware/envMW");
|
|
58
55
|
const questionMW_1 = require("../component/middleware/questionMW");
|
|
59
56
|
const common_1 = require("../component/utils/common");
|
|
@@ -64,7 +61,7 @@ const settingsUtil_1 = require("../component/utils/settingsUtil");
|
|
|
64
61
|
const common_2 = require("../error/common");
|
|
65
62
|
const upgrade_1 = require("../error/upgrade");
|
|
66
63
|
const yml_1 = require("../error/yml");
|
|
67
|
-
const
|
|
64
|
+
const constants_3 = require("../question/constants");
|
|
68
65
|
const other_1 = require("../question/other");
|
|
69
66
|
const ProjectTypeOptions_1 = require("../question/scaffold/vsc/ProjectTypeOptions");
|
|
70
67
|
const share_1 = require("../question/share");
|
|
@@ -97,10 +94,10 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
97
94
|
}
|
|
98
95
|
async createProject(inputs) {
|
|
99
96
|
const context = (0, globalVars_1.createContext)();
|
|
100
|
-
if (inputs[
|
|
97
|
+
if (inputs[constants_3.QuestionNames.ProjectType] === ProjectTypeOptions_1.ProjectTypeOptions.startWithGithubCopilot().id) {
|
|
101
98
|
return (0, teamsfx_api_1.ok)({ projectPath: "", shouldInvokeTeamsAgent: true });
|
|
102
99
|
}
|
|
103
|
-
inputs[
|
|
100
|
+
inputs[constants_3.QuestionNames.Scratch] = constants_3.ScratchOptions.yes().id;
|
|
104
101
|
const res = await coordinator_1.coordinator.create(context, inputs);
|
|
105
102
|
if (res.isOk()) {
|
|
106
103
|
inputs.projectPath = res.value.projectPath;
|
|
@@ -109,7 +106,7 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
109
106
|
}
|
|
110
107
|
async createProjectFromTdp(inputs) {
|
|
111
108
|
const context = (0, globalVars_1.createContext)();
|
|
112
|
-
inputs[
|
|
109
|
+
inputs[constants_3.QuestionNames.Scratch] = constants_3.ScratchOptions.yes().id;
|
|
113
110
|
// should never happen as we do same check on Developer Portal.
|
|
114
111
|
if (inputs.teamsAppFromTdp) {
|
|
115
112
|
if ((0, utils_3.containsUnsupportedFeature)(inputs.teamsAppFromTdp)) {
|
|
@@ -135,12 +132,12 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
135
132
|
folder = path.resolve(folder);
|
|
136
133
|
const appName = inputs["app-name"];
|
|
137
134
|
if (undefined === appName)
|
|
138
|
-
return (0, teamsfx_api_1.err)(new common_2.MissingRequiredInputError(
|
|
135
|
+
return (0, teamsfx_api_1.err)(new common_2.MissingRequiredInputError(constants_3.QuestionNames.AppName));
|
|
139
136
|
const validateResult = jsonschema.validate(appName, {
|
|
140
|
-
pattern:
|
|
137
|
+
pattern: constants_3.AppNamePattern,
|
|
141
138
|
});
|
|
142
139
|
if (validateResult.errors && validateResult.errors.length > 0) {
|
|
143
|
-
return (0, teamsfx_api_1.err)(new common_2.InputValidationError(
|
|
140
|
+
return (0, teamsfx_api_1.err)(new common_2.InputValidationError(constants_3.QuestionNames.AppName, validateResult.errors[0].message));
|
|
144
141
|
}
|
|
145
142
|
const projectPath = path.join(folder, appName);
|
|
146
143
|
//2. run generator
|
|
@@ -164,7 +161,7 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
164
161
|
*/
|
|
165
162
|
async createSampleProject(inputs) {
|
|
166
163
|
const context = (0, globalVars_1.createContext)();
|
|
167
|
-
inputs[
|
|
164
|
+
inputs[constants_3.QuestionNames.Scratch] = constants_3.ScratchOptions.no().id;
|
|
168
165
|
const res = await coordinator_1.coordinator.create(context, inputs);
|
|
169
166
|
inputs.projectPath = context.projectPath;
|
|
170
167
|
return res;
|
|
@@ -208,12 +205,12 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
208
205
|
* none lifecycle command, uninstall provisioned resources
|
|
209
206
|
*/
|
|
210
207
|
async uninstall(inputs) {
|
|
211
|
-
switch (inputs[
|
|
212
|
-
case
|
|
208
|
+
switch (inputs[constants_3.QuestionNames.UninstallMode]) {
|
|
209
|
+
case constants_3.QuestionNames.UninstallModeManifestId:
|
|
213
210
|
return await this.uninstallByManifestId(inputs);
|
|
214
|
-
case
|
|
211
|
+
case constants_3.QuestionNames.UninstallModeEnv:
|
|
215
212
|
return await this.uninstallByEnv(inputs);
|
|
216
|
-
case
|
|
213
|
+
case constants_3.QuestionNames.UninstallModeTitleId:
|
|
217
214
|
return await this.uninstallByTitleId(inputs);
|
|
218
215
|
default:
|
|
219
216
|
return (0, teamsfx_api_1.err)(new common_2.UnhandledError(new Error("Uninstall mode not supported"), "FxCore"));
|
|
@@ -223,14 +220,14 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
223
220
|
* uninstall provisioned resources by manifest ID
|
|
224
221
|
*/
|
|
225
222
|
async uninstallByManifestId(inputs) {
|
|
226
|
-
const manifestId = inputs[
|
|
223
|
+
const manifestId = inputs[constants_3.QuestionNames.ManifestId];
|
|
227
224
|
if (!manifestId) {
|
|
228
225
|
return (0, teamsfx_api_1.err)(new common_2.MissingRequiredInputError("manifest-id", "FxCore"));
|
|
229
226
|
}
|
|
230
|
-
const uninstallOptions = inputs[
|
|
231
|
-
const m356AppOption = uninstallOptions
|
|
232
|
-
const tdpOption = uninstallOptions
|
|
233
|
-
const botOption = uninstallOptions
|
|
227
|
+
const uninstallOptions = inputs[constants_3.QuestionNames.UninstallOptions];
|
|
228
|
+
const m356AppOption = uninstallOptions?.includes(constants_3.QuestionNames.UninstallOptionM365);
|
|
229
|
+
const tdpOption = uninstallOptions?.includes(constants_3.QuestionNames.UninstallOptionTDP);
|
|
230
|
+
const botOption = uninstallOptions?.includes(constants_3.QuestionNames.UninstallOptionBot);
|
|
234
231
|
if (m356AppOption) {
|
|
235
232
|
const res = await this.uninstallM365App(undefined, manifestId);
|
|
236
233
|
if (res.isErr()) {
|
|
@@ -256,7 +253,6 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
256
253
|
* uninstall provisioned resources by a given environment
|
|
257
254
|
*/
|
|
258
255
|
async uninstallByEnv(inputs, ctx) {
|
|
259
|
-
var _a, _b, _c, _d, _e;
|
|
260
256
|
if (!inputs.env) {
|
|
261
257
|
return (0, teamsfx_api_1.err)(new common_2.MissingRequiredInputError("env", "FxCore"));
|
|
262
258
|
}
|
|
@@ -272,24 +268,24 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
272
268
|
let teamsAppIdKeyName = "";
|
|
273
269
|
let botIdKeyName = "";
|
|
274
270
|
let m365TitleIdKeyName = "";
|
|
275
|
-
for (const action of
|
|
271
|
+
for (const action of projectModel.provision?.driverDefs ?? []) {
|
|
276
272
|
if (action.uses === "teamsApp/create") {
|
|
277
|
-
teamsAppIdKeyName =
|
|
273
|
+
teamsAppIdKeyName = action.writeToEnvironmentFile?.teamsAppId || "TEAMS_APP_ID";
|
|
278
274
|
teamsAppId = process.env[teamsAppIdKeyName];
|
|
279
275
|
}
|
|
280
276
|
else if (action.uses === "botFramework/create") {
|
|
281
|
-
botIdKeyName =
|
|
277
|
+
botIdKeyName = action.writeToEnvironmentFile?.botId || "BOT_ID";
|
|
282
278
|
botId = process.env[botIdKeyName];
|
|
283
279
|
}
|
|
284
280
|
else if (action.uses === "teamsApp/extendToM365") {
|
|
285
|
-
m365TitleIdKeyName =
|
|
281
|
+
m365TitleIdKeyName = action.writeToEnvironmentFile?.titleId || "M365_TITLE_ID";
|
|
286
282
|
m365TitleId = process.env[m365TitleIdKeyName];
|
|
287
283
|
}
|
|
288
284
|
}
|
|
289
|
-
const uninstallOptions = inputs[
|
|
290
|
-
const m356AppOption = uninstallOptions
|
|
291
|
-
const tdpOption = uninstallOptions
|
|
292
|
-
const botOption = uninstallOptions
|
|
285
|
+
const uninstallOptions = inputs[constants_3.QuestionNames.UninstallOptions];
|
|
286
|
+
const m356AppOption = uninstallOptions?.includes(constants_3.QuestionNames.UninstallOptionM365);
|
|
287
|
+
const tdpOption = uninstallOptions?.includes(constants_3.QuestionNames.UninstallOptionTDP);
|
|
288
|
+
const botOption = uninstallOptions?.includes(constants_3.QuestionNames.UninstallOptionBot);
|
|
293
289
|
if ((teamsAppId || m365TitleId) && m356AppOption) {
|
|
294
290
|
const res = await this.uninstallM365App(m365TitleId, teamsAppId);
|
|
295
291
|
if (res.isErr()) {
|
|
@@ -332,7 +328,7 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
332
328
|
* uninstall provisioned resources by title ID. Titlle mode only uninstalls M365 app.
|
|
333
329
|
*/
|
|
334
330
|
async uninstallByTitleId(inputs) {
|
|
335
|
-
const titleId = inputs[
|
|
331
|
+
const titleId = inputs[constants_3.QuestionNames.TitleId];
|
|
336
332
|
if (!titleId) {
|
|
337
333
|
return (0, teamsfx_api_1.err)(new common_2.MissingRequiredInputError("title-id", "FxCore"));
|
|
338
334
|
}
|
|
@@ -346,13 +342,12 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
346
342
|
* uninstall sideloaded appps in M365
|
|
347
343
|
*/
|
|
348
344
|
async uninstallM365App(titleId, manifestId) {
|
|
349
|
-
var _a, _b;
|
|
350
345
|
if (titleId === undefined && manifestId === undefined) {
|
|
351
346
|
return (0, teamsfx_api_1.err)(new common_2.MissingRequiredInputError("title id or manifest id", "FxCore"));
|
|
352
347
|
}
|
|
353
348
|
const sideloadingServiceEndpoint = (0, constants_1.getResourceServiceEndpoint)(constants_1.ResourceServiceType.MOS3);
|
|
354
349
|
const sideloadingTokenRes = await globalVars_1.TOOLS.tokenProvider.m365TokenProvider.getAccessToken({
|
|
355
|
-
scopes: (0,
|
|
350
|
+
scopes: (0, constants_1.MosServiceScope)(),
|
|
356
351
|
});
|
|
357
352
|
if (sideloadingTokenRes.isErr()) {
|
|
358
353
|
return (0, teamsfx_api_1.err)(sideloadingTokenRes.error);
|
|
@@ -360,19 +355,19 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
360
355
|
const packageService = new packageService_1.PackageService(sideloadingServiceEndpoint, globalVars_1.TOOLS.logProvider);
|
|
361
356
|
if (titleId === undefined) {
|
|
362
357
|
try {
|
|
363
|
-
titleId = await packageService.retrieveTitleId(sideloadingTokenRes.value, manifestId
|
|
358
|
+
titleId = await packageService.retrieveTitleId(sideloadingTokenRes.value, manifestId ?? "");
|
|
364
359
|
}
|
|
365
360
|
catch (err) {
|
|
366
361
|
await globalVars_1.TOOLS.ui.showMessage("info", (0, localizeUtils_1.getLocalizedString)("core.uninstall.failed.titleId"), false);
|
|
367
362
|
throw (0, common_2.assembleError)(err);
|
|
368
363
|
}
|
|
369
364
|
}
|
|
370
|
-
const confirmRes = await
|
|
365
|
+
const confirmRes = await globalVars_1.TOOLS.ui.confirm?.({
|
|
371
366
|
name: "uninstallM365App",
|
|
372
367
|
title: (0, localizeUtils_1.getLocalizedString)("core.uninstall.confirm.m365App", titleId),
|
|
373
368
|
default: true,
|
|
374
|
-
})
|
|
375
|
-
if (
|
|
369
|
+
});
|
|
370
|
+
if (confirmRes?.isOk() && confirmRes.value.result === true) {
|
|
376
371
|
await packageService.unacquire(sideloadingTokenRes.value, titleId);
|
|
377
372
|
await globalVars_1.TOOLS.ui.showMessage("info", (0, localizeUtils_1.getLocalizedString)("core.uninstall.success.m365App", titleId), false);
|
|
378
373
|
await globalVars_1.TOOLS.ui.showMessage("info", (0, localizeUtils_1.getLocalizedString)("core.uninstall.success.delayWarning"), false);
|
|
@@ -387,19 +382,18 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
387
382
|
* uninstall sideloaded apps in Teams Developer Portal
|
|
388
383
|
*/
|
|
389
384
|
async uninstallAppRegistration(manifestId) {
|
|
390
|
-
var _a, _b;
|
|
391
385
|
const appStudioTokenRes = await globalVars_1.TOOLS.tokenProvider.m365TokenProvider.getAccessToken({
|
|
392
386
|
scopes: (0, constants_1.AppStudioScopes)(),
|
|
393
387
|
});
|
|
394
388
|
if (appStudioTokenRes.isErr()) {
|
|
395
389
|
return (0, teamsfx_api_1.err)(appStudioTokenRes.error);
|
|
396
390
|
}
|
|
397
|
-
const confirmRes = await
|
|
391
|
+
const confirmRes = await globalVars_1.TOOLS.ui.confirm?.({
|
|
398
392
|
name: "uninstallAppRegistration",
|
|
399
393
|
title: (0, localizeUtils_1.getLocalizedString)("core.uninstall.confirm.tdp", manifestId),
|
|
400
394
|
default: true,
|
|
401
|
-
})
|
|
402
|
-
if (
|
|
395
|
+
});
|
|
396
|
+
if (confirmRes?.isOk() && confirmRes.value.result === true) {
|
|
403
397
|
const token = appStudioTokenRes.value;
|
|
404
398
|
await teamsDevPortalClient_1.teamsDevPortalClient.deleteApp(token, manifestId);
|
|
405
399
|
await globalVars_1.TOOLS.ui.showMessage("info", (0, localizeUtils_1.getLocalizedString)("core.uninstall.success.tdp", manifestId), false);
|
|
@@ -414,7 +408,6 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
414
408
|
* uninstall bots created in dev.botframework.com
|
|
415
409
|
*/
|
|
416
410
|
async uninstallBotFrameworRegistration(botId, manifestId) {
|
|
417
|
-
var _a, _b;
|
|
418
411
|
if (!botId && !manifestId) {
|
|
419
412
|
return (0, teamsfx_api_1.err)(new common_2.MissingRequiredInputError("bot id or manifest id", "FxCore"));
|
|
420
413
|
}
|
|
@@ -433,12 +426,12 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
433
426
|
}
|
|
434
427
|
botId = botIdRes;
|
|
435
428
|
}
|
|
436
|
-
const confirmRes = await
|
|
429
|
+
const confirmRes = await globalVars_1.TOOLS.ui.confirm?.({
|
|
437
430
|
name: "uninstallBotFrameworRegistration",
|
|
438
431
|
title: (0, localizeUtils_1.getLocalizedString)("core.uninstall.confirm.bot", botId),
|
|
439
432
|
default: true,
|
|
440
|
-
})
|
|
441
|
-
if (
|
|
433
|
+
});
|
|
434
|
+
if (confirmRes?.isOk() && confirmRes.value.result === true) {
|
|
442
435
|
await teamsDevPortalClient_1.teamsDevPortalClient.deleteBot(token, botId);
|
|
443
436
|
await globalVars_1.TOOLS.ui.showMessage("info", (0, localizeUtils_1.getLocalizedString)("core.uninstall.success.bot", botId), false);
|
|
444
437
|
}
|
|
@@ -476,7 +469,7 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
476
469
|
inputs.stage = teamsfx_api_1.Stage.deployAad;
|
|
477
470
|
const updateAadClient = typedi_1.Container.get("aadApp/update");
|
|
478
471
|
// In V3, the aad.template.json exist at .fx folder, and output to root build folder.
|
|
479
|
-
const manifestTemplatePath = inputs[
|
|
472
|
+
const manifestTemplatePath = inputs[constants_3.QuestionNames.AadAppManifestFilePath];
|
|
480
473
|
if (!(await fs_extra_1.default.pathExists(manifestTemplatePath))) {
|
|
481
474
|
return (0, teamsfx_api_1.err)(new common_2.FileNotFoundError("deployAadManifest", manifestTemplatePath));
|
|
482
475
|
}
|
|
@@ -517,12 +510,12 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
517
510
|
(0, globalVars_1.setErrorContext)({ component: "spfxAdd", method: "run" });
|
|
518
511
|
const driver = typedi_1.Container.get("spfx/add");
|
|
519
512
|
const args = {
|
|
520
|
-
manifestPath: inputs[
|
|
521
|
-
localManifestPath: inputs[
|
|
522
|
-
spfxFolder: inputs[
|
|
523
|
-
webpartName: inputs[
|
|
524
|
-
framework: inputs[
|
|
525
|
-
spfxPackage:
|
|
513
|
+
manifestPath: inputs[constants_3.QuestionNames.ManifestPath],
|
|
514
|
+
localManifestPath: inputs[constants_3.QuestionNames.LocalTeamsAppManifestFilePath],
|
|
515
|
+
spfxFolder: inputs[constants_3.QuestionNames.SPFxFolder],
|
|
516
|
+
webpartName: inputs[constants_3.QuestionNames.SPFxWebpartName],
|
|
517
|
+
framework: inputs[constants_3.QuestionNames.SPFxFramework],
|
|
518
|
+
spfxPackage: constants_3.SPFxVersionOptionIds.installLocally,
|
|
526
519
|
};
|
|
527
520
|
const Context = (0, utils_4.createDriverContext)(inputs);
|
|
528
521
|
const res = await driver.run(args, Context);
|
|
@@ -549,8 +542,7 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
549
542
|
}
|
|
550
543
|
}
|
|
551
544
|
async removeSharedAccess(inputs, ctx) {
|
|
552
|
-
|
|
553
|
-
const emails = inputs[constants_4.QuestionNames.RemoveUsers];
|
|
545
|
+
const emails = inputs[constants_3.QuestionNames.RemoveUsers];
|
|
554
546
|
if (!emails || emails.length === 0) {
|
|
555
547
|
return (0, teamsfx_api_1.err)(new common_2.MissingRequiredInputError("emails", "FxCore"));
|
|
556
548
|
}
|
|
@@ -569,7 +561,7 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
569
561
|
}
|
|
570
562
|
const appStudioToken = appStudioTokenRes.value;
|
|
571
563
|
const mosTokenRes = await tokenProvider.getAccessToken({
|
|
572
|
-
scopes: (0,
|
|
564
|
+
scopes: (0, constants_1.MosServiceScope)(),
|
|
573
565
|
});
|
|
574
566
|
if (mosTokenRes.isErr()) {
|
|
575
567
|
return (0, teamsfx_api_1.err)(mosTokenRes.error);
|
|
@@ -598,20 +590,20 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
598
590
|
}
|
|
599
591
|
}
|
|
600
592
|
const msg = (0, localizeUtils_1.getLocalizedString)("core.common.removeOwnership.success", emails);
|
|
601
|
-
|
|
593
|
+
globalVars_1.TOOLS.ui?.showMessage("info", msg, false);
|
|
602
594
|
return (0, teamsfx_api_1.ok)(undefined);
|
|
603
595
|
}
|
|
604
596
|
/**
|
|
605
597
|
* lifecycle command: share
|
|
606
598
|
*/
|
|
607
599
|
async shareApplication(inputs, ctx) {
|
|
608
|
-
const operation = inputs[
|
|
609
|
-
const scope = inputs[
|
|
600
|
+
const operation = inputs[constants_3.QuestionNames.ShareOperation];
|
|
601
|
+
const scope = inputs[constants_3.QuestionNames.ShareScope];
|
|
610
602
|
let emails = [];
|
|
611
603
|
if (scope === share_1.ShareScopeOption.ShareAppWithSpecificUsers ||
|
|
612
604
|
operation === share_1.ShareOperationOption.RemoveShareAccessFromUsers) {
|
|
613
|
-
emails = inputs[
|
|
614
|
-
if (emails.length >
|
|
605
|
+
emails = inputs[constants_3.QuestionNames.UserEmail].split(",").map((e) => e.trim());
|
|
606
|
+
if (emails.length > constants_3.MAX_EMAIL_NUMBER) {
|
|
615
607
|
return (0, teamsfx_api_1.err)(new common_2.InputValidationError("emails", "Too many emails"));
|
|
616
608
|
}
|
|
617
609
|
}
|
|
@@ -622,7 +614,7 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
622
614
|
const sharedTitleId = parseRes.value.titleId;
|
|
623
615
|
const tokenProvider = globalVars_1.TOOLS.tokenProvider.m365TokenProvider;
|
|
624
616
|
const mosTokenRes = await tokenProvider.getAccessToken({
|
|
625
|
-
scopes: (0,
|
|
617
|
+
scopes: (0, constants_1.MosServiceScope)(),
|
|
626
618
|
});
|
|
627
619
|
if (mosTokenRes.isErr()) {
|
|
628
620
|
return (0, teamsfx_api_1.err)(mosTokenRes.error);
|
|
@@ -650,7 +642,7 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
650
642
|
if (func.method === "addSso") {
|
|
651
643
|
// used in v3 only in VS
|
|
652
644
|
inputs.stage = teamsfx_api_1.Stage.addFeature;
|
|
653
|
-
inputs[
|
|
645
|
+
inputs[constants_3.QuestionNames.Features] = constants_2.SingleSignOnOptionItem.id;
|
|
654
646
|
const component = typedi_1.Container.get("sso");
|
|
655
647
|
(0, globalVars_1.setErrorContext)({ component: "sso", method: "add" });
|
|
656
648
|
res = await component.add(context, inputs);
|
|
@@ -668,23 +660,21 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
668
660
|
return (0, teamsfx_api_1.err)(new common_2.FileNotFoundError("buildAadManifest", manifestTemplatePath));
|
|
669
661
|
}
|
|
670
662
|
await fs_extra_1.default.ensureDir(path.join(inputs.projectPath, "build"));
|
|
671
|
-
const manifestOutputPath = path.join(inputs.projectPath, "build",
|
|
672
|
-
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
|
|
673
|
-
`aad.${inputs.env}.json`);
|
|
663
|
+
const manifestOutputPath = path.join(inputs.projectPath, "build", `aad.${inputs.env}.json`);
|
|
674
664
|
const Context = (0, utils_4.createDriverContext)(inputs);
|
|
675
665
|
await (0, buildAadManifest_1.buildAadManifest)(Context, manifestTemplatePath, manifestOutputPath);
|
|
676
666
|
return (0, teamsfx_api_1.ok)(undefined);
|
|
677
667
|
}
|
|
678
668
|
async convertAadToNewSchema(inputs) {
|
|
679
|
-
const manifestTemplatePath = inputs[
|
|
680
|
-
const projectPath = inputs[
|
|
669
|
+
const manifestTemplatePath = inputs[constants_3.QuestionNames.AadAppManifestFilePath];
|
|
670
|
+
const projectPath = inputs[constants_3.QuestionNames.ProjectPath];
|
|
681
671
|
return aadManifestHelper_1.AadManifestHelper.convertManifestToNewSchemaAndOverride(manifestTemplatePath, projectPath);
|
|
682
672
|
}
|
|
683
673
|
/**
|
|
684
674
|
* v3 only none lifecycle command
|
|
685
675
|
*/
|
|
686
676
|
async deployTeamsManifest(inputs, ctx) {
|
|
687
|
-
inputs.manifestTemplatePath = inputs[
|
|
677
|
+
inputs.manifestTemplatePath = inputs[constants_3.QuestionNames.TeamsAppManifestFilePath];
|
|
688
678
|
const context = (0, globalVars_1.createContext)();
|
|
689
679
|
const res = await (0, appStudio_1.updateManifestV3)(context, inputs);
|
|
690
680
|
if (res.isOk()) {
|
|
@@ -731,7 +721,7 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
731
721
|
if (inputs["manifest-path"]) {
|
|
732
722
|
return await this.validateManifest(inputs);
|
|
733
723
|
}
|
|
734
|
-
else if (inputs[
|
|
724
|
+
else if (inputs[constants_3.QuestionNames.ValidateMethod] === constants_3.TeamsAppValidationOptions.testCases().id) {
|
|
735
725
|
return await this.validateWithTestCases(inputs);
|
|
736
726
|
}
|
|
737
727
|
else {
|
|
@@ -747,7 +737,7 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
747
737
|
const teamsAppManifestFilePath = inputs["manifest-path"];
|
|
748
738
|
const args = {
|
|
749
739
|
manifestPath: teamsAppManifestFilePath,
|
|
750
|
-
showMessage:
|
|
740
|
+
showMessage: inputs?.showMessage != undefined ? inputs.showMessage : true,
|
|
751
741
|
};
|
|
752
742
|
const driver = typedi_1.Container.get("teamsApp/validateManifest");
|
|
753
743
|
const result = await driver.execute(args, context);
|
|
@@ -782,9 +772,9 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
782
772
|
*/
|
|
783
773
|
async syncManifest(inputs) {
|
|
784
774
|
const context = (0, utils_4.createDriverContext)(inputs);
|
|
785
|
-
const projectPath = inputs[
|
|
786
|
-
const env = inputs[
|
|
787
|
-
const teamsAppId = inputs[
|
|
775
|
+
const projectPath = inputs[constants_3.QuestionNames.ProjectPath];
|
|
776
|
+
const env = inputs[constants_3.QuestionNames.Env];
|
|
777
|
+
const teamsAppId = inputs[constants_3.QuestionNames.TeamsAppId];
|
|
788
778
|
const args = {
|
|
789
779
|
projectPath: projectPath,
|
|
790
780
|
env: env,
|
|
@@ -797,22 +787,19 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
797
787
|
* v3 only none lifecycle command
|
|
798
788
|
*/
|
|
799
789
|
async createAppPackage(inputs) {
|
|
800
|
-
var _a, _b, _c;
|
|
801
790
|
inputs.stage = teamsfx_api_1.Stage.createAppPackage;
|
|
802
791
|
const context = (0, utils_4.createDriverContext)(inputs);
|
|
803
792
|
// For TSP projects
|
|
804
793
|
await (0, tools_1.runForTypeSpecProject)(inputs.projectPath, context);
|
|
805
|
-
const teamsAppManifestFilePath = inputs
|
|
794
|
+
const teamsAppManifestFilePath = inputs?.[constants_3.QuestionNames.TeamsAppManifestFilePath];
|
|
806
795
|
const driver = typedi_1.Container.get("teamsApp/zipAppPackage");
|
|
807
796
|
const args = {
|
|
808
797
|
manifestPath: teamsAppManifestFilePath,
|
|
809
|
-
outputZipPath:
|
|
810
|
-
|
|
811
|
-
|
|
812
|
-
|
|
813
|
-
|
|
814
|
-
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
|
|
815
|
-
`${inputs.projectPath}/${teamsfx_api_1.AppPackageFolderName}/${teamsfx_api_1.BuildFolderName}`,
|
|
798
|
+
outputZipPath: inputs[constants_3.QuestionNames.OutputZipPathParamName] ??
|
|
799
|
+
`${inputs.projectPath}/${teamsfx_api_1.AppPackageFolderName}/${teamsfx_api_1.BuildFolderName}/appPackage.${process.env
|
|
800
|
+
.TEAMSFX_ENV}.zip`,
|
|
801
|
+
outputFolder: inputs[constants_3.QuestionNames.OutputManifestParamName] ??
|
|
802
|
+
`${inputs.projectPath}/${teamsfx_api_1.AppPackageFolderName}/${teamsfx_api_1.BuildFolderName}`,
|
|
816
803
|
};
|
|
817
804
|
const result = (await driver.execute(args, context)).result;
|
|
818
805
|
if (context.platform === teamsfx_api_1.Platform.VSCode) {
|
|
@@ -828,7 +815,7 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
828
815
|
const appPackageLink = `${constants_1.VSCodeExtensionCommand.openFolder}?%5B%22${folderLink.toString()}%22%5D`;
|
|
829
816
|
builtSuccess = (0, localizeUtils_1.getLocalizedString)("plugins.appstudio.buildSucceedNotice", appPackageLink);
|
|
830
817
|
}
|
|
831
|
-
|
|
818
|
+
context.ui?.showMessage("info", builtSuccess, false);
|
|
832
819
|
}
|
|
833
820
|
}
|
|
834
821
|
return result;
|
|
@@ -841,8 +828,8 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
841
828
|
*/
|
|
842
829
|
async previewWithManifest(inputs) {
|
|
843
830
|
inputs.stage = teamsfx_api_1.Stage.previewWithManifest;
|
|
844
|
-
const hub = inputs[
|
|
845
|
-
const manifestFilePath = inputs[
|
|
831
|
+
const hub = inputs[constants_3.QuestionNames.M365Host];
|
|
832
|
+
const manifestFilePath = inputs[constants_3.QuestionNames.TeamsAppManifestFilePath];
|
|
846
833
|
const context = (0, globalVars_1.createContext)();
|
|
847
834
|
const manifestRes = await ManifestUtils_1.manifestUtils.getManifestV3(manifestFilePath, (0, utils_1.generateDriverContext)(context, inputs), false);
|
|
848
835
|
if (manifestRes.isErr()) {
|
|
@@ -920,7 +907,6 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
920
907
|
* get Teams App Name from yml
|
|
921
908
|
*/
|
|
922
909
|
async getTeamsAppName(projectPath) {
|
|
923
|
-
var _a;
|
|
924
910
|
const ymlPath = pathUtils_1.pathUtils.getYmlFilePath(projectPath, "dev");
|
|
925
911
|
const maybeProjectModel = await metadataUtil_1.metadataUtil.parse(ymlPath);
|
|
926
912
|
if (maybeProjectModel.isErr()) {
|
|
@@ -928,7 +914,7 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
928
914
|
}
|
|
929
915
|
const projectModel = maybeProjectModel.value;
|
|
930
916
|
if (projectModel.provision) {
|
|
931
|
-
const teamsAppCreate =
|
|
917
|
+
const teamsAppCreate = projectModel.provision?.driverDefs.find((d) => d.uses === "teamsApp/create");
|
|
932
918
|
if (teamsAppCreate) {
|
|
933
919
|
let name = teamsAppCreate.with.name;
|
|
934
920
|
if (name) {
|
|
@@ -943,7 +929,6 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
943
929
|
* get project info
|
|
944
930
|
*/
|
|
945
931
|
async getProjectInfo(projectPath, env) {
|
|
946
|
-
var _a;
|
|
947
932
|
const ymlPath = pathUtils_1.pathUtils.getYmlFilePath(projectPath, env);
|
|
948
933
|
const maybeProjectModel = await metadataUtil_1.metadataUtil.parse(ymlPath);
|
|
949
934
|
if (maybeProjectModel.isErr()) {
|
|
@@ -964,7 +949,7 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
964
949
|
if (projectModel.provision) {
|
|
965
950
|
const teamsAppCreate = projectModel.provision.driverDefs.find((d) => d.uses === "teamsApp/create");
|
|
966
951
|
if (teamsAppCreate) {
|
|
967
|
-
const teamsAppIdEnvName =
|
|
952
|
+
const teamsAppIdEnvName = teamsAppCreate.writeToEnvironmentFile?.teamsAppId;
|
|
968
953
|
if (teamsAppIdEnvName) {
|
|
969
954
|
const teamsAppId = envObject[teamsAppIdEnvName];
|
|
970
955
|
res.teamsAppId = teamsAppId;
|
|
@@ -1035,7 +1020,7 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
1035
1020
|
return res.value.decrypt(ciphertext);
|
|
1036
1021
|
}
|
|
1037
1022
|
async createEnv(inputs) {
|
|
1038
|
-
return this.createEnvCopyV3(inputs[
|
|
1023
|
+
return this.createEnvCopyV3(inputs[constants_3.QuestionNames.NewTargetEnvName], inputs[constants_3.QuestionNames.SourceEnvName], inputs.projectPath);
|
|
1039
1024
|
}
|
|
1040
1025
|
async createEnvCopyV3(targetEnvName, sourceEnvName, projectPath) {
|
|
1041
1026
|
let res = await pathUtils_1.pathUtils.getEnvFilePath(projectPath, sourceEnvName);
|
|
@@ -1218,9 +1203,9 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
1218
1203
|
return await coordinator_1.coordinator.publishInDeveloperPortal(context, inputs);
|
|
1219
1204
|
}
|
|
1220
1205
|
async copilotPluginAddAPI(inputs) {
|
|
1221
|
-
const newOperations = inputs[
|
|
1222
|
-
const url = inputs[
|
|
1223
|
-
const manifestPath = inputs[
|
|
1206
|
+
const newOperations = inputs[constants_3.QuestionNames.ApiOperation];
|
|
1207
|
+
const url = inputs[constants_3.QuestionNames.ApiSpecLocation];
|
|
1208
|
+
const manifestPath = inputs[constants_3.QuestionNames.ManifestPath];
|
|
1224
1209
|
const context = (0, globalVars_1.createContext)();
|
|
1225
1210
|
// Get API spec file path from manifest
|
|
1226
1211
|
const manifestRes = await ManifestUtils_1.manifestUtils._readAppManifest(manifestPath);
|
|
@@ -1236,7 +1221,7 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
1236
1221
|
}
|
|
1237
1222
|
try {
|
|
1238
1223
|
// Merge existing operations in manifest.json
|
|
1239
|
-
const specParser = new m365_spec_parser_1.SpecParser(url, (0,
|
|
1224
|
+
const specParser = new m365_spec_parser_1.SpecParser(url, (0, helper_1.getParserOptions)(m365_spec_parser_1.ProjectType.SME));
|
|
1240
1225
|
const listResult = await specParser.list();
|
|
1241
1226
|
const apiResultList = listResult.APIs.filter((value) => value.isValid);
|
|
1242
1227
|
const existingOperationIds = ManifestUtils_1.manifestUtils.getOperationIds(manifestRes.value);
|
|
@@ -1266,11 +1251,11 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
1266
1251
|
}
|
|
1267
1252
|
if (authNames.size >= 1) {
|
|
1268
1253
|
for (const authName of authNames) {
|
|
1269
|
-
await (0,
|
|
1254
|
+
await (0, helper_1.injectAuthAction)(inputs.projectPath, [...authNames][0], authNamesDict[authName], outputApiSpecPath, false);
|
|
1270
1255
|
}
|
|
1271
1256
|
}
|
|
1272
1257
|
let pluginPath;
|
|
1273
|
-
const generateResult = await (0,
|
|
1258
|
+
const generateResult = await (0, helper_1.generateFromApiSpec)(specParser, manifestPath, inputs, context, "copilotPluginAddAPI", m365_spec_parser_1.ProjectType.SME, {
|
|
1274
1259
|
destinationApiSpecFilePath: outputApiSpecPath,
|
|
1275
1260
|
responseTemplateFolder: adaptiveCardFolder,
|
|
1276
1261
|
pluginManifestFilePath: pluginPath,
|
|
@@ -1279,7 +1264,7 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
1279
1264
|
return (0, teamsfx_api_1.err)(generateResult.error);
|
|
1280
1265
|
}
|
|
1281
1266
|
if (generateResult.value.warnings && generateResult.value.warnings.length > 0) {
|
|
1282
|
-
const warnSummary = await (0,
|
|
1267
|
+
const warnSummary = await (0, helper_1.generateScaffoldingSummary)(generateResult.value.warnings, manifestRes.value, path.relative(inputs.projectPath, outputApiSpecPath), pluginPath === undefined ? undefined : path.relative(inputs.projectPath, pluginPath), inputs.projectPath);
|
|
1283
1268
|
if (warnSummary) {
|
|
1284
1269
|
context.logProvider.info(warnSummary);
|
|
1285
1270
|
}
|
|
@@ -1288,7 +1273,7 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
1288
1273
|
catch (e) {
|
|
1289
1274
|
let error;
|
|
1290
1275
|
if (e instanceof m365_spec_parser_1.SpecParserError) {
|
|
1291
|
-
error = (0,
|
|
1276
|
+
error = (0, helper_1.convertSpecParserErrorToFxError)(e);
|
|
1292
1277
|
}
|
|
1293
1278
|
else {
|
|
1294
1279
|
error = (0, common_2.assembleError)(e);
|
|
@@ -1303,7 +1288,7 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
1303
1288
|
}
|
|
1304
1289
|
async listPluginApiSpecs(inputs) {
|
|
1305
1290
|
try {
|
|
1306
|
-
const manifestPath = inputs[
|
|
1291
|
+
const manifestPath = inputs[constants_3.QuestionNames.ManifestPath];
|
|
1307
1292
|
const manifestRes = await ManifestUtils_1.manifestUtils._readAppManifest(manifestPath);
|
|
1308
1293
|
if (manifestRes.isErr()) {
|
|
1309
1294
|
return (0, teamsfx_api_1.err)(manifestRes.error);
|
|
@@ -1321,7 +1306,7 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
1321
1306
|
}
|
|
1322
1307
|
}
|
|
1323
1308
|
async copilotPluginListOperations(inputs) {
|
|
1324
|
-
const res = await (0,
|
|
1309
|
+
const res = await (0, helper_1.listOperations)((0, globalVars_1.createContext)(), inputs.apiSpecUrl, inputs, inputs.includeExistingAPIs, inputs.shouldLogWarning);
|
|
1325
1310
|
if (res.isErr()) {
|
|
1326
1311
|
const msg = res.error.map((e) => e.content).join("\n");
|
|
1327
1312
|
return (0, teamsfx_api_1.err)(new teamsfx_api_1.UserError("FxCore", "ListOpenAPISpecOperationsError", msg, msg));
|
|
@@ -1334,137 +1319,16 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
1334
1319
|
* check project type info
|
|
1335
1320
|
*/
|
|
1336
1321
|
async checkProjectType(projectPath) {
|
|
1337
|
-
var _a;
|
|
1338
1322
|
const projectTypeRes = await projectTypeChecker_1.projectTypeChecker.checkProjectType(projectPath);
|
|
1339
1323
|
const props = {};
|
|
1340
1324
|
telemetry_1.telemetryUtils.fillinProjectTypeProperties(props, projectTypeRes);
|
|
1341
|
-
|
|
1325
|
+
globalVars_1.TOOLS.telemetryReporter?.sendTelemetryEvent(telemetry_1.TelemetryEvent.ProjectType, props);
|
|
1342
1326
|
return (0, teamsfx_api_1.ok)(projectTypeRes);
|
|
1343
1327
|
}
|
|
1344
|
-
/**
|
|
1345
|
-
* Add plugin
|
|
1346
|
-
*/
|
|
1347
|
-
async addPlugin(inputs) {
|
|
1348
|
-
var _a, _b, _c, _d;
|
|
1349
|
-
if (!inputs.projectPath) {
|
|
1350
|
-
throw new Error("projectPath is undefined"); // should never happen
|
|
1351
|
-
}
|
|
1352
|
-
const context = (0, globalVars_1.createContext)();
|
|
1353
|
-
const teamsManifestPath = inputs[constants_4.QuestionNames.ManifestPath];
|
|
1354
|
-
const appPackageFolder = path.dirname(teamsManifestPath);
|
|
1355
|
-
const isGenerateFromApiSpec = inputs[constants_4.QuestionNames.ActionType] === constants_4.ActionStartOptions.apiSpec().id;
|
|
1356
|
-
// validate the project is valid for adding plugin
|
|
1357
|
-
const manifestRes = await ManifestUtils_1.manifestUtils._readAppManifest(teamsManifestPath);
|
|
1358
|
-
if (manifestRes.isErr()) {
|
|
1359
|
-
return (0, teamsfx_api_1.err)(manifestRes.error);
|
|
1360
|
-
}
|
|
1361
|
-
const teamsManifest = manifestRes.value;
|
|
1362
|
-
const declarativeGpt = teamsManifest.copilotExtensions
|
|
1363
|
-
? (_a = teamsManifest.copilotExtensions.declarativeCopilots) === null || _a === void 0 ? void 0 : _a[0]
|
|
1364
|
-
: (_c = (_b = teamsManifest.copilotAgents) === null || _b === void 0 ? void 0 : _b.declarativeAgents) === null || _c === void 0 ? void 0 : _c[0];
|
|
1365
|
-
if (!(declarativeGpt === null || declarativeGpt === void 0 ? void 0 : declarativeGpt.file)) {
|
|
1366
|
-
return (0, teamsfx_api_1.err)(results_1.AppStudioResultFactory.UserError(errors_1.AppStudioError.TeamsAppRequiredPropertyMissingError.name, errors_1.AppStudioError.TeamsAppRequiredPropertyMissingError.message("declarativeAgents", teamsManifestPath)));
|
|
1367
|
-
}
|
|
1368
|
-
const gptManifestFilePathRes = await CopilotGptManifestUtils_1.copilotGptManifestUtils.getManifestPath(teamsManifestPath);
|
|
1369
|
-
if (gptManifestFilePathRes.isErr()) {
|
|
1370
|
-
return (0, teamsfx_api_1.err)(gptManifestFilePathRes.error);
|
|
1371
|
-
}
|
|
1372
|
-
const declarativeCopilotManifestPath = gptManifestFilePathRes.value;
|
|
1373
|
-
const declarativeCopilotManifesRes = await CopilotGptManifestUtils_1.copilotGptManifestUtils.readCopilotGptManifestFile(declarativeCopilotManifestPath);
|
|
1374
|
-
if (declarativeCopilotManifesRes.isErr()) {
|
|
1375
|
-
return (0, teamsfx_api_1.err)(declarativeCopilotManifesRes.error);
|
|
1376
|
-
}
|
|
1377
|
-
const declarativeCopilotManifest = declarativeCopilotManifesRes.value;
|
|
1378
|
-
let confirmMessage = (0, localizeUtils_1.getLocalizedString)("core.addApi.confirm", path.relative(inputs.projectPath, appPackageFolder));
|
|
1379
|
-
// Will be used if generating from API spec
|
|
1380
|
-
let specParser = undefined;
|
|
1381
|
-
let authNameAndSchemes = [];
|
|
1382
|
-
if (isGenerateFromApiSpec) {
|
|
1383
|
-
specParser = new m365_spec_parser_1.SpecParser(inputs[constants_4.QuestionNames.ApiSpecLocation].trim(), (0, helper_2.getParserOptions)(m365_spec_parser_1.ProjectType.Copilot, true));
|
|
1384
|
-
const listResult = await (0, daSpecParser_1.listAPIInfo)(inputs[constants_4.QuestionNames.ApiSpecLocation].trim());
|
|
1385
|
-
authNameAndSchemes = this.parseAuthNameAndScheme(listResult, inputs);
|
|
1386
|
-
if (authNameAndSchemes.length > 0) {
|
|
1387
|
-
const doesLocalYamlPathExists = await fs_extra_1.default.pathExists(path.join(inputs.projectPath, versionMetadata_1.MetadataV3.localConfigFile));
|
|
1388
|
-
confirmMessage = doesLocalYamlPathExists
|
|
1389
|
-
? (0, localizeUtils_1.getLocalizedString)("core.addApi.confirm.localTeamsYaml", path.relative(inputs.projectPath, appPackageFolder), versionMetadata_1.MetadataV4.localConfigFile, versionMetadata_1.MetadataV4.configFile)
|
|
1390
|
-
: (0, localizeUtils_1.getLocalizedString)("core.addApi.confirm.teamsYaml", path.relative(inputs.projectPath, appPackageFolder), versionMetadata_1.MetadataV4.configFile);
|
|
1391
|
-
}
|
|
1392
|
-
}
|
|
1393
|
-
// confirm
|
|
1394
|
-
const confirmRes = await context.userInteraction.showMessage("warn", confirmMessage, true, (0, localizeUtils_1.getLocalizedString)("core.addApi.continue"));
|
|
1395
|
-
if (confirmRes.isErr()) {
|
|
1396
|
-
return (0, teamsfx_api_1.err)(confirmRes.error);
|
|
1397
|
-
}
|
|
1398
|
-
else if (confirmRes.value !== (0, localizeUtils_1.getLocalizedString)("core.addApi.continue")) {
|
|
1399
|
-
return (0, teamsfx_api_1.err)(new common_2.UserCancelError());
|
|
1400
|
-
}
|
|
1401
|
-
// find the next available action id
|
|
1402
|
-
let actionId = "";
|
|
1403
|
-
let suffix = 1;
|
|
1404
|
-
actionId = `action_${suffix}`;
|
|
1405
|
-
const existingActionIds = (_d = declarativeCopilotManifest.actions) === null || _d === void 0 ? void 0 : _d.map((action) => action.id);
|
|
1406
|
-
while (existingActionIds === null || existingActionIds === void 0 ? void 0 : existingActionIds.includes(actionId)) {
|
|
1407
|
-
suffix += 1;
|
|
1408
|
-
actionId = `action_${suffix}`;
|
|
1409
|
-
}
|
|
1410
|
-
let destinationPluginManifestPath;
|
|
1411
|
-
// generate files
|
|
1412
|
-
if (isGenerateFromApiSpec && specParser) {
|
|
1413
|
-
destinationPluginManifestPath =
|
|
1414
|
-
await CopilotGptManifestUtils_1.copilotGptManifestUtils.getDefaultNextAvailablePluginManifestPath(appPackageFolder, undefined);
|
|
1415
|
-
const destinationApiSpecPath = await PluginManifestUtils_1.pluginManifestUtils.getDefaultNextAvailableApiSpecPath(inputs[constants_4.QuestionNames.ApiSpecLocation].trim(), path.join(appPackageFolder, teamsfx_api_1.DefaultApiSpecFolderName));
|
|
1416
|
-
const generateRes = await (0, helper_2.generateFromApiSpec)(specParser, teamsManifestPath, inputs, context, teamsfx_api_1.Stage.addPlugin, m365_spec_parser_1.ProjectType.Copilot, {
|
|
1417
|
-
destinationApiSpecFilePath: destinationApiSpecPath,
|
|
1418
|
-
pluginManifestFilePath: destinationPluginManifestPath,
|
|
1419
|
-
}, inputs[constants_4.QuestionNames.ApiSpecLocation].trim());
|
|
1420
|
-
if (generateRes.isErr()) {
|
|
1421
|
-
return (0, teamsfx_api_1.err)(generateRes.error);
|
|
1422
|
-
}
|
|
1423
|
-
const warnings = generateRes.value.warnings;
|
|
1424
|
-
if (warnings && warnings.length > 0) {
|
|
1425
|
-
const warnSummary = await (0, helper_2.generateScaffoldingSummary)(warnings, manifestRes.value, path.relative(inputs.projectPath, destinationApiSpecPath), path.relative(inputs.projectPath, destinationPluginManifestPath), inputs.projectPath);
|
|
1426
|
-
context.logProvider.info(warnSummary + "\n");
|
|
1427
|
-
}
|
|
1428
|
-
const addActionRes = await CopilotGptManifestUtils_1.copilotGptManifestUtils.addAction(declarativeCopilotManifestPath, actionId, (0, utils_3.normalizePath)(path.relative(appPackageFolder, destinationPluginManifestPath), true));
|
|
1429
|
-
if (addActionRes.isErr()) {
|
|
1430
|
-
return (0, teamsfx_api_1.err)(addActionRes.error);
|
|
1431
|
-
}
|
|
1432
|
-
for (const authNameAndScheme of authNameAndSchemes) {
|
|
1433
|
-
await this.updateAuthActionInYaml(authNameAndScheme.authName, authNameAndScheme.authScheme, inputs.projectPath, destinationApiSpecPath, destinationPluginManifestPath);
|
|
1434
|
-
}
|
|
1435
|
-
}
|
|
1436
|
-
else {
|
|
1437
|
-
const addPluginRes = await (0, helper_1.addExistingPlugin)(declarativeCopilotManifestPath, inputs[constants_4.QuestionNames.PluginManifestFilePath].trim(), inputs[constants_4.QuestionNames.PluginOpenApiSpecFilePath].trim(), actionId, context, teamsfx_api_1.Stage.addPlugin);
|
|
1438
|
-
if (addPluginRes.isErr()) {
|
|
1439
|
-
return (0, teamsfx_api_1.err)(addPluginRes.error);
|
|
1440
|
-
}
|
|
1441
|
-
destinationPluginManifestPath = addPluginRes.value.destinationPluginManifestPath;
|
|
1442
|
-
const warningMessage = (0, common_1.outputScaffoldingWarningMessage)(addPluginRes.value.warnings);
|
|
1443
|
-
context.logProvider.info(warningMessage);
|
|
1444
|
-
}
|
|
1445
|
-
if (inputs.platform === teamsfx_api_1.Platform.VSCode) {
|
|
1446
|
-
const successMessage = (0, localizeUtils_1.getLocalizedString)("core.addPlugin.success.vsc", actionId);
|
|
1447
|
-
const viewPluginManifest = (0, localizeUtils_1.getLocalizedString)("core.addPlugin.success.viewPluginManifest");
|
|
1448
|
-
void context.userInteraction
|
|
1449
|
-
.showMessage("info", successMessage, false, viewPluginManifest)
|
|
1450
|
-
.then((userRes) => {
|
|
1451
|
-
var _a, _b;
|
|
1452
|
-
if (userRes.isOk() && userRes.value === viewPluginManifest) {
|
|
1453
|
-
context.telemetryReporter.sendTelemetryEvent(telemetry_1.TelemetryEvent.ViewPluginManifestAfterAdded);
|
|
1454
|
-
void ((_b = (_a = globalVars_1.TOOLS === null || globalVars_1.TOOLS === void 0 ? void 0 : globalVars_1.TOOLS.ui) === null || _a === void 0 ? void 0 : _a.openFile) === null || _b === void 0 ? void 0 : _b.call(_a, destinationPluginManifestPath));
|
|
1455
|
-
}
|
|
1456
|
-
});
|
|
1457
|
-
}
|
|
1458
|
-
else {
|
|
1459
|
-
const successMessage = (0, localizeUtils_1.getLocalizedString)("core.addPlugin.success", actionId, destinationPluginManifestPath);
|
|
1460
|
-
void context.userInteraction.showMessage("info", successMessage, false);
|
|
1461
|
-
}
|
|
1462
|
-
return (0, teamsfx_api_1.ok)(undefined);
|
|
1463
|
-
}
|
|
1464
1328
|
async regeneratePlugin(inputs) {
|
|
1465
1329
|
const projectPath = inputs.projectPath;
|
|
1466
1330
|
const context = (0, globalVars_1.createContext)();
|
|
1467
|
-
const teamsManifestPath = inputs[
|
|
1331
|
+
const teamsManifestPath = inputs[constants_3.QuestionNames.ManifestPath];
|
|
1468
1332
|
const appPackageFolder = path.dirname(teamsManifestPath);
|
|
1469
1333
|
const manifestRes = await ManifestUtils_1.manifestUtils._readAppManifest(teamsManifestPath);
|
|
1470
1334
|
if (manifestRes.isErr()) {
|
|
@@ -1477,7 +1341,7 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
1477
1341
|
let confirmMessage = (0, localizeUtils_1.getLocalizedString)("core.addApi.confirm", path.relative(projectPath, appPackageFolder));
|
|
1478
1342
|
// Will be used if generating from API spec
|
|
1479
1343
|
let authNameAndSchemes = [];
|
|
1480
|
-
const specPath = inputs[
|
|
1344
|
+
const specPath = inputs[constants_3.QuestionNames.ApiSpecLocation].trim();
|
|
1481
1345
|
const listResult = await (0, daSpecParser_1.listAPIInfo)(specPath);
|
|
1482
1346
|
authNameAndSchemes = this.parseAuthNameAndScheme(listResult, inputs);
|
|
1483
1347
|
if (authNameAndSchemes.length > 0) {
|
|
@@ -1493,18 +1357,18 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
1493
1357
|
else if (confirmRes.value !== (0, localizeUtils_1.getLocalizedString)("core.regenerateApi.continue")) {
|
|
1494
1358
|
return (0, teamsfx_api_1.err)(new common_2.UserCancelError());
|
|
1495
1359
|
}
|
|
1496
|
-
const destinationPluginManifestPath = inputs[
|
|
1497
|
-
const destinationApiSpecPath = inputs[
|
|
1498
|
-
const generateRes = await (0,
|
|
1360
|
+
const destinationPluginManifestPath = inputs[constants_3.QuestionNames.SelectPluginManifest];
|
|
1361
|
+
const destinationApiSpecPath = inputs[constants_3.QuestionNames.SelectOpenAPISpecFromPlugin];
|
|
1362
|
+
const generateRes = await (0, helper_1.generateFromApiSpec)(undefined, teamsManifestPath, inputs, context, teamsfx_api_1.Stage.RegeneratePlugin, m365_spec_parser_1.ProjectType.Copilot, {
|
|
1499
1363
|
destinationApiSpecFilePath: destinationApiSpecPath,
|
|
1500
1364
|
pluginManifestFilePath: destinationPluginManifestPath,
|
|
1501
|
-
}, inputs[
|
|
1365
|
+
}, inputs[constants_3.QuestionNames.ApiSpecLocation].trim(), true);
|
|
1502
1366
|
if (generateRes.isErr()) {
|
|
1503
1367
|
return (0, teamsfx_api_1.err)(generateRes.error);
|
|
1504
1368
|
}
|
|
1505
1369
|
const warnings = generateRes.value.warnings;
|
|
1506
1370
|
if (warnings && warnings.length > 0) {
|
|
1507
|
-
const warnSummary = await (0,
|
|
1371
|
+
const warnSummary = await (0, helper_1.generateScaffoldingSummary)(warnings, manifestRes.value, path.relative(projectPath, destinationApiSpecPath), path.relative(projectPath, destinationPluginManifestPath), projectPath);
|
|
1508
1372
|
context.logProvider.info(warnSummary + "\n");
|
|
1509
1373
|
}
|
|
1510
1374
|
for (const authNameAndScheme of authNameAndSchemes) {
|
|
@@ -1520,17 +1384,16 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
1520
1384
|
const actionPath = path.normalize(path.join(appPackageFolder, action.file));
|
|
1521
1385
|
await CopilotGptManifestUtils_1.copilotGptManifestUtils.updateConversationStarters(actionPath, declarativeAgentManifest);
|
|
1522
1386
|
}
|
|
1523
|
-
const actionId = inputs[
|
|
1387
|
+
const actionId = inputs[constants_3.QuestionNames.SelectPluginId];
|
|
1524
1388
|
if (inputs.platform === teamsfx_api_1.Platform.VSCode) {
|
|
1525
1389
|
const successMessage = (0, localizeUtils_1.getLocalizedString)("core.regeneratePlugin.success.vsc", actionId);
|
|
1526
1390
|
const viewPluginManifest = (0, localizeUtils_1.getLocalizedString)("core.regeneratePlugin.success.viewPluginManifest");
|
|
1527
1391
|
void context.userInteraction
|
|
1528
1392
|
.showMessage("info", successMessage, false, viewPluginManifest)
|
|
1529
1393
|
.then((userRes) => {
|
|
1530
|
-
var _a, _b;
|
|
1531
1394
|
if (userRes.isOk() && userRes.value === viewPluginManifest) {
|
|
1532
1395
|
context.telemetryReporter.sendTelemetryEvent(telemetry_1.TelemetryEvent.ViewPluginManifestAfterAdded);
|
|
1533
|
-
void
|
|
1396
|
+
void globalVars_1.TOOLS?.ui?.openFile?.(destinationPluginManifestPath);
|
|
1534
1397
|
}
|
|
1535
1398
|
});
|
|
1536
1399
|
}
|
|
@@ -1545,9 +1408,9 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
1545
1408
|
*/
|
|
1546
1409
|
async metaOSExtendToDA(inputs, workDir) {
|
|
1547
1410
|
const context = (0, globalVars_1.createContext)();
|
|
1548
|
-
inputs[
|
|
1549
|
-
inputs[
|
|
1550
|
-
inputs[
|
|
1411
|
+
inputs[constants_3.QuestionNames.Scratch] = constants_3.ScratchOptions.yes().id;
|
|
1412
|
+
inputs[constants_3.QuestionNames.TemplateName] = templateNames_1.TemplateNames.DeclarativeAgentMetaOSUpgradeProject;
|
|
1413
|
+
inputs[constants_3.QuestionNames.OfficeAddinFolder] = workDir;
|
|
1551
1414
|
const res = await coordinator_1.coordinator.create(context, inputs);
|
|
1552
1415
|
if (res.isOk()) {
|
|
1553
1416
|
inputs.projectPath = res.value.projectPath;
|
|
@@ -1558,12 +1421,11 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
1558
1421
|
* Add Knowledge
|
|
1559
1422
|
*/
|
|
1560
1423
|
async addKnowledge(inputs) {
|
|
1561
|
-
var _a, _b, _c;
|
|
1562
1424
|
if (!inputs.projectPath) {
|
|
1563
1425
|
throw new Error("projectPath is undefined"); // should never happen
|
|
1564
1426
|
}
|
|
1565
1427
|
const context = (0, globalVars_1.createContext)();
|
|
1566
|
-
const teamsManifestPath = inputs[
|
|
1428
|
+
const teamsManifestPath = inputs[constants_3.QuestionNames.ManifestPath];
|
|
1567
1429
|
const appPackageFolder = path.dirname(teamsManifestPath);
|
|
1568
1430
|
// Validate the project is valid for adding knowledge
|
|
1569
1431
|
const manifestRes = await ManifestUtils_1.manifestUtils._readAppManifest(teamsManifestPath);
|
|
@@ -1572,9 +1434,9 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
1572
1434
|
}
|
|
1573
1435
|
const teamsManifest = manifestRes.value;
|
|
1574
1436
|
const agent = teamsManifest.copilotExtensions
|
|
1575
|
-
?
|
|
1576
|
-
:
|
|
1577
|
-
if (!
|
|
1437
|
+
? teamsManifest.copilotExtensions.declarativeCopilots?.[0]
|
|
1438
|
+
: teamsManifest.copilotAgents?.declarativeAgents?.[0];
|
|
1439
|
+
if (!agent?.file) {
|
|
1578
1440
|
return (0, teamsfx_api_1.err)(results_1.AppStudioResultFactory.UserError(errors_1.AppStudioError.TeamsAppRequiredPropertyMissingError.name, errors_1.AppStudioError.TeamsAppRequiredPropertyMissingError.message("declarativeAgents", teamsManifestPath)));
|
|
1579
1441
|
}
|
|
1580
1442
|
const agentFilePathRes = await CopilotGptManifestUtils_1.copilotGptManifestUtils.getManifestPath(teamsManifestPath);
|
|
@@ -1592,18 +1454,18 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
1592
1454
|
return (0, teamsfx_api_1.err)(new common_2.UserCancelError());
|
|
1593
1455
|
}
|
|
1594
1456
|
let result;
|
|
1595
|
-
const knowledgeSource = inputs[
|
|
1457
|
+
const knowledgeSource = inputs[constants_3.QuestionNames.KnowledgeSource];
|
|
1596
1458
|
switch (knowledgeSource) {
|
|
1597
|
-
case
|
|
1459
|
+
case constants_3.KnowledgeSourceOptions.webSearch().id:
|
|
1598
1460
|
result = await this.addWebSearchKnowledge(context, inputs, agentManifestPath);
|
|
1599
1461
|
break;
|
|
1600
|
-
case
|
|
1462
|
+
case constants_3.KnowledgeSourceOptions.oneDriveSharePoint().id:
|
|
1601
1463
|
result = await this.addOneDriveSharePointKnowledge(inputs, agentManifestPath);
|
|
1602
1464
|
break;
|
|
1603
|
-
case
|
|
1465
|
+
case constants_3.KnowledgeSourceOptions.graphConnector().id:
|
|
1604
1466
|
result = await this.addGCKnowledge(inputs, agentManifestPath);
|
|
1605
1467
|
break;
|
|
1606
|
-
case
|
|
1468
|
+
case constants_3.KnowledgeSourceOptions.embeddedKnowledge().id:
|
|
1607
1469
|
result = await this.addEmbeddedKnowledge(inputs);
|
|
1608
1470
|
break;
|
|
1609
1471
|
default:
|
|
@@ -1635,11 +1497,10 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
1635
1497
|
* Need to update da manifest and update m365agents.yml
|
|
1636
1498
|
*/
|
|
1637
1499
|
async kiotaRegenerate(inputs) {
|
|
1638
|
-
var _a, _b, _c, _d, _e;
|
|
1639
1500
|
if (!inputs.projectPath) {
|
|
1640
1501
|
throw new Error("projectPath is undefined"); // should never happen
|
|
1641
1502
|
}
|
|
1642
|
-
const teamsManifestPath = inputs[
|
|
1503
|
+
const teamsManifestPath = inputs[constants_3.QuestionNames.ManifestPath];
|
|
1643
1504
|
const appPackageFolder = path.dirname(teamsManifestPath);
|
|
1644
1505
|
const context = (0, globalVars_1.createContext)();
|
|
1645
1506
|
// validate the project is valid for adding plugin
|
|
@@ -1649,9 +1510,9 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
1649
1510
|
}
|
|
1650
1511
|
const teamsManifest = manifestRes.value;
|
|
1651
1512
|
const declarativeGpt = teamsManifest.copilotExtensions
|
|
1652
|
-
?
|
|
1653
|
-
:
|
|
1654
|
-
if (!
|
|
1513
|
+
? teamsManifest.copilotExtensions.declarativeCopilots?.[0]
|
|
1514
|
+
: teamsManifest.copilotAgents?.declarativeAgents?.[0];
|
|
1515
|
+
if (!declarativeGpt?.file) {
|
|
1655
1516
|
return (0, teamsfx_api_1.err)(results_1.AppStudioResultFactory.UserError(errors_1.AppStudioError.TeamsAppRequiredPropertyMissingError.name, errors_1.AppStudioError.TeamsAppRequiredPropertyMissingError.message("declarativeCopilots", teamsManifestPath)));
|
|
1656
1517
|
}
|
|
1657
1518
|
const gptManifestFilePathRes = await CopilotGptManifestUtils_1.copilotGptManifestUtils.getManifestPath(teamsManifestPath);
|
|
@@ -1664,9 +1525,9 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
1664
1525
|
return (0, teamsfx_api_1.err)(declarativeCopilotManifesRes.error);
|
|
1665
1526
|
}
|
|
1666
1527
|
const declarativeCopilotManifest = declarativeCopilotManifesRes.value;
|
|
1667
|
-
const pluginManifestFilePath = inputs[
|
|
1528
|
+
const pluginManifestFilePath = inputs[constants_3.QuestionNames.ActionManifestPath];
|
|
1668
1529
|
let actionId = "";
|
|
1669
|
-
|
|
1530
|
+
declarativeCopilotManifest.actions?.forEach((action) => {
|
|
1670
1531
|
const actionFilePath = path.normalize(path.join(appPackageFolder, action.file));
|
|
1671
1532
|
if (actionFilePath.toLowerCase() === path.normalize(pluginManifestFilePath).toLowerCase()) {
|
|
1672
1533
|
actionId = action.id;
|
|
@@ -1677,8 +1538,8 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
1677
1538
|
if (!actionId) {
|
|
1678
1539
|
let suffix = 1;
|
|
1679
1540
|
actionId = `action_${suffix}`;
|
|
1680
|
-
const existingActionIds =
|
|
1681
|
-
while (existingActionIds
|
|
1541
|
+
const existingActionIds = declarativeCopilotManifest.actions?.map((action) => action.id);
|
|
1542
|
+
while (existingActionIds?.includes(actionId)) {
|
|
1682
1543
|
suffix += 1;
|
|
1683
1544
|
actionId = `action_${suffix}`;
|
|
1684
1545
|
}
|
|
@@ -1688,15 +1549,15 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
1688
1549
|
}
|
|
1689
1550
|
}
|
|
1690
1551
|
// 1. Get registration id and update plugin manifest
|
|
1691
|
-
const pluginManifestPath = inputs[
|
|
1552
|
+
const pluginManifestPath = inputs[constants_3.QuestionNames.ActionManifestPath].trim();
|
|
1692
1553
|
const authData = await (0, daSpecParser_1.parseAndUpdatePluginManifestForKiota)(pluginManifestPath, true);
|
|
1693
1554
|
// 2. Update teamsapp.local.yaml and teamsapp.yaml if need to add auth action
|
|
1694
|
-
const specPath = inputs[
|
|
1555
|
+
const specPath = inputs[constants_3.QuestionNames.ApiSpecLocation].trim();
|
|
1695
1556
|
for (const authInfo of authData) {
|
|
1696
|
-
await (0,
|
|
1557
|
+
await (0, helper_1.injectAuthAction)(inputs.projectPath, authInfo.authName, undefined, specPath, false, authInfo.authType === "apiKey" ? "ApiKeyPluginVault" : "OAuthPluginVault", false, authInfo.registrationId);
|
|
1697
1558
|
}
|
|
1698
1559
|
// 3. Update plugin manifest to add ac info (optional)
|
|
1699
|
-
await (0,
|
|
1560
|
+
await (0, helper_1.generateAdaptiveCardInPluginManifestForKiota)(pluginManifestFilePath, specPath, context);
|
|
1700
1561
|
for (const action of declarativeCopilotManifest.actions) {
|
|
1701
1562
|
const actionPath = path.normalize(path.join(appPackageFolder, action.file));
|
|
1702
1563
|
await CopilotGptManifestUtils_1.copilotGptManifestUtils.updateConversationStarters(actionPath, declarativeCopilotManifest);
|
|
@@ -1705,73 +1566,87 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
1705
1566
|
return (0, teamsfx_api_1.ok)(undefined);
|
|
1706
1567
|
}
|
|
1707
1568
|
async addAuthAction(inputs) {
|
|
1708
|
-
var _a, _b, _c;
|
|
1709
1569
|
if (!inputs.projectPath) {
|
|
1710
1570
|
throw new Error("projectPath is undefined"); // should never happen
|
|
1711
1571
|
}
|
|
1712
1572
|
const context = (0, globalVars_1.createContext)();
|
|
1713
1573
|
try {
|
|
1714
|
-
const pluginManifestPath = inputs[
|
|
1715
|
-
const apiSpecRelativePath = inputs[
|
|
1716
|
-
const apiOperation = inputs[
|
|
1717
|
-
const authName = inputs[
|
|
1574
|
+
const pluginManifestPath = inputs[constants_3.QuestionNames.PluginManifestFilePath];
|
|
1575
|
+
const apiSpecRelativePath = inputs[constants_3.QuestionNames.ApiSpecLocation];
|
|
1576
|
+
const apiOperation = inputs[constants_3.QuestionNames.ApiOperation];
|
|
1577
|
+
const authName = inputs[constants_3.QuestionNames.AuthName];
|
|
1718
1578
|
const apiSpecPath = path.normalize(path.join(path.dirname(pluginManifestPath), apiSpecRelativePath));
|
|
1719
|
-
const authType = inputs[
|
|
1579
|
+
const authType = inputs[constants_3.QuestionNames.ApiAuth];
|
|
1720
1580
|
let authParameters = {
|
|
1721
1581
|
apis: apiOperation,
|
|
1722
1582
|
};
|
|
1723
|
-
if (authType ===
|
|
1724
|
-
const oauthAuthorizationUrl = inputs[
|
|
1725
|
-
const oauthTokenUrl = inputs[
|
|
1726
|
-
const oauthRefreshUrl = inputs[
|
|
1727
|
-
const oauthScopes = inputs[
|
|
1728
|
-
const enablePKCEStr = inputs[
|
|
1583
|
+
if (authType === constants_3.AddAuthActionAuthTypeOptions.oauth().id) {
|
|
1584
|
+
const oauthAuthorizationUrl = inputs[constants_3.QuestionNames.OAuthAuthorizationUrl];
|
|
1585
|
+
const oauthTokenUrl = inputs[constants_3.QuestionNames.OAuthTokenUrl];
|
|
1586
|
+
const oauthRefreshUrl = inputs[constants_3.QuestionNames.OAuthRefreshUrl];
|
|
1587
|
+
const oauthScopes = inputs[constants_3.QuestionNames.OAuthScope];
|
|
1588
|
+
const enablePKCEStr = inputs[constants_3.QuestionNames.OauthPKCE];
|
|
1729
1589
|
const scopeArr = this.parseScope(oauthScopes);
|
|
1730
|
-
authParameters =
|
|
1731
|
-
|
|
1732
|
-
|
|
1733
|
-
|
|
1734
|
-
|
|
1735
|
-
|
|
1736
|
-
|
|
1737
|
-
|
|
1738
|
-
|
|
1590
|
+
authParameters = {
|
|
1591
|
+
...authParameters,
|
|
1592
|
+
authorizationUrl: oauthAuthorizationUrl,
|
|
1593
|
+
tokenUrl: oauthTokenUrl,
|
|
1594
|
+
refreshUrl: oauthRefreshUrl ? oauthRefreshUrl : undefined,
|
|
1595
|
+
scopes: scopeArr,
|
|
1596
|
+
enablePKCE: enablePKCEStr === "true",
|
|
1597
|
+
};
|
|
1598
|
+
}
|
|
1599
|
+
else if (authType === constants_3.AddAuthActionAuthTypeOptions.apiKey().id) {
|
|
1600
|
+
const apiKeyIn = inputs[constants_3.QuestionNames.ApiKeyIn];
|
|
1601
|
+
const apiKeyName = inputs[constants_3.QuestionNames.ApiKeyName];
|
|
1602
|
+
authParameters = {
|
|
1603
|
+
...authParameters,
|
|
1604
|
+
in: apiKeyIn,
|
|
1605
|
+
name: apiKeyName,
|
|
1606
|
+
};
|
|
1607
|
+
}
|
|
1608
|
+
else if (authType === constants_3.AddAuthActionAuthTypeOptions.microsoftEntra().id) {
|
|
1609
|
+
const oauthScopes = inputs[constants_3.QuestionNames.OAuthScope];
|
|
1739
1610
|
const scopeArr = this.parseScope(oauthScopes);
|
|
1740
|
-
authParameters =
|
|
1611
|
+
authParameters = {
|
|
1612
|
+
...authParameters,
|
|
1613
|
+
authorizationUrl: "https://login.microsoftonline.com/${{TEAMS_APP_TENANT_ID}}/oauth2/v2.0/authorize",
|
|
1614
|
+
tokenUrl: "https://login.microsoftonline.com/${{TEAMS_APP_TENANT_ID}}/oauth2/v2.0/token",
|
|
1615
|
+
refreshUrl: undefined,
|
|
1616
|
+
scopes: scopeArr,
|
|
1617
|
+
};
|
|
1741
1618
|
}
|
|
1742
1619
|
// Update openapi spec
|
|
1743
|
-
const specParser = new m365_spec_parser_1.SpecParser(apiSpecPath, (0,
|
|
1620
|
+
const specParser = new m365_spec_parser_1.SpecParser(apiSpecPath, (0, helper_1.getParserOptions)(m365_spec_parser_1.ProjectType.Copilot, true));
|
|
1744
1621
|
await specParser.addAuthScheme(authName, authType, authParameters);
|
|
1745
1622
|
let authTypeScheme;
|
|
1746
1623
|
switch (authType) {
|
|
1747
|
-
case
|
|
1748
|
-
case
|
|
1624
|
+
case constants_3.AddAuthActionAuthTypeOptions.apiKey().id:
|
|
1625
|
+
case constants_3.AddAuthActionAuthTypeOptions.bearerToken().id:
|
|
1749
1626
|
default:
|
|
1750
1627
|
authTypeScheme = constant_1.APIKeyAuthType;
|
|
1751
1628
|
break;
|
|
1752
|
-
case
|
|
1629
|
+
case constants_3.AddAuthActionAuthTypeOptions.oauth().id:
|
|
1753
1630
|
authTypeScheme = constant_1.OAuthAuthType;
|
|
1754
1631
|
break;
|
|
1755
|
-
case
|
|
1632
|
+
case constants_3.AddAuthActionAuthTypeOptions.microsoftEntra().id:
|
|
1756
1633
|
authTypeScheme = constant_1.MicrosoftEntraAuthType;
|
|
1757
1634
|
break;
|
|
1758
1635
|
}
|
|
1759
|
-
const addAuthActionRes = await (0,
|
|
1760
|
-
if (addAuthActionRes
|
|
1636
|
+
const addAuthActionRes = await (0, helper_1.injectAuthAction)(inputs.projectPath, authName, undefined, apiSpecPath, true, authTypeScheme, "enablePKCE" in authParameters ? authParameters.enablePKCE : undefined);
|
|
1637
|
+
if (addAuthActionRes?.registrationIdEnvName) {
|
|
1761
1638
|
const pluginManifest = (await fs_extra_1.default.readJson(pluginManifestPath));
|
|
1762
|
-
|
|
1763
|
-
var _a, _b, _c;
|
|
1639
|
+
pluginManifest.runtimes?.forEach((runtime) => {
|
|
1764
1640
|
if (runtime.type === "OpenApi" &&
|
|
1765
|
-
|
|
1766
|
-
|
|
1767
|
-
runtime.run_for_functions =
|
|
1641
|
+
runtime.auth?.type === "None" &&
|
|
1642
|
+
runtime.spec?.url === apiSpecRelativePath) {
|
|
1643
|
+
runtime.run_for_functions = runtime.run_for_functions?.filter((value) => !!!apiOperation.includes(value));
|
|
1768
1644
|
}
|
|
1769
1645
|
});
|
|
1770
|
-
pluginManifest.runtimes =
|
|
1771
|
-
|
|
1772
|
-
return !!runtime.run_for_functions && ((_a = runtime.run_for_functions) === null || _a === void 0 ? void 0 : _a.length) > 0;
|
|
1646
|
+
pluginManifest.runtimes = pluginManifest.runtimes?.filter((runtime) => {
|
|
1647
|
+
return !!runtime.run_for_functions && runtime.run_for_functions?.length > 0;
|
|
1773
1648
|
});
|
|
1774
|
-
|
|
1649
|
+
pluginManifest.runtimes?.push({
|
|
1775
1650
|
type: "OpenApi",
|
|
1776
1651
|
auth: {
|
|
1777
1652
|
type: authTypeScheme === constant_1.MicrosoftEntraAuthType
|
|
@@ -1787,7 +1662,7 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
1787
1662
|
});
|
|
1788
1663
|
await fs_extra_1.default.writeJson(pluginManifestPath, pluginManifest, { spaces: 4 });
|
|
1789
1664
|
}
|
|
1790
|
-
if (authType ===
|
|
1665
|
+
if (authType === constants_3.AddAuthActionAuthTypeOptions.microsoftEntra().id) {
|
|
1791
1666
|
const appIdUriPlaceholder = m365_spec_parser_1.Utils.getSafeRegistrationIdEnvName(`${authName}_APPLICATION_ID_URI`);
|
|
1792
1667
|
void context.userInteraction.showMessage("warn", (0, localizeUtils_1.getLocalizedString)("core.addAuthAction.microsoftEntra.message", appIdUriPlaceholder), false);
|
|
1793
1668
|
}
|
|
@@ -1806,7 +1681,7 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
1806
1681
|
return (0, teamsfx_api_1.ok)(undefined);
|
|
1807
1682
|
}
|
|
1808
1683
|
async setSensitivityLabel(inputs) {
|
|
1809
|
-
const declarativeAgentManifestPath = inputs[
|
|
1684
|
+
const declarativeAgentManifestPath = inputs[constants_3.QuestionNames.DeclarativeAgentManifestPath];
|
|
1810
1685
|
if (!declarativeAgentManifestPath || !(await fs_extra_1.default.pathExists(declarativeAgentManifestPath))) {
|
|
1811
1686
|
throw new Error("declarativeAgentManifestPath is undefined or does not exist");
|
|
1812
1687
|
}
|
|
@@ -1820,7 +1695,7 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
1820
1695
|
else if (confirmRes.value !== (0, localizeUtils_1.getLocalizedString)("core.setSensitivityLabel.continue")) {
|
|
1821
1696
|
return (0, teamsfx_api_1.err)(new common_2.UserCancelError());
|
|
1822
1697
|
}
|
|
1823
|
-
const selectedLabel = inputs[
|
|
1698
|
+
const selectedLabel = inputs[constants_3.QuestionNames.SensitivityLabel];
|
|
1824
1699
|
const declarativeAgentManifestRes = await CopilotGptManifestUtils_1.copilotGptManifestUtils.readDeclarativeAgentManifestFile(declarativeAgentManifestPath);
|
|
1825
1700
|
if (declarativeAgentManifestRes.isErr()) {
|
|
1826
1701
|
return (0, teamsfx_api_1.err)(declarativeAgentManifestRes.error);
|
|
@@ -1885,13 +1760,16 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
1885
1760
|
await fs_extra_1.default.ensureDir(metadataDir);
|
|
1886
1761
|
const versionFile = path.join(metadataDir, "template-version.txt");
|
|
1887
1762
|
const needDownload = async () => {
|
|
1763
|
+
// Always re-download for mutable pre-release tags (content changes but tag stays the same)
|
|
1764
|
+
if (latestVersion === "0.0.0-rc")
|
|
1765
|
+
return true;
|
|
1888
1766
|
if (!(await fs_extra_1.default.pathExists(versionFile)))
|
|
1889
1767
|
return true;
|
|
1890
1768
|
try {
|
|
1891
1769
|
const cachedVersion = (await fs_extra_1.default.readFile(versionFile, "utf-8")).trim();
|
|
1892
1770
|
return cachedVersion !== latestVersion;
|
|
1893
1771
|
}
|
|
1894
|
-
catch
|
|
1772
|
+
catch {
|
|
1895
1773
|
return true; // re-download if any issue reading cached version
|
|
1896
1774
|
}
|
|
1897
1775
|
};
|
|
@@ -1904,14 +1782,61 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
1904
1782
|
const zip = await (0, utils_5.fetchZipFromUrl)(metadataZipUrl);
|
|
1905
1783
|
await (0, utils_5.unzip)(zip, metadataDir);
|
|
1906
1784
|
await fs_extra_1.default.writeFile(versionFile, latestVersion, { encoding: "utf-8" });
|
|
1785
|
+
// Clear locale cache so freshly downloaded NLS files are picked up
|
|
1786
|
+
(0, localizeUtils_1.clearLocaleCache)();
|
|
1907
1787
|
return (0, teamsfx_api_1.ok)(undefined);
|
|
1908
1788
|
}
|
|
1909
1789
|
catch (error) {
|
|
1910
|
-
const message =
|
|
1790
|
+
const message = error?.message || "Unknown error while fetching template metadata";
|
|
1911
1791
|
const systemErr = new teamsfx_api_1.SystemError("FetchOnlineTemplateMetadata", "DownloadFailed", message, message);
|
|
1912
1792
|
return (0, teamsfx_api_1.err)(systemErr);
|
|
1913
1793
|
}
|
|
1914
1794
|
}
|
|
1795
|
+
/**
|
|
1796
|
+
* dynamic VS template metadata download
|
|
1797
|
+
*/
|
|
1798
|
+
async fetchOnlineTemplateMetadataForVS() {
|
|
1799
|
+
if ((0, templateHelper_1.useLocalTemplate)()) {
|
|
1800
|
+
return (0, teamsfx_api_1.ok)(undefined); // Skip if using local templates
|
|
1801
|
+
}
|
|
1802
|
+
try {
|
|
1803
|
+
// VS ships stable templates with a stable fx-core and test/pre-release
|
|
1804
|
+
// templates with a beta fx-core. So beta = pre-stable test build → RC.
|
|
1805
|
+
const coreVersion = require("../../package.json").version;
|
|
1806
|
+
const latestVersion = coreVersion.includes("beta")
|
|
1807
|
+
? "0.0.0-rc"
|
|
1808
|
+
: await (0, utils_5.getTemplateVSLatestVersion)();
|
|
1809
|
+
const homedir = os.homedir();
|
|
1810
|
+
const metadataDir = path.join(homedir, `.${String(teamsfx_api_1.ConfigFolderName)}`, "vs-metadata");
|
|
1811
|
+
await fs_extra_1.default.ensureDir(metadataDir);
|
|
1812
|
+
const versionFile = path.join(metadataDir, "template-vs-version.txt");
|
|
1813
|
+
const needDownload = async () => {
|
|
1814
|
+
if (!(await fs_extra_1.default.pathExists(versionFile)))
|
|
1815
|
+
return true;
|
|
1816
|
+
try {
|
|
1817
|
+
const cachedVersion = (await fs_extra_1.default.readFile(versionFile, "utf-8")).trim();
|
|
1818
|
+
return cachedVersion !== latestVersion;
|
|
1819
|
+
}
|
|
1820
|
+
catch {
|
|
1821
|
+
return true;
|
|
1822
|
+
}
|
|
1823
|
+
};
|
|
1824
|
+
if (!(await needDownload())) {
|
|
1825
|
+
return (0, teamsfx_api_1.ok)(undefined); // Already up-to-date
|
|
1826
|
+
}
|
|
1827
|
+
const tag = `${templates_config_json_1.default.vstagPrefix}${latestVersion}`;
|
|
1828
|
+
const metadataZipUrl = `${templates_config_json_1.default.templateDownloadBaseURL}/${tag}/metadata.zip`;
|
|
1829
|
+
const zip = await (0, utils_5.fetchZipFromUrl)(metadataZipUrl);
|
|
1830
|
+
await (0, utils_5.unzip)(zip, metadataDir);
|
|
1831
|
+
await fs_extra_1.default.writeFile(versionFile, latestVersion, { encoding: "utf-8" });
|
|
1832
|
+
return (0, teamsfx_api_1.ok)(undefined);
|
|
1833
|
+
}
|
|
1834
|
+
catch (error) {
|
|
1835
|
+
const message = error?.message || "Unknown error while fetching VS template metadata";
|
|
1836
|
+
const systemErr = new teamsfx_api_1.SystemError("FetchOnlineTemplateMetadataForVS", "DownloadFailed", message, message);
|
|
1837
|
+
return (0, teamsfx_api_1.err)(systemErr);
|
|
1838
|
+
}
|
|
1839
|
+
}
|
|
1915
1840
|
/**
|
|
1916
1841
|
* generate config files
|
|
1917
1842
|
*/
|
|
@@ -1920,9 +1845,9 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
1920
1845
|
}
|
|
1921
1846
|
async updateAuthActionInYaml(authName, authScheme, projectPath, apSpecPath, pluginManifestPath, forceToAddNew = true) {
|
|
1922
1847
|
if (authName && authScheme) {
|
|
1923
|
-
const authInjectRes = await (0,
|
|
1924
|
-
if (
|
|
1925
|
-
|
|
1848
|
+
const authInjectRes = await (0, helper_1.injectAuthAction)(projectPath, authName, authScheme, apSpecPath, forceToAddNew);
|
|
1849
|
+
if (authInjectRes?.defaultRegistrationIdEnvName &&
|
|
1850
|
+
authInjectRes?.registrationIdEnvName &&
|
|
1926
1851
|
authInjectRes.defaultRegistrationIdEnvName !== authInjectRes.registrationIdEnvName) {
|
|
1927
1852
|
const pluginManifestContent = await fs_extra_1.default.readFile(pluginManifestPath, "utf-8");
|
|
1928
1853
|
const updatedPluginManifestContext = pluginManifestContent.replace(authInjectRes.defaultRegistrationIdEnvName, authInjectRes.registrationIdEnvName);
|
|
@@ -1933,7 +1858,7 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
1933
1858
|
parseAuthNameAndScheme(listResult, inputs) {
|
|
1934
1859
|
const authApis = listResult.APIs.filter((value) => value.isValid && !!value.auth);
|
|
1935
1860
|
const result = [];
|
|
1936
|
-
for (const api of inputs[
|
|
1861
|
+
for (const api of inputs[constants_3.QuestionNames.ApiOperation]) {
|
|
1937
1862
|
const operation = authApis.find((op) => op.api === api);
|
|
1938
1863
|
if (operation &&
|
|
1939
1864
|
operation.auth &&
|
|
@@ -1961,7 +1886,7 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
1961
1886
|
return scopeArr;
|
|
1962
1887
|
}
|
|
1963
1888
|
async isDelcarativeAgentApp(inputs) {
|
|
1964
|
-
const projectPath = inputs[
|
|
1889
|
+
const projectPath = inputs[constants_3.QuestionNames.ProjectPath];
|
|
1965
1890
|
const manifestRes = await ManifestUtils_1.manifestUtils.readAppManifest(projectPath);
|
|
1966
1891
|
if (manifestRes.isErr()) {
|
|
1967
1892
|
return (0, teamsfx_api_1.err)(manifestRes.error);
|
|
@@ -1969,21 +1894,25 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
1969
1894
|
return (0, teamsfx_api_1.ok)((0, projectTypeChecker_1.IsDeclarativeAgentManifest)(manifestRes.value));
|
|
1970
1895
|
}
|
|
1971
1896
|
async addOneDriveSharePointKnowledge(inputs, agentManifestPath) {
|
|
1972
|
-
var _a;
|
|
1973
1897
|
const manifestRes = await CopilotGptManifestUtils_1.copilotGptManifestUtils.readCopilotGptManifestFile(agentManifestPath);
|
|
1974
1898
|
if (manifestRes.isErr()) {
|
|
1975
1899
|
return (0, teamsfx_api_1.err)(manifestRes.error);
|
|
1976
1900
|
}
|
|
1977
1901
|
let oneDriveSharePointIds = null;
|
|
1978
1902
|
let oneDriveSharePointUrls = null;
|
|
1979
|
-
const sharePointItem =
|
|
1903
|
+
const sharePointItem = inputs.oneDriveSharePointItem?.[0];
|
|
1980
1904
|
if (sharePointItem &&
|
|
1981
|
-
inputs[
|
|
1905
|
+
inputs[constants_3.QuestionNames.SearchType] !== constants_3.KnowledgeSearchTypeOptions.allOneDriveSharepoint().id) {
|
|
1982
1906
|
if (sharePointItem.url) {
|
|
1983
1907
|
oneDriveSharePointUrls = { url: sharePointItem.url };
|
|
1984
1908
|
}
|
|
1985
1909
|
else {
|
|
1986
|
-
oneDriveSharePointIds =
|
|
1910
|
+
oneDriveSharePointIds = {
|
|
1911
|
+
site_id: sharePointItem.siteId,
|
|
1912
|
+
web_id: sharePointItem.webId,
|
|
1913
|
+
...(sharePointItem.listId && { list_id: sharePointItem.listId }),
|
|
1914
|
+
...(sharePointItem.uniqueId && { unique_id: sharePointItem.uniqueId }),
|
|
1915
|
+
};
|
|
1987
1916
|
}
|
|
1988
1917
|
}
|
|
1989
1918
|
const addOneDriveSharePointCapabilityRes = await CopilotGptManifestUtils_1.copilotGptManifestUtils.addOneDriveSharePointCapability(agentManifestPath, oneDriveSharePointIds, oneDriveSharePointUrls, manifestRes);
|
|
@@ -1998,7 +1927,7 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
1998
1927
|
return (0, teamsfx_api_1.err)(manifestRes.error);
|
|
1999
1928
|
}
|
|
2000
1929
|
let webSearchUrl = null;
|
|
2001
|
-
if (inputs[
|
|
1930
|
+
if (inputs[constants_3.QuestionNames.SearchType] !== constants_3.KnowledgeSearchTypeOptions.allWeb().id) {
|
|
2002
1931
|
webSearchUrl = {
|
|
2003
1932
|
url: inputs.webSearchUrl,
|
|
2004
1933
|
};
|
|
@@ -2015,11 +1944,11 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
2015
1944
|
return (0, teamsfx_api_1.err)(manifestRes.error);
|
|
2016
1945
|
}
|
|
2017
1946
|
let connectionIds;
|
|
2018
|
-
if (inputs[
|
|
2019
|
-
connectionIds = [inputs[
|
|
1947
|
+
if (inputs[constants_3.QuestionNames.GCInput]) {
|
|
1948
|
+
connectionIds = [inputs[constants_3.QuestionNames.GCInput]];
|
|
2020
1949
|
}
|
|
2021
1950
|
else {
|
|
2022
|
-
connectionIds = inputs[
|
|
1951
|
+
connectionIds = inputs[constants_3.QuestionNames.GCList];
|
|
2023
1952
|
}
|
|
2024
1953
|
const addGCCapabilityRes = await CopilotGptManifestUtils_1.copilotGptManifestUtils.addGCCapability(agentManifestPath, connectionIds, manifestRes);
|
|
2025
1954
|
if (addGCCapabilityRes.isErr()) {
|
|
@@ -2028,13 +1957,13 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
2028
1957
|
return (0, teamsfx_api_1.ok)(undefined);
|
|
2029
1958
|
}
|
|
2030
1959
|
async addEmbeddedKnowledge(inputs) {
|
|
2031
|
-
const manifestFilePath = inputs[
|
|
2032
|
-
const filePath = inputs[
|
|
1960
|
+
const manifestFilePath = inputs[constants_3.QuestionNames.ManifestPath];
|
|
1961
|
+
const filePath = inputs[constants_3.QuestionNames.EmbeddedKnowledgeFiles];
|
|
2033
1962
|
const res = await CopilotGptManifestUtils_1.copilotGptManifestUtils.addEmbeddedKnowledgeFiles(manifestFilePath, filePath);
|
|
2034
1963
|
return res;
|
|
2035
1964
|
}
|
|
2036
1965
|
showAddKnowledgeSuccessMessage(context, inputs, agentManifestPath, knowledgeSource) {
|
|
2037
|
-
if (knowledgeSource ===
|
|
1966
|
+
if (knowledgeSource === constants_3.KnowledgeSourceOptions.embeddedKnowledge().id) {
|
|
2038
1967
|
void globalVars_1.TOOLS.ui.showMessage("info", (0, localizeUtils_1.getLocalizedString)("core.addEmbeddedKnowledge.success"), false);
|
|
2039
1968
|
return;
|
|
2040
1969
|
}
|
|
@@ -2044,10 +1973,9 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
2044
1973
|
void context.userInteraction
|
|
2045
1974
|
.showMessage("info", successMessage, false, viewAgentManifest)
|
|
2046
1975
|
.then((userRes) => {
|
|
2047
|
-
var _a, _b;
|
|
2048
1976
|
if (userRes.isOk() && userRes.value === viewAgentManifest) {
|
|
2049
1977
|
context.telemetryReporter.sendTelemetryEvent(telemetry_1.TelemetryEvent.ViewAgentManifestAfterAdded);
|
|
2050
|
-
void
|
|
1978
|
+
void globalVars_1.TOOLS?.ui?.openFile?.(agentManifestPath);
|
|
2051
1979
|
}
|
|
2052
1980
|
});
|
|
2053
1981
|
}
|
|
@@ -2057,6 +1985,7 @@ class FxCore extends FxCore_declarativeAgent_1.FxCoreDeclarativeAgentPart {
|
|
|
2057
1985
|
}
|
|
2058
1986
|
}
|
|
2059
1987
|
}
|
|
1988
|
+
exports.FxCore = FxCore;
|
|
2060
1989
|
tslib_1.__decorate([
|
|
2061
1990
|
(0, hooks_1.hooks)([
|
|
2062
1991
|
(0, globalVars_1.ErrorContextMW)({ component: "FxCore", stage: "createProject", reset: true }),
|
|
@@ -2645,17 +2574,6 @@ tslib_1.__decorate([
|
|
|
2645
2574
|
tslib_1.__metadata("design:paramtypes", [String]),
|
|
2646
2575
|
tslib_1.__metadata("design:returntype", Promise)
|
|
2647
2576
|
], FxCore.prototype, "checkProjectType", null);
|
|
2648
|
-
tslib_1.__decorate([
|
|
2649
|
-
(0, hooks_1.hooks)([
|
|
2650
|
-
(0, globalVars_1.ErrorContextMW)({ component: "FxCore", stage: teamsfx_api_1.Stage.addPlugin }),
|
|
2651
|
-
errorHandler_1.ErrorHandlerMW,
|
|
2652
|
-
(0, questionMW_1.QuestionMW)("addPlugin"),
|
|
2653
|
-
concurrentLocker_1.ConcurrentLockerMW,
|
|
2654
|
-
]),
|
|
2655
|
-
tslib_1.__metadata("design:type", Function),
|
|
2656
|
-
tslib_1.__metadata("design:paramtypes", [Object]),
|
|
2657
|
-
tslib_1.__metadata("design:returntype", Promise)
|
|
2658
|
-
], FxCore.prototype, "addPlugin", null);
|
|
2659
2577
|
tslib_1.__decorate([
|
|
2660
2578
|
(0, hooks_1.hooks)([
|
|
2661
2579
|
(0, globalVars_1.ErrorContextMW)({ component: "FxCore", stage: teamsfx_api_1.Stage.RegeneratePlugin }),
|
|
@@ -2749,11 +2667,19 @@ tslib_1.__decorate([
|
|
|
2749
2667
|
tslib_1.__metadata("design:paramtypes", []),
|
|
2750
2668
|
tslib_1.__metadata("design:returntype", Promise)
|
|
2751
2669
|
], FxCore.prototype, "fetchOnlineTemplateMetadata", null);
|
|
2670
|
+
tslib_1.__decorate([
|
|
2671
|
+
(0, hooks_1.hooks)([
|
|
2672
|
+
(0, globalVars_1.ErrorContextMW)({ component: "FxCore", stage: "fetchOnlineTemplateMetadataForVS" }),
|
|
2673
|
+
errorHandler_1.ErrorHandlerMW,
|
|
2674
|
+
]),
|
|
2675
|
+
tslib_1.__metadata("design:type", Function),
|
|
2676
|
+
tslib_1.__metadata("design:paramtypes", []),
|
|
2677
|
+
tslib_1.__metadata("design:returntype", Promise)
|
|
2678
|
+
], FxCore.prototype, "fetchOnlineTemplateMetadataForVS", null);
|
|
2752
2679
|
tslib_1.__decorate([
|
|
2753
2680
|
(0, hooks_1.hooks)([(0, globalVars_1.ErrorContextMW)({ component: "FxCore", stage: "generateConfigFiles" }), errorHandler_1.ErrorHandlerMW]),
|
|
2754
2681
|
tslib_1.__metadata("design:type", Function),
|
|
2755
2682
|
tslib_1.__metadata("design:paramtypes", [Object]),
|
|
2756
2683
|
tslib_1.__metadata("design:returntype", Promise)
|
|
2757
2684
|
], FxCore.prototype, "generateConfigFiles", null);
|
|
2758
|
-
exports.FxCore = FxCore;
|
|
2759
2685
|
//# sourceMappingURL=FxCore.js.map
|