@microsoft/managed-apps-cli 0.20.0 → 0.22.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/README.md +1 -1
- package/THIRD-PARTY-NOTICES.txt +9549 -0
- package/dist/AddConnector-5DUBFLEK.js +41 -0
- package/dist/AuthStatus-6DMK7O6W.js +11 -0
- package/dist/AuthSwitch-NUQIIRCG.js +13 -0
- package/dist/Bin.js +8 -3
- package/dist/BuildMaafApp-A4IUU6LI.js +11 -0
- package/dist/Cli-LYSWG64H.js +54 -0
- package/dist/CloneMaafApp-B672N7T5.js +11 -0
- package/dist/CreateMaafApp-RWL7FXSP.js +20 -0
- package/dist/DeleteMaafApp-GT4CEFAE.js +11 -0
- package/dist/DeployMaafApp-E4TQU6RO.js +14 -0
- package/dist/Dev-ICCA5DEJ.js +14 -0
- package/dist/EnvironmentVariableAuthenticationProvider-LYCQ5D47.js +11 -0
- package/dist/GetMaafBuildStatus-UGAHVANE.js +11 -0
- package/dist/GetSettings-ZI2IBKV5.js +11 -0
- package/dist/InfoMaafApp-FL5PICDD.js +13 -0
- package/dist/Init-XCSK3WQM.js +11 -0
- package/dist/ListConnectorActions-B2YD24RX.js +11 -0
- package/dist/ListConnectors-MYUEVJPT.js +11 -0
- package/dist/ListMaafApps-3W6W6UYP.js +11 -0
- package/dist/Login-7RW6OEST.js +11 -0
- package/dist/Logout-IXK2TMRL.js +11 -0
- package/dist/MockFetch-THQJ4KFB.js +13 -0
- package/dist/NoOpAuthenticationProvider-DX3XNXF5.js +11 -0
- package/dist/NodeMsalAuthenticationProvider-VVQ6CCZ5.js +17 -0
- package/dist/Pack-IWU3PFQL.js +8 -0
- package/dist/PlayMaafApp-5H3DCJ2C.js +12 -0
- package/dist/RefreshDataSource-XQT7LVMO.js +11 -0
- package/dist/RefreshGitAuth-IQBAFR37.js +11 -0
- package/dist/RemoveDataSource-PGPLMJUX.js +14 -0
- package/dist/ServicePrincipalAuthenticationProvider-IZZRJFZQ.js +11 -0
- package/dist/SetSetting-SEWDA4TF.js +11 -0
- package/dist/ShareLinkCreate-T5FN47J2.js +11 -0
- package/dist/ShareLinkList-6JCVEYNC.js +11 -0
- package/dist/ShareLinkRevoke-OH5DZDHR.js +11 -0
- package/dist/ShareList-QCEL7QNJ.js +11 -0
- package/dist/ShareMaafApp-6MKZ33HW.js +11 -0
- package/dist/TelemetrySettings-RXPPIEVO.js +11 -0
- package/dist/UnshareMaafApp-OSE2TOBJ.js +11 -0
- package/dist/acorn-CYBWGE5M.js +23 -0
- package/dist/angular-Q62TJP23.js +11 -0
- package/dist/babel-AOXBHIIS.js +22 -0
- package/dist/chunk-23T63QIT.js +15 -0
- package/dist/chunk-3JIZGVCA.js +11 -0
- package/dist/chunk-3YRE4IQ3.js +132 -0
- package/dist/chunk-47LJLFDF.js +11 -0
- package/dist/chunk-4LIR3ZYP.js +42325 -0
- package/dist/chunk-4VBFOKV6.js +11 -0
- package/dist/chunk-6LKH5WE7.js +104 -0
- package/dist/chunk-6RSE3J4X.js +8 -0
- package/dist/chunk-7BRIEYGR.js +20 -0
- package/dist/chunk-7GGFN2IW.js +11 -0
- package/dist/chunk-AQLFVAFU.js +38 -0
- package/dist/chunk-EQCYKUEU.js +12 -0
- package/dist/chunk-EX6IKPAO.js +11 -0
- package/dist/chunk-HBLO3WDD.js +13 -0
- package/dist/chunk-IQGMFWXB.js +12 -0
- package/dist/chunk-KYL2Y5G4.js +11 -0
- package/dist/chunk-LQ65CHNN.js +13 -0
- package/dist/chunk-OL6CTXQR.js +11 -0
- package/dist/chunk-PPW4XUZO.js +77 -0
- package/dist/chunk-PVAIJSAI.js +11 -0
- package/dist/chunk-RBG2H562.js +11 -0
- package/dist/chunk-SNWTSI75.js +50 -0
- package/dist/chunk-TYRVM4PP.js +8 -0
- package/dist/chunk-UNJJUCSA.js +11 -0
- package/dist/chunk-USRRI5H4.js +11 -0
- package/dist/chunk-UT667QSU.js +8 -0
- package/dist/chunk-VMSJG53Y.js +11 -0
- package/dist/chunk-Y5AMO72S.js +10 -0
- package/dist/chunk-YMXXWGRV.js +11 -0
- package/dist/estree-HPTPQIMZ.js +51 -0
- package/dist/flow-B6JUMONE.js +27 -0
- package/dist/glimmer-36KZ3DJ5.js +44 -0
- package/dist/graphql-E6CIFZFV.js +35 -0
- package/dist/html-BUTTPQE6.js +32 -0
- package/dist/markdown-K2C5OZHT.js +69 -0
- package/dist/meriyah-27UE2OSX.js +12 -0
- package/dist/postcss-QUHZLBB7.js +68 -0
- package/dist/typescript-G2G6TDZF.js +28 -0
- package/dist/yaml-W5P5CGFK.js +166 -0
- package/package.json +21 -16
- package/dist/ArgumentProvider.d.ts +0 -144
- package/dist/ArgumentProvider.d.ts.map +0 -1
- package/dist/ArgumentProvider.js +0 -493
- package/dist/ArgumentProvider.js.map +0 -1
- package/dist/Authentication/ActiveAccountStore.d.ts +0 -24
- package/dist/Authentication/ActiveAccountStore.d.ts.map +0 -1
- package/dist/Authentication/ActiveAccountStore.js +0 -54
- package/dist/Authentication/ActiveAccountStore.js.map +0 -1
- package/dist/Authentication/EnvironmentVariableAuthenticationProvider.d.ts +0 -26
- package/dist/Authentication/EnvironmentVariableAuthenticationProvider.d.ts.map +0 -1
- package/dist/Authentication/EnvironmentVariableAuthenticationProvider.js +0 -31
- package/dist/Authentication/EnvironmentVariableAuthenticationProvider.js.map +0 -1
- package/dist/Authentication/NoOpAuthenticationProvider.d.ts +0 -25
- package/dist/Authentication/NoOpAuthenticationProvider.d.ts.map +0 -1
- package/dist/Authentication/NoOpAuthenticationProvider.js +0 -31
- package/dist/Authentication/NoOpAuthenticationProvider.js.map +0 -1
- package/dist/Authentication/NodeMsalAuthenticationProvider.d.ts +0 -103
- package/dist/Authentication/NodeMsalAuthenticationProvider.d.ts.map +0 -1
- package/dist/Authentication/NodeMsalAuthenticationProvider.js +0 -391
- package/dist/Authentication/NodeMsalAuthenticationProvider.js.map +0 -1
- package/dist/Authentication/ServicePrincipalAuthenticationProvider.d.ts +0 -23
- package/dist/Authentication/ServicePrincipalAuthenticationProvider.d.ts.map +0 -1
- package/dist/Authentication/ServicePrincipalAuthenticationProvider.js +0 -60
- package/dist/Authentication/ServicePrincipalAuthenticationProvider.js.map +0 -1
- package/dist/Bin.d.ts +0 -6
- package/dist/Bin.d.ts.map +0 -1
- package/dist/Bin.js.map +0 -1
- package/dist/Cli.d.ts +0 -2
- package/dist/Cli.d.ts.map +0 -1
- package/dist/Cli.js +0 -207
- package/dist/Cli.js.map +0 -1
- package/dist/CliSettings.d.ts +0 -17
- package/dist/CliSettings.d.ts.map +0 -1
- package/dist/CliSettings.js +0 -103
- package/dist/CliSettings.js.map +0 -1
- package/dist/CliUtils.d.ts +0 -108
- package/dist/CliUtils.d.ts.map +0 -1
- package/dist/CliUtils.js +0 -217
- package/dist/CliUtils.js.map +0 -1
- package/dist/Constants/CliConstants.d.ts +0 -6
- package/dist/Constants/CliConstants.d.ts.map +0 -1
- package/dist/Constants/CliConstants.js +0 -6
- package/dist/Constants/CliConstants.js.map +0 -1
- package/dist/Constants/CommandRegistry.d.ts +0 -22
- package/dist/Constants/CommandRegistry.d.ts.map +0 -1
- package/dist/Constants/CommandRegistry.js +0 -245
- package/dist/Constants/CommandRegistry.js.map +0 -1
- package/dist/Constants/HelpStrings.d.ts +0 -432
- package/dist/Constants/HelpStrings.d.ts.map +0 -1
- package/dist/Constants/HelpStrings.js +0 -623
- package/dist/Constants/HelpStrings.js.map +0 -1
- package/dist/Constants.d.ts +0 -18
- package/dist/Constants.d.ts.map +0 -1
- package/dist/Constants.js +0 -41
- package/dist/Constants.js.map +0 -1
- package/dist/Errors/CliError.d.ts +0 -5
- package/dist/Errors/CliError.d.ts.map +0 -1
- package/dist/Errors/CliError.js +0 -7
- package/dist/Errors/CliError.js.map +0 -1
- package/dist/Errors/GitHubErrorMap.d.ts +0 -68
- package/dist/Errors/GitHubErrorMap.d.ts.map +0 -1
- package/dist/Errors/GitHubErrorMap.js +0 -238
- package/dist/Errors/GitHubErrorMap.js.map +0 -1
- package/dist/FS/CliFs.d.ts +0 -41
- package/dist/FS/CliFs.d.ts.map +0 -1
- package/dist/FS/CliFs.js +0 -136
- package/dist/FS/CliFs.js.map +0 -1
- package/dist/HttpClient/CliHttpClient.d.ts +0 -43
- package/dist/HttpClient/CliHttpClient.d.ts.map +0 -1
- package/dist/HttpClient/CliHttpClient.js +0 -320
- package/dist/HttpClient/CliHttpClient.js.map +0 -1
- package/dist/HttpClient/HttpForward.d.ts +0 -9
- package/dist/HttpClient/HttpForward.d.ts.map +0 -1
- package/dist/HttpClient/HttpForward.js +0 -56
- package/dist/HttpClient/HttpForward.js.map +0 -1
- package/dist/Logger/BufferedTelemetryWriter.d.ts +0 -20
- package/dist/Logger/BufferedTelemetryWriter.d.ts.map +0 -1
- package/dist/Logger/BufferedTelemetryWriter.js +0 -163
- package/dist/Logger/BufferedTelemetryWriter.js.map +0 -1
- package/dist/Logger/CliLogger.d.ts +0 -59
- package/dist/Logger/CliLogger.d.ts.map +0 -1
- package/dist/Logger/CliLogger.js +0 -364
- package/dist/Logger/CliLogger.js.map +0 -1
- package/dist/Logger/ConsoleWriter.d.ts +0 -23
- package/dist/Logger/ConsoleWriter.d.ts.map +0 -1
- package/dist/Logger/ConsoleWriter.js +0 -66
- package/dist/Logger/ConsoleWriter.js.map +0 -1
- package/dist/Logger/Constants.d.ts +0 -6
- package/dist/Logger/Constants.d.ts.map +0 -1
- package/dist/Logger/Constants.js +0 -15
- package/dist/Logger/Constants.js.map +0 -1
- package/dist/Logger/LoggerSettings.d.ts +0 -18
- package/dist/Logger/LoggerSettings.d.ts.map +0 -1
- package/dist/Logger/LoggerSettings.js +0 -78
- package/dist/Logger/LoggerSettings.js.map +0 -1
- package/dist/Logger/OneDSWriter.d.ts +0 -26
- package/dist/Logger/OneDSWriter.d.ts.map +0 -1
- package/dist/Logger/OneDSWriter.js +0 -211
- package/dist/Logger/OneDSWriter.js.map +0 -1
- package/dist/Logger/Scrubber/ScrubCustomDimensions.d.ts +0 -5
- package/dist/Logger/Scrubber/ScrubCustomDimensions.d.ts.map +0 -1
- package/dist/Logger/Scrubber/ScrubCustomDimensions.js +0 -46
- package/dist/Logger/Scrubber/ScrubCustomDimensions.js.map +0 -1
- package/dist/Logger/Scrubber/ScrubCustomDimensionsConfig.d.ts +0 -27
- package/dist/Logger/Scrubber/ScrubCustomDimensionsConfig.d.ts.map +0 -1
- package/dist/Logger/Scrubber/ScrubCustomDimensionsConfig.js +0 -168
- package/dist/Logger/Scrubber/ScrubCustomDimensionsConfig.js.map +0 -1
- package/dist/Logger/Scrubber/ScrubUtils.d.ts +0 -8
- package/dist/Logger/Scrubber/ScrubUtils.d.ts.map +0 -1
- package/dist/Logger/Scrubber/ScrubUtils.js +0 -34
- package/dist/Logger/Scrubber/ScrubUtils.js.map +0 -1
- package/dist/Middletier/FunctionsBundler.d.ts +0 -17
- package/dist/Middletier/FunctionsBundler.d.ts.map +0 -1
- package/dist/Middletier/FunctionsBundler.js +0 -169
- package/dist/Middletier/FunctionsBundler.js.map +0 -1
- package/dist/Middletier/PackFunctions.d.ts +0 -53
- package/dist/Middletier/PackFunctions.d.ts.map +0 -1
- package/dist/Middletier/PackFunctions.js +0 -123
- package/dist/Middletier/PackFunctions.js.map +0 -1
- package/dist/Testing/MockFetch.d.ts +0 -23
- package/dist/Testing/MockFetch.d.ts.map +0 -1
- package/dist/Testing/MockFetch.js +0 -177
- package/dist/Testing/MockFetch.js.map +0 -1
- package/dist/Testing/MockRoutes.d.ts +0 -34
- package/dist/Testing/MockRoutes.d.ts.map +0 -1
- package/dist/Testing/MockRoutes.js +0 -226
- package/dist/Testing/MockRoutes.js.map +0 -1
- package/dist/Testing/fixtures/connectors/commondataserviceforapps.d.ts +0 -6
- package/dist/Testing/fixtures/connectors/commondataserviceforapps.d.ts.map +0 -1
- package/dist/Testing/fixtures/connectors/commondataserviceforapps.js +0 -25
- package/dist/Testing/fixtures/connectors/commondataserviceforapps.js.map +0 -1
- package/dist/Testing/fixtures/connectors/dataverseContactEntity.d.ts +0 -6
- package/dist/Testing/fixtures/connectors/dataverseContactEntity.d.ts.map +0 -1
- package/dist/Testing/fixtures/connectors/dataverseContactEntity.js +0 -55
- package/dist/Testing/fixtures/connectors/dataverseContactEntity.js.map +0 -1
- package/dist/Testing/fixtures/connectors/excelonlinebusiness.d.ts +0 -6
- package/dist/Testing/fixtures/connectors/excelonlinebusiness.d.ts.map +0 -1
- package/dist/Testing/fixtures/connectors/excelonlinebusiness.js +0 -1970
- package/dist/Testing/fixtures/connectors/excelonlinebusiness.js.map +0 -1
- package/dist/Testing/fixtures/connectors/kusto.d.ts +0 -6
- package/dist/Testing/fixtures/connectors/kusto.d.ts.map +0 -1
- package/dist/Testing/fixtures/connectors/kusto.js +0 -1333
- package/dist/Testing/fixtures/connectors/kusto.js.map +0 -1
- package/dist/Testing/fixtures/connectors/msnweather.d.ts +0 -6
- package/dist/Testing/fixtures/connectors/msnweather.d.ts.map +0 -1
- package/dist/Testing/fixtures/connectors/msnweather.js +0 -917
- package/dist/Testing/fixtures/connectors/msnweather.js.map +0 -1
- package/dist/Testing/fixtures/connectors/office365groups.d.ts +0 -6
- package/dist/Testing/fixtures/connectors/office365groups.d.ts.map +0 -1
- package/dist/Testing/fixtures/connectors/office365groups.js +0 -2144
- package/dist/Testing/fixtures/connectors/office365groups.js.map +0 -1
- package/dist/Testing/fixtures/connectors/office365users.d.ts +0 -6
- package/dist/Testing/fixtures/connectors/office365users.d.ts.map +0 -1
- package/dist/Testing/fixtures/connectors/office365users.js +0 -1969
- package/dist/Testing/fixtures/connectors/office365users.js.map +0 -1
- package/dist/Testing/fixtures/connectors/onedriveforbusiness.d.ts +0 -6
- package/dist/Testing/fixtures/connectors/onedriveforbusiness.d.ts.map +0 -1
- package/dist/Testing/fixtures/connectors/onedriveforbusiness.js +0 -4873
- package/dist/Testing/fixtures/connectors/onedriveforbusiness.js.map +0 -1
- package/dist/Testing/fixtures/connectors/powerappsforappmakers.d.ts +0 -6
- package/dist/Testing/fixtures/connectors/powerappsforappmakers.d.ts.map +0 -1
- package/dist/Testing/fixtures/connectors/powerappsforappmakers.js +0 -4682
- package/dist/Testing/fixtures/connectors/powerappsforappmakers.js.map +0 -1
- package/dist/Testing/fixtures/connectors/sharepointTestListMetadata.d.ts +0 -6
- package/dist/Testing/fixtures/connectors/sharepointTestListMetadata.d.ts.map +0 -1
- package/dist/Testing/fixtures/connectors/sharepointTestListMetadata.js +0 -1078
- package/dist/Testing/fixtures/connectors/sharepointTestListMetadata.js.map +0 -1
- package/dist/Testing/fixtures/connectors/sharepointonline.d.ts +0 -6
- package/dist/Testing/fixtures/connectors/sharepointonline.d.ts.map +0 -1
- package/dist/Testing/fixtures/connectors/sharepointonline.js +0 -28
- package/dist/Testing/fixtures/connectors/sharepointonline.js.map +0 -1
- package/dist/Testing/fixtures/connectors/teams.d.ts +0 -6
- package/dist/Testing/fixtures/connectors/teams.d.ts.map +0 -1
- package/dist/Testing/fixtures/connectors/teams.js +0 -9987
- package/dist/Testing/fixtures/connectors/teams.js.map +0 -1
- package/dist/Testing/fixtures/connectors/translatorv2.d.ts +0 -6
- package/dist/Testing/fixtures/connectors/translatorv2.d.ts.map +0 -1
- package/dist/Testing/fixtures/connectors/translatorv2.js +0 -307
- package/dist/Testing/fixtures/connectors/translatorv2.js.map +0 -1
- package/dist/Testing/fixtures/index.d.ts +0 -23
- package/dist/Testing/fixtures/index.d.ts.map +0 -1
- package/dist/Testing/fixtures/index.js +0 -96
- package/dist/Testing/fixtures/index.js.map +0 -1
- package/dist/Types/Argument.types.d.ts +0 -28
- package/dist/Types/Argument.types.d.ts.map +0 -1
- package/dist/Types/Argument.types.js +0 -5
- package/dist/Types/Argument.types.js.map +0 -1
- package/dist/Types/Cli.types.d.ts +0 -82
- package/dist/Types/Cli.types.d.ts.map +0 -1
- package/dist/Types/Cli.types.js +0 -5
- package/dist/Types/Cli.types.js.map +0 -1
- package/dist/Types/Command.types.d.ts +0 -69
- package/dist/Types/Command.types.d.ts.map +0 -1
- package/dist/Types/Command.types.js +0 -20
- package/dist/Types/Command.types.js.map +0 -1
- package/dist/Types/Datasource.types.d.ts +0 -30
- package/dist/Types/Datasource.types.d.ts.map +0 -1
- package/dist/Types/Datasource.types.js +0 -5
- package/dist/Types/Datasource.types.js.map +0 -1
- package/dist/Types/LoggerTypes.types.d.ts +0 -18
- package/dist/Types/LoggerTypes.types.d.ts.map +0 -1
- package/dist/Types/LoggerTypes.types.js +0 -5
- package/dist/Types/LoggerTypes.types.js.map +0 -1
- package/dist/Utils/BuildPolling.d.ts +0 -43
- package/dist/Utils/BuildPolling.d.ts.map +0 -1
- package/dist/Utils/BuildPolling.js +0 -139
- package/dist/Utils/BuildPolling.js.map +0 -1
- package/dist/Utils/BuildVerbDescriptionTable.d.ts +0 -29
- package/dist/Utils/BuildVerbDescriptionTable.d.ts.map +0 -1
- package/dist/Utils/BuildVerbDescriptionTable.js +0 -147
- package/dist/Utils/BuildVerbDescriptionTable.js.map +0 -1
- package/dist/Utils/CoerceCliVersion.d.ts +0 -27
- package/dist/Utils/CoerceCliVersion.d.ts.map +0 -1
- package/dist/Utils/CoerceCliVersion.js +0 -67
- package/dist/Utils/CoerceCliVersion.js.map +0 -1
- package/dist/Utils/ConnectorIds.d.ts +0 -12
- package/dist/Utils/ConnectorIds.d.ts.map +0 -1
- package/dist/Utils/ConnectorIds.js +0 -20
- package/dist/Utils/ConnectorIds.js.map +0 -1
- package/dist/Utils/ConsoleOutput.d.ts +0 -86
- package/dist/Utils/ConsoleOutput.d.ts.map +0 -1
- package/dist/Utils/ConsoleOutput.js +0 -162
- package/dist/Utils/ConsoleOutput.js.map +0 -1
- package/dist/Utils/DcfRecovery.d.ts +0 -84
- package/dist/Utils/DcfRecovery.d.ts.map +0 -1
- package/dist/Utils/DcfRecovery.js +0 -246
- package/dist/Utils/DcfRecovery.js.map +0 -1
- package/dist/Utils/DetectPackageManager.d.ts +0 -9
- package/dist/Utils/DetectPackageManager.d.ts.map +0 -1
- package/dist/Utils/DetectPackageManager.js +0 -24
- package/dist/Utils/DetectPackageManager.js.map +0 -1
- package/dist/Utils/DownloadTemplate.d.ts +0 -45
- package/dist/Utils/DownloadTemplate.d.ts.map +0 -1
- package/dist/Utils/DownloadTemplate.js +0 -161
- package/dist/Utils/DownloadTemplate.js.map +0 -1
- package/dist/Utils/EnhanceNetworkError.d.ts +0 -14
- package/dist/Utils/EnhanceNetworkError.d.ts.map +0 -1
- package/dist/Utils/EnhanceNetworkError.js +0 -61
- package/dist/Utils/EnhanceNetworkError.js.map +0 -1
- package/dist/Utils/EnvVars.d.ts +0 -17
- package/dist/Utils/EnvVars.d.ts.map +0 -1
- package/dist/Utils/EnvVars.js +0 -38
- package/dist/Utils/EnvVars.js.map +0 -1
- package/dist/Utils/EnvironmentRoutingUtils.d.ts +0 -81
- package/dist/Utils/EnvironmentRoutingUtils.d.ts.map +0 -1
- package/dist/Utils/EnvironmentRoutingUtils.js +0 -204
- package/dist/Utils/EnvironmentRoutingUtils.js.map +0 -1
- package/dist/Utils/FindAvailablePort.d.ts +0 -39
- package/dist/Utils/FindAvailablePort.d.ts.map +0 -1
- package/dist/Utils/FindAvailablePort.js +0 -105
- package/dist/Utils/FindAvailablePort.js.map +0 -1
- package/dist/Utils/GitCredentialConfig.d.ts +0 -12
- package/dist/Utils/GitCredentialConfig.d.ts.map +0 -1
- package/dist/Utils/GitCredentialConfig.js +0 -32
- package/dist/Utils/GitCredentialConfig.js.map +0 -1
- package/dist/Utils/GitErrorClassifier.d.ts +0 -40
- package/dist/Utils/GitErrorClassifier.d.ts.map +0 -1
- package/dist/Utils/GitErrorClassifier.js +0 -120
- package/dist/Utils/GitErrorClassifier.js.map +0 -1
- package/dist/Utils/GitHubDcfFlow.d.ts +0 -59
- package/dist/Utils/GitHubDcfFlow.d.ts.map +0 -1
- package/dist/Utils/GitHubDcfFlow.js +0 -165
- package/dist/Utils/GitHubDcfFlow.js.map +0 -1
- package/dist/Utils/GitRunner.d.ts +0 -107
- package/dist/Utils/GitRunner.d.ts.map +0 -1
- package/dist/Utils/GitRunner.js +0 -89
- package/dist/Utils/GitRunner.js.map +0 -1
- package/dist/Utils/GitUtils.d.ts +0 -59
- package/dist/Utils/GitUtils.d.ts.map +0 -1
- package/dist/Utils/GitUtils.js +0 -198
- package/dist/Utils/GitUtils.js.map +0 -1
- package/dist/Utils/GitVersionChecker.d.ts +0 -38
- package/dist/Utils/GitVersionChecker.d.ts.map +0 -1
- package/dist/Utils/GitVersionChecker.js +0 -64
- package/dist/Utils/GitVersionChecker.js.map +0 -1
- package/dist/Utils/HelpBanner.d.ts +0 -11
- package/dist/Utils/HelpBanner.d.ts.map +0 -1
- package/dist/Utils/HelpBanner.js +0 -15
- package/dist/Utils/HelpBanner.js.map +0 -1
- package/dist/Utils/MaafAppConfig.d.ts +0 -24
- package/dist/Utils/MaafAppConfig.d.ts.map +0 -1
- package/dist/Utils/MaafAppConfig.js +0 -38
- package/dist/Utils/MaafAppConfig.js.map +0 -1
- package/dist/Utils/NodeVersionChecker.d.ts +0 -10
- package/dist/Utils/NodeVersionChecker.d.ts.map +0 -1
- package/dist/Utils/NodeVersionChecker.js +0 -21
- package/dist/Utils/NodeVersionChecker.js.map +0 -1
- package/dist/Utils/Paging.d.ts +0 -29
- package/dist/Utils/Paging.d.ts.map +0 -1
- package/dist/Utils/Paging.js +0 -102
- package/dist/Utils/Paging.js.map +0 -1
- package/dist/Utils/PinCli.d.ts +0 -33
- package/dist/Utils/PinCli.d.ts.map +0 -1
- package/dist/Utils/PinCli.js +0 -77
- package/dist/Utils/PinCli.js.map +0 -1
- package/dist/Utils/ReadPackageJson.d.ts +0 -9
- package/dist/Utils/ReadPackageJson.d.ts.map +0 -1
- package/dist/Utils/ReadPackageJson.js +0 -13
- package/dist/Utils/ReadPackageJson.js.map +0 -1
- package/dist/Utils/RepoDetails.d.ts +0 -29
- package/dist/Utils/RepoDetails.d.ts.map +0 -1
- package/dist/Utils/RepoDetails.js +0 -37
- package/dist/Utils/RepoDetails.js.map +0 -1
- package/dist/Utils/RepoOption.d.ts +0 -42
- package/dist/Utils/RepoOption.d.ts.map +0 -1
- package/dist/Utils/RepoOption.js +0 -63
- package/dist/Utils/RepoOption.js.map +0 -1
- package/dist/Utils/RepoUrl.d.ts +0 -18
- package/dist/Utils/RepoUrl.d.ts.map +0 -1
- package/dist/Utils/RepoUrl.js +0 -6
- package/dist/Utils/RepoUrl.js.map +0 -1
- package/dist/Utils/ResolveCommand.d.ts +0 -62
- package/dist/Utils/ResolveCommand.d.ts.map +0 -1
- package/dist/Utils/ResolveCommand.js +0 -141
- package/dist/Utils/ResolveCommand.js.map +0 -1
- package/dist/Utils/RunCommand.d.ts +0 -33
- package/dist/Utils/RunCommand.d.ts.map +0 -1
- package/dist/Utils/RunCommand.js +0 -83
- package/dist/Utils/RunCommand.js.map +0 -1
- package/dist/Utils/ShareAccessRouting.d.ts +0 -78
- package/dist/Utils/ShareAccessRouting.d.ts.map +0 -1
- package/dist/Utils/ShareAccessRouting.js +0 -93
- package/dist/Utils/ShareAccessRouting.js.map +0 -1
- package/dist/Utils/Spinner.d.ts +0 -23
- package/dist/Utils/Spinner.d.ts.map +0 -1
- package/dist/Utils/Spinner.js +0 -94
- package/dist/Utils/Spinner.js.map +0 -1
- package/dist/Utils/zipBuildArtifact.d.ts +0 -35
- package/dist/Utils/zipBuildArtifact.d.ts.map +0 -1
- package/dist/Utils/zipBuildArtifact.js +0 -100
- package/dist/Utils/zipBuildArtifact.js.map +0 -1
- package/dist/Verbs/AddAction.d.ts +0 -6
- package/dist/Verbs/AddAction.d.ts.map +0 -1
- package/dist/Verbs/AddAction.js +0 -59
- package/dist/Verbs/AddAction.js.map +0 -1
- package/dist/Verbs/AddConnector.d.ts +0 -26
- package/dist/Verbs/AddConnector.d.ts.map +0 -1
- package/dist/Verbs/AddConnector.js +0 -223
- package/dist/Verbs/AddConnector.js.map +0 -1
- package/dist/Verbs/AddConnectorFlows.d.ts +0 -97
- package/dist/Verbs/AddConnectorFlows.d.ts.map +0 -1
- package/dist/Verbs/AddConnectorFlows.js +0 -298
- package/dist/Verbs/AddConnectorFlows.js.map +0 -1
- package/dist/Verbs/AddDataSource.d.ts +0 -18
- package/dist/Verbs/AddDataSource.d.ts.map +0 -1
- package/dist/Verbs/AddDataSource.js +0 -163
- package/dist/Verbs/AddDataSource.js.map +0 -1
- package/dist/Verbs/AddFlow.d.ts +0 -12
- package/dist/Verbs/AddFlow.d.ts.map +0 -1
- package/dist/Verbs/AddFlow.js +0 -63
- package/dist/Verbs/AddFlow.js.map +0 -1
- package/dist/Verbs/AddTable.d.ts +0 -6
- package/dist/Verbs/AddTable.d.ts.map +0 -1
- package/dist/Verbs/AddTable.js +0 -79
- package/dist/Verbs/AddTable.js.map +0 -1
- package/dist/Verbs/AuthStatus.d.ts +0 -6
- package/dist/Verbs/AuthStatus.d.ts.map +0 -1
- package/dist/Verbs/AuthStatus.js +0 -49
- package/dist/Verbs/AuthStatus.js.map +0 -1
- package/dist/Verbs/AuthSwitch.d.ts +0 -6
- package/dist/Verbs/AuthSwitch.d.ts.map +0 -1
- package/dist/Verbs/AuthSwitch.js +0 -67
- package/dist/Verbs/AuthSwitch.js.map +0 -1
- package/dist/Verbs/BuildMaafApp.d.ts +0 -6
- package/dist/Verbs/BuildMaafApp.d.ts.map +0 -1
- package/dist/Verbs/BuildMaafApp.js +0 -171
- package/dist/Verbs/BuildMaafApp.js.map +0 -1
- package/dist/Verbs/ConnectorHelpers.d.ts +0 -164
- package/dist/Verbs/ConnectorHelpers.d.ts.map +0 -1
- package/dist/Verbs/ConnectorHelpers.js +0 -563
- package/dist/Verbs/ConnectorHelpers.js.map +0 -1
- package/dist/Verbs/CreateMaafApp.d.ts +0 -100
- package/dist/Verbs/CreateMaafApp.d.ts.map +0 -1
- package/dist/Verbs/CreateMaafApp.js +0 -1022
- package/dist/Verbs/CreateMaafApp.js.map +0 -1
- package/dist/Verbs/DeleteMaafApp.d.ts +0 -27
- package/dist/Verbs/DeleteMaafApp.d.ts.map +0 -1
- package/dist/Verbs/DeleteMaafApp.js +0 -114
- package/dist/Verbs/DeleteMaafApp.js.map +0 -1
- package/dist/Verbs/DeployMaafApp.d.ts +0 -6
- package/dist/Verbs/DeployMaafApp.d.ts.map +0 -1
- package/dist/Verbs/DeployMaafApp.js +0 -495
- package/dist/Verbs/DeployMaafApp.js.map +0 -1
- package/dist/Verbs/Dev.d.ts +0 -6
- package/dist/Verbs/Dev.d.ts.map +0 -1
- package/dist/Verbs/Dev.js +0 -276
- package/dist/Verbs/Dev.js.map +0 -1
- package/dist/Verbs/FindDataverseApi.d.ts +0 -12
- package/dist/Verbs/FindDataverseApi.d.ts.map +0 -1
- package/dist/Verbs/FindDataverseApi.js +0 -87
- package/dist/Verbs/FindDataverseApi.js.map +0 -1
- package/dist/Verbs/GetMaafApp.d.ts +0 -6
- package/dist/Verbs/GetMaafApp.d.ts.map +0 -1
- package/dist/Verbs/GetMaafApp.js +0 -80
- package/dist/Verbs/GetMaafApp.js.map +0 -1
- package/dist/Verbs/GetMaafBuildStatus.d.ts +0 -6
- package/dist/Verbs/GetMaafBuildStatus.d.ts.map +0 -1
- package/dist/Verbs/GetMaafBuildStatus.js +0 -132
- package/dist/Verbs/GetMaafBuildStatus.js.map +0 -1
- package/dist/Verbs/GetSettings.d.ts +0 -12
- package/dist/Verbs/GetSettings.d.ts.map +0 -1
- package/dist/Verbs/GetSettings.js +0 -39
- package/dist/Verbs/GetSettings.js.map +0 -1
- package/dist/Verbs/Init.d.ts +0 -6
- package/dist/Verbs/Init.d.ts.map +0 -1
- package/dist/Verbs/Init.js +0 -453
- package/dist/Verbs/Init.js.map +0 -1
- package/dist/Verbs/ListConnectionReferences.d.ts +0 -6
- package/dist/Verbs/ListConnectionReferences.d.ts.map +0 -1
- package/dist/Verbs/ListConnectionReferences.js +0 -56
- package/dist/Verbs/ListConnectionReferences.js.map +0 -1
- package/dist/Verbs/ListConnectorActions.d.ts +0 -6
- package/dist/Verbs/ListConnectorActions.d.ts.map +0 -1
- package/dist/Verbs/ListConnectorActions.js +0 -94
- package/dist/Verbs/ListConnectorActions.js.map +0 -1
- package/dist/Verbs/ListConnectors.d.ts +0 -6
- package/dist/Verbs/ListConnectors.d.ts.map +0 -1
- package/dist/Verbs/ListConnectors.js +0 -97
- package/dist/Verbs/ListConnectors.js.map +0 -1
- package/dist/Verbs/ListDatasets.d.ts +0 -6
- package/dist/Verbs/ListDatasets.d.ts.map +0 -1
- package/dist/Verbs/ListDatasets.js +0 -73
- package/dist/Verbs/ListDatasets.js.map +0 -1
- package/dist/Verbs/ListEnvironmentVariables.d.ts +0 -14
- package/dist/Verbs/ListEnvironmentVariables.d.ts.map +0 -1
- package/dist/Verbs/ListEnvironmentVariables.js +0 -52
- package/dist/Verbs/ListEnvironmentVariables.js.map +0 -1
- package/dist/Verbs/ListFlows.d.ts +0 -13
- package/dist/Verbs/ListFlows.d.ts.map +0 -1
- package/dist/Verbs/ListFlows.js +0 -73
- package/dist/Verbs/ListFlows.js.map +0 -1
- package/dist/Verbs/ListMaafApps.d.ts +0 -84
- package/dist/Verbs/ListMaafApps.d.ts.map +0 -1
- package/dist/Verbs/ListMaafApps.js +0 -221
- package/dist/Verbs/ListMaafApps.js.map +0 -1
- package/dist/Verbs/ListSqlStoredProcedures.d.ts +0 -6
- package/dist/Verbs/ListSqlStoredProcedures.d.ts.map +0 -1
- package/dist/Verbs/ListSqlStoredProcedures.js +0 -75
- package/dist/Verbs/ListSqlStoredProcedures.js.map +0 -1
- package/dist/Verbs/ListTables.d.ts +0 -6
- package/dist/Verbs/ListTables.d.ts.map +0 -1
- package/dist/Verbs/ListTables.js +0 -85
- package/dist/Verbs/ListTables.js.map +0 -1
- package/dist/Verbs/Login.d.ts +0 -6
- package/dist/Verbs/Login.d.ts.map +0 -1
- package/dist/Verbs/Login.js +0 -39
- package/dist/Verbs/Login.js.map +0 -1
- package/dist/Verbs/Logout.d.ts +0 -6
- package/dist/Verbs/Logout.d.ts.map +0 -1
- package/dist/Verbs/Logout.js +0 -34
- package/dist/Verbs/Logout.js.map +0 -1
- package/dist/Verbs/MaafAppPermissions.d.ts +0 -40
- package/dist/Verbs/MaafAppPermissions.d.ts.map +0 -1
- package/dist/Verbs/MaafAppPermissions.js +0 -651
- package/dist/Verbs/MaafAppPermissions.js.map +0 -1
- package/dist/Verbs/Pack.d.ts +0 -71
- package/dist/Verbs/Pack.d.ts.map +0 -1
- package/dist/Verbs/Pack.js +0 -370
- package/dist/Verbs/Pack.js.map +0 -1
- package/dist/Verbs/PlayMaafApp.d.ts +0 -22
- package/dist/Verbs/PlayMaafApp.d.ts.map +0 -1
- package/dist/Verbs/PlayMaafApp.js +0 -147
- package/dist/Verbs/PlayMaafApp.js.map +0 -1
- package/dist/Verbs/RefreshDataSource.d.ts +0 -21
- package/dist/Verbs/RefreshDataSource.d.ts.map +0 -1
- package/dist/Verbs/RefreshDataSource.js +0 -89
- package/dist/Verbs/RefreshDataSource.js.map +0 -1
- package/dist/Verbs/RefreshGitAuth.d.ts +0 -6
- package/dist/Verbs/RefreshGitAuth.d.ts.map +0 -1
- package/dist/Verbs/RefreshGitAuth.js +0 -155
- package/dist/Verbs/RefreshGitAuth.js.map +0 -1
- package/dist/Verbs/RemoveDataSource.d.ts +0 -6
- package/dist/Verbs/RemoveDataSource.d.ts.map +0 -1
- package/dist/Verbs/RemoveDataSource.js +0 -173
- package/dist/Verbs/RemoveDataSource.js.map +0 -1
- package/dist/Verbs/RemoveFlow.d.ts +0 -12
- package/dist/Verbs/RemoveFlow.d.ts.map +0 -1
- package/dist/Verbs/RemoveFlow.js +0 -95
- package/dist/Verbs/RemoveFlow.js.map +0 -1
- package/dist/Verbs/SetSetting.d.ts +0 -12
- package/dist/Verbs/SetSetting.d.ts.map +0 -1
- package/dist/Verbs/SetSetting.js +0 -133
- package/dist/Verbs/SetSetting.js.map +0 -1
- package/dist/Verbs/ShareLinkCreate.d.ts +0 -23
- package/dist/Verbs/ShareLinkCreate.d.ts.map +0 -1
- package/dist/Verbs/ShareLinkCreate.js +0 -73
- package/dist/Verbs/ShareLinkCreate.js.map +0 -1
- package/dist/Verbs/ShareLinkList.d.ts +0 -16
- package/dist/Verbs/ShareLinkList.d.ts.map +0 -1
- package/dist/Verbs/ShareLinkList.js +0 -84
- package/dist/Verbs/ShareLinkList.js.map +0 -1
- package/dist/Verbs/ShareLinkRevoke.d.ts +0 -22
- package/dist/Verbs/ShareLinkRevoke.d.ts.map +0 -1
- package/dist/Verbs/ShareLinkRevoke.js +0 -137
- package/dist/Verbs/ShareLinkRevoke.js.map +0 -1
- package/dist/Verbs/ShareList.d.ts +0 -10
- package/dist/Verbs/ShareList.d.ts.map +0 -1
- package/dist/Verbs/ShareList.js +0 -254
- package/dist/Verbs/ShareList.js.map +0 -1
- package/dist/Verbs/ShareMaafApp.d.ts +0 -12
- package/dist/Verbs/ShareMaafApp.d.ts.map +0 -1
- package/dist/Verbs/ShareMaafApp.js +0 -14
- package/dist/Verbs/ShareMaafApp.js.map +0 -1
- package/dist/Verbs/ShowMaafApp.d.ts +0 -100
- package/dist/Verbs/ShowMaafApp.d.ts.map +0 -1
- package/dist/Verbs/ShowMaafApp.js +0 -224
- package/dist/Verbs/ShowMaafApp.js.map +0 -1
- package/dist/Verbs/TelemetrySettings.d.ts +0 -8
- package/dist/Verbs/TelemetrySettings.d.ts.map +0 -1
- package/dist/Verbs/TelemetrySettings.js +0 -104
- package/dist/Verbs/TelemetrySettings.js.map +0 -1
- package/dist/Verbs/UnshareMaafApp.d.ts +0 -12
- package/dist/Verbs/UnshareMaafApp.d.ts.map +0 -1
- package/dist/Verbs/UnshareMaafApp.js +0 -14
- package/dist/Verbs/UnshareMaafApp.js.map +0 -1
- package/dist/Verbs/VerbConstants.d.ts +0 -629
- package/dist/Verbs/VerbConstants.d.ts.map +0 -1
- package/dist/Verbs/VerbConstants.js +0 -559
- package/dist/Verbs/VerbConstants.js.map +0 -1
- package/dist/Verbs/index.d.ts +0 -47
- package/dist/Verbs/index.d.ts.map +0 -1
- package/dist/Verbs/index.js +0 -47
- package/dist/Verbs/index.js.map +0 -1
|
@@ -1,147 +0,0 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* Copyright (C) Microsoft Corporation. All rights reserved.
|
|
3
|
-
*/
|
|
4
|
-
import { infoAsync } from '@microsoft/managed-apps-actions';
|
|
5
|
-
import open from 'open';
|
|
6
|
-
import { getCliLogger } from '../CliSettings.js';
|
|
7
|
-
import { resolveAppNameAsync, resolveEnvironmentId } from '../CliUtils.js';
|
|
8
|
-
import { HelpStrings } from '../Constants/HelpStrings.js';
|
|
9
|
-
import { UsageError } from '../Errors/CliError.js';
|
|
10
|
-
import { printInfo, printJsonSuccess, printSuccess, printWarning } from '../Utils/ConsoleOutput.js';
|
|
11
|
-
import { PlayMaafAppArguments } from './VerbConstants.js';
|
|
12
|
-
/**
|
|
13
|
-
* Implements `ms app play` — opens a Microsoft App in the browser and prints
|
|
14
|
-
* the launch URL.
|
|
15
|
-
*
|
|
16
|
-
* Modes:
|
|
17
|
-
* - `live` (default): fetches the deployed app via `infoAsync` and opens
|
|
18
|
-
* `appPlayUri`. Warns that the live build is a snapshot — users must run
|
|
19
|
-
* `ms app deploy` to update it. If no `appPlayUri` exists yet, surfaces a
|
|
20
|
-
* `UsageError` directing the user to deploy first.
|
|
21
|
-
* - `preview`: opens the returned `appPlayUri` with a preview route suffix:
|
|
22
|
-
* `/branch/main` by default, or `/commit/:commitId` when `--commit` is
|
|
23
|
-
* supplied.
|
|
24
|
-
*/
|
|
25
|
-
export async function playMaafAppAsync(argumentProvider) {
|
|
26
|
-
configureOptionSchema(argumentProvider);
|
|
27
|
-
await argumentProvider.runVerb();
|
|
28
|
-
const appName = await resolveAppNameAsync(argumentProvider);
|
|
29
|
-
const environmentId = await resolveEnvironmentId(argumentProvider);
|
|
30
|
-
const tenantId = await argumentProvider.getTenantIdAsync();
|
|
31
|
-
if (!tenantId) {
|
|
32
|
-
throw new UsageError('Unable to determine tenant ID. Ensure you are logged in.');
|
|
33
|
-
}
|
|
34
|
-
const mode = await resolveMode(argumentProvider);
|
|
35
|
-
const noBrowser = (await argumentProvider.getOption('noBrowser', /* ignorePrompt */ true)) === true;
|
|
36
|
-
const isJson = argumentProvider.isJsonMode();
|
|
37
|
-
const commitId = await argumentProvider.getOption(PlayMaafAppArguments.CommitSha.name,
|
|
38
|
-
/* ignorePrompt */ true);
|
|
39
|
-
if (mode === 'live' && commitId) {
|
|
40
|
-
throw new UsageError(`--commit is only valid with --mode preview.`);
|
|
41
|
-
}
|
|
42
|
-
await playAsync({
|
|
43
|
-
appName,
|
|
44
|
-
environmentId,
|
|
45
|
-
tenantId,
|
|
46
|
-
noBrowser,
|
|
47
|
-
isJson,
|
|
48
|
-
mode,
|
|
49
|
-
commitId,
|
|
50
|
-
});
|
|
51
|
-
}
|
|
52
|
-
async function playAsync(ctx) {
|
|
53
|
-
const { appName, environmentId, tenantId, noBrowser, isJson, mode, commitId } = ctx;
|
|
54
|
-
const app = await infoAsync({
|
|
55
|
-
tenantId,
|
|
56
|
-
environmentId,
|
|
57
|
-
logger: getCliLogger(),
|
|
58
|
-
actionsParams: { appName },
|
|
59
|
-
});
|
|
60
|
-
const url = buildPlayUrl(app.appPlayUri, mode, commitId);
|
|
61
|
-
if (!url) {
|
|
62
|
-
throw new UsageError(mode === 'live'
|
|
63
|
-
? `No live build is available for app '${appName}' yet. Run 'ms app deploy' to deploy one, then re-run 'ms app play'.`
|
|
64
|
-
: `No appPlayUri is available for app '${appName}' in environment '${environmentId}'.`);
|
|
65
|
-
}
|
|
66
|
-
if (isJson) {
|
|
67
|
-
printJsonSuccess({ appName, mode, url, commitHash: app.commitHash ?? null });
|
|
68
|
-
return;
|
|
69
|
-
}
|
|
70
|
-
printSuccess(`${mode === 'live' ? 'Live' : 'Preview'} URL for '${app.displayName ?? appName}': ${url}`);
|
|
71
|
-
if (mode === 'live') {
|
|
72
|
-
printWarning("Live does not auto-update. Run 'ms app deploy' to publish a new version to the live URL.");
|
|
73
|
-
}
|
|
74
|
-
await openBrowserAsync(url, noBrowser);
|
|
75
|
-
}
|
|
76
|
-
// Mirrors the player routes in apps/maaf-player/src/App.tsx:
|
|
77
|
-
// /appframework/e/:envId/app/:appId, /branch/:branch, and /commit/:commit.
|
|
78
|
-
// Branch values are URL-encoded so names containing `/` remain a single route segment.
|
|
79
|
-
export function buildPlayUrl(appPlayUri, mode, commitId, branchName = 'main') {
|
|
80
|
-
if (!appPlayUri) {
|
|
81
|
-
return undefined;
|
|
82
|
-
}
|
|
83
|
-
if (mode === 'live') {
|
|
84
|
-
return appPlayUri;
|
|
85
|
-
}
|
|
86
|
-
const baseUrl = appPlayUri.replace(/\/$/, '');
|
|
87
|
-
return commitId
|
|
88
|
-
? `${baseUrl}/commit/${commitId}`
|
|
89
|
-
: `${baseUrl}/branch/${encodeURIComponent(branchName)}`;
|
|
90
|
-
}
|
|
91
|
-
async function openBrowserAsync(url, noBrowser) {
|
|
92
|
-
if (noBrowser) {
|
|
93
|
-
return;
|
|
94
|
-
}
|
|
95
|
-
printInfo(`Opening browser at ${url}`);
|
|
96
|
-
try {
|
|
97
|
-
await open(url, { wait: false });
|
|
98
|
-
}
|
|
99
|
-
catch {
|
|
100
|
-
printInfo(`Could not open browser automatically. Please navigate to:\n ${url}`);
|
|
101
|
-
}
|
|
102
|
-
}
|
|
103
|
-
async function resolveMode(argumentProvider) {
|
|
104
|
-
const raw = await argumentProvider.getOption(PlayMaafAppArguments.Mode.name,
|
|
105
|
-
/* ignorePrompt */ true);
|
|
106
|
-
const value = (raw ?? PlayMaafAppArguments.Mode.defaultValue).trim().toLowerCase();
|
|
107
|
-
if (value !== 'live' && value !== 'preview') {
|
|
108
|
-
throw new UsageError(`Invalid --mode value '${raw}'. Expected 'live' or 'preview'.`);
|
|
109
|
-
}
|
|
110
|
-
return value;
|
|
111
|
-
}
|
|
112
|
-
function configureOptionSchema(argumentProvider) {
|
|
113
|
-
argumentProvider.setDescription(HelpStrings.app.play.description);
|
|
114
|
-
argumentProvider.addExamples(HelpStrings.app.play.examples);
|
|
115
|
-
argumentProvider.addSwitch({
|
|
116
|
-
flags: { key: PlayMaafAppArguments.NoBrowser.name },
|
|
117
|
-
description: HelpStrings.app.play.options.noBrowser,
|
|
118
|
-
});
|
|
119
|
-
argumentProvider.addOptions([
|
|
120
|
-
{
|
|
121
|
-
flags: { key: PlayMaafAppArguments.AppName.name },
|
|
122
|
-
env: PlayMaafAppArguments.AppName.envVar,
|
|
123
|
-
description: HelpStrings.app.play.options.app,
|
|
124
|
-
optionalInNonInteractive: true,
|
|
125
|
-
},
|
|
126
|
-
{
|
|
127
|
-
flags: {
|
|
128
|
-
key: PlayMaafAppArguments.Mode.name,
|
|
129
|
-
alias: PlayMaafAppArguments.Mode.alias,
|
|
130
|
-
},
|
|
131
|
-
env: PlayMaafAppArguments.Mode.envVar,
|
|
132
|
-
default: PlayMaafAppArguments.Mode.defaultValue,
|
|
133
|
-
description: HelpStrings.app.play.options.mode,
|
|
134
|
-
optionalInNonInteractive: true,
|
|
135
|
-
},
|
|
136
|
-
{
|
|
137
|
-
flags: {
|
|
138
|
-
key: PlayMaafAppArguments.CommitSha.name,
|
|
139
|
-
alias: PlayMaafAppArguments.CommitSha.alias,
|
|
140
|
-
},
|
|
141
|
-
env: PlayMaafAppArguments.CommitSha.envVar,
|
|
142
|
-
description: HelpStrings.app.play.options.commit,
|
|
143
|
-
optionalInNonInteractive: true,
|
|
144
|
-
},
|
|
145
|
-
]);
|
|
146
|
-
}
|
|
147
|
-
//# sourceMappingURL=PlayMaafApp.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"PlayMaafApp.js","sourceRoot":"","sources":["../../src/Verbs/PlayMaafApp.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* Copyright (C) Microsoft Corporation. All rights reserved.
|
|
3
|
-
*/
|
|
4
|
-
import type { ArgumentProvider } from '../ArgumentProvider.js';
|
|
5
|
-
/**
|
|
6
|
-
* `ms app refresh data-source` — bring the app's generated data-source code back in sync.
|
|
7
|
-
*
|
|
8
|
-
* Default (no flag) is an **online** refresh: it re-fetches each data source's metadata from
|
|
9
|
-
* the service and re-runs code generation, reconstructing the add-data-source parameters from
|
|
10
|
-
* `ms.config.json`. This requires network access and authentication.
|
|
11
|
-
*
|
|
12
|
-
* `--offline` is the local-only subset: it regenerates the models, services, and
|
|
13
|
-
* `dataSources.ts` from the local schema files under `.ms/schemas/` (scanned recursively,
|
|
14
|
-
* matching `*.Schema.json` by basename), without contacting the service (no network, no
|
|
15
|
-
* authentication). This is the codegen half of a refresh and is used by the code-app →
|
|
16
|
-
* managed-app migration to re-emit generated code from ported schemas.
|
|
17
|
-
*
|
|
18
|
-
* `--name` targets a single data source in either mode; omit it to refresh all.
|
|
19
|
-
*/
|
|
20
|
-
export declare function refreshDataSourceAsync(argumentProvider: ArgumentProvider): Promise<void>;
|
|
21
|
-
//# sourceMappingURL=RefreshDataSource.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"RefreshDataSource.d.ts","sourceRoot":"","sources":["../../src/Verbs/RefreshDataSource.ts"],"names":[],"mappings":"AAAA;;GAEG;AAQH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAQ5D;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,sBAAsB,CAAC,gBAAgB,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAkD9F"}
|
|
@@ -1,89 +0,0 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* Copyright (C) Microsoft Corporation. All rights reserved.
|
|
3
|
-
*/
|
|
4
|
-
import { getPlayerServiceConfig, refreshDataSourceAsync as refreshDataSourceActionsAsync, regenDataSourceTsAsync, } from '@microsoft/managed-apps-actions';
|
|
5
|
-
import { getCliLogger, getSettings } from '../CliSettings.js';
|
|
6
|
-
import { requireAppConfig } from '../CliUtils.js';
|
|
7
|
-
import { CLI_BINARY_NAME } from '../Constants/CliConstants.js';
|
|
8
|
-
import { HelpStrings } from '../Constants/HelpStrings.js';
|
|
9
|
-
import { printError, printInfo, printSuccess } from '../Utils/ConsoleOutput.js';
|
|
10
|
-
import { RefreshDataSourceArguments } from './VerbConstants.js';
|
|
11
|
-
/**
|
|
12
|
-
* `ms app refresh data-source` — bring the app's generated data-source code back in sync.
|
|
13
|
-
*
|
|
14
|
-
* Default (no flag) is an **online** refresh: it re-fetches each data source's metadata from
|
|
15
|
-
* the service and re-runs code generation, reconstructing the add-data-source parameters from
|
|
16
|
-
* `ms.config.json`. This requires network access and authentication.
|
|
17
|
-
*
|
|
18
|
-
* `--offline` is the local-only subset: it regenerates the models, services, and
|
|
19
|
-
* `dataSources.ts` from the local schema files under `.ms/schemas/` (scanned recursively,
|
|
20
|
-
* matching `*.Schema.json` by basename), without contacting the service (no network, no
|
|
21
|
-
* authentication). This is the codegen half of a refresh and is used by the code-app →
|
|
22
|
-
* managed-app migration to re-emit generated code from ported schemas.
|
|
23
|
-
*
|
|
24
|
-
* `--name` targets a single data source in either mode; omit it to refresh all.
|
|
25
|
-
*/
|
|
26
|
-
export async function refreshDataSourceAsync(argumentProvider) {
|
|
27
|
-
const settings = getSettings();
|
|
28
|
-
const { fileConfig, cliFs } = settings;
|
|
29
|
-
createOptionSchema(argumentProvider);
|
|
30
|
-
await argumentProvider.runVerb();
|
|
31
|
-
requireAppConfig();
|
|
32
|
-
const offline = !!(await argumentProvider.getOption('offline', true));
|
|
33
|
-
const rawName = await argumentProvider.getOption('name', true);
|
|
34
|
-
const dataSource = rawName || undefined;
|
|
35
|
-
const playerServiceConfig = getPlayerServiceConfig();
|
|
36
|
-
const baseContext = {
|
|
37
|
-
vfs: cliFs,
|
|
38
|
-
authProvider: argumentProvider.getAuthenticationProvider(),
|
|
39
|
-
httpClient: argumentProvider.getHttpClient(),
|
|
40
|
-
region: playerServiceConfig.region,
|
|
41
|
-
environmentName: playerServiceConfig.environmentName,
|
|
42
|
-
localFilePaths: {
|
|
43
|
-
appConfigPath: fileConfig.appConfigPath,
|
|
44
|
-
schemaPath: fileConfig.schemaPath,
|
|
45
|
-
codeGenPath: fileConfig.codeGenPath,
|
|
46
|
-
},
|
|
47
|
-
logger: getCliLogger(),
|
|
48
|
-
};
|
|
49
|
-
// Offline regenerates TypeScript from the local `.ms/schemas` files only (no network/auth).
|
|
50
|
-
// Online (default) re-fetches each data source's metadata from the service and re-codegens.
|
|
51
|
-
const result = offline
|
|
52
|
-
? await regenDataSourceTsAsync({ ...baseContext, actionsParams: { dataSource } })
|
|
53
|
-
: await refreshDataSourceActionsAsync({
|
|
54
|
-
...baseContext,
|
|
55
|
-
actionsParams: { dataSourceName: dataSource },
|
|
56
|
-
});
|
|
57
|
-
const pastTense = offline ? 'regenerated' : 'refreshed';
|
|
58
|
-
const presentTense = offline ? 'regenerate' : 'refresh';
|
|
59
|
-
for (const dsName of result.succeeded) {
|
|
60
|
-
printSuccess(`'${dsName}' ${pastTense} successfully.`);
|
|
61
|
-
}
|
|
62
|
-
for (const failure of result.failed) {
|
|
63
|
-
printError(`Failed to ${presentTense} '${failure.dataSourceName}': ${failure.error}`);
|
|
64
|
-
}
|
|
65
|
-
if (result.succeeded.length > 0 && result.failed.length === 0) {
|
|
66
|
-
printInfo(`Hint: Run '${CLI_BINARY_NAME} app dev' to test locally.`);
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
function createOptionSchema(argumentProvider) {
|
|
70
|
-
argumentProvider.setDescription(HelpStrings.app.refresh.dataSource.description);
|
|
71
|
-
argumentProvider.addExamples(HelpStrings.app.refresh.dataSource.examples);
|
|
72
|
-
argumentProvider.addOptions([
|
|
73
|
-
{
|
|
74
|
-
flags: {
|
|
75
|
-
key: RefreshDataSourceArguments.DataSourceName.name,
|
|
76
|
-
alias: RefreshDataSourceArguments.DataSourceName.alias,
|
|
77
|
-
},
|
|
78
|
-
env: RefreshDataSourceArguments.DataSourceName.envVar,
|
|
79
|
-
description: HelpStrings.app.refresh.dataSource.options.name,
|
|
80
|
-
optionalInNonInteractive: true,
|
|
81
|
-
},
|
|
82
|
-
]);
|
|
83
|
-
argumentProvider.addSwitch({
|
|
84
|
-
flags: { key: RefreshDataSourceArguments.Offline.name },
|
|
85
|
-
env: RefreshDataSourceArguments.Offline.env,
|
|
86
|
-
description: HelpStrings.app.refresh.dataSource.options.offline,
|
|
87
|
-
});
|
|
88
|
-
}
|
|
89
|
-
//# sourceMappingURL=RefreshDataSource.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"RefreshDataSource.js","sourceRoot":"","sources":["../../src/Verbs/RefreshDataSource.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* Copyright (C) Microsoft Corporation. All rights reserved.
|
|
3
|
-
*/
|
|
4
|
-
import type { ArgumentProvider } from '../ArgumentProvider.js';
|
|
5
|
-
export declare function refreshGitAuthAsync(argumentProvider: ArgumentProvider): Promise<void>;
|
|
6
|
-
//# sourceMappingURL=RefreshGitAuth.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"RefreshGitAuth.d.ts","sourceRoot":"","sources":["../../src/Verbs/RefreshGitAuth.ts"],"names":[],"mappings":"AAAA;;GAEG;AAcH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAU5D,wBAAsB,mBAAmB,CAAC,gBAAgB,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CA6G3F"}
|
|
@@ -1,155 +0,0 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* Copyright (C) Microsoft Corporation. All rights reserved.
|
|
3
|
-
*/
|
|
4
|
-
/**
|
|
5
|
-
* `git auth refresh` verb: bind the caller's GitHub identity to a GitHub repo
|
|
6
|
-
* (a `*.ghe.com` tenant URL or `github.com`) by running the GitHub Device Code
|
|
7
|
-
* Flow through the Managed Apps GitHub App. The verb owns argument parsing,
|
|
8
|
-
* display selection (console vs NDJSON), browser launching policy, and error
|
|
9
|
-
* mapping; the action layer (`authenticateForRepoAsync`) owns the DCF state
|
|
10
|
-
* machine itself.
|
|
11
|
-
*/
|
|
12
|
-
import { authenticateForRepoAsync } from '@microsoft/managed-apps-actions';
|
|
13
|
-
import { computeRepoHash } from '@microsoft/managed-apps-common/utils/RepoHash';
|
|
14
|
-
import { getCliLogger } from '../CliSettings.js';
|
|
15
|
-
import { createDefaultStringOption } from '../CliUtils.js';
|
|
16
|
-
import { HelpStrings } from '../Constants/HelpStrings.js';
|
|
17
|
-
import { UsageError } from '../Errors/CliError.js';
|
|
18
|
-
import { printJsonSuccess, printSuccess } from '../Utils/ConsoleOutput.js';
|
|
19
|
-
import { ConsoleGitHubDcfDisplay, JsonGitHubDcfDisplay } from '../Utils/GitHubDcfFlow.js';
|
|
20
|
-
import { parseRemoteUrl } from '../Utils/RepoUrl.js';
|
|
21
|
-
import { GitAuthRefreshArguments } from './VerbConstants.js';
|
|
22
|
-
export async function refreshGitAuthAsync(argumentProvider) {
|
|
23
|
-
createOptionSchema(argumentProvider);
|
|
24
|
-
await argumentProvider.runVerb();
|
|
25
|
-
// Precondition: ensure the user has an active AAD session (the action gets
|
|
26
|
-
// its bearer token via httpClient, but failing here gives a clearer error
|
|
27
|
-
// than a 401 mid-flight).
|
|
28
|
-
const tenantId = await argumentProvider.getTenantIdAsync();
|
|
29
|
-
if (!tenantId) {
|
|
30
|
-
throw new UsageError('Unable to determine tenant ID. Ensure you are logged in.');
|
|
31
|
-
}
|
|
32
|
-
// An env id is REQUIRED for ms git auth refresh: the GRS appframework path is
|
|
33
|
-
// env-scoped, so we surface a clear UsageError up-front rather than a
|
|
34
|
-
// defense-in-depth runtime throw from the wire layer. `getEnvironmentId()`
|
|
35
|
-
// owns command-option, option-env-var, project-config, and debug fallback
|
|
36
|
-
// resolution (matching sibling verbs such as Build/Deploy/Get).
|
|
37
|
-
const environmentId = argumentProvider.getEnvironmentId();
|
|
38
|
-
if (!environmentId) {
|
|
39
|
-
throw new UsageError("Environment id is required for ms git auth refresh. Set 'environmentId' in ms.config.json, " +
|
|
40
|
-
'or set the MS_CLI_MAAF_DEBUG_ENVIRONMENT_ID env var for debug runs.');
|
|
41
|
-
}
|
|
42
|
-
const repoUrl = await argumentProvider.getOption(GitAuthRefreshArguments.Repo.name);
|
|
43
|
-
if (!repoUrl) {
|
|
44
|
-
throw new UsageError('Argument repo is required. Use --repo or -r to specify the GitHub repository ' +
|
|
45
|
-
'(e.g. --repo https://contoso.ghe.com/contoso/my-app).');
|
|
46
|
-
}
|
|
47
|
-
// Best-effort generic URL split: used only for PII-safe telemetry shaping
|
|
48
|
-
// (host + repoHash) and to normalize the URL we forward to the actions
|
|
49
|
-
// layer. The CLI no longer performs scheme/host/shape validation — the
|
|
50
|
-
// server is the sole authoritative validator, and the actions layer also
|
|
51
|
-
// forwards untouched URLs (it only requires a non-empty host so it can
|
|
52
|
-
// compose an OAuth base URI). On parse failure we still emit
|
|
53
|
-
// Git.Auth.Refresh.Start with empty repoHost/repoHash (preserving the
|
|
54
|
-
// property keys for downstream Kusto consumers) and forward the unmodified
|
|
55
|
-
// URL to the actions layer.
|
|
56
|
-
const { host, owner, repo } = parseRemoteUrl(repoUrl);
|
|
57
|
-
const repoHash = owner && repo ? computeRepoHash(owner, repo) : '';
|
|
58
|
-
// Emit Git.Auth.Refresh.Start. Properties are PII-safe (host is the parsed
|
|
59
|
-
// string and repoHash is a truncated SHA256 — see computeRepoHash). When the
|
|
60
|
-
// URL fails to parse, both fields are emitted as empty strings.
|
|
61
|
-
getCliLogger().trackActivityEvent('Git.Auth.Refresh.Start', {
|
|
62
|
-
repoHost: host,
|
|
63
|
-
repoHash,
|
|
64
|
-
});
|
|
65
|
-
// Commander converts kebab-case flags to camelCase attribute names; the
|
|
66
|
-
// camelName constant keeps this lookup in sync with OpenBrowser.name.
|
|
67
|
-
const openBrowser = (await argumentProvider.getOption(GitAuthRefreshArguments.OpenBrowser.camelName,
|
|
68
|
-
/* ignorePrompt */ true)) ?? false;
|
|
69
|
-
const isJson = argumentProvider.isJsonMode();
|
|
70
|
-
const display = composeDisplay({ isJson, openBrowser });
|
|
71
|
-
// SIGINT plumbing: a Ctrl+C during the (potentially 15-minute) polling loop
|
|
72
|
-
// should drop us out cleanly with an "Authentication cancelled." message
|
|
73
|
-
// rather than leaving a dangling promise. The listener is added scoped to
|
|
74
|
-
// this verb run and removed in `finally` so background work doesn't leak it.
|
|
75
|
-
const controller = new AbortController();
|
|
76
|
-
const onSigint = () => {
|
|
77
|
-
controller.abort();
|
|
78
|
-
};
|
|
79
|
-
process.once('SIGINT', onSigint);
|
|
80
|
-
// When parse succeeded, normalize the URL to a canonical https://host/owner/repo
|
|
81
|
-
// shape; otherwise pass the user-supplied URL through to the server unchanged.
|
|
82
|
-
const normalizedRemoteUrl = host && owner && repo ? `https://${host}/${owner}/${repo}` : repoUrl;
|
|
83
|
-
// Likewise, the success message uses owner/repo when known and falls back
|
|
84
|
-
// to the raw URL otherwise.
|
|
85
|
-
const repoLabel = owner && repo ? `${owner}/${repo}` : repoUrl;
|
|
86
|
-
try {
|
|
87
|
-
const result = await authenticateForRepoAsync({
|
|
88
|
-
remoteUrl: normalizedRemoteUrl,
|
|
89
|
-
tenantId,
|
|
90
|
-
logger: getCliLogger(),
|
|
91
|
-
display,
|
|
92
|
-
// The display itself decides whether to launch a browser; the action just
|
|
93
|
-
// hands the URI to display.openVerificationUri.
|
|
94
|
-
skipBrowser: false,
|
|
95
|
-
signal: controller.signal,
|
|
96
|
-
});
|
|
97
|
-
if (isJson) {
|
|
98
|
-
printJsonSuccess({
|
|
99
|
-
githubLogin: result.githubLogin,
|
|
100
|
-
mappingExpiresAt: result.mappingExpiresAt,
|
|
101
|
-
});
|
|
102
|
-
}
|
|
103
|
-
else {
|
|
104
|
-
// "expires around" wording (vs. "valid until") signals that the timestamp
|
|
105
|
-
// is approximate — the server may revise it via TTL config changes (D16).
|
|
106
|
-
printSuccess(`Authenticated as ${result.githubLogin} for ${repoLabel}.`);
|
|
107
|
-
printSuccess(`Mapping established; expires around ${result.mappingExpiresAt}.`);
|
|
108
|
-
}
|
|
109
|
-
}
|
|
110
|
-
finally {
|
|
111
|
-
// Structured GRS error envelopes are promoted to the right AppError
|
|
112
|
-
// subclass by the global catch in Cli.boot (see formatServerError).
|
|
113
|
-
process.removeListener('SIGINT', onSigint);
|
|
114
|
-
}
|
|
115
|
-
}
|
|
116
|
-
/**
|
|
117
|
-
* Build the right {@link GitHubDcfDisplay} for the current invocation:
|
|
118
|
-
* - JSON mode → NDJSON events, never opens a browser.
|
|
119
|
-
* - Default → console output, browser launch suppressed.
|
|
120
|
-
* - `--open-browser` → console output + best-effort browser launch (TTY-gated).
|
|
121
|
-
*/
|
|
122
|
-
function composeDisplay(opts) {
|
|
123
|
-
if (opts.isJson) {
|
|
124
|
-
return new JsonGitHubDcfDisplay();
|
|
125
|
-
}
|
|
126
|
-
if (opts.openBrowser) {
|
|
127
|
-
return ConsoleGitHubDcfDisplay;
|
|
128
|
-
}
|
|
129
|
-
// Default: suppress the best-effort browser launch by replacing the
|
|
130
|
-
// openVerificationUri hook with a no-op. The user must opt in via --open-browser.
|
|
131
|
-
return {
|
|
132
|
-
...ConsoleGitHubDcfDisplay,
|
|
133
|
-
openVerificationUri: undefined,
|
|
134
|
-
};
|
|
135
|
-
}
|
|
136
|
-
function createOptionSchema(argumentProvider) {
|
|
137
|
-
argumentProvider.setDescription(HelpStrings.git.auth.refresh.description);
|
|
138
|
-
argumentProvider.addExamples(HelpStrings.git.auth.refresh.examples);
|
|
139
|
-
argumentProvider.addOptions([
|
|
140
|
-
createDefaultStringOption({
|
|
141
|
-
flags: {
|
|
142
|
-
key: GitAuthRefreshArguments.Repo.name,
|
|
143
|
-
alias: GitAuthRefreshArguments.Repo.alias,
|
|
144
|
-
},
|
|
145
|
-
env: GitAuthRefreshArguments.Repo.envVar,
|
|
146
|
-
message: GitAuthRefreshArguments.Repo.promptMessage,
|
|
147
|
-
description: HelpStrings.git.auth.refresh.options.repo,
|
|
148
|
-
}),
|
|
149
|
-
]);
|
|
150
|
-
argumentProvider.addSwitch({
|
|
151
|
-
flags: { key: GitAuthRefreshArguments.OpenBrowser.name },
|
|
152
|
-
description: HelpStrings.git.auth.refresh.options.openBrowser,
|
|
153
|
-
});
|
|
154
|
-
}
|
|
155
|
-
//# sourceMappingURL=RefreshGitAuth.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"RefreshGitAuth.js","sourceRoot":"","sources":["../../src/Verbs/RefreshGitAuth.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* Copyright (C) Microsoft Corporation. All rights reserved.
|
|
3
|
-
*/
|
|
4
|
-
import type { ArgumentProvider } from '../ArgumentProvider.js';
|
|
5
|
-
export declare function removeDataSourceAsync(argumentProvider: ArgumentProvider): Promise<void>;
|
|
6
|
-
//# sourceMappingURL=RemoveDataSource.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"RemoveDataSource.d.ts","sourceRoot":"","sources":["../../src/Verbs/RemoveDataSource.ts"],"names":[],"mappings":"AAAA;;GAEG;AAUH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAS5D,wBAAsB,qBAAqB,CAAC,gBAAgB,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAyG7F"}
|
|
@@ -1,173 +0,0 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* Copyright (C) Microsoft Corporation. All rights reserved.
|
|
3
|
-
*/
|
|
4
|
-
import { deleteDataSourceAsync as deleteDataSourceActionAsync, enumerateDataSources, getPlayerServiceConfig, readRepoConfig, } from '@microsoft/managed-apps-actions';
|
|
5
|
-
import { getCliLogger, getSettings } from '../CliSettings.js';
|
|
6
|
-
import { promptConfirm, promptSelectOrInput, requireAppConfig } from '../CliUtils.js';
|
|
7
|
-
import { CLI_BINARY_NAME } from '../Constants/CliConstants.js';
|
|
8
|
-
import { HelpStrings } from '../Constants/HelpStrings.js';
|
|
9
|
-
import { UsageError } from '../Errors/CliError.js';
|
|
10
|
-
import { printSuccess, printTable, printWarning } from '../Utils/ConsoleOutput.js';
|
|
11
|
-
import { DeleteDataSourceArguments } from './VerbConstants.js';
|
|
12
|
-
export async function removeDataSourceAsync(argumentProvider) {
|
|
13
|
-
const settings = getSettings();
|
|
14
|
-
const { fileConfig, cliFs } = settings;
|
|
15
|
-
createOptionSchema(argumentProvider);
|
|
16
|
-
await argumentProvider.runVerb();
|
|
17
|
-
requireAppConfig();
|
|
18
|
-
const force = await argumentProvider.getOption('force', true);
|
|
19
|
-
// Read config once and enumerate the data sources eligible for removal.
|
|
20
|
-
const removable = await loadRemovableDataSources(fileConfig.appConfigPath);
|
|
21
|
-
if (removable.length === 0) {
|
|
22
|
-
printWarning('No data sources found in ms.config.json. Nothing to remove.');
|
|
23
|
-
return;
|
|
24
|
-
}
|
|
25
|
-
// Resolve which data source to remove
|
|
26
|
-
let selected;
|
|
27
|
-
if (settings.interactive) {
|
|
28
|
-
// Interactive mode: let the user pick from the available data sources
|
|
29
|
-
selected = await promptDataSourceForRemoval(removable);
|
|
30
|
-
}
|
|
31
|
-
else {
|
|
32
|
-
// Non-interactive mode: only --name is required (connector is resolved from config)
|
|
33
|
-
const dsNameFlag = await argumentProvider.getOption('name');
|
|
34
|
-
if (!dsNameFlag) {
|
|
35
|
-
printAvailableDataSources(removable);
|
|
36
|
-
throw new UsageError(`Re-run with --name <name>. Example:\n ${CLI_BINARY_NAME} app remove data-source --name ${removable[0]?.name ?? '<name>'}`);
|
|
37
|
-
}
|
|
38
|
-
// Resolve connector from config
|
|
39
|
-
const entry = removable.find((e) => e.name === dsNameFlag);
|
|
40
|
-
if (!entry) {
|
|
41
|
-
printAvailableDataSources(removable);
|
|
42
|
-
throw new UsageError(`Data source '${dsNameFlag}' not found in ms.config.json. See available data sources above.`);
|
|
43
|
-
}
|
|
44
|
-
selected = entry;
|
|
45
|
-
}
|
|
46
|
-
const { name: dataSourceName, kind, connectorId: apiId, connectorDisplayName } = selected;
|
|
47
|
-
// When the selected entry is the connector itself (not an individual Dataverse table) and it
|
|
48
|
-
// owns Dataverse tables, removing it cascades to those tables. Warn the user and list them.
|
|
49
|
-
const associatedDataverseTables = selected.dataverseTable
|
|
50
|
-
? []
|
|
51
|
-
: removable.filter((e) => e.dataverseTable && e.connectorId === selected.connectorId);
|
|
52
|
-
if (associatedDataverseTables.length > 0) {
|
|
53
|
-
const tableNames = associatedDataverseTables.map((t) => t.name).join(', ');
|
|
54
|
-
printWarning(`Removing '${dataSourceName}' will also remove ${associatedDataverseTables.length} associated Dataverse table(s): ${tableNames}.`);
|
|
55
|
-
}
|
|
56
|
-
// Confirmation prompt (interactive mode only; --force skips it). In
|
|
57
|
-
// non-interactive environments (scripts/CI) we never block on a prompt —
|
|
58
|
-
// consistent with `ms app delete`.
|
|
59
|
-
if (!force && settings.interactive) {
|
|
60
|
-
const message = associatedDataverseTables.length > 0
|
|
61
|
-
? `Remove '${connectorDisplayName}' and its ${associatedDataverseTables.length} Dataverse table(s)?`
|
|
62
|
-
: `Are you sure you want to remove the ${kind} '${dataSourceName}' from '${connectorDisplayName}'?`;
|
|
63
|
-
const confirmed = await promptConfirm({ message });
|
|
64
|
-
if (!confirmed) {
|
|
65
|
-
printWarning('Remove cancelled.');
|
|
66
|
-
return;
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
const playerServiceConfig = getPlayerServiceConfig();
|
|
70
|
-
const authenticationProvider = argumentProvider.getAuthenticationProvider();
|
|
71
|
-
const config = {
|
|
72
|
-
vfs: cliFs,
|
|
73
|
-
authProvider: authenticationProvider,
|
|
74
|
-
region: playerServiceConfig.region,
|
|
75
|
-
environmentName: playerServiceConfig.environmentName,
|
|
76
|
-
localFilePaths: fileConfig,
|
|
77
|
-
actionsParams: {
|
|
78
|
-
apiId: apiId,
|
|
79
|
-
dataSourceName: dataSourceName,
|
|
80
|
-
sqlStoredProcedure: '',
|
|
81
|
-
},
|
|
82
|
-
logger: getCliLogger(),
|
|
83
|
-
};
|
|
84
|
-
const deleted = await deleteDataSourceActionAsync(config);
|
|
85
|
-
if (deleted) {
|
|
86
|
-
printSuccess(`Removed ${kind} '${dataSourceName}' from '${connectorDisplayName}'.`);
|
|
87
|
-
if (associatedDataverseTables.length > 0) {
|
|
88
|
-
const tableNames = associatedDataverseTables.map((t) => t.name).join(', ');
|
|
89
|
-
printSuccess(`Also removed ${associatedDataverseTables.length} Dataverse table(s): ${tableNames}.`);
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
else {
|
|
93
|
-
printWarning(`The ${kind} '${dataSourceName}' was not found or could not be removed.`);
|
|
94
|
-
}
|
|
95
|
-
}
|
|
96
|
-
/**
|
|
97
|
-
* Reads `ms.config.json` and returns the data sources eligible for removal.
|
|
98
|
-
* Stored procedures are filtered out (out of scope). Surfaces a user-friendly
|
|
99
|
-
* error when the config cannot be read (e.g. command run outside an app directory).
|
|
100
|
-
*/
|
|
101
|
-
async function loadRemovableDataSources(appConfigPath) {
|
|
102
|
-
let repoConfig;
|
|
103
|
-
try {
|
|
104
|
-
repoConfig = await readRepoConfig(appConfigPath);
|
|
105
|
-
}
|
|
106
|
-
catch {
|
|
107
|
-
throw new UsageError(`Could not read ms.config.json at '${appConfigPath}'. Run this command from your app directory after adding a data source.`);
|
|
108
|
-
}
|
|
109
|
-
const { all } = enumerateDataSources(repoConfig);
|
|
110
|
-
// Filter out stored procedures (out of scope)
|
|
111
|
-
return all.filter((entry) => !entry.sqlStoredProcedure);
|
|
112
|
-
}
|
|
113
|
-
/**
|
|
114
|
-
* Presents an interactive select list so the user can choose which data source
|
|
115
|
-
* to remove from the supplied list of removable entries.
|
|
116
|
-
*/
|
|
117
|
-
async function promptDataSourceForRemoval(removable) {
|
|
118
|
-
const options = removable.map((entry) => ({
|
|
119
|
-
value: entry.name,
|
|
120
|
-
label: `${entry.name} (${entry.connectorDisplayName})`,
|
|
121
|
-
hint: entry.kind,
|
|
122
|
-
}));
|
|
123
|
-
const selected = await promptSelectOrInput({
|
|
124
|
-
message: 'Which data source would you like to remove?',
|
|
125
|
-
options,
|
|
126
|
-
manualPromptMessage: 'Enter the data source name:',
|
|
127
|
-
});
|
|
128
|
-
const entry = removable.find((e) => e.name === selected);
|
|
129
|
-
if (!entry) {
|
|
130
|
-
throw new UsageError(`Data source '${selected}' not found in ms.config.json.`);
|
|
131
|
-
}
|
|
132
|
-
return entry;
|
|
133
|
-
}
|
|
134
|
-
function printAvailableDataSources(entries) {
|
|
135
|
-
printTable({
|
|
136
|
-
title: 'Available data sources',
|
|
137
|
-
columns: [
|
|
138
|
-
{ header: 'Data Source' },
|
|
139
|
-
{ header: 'Connector', maxWidth: 30 },
|
|
140
|
-
{ header: 'Type', maxWidth: 6 },
|
|
141
|
-
],
|
|
142
|
-
rows: entries.map((e) => [e.name, e.connectorDisplayName, e.kind]),
|
|
143
|
-
emptyMessage: 'No data sources found in ms.config.json.',
|
|
144
|
-
totalLabel: 'data source(s) found',
|
|
145
|
-
});
|
|
146
|
-
}
|
|
147
|
-
function createOptionSchema(argumentProvider) {
|
|
148
|
-
const invokedAsConnector = argumentProvider.getResolvedCommand()?.path.at(-1) === 'connector';
|
|
149
|
-
if (invokedAsConnector) {
|
|
150
|
-
argumentProvider.setDescription(`${HelpStrings.app.remove.deprecation}\n\n${HelpStrings.app.remove.description}`);
|
|
151
|
-
argumentProvider.addExamples(HelpStrings.app.remove.deprecatedExamples);
|
|
152
|
-
}
|
|
153
|
-
else {
|
|
154
|
-
argumentProvider.setDescription(HelpStrings.app.remove.description);
|
|
155
|
-
argumentProvider.addExamples(HelpStrings.app.remove.examples);
|
|
156
|
-
}
|
|
157
|
-
argumentProvider.addSwitch({
|
|
158
|
-
flags: { key: 'force', alias: 'f' },
|
|
159
|
-
description: HelpStrings.app.remove.options.force,
|
|
160
|
-
});
|
|
161
|
-
argumentProvider.addOptions([
|
|
162
|
-
{
|
|
163
|
-
flags: {
|
|
164
|
-
key: DeleteDataSourceArguments.DataSourceName.name,
|
|
165
|
-
alias: DeleteDataSourceArguments.DataSourceName.alias,
|
|
166
|
-
},
|
|
167
|
-
env: DeleteDataSourceArguments.DataSourceName.envVar,
|
|
168
|
-
description: HelpStrings.app.remove.options.dataSourceName,
|
|
169
|
-
optionalInNonInteractive: true,
|
|
170
|
-
},
|
|
171
|
-
]);
|
|
172
|
-
}
|
|
173
|
-
//# sourceMappingURL=RemoveDataSource.js.map
|