@microsoft/teamsfx-core 3.0.13 → 3.0.14-alpha.0890e15c35.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/teamsDevPortalClient.d.ts +7 -2
- package/build/client/teamsDevPortalClient.d.ts.map +1 -1
- package/build/client/teamsDevPortalClient.js +63 -59
- package/build/client/teamsDevPortalClient.js.map +1 -1
- package/build/client/teamsGraphClient.d.ts +6 -3
- package/build/client/teamsGraphClient.d.ts.map +1 -1
- package/build/client/teamsGraphClient.js +20 -3
- package/build/client/teamsGraphClient.js.map +1 -1
- package/build/common/daSpecParser.d.ts +16 -1
- package/build/common/daSpecParser.d.ts.map +1 -1
- package/build/common/daSpecParser.js +34 -21
- package/build/common/daSpecParser.js.map +1 -1
- package/build/common/featureFlags.d.ts +22 -2
- package/build/common/featureFlags.d.ts.map +1 -1
- package/build/common/featureFlags.js +31 -3
- package/build/common/featureFlags.js.map +1 -1
- package/build/common/fetchHelper.d.ts.map +1 -1
- package/build/common/fetchHelper.js +41 -3
- package/build/common/fetchHelper.js.map +1 -1
- package/build/common/kiotaClient.d.ts +3 -3
- package/build/common/kiotaClient.d.ts.map +1 -1
- package/build/common/kiotaClient.js +10 -10
- package/build/common/kiotaClient.js.map +1 -1
- package/build/common/projectSettingsHelper.d.ts +0 -2
- package/build/common/projectSettingsHelper.d.ts.map +1 -1
- package/build/common/projectSettingsHelper.js +1 -56
- package/build/common/projectSettingsHelper.js.map +1 -1
- package/build/common/telemetry.d.ts +4 -15
- package/build/common/telemetry.d.ts.map +1 -1
- package/build/common/telemetry.js +7 -20
- package/build/common/telemetry.js.map +1 -1
- package/build/common/templates-config.json +9 -2
- package/build/common/tools.d.ts +6 -1
- package/build/common/tools.d.ts.map +1 -1
- package/build/common/tools.js +13 -8
- package/build/common/tools.js.map +1 -1
- package/build/common/wrappedAxiosClient.d.ts +1 -1
- package/build/common/wrappedAxiosClient.d.ts.map +1 -1
- package/build/common/wrappedAxiosClient.js +12 -13
- package/build/common/wrappedAxiosClient.js.map +1 -1
- package/build/component/configManager/actionInjector.d.ts +16 -1
- package/build/component/configManager/actionInjector.d.ts.map +1 -1
- package/build/component/configManager/actionInjector.js +106 -1
- package/build/component/configManager/actionInjector.js.map +1 -1
- package/build/component/configManager/validator.d.ts.map +1 -1
- package/build/component/configManager/validator.js +2 -0
- package/build/component/configManager/validator.js.map +1 -1
- package/build/component/coordinator/index.d.ts +4 -0
- package/build/component/coordinator/index.d.ts.map +1 -1
- package/build/component/coordinator/index.js +10 -3
- package/build/component/coordinator/index.js.map +1 -1
- package/build/component/deps-checker/internal/funcToolChecker.d.ts +6 -0
- package/build/component/deps-checker/internal/funcToolChecker.d.ts.map +1 -1
- package/build/component/deps-checker/internal/funcToolChecker.js +15 -12
- package/build/component/deps-checker/internal/funcToolChecker.js.map +1 -1
- package/build/component/deps-checker/internal/nodeChecker.js +1 -1
- package/build/component/deps-checker/internal/nodeChecker.js.map +1 -1
- package/build/component/deps-checker/internal/testToolChecker.d.ts +12 -0
- package/build/component/deps-checker/internal/testToolChecker.d.ts.map +1 -1
- package/build/component/deps-checker/internal/testToolChecker.js +23 -14
- package/build/component/deps-checker/internal/testToolChecker.js.map +1 -1
- package/build/component/developerPortalScaffoldUtils.d.ts +11 -1
- package/build/component/developerPortalScaffoldUtils.d.ts.map +1 -1
- package/build/component/developerPortalScaffoldUtils.js +21 -12
- package/build/component/developerPortalScaffoldUtils.js.map +1 -1
- package/build/component/driver/aad/utility/aadManifestHelper.d.ts +1 -1
- package/build/component/driver/aad/utility/aadManifestHelper.d.ts.map +1 -1
- package/build/component/driver/aad/utility/aadManifestHelper.js +7 -4
- package/build/component/driver/aad/utility/aadManifestHelper.js.map +1 -1
- package/build/component/driver/add/addWebPart.d.ts +9 -0
- package/build/component/driver/add/addWebPart.d.ts.map +1 -1
- package/build/component/driver/add/addWebPart.js +13 -7
- package/build/component/driver/add/addWebPart.js.map +1 -1
- package/build/component/driver/arm/util/handleError.d.ts +5 -0
- package/build/component/driver/arm/util/handleError.d.ts.map +1 -1
- package/build/component/driver/arm/util/handleError.js +10 -5
- package/build/component/driver/arm/util/handleError.js.map +1 -1
- package/build/component/driver/copilotAgent/interfaces/PublishArgs.d.ts +14 -0
- package/build/component/driver/copilotAgent/interfaces/PublishArgs.d.ts.map +1 -0
- package/build/component/driver/copilotAgent/interfaces/PublishArgs.js +5 -0
- package/build/component/driver/copilotAgent/interfaces/PublishArgs.js.map +1 -0
- package/build/component/driver/copilotAgent/publish.d.ts +16 -0
- package/build/component/driver/copilotAgent/publish.d.ts.map +1 -0
- package/build/component/driver/copilotAgent/publish.js +175 -0
- package/build/component/driver/copilotAgent/publish.js.map +1 -0
- package/build/component/driver/dcr/create.d.ts +10 -0
- package/build/component/driver/dcr/create.d.ts.map +1 -0
- package/build/component/driver/dcr/create.js +142 -0
- package/build/component/driver/dcr/create.js.map +1 -0
- package/build/component/driver/dcr/error/dcrNameTooLong.d.ts +5 -0
- package/build/component/driver/dcr/error/dcrNameTooLong.d.ts.map +1 -0
- package/build/component/driver/dcr/error/dcrNameTooLong.js +21 -0
- package/build/component/driver/dcr/error/dcrNameTooLong.js.map +1 -0
- package/build/component/driver/dcr/error/dcrWellKnownInvalid.d.ts +5 -0
- package/build/component/driver/dcr/error/dcrWellKnownInvalid.d.ts.map +1 -0
- package/build/component/driver/dcr/error/dcrWellKnownInvalid.js +21 -0
- package/build/component/driver/dcr/error/dcrWellKnownInvalid.js.map +1 -0
- package/build/component/driver/dcr/interface/createDcrArgs.d.ts +9 -0
- package/build/component/driver/dcr/interface/createDcrArgs.d.ts.map +1 -0
- package/build/component/driver/dcr/interface/createDcrArgs.js +5 -0
- package/build/component/driver/dcr/interface/createDcrArgs.js.map +1 -0
- package/build/component/driver/dcr/interface/createDcrOutputs.d.ts +7 -0
- package/build/component/driver/dcr/interface/createDcrOutputs.d.ts.map +1 -0
- package/build/component/driver/dcr/interface/createDcrOutputs.js +10 -0
- package/build/component/driver/dcr/interface/createDcrOutputs.js.map +1 -0
- package/build/component/driver/dcr/utility/constants.d.ts +7 -0
- package/build/component/driver/dcr/utility/constants.d.ts.map +1 -0
- package/build/component/driver/dcr/utility/constants.js +12 -0
- package/build/component/driver/dcr/utility/constants.js.map +1 -0
- package/build/component/driver/deploy/azure/azureStaticWebAppGetDeploymentTokenDriver.d.ts +8 -1
- package/build/component/driver/deploy/azure/azureStaticWebAppGetDeploymentTokenDriver.d.ts.map +1 -1
- package/build/component/driver/deploy/azure/azureStaticWebAppGetDeploymentTokenDriver.js +15 -10
- package/build/component/driver/deploy/azure/azureStaticWebAppGetDeploymentTokenDriver.js.map +1 -1
- package/build/component/driver/devTool/httpClient.d.ts +4 -0
- package/build/component/driver/devTool/httpClient.d.ts.map +1 -1
- package/build/component/driver/devTool/httpClient.js +6 -3
- package/build/component/driver/devTool/httpClient.js.map +1 -1
- package/build/component/driver/index.d.ts +2 -0
- package/build/component/driver/index.d.ts.map +1 -1
- package/build/component/driver/index.js +2 -0
- package/build/component/driver/index.js.map +1 -1
- package/build/component/driver/m365/acquire.d.ts +13 -1
- package/build/component/driver/m365/acquire.d.ts.map +1 -1
- package/build/component/driver/m365/acquire.js +16 -8
- package/build/component/driver/m365/acquire.js.map +1 -1
- package/build/component/driver/oauth/update.d.ts +6 -0
- package/build/component/driver/oauth/update.d.ts.map +1 -1
- package/build/component/driver/oauth/update.js +8 -4
- package/build/component/driver/oauth/update.js.map +1 -1
- package/build/component/driver/script/scriptDriver.d.ts +6 -0
- package/build/component/driver/script/scriptDriver.d.ts.map +1 -1
- package/build/component/driver/script/scriptDriver.js +9 -4
- package/build/component/driver/script/scriptDriver.js.map +1 -1
- package/build/component/driver/share/utils.d.ts.map +1 -1
- package/build/component/driver/share/utils.js +9 -7
- package/build/component/driver/share/utils.js.map +1 -1
- package/build/component/driver/teamsApp/constants.d.ts +4 -3
- package/build/component/driver/teamsApp/constants.d.ts.map +1 -1
- package/build/component/driver/teamsApp/constants.js +4 -3
- package/build/component/driver/teamsApp/constants.js.map +1 -1
- package/build/component/driver/teamsApp/createAppPackage.d.ts +8 -0
- package/build/component/driver/teamsApp/createAppPackage.d.ts.map +1 -1
- package/build/component/driver/teamsApp/createAppPackage.js +113 -13
- package/build/component/driver/teamsApp/createAppPackage.js.map +1 -1
- package/build/component/driver/teamsApp/interfaces/DcrRegistration.d.ts +10 -0
- package/build/component/driver/teamsApp/interfaces/DcrRegistration.d.ts.map +1 -0
- package/build/component/driver/teamsApp/interfaces/DcrRegistration.js +5 -0
- package/build/component/driver/teamsApp/interfaces/DcrRegistration.js.map +1 -0
- package/build/component/driver/teamsApp/interfaces/ValidationResult.d.ts +6 -0
- package/build/component/driver/teamsApp/interfaces/ValidationResult.d.ts.map +1 -1
- package/build/component/driver/teamsApp/publishAppPackage.d.ts +4 -2
- package/build/component/driver/teamsApp/publishAppPackage.d.ts.map +1 -1
- package/build/component/driver/teamsApp/publishAppPackage.js +9 -55
- package/build/component/driver/teamsApp/publishAppPackage.js.map +1 -1
- package/build/component/driver/teamsApp/syncManifest.d.ts +16 -3
- package/build/component/driver/teamsApp/syncManifest.d.ts.map +1 -1
- package/build/component/driver/teamsApp/syncManifest.js +28 -18
- package/build/component/driver/teamsApp/syncManifest.js.map +1 -1
- package/build/component/driver/teamsApp/teamsappMgr.d.ts +4 -0
- package/build/component/driver/teamsApp/teamsappMgr.d.ts.map +1 -1
- package/build/component/driver/teamsApp/teamsappMgr.js +6 -3
- package/build/component/driver/teamsApp/teamsappMgr.js.map +1 -1
- package/build/component/driver/teamsApp/utils/CopilotGptManifestUtils.d.ts +2 -0
- package/build/component/driver/teamsApp/utils/CopilotGptManifestUtils.d.ts.map +1 -1
- package/build/component/driver/teamsApp/utils/CopilotGptManifestUtils.js +113 -1
- package/build/component/driver/teamsApp/utils/CopilotGptManifestUtils.js.map +1 -1
- package/build/component/driver/teamsApp/utils/ManifestUtils.d.ts +5 -1
- package/build/component/driver/teamsApp/utils/ManifestUtils.d.ts.map +1 -1
- package/build/component/driver/teamsApp/utils/ManifestUtils.js +14 -3
- package/build/component/driver/teamsApp/utils/ManifestUtils.js.map +1 -1
- package/build/component/driver/teamsApp/utils/McpCertVerification.d.ts +17 -0
- package/build/component/driver/teamsApp/utils/McpCertVerification.d.ts.map +1 -0
- package/build/component/driver/teamsApp/utils/McpCertVerification.js +72 -0
- package/build/component/driver/teamsApp/utils/McpCertVerification.js.map +1 -0
- package/build/component/driver/teamsApp/utils/telemetry.d.ts +1 -0
- package/build/component/driver/teamsApp/utils/telemetry.d.ts.map +1 -1
- package/build/component/driver/teamsApp/utils/telemetry.js +1 -0
- package/build/component/driver/teamsApp/utils/telemetry.js.map +1 -1
- package/build/component/driver/teamsApp/validate.d.ts.map +1 -1
- package/build/component/driver/teamsApp/validate.js +12 -2
- package/build/component/driver/teamsApp/validate.js.map +1 -1
- package/build/component/driver/teamsApp/validateTestCases.d.ts +12 -0
- package/build/component/driver/teamsApp/validateTestCases.d.ts.map +1 -1
- package/build/component/driver/teamsApp/validateTestCases.js +17 -8
- package/build/component/driver/teamsApp/validateTestCases.js.map +1 -1
- package/build/component/driver/typeSpec/compile.d.ts +9 -0
- package/build/component/driver/typeSpec/compile.d.ts.map +1 -1
- package/build/component/driver/typeSpec/compile.js +16 -10
- package/build/component/driver/typeSpec/compile.js.map +1 -1
- package/build/component/generator/declarativeAgent/generator.d.ts +8 -0
- package/build/component/generator/declarativeAgent/generator.d.ts.map +1 -1
- package/build/component/generator/declarativeAgent/generator.js +16 -10
- package/build/component/generator/declarativeAgent/generator.js.map +1 -1
- package/build/component/generator/declarativeAgent/helper.d.ts +31 -0
- package/build/component/generator/declarativeAgent/helper.d.ts.map +1 -1
- package/build/component/generator/declarativeAgent/helper.js +237 -34
- package/build/component/generator/declarativeAgent/helper.js.map +1 -1
- package/build/component/generator/defaultGenerator.d.ts.map +1 -1
- package/build/component/generator/defaultGenerator.js +14 -1
- package/build/component/generator/defaultGenerator.js.map +1 -1
- package/build/component/generator/error.d.ts +3 -0
- package/build/component/generator/error.d.ts.map +1 -1
- package/build/component/generator/error.js +7 -1
- package/build/component/generator/error.js.map +1 -1
- package/build/component/generator/generatorAction.d.ts +9 -0
- package/build/component/generator/generatorAction.d.ts.map +1 -1
- package/build/component/generator/generatorAction.js +16 -8
- package/build/component/generator/generatorAction.js.map +1 -1
- package/build/component/generator/officeAddin/generator.d.ts +12 -0
- package/build/component/generator/officeAddin/generator.d.ts.map +1 -1
- package/build/component/generator/officeAddin/generator.js +53 -3
- package/build/component/generator/officeAddin/generator.js.map +1 -1
- package/build/component/generator/officeAddin/helperMethods.d.ts +4 -0
- package/build/component/generator/officeAddin/helperMethods.d.ts.map +1 -1
- package/build/component/generator/officeAddin/helperMethods.js +6 -3
- package/build/component/generator/officeAddin/helperMethods.js.map +1 -1
- package/build/component/generator/openApiSpec/customEngineAgentGenerator.d.ts +9 -0
- package/build/component/generator/openApiSpec/customEngineAgentGenerator.d.ts.map +1 -1
- package/build/component/generator/openApiSpec/customEngineAgentGenerator.js +11 -5
- package/build/component/generator/openApiSpec/customEngineAgentGenerator.js.map +1 -1
- package/build/component/generator/openPlugin/authorParser.d.ts +8 -0
- package/build/component/generator/openPlugin/authorParser.d.ts.map +1 -0
- package/build/component/generator/openPlugin/authorParser.js +49 -0
- package/build/component/generator/openPlugin/authorParser.js.map +1 -0
- package/build/component/generator/openPlugin/deterministicId.d.ts +6 -0
- package/build/component/generator/openPlugin/deterministicId.d.ts.map +1 -0
- package/build/component/generator/openPlugin/deterministicId.js +31 -0
- package/build/component/generator/openPlugin/deterministicId.js.map +1 -0
- package/build/component/generator/openPlugin/exporter.d.ts +18 -0
- package/build/component/generator/openPlugin/exporter.d.ts.map +1 -0
- package/build/component/generator/openPlugin/exporter.js +233 -0
- package/build/component/generator/openPlugin/exporter.js.map +1 -0
- package/build/component/generator/openPlugin/iconStrategy.d.ts +8 -0
- package/build/component/generator/openPlugin/iconStrategy.d.ts.map +1 -0
- package/build/component/generator/openPlugin/iconStrategy.js +62 -0
- package/build/component/generator/openPlugin/iconStrategy.js.map +1 -0
- package/build/component/generator/openPlugin/importer.d.ts +25 -0
- package/build/component/generator/openPlugin/importer.d.ts.map +1 -0
- package/build/component/generator/openPlugin/importer.js +140 -0
- package/build/component/generator/openPlugin/importer.js.map +1 -0
- package/build/component/generator/openPlugin/mapper.d.ts +6 -0
- package/build/component/generator/openPlugin/mapper.d.ts.map +1 -0
- package/build/component/generator/openPlugin/mapper.js +141 -0
- package/build/component/generator/openPlugin/mapper.js.map +1 -0
- package/build/component/generator/openPlugin/parser.d.ts +3 -0
- package/build/component/generator/openPlugin/parser.d.ts.map +1 -0
- package/build/component/generator/openPlugin/parser.js +153 -0
- package/build/component/generator/openPlugin/parser.js.map +1 -0
- package/build/component/generator/openPlugin/placeholderPng.d.ts +6 -0
- package/build/component/generator/openPlugin/placeholderPng.d.ts.map +1 -0
- package/build/component/generator/openPlugin/placeholderPng.js +71 -0
- package/build/component/generator/openPlugin/placeholderPng.js.map +1 -0
- package/build/component/generator/openPlugin/textUtils.d.ts +12 -0
- package/build/component/generator/openPlugin/textUtils.d.ts.map +1 -0
- package/build/component/generator/openPlugin/textUtils.js +43 -0
- package/build/component/generator/openPlugin/textUtils.js.map +1 -0
- package/build/component/generator/openPlugin/types.d.ts +128 -0
- package/build/component/generator/openPlugin/types.d.ts.map +1 -0
- package/build/component/generator/openPlugin/types.js.map +1 -0
- package/build/component/generator/spfx/utils/constants.d.ts +1 -1
- package/build/component/generator/spfx/utils/constants.js +1 -1
- package/build/component/generator/templateHelper.d.ts +15 -0
- package/build/component/generator/templateHelper.d.ts.map +1 -1
- package/build/component/generator/templateHelper.js +28 -0
- 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 +12 -5
- package/build/component/generator/templates/metadata/index.js.map +1 -1
- package/build/component/generator/templates/templateNames.d.ts +4 -1
- package/build/component/generator/templates/templateNames.d.ts.map +1 -1
- package/build/component/generator/templates/templateNames.js +5 -0
- 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 +4 -1
- package/build/component/generator/templates/templateReplaceMap.js.map +1 -1
- package/build/component/generator/utils.js +8 -8
- package/build/component/generator/utils.js.map +1 -1
- package/build/component/generator/v4MetadataSource.d.ts +23 -0
- package/build/component/generator/v4MetadataSource.d.ts.map +1 -0
- package/build/component/generator/v4MetadataSource.js +42 -0
- package/build/component/generator/v4MetadataSource.js.map +1 -0
- package/build/component/generator/v4TemplateBridge.d.ts +40 -0
- package/build/component/generator/v4TemplateBridge.d.ts.map +1 -0
- package/build/component/generator/v4TemplateBridge.js +125 -0
- package/build/component/generator/v4TemplateBridge.js.map +1 -0
- package/build/component/local/localCertificateManager.d.ts +17 -1
- package/build/component/local/localCertificateManager.d.ts.map +1 -1
- package/build/component/local/localCertificateManager.js +48 -31
- package/build/component/local/localCertificateManager.js.map +1 -1
- package/build/component/m365/packageService.d.ts +10 -0
- package/build/component/m365/packageService.d.ts.map +1 -1
- package/build/component/m365/packageService.js +55 -13
- package/build/component/m365/packageService.js.map +1 -1
- package/build/component/middleware/envMW.d.ts.map +1 -1
- package/build/component/middleware/envMW.js +5 -0
- package/build/component/middleware/envMW.js.map +1 -1
- package/build/component/utils/ResourceGroupHelper.d.ts +4 -0
- package/build/component/utils/ResourceGroupHelper.d.ts.map +1 -1
- package/build/component/utils/ResourceGroupHelper.js +7 -4
- package/build/component/utils/ResourceGroupHelper.js.map +1 -1
- package/build/component/utils/charsetUtils.js +3 -3
- package/build/component/utils/charsetUtils.js.map +1 -1
- package/build/component/utils/fileOperation.d.ts +10 -0
- package/build/component/utils/fileOperation.d.ts.map +1 -1
- package/build/component/utils/fileOperation.js +27 -17
- package/build/component/utils/fileOperation.js.map +1 -1
- package/build/component/utils/mcpAuthScaffolder.d.ts +106 -0
- package/build/component/utils/mcpAuthScaffolder.d.ts.map +1 -0
- package/build/component/utils/mcpAuthScaffolder.js +153 -0
- package/build/component/utils/mcpAuthScaffolder.js.map +1 -0
- package/build/component/utils/mcpToolFetcher.d.ts +12 -1
- package/build/component/utils/mcpToolFetcher.d.ts.map +1 -1
- package/build/component/utils/mcpToolFetcher.js +23 -3
- package/build/component/utils/mcpToolFetcher.js.map +1 -1
- package/build/component/utils/metadataGraphPermssion.d.ts +4 -0
- package/build/component/utils/metadataGraphPermssion.d.ts.map +1 -1
- package/build/component/utils/metadataGraphPermssion.js +7 -4
- package/build/component/utils/metadataGraphPermssion.js.map +1 -1
- package/build/component/utils/odrProvider.d.ts +6 -0
- package/build/component/utils/odrProvider.d.ts.map +1 -1
- package/build/component/utils/odrProvider.js +9 -4
- package/build/component/utils/odrProvider.js.map +1 -1
- package/build/core/FxCore.d.ts +46 -4
- package/build/core/FxCore.d.ts.map +1 -1
- package/build/core/FxCore.declarativeAgent.d.ts +9 -0
- package/build/core/FxCore.declarativeAgent.d.ts.map +1 -1
- package/build/core/FxCore.declarativeAgent.js +286 -174
- package/build/core/FxCore.declarativeAgent.js.map +1 -1
- package/build/core/FxCore.js +443 -140
- package/build/core/FxCore.js.map +1 -1
- package/build/core/FxCore.openPlugin.d.ts +29 -0
- package/build/core/FxCore.openPlugin.d.ts.map +1 -0
- package/build/core/FxCore.openPlugin.js +135 -0
- package/build/core/FxCore.openPlugin.js.map +1 -0
- package/build/core/collaborator.d.ts +4 -0
- package/build/core/collaborator.d.ts.map +1 -1
- package/build/core/collaborator.js +6 -3
- package/build/core/collaborator.js.map +1 -1
- package/build/core/middleware/concurrentLocker.d.ts +9 -0
- package/build/core/middleware/concurrentLocker.d.ts.map +1 -1
- package/build/core/middleware/concurrentLocker.js +14 -11
- package/build/core/middleware/concurrentLocker.js.map +1 -1
- package/build/core/middleware/errorHandler.d.ts.map +1 -1
- package/build/core/middleware/errorHandler.js +9 -0
- package/build/core/middleware/errorHandler.js.map +1 -1
- package/build/core/middleware/fileLocker.d.ts +6 -0
- package/build/core/middleware/fileLocker.d.ts.map +1 -1
- package/build/core/middleware/fileLocker.js +11 -6
- package/build/core/middleware/fileLocker.js.map +1 -1
- package/build/core/middleware/utils/v3MigrationUtils.d.ts +1 -34
- package/build/core/middleware/utils/v3MigrationUtils.d.ts.map +1 -1
- package/build/core/middleware/utils/v3MigrationUtils.js +6 -245
- package/build/core/middleware/utils/v3MigrationUtils.js.map +1 -1
- package/build/error/teamsApp.d.ts +3 -0
- package/build/error/teamsApp.d.ts.map +1 -1
- package/build/error/teamsApp.js +15 -1
- package/build/error/teamsApp.js.map +1 -1
- package/build/question/constants.d.ts.map +1 -1
- package/build/question/constants.js +1 -6
- package/build/question/constants.js.map +1 -1
- package/build/question/create.d.ts +8 -1
- package/build/question/create.d.ts.map +1 -1
- package/build/question/create.js +24 -15
- package/build/question/create.js.map +1 -1
- package/build/question/index.d.ts +1 -0
- package/build/question/index.d.ts.map +1 -1
- package/build/question/index.js +3 -0
- package/build/question/index.js.map +1 -1
- package/build/question/inputs/AddPluginInputs.d.ts +1 -1
- package/build/question/inputs/AddPluginInputs.d.ts.map +1 -1
- package/build/question/inputs/AddSkillInputs.d.ts +10 -0
- package/build/question/inputs/AddSkillInputs.d.ts.map +1 -0
- package/build/question/inputs/AddSkillInputs.js +5 -0
- package/build/question/inputs/AddSkillInputs.js.map +1 -0
- package/build/question/inputs/CreateProjectInputs.d.ts +7 -1
- package/build/question/inputs/CreateProjectInputs.d.ts.map +1 -1
- package/build/question/inputs/ExportOpenPluginInputs.d.ts +10 -0
- package/build/question/inputs/ExportOpenPluginInputs.d.ts.map +1 -0
- package/build/question/inputs/ExportOpenPluginInputs.js +5 -0
- package/build/question/inputs/ExportOpenPluginInputs.js.map +1 -0
- package/build/question/inputs/ImportOpenPluginInputs.d.ts +28 -0
- package/build/question/inputs/ImportOpenPluginInputs.d.ts.map +1 -0
- package/build/question/inputs/ImportOpenPluginInputs.js +5 -0
- package/build/question/inputs/ImportOpenPluginInputs.js.map +1 -0
- package/build/question/inputs/index.d.ts +3 -0
- package/build/question/inputs/index.d.ts.map +1 -1
- package/build/question/inputs/index.js +3 -0
- package/build/question/inputs/index.js.map +1 -1
- package/build/question/options/AddPluginOptions.js +1 -1
- package/build/question/options/AddPluginOptions.js.map +1 -1
- package/build/question/options/AddSkillOptions.d.ts +4 -0
- package/build/question/options/AddSkillOptions.d.ts.map +1 -0
- package/build/question/options/AddSkillOptions.js +47 -0
- package/build/question/options/AddSkillOptions.js.map +1 -0
- package/build/question/options/CreateProjectOptions.d.ts.map +1 -1
- package/build/question/options/CreateProjectOptions.js +17 -2
- package/build/question/options/CreateProjectOptions.js.map +1 -1
- package/build/question/options/ExportOpenPluginOptions.d.ts +4 -0
- package/build/question/options/ExportOpenPluginOptions.d.ts.map +1 -0
- package/build/question/options/ExportOpenPluginOptions.js +29 -0
- package/build/question/options/ExportOpenPluginOptions.js.map +1 -0
- package/build/question/options/ImportOpenPluginOptions.d.ts +4 -0
- package/build/question/options/ImportOpenPluginOptions.d.ts.map +1 -0
- package/build/question/options/ImportOpenPluginOptions.js +54 -0
- package/build/question/options/ImportOpenPluginOptions.js.map +1 -0
- package/build/question/options/index.d.ts +3 -0
- package/build/question/options/index.d.ts.map +1 -1
- package/build/question/options/index.js +3 -0
- package/build/question/options/index.js.map +1 -1
- package/build/question/other.d.ts +1 -0
- package/build/question/other.d.ts.map +1 -1
- package/build/question/other.js +152 -35
- package/build/question/other.js.map +1 -1
- package/build/question/questionNames.d.ts +10 -1
- package/build/question/questionNames.d.ts.map +1 -1
- package/build/question/questionNames.js +9 -0
- package/build/question/questionNames.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 +11 -0
- package/build/question/scaffold/vsc/CapabilityOptions.js.map +1 -1
- package/build/question/scaffold/vsc/ProjectTypeOptions.d.ts +2 -0
- package/build/question/scaffold/vsc/ProjectTypeOptions.d.ts.map +1 -1
- package/build/question/scaffold/vsc/ProjectTypeOptions.js +9 -0
- package/build/question/scaffold/vsc/ProjectTypeOptions.js.map +1 -1
- package/build/question/scaffold/vsc/daProjectTypeNode.d.ts.map +1 -1
- package/build/question/scaffold/vsc/daProjectTypeNode.js +1 -3
- package/build/question/scaffold/vsc/daProjectTypeNode.js.map +1 -1
- package/build/question/scaffold/vsc/rootNode.js +6 -4
- package/build/question/scaffold/vsc/rootNode.js.map +1 -1
- package/build/question/scaffold/vsc/teamsProjectTypeNode.d.ts +32 -0
- package/build/question/scaffold/vsc/teamsProjectTypeNode.d.ts.map +1 -1
- package/build/question/scaffold/vsc/teamsProjectTypeNode.js +136 -36
- package/build/question/scaffold/vsc/teamsProjectTypeNode.js.map +1 -1
- package/build/question/share.d.ts +7 -0
- package/build/question/share.d.ts.map +1 -1
- package/build/question/share.js +7 -3
- package/build/question/share.js.map +1 -1
- package/build/v4/distribution/bundledFloor.d.ts +12 -0
- package/build/v4/distribution/bundledFloor.d.ts.map +1 -0
- package/build/v4/distribution/bundledFloor.js +80 -0
- package/build/v4/distribution/bundledFloor.js.map +1 -0
- package/build/v4/distribution/templateConfig.d.ts +79 -0
- package/build/v4/distribution/templateConfig.d.ts.map +1 -0
- package/build/v4/distribution/templateConfig.js +81 -0
- package/build/v4/distribution/templateConfig.js.map +1 -0
- package/build/v4/distribution/templatePackage.d.ts +29 -0
- package/build/v4/distribution/templatePackage.d.ts.map +1 -0
- package/build/v4/distribution/templatePackage.js +82 -0
- package/build/v4/distribution/templatePackage.js.map +1 -0
- package/build/v4/distribution/templateSource.d.ts +67 -0
- package/build/v4/distribution/templateSource.d.ts.map +1 -0
- package/build/v4/distribution/templateSource.js +220 -0
- package/build/v4/distribution/templateSource.js.map +1 -0
- package/build/v4/distribution/templateSourcePort.d.ts +50 -0
- package/build/v4/distribution/templateSourcePort.d.ts.map +1 -0
- package/build/v4/distribution/templateSourcePort.js +207 -0
- package/build/v4/distribution/templateSourcePort.js.map +1 -0
- package/build/v4/index.d.ts +13 -0
- package/build/v4/index.d.ts.map +1 -0
- package/build/v4/index.js +18 -0
- package/build/v4/index.js.map +1 -0
- package/package.json +18 -79
- package/resource/package.nls.cs.json +42 -14
- package/resource/package.nls.de.json +43 -15
- package/resource/package.nls.es.json +42 -14
- package/resource/package.nls.fr.json +42 -14
- package/resource/package.nls.it.json +43 -15
- package/resource/package.nls.ja.json +42 -14
- package/resource/package.nls.json +64 -14
- package/resource/package.nls.ko.json +42 -14
- package/resource/package.nls.pl.json +43 -15
- package/resource/package.nls.pt-BR.json +42 -14
- package/resource/package.nls.ru.json +43 -15
- package/resource/package.nls.tr.json +44 -16
- package/resource/package.nls.zh-Hans.json +42 -14
- package/resource/package.nls.zh-Hant.json +54 -26
- package/resource/templates/package.nls.cs.json +2 -0
- package/resource/templates/package.nls.de.json +2 -0
- package/resource/templates/package.nls.es.json +2 -0
- package/resource/templates/package.nls.fr.json +2 -0
- package/resource/templates/package.nls.it.json +2 -0
- package/resource/templates/package.nls.ja.json +2 -0
- package/resource/templates/package.nls.json +5 -0
- package/resource/templates/package.nls.ko.json +2 -0
- package/resource/templates/package.nls.pl.json +2 -0
- package/resource/templates/package.nls.pt-BR.json +2 -0
- package/resource/templates/package.nls.ru.json +2 -0
- package/resource/templates/package.nls.tr.json +2 -0
- package/resource/templates/package.nls.zh-Hans.json +2 -0
- package/resource/templates/package.nls.zh-Hant.json +2 -0
- package/resource/yaml-schema/v1.12/yaml.schema.json +2132 -0
- package/resource/yaml-schema/v1.13/yaml.schema.json +2193 -0
- package/resource/yaml-schema/yaml.schema.json +124 -2
- package/templates/fallback/common.zip +0 -0
- package/templates/fallback/csharp.zip +0 -0
- package/templates/fallback/js.zip +0 -0
- package/templates/fallback/python.zip +0 -0
- package/templates/fallback/ts.zip +0 -0
- package/templates/metadata/allTemplates.json +16 -0
- package/templates/metadata/defaultGeneratorTemplates.json +8 -0
- package/templates/metadata.zip +0 -0
- package/templates/ui/tdpNode.json +8 -2
- package/templates/ui/wizardNode.json +34 -2
- package/templates/v4/floor.json +3 -0
- package/templates/v4/templates.zip +0 -0
- package/build/core/middleware/projectMigratorV3.d.ts +0 -39
- package/build/core/middleware/projectMigratorV3.d.ts.map +0 -1
- package/build/core/middleware/projectMigratorV3.js +0 -694
- package/build/core/middleware/projectMigratorV3.js.map +0 -1
- package/build/core/middleware/projectVersionChecker.d.ts +0 -3
- package/build/core/middleware/projectVersionChecker.d.ts.map +0 -1
- package/build/core/middleware/projectVersionChecker.js +0 -60
- package/build/core/middleware/projectVersionChecker.js.map +0 -1
- package/build/core/middleware/types.d.ts +0 -9
- package/build/core/middleware/types.d.ts.map +0 -1
- package/build/core/middleware/types.js.map +0 -1
- package/build/core/middleware/utils/MigrationUtils.d.ts +0 -13
- package/build/core/middleware/utils/MigrationUtils.d.ts.map +0 -1
- package/build/core/middleware/utils/MigrationUtils.js +0 -212
- package/build/core/middleware/utils/MigrationUtils.js.map +0 -1
- package/build/core/middleware/utils/appYmlGenerator.d.ts +0 -34
- package/build/core/middleware/utils/appYmlGenerator.d.ts.map +0 -1
- package/build/core/middleware/utils/appYmlGenerator.js +0 -158
- package/build/core/middleware/utils/appYmlGenerator.js.map +0 -1
- package/build/core/middleware/utils/debug/appLocalYmlGenerator.d.ts +0 -65
- package/build/core/middleware/utils/debug/appLocalYmlGenerator.d.ts.map +0 -1
- package/build/core/middleware/utils/debug/appLocalYmlGenerator.js +0 -61
- package/build/core/middleware/utils/debug/appLocalYmlGenerator.js.map +0 -1
- package/build/core/middleware/utils/debug/constants.d.ts +0 -20
- package/build/core/middleware/utils/debug/constants.d.ts.map +0 -1
- package/build/core/middleware/utils/debug/constants.js +0 -28
- package/build/core/middleware/utils/debug/constants.js.map +0 -1
- package/build/core/middleware/utils/debug/debugMigrationContext.d.ts +0 -14
- package/build/core/middleware/utils/debug/debugMigrationContext.d.ts.map +0 -1
- package/build/core/middleware/utils/debug/debugMigrationContext.js +0 -23
- package/build/core/middleware/utils/debug/debugMigrationContext.js.map +0 -1
- package/build/core/middleware/utils/debug/debugV3MigrationUtils.d.ts +0 -37
- package/build/core/middleware/utils/debug/debugV3MigrationUtils.d.ts.map +0 -1
- package/build/core/middleware/utils/debug/debugV3MigrationUtils.js +0 -291
- package/build/core/middleware/utils/debug/debugV3MigrationUtils.js.map +0 -1
- package/build/core/middleware/utils/debug/taskMigrator.d.ts +0 -22
- package/build/core/middleware/utils/debug/taskMigrator.d.ts.map +0 -1
- package/build/core/middleware/utils/debug/taskMigrator.js +0 -935
- package/build/core/middleware/utils/debug/taskMigrator.js.map +0 -1
- package/build/core/middleware/utils/migrationContext.d.ts +0 -32
- package/build/core/middleware/utils/migrationContext.d.ts.map +0 -1
- package/build/core/middleware/utils/migrationContext.js +0 -104
- package/build/core/middleware/utils/migrationContext.js.map +0 -1
- /package/build/{core/middleware → component/generator/openPlugin}/types.js +0 -0
|
@@ -0,0 +1,233 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// Copyright (c) Microsoft Corporation.
|
|
3
|
+
// Licensed under the MIT license.
|
|
4
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
|
+
exports.OPEN_PLUGIN_EXPORT_SOURCE = void 0;
|
|
6
|
+
exports.exportOpenPlugin = exportOpenPlugin;
|
|
7
|
+
const tslib_1 = require("tslib");
|
|
8
|
+
const teamsfx_api_1 = require("@microsoft/teamsfx-api");
|
|
9
|
+
const fs_extra_1 = tslib_1.__importDefault(require("fs-extra"));
|
|
10
|
+
const path = tslib_1.__importStar(require("path"));
|
|
11
|
+
exports.OPEN_PLUGIN_EXPORT_SOURCE = "OpenPluginExport";
|
|
12
|
+
const ATK_EXTENSION_KEY = "x-microsoft-365-agents-toolkit";
|
|
13
|
+
const MANIFEST_LOCATIONS = {
|
|
14
|
+
"open-plugin": ".plugin/plugin.json",
|
|
15
|
+
"claude-plugin": ".claude-plugin/plugin.json",
|
|
16
|
+
"cursor-plugin": ".cursor-plugin/plugin.json",
|
|
17
|
+
};
|
|
18
|
+
/**
|
|
19
|
+
* Export an ATK project (folder containing appPackage/manifest.json plus the
|
|
20
|
+
* usual agentSkills/agentConnectors layout) into an Open Plugin Spec v1.0
|
|
21
|
+
* directory. The output is structured so that `atk import openplugin --path
|
|
22
|
+
* <output>` reconstructs an equivalent ATK project; fields with no native
|
|
23
|
+
* Open Plugin equivalent are preserved verbatim under the
|
|
24
|
+
* `x-microsoft-365-agents-toolkit` extension key in plugin.json.
|
|
25
|
+
*/
|
|
26
|
+
async function exportOpenPlugin(inputs) {
|
|
27
|
+
try {
|
|
28
|
+
if (!inputs.path) {
|
|
29
|
+
return (0, teamsfx_api_1.err)(new teamsfx_api_1.UserError(exports.OPEN_PLUGIN_EXPORT_SOURCE, "MissingProjectPath", "--path is required."));
|
|
30
|
+
}
|
|
31
|
+
const projectRoot = path.resolve(inputs.path);
|
|
32
|
+
const appPackageDir = path.join(projectRoot, "appPackage");
|
|
33
|
+
const manifestPath = path.join(appPackageDir, "manifest.json");
|
|
34
|
+
if (!(await fs_extra_1.default.pathExists(manifestPath))) {
|
|
35
|
+
return (0, teamsfx_api_1.err)(new teamsfx_api_1.UserError(exports.OPEN_PLUGIN_EXPORT_SOURCE, "ManifestNotFound", `appPackage/manifest.json not found under ${projectRoot}.`));
|
|
36
|
+
}
|
|
37
|
+
const manifestRaw = await fs_extra_1.default.readJSON(manifestPath);
|
|
38
|
+
if (!manifestRaw || typeof manifestRaw !== "object" || Array.isArray(manifestRaw)) {
|
|
39
|
+
return (0, teamsfx_api_1.err)(new teamsfx_api_1.UserError(exports.OPEN_PLUGIN_EXPORT_SOURCE, "InvalidManifest", `appPackage/manifest.json is not a JSON object: ${manifestPath}.`));
|
|
40
|
+
}
|
|
41
|
+
const manifest = manifestRaw;
|
|
42
|
+
const warnings = [];
|
|
43
|
+
const kind = inputs.manifestKind ?? "open-plugin";
|
|
44
|
+
const pluginName = derivePluginName(manifest);
|
|
45
|
+
const defaultOutput = path.join(process.cwd(), `${pluginName}-openplugin`);
|
|
46
|
+
const outputPath = path.resolve(inputs.output ?? defaultOutput);
|
|
47
|
+
if (await fs_extra_1.default.pathExists(outputPath)) {
|
|
48
|
+
const entries = await fs_extra_1.default.readdir(outputPath);
|
|
49
|
+
if (entries.length > 0) {
|
|
50
|
+
return (0, teamsfx_api_1.err)(new teamsfx_api_1.UserError(exports.OPEN_PLUGIN_EXPORT_SOURCE, "OutputDirectoryNotEmpty", `Output directory is not empty: ${outputPath}. Choose a different --output path or empty the directory.`));
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
await fs_extra_1.default.ensureDir(outputPath);
|
|
54
|
+
const pluginJson = buildPluginJson(manifest, pluginName);
|
|
55
|
+
const manifestRel = MANIFEST_LOCATIONS[kind];
|
|
56
|
+
const manifestOut = path.join(outputPath, manifestRel);
|
|
57
|
+
await fs_extra_1.default.ensureDir(path.dirname(manifestOut));
|
|
58
|
+
await fs_extra_1.default.writeJSON(manifestOut, pluginJson, { spaces: 2 });
|
|
59
|
+
await writeMcpJson(outputPath, manifest, warnings);
|
|
60
|
+
await copySkills(outputPath, appPackageDir, manifest, warnings);
|
|
61
|
+
await copyCommands(outputPath, appPackageDir, warnings);
|
|
62
|
+
await copyIcons(outputPath, appPackageDir, warnings);
|
|
63
|
+
return (0, teamsfx_api_1.ok)({ outputPath, warnings });
|
|
64
|
+
}
|
|
65
|
+
catch (e) {
|
|
66
|
+
if (e instanceof teamsfx_api_1.UserError || e instanceof teamsfx_api_1.SystemError) {
|
|
67
|
+
return (0, teamsfx_api_1.err)(e);
|
|
68
|
+
}
|
|
69
|
+
const message = e instanceof Error ? e.message : String(e);
|
|
70
|
+
return (0, teamsfx_api_1.err)(new teamsfx_api_1.SystemError({
|
|
71
|
+
source: exports.OPEN_PLUGIN_EXPORT_SOURCE,
|
|
72
|
+
name: "ExportOpenPluginFailed",
|
|
73
|
+
message,
|
|
74
|
+
displayMessage: message,
|
|
75
|
+
}));
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
function derivePluginName(manifest) {
|
|
79
|
+
const short = manifest.name?.short?.trim();
|
|
80
|
+
const full = manifest.name?.full?.trim();
|
|
81
|
+
const fromName = (short ?? full ?? "").toLowerCase();
|
|
82
|
+
const slug = fromName.replace(/[^a-z0-9]+/g, "-").replace(/^-+|-+$/g, "");
|
|
83
|
+
if (slug)
|
|
84
|
+
return slug;
|
|
85
|
+
if (manifest.packageName) {
|
|
86
|
+
const last = manifest.packageName.split(".").pop();
|
|
87
|
+
if (last)
|
|
88
|
+
return last;
|
|
89
|
+
}
|
|
90
|
+
return "exported-plugin";
|
|
91
|
+
}
|
|
92
|
+
function buildPluginJson(manifest, pluginName) {
|
|
93
|
+
const author = {};
|
|
94
|
+
if (manifest.developer?.name)
|
|
95
|
+
author.name = manifest.developer.name;
|
|
96
|
+
if (manifest.developer?.websiteUrl)
|
|
97
|
+
author.url = manifest.developer.websiteUrl;
|
|
98
|
+
const pluginJson = {
|
|
99
|
+
name: pluginName,
|
|
100
|
+
version: manifest.version ?? "1.0.0",
|
|
101
|
+
description: manifest.description?.full ?? manifest.description?.short ?? pluginName,
|
|
102
|
+
};
|
|
103
|
+
if (Object.keys(author).length > 0) {
|
|
104
|
+
pluginJson.author = author;
|
|
105
|
+
}
|
|
106
|
+
if (manifest.developer?.websiteUrl) {
|
|
107
|
+
pluginJson.homepage = manifest.developer.websiteUrl;
|
|
108
|
+
}
|
|
109
|
+
const extension = {};
|
|
110
|
+
if (manifest.manifestVersion)
|
|
111
|
+
extension.manifestVersion = manifest.manifestVersion;
|
|
112
|
+
if (manifest.id)
|
|
113
|
+
extension.id = manifest.id;
|
|
114
|
+
if (manifest.packageName)
|
|
115
|
+
extension.packageName = manifest.packageName;
|
|
116
|
+
if (manifest.accentColor)
|
|
117
|
+
extension.accentColor = manifest.accentColor;
|
|
118
|
+
if (manifest.developer) {
|
|
119
|
+
const dev = {};
|
|
120
|
+
if (manifest.developer.name)
|
|
121
|
+
dev.name = manifest.developer.name;
|
|
122
|
+
if (manifest.developer.websiteUrl)
|
|
123
|
+
dev.websiteUrl = manifest.developer.websiteUrl;
|
|
124
|
+
if (manifest.developer.privacyUrl)
|
|
125
|
+
dev.privacyUrl = manifest.developer.privacyUrl;
|
|
126
|
+
if (manifest.developer.termsOfUseUrl)
|
|
127
|
+
dev.termsOfUseUrl = manifest.developer.termsOfUseUrl;
|
|
128
|
+
if (Object.keys(dev).length > 0)
|
|
129
|
+
extension.developer = dev;
|
|
130
|
+
}
|
|
131
|
+
if (manifest.name?.short || manifest.name?.full) {
|
|
132
|
+
extension.name = {};
|
|
133
|
+
if (manifest.name.short)
|
|
134
|
+
extension.name.short = manifest.name.short;
|
|
135
|
+
if (manifest.name.full)
|
|
136
|
+
extension.name.full = manifest.name.full;
|
|
137
|
+
}
|
|
138
|
+
if (manifest.description?.short || manifest.description?.full) {
|
|
139
|
+
extension.description = {};
|
|
140
|
+
if (manifest.description.short)
|
|
141
|
+
extension.description.short = manifest.description.short;
|
|
142
|
+
if (manifest.description.full)
|
|
143
|
+
extension.description.full = manifest.description.full;
|
|
144
|
+
}
|
|
145
|
+
const connectorOverrides = {};
|
|
146
|
+
for (const connector of manifest.agentConnectors ?? []) {
|
|
147
|
+
if (!connector.id)
|
|
148
|
+
continue;
|
|
149
|
+
const override = {};
|
|
150
|
+
if (connector.displayName)
|
|
151
|
+
override.displayName = connector.displayName;
|
|
152
|
+
if (connector.description)
|
|
153
|
+
override.description = connector.description;
|
|
154
|
+
const auth = connector.toolSource?.remoteMcpServer?.authorization;
|
|
155
|
+
if (auth?.type && isAuthorizationType(auth.type)) {
|
|
156
|
+
override.authorization = { type: auth.type };
|
|
157
|
+
if (auth.referenceId)
|
|
158
|
+
override.authorization.referenceId = auth.referenceId;
|
|
159
|
+
}
|
|
160
|
+
if (Object.keys(override).length > 0) {
|
|
161
|
+
connectorOverrides[connector.id] = override;
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
if (Object.keys(connectorOverrides).length > 0) {
|
|
165
|
+
extension.agentConnectors = connectorOverrides;
|
|
166
|
+
}
|
|
167
|
+
if (Object.keys(extension).length > 0) {
|
|
168
|
+
pluginJson[ATK_EXTENSION_KEY] = extension;
|
|
169
|
+
}
|
|
170
|
+
return pluginJson;
|
|
171
|
+
}
|
|
172
|
+
function isAuthorizationType(value) {
|
|
173
|
+
return value === "None" || value === "OAuthPluginVault" || value === "ApiKeyPluginVault";
|
|
174
|
+
}
|
|
175
|
+
async function writeMcpJson(outputPath, manifest, warnings) {
|
|
176
|
+
const servers = {};
|
|
177
|
+
for (const connector of manifest.agentConnectors ?? []) {
|
|
178
|
+
const remote = connector.toolSource?.remoteMcpServer;
|
|
179
|
+
const id = connector.id;
|
|
180
|
+
if (!id || !remote?.mcpServerUrl) {
|
|
181
|
+
warnings.push(`Skipping connector '${connector.id ?? "(unnamed)"}' during export: only remoteMcpServer connectors with a URL are supported.`);
|
|
182
|
+
continue;
|
|
183
|
+
}
|
|
184
|
+
servers[id] = { type: "http", url: remote.mcpServerUrl };
|
|
185
|
+
}
|
|
186
|
+
if (Object.keys(servers).length === 0) {
|
|
187
|
+
return;
|
|
188
|
+
}
|
|
189
|
+
await fs_extra_1.default.writeJSON(path.join(outputPath, ".mcp.json"), { mcpServers: servers }, { spaces: 2 });
|
|
190
|
+
}
|
|
191
|
+
async function copySkills(outputPath, appPackageDir, manifest, warnings) {
|
|
192
|
+
const skillsRefs = manifest.agentSkills ?? [];
|
|
193
|
+
if (skillsRefs.length === 0) {
|
|
194
|
+
return;
|
|
195
|
+
}
|
|
196
|
+
const destRoot = path.join(outputPath, "skills");
|
|
197
|
+
await fs_extra_1.default.ensureDir(destRoot);
|
|
198
|
+
for (const skill of skillsRefs) {
|
|
199
|
+
if (!skill.folder)
|
|
200
|
+
continue;
|
|
201
|
+
const rel = skill.folder.replace(/^\.\//, "");
|
|
202
|
+
const src = path.resolve(appPackageDir, rel);
|
|
203
|
+
const relativeToPackage = path.relative(appPackageDir, src);
|
|
204
|
+
if (relativeToPackage.startsWith("..") || path.isAbsolute(relativeToPackage)) {
|
|
205
|
+
warnings.push(`Skill folder '${skill.folder}' resolves outside appPackage; skipped.`);
|
|
206
|
+
continue;
|
|
207
|
+
}
|
|
208
|
+
if (!(await fs_extra_1.default.pathExists(src))) {
|
|
209
|
+
warnings.push(`Skill folder referenced by manifest not found on disk: ${skill.folder}`);
|
|
210
|
+
continue;
|
|
211
|
+
}
|
|
212
|
+
const name = path.basename(rel);
|
|
213
|
+
await fs_extra_1.default.copy(src, path.join(destRoot, name));
|
|
214
|
+
}
|
|
215
|
+
}
|
|
216
|
+
async function copyCommands(outputPath, appPackageDir, _warnings) {
|
|
217
|
+
const src = path.join(appPackageDir, "commands");
|
|
218
|
+
if (!(await fs_extra_1.default.pathExists(src)))
|
|
219
|
+
return;
|
|
220
|
+
await fs_extra_1.default.copy(src, path.join(outputPath, "commands"));
|
|
221
|
+
}
|
|
222
|
+
async function copyIcons(outputPath, appPackageDir, warnings) {
|
|
223
|
+
for (const icon of ["color.png", "outline.png"]) {
|
|
224
|
+
const src = path.join(appPackageDir, icon);
|
|
225
|
+
if (await fs_extra_1.default.pathExists(src)) {
|
|
226
|
+
await fs_extra_1.default.copy(src, path.join(outputPath, icon));
|
|
227
|
+
}
|
|
228
|
+
else {
|
|
229
|
+
warnings.push(`Icon file not found in appPackage: ${icon}`);
|
|
230
|
+
}
|
|
231
|
+
}
|
|
232
|
+
}
|
|
233
|
+
//# sourceMappingURL=exporter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"exporter.js","sourceRoot":"","sources":["../../../../src/component/generator/openPlugin/exporter.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { ParsedOpenPlugin } from "./types";
|
|
2
|
+
/**
|
|
3
|
+
* Write color.png and outline.png into the appPackage directory. Resolution
|
|
4
|
+
* order matches the conversion plan: user-supplied root PNG → Open Plugin
|
|
5
|
+
* `logo` (when it is a local .png) → generated placeholder.
|
|
6
|
+
*/
|
|
7
|
+
export declare function applyIcons(parsed: ParsedOpenPlugin, appPackageDir: string, warnings: string[]): Promise<void>;
|
|
8
|
+
//# sourceMappingURL=iconStrategy.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"iconStrategy.d.ts","sourceRoot":"","sources":["../../../../src/component/generator/openPlugin/iconStrategy.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAK3C;;;;GAIG;AACH,wBAAsB,UAAU,CAC9B,MAAM,EAAE,gBAAgB,EACxB,aAAa,EAAE,MAAM,EACrB,QAAQ,EAAE,MAAM,EAAE,GACjB,OAAO,CAAC,IAAI,CAAC,CAoBf"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// Copyright (c) Microsoft Corporation.
|
|
3
|
+
// Licensed under the MIT license.
|
|
4
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
|
+
exports.applyIcons = applyIcons;
|
|
6
|
+
const tslib_1 = require("tslib");
|
|
7
|
+
const fs_extra_1 = tslib_1.__importDefault(require("fs-extra"));
|
|
8
|
+
const path = tslib_1.__importStar(require("path"));
|
|
9
|
+
const placeholderPng_1 = require("./placeholderPng");
|
|
10
|
+
const COLOR_FILL = [0x4a, 0x90, 0xd9];
|
|
11
|
+
const OUTLINE_FILL = [0xff, 0xff, 0xff];
|
|
12
|
+
/**
|
|
13
|
+
* Write color.png and outline.png into the appPackage directory. Resolution
|
|
14
|
+
* order matches the conversion plan: user-supplied root PNG → Open Plugin
|
|
15
|
+
* `logo` (when it is a local .png) → generated placeholder.
|
|
16
|
+
*/
|
|
17
|
+
async function applyIcons(parsed, appPackageDir, warnings) {
|
|
18
|
+
const colorDest = path.join(appPackageDir, "color.png");
|
|
19
|
+
const outlineDest = path.join(appPackageDir, "outline.png");
|
|
20
|
+
if (parsed.hasColorPng) {
|
|
21
|
+
await fs_extra_1.default.copy(path.join(parsed.pluginRoot, "color.png"), colorDest);
|
|
22
|
+
}
|
|
23
|
+
else if (typeof parsed.manifest.logo === "string" && parsed.manifest.logo) {
|
|
24
|
+
const applied = await tryApplyLogo(parsed, colorDest, warnings);
|
|
25
|
+
if (!applied) {
|
|
26
|
+
await fs_extra_1.default.writeFile(colorDest, (0, placeholderPng_1.generatePlaceholderPng)(192, ...COLOR_FILL));
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
else {
|
|
30
|
+
await fs_extra_1.default.writeFile(colorDest, (0, placeholderPng_1.generatePlaceholderPng)(192, ...COLOR_FILL));
|
|
31
|
+
}
|
|
32
|
+
if (parsed.hasOutlinePng) {
|
|
33
|
+
await fs_extra_1.default.copy(path.join(parsed.pluginRoot, "outline.png"), outlineDest);
|
|
34
|
+
}
|
|
35
|
+
else {
|
|
36
|
+
await fs_extra_1.default.writeFile(outlineDest, (0, placeholderPng_1.generatePlaceholderPng)(32, ...OUTLINE_FILL));
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
async function tryApplyLogo(parsed, colorDest, warnings) {
|
|
40
|
+
const logo = parsed.manifest.logo;
|
|
41
|
+
if (/^https?:\/\//i.test(logo)) {
|
|
42
|
+
warnings.push(`'logo' field points to a remote URL (${logo}); using placeholder color.png. Download manually if you want to ship the original.`);
|
|
43
|
+
return false;
|
|
44
|
+
}
|
|
45
|
+
if (!/\.png$/i.test(logo)) {
|
|
46
|
+
warnings.push(`'logo' field '${logo}' is not a .png file; using placeholder color.png.`);
|
|
47
|
+
return false;
|
|
48
|
+
}
|
|
49
|
+
const logoAbs = path.resolve(parsed.pluginRoot, logo);
|
|
50
|
+
const relativeToRoot = path.relative(parsed.pluginRoot, logoAbs);
|
|
51
|
+
if (relativeToRoot.startsWith("..") || path.isAbsolute(relativeToRoot)) {
|
|
52
|
+
warnings.push(`'logo' field '${logo}' resolves outside the plugin root; using placeholder color.png.`);
|
|
53
|
+
return false;
|
|
54
|
+
}
|
|
55
|
+
if (!(await fs_extra_1.default.pathExists(logoAbs))) {
|
|
56
|
+
warnings.push(`'logo' field '${logo}' does not exist; using placeholder color.png.`);
|
|
57
|
+
return false;
|
|
58
|
+
}
|
|
59
|
+
await fs_extra_1.default.copy(logoAbs, colorDest);
|
|
60
|
+
return true;
|
|
61
|
+
}
|
|
62
|
+
//# sourceMappingURL=iconStrategy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"iconStrategy.js","sourceRoot":"","sources":["../../../../src/component/generator/openPlugin/iconStrategy.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { FxError, Result } from "@microsoft/teamsfx-api";
|
|
2
|
+
import { ImportInputs } from "./types";
|
|
3
|
+
export declare const OPEN_PLUGIN_IMPORT_SOURCE = "OpenPluginImport";
|
|
4
|
+
export interface ImportResult {
|
|
5
|
+
projectPath: string;
|
|
6
|
+
warnings: string[];
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Import an Open Plugin / Claude Code plugin / Cursor plugin directory into
|
|
10
|
+
* a scaffolded Microsoft 365 Agents Toolkit project. The output is a usable
|
|
11
|
+
* ATK project; run `atk teamsapp package` from inside it to produce the
|
|
12
|
+
* upload zip.
|
|
13
|
+
*
|
|
14
|
+
* Static baseline files (m365agents.yml, README, .gitignore, .vscode, env)
|
|
15
|
+
* come from the `open-plugin-import` template, which ships in the standard
|
|
16
|
+
* template release pipeline and can be updated independently of fx-core.
|
|
17
|
+
* Variable-length outputs (manifest, skill folders, icons) are written as
|
|
18
|
+
* the post-scaffold step here.
|
|
19
|
+
*/
|
|
20
|
+
export declare function importOpenPlugin(inputs: ImportInputs): Promise<Result<ImportResult, FxError>>;
|
|
21
|
+
export declare function stripDisallowedFrontmatter(source: string): {
|
|
22
|
+
content: string;
|
|
23
|
+
removedKeys: string[];
|
|
24
|
+
};
|
|
25
|
+
//# sourceMappingURL=importer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"importer.d.ts","sourceRoot":"","sources":["../../../../src/component/generator/openPlugin/importer.ts"],"names":[],"mappings":"AAGA,OAAO,EAAO,OAAO,EAAM,MAAM,EAA0B,MAAM,wBAAwB,CAAC;AAU1F,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC,eAAO,MAAM,yBAAyB,qBAAqB,CAAC;AAE5D,MAAM,WAAW,YAAY;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,YAAY,GACnB,OAAO,CAAC,MAAM,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,CAuExC;AAqCD,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,MAAM,GAAG;IAC1D,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB,CAsBA"}
|
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// Copyright (c) Microsoft Corporation.
|
|
3
|
+
// Licensed under the MIT license.
|
|
4
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
|
+
exports.OPEN_PLUGIN_IMPORT_SOURCE = void 0;
|
|
6
|
+
exports.importOpenPlugin = importOpenPlugin;
|
|
7
|
+
exports.stripDisallowedFrontmatter = stripDisallowedFrontmatter;
|
|
8
|
+
const tslib_1 = require("tslib");
|
|
9
|
+
const teamsfx_api_1 = require("@microsoft/teamsfx-api");
|
|
10
|
+
const fs_extra_1 = tslib_1.__importDefault(require("fs-extra"));
|
|
11
|
+
const js_yaml_1 = tslib_1.__importDefault(require("js-yaml"));
|
|
12
|
+
const path = tslib_1.__importStar(require("path"));
|
|
13
|
+
const globalVars_1 = require("../../../common/globalVars");
|
|
14
|
+
const generator_1 = require("../generator");
|
|
15
|
+
const templateNames_1 = require("../templates/templateNames");
|
|
16
|
+
const iconStrategy_1 = require("./iconStrategy");
|
|
17
|
+
const mapper_1 = require("./mapper");
|
|
18
|
+
const parser_1 = require("./parser");
|
|
19
|
+
exports.OPEN_PLUGIN_IMPORT_SOURCE = "OpenPluginImport";
|
|
20
|
+
/**
|
|
21
|
+
* Import an Open Plugin / Claude Code plugin / Cursor plugin directory into
|
|
22
|
+
* a scaffolded Microsoft 365 Agents Toolkit project. The output is a usable
|
|
23
|
+
* ATK project; run `atk teamsapp package` from inside it to produce the
|
|
24
|
+
* upload zip.
|
|
25
|
+
*
|
|
26
|
+
* Static baseline files (m365agents.yml, README, .gitignore, .vscode, env)
|
|
27
|
+
* come from the `open-plugin-import` template, which ships in the standard
|
|
28
|
+
* template release pipeline and can be updated independently of fx-core.
|
|
29
|
+
* Variable-length outputs (manifest, skill folders, icons) are written as
|
|
30
|
+
* the post-scaffold step here.
|
|
31
|
+
*/
|
|
32
|
+
async function importOpenPlugin(inputs) {
|
|
33
|
+
try {
|
|
34
|
+
if (!inputs.path) {
|
|
35
|
+
return (0, teamsfx_api_1.err)(new teamsfx_api_1.UserError(exports.OPEN_PLUGIN_IMPORT_SOURCE, "MissingPluginPath", "--path is required."));
|
|
36
|
+
}
|
|
37
|
+
const parsed = await (0, parser_1.readOpenPluginDir)(inputs.path);
|
|
38
|
+
const { manifest, copyOps, warnings } = (0, mapper_1.mapToTtkProject)(parsed, inputs);
|
|
39
|
+
const defaultOutput = path.join(process.cwd(), parsed.manifest.name);
|
|
40
|
+
const projectPath = path.resolve(inputs.output ?? defaultOutput);
|
|
41
|
+
if (await fs_extra_1.default.pathExists(projectPath)) {
|
|
42
|
+
const entries = await fs_extra_1.default.readdir(projectPath);
|
|
43
|
+
if (entries.length > 0) {
|
|
44
|
+
return (0, teamsfx_api_1.err)(new teamsfx_api_1.UserError(exports.OPEN_PLUGIN_IMPORT_SOURCE, "OutputDirectoryNotEmpty", `Output directory is not empty: ${projectPath}. Choose a different --output path or empty the directory.`));
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
// 1. Scaffold the static baseline from the open-plugin-import template.
|
|
48
|
+
const ctx = (0, globalVars_1.createContext)();
|
|
49
|
+
ctx.templateVariables = { appName: parsed.manifest.name };
|
|
50
|
+
const scaffoldRes = await generator_1.Generator.generateTemplate(ctx, projectPath, templateNames_1.TemplateNames.OpenPluginImport, "common");
|
|
51
|
+
if (scaffoldRes.isErr())
|
|
52
|
+
return (0, teamsfx_api_1.err)(scaffoldRes.error);
|
|
53
|
+
// 2. Post-scaffold: write the dynamic outputs.
|
|
54
|
+
const appPackageDir = path.join(projectPath, "appPackage");
|
|
55
|
+
await fs_extra_1.default.ensureDir(appPackageDir);
|
|
56
|
+
// Manifest (vDevPreview agentSkills/agentConnectors are variable-length).
|
|
57
|
+
await fs_extra_1.default.writeJSON(path.join(appPackageDir, "manifest.json"), manifest, { spaces: 4 });
|
|
58
|
+
// Copy skill folders and (when present) the commands folder.
|
|
59
|
+
for (const op of copyOps) {
|
|
60
|
+
await fs_extra_1.default.copy(op.src, path.join(projectPath, op.destRelative));
|
|
61
|
+
}
|
|
62
|
+
// Strip SKILL.md frontmatter fields that Teams Developer Portal rejects.
|
|
63
|
+
// Allowed: name, description, license, metadata, compatibility.
|
|
64
|
+
await sanitizeSkillFiles(path.join(appPackageDir, "skills"), warnings);
|
|
65
|
+
// Icons.
|
|
66
|
+
await (0, iconStrategy_1.applyIcons)(parsed, appPackageDir, warnings);
|
|
67
|
+
return (0, teamsfx_api_1.ok)({ projectPath, warnings });
|
|
68
|
+
}
|
|
69
|
+
catch (e) {
|
|
70
|
+
if (e instanceof teamsfx_api_1.UserError || e instanceof teamsfx_api_1.SystemError) {
|
|
71
|
+
return (0, teamsfx_api_1.err)(e);
|
|
72
|
+
}
|
|
73
|
+
const message = e instanceof Error ? e.message : String(e);
|
|
74
|
+
return (0, teamsfx_api_1.err)(new teamsfx_api_1.SystemError({
|
|
75
|
+
source: exports.OPEN_PLUGIN_IMPORT_SOURCE,
|
|
76
|
+
name: "ImportOpenPluginFailed",
|
|
77
|
+
message,
|
|
78
|
+
displayMessage: message,
|
|
79
|
+
}));
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
// Teams Developer Portal accepts only these SKILL.md frontmatter keys.
|
|
83
|
+
const ALLOWED_SKILL_FRONTMATTER_KEYS = new Set([
|
|
84
|
+
"name",
|
|
85
|
+
"description",
|
|
86
|
+
"license",
|
|
87
|
+
"metadata",
|
|
88
|
+
"compatibility",
|
|
89
|
+
]);
|
|
90
|
+
/**
|
|
91
|
+
* Walk every `skills/<name>/SKILL.md` and remove top-level frontmatter keys
|
|
92
|
+
* that aren't on the M365 allow-list (e.g. Claude-specific `user-invocable`,
|
|
93
|
+
* `argument-hint`). Records each removal as a warning. Files without a
|
|
94
|
+
* frontmatter block are left untouched.
|
|
95
|
+
*/
|
|
96
|
+
async function sanitizeSkillFiles(skillsRoot, warnings) {
|
|
97
|
+
if (!(await fs_extra_1.default.pathExists(skillsRoot)))
|
|
98
|
+
return;
|
|
99
|
+
const entries = await fs_extra_1.default.readdir(skillsRoot, { withFileTypes: true });
|
|
100
|
+
for (const entry of entries) {
|
|
101
|
+
if (!entry.isDirectory())
|
|
102
|
+
continue;
|
|
103
|
+
const skillMd = path.join(skillsRoot, entry.name, "SKILL.md");
|
|
104
|
+
if (!(await fs_extra_1.default.pathExists(skillMd)))
|
|
105
|
+
continue;
|
|
106
|
+
const original = await fs_extra_1.default.readFile(skillMd, "utf8");
|
|
107
|
+
const { content, removedKeys } = stripDisallowedFrontmatter(original);
|
|
108
|
+
if (removedKeys.length > 0) {
|
|
109
|
+
await fs_extra_1.default.writeFile(skillMd, content, "utf8");
|
|
110
|
+
warnings.push(`Removed unsupported SKILL.md frontmatter field(s) from skills/${entry.name}: ${removedKeys.join(", ")}.`);
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
function stripDisallowedFrontmatter(source) {
|
|
115
|
+
const match = /^---\r?\n([\s\S]*?)\r?\n---(\r?\n|$)/.exec(source);
|
|
116
|
+
if (!match)
|
|
117
|
+
return { content: source, removedKeys: [] };
|
|
118
|
+
const parsed = js_yaml_1.default.load(match[1]);
|
|
119
|
+
if (!parsed || typeof parsed !== "object" || Array.isArray(parsed)) {
|
|
120
|
+
return { content: source, removedKeys: [] };
|
|
121
|
+
}
|
|
122
|
+
const obj = parsed;
|
|
123
|
+
const removedKeys = [];
|
|
124
|
+
const kept = {};
|
|
125
|
+
for (const key of Object.keys(obj)) {
|
|
126
|
+
if (ALLOWED_SKILL_FRONTMATTER_KEYS.has(key)) {
|
|
127
|
+
kept[key] = obj[key];
|
|
128
|
+
}
|
|
129
|
+
else {
|
|
130
|
+
removedKeys.push(key);
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
if (removedKeys.length === 0)
|
|
134
|
+
return { content: source, removedKeys: [] };
|
|
135
|
+
const dumped = js_yaml_1.default.dump(kept, { lineWidth: -1 }).replace(/\n$/, "");
|
|
136
|
+
const trailing = match[2] || "\n";
|
|
137
|
+
const rebuilt = `---\n${dumped}\n---${trailing}` + source.slice(match[0].length);
|
|
138
|
+
return { content: rebuilt, removedKeys };
|
|
139
|
+
}
|
|
140
|
+
//# sourceMappingURL=importer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"importer.js","sourceRoot":"","sources":["../../../../src/component/generator/openPlugin/importer.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { ImportInputs, MappedManifest, ParsedOpenPlugin } from "./types";
|
|
2
|
+
export declare const MANIFEST_SCHEMA_URL = "https://developer.microsoft.com/json-schemas/teams/vDevPreview/MicrosoftTeams.schema.json";
|
|
3
|
+
export declare const MANIFEST_VERSION = "devPreview";
|
|
4
|
+
export declare const ACCENT_COLOR = "#4A90D9";
|
|
5
|
+
export declare function mapToTtkProject(parsed: ParsedOpenPlugin, inputs: ImportInputs): MappedManifest;
|
|
6
|
+
//# sourceMappingURL=mapper.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mapper.d.ts","sourceRoot":"","sources":["../../../../src/component/generator/openPlugin/mapper.ts"],"names":[],"mappings":"AAOA,OAAO,EAKL,YAAY,EACZ,cAAc,EAEd,gBAAgB,EACjB,MAAM,SAAS,CAAC;AAEjB,eAAO,MAAM,mBAAmB,8FAC6D,CAAC;AAC9F,eAAO,MAAM,gBAAgB,eAAe,CAAC;AAC7C,eAAO,MAAM,YAAY,YAAY,CAAC;AAQtC,wBAAgB,eAAe,CAAC,MAAM,EAAE,gBAAgB,EAAE,MAAM,EAAE,YAAY,GAAG,cAAc,CAsG9F"}
|