@microsoft/apps-cli 0.0.1 → 0.4.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.
Files changed (334) hide show
  1. package/README.md +281 -1
  2. package/dist/ArgumentProvider.d.ts +102 -0
  3. package/dist/ArgumentProvider.d.ts.map +1 -0
  4. package/dist/ArgumentProvider.js +376 -0
  5. package/dist/ArgumentProvider.js.map +1 -0
  6. package/dist/Authentication/NodeMsalAuthenticationProvider.d.ts +18 -0
  7. package/dist/Authentication/NodeMsalAuthenticationProvider.d.ts.map +1 -0
  8. package/dist/Authentication/NodeMsalAuthenticationProvider.js +99 -0
  9. package/dist/Authentication/NodeMsalAuthenticationProvider.js.map +1 -0
  10. package/dist/Authentication/OrchardAuthenticationProvider.d.ts +13 -0
  11. package/dist/Authentication/OrchardAuthenticationProvider.d.ts.map +1 -0
  12. package/dist/Authentication/OrchardAuthenticationProvider.js +30 -0
  13. package/dist/Authentication/OrchardAuthenticationProvider.js.map +1 -0
  14. package/dist/Authentication/ServicePrincipalAuthenticationProvider.d.ts +23 -0
  15. package/dist/Authentication/ServicePrincipalAuthenticationProvider.d.ts.map +1 -0
  16. package/dist/Authentication/ServicePrincipalAuthenticationProvider.js +60 -0
  17. package/dist/Authentication/ServicePrincipalAuthenticationProvider.js.map +1 -0
  18. package/dist/Bin.d.ts +6 -0
  19. package/dist/Bin.d.ts.map +1 -0
  20. package/dist/Bin.js +7 -0
  21. package/dist/Bin.js.map +1 -0
  22. package/dist/Cli.d.ts +2 -0
  23. package/dist/Cli.d.ts.map +1 -0
  24. package/dist/Cli.js +95 -0
  25. package/dist/Cli.js.map +1 -0
  26. package/dist/CliSettings.d.ts +14 -0
  27. package/dist/CliSettings.d.ts.map +1 -0
  28. package/dist/CliSettings.js +76 -0
  29. package/dist/CliSettings.js.map +1 -0
  30. package/dist/CliUtils.d.ts +92 -0
  31. package/dist/CliUtils.d.ts.map +1 -0
  32. package/dist/CliUtils.js +218 -0
  33. package/dist/CliUtils.js.map +1 -0
  34. package/dist/Constants/CliConstants.d.ts +6 -0
  35. package/dist/Constants/CliConstants.d.ts.map +1 -0
  36. package/dist/Constants/CliConstants.js +6 -0
  37. package/dist/Constants/CliConstants.js.map +1 -0
  38. package/dist/Constants/CommandRegistry.d.ts +23 -0
  39. package/dist/Constants/CommandRegistry.d.ts.map +1 -0
  40. package/dist/Constants/CommandRegistry.js +197 -0
  41. package/dist/Constants/CommandRegistry.js.map +1 -0
  42. package/dist/Constants/HelpStrings.d.ts +329 -0
  43. package/dist/Constants/HelpStrings.d.ts.map +1 -0
  44. package/dist/Constants/HelpStrings.js +451 -0
  45. package/dist/Constants/HelpStrings.js.map +1 -0
  46. package/dist/Constants.d.ts +10 -0
  47. package/dist/Constants.d.ts.map +1 -0
  48. package/dist/Constants.js +18 -0
  49. package/dist/Constants.js.map +1 -0
  50. package/dist/Errors/CliError.d.ts +5 -0
  51. package/dist/Errors/CliError.d.ts.map +1 -0
  52. package/dist/Errors/CliError.js +7 -0
  53. package/dist/Errors/CliError.js.map +1 -0
  54. package/dist/FS/CliFs.d.ts +41 -0
  55. package/dist/FS/CliFs.d.ts.map +1 -0
  56. package/dist/FS/CliFs.js +136 -0
  57. package/dist/FS/CliFs.js.map +1 -0
  58. package/dist/HttpClient/CliHttpClient.d.ts +24 -0
  59. package/dist/HttpClient/CliHttpClient.d.ts.map +1 -0
  60. package/dist/HttpClient/CliHttpClient.js +122 -0
  61. package/dist/HttpClient/CliHttpClient.js.map +1 -0
  62. package/dist/HttpClient/OrchardProxy.d.ts +11 -0
  63. package/dist/HttpClient/OrchardProxy.d.ts.map +1 -0
  64. package/dist/HttpClient/OrchardProxy.js +25 -0
  65. package/dist/HttpClient/OrchardProxy.js.map +1 -0
  66. package/dist/HttpClient/Proxy.d.ts +7 -0
  67. package/dist/HttpClient/Proxy.d.ts.map +1 -0
  68. package/dist/HttpClient/Proxy.js +5 -0
  69. package/dist/HttpClient/Proxy.js.map +1 -0
  70. package/dist/Logger/CliLogger.d.ts +35 -0
  71. package/dist/Logger/CliLogger.d.ts.map +1 -0
  72. package/dist/Logger/CliLogger.js +237 -0
  73. package/dist/Logger/CliLogger.js.map +1 -0
  74. package/dist/Logger/ConsoleWriter.d.ts +15 -0
  75. package/dist/Logger/ConsoleWriter.d.ts.map +1 -0
  76. package/dist/Logger/ConsoleWriter.js +45 -0
  77. package/dist/Logger/ConsoleWriter.js.map +1 -0
  78. package/dist/Logger/Constants.d.ts +6 -0
  79. package/dist/Logger/Constants.d.ts.map +1 -0
  80. package/dist/Logger/Constants.js +15 -0
  81. package/dist/Logger/Constants.js.map +1 -0
  82. package/dist/Logger/LoggerSettings.d.ts +19 -0
  83. package/dist/Logger/LoggerSettings.d.ts.map +1 -0
  84. package/dist/Logger/LoggerSettings.js +114 -0
  85. package/dist/Logger/LoggerSettings.js.map +1 -0
  86. package/dist/Logger/OneDSWriter.d.ts +22 -0
  87. package/dist/Logger/OneDSWriter.d.ts.map +1 -0
  88. package/dist/Logger/OneDSWriter.js +129 -0
  89. package/dist/Logger/OneDSWriter.js.map +1 -0
  90. package/dist/Logger/Scrubber/ScrubCustomDimensions.d.ts +5 -0
  91. package/dist/Logger/Scrubber/ScrubCustomDimensions.d.ts.map +1 -0
  92. package/dist/Logger/Scrubber/ScrubCustomDimensions.js +46 -0
  93. package/dist/Logger/Scrubber/ScrubCustomDimensions.js.map +1 -0
  94. package/dist/Logger/Scrubber/ScrubCustomDimensionsConfig.d.ts +27 -0
  95. package/dist/Logger/Scrubber/ScrubCustomDimensionsConfig.d.ts.map +1 -0
  96. package/dist/Logger/Scrubber/ScrubCustomDimensionsConfig.js +168 -0
  97. package/dist/Logger/Scrubber/ScrubCustomDimensionsConfig.js.map +1 -0
  98. package/dist/Logger/Scrubber/ScrubUtils.d.ts +8 -0
  99. package/dist/Logger/Scrubber/ScrubUtils.d.ts.map +1 -0
  100. package/dist/Logger/Scrubber/ScrubUtils.js +34 -0
  101. package/dist/Logger/Scrubber/ScrubUtils.js.map +1 -0
  102. package/dist/Types/Argument.types.d.ts +27 -0
  103. package/dist/Types/Argument.types.d.ts.map +1 -0
  104. package/dist/Types/Argument.types.js +5 -0
  105. package/dist/Types/Argument.types.js.map +1 -0
  106. package/dist/Types/Cli.types.d.ts +32 -0
  107. package/dist/Types/Cli.types.d.ts.map +1 -0
  108. package/dist/Types/Cli.types.js +5 -0
  109. package/dist/Types/Cli.types.js.map +1 -0
  110. package/dist/Types/Command.types.d.ts +52 -0
  111. package/dist/Types/Command.types.d.ts.map +1 -0
  112. package/dist/Types/Command.types.js +8 -0
  113. package/dist/Types/Command.types.js.map +1 -0
  114. package/dist/Types/Datasource.types.d.ts +43 -0
  115. package/dist/Types/Datasource.types.d.ts.map +1 -0
  116. package/dist/Types/Datasource.types.js +5 -0
  117. package/dist/Types/Datasource.types.js.map +1 -0
  118. package/dist/Types/LoggerTypes.types.d.ts +17 -0
  119. package/dist/Types/LoggerTypes.types.d.ts.map +1 -0
  120. package/dist/Types/LoggerTypes.types.js +5 -0
  121. package/dist/Types/LoggerTypes.types.js.map +1 -0
  122. package/dist/Utils/BuildVerbDescriptionTable.d.ts +19 -0
  123. package/dist/Utils/BuildVerbDescriptionTable.d.ts.map +1 -0
  124. package/dist/Utils/BuildVerbDescriptionTable.js +87 -0
  125. package/dist/Utils/BuildVerbDescriptionTable.js.map +1 -0
  126. package/dist/Utils/ConsoleOutput.d.ts +80 -0
  127. package/dist/Utils/ConsoleOutput.d.ts.map +1 -0
  128. package/dist/Utils/ConsoleOutput.js +151 -0
  129. package/dist/Utils/ConsoleOutput.js.map +1 -0
  130. package/dist/Utils/DetectPackageManager.d.ts +9 -0
  131. package/dist/Utils/DetectPackageManager.d.ts.map +1 -0
  132. package/dist/Utils/DetectPackageManager.js +24 -0
  133. package/dist/Utils/DetectPackageManager.js.map +1 -0
  134. package/dist/Utils/EnhanceNetworkError.d.ts +14 -0
  135. package/dist/Utils/EnhanceNetworkError.d.ts.map +1 -0
  136. package/dist/Utils/EnhanceNetworkError.js +59 -0
  137. package/dist/Utils/EnhanceNetworkError.js.map +1 -0
  138. package/dist/Utils/EnvVars.d.ts +17 -0
  139. package/dist/Utils/EnvVars.d.ts.map +1 -0
  140. package/dist/Utils/EnvVars.js +38 -0
  141. package/dist/Utils/EnvVars.js.map +1 -0
  142. package/dist/Utils/GitCredentialConfig.d.ts +12 -0
  143. package/dist/Utils/GitCredentialConfig.d.ts.map +1 -0
  144. package/dist/Utils/GitCredentialConfig.js +32 -0
  145. package/dist/Utils/GitCredentialConfig.js.map +1 -0
  146. package/dist/Utils/GitUtils.d.ts +22 -0
  147. package/dist/Utils/GitUtils.d.ts.map +1 -0
  148. package/dist/Utils/GitUtils.js +35 -0
  149. package/dist/Utils/GitUtils.js.map +1 -0
  150. package/dist/Utils/Paging.d.ts +23 -0
  151. package/dist/Utils/Paging.d.ts.map +1 -0
  152. package/dist/Utils/Paging.js +67 -0
  153. package/dist/Utils/Paging.js.map +1 -0
  154. package/dist/Utils/ReadPackageJson.d.ts +9 -0
  155. package/dist/Utils/ReadPackageJson.d.ts.map +1 -0
  156. package/dist/Utils/ReadPackageJson.js +13 -0
  157. package/dist/Utils/ReadPackageJson.js.map +1 -0
  158. package/dist/Utils/ResolveCommand.d.ts +26 -0
  159. package/dist/Utils/ResolveCommand.d.ts.map +1 -0
  160. package/dist/Utils/ResolveCommand.js +62 -0
  161. package/dist/Utils/ResolveCommand.js.map +1 -0
  162. package/dist/Utils/RunCommand.d.ts +13 -0
  163. package/dist/Utils/RunCommand.d.ts.map +1 -0
  164. package/dist/Utils/RunCommand.js +35 -0
  165. package/dist/Utils/RunCommand.js.map +1 -0
  166. package/dist/Utils/Spinner.d.ts +15 -0
  167. package/dist/Utils/Spinner.d.ts.map +1 -0
  168. package/dist/Utils/Spinner.js +71 -0
  169. package/dist/Utils/Spinner.js.map +1 -0
  170. package/dist/Utils/zipBuildArtifact.d.ts +35 -0
  171. package/dist/Utils/zipBuildArtifact.d.ts.map +1 -0
  172. package/dist/Utils/zipBuildArtifact.js +100 -0
  173. package/dist/Utils/zipBuildArtifact.js.map +1 -0
  174. package/dist/Verbs/AddAction.d.ts +6 -0
  175. package/dist/Verbs/AddAction.d.ts.map +1 -0
  176. package/dist/Verbs/AddAction.js +87 -0
  177. package/dist/Verbs/AddAction.js.map +1 -0
  178. package/dist/Verbs/AddDataSource.d.ts +19 -0
  179. package/dist/Verbs/AddDataSource.d.ts.map +1 -0
  180. package/dist/Verbs/AddDataSource.js +174 -0
  181. package/dist/Verbs/AddDataSource.js.map +1 -0
  182. package/dist/Verbs/AddFlow.d.ts +12 -0
  183. package/dist/Verbs/AddFlow.d.ts.map +1 -0
  184. package/dist/Verbs/AddFlow.js +67 -0
  185. package/dist/Verbs/AddFlow.js.map +1 -0
  186. package/dist/Verbs/AddTable.d.ts +6 -0
  187. package/dist/Verbs/AddTable.d.ts.map +1 -0
  188. package/dist/Verbs/AddTable.js +163 -0
  189. package/dist/Verbs/AddTable.js.map +1 -0
  190. package/dist/Verbs/AuthStatus.d.ts +6 -0
  191. package/dist/Verbs/AuthStatus.d.ts.map +1 -0
  192. package/dist/Verbs/AuthStatus.js +18 -0
  193. package/dist/Verbs/AuthStatus.js.map +1 -0
  194. package/dist/Verbs/BuildMaafApp.d.ts +6 -0
  195. package/dist/Verbs/BuildMaafApp.d.ts.map +1 -0
  196. package/dist/Verbs/BuildMaafApp.js +97 -0
  197. package/dist/Verbs/BuildMaafApp.js.map +1 -0
  198. package/dist/Verbs/ConnectorHelpers.d.ts +37 -0
  199. package/dist/Verbs/ConnectorHelpers.d.ts.map +1 -0
  200. package/dist/Verbs/ConnectorHelpers.js +116 -0
  201. package/dist/Verbs/ConnectorHelpers.js.map +1 -0
  202. package/dist/Verbs/CreateMaafApp.d.ts +25 -0
  203. package/dist/Verbs/CreateMaafApp.d.ts.map +1 -0
  204. package/dist/Verbs/CreateMaafApp.js +565 -0
  205. package/dist/Verbs/CreateMaafApp.js.map +1 -0
  206. package/dist/Verbs/DeleteDataSource.d.ts +6 -0
  207. package/dist/Verbs/DeleteDataSource.d.ts.map +1 -0
  208. package/dist/Verbs/DeleteDataSource.js +106 -0
  209. package/dist/Verbs/DeleteDataSource.js.map +1 -0
  210. package/dist/Verbs/DeleteMaafApp.d.ts +23 -0
  211. package/dist/Verbs/DeleteMaafApp.d.ts.map +1 -0
  212. package/dist/Verbs/DeleteMaafApp.js +99 -0
  213. package/dist/Verbs/DeleteMaafApp.js.map +1 -0
  214. package/dist/Verbs/DeployMaafApp.d.ts +6 -0
  215. package/dist/Verbs/DeployMaafApp.d.ts.map +1 -0
  216. package/dist/Verbs/DeployMaafApp.js +96 -0
  217. package/dist/Verbs/DeployMaafApp.js.map +1 -0
  218. package/dist/Verbs/Dev.d.ts +6 -0
  219. package/dist/Verbs/Dev.d.ts.map +1 -0
  220. package/dist/Verbs/Dev.js +214 -0
  221. package/dist/Verbs/Dev.js.map +1 -0
  222. package/dist/Verbs/FindDataverseApi.d.ts +12 -0
  223. package/dist/Verbs/FindDataverseApi.d.ts.map +1 -0
  224. package/dist/Verbs/FindDataverseApi.js +101 -0
  225. package/dist/Verbs/FindDataverseApi.js.map +1 -0
  226. package/dist/Verbs/GetMaafApp.d.ts +6 -0
  227. package/dist/Verbs/GetMaafApp.d.ts.map +1 -0
  228. package/dist/Verbs/GetMaafApp.js +60 -0
  229. package/dist/Verbs/GetMaafApp.js.map +1 -0
  230. package/dist/Verbs/GetMaafBuildStatus.d.ts +6 -0
  231. package/dist/Verbs/GetMaafBuildStatus.d.ts.map +1 -0
  232. package/dist/Verbs/GetMaafBuildStatus.js +68 -0
  233. package/dist/Verbs/GetMaafBuildStatus.js.map +1 -0
  234. package/dist/Verbs/GetSettings.d.ts +12 -0
  235. package/dist/Verbs/GetSettings.d.ts.map +1 -0
  236. package/dist/Verbs/GetSettings.js +48 -0
  237. package/dist/Verbs/GetSettings.js.map +1 -0
  238. package/dist/Verbs/Init.d.ts +6 -0
  239. package/dist/Verbs/Init.d.ts.map +1 -0
  240. package/dist/Verbs/Init.js +172 -0
  241. package/dist/Verbs/Init.js.map +1 -0
  242. package/dist/Verbs/ListConnectionReferences.d.ts +6 -0
  243. package/dist/Verbs/ListConnectionReferences.d.ts.map +1 -0
  244. package/dist/Verbs/ListConnectionReferences.js +70 -0
  245. package/dist/Verbs/ListConnectionReferences.js.map +1 -0
  246. package/dist/Verbs/ListConnectorActions.d.ts +6 -0
  247. package/dist/Verbs/ListConnectorActions.d.ts.map +1 -0
  248. package/dist/Verbs/ListConnectorActions.js +79 -0
  249. package/dist/Verbs/ListConnectorActions.js.map +1 -0
  250. package/dist/Verbs/ListConnectors.d.ts +6 -0
  251. package/dist/Verbs/ListConnectors.d.ts.map +1 -0
  252. package/dist/Verbs/ListConnectors.js +66 -0
  253. package/dist/Verbs/ListConnectors.js.map +1 -0
  254. package/dist/Verbs/ListDatasets.d.ts +6 -0
  255. package/dist/Verbs/ListDatasets.d.ts.map +1 -0
  256. package/dist/Verbs/ListDatasets.js +83 -0
  257. package/dist/Verbs/ListDatasets.js.map +1 -0
  258. package/dist/Verbs/ListEnvironmentVariables.d.ts +14 -0
  259. package/dist/Verbs/ListEnvironmentVariables.d.ts.map +1 -0
  260. package/dist/Verbs/ListEnvironmentVariables.js +66 -0
  261. package/dist/Verbs/ListEnvironmentVariables.js.map +1 -0
  262. package/dist/Verbs/ListFlows.d.ts +13 -0
  263. package/dist/Verbs/ListFlows.d.ts.map +1 -0
  264. package/dist/Verbs/ListFlows.js +88 -0
  265. package/dist/Verbs/ListFlows.js.map +1 -0
  266. package/dist/Verbs/ListMaafApps.d.ts +71 -0
  267. package/dist/Verbs/ListMaafApps.d.ts.map +1 -0
  268. package/dist/Verbs/ListMaafApps.js +168 -0
  269. package/dist/Verbs/ListMaafApps.js.map +1 -0
  270. package/dist/Verbs/ListSqlStoredProcedures.d.ts +6 -0
  271. package/dist/Verbs/ListSqlStoredProcedures.d.ts.map +1 -0
  272. package/dist/Verbs/ListSqlStoredProcedures.js +84 -0
  273. package/dist/Verbs/ListSqlStoredProcedures.js.map +1 -0
  274. package/dist/Verbs/ListTables.d.ts +6 -0
  275. package/dist/Verbs/ListTables.d.ts.map +1 -0
  276. package/dist/Verbs/ListTables.js +95 -0
  277. package/dist/Verbs/ListTables.js.map +1 -0
  278. package/dist/Verbs/Login.d.ts +6 -0
  279. package/dist/Verbs/Login.d.ts.map +1 -0
  280. package/dist/Verbs/Login.js +28 -0
  281. package/dist/Verbs/Login.js.map +1 -0
  282. package/dist/Verbs/Logout.d.ts +6 -0
  283. package/dist/Verbs/Logout.d.ts.map +1 -0
  284. package/dist/Verbs/Logout.js +28 -0
  285. package/dist/Verbs/Logout.js.map +1 -0
  286. package/dist/Verbs/MaafAppPermissions.d.ts +23 -0
  287. package/dist/Verbs/MaafAppPermissions.d.ts.map +1 -0
  288. package/dist/Verbs/MaafAppPermissions.js +278 -0
  289. package/dist/Verbs/MaafAppPermissions.js.map +1 -0
  290. package/dist/Verbs/Pack.d.ts +38 -0
  291. package/dist/Verbs/Pack.d.ts.map +1 -0
  292. package/dist/Verbs/Pack.js +106 -0
  293. package/dist/Verbs/Pack.js.map +1 -0
  294. package/dist/Verbs/PushMaafApp.d.ts +6 -0
  295. package/dist/Verbs/PushMaafApp.d.ts.map +1 -0
  296. package/dist/Verbs/PushMaafApp.js +145 -0
  297. package/dist/Verbs/PushMaafApp.js.map +1 -0
  298. package/dist/Verbs/RefreshDataSource.d.ts +6 -0
  299. package/dist/Verbs/RefreshDataSource.d.ts.map +1 -0
  300. package/dist/Verbs/RefreshDataSource.js +72 -0
  301. package/dist/Verbs/RefreshDataSource.js.map +1 -0
  302. package/dist/Verbs/RemoveFlow.d.ts +12 -0
  303. package/dist/Verbs/RemoveFlow.d.ts.map +1 -0
  304. package/dist/Verbs/RemoveFlow.js +99 -0
  305. package/dist/Verbs/RemoveFlow.js.map +1 -0
  306. package/dist/Verbs/SetSetting.d.ts +12 -0
  307. package/dist/Verbs/SetSetting.d.ts.map +1 -0
  308. package/dist/Verbs/SetSetting.js +142 -0
  309. package/dist/Verbs/SetSetting.js.map +1 -0
  310. package/dist/Verbs/ShareMaafApp.d.ts +12 -0
  311. package/dist/Verbs/ShareMaafApp.d.ts.map +1 -0
  312. package/dist/Verbs/ShareMaafApp.js +14 -0
  313. package/dist/Verbs/ShareMaafApp.js.map +1 -0
  314. package/dist/Verbs/ShowMaafApp.d.ts +94 -0
  315. package/dist/Verbs/ShowMaafApp.d.ts.map +1 -0
  316. package/dist/Verbs/ShowMaafApp.js +216 -0
  317. package/dist/Verbs/ShowMaafApp.js.map +1 -0
  318. package/dist/Verbs/TelemetrySettings.d.ts +8 -0
  319. package/dist/Verbs/TelemetrySettings.d.ts.map +1 -0
  320. package/dist/Verbs/TelemetrySettings.js +104 -0
  321. package/dist/Verbs/TelemetrySettings.js.map +1 -0
  322. package/dist/Verbs/UnshareMaafApp.d.ts +12 -0
  323. package/dist/Verbs/UnshareMaafApp.d.ts.map +1 -0
  324. package/dist/Verbs/UnshareMaafApp.js +14 -0
  325. package/dist/Verbs/UnshareMaafApp.js.map +1 -0
  326. package/dist/Verbs/VerbConstants.d.ts +433 -0
  327. package/dist/Verbs/VerbConstants.d.ts.map +1 -0
  328. package/dist/Verbs/VerbConstants.js +403 -0
  329. package/dist/Verbs/VerbConstants.js.map +1 -0
  330. package/dist/Verbs/index.d.ts +40 -0
  331. package/dist/Verbs/index.d.ts.map +1 -0
  332. package/dist/Verbs/index.js +40 -0
  333. package/dist/Verbs/index.js.map +1 -0
  334. package/package.json +43 -3
@@ -0,0 +1,168 @@
1
+ /*!
2
+ * Copyright (C) Microsoft Corporation. All rights reserved.
3
+ */
4
+ import { listAsync } from '@microsoft/apps-actions';
5
+ import { getCliLogger } from '../CliSettings.js';
6
+ import { createDefaultStringOption, extractEnvironmentId } from '../CliUtils.js';
7
+ import { HelpStrings } from '../Constants/HelpStrings.js';
8
+ import { UsageError } from '../Errors/CliError.js';
9
+ import { printJsonSuccessList, printTable } from '../Utils/ConsoleOutput.js';
10
+ import { ListMaafAppsArguments } from './VerbConstants.js';
11
+ /**
12
+ * Default permission filter for `ms app list`. Matches the developer-CLI surface —
13
+ * apps the authenticated user can contribute to. The CLI owns this policy decision;
14
+ * the underlying `listAsync` action requires a permission to be supplied explicitly.
15
+ */
16
+ const DEFAULT_LIST_PERMISSION = 'write';
17
+ /**
18
+ * Allowlist of accepted `--permission` CLI values, in the order surfaced in the help
19
+ * text and the "must be one of" error message.
20
+ *
21
+ * The action layer's `MaafListPermission` type is the canonical alphabet ('read'/'write');
22
+ * the CLI applies case-insensitive matching for friendliness and passes the value through
23
+ * unchanged. The Swagger-string mapping lives inside `PowerAppsRpService` so it does not
24
+ * leak across the package boundary.
25
+ */
26
+ const VALID_PERMISSIONS = ['write', 'read'];
27
+ /**
28
+ * Implements `ms app list`: prints MAAF apps the authenticated caller can access.
29
+ *
30
+ * Scope:
31
+ * - Default (no `--environment-id`): every app the user can access across the tenant.
32
+ * - With `--environment-id <id>`: apps in the specified environment only.
33
+ *
34
+ * Permission filter (`--permission`) is optional and defaults to `write` (the
35
+ * developer-contributor surface). Passing `read` switches to the play/read surface.
36
+ *
37
+ * Pipeline:
38
+ * 1. Register description / examples / options and run the verb (so `--help` works without auth).
39
+ * 2. Resolve `tenantId` from the active auth context.
40
+ * 3. Read `--environment-id` / `--permission`, normalising and validating user input.
41
+ * 4. Fetch all pages via the `listAsync` action (pagination is handled inside the action).
42
+ * 5. Emit JSON when `--json` is set, otherwise a three-column table.
43
+ *
44
+ * Note: when the tenant feature gate `EnableMaafTenantAppListing` is closed, the
45
+ * tenant-scoped server endpoint returns an empty list; the human view falls through to
46
+ * the standard "No MAAF apps found." message, matching the spec's intentional
47
+ * indistinguishability from a genuinely empty tenant.
48
+ */
49
+ export async function listMaafAppsAsync(argumentProvider) {
50
+ createOptionSchema(argumentProvider);
51
+ await argumentProvider.runVerb();
52
+ const tenantId = await argumentProvider.getTenantIdAsync();
53
+ if (!tenantId) {
54
+ throw new UsageError('Unable to determine tenant ID. Ensure you are logged in.');
55
+ }
56
+ const environmentIdRaw = await argumentProvider.getOption(ListMaafAppsArguments.EnvironmentId.name, true);
57
+ // Accept either a short env id (e.g. `default-91bee3d9-…`) or a full ARM resource path
58
+ // and normalise to the short id; consistent with how other verbs handle env input.
59
+ const environmentId = environmentIdRaw ? extractEnvironmentId(environmentIdRaw) : undefined;
60
+ const permissionRaw = await argumentProvider.getOption(ListMaafAppsArguments.Permission.name, true);
61
+ const permission = resolvePermission(permissionRaw);
62
+ const apps = await listAsync({
63
+ tenantId,
64
+ environmentId,
65
+ permission,
66
+ logger: getCliLogger(),
67
+ });
68
+ const rows = apps.map(toRow);
69
+ if (argumentProvider.isJsonMode()) {
70
+ printJsonSuccessList(rows);
71
+ return;
72
+ }
73
+ printTable({
74
+ title: environmentId ? `Microsoft Apps (environment: ${environmentId})` : 'Microsoft Apps',
75
+ columns: [
76
+ { header: 'App ID', maxWidth: 38 },
77
+ { header: 'Display Name' },
78
+ { header: 'Last Modified' },
79
+ ],
80
+ rows: rows.map((row) => [
81
+ row.appId,
82
+ row.displayName || '<No Name>',
83
+ formatLastModified(row.lastModifiedTime),
84
+ ]),
85
+ emptyMessage: 'No MAAF apps found.',
86
+ totalLabel: 'MAAF app(s) found',
87
+ });
88
+ }
89
+ /**
90
+ * Registers the verb's help text, examples, and `--environment-id` / `--permission`
91
+ * options on the supplied argument provider. Kept as a separate function (matching
92
+ * sibling verbs like `ListConnectors`) so the option schema is testable in isolation
93
+ * via `MockArgumentProvider.addOptions` spy assertions if needed.
94
+ */
95
+ function createOptionSchema(argumentProvider) {
96
+ argumentProvider.setDescription(HelpStrings.app.list.description);
97
+ argumentProvider.addExamples(HelpStrings.app.list.examples);
98
+ argumentProvider.addOptions([
99
+ createDefaultStringOption({
100
+ flags: {
101
+ key: ListMaafAppsArguments.EnvironmentId.name,
102
+ alias: ListMaafAppsArguments.EnvironmentId.alias,
103
+ },
104
+ env: ListMaafAppsArguments.EnvironmentId.envVar,
105
+ message: ListMaafAppsArguments.EnvironmentId.promptMessage,
106
+ description: HelpStrings.app.list.options.environmentId,
107
+ }),
108
+ createDefaultStringOption({
109
+ flags: {
110
+ key: ListMaafAppsArguments.Permission.name,
111
+ alias: ListMaafAppsArguments.Permission.alias,
112
+ },
113
+ env: ListMaafAppsArguments.Permission.envVar,
114
+ message: ListMaafAppsArguments.Permission.promptMessage,
115
+ description: HelpStrings.app.list.options.permission,
116
+ }),
117
+ ]);
118
+ }
119
+ /**
120
+ * Validates a raw `--permission` CLI value against the {@link MaafListPermission} alphabet.
121
+ *
122
+ * Accepts `read` / `write` case-insensitively and returns the canonical lower-case form.
123
+ * When the flag is absent (or supplied as an empty string), the default
124
+ * ({@link DEFAULT_LIST_PERMISSION}, i.e. `write`) is applied here — the underlying action
125
+ * never substitutes a default.
126
+ *
127
+ * Throws a {@link UsageError} with a clear "must be one of …" message when the user
128
+ * supplies a value that isn't one of the accepted permissions (rather than passing it
129
+ * through and letting the server reject the eventual Swagger-enum value with an opaque 400).
130
+ *
131
+ * Exported for tests.
132
+ */
133
+ export function resolvePermission(raw) {
134
+ if (!raw)
135
+ return DEFAULT_LIST_PERMISSION;
136
+ const lowered = raw.toLowerCase();
137
+ const matched = VALID_PERMISSIONS.find((p) => p === lowered);
138
+ if (matched)
139
+ return matched;
140
+ throw new UsageError(`Invalid --permission value '${raw}'. Must be one of: ${VALID_PERMISSIONS.join(', ')}.`);
141
+ }
142
+ /**
143
+ * Projects a server-side `MaafAppListItem` payload into the minimal {@link ListMaafAppRow} shape.
144
+ *
145
+ * Note the wire's `lastModifiedTime` may be `null` (explicitly set on apps that have never
146
+ * been deployed); we coerce `null` to `undefined` so downstream rendering can use a single
147
+ * `string | undefined` contract.
148
+ */
149
+ export function toRow(app) {
150
+ return {
151
+ appId: app.id,
152
+ displayName: app.displayName,
153
+ lastModifiedTime: app.lastModifiedTime ?? undefined,
154
+ };
155
+ }
156
+ /**
157
+ * Renders an optional ISO timestamp for the "Last Modified" table cell. Returns `'-'`
158
+ * when the field is absent (apps that have never been deployed) and the raw input
159
+ * when it can't be parsed as a date — the table is display-only, never used for I/O,
160
+ * so a non-parseable value is preferable to silently dropping data.
161
+ */
162
+ function formatLastModified(iso) {
163
+ if (!iso)
164
+ return '-';
165
+ const d = new Date(iso);
166
+ return Number.isNaN(d.getTime()) ? iso : d.toLocaleDateString();
167
+ }
168
+ //# sourceMappingURL=ListMaafApps.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ListMaafApps.js","sourceRoot":"","sources":["../../src/Verbs/ListMaafApps.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ /*!
2
+ * Copyright (C) Microsoft Corporation. All rights reserved.
3
+ */
4
+ import type { ArgumentProvider } from '../ArgumentProvider.js';
5
+ export declare function listSqlStoredProceduresAsync(argumentProvider: ArgumentProvider): Promise<void>;
6
+ //# sourceMappingURL=ListSqlStoredProcedures.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ListSqlStoredProcedures.d.ts","sourceRoot":"","sources":["../../src/Verbs/ListSqlStoredProcedures.ts"],"names":[],"mappings":"AAAA;;GAEG;AAQH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAQ5D,wBAAsB,4BAA4B,CAChD,gBAAgB,EAAE,gBAAgB,GACjC,OAAO,CAAC,IAAI,CAAC,CAwDf"}
@@ -0,0 +1,84 @@
1
+ /*!
2
+ * Copyright (C) Microsoft Corporation. All rights reserved.
3
+ */
4
+ import { getPlayerServiceConfig, listSqlStoredProceduresAsync as listSqlStoredProceduresActionAsync, } from '@microsoft/apps-actions';
5
+ import { getCliLogger, getSettings } from '../CliSettings.js';
6
+ import { createDefaultStringOption } from '../CliUtils.js';
7
+ import { HelpStrings } from '../Constants/HelpStrings.js';
8
+ import { CliFS } from '../FS/CliFs.js';
9
+ import { printJsonSuccessList, printTable } from '../Utils/ConsoleOutput.js';
10
+ import { ConnectionArguments, SharedArguments } from './VerbConstants.js';
11
+ export async function listSqlStoredProceduresAsync(argumentProvider) {
12
+ const settings = getSettings();
13
+ const { fileConfig } = settings;
14
+ createOptionSchema(argumentProvider);
15
+ await argumentProvider.runVerb();
16
+ const cliFs = new CliFS({
17
+ cwd: process.cwd(),
18
+ allowCwdRead: true,
19
+ allowCwdWrite: true,
20
+ });
21
+ const playerServiceConfig = getPlayerServiceConfig();
22
+ // Use the already initialized authentication provider from ArgumentProvider
23
+ const authenticationProvider = argumentProvider.getAuthenticationProvider();
24
+ const dsConfig = {
25
+ vfs: cliFs,
26
+ authProvider: authenticationProvider,
27
+ region: playerServiceConfig.region,
28
+ environmentName: playerServiceConfig.environmentName,
29
+ actionsParams: {
30
+ connectionId: await argumentProvider.getOption('connection'),
31
+ dataset: await argumentProvider.getOption('dataset'),
32
+ },
33
+ localFilePaths: {
34
+ appConfigPath: fileConfig.appConfigPath,
35
+ schemaPath: fileConfig.schemaPath,
36
+ codeGenPath: fileConfig.codeGenPath,
37
+ },
38
+ logger: getCliLogger(),
39
+ };
40
+ const storedProcedures = await listSqlStoredProceduresActionAsync(dsConfig);
41
+ if (argumentProvider.isJsonMode()) {
42
+ printJsonSuccessList(storedProcedures?.value ?? []);
43
+ return;
44
+ }
45
+ if (!storedProcedures?.value) {
46
+ return;
47
+ }
48
+ printTable({
49
+ title: 'Stored Procedures',
50
+ metadata: [
51
+ `Dataset: ${dsConfig.actionsParams.dataset}`,
52
+ `Connection: ${dsConfig.actionsParams.connectionId}`,
53
+ ],
54
+ columns: [{ header: 'Display Name' }, { header: 'Name' }],
55
+ rows: storedProcedures.value.map((sp) => [sp.DisplayName || '<No Display Name>', sp.Name]),
56
+ emptyMessage: 'No stored procedures found.',
57
+ totalLabel: 'stored procedure(s) found',
58
+ });
59
+ }
60
+ function createOptionSchema(argumentProvider) {
61
+ argumentProvider.setDescription(HelpStrings.deprecated.Verbs['List-sqlStoredProcedures'].Description);
62
+ argumentProvider.addExamples(HelpStrings.deprecated.Verbs['List-sqlStoredProcedures'].Examples);
63
+ argumentProvider.addOptions([
64
+ createDefaultStringOption({
65
+ flags: {
66
+ key: ConnectionArguments.Connection.name,
67
+ alias: ConnectionArguments.Connection.alias,
68
+ },
69
+ env: ConnectionArguments.Connection.envVar,
70
+ message: ConnectionArguments.Connection.promptMessage,
71
+ description: HelpStrings.deprecated.Verbs['List-sqlStoredProcedures'].Options.Connection,
72
+ }),
73
+ createDefaultStringOption({
74
+ flags: {
75
+ key: SharedArguments.Dataset.name,
76
+ alias: SharedArguments.Dataset.alias,
77
+ },
78
+ env: SharedArguments.Dataset.envVar,
79
+ message: SharedArguments.Dataset.promptMessage,
80
+ description: HelpStrings.deprecated.Verbs['List-sqlStoredProcedures'].Options.Dataset,
81
+ }),
82
+ ]);
83
+ }
84
+ //# sourceMappingURL=ListSqlStoredProcedures.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ListSqlStoredProcedures.js","sourceRoot":"","sources":["../../src/Verbs/ListSqlStoredProcedures.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ /*!
2
+ * Copyright (C) Microsoft Corporation. All rights reserved.
3
+ */
4
+ import type { ArgumentProvider } from '../ArgumentProvider.js';
5
+ export declare function listTablesAsync(argumentProvider: ArgumentProvider): Promise<void>;
6
+ //# sourceMappingURL=ListTables.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ListTables.d.ts","sourceRoot":"","sources":["../../src/Verbs/ListTables.ts"],"names":[],"mappings":"AAAA;;GAEG;AAQH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAQ5D,wBAAsB,eAAe,CAAC,gBAAgB,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CA0DvF"}
@@ -0,0 +1,95 @@
1
+ /*!
2
+ * Copyright (C) Microsoft Corporation. All rights reserved.
3
+ */
4
+ import { getPlayerServiceConfig, listTablesAsync as listTablesActionAsync, } from '@microsoft/apps-actions';
5
+ import { getCliLogger, getSettings } from '../CliSettings.js';
6
+ import { createDefaultStringOption } from '../CliUtils.js';
7
+ import { HelpStrings } from '../Constants/HelpStrings.js';
8
+ import { CliFS } from '../FS/CliFs.js';
9
+ import { printJsonSuccessList, printTable } from '../Utils/ConsoleOutput.js';
10
+ import { ConnectionArguments, SharedArguments } from './VerbConstants.js';
11
+ export async function listTablesAsync(argumentProvider) {
12
+ const settings = getSettings();
13
+ const { fileConfig } = settings;
14
+ createOptionSchema(argumentProvider);
15
+ await argumentProvider.runVerb();
16
+ const cliFs = new CliFS({
17
+ cwd: process.cwd(),
18
+ allowCwdRead: true,
19
+ allowCwdWrite: true,
20
+ });
21
+ const playerServiceConfig = getPlayerServiceConfig();
22
+ // Use the already initialized authentication provider from ArgumentProvider
23
+ const authenticationProvider = argumentProvider.getAuthenticationProvider();
24
+ const dsConfig = {
25
+ vfs: cliFs,
26
+ authProvider: authenticationProvider,
27
+ region: playerServiceConfig.region,
28
+ environmentName: playerServiceConfig.environmentName,
29
+ actionsParams: {
30
+ apiId: await argumentProvider.getOption('connector'),
31
+ connectionId: await argumentProvider.getOption('connection'),
32
+ dataset: await argumentProvider.getOption('dataset'),
33
+ },
34
+ localFilePaths: {
35
+ appConfigPath: fileConfig.appConfigPath,
36
+ schemaPath: fileConfig.schemaPath,
37
+ codeGenPath: fileConfig.codeGenPath,
38
+ },
39
+ logger: getCliLogger(),
40
+ };
41
+ const tables = await listTablesActionAsync(dsConfig);
42
+ if (argumentProvider.isJsonMode()) {
43
+ printJsonSuccessList(tables?.value ?? []);
44
+ return;
45
+ }
46
+ if (!tables?.value) {
47
+ return;
48
+ }
49
+ printTable({
50
+ title: 'Tables',
51
+ metadata: [
52
+ `Dataset: ${dsConfig.actionsParams.dataset}`,
53
+ `Connector: ${dsConfig.actionsParams.apiId}`,
54
+ `Connection: ${dsConfig.actionsParams.connectionId}`,
55
+ ],
56
+ columns: [{ header: 'Display Name' }, { header: 'Name' }],
57
+ rows: tables.value.map((table) => [table.DisplayName || '<No Display Name>', table.Name]),
58
+ emptyMessage: 'No tables found.',
59
+ totalLabel: 'table(s) found',
60
+ });
61
+ }
62
+ function createOptionSchema(argumentProvider) {
63
+ argumentProvider.setDescription(HelpStrings.deprecated.Verbs['List-tables'].Description);
64
+ argumentProvider.addExamples(HelpStrings.deprecated.Verbs['List-tables'].Examples);
65
+ argumentProvider.addOptions([
66
+ createDefaultStringOption({
67
+ flags: {
68
+ key: ConnectionArguments.Connector.name,
69
+ alias: ConnectionArguments.Connector.alias,
70
+ },
71
+ env: ConnectionArguments.Connector.envVar,
72
+ message: ConnectionArguments.Connector.promptMessage,
73
+ description: HelpStrings.deprecated.Verbs['List-tables'].Options.Connector,
74
+ }),
75
+ createDefaultStringOption({
76
+ flags: {
77
+ key: ConnectionArguments.Connection.name,
78
+ alias: ConnectionArguments.Connection.alias,
79
+ },
80
+ env: ConnectionArguments.Connection.envVar,
81
+ message: ConnectionArguments.Connection.promptMessage,
82
+ description: HelpStrings.deprecated.Verbs['List-tables'].Options.Connection,
83
+ }),
84
+ createDefaultStringOption({
85
+ flags: {
86
+ key: SharedArguments.Dataset.name,
87
+ alias: SharedArguments.Dataset.alias,
88
+ },
89
+ env: SharedArguments.Dataset.envVar,
90
+ message: SharedArguments.Dataset.promptMessage,
91
+ description: HelpStrings.deprecated.Verbs['List-tables'].Options.Dataset,
92
+ }),
93
+ ]);
94
+ }
95
+ //# sourceMappingURL=ListTables.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ListTables.js","sourceRoot":"","sources":["../../src/Verbs/ListTables.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ /*!
2
+ * Copyright (C) Microsoft Corporation. All rights reserved.
3
+ */
4
+ import type { ArgumentProvider } from '../ArgumentProvider.js';
5
+ export declare function loginAsync(argumentProvider: ArgumentProvider): Promise<void>;
6
+ //# sourceMappingURL=Login.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Login.d.ts","sourceRoot":"","sources":["../../src/Verbs/Login.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAK5D,wBAAsB,UAAU,CAAC,gBAAgB,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAuBlF"}
@@ -0,0 +1,28 @@
1
+ /*!
2
+ * Copyright (C) Microsoft Corporation. All rights reserved.
3
+ */
4
+ import { HelpStrings } from '../Constants/HelpStrings.js';
5
+ import { printInfo, printSuccess } from '../Utils/ConsoleOutput.js';
6
+ import { LoginArguments } from './VerbConstants.js';
7
+ export async function loginAsync(argumentProvider) {
8
+ argumentProvider.setDescription(HelpStrings.auth.login.description);
9
+ argumentProvider.addExamples(HelpStrings.auth.login.examples);
10
+ argumentProvider.addOption({
11
+ flags: { key: LoginArguments.Hint.name },
12
+ description: HelpStrings.auth.login.options.hint,
13
+ optionalInNonInteractive: true,
14
+ });
15
+ await argumentProvider.runVerb();
16
+ const authProvider = argumentProvider.getAuthenticationProvider();
17
+ const resource = argumentProvider.getAuthResourceUrl();
18
+ const hint = await argumentProvider.getOption(LoginArguments.Hint.name, true);
19
+ await authProvider.getAccessTokenForResource(resource, hint);
20
+ const email = await authProvider.getCachedAccountAsync();
21
+ if (email) {
22
+ printSuccess(`Signed in as ${email}`);
23
+ }
24
+ else {
25
+ printInfo('Signed in successfully.');
26
+ }
27
+ }
28
+ //# sourceMappingURL=Login.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Login.js","sourceRoot":"","sources":["../../src/Verbs/Login.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEjD,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,gBAAkC;IACjE,gBAAgB,CAAC,cAAc,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IACpE,gBAAgB,CAAC,WAAW,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAC9D,gBAAgB,CAAC,SAAS,CAAC;QACzB,KAAK,EAAE,EAAE,GAAG,EAAE,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE;QACxC,WAAW,EAAE,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI;QAChD,wBAAwB,EAAE,IAAI;KAC/B,CAAC,CAAC;IAEH,MAAM,gBAAgB,CAAC,OAAO,EAAE,CAAC;IAEjC,MAAM,YAAY,GAAG,gBAAgB,CAAC,yBAAyB,EAAE,CAAC;IAClE,MAAM,QAAQ,GAAG,gBAAgB,CAAC,kBAAkB,EAAE,CAAC;IACvD,MAAM,IAAI,GAAG,MAAM,gBAAgB,CAAC,SAAS,CAAS,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAEtF,MAAM,YAAY,CAAC,yBAAyB,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IAE7D,MAAM,KAAK,GAAG,MAAM,YAAY,CAAC,qBAAqB,EAAE,CAAC;IACzD,IAAI,KAAK,EAAE,CAAC;QACV,YAAY,CAAC,gBAAgB,KAAK,EAAE,CAAC,CAAC;IACxC,CAAC;SAAM,CAAC;QACN,SAAS,CAAC,yBAAyB,CAAC,CAAC;IACvC,CAAC;AACH,CAAC"}
@@ -0,0 +1,6 @@
1
+ /*!
2
+ * Copyright (C) Microsoft Corporation. All rights reserved.
3
+ */
4
+ import type { ArgumentProvider } from '../ArgumentProvider.js';
5
+ export declare function logoutAsync(argumentProvider: ArgumentProvider): Promise<void>;
6
+ //# sourceMappingURL=Logout.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Logout.d.ts","sourceRoot":"","sources":["../../src/Verbs/Logout.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAK5D,wBAAsB,WAAW,CAAC,gBAAgB,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAsBnF"}
@@ -0,0 +1,28 @@
1
+ /*!
2
+ * Copyright (C) Microsoft Corporation. All rights reserved.
3
+ */
4
+ import * as fs from 'fs';
5
+ import { AUTH_CACHE_DIRECTORY } from '../Constants.js';
6
+ import { HelpStrings } from '../Constants/HelpStrings.js';
7
+ import { printError, printInfo, printSuccess, printWarning } from '../Utils/ConsoleOutput.js';
8
+ export async function logoutAsync(argumentProvider) {
9
+ argumentProvider.setDescription(HelpStrings.auth.logout.description);
10
+ argumentProvider.addExamples(HelpStrings.auth.logout.examples);
11
+ await argumentProvider.runVerb();
12
+ const cacheDir = AUTH_CACHE_DIRECTORY;
13
+ try {
14
+ if (fs.existsSync(cacheDir)) {
15
+ fs.rmSync(cacheDir, { recursive: true, force: true });
16
+ printSuccess('Successfully logged out. Cached credentials have been cleared.');
17
+ printInfo('On next command, you will be prompted to sign in via the browser. If your browser has a single account session, it will be used automatically.');
18
+ }
19
+ else {
20
+ printWarning('No user found.');
21
+ }
22
+ }
23
+ catch (error) {
24
+ printError(`Failed to log out the user: ${error.message}`);
25
+ throw error;
26
+ }
27
+ }
28
+ //# sourceMappingURL=Logout.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Logout.js","sourceRoot":"","sources":["../../src/Verbs/Logout.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AAGzB,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAE3F,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,gBAAkC;IAClE,gBAAgB,CAAC,cAAc,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IACrE,gBAAgB,CAAC,WAAW,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAE/D,MAAM,gBAAgB,CAAC,OAAO,EAAE,CAAC;IAEjC,MAAM,QAAQ,GAAG,oBAAoB,CAAC;IAEtC,IAAI,CAAC;QACH,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC5B,EAAE,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;YACtD,YAAY,CAAC,gEAAgE,CAAC,CAAC;YAC/E,SAAS,CACP,gJAAgJ,CACjJ,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,YAAY,CAAC,gBAAgB,CAAC,CAAC;QACjC,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,UAAU,CAAC,+BAAgC,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;QACtE,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC"}
@@ -0,0 +1,23 @@
1
+ /*!
2
+ * Copyright (C) Microsoft Corporation. All rights reserved.
3
+ */
4
+ import type { ArgumentProvider } from '../ArgumentProvider.js';
5
+ /** Selects between the share (put) and unshare (delete) execution paths. */
6
+ export type MaafAppPermissionsMode = 'share' | 'unshare';
7
+ /**
8
+ * Implements `ms app share` and `ms app unshare` — adds or removes the
9
+ * `Microsoft App Reader` role for AAD principals (users or groups) at the app
10
+ * scope.
11
+ *
12
+ * Pipeline:
13
+ * 1. Register option schema for the chosen mode and run the verb (so `--help`
14
+ * works outside an init'd project).
15
+ * 2. Require a loaded `ms.config.json`.
16
+ * 3. Resolve `environmentId` (`--environment-id` flag wins; otherwise from config) and tenantId.
17
+ * 4. Read the comma-separated principals positional; resolve email-shaped inputs
18
+ * to AAD object ids via Graph, pass GUID-shaped inputs through unchanged.
19
+ * 5. Call `modifyPermissionsAsync` with `put` or `delete` populated based on
20
+ * `mode`, then emit JSON or a human summary.
21
+ */
22
+ export declare function executeMaafAppPermissionsAsync(argumentProvider: ArgumentProvider, mode: MaafAppPermissionsMode): Promise<void>;
23
+ //# sourceMappingURL=MaafAppPermissions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MaafAppPermissions.d.ts","sourceRoot":"","sources":["../../src/Verbs/MaafAppPermissions.ts"],"names":[],"mappings":"AAAA;;GAEG;AAeH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAS5D,4EAA4E;AAC5E,MAAM,MAAM,sBAAsB,GAAG,OAAO,GAAG,SAAS,CAAC;AAuBzD;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,8BAA8B,CAClD,gBAAgB,EAAE,gBAAgB,EAClC,IAAI,EAAE,sBAAsB,GAC3B,OAAO,CAAC,IAAI,CAAC,CAyGf"}