@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,106 @@
1
+ /*!
2
+ * Copyright (C) Microsoft Corporation. All rights reserved.
3
+ */
4
+ import { deleteDataSourceAsync as deleteDataSourceActionAsync, getPlayerServiceConfig, } from '@microsoft/apps-actions';
5
+ import { getCliLogger, getSettings } from '../CliSettings.js';
6
+ import { createDefaultStringOption, promptConfirm, promptText } from '../CliUtils.js';
7
+ import { HelpStrings } from '../Constants/HelpStrings.js';
8
+ import { printSuccess, printWarning } from '../Utils/ConsoleOutput.js';
9
+ import { DeleteDataSourceArguments, SharedArguments } from './VerbConstants.js';
10
+ export async function deleteDataSourceAsync(argumentProvider) {
11
+ const settings = getSettings();
12
+ const { fileConfig, cliFs } = settings;
13
+ createOptionSchema(argumentProvider);
14
+ await argumentProvider.runVerb();
15
+ const force = await argumentProvider.getOption('force', true);
16
+ if (!force && settings.interactive) {
17
+ const confirmed = await promptConfirm({
18
+ message: 'Are you sure you want to delete this data source?',
19
+ });
20
+ if (!confirmed) {
21
+ printWarning('Delete cancelled.');
22
+ return;
23
+ }
24
+ }
25
+ const playerServiceConfig = getPlayerServiceConfig();
26
+ // Use the already initialized authentication provider from ArgumentProvider
27
+ const authenticationProvider = argumentProvider.getAuthenticationProvider();
28
+ const memo = (fn) => {
29
+ let promise;
30
+ return () => (promise ??= fn());
31
+ };
32
+ const getApiId = memo(() => argumentProvider.getOption('apiId'));
33
+ const getDataSourceName = memo(() => argumentProvider.getOption('dataSourceName'));
34
+ const getSqlStoredProcedure = memo(() => argumentProvider.getOption('sqlStoredProcedure'));
35
+ const config = {
36
+ vfs: cliFs,
37
+ authProvider: authenticationProvider,
38
+ region: playerServiceConfig.region,
39
+ environmentName: playerServiceConfig.environmentName,
40
+ localFilePaths: fileConfig,
41
+ actionsParams: {
42
+ apiId: getApiId,
43
+ dataSourceName: getDataSourceName,
44
+ sqlStoredProcedure: getSqlStoredProcedure,
45
+ },
46
+ logger: getCliLogger(),
47
+ };
48
+ const deleted = await deleteDataSourceActionAsync(config);
49
+ if (deleted) {
50
+ const apiId = await getApiId();
51
+ const isSql = apiId.replace('shared_', '').toLowerCase() === 'sql';
52
+ const dataSourceLabel = isSql ? await getSqlStoredProcedure() : await getDataSourceName();
53
+ printSuccess(`${dataSourceLabel} from API ${apiId} deleted successfully.`);
54
+ }
55
+ }
56
+ function createOptionSchema(argumentProvider) {
57
+ argumentProvider.setDescription(HelpStrings.app.remove.description);
58
+ argumentProvider.addExamples(HelpStrings.app.remove.examples);
59
+ argumentProvider.addSwitch({
60
+ flags: { key: 'force', alias: 'f' },
61
+ description: HelpStrings.app.remove.options.force,
62
+ });
63
+ argumentProvider.addOptions([
64
+ createDefaultStringOption({
65
+ flags: {
66
+ key: DeleteDataSourceArguments.DataSourceName.name,
67
+ alias: DeleteDataSourceArguments.DataSourceName.alias,
68
+ },
69
+ env: DeleteDataSourceArguments.DataSourceName.envVar
70
+ ? DeleteDataSourceArguments.DataSourceName.envVar
71
+ : SharedArguments.ResourceName.envVar,
72
+ message: DeleteDataSourceArguments.DataSourceName.promptMessage,
73
+ description: HelpStrings.app.remove.options.dataSourceName,
74
+ }),
75
+ createDefaultStringOption({
76
+ flags: {
77
+ key: SharedArguments.ApiId.name,
78
+ alias: SharedArguments.ApiId.alias,
79
+ },
80
+ env: SharedArguments.ApiId.envVar,
81
+ message: SharedArguments.ApiId.promptMessage,
82
+ description: HelpStrings.app.remove.options.apiId,
83
+ }),
84
+ {
85
+ flags: {
86
+ key: SharedArguments.SqlStoredProcedure.name,
87
+ alias: SharedArguments.SqlStoredProcedure.alias,
88
+ },
89
+ env: SharedArguments.SqlStoredProcedure.envVar,
90
+ description: HelpStrings.app.remove.options.sqlStoredProcedure,
91
+ optionalInNonInteractive: true,
92
+ customPrompt: async () => {
93
+ const hasSqlProcedure = await promptConfirm({
94
+ message: 'Do you have an SQL procedure?',
95
+ });
96
+ if (hasSqlProcedure) {
97
+ return await promptText({
98
+ message: SharedArguments.SqlStoredProcedure.promptMessage,
99
+ });
100
+ }
101
+ return '';
102
+ },
103
+ },
104
+ ]);
105
+ }
106
+ //# sourceMappingURL=DeleteDataSource.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DeleteDataSource.js","sourceRoot":"","sources":["../../src/Verbs/DeleteDataSource.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EACL,qBAAqB,IAAI,2BAA2B,EACpD,sBAAsB,GACvB,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAE,yBAAyB,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACnF,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACpE,OAAO,EAAE,yBAAyB,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAE7E,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,gBAAkC;IAC5E,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;IAC/B,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,GAAG,QAAQ,CAAC;IACvC,kBAAkB,CAAC,gBAAgB,CAAC,CAAC;IACrC,MAAM,gBAAgB,CAAC,OAAO,EAAE,CAAC;IAEjC,MAAM,KAAK,GAAG,MAAM,gBAAgB,CAAC,SAAS,CAAU,OAAO,EAAE,IAAI,CAAC,CAAC;IACvE,IAAI,CAAC,KAAK,IAAI,QAAQ,CAAC,WAAW,EAAE,CAAC;QACnC,MAAM,SAAS,GAAG,MAAM,aAAa,CAAC;YACpC,OAAO,EAAE,mDAAmD;SAC7D,CAAC,CAAC;QACH,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,YAAY,CAAC,mBAAmB,CAAC,CAAC;YAClC,OAAO;QACT,CAAC;IACH,CAAC;IAED,MAAM,mBAAmB,GAAG,sBAAsB,EAAE,CAAC;IAErD,4EAA4E;IAC5E,MAAM,sBAAsB,GAAG,gBAAgB,CAAC,yBAAyB,EAAE,CAAC;IAE5E,MAAM,IAAI,GAAG,CAAC,EAAyB,EAA2B,EAAE;QAClE,IAAI,OAAoC,CAAC;QACzC,OAAO,GAAG,EAAE,CAAC,CAAC,OAAO,KAAK,EAAE,EAAE,CAAC,CAAC;IAClC,CAAC,CAAC;IAEF,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,gBAAgB,CAAC,SAAS,CAAS,OAAO,CAAC,CAAC,CAAC;IACzE,MAAM,iBAAiB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,gBAAgB,CAAC,SAAS,CAAS,gBAAgB,CAAC,CAAC,CAAC;IAC3F,MAAM,qBAAqB,GAAG,IAAI,CAAC,GAAG,EAAE,CACtC,gBAAgB,CAAC,SAAS,CAAS,oBAAoB,CAAC,CACzD,CAAC;IAEF,MAAM,MAAM,GAA4B;QACtC,GAAG,EAAE,KAAK;QACV,YAAY,EAAE,sBAAsB;QACpC,MAAM,EAAE,mBAAmB,CAAC,MAAM;QAClC,eAAe,EAAE,mBAAmB,CAAC,eAAe;QACpD,cAAc,EAAE,UAAU;QAC1B,aAAa,EAAE;YACb,KAAK,EAAE,QAAQ;YACf,cAAc,EAAE,iBAAiB;YACjC,kBAAkB,EAAE,qBAAqB;SAC1C;QACD,MAAM,EAAE,YAAY,EAAE;KACvB,CAAC;IAEF,MAAM,OAAO,GAAG,MAAM,2BAA2B,CAAC,MAAM,CAAC,CAAC;IAC1D,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,KAAK,GAAG,MAAM,QAAQ,EAAE,CAAC;QAC/B,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC;QACnE,MAAM,eAAe,GAAG,KAAK,CAAC,CAAC,CAAC,MAAM,qBAAqB,EAAE,CAAC,CAAC,CAAC,MAAM,iBAAiB,EAAE,CAAC;QAC1F,YAAY,CAAC,GAAG,eAAe,aAAa,KAAK,wBAAwB,CAAC,CAAC;IAC7E,CAAC;AACH,CAAC;AAED,SAAS,kBAAkB,CAAC,gBAAkC;IAC5D,gBAAgB,CAAC,cAAc,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IACpE,gBAAgB,CAAC,WAAW,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC9D,gBAAgB,CAAC,SAAS,CAAC;QACzB,KAAK,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE;QACnC,WAAW,EAAE,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK;KAClD,CAAC,CAAC;IACH,gBAAgB,CAAC,UAAU,CAAC;QAC1B,yBAAyB,CAAC;YACxB,KAAK,EAAE;gBACL,GAAG,EAAE,yBAAyB,CAAC,cAAc,CAAC,IAAI;gBAClD,KAAK,EAAE,yBAAyB,CAAC,cAAc,CAAC,KAAK;aACtD;YACD,GAAG,EAAE,yBAAyB,CAAC,cAAc,CAAC,MAAM;gBAClD,CAAC,CAAC,yBAAyB,CAAC,cAAc,CAAC,MAAM;gBACjD,CAAC,CAAC,eAAe,CAAC,YAAY,CAAC,MAAM;YACvC,OAAO,EAAE,yBAAyB,CAAC,cAAc,CAAC,aAAa;YAC/D,WAAW,EAAE,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,cAAc;SAC3D,CAAC;QACF,yBAAyB,CAAC;YACxB,KAAK,EAAE;gBACL,GAAG,EAAE,eAAe,CAAC,KAAK,CAAC,IAAI;gBAC/B,KAAK,EAAE,eAAe,CAAC,KAAK,CAAC,KAAK;aACnC;YACD,GAAG,EAAE,eAAe,CAAC,KAAK,CAAC,MAAM;YACjC,OAAO,EAAE,eAAe,CAAC,KAAK,CAAC,aAAa;YAC5C,WAAW,EAAE,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK;SAClD,CAAC;QACF;YACE,KAAK,EAAE;gBACL,GAAG,EAAE,eAAe,CAAC,kBAAkB,CAAC,IAAI;gBAC5C,KAAK,EAAE,eAAe,CAAC,kBAAkB,CAAC,KAAK;aAChD;YACD,GAAG,EAAE,eAAe,CAAC,kBAAkB,CAAC,MAAM;YAC9C,WAAW,EAAE,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,kBAAkB;YAC9D,wBAAwB,EAAE,IAAI;YAC9B,YAAY,EAAE,KAAK,IAAI,EAAE;gBACvB,MAAM,eAAe,GAAG,MAAM,aAAa,CAAC;oBAC1C,OAAO,EAAE,+BAA+B;iBACzC,CAAC,CAAC;gBACH,IAAI,eAAe,EAAE,CAAC;oBACpB,OAAO,MAAM,UAAU,CAAC;wBACtB,OAAO,EAAE,eAAe,CAAC,kBAAkB,CAAC,aAAa;qBAC1D,CAAC,CAAC;gBACL,CAAC;gBACD,OAAO,EAAE,CAAC;YACZ,CAAC;SACF;KACF,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,23 @@
1
+ /*!
2
+ * Copyright (C) Microsoft Corporation. All rights reserved.
3
+ */
4
+ import type { ArgumentProvider } from '../ArgumentProvider.js';
5
+ /**
6
+ * Implements `ms app delete` — soft-deletes a Microsoft App.
7
+ *
8
+ * Pipeline:
9
+ * 1. Register option schema and run the verb (so `--help` works without a project).
10
+ * 2. Resolve `appName` (config-first, `--app` override) and `environmentId`
11
+ * via `resolveEnvironmentId` (`--environment-id` flag wins; otherwise
12
+ * `ms.config.json`; helper also pushes the resolved id into player
13
+ * services so the URL builder targets the override). Missing both →
14
+ * `UsageError`.
15
+ * 3. Resolve `tenantId` from the auth provider.
16
+ * 4. In interactive mode, prompt for confirmation unless `--force` is set; cancel
17
+ * cleanly without calling the action when the user declines.
18
+ * 5. Call `deleteAsync`; emit success on `existed: true` (HTTP 200) or a warning
19
+ * on `existed: false` (HTTP 204), since "did not exist" is not an error per
20
+ * the spec.
21
+ */
22
+ export declare function deleteMaafAppAsync(argumentProvider: ArgumentProvider): Promise<void>;
23
+ //# sourceMappingURL=DeleteMaafApp.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DeleteMaafApp.d.ts","sourceRoot":"","sources":["../../src/Verbs/DeleteMaafApp.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAQ5D;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,kBAAkB,CAAC,gBAAgB,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CA2C1F"}
@@ -0,0 +1,99 @@
1
+ /*!
2
+ * Copyright (C) Microsoft Corporation. All rights reserved.
3
+ */
4
+ import { deleteAsync } from '@microsoft/apps-actions';
5
+ import { getCliLogger, getSettings } from '../CliSettings.js';
6
+ import { promptConfirm, resolveAppNameAsync, resolveEnvironmentId } from '../CliUtils.js';
7
+ import { HelpStrings } from '../Constants/HelpStrings.js';
8
+ import { UsageError } from '../Errors/CliError.js';
9
+ import { printJsonSuccess, printSuccess, printWarning } from '../Utils/ConsoleOutput.js';
10
+ import { DeleteMaafAppArguments } from './VerbConstants.js';
11
+ /**
12
+ * Implements `ms app delete` — soft-deletes a Microsoft App.
13
+ *
14
+ * Pipeline:
15
+ * 1. Register option schema and run the verb (so `--help` works without a project).
16
+ * 2. Resolve `appName` (config-first, `--app` override) and `environmentId`
17
+ * via `resolveEnvironmentId` (`--environment-id` flag wins; otherwise
18
+ * `ms.config.json`; helper also pushes the resolved id into player
19
+ * services so the URL builder targets the override). Missing both →
20
+ * `UsageError`.
21
+ * 3. Resolve `tenantId` from the auth provider.
22
+ * 4. In interactive mode, prompt for confirmation unless `--force` is set; cancel
23
+ * cleanly without calling the action when the user declines.
24
+ * 5. Call `deleteAsync`; emit success on `existed: true` (HTTP 200) or a warning
25
+ * on `existed: false` (HTTP 204), since "did not exist" is not an error per
26
+ * the spec.
27
+ */
28
+ export async function deleteMaafAppAsync(argumentProvider) {
29
+ configureOptionSchema(argumentProvider);
30
+ await argumentProvider.runVerb();
31
+ const appName = await resolveAppNameAsync(argumentProvider);
32
+ // resolveEnvironmentId encapsulates the flag-vs-config precedence and the
33
+ // player-services update so the URL builder targets the override.
34
+ const environmentId = await resolveEnvironmentId(argumentProvider);
35
+ const tenantId = await argumentProvider.getTenantIdAsync();
36
+ if (!tenantId) {
37
+ throw new UsageError('Unable to determine tenant ID. Ensure you are logged in.');
38
+ }
39
+ const settings = getSettings();
40
+ const force = await argumentProvider.getOption('force', /* ignorePrompt */ true);
41
+ if (!force && settings.interactive) {
42
+ const confirmed = await promptConfirm({
43
+ message: `Are you sure you want to delete app '${appName}' from environment '${environmentId}'? This cannot be undone. Your source code in the repo will not be deleted.`,
44
+ });
45
+ if (!confirmed) {
46
+ printWarning('Delete cancelled.');
47
+ return;
48
+ }
49
+ }
50
+ const result = await deleteAsync({
51
+ tenantId,
52
+ environmentId,
53
+ logger: getCliLogger(),
54
+ actionsParams: { appName },
55
+ });
56
+ if (argumentProvider.isJsonMode()) {
57
+ printJsonSuccess({ appName, existed: result.existed });
58
+ return;
59
+ }
60
+ if (result.existed) {
61
+ printSuccess(`App '${appName}' deleted.`);
62
+ }
63
+ else {
64
+ printWarning(`App '${appName}' did not exist; nothing was deleted.`);
65
+ }
66
+ }
67
+ function configureOptionSchema(argumentProvider) {
68
+ argumentProvider.setDescription(HelpStrings.app.delete.description);
69
+ argumentProvider.addExamples(HelpStrings.app.delete.examples);
70
+ argumentProvider.addSwitch({
71
+ flags: { key: 'force', alias: 'f' },
72
+ description: HelpStrings.app.delete.options.force,
73
+ });
74
+ argumentProvider.addOptions([
75
+ {
76
+ flags: {
77
+ key: DeleteMaafAppArguments.AppName.name,
78
+ alias: DeleteMaafAppArguments.AppName.alias,
79
+ },
80
+ env: DeleteMaafAppArguments.AppName.envVar,
81
+ description: HelpStrings.app.delete.options.app,
82
+ optionalInNonInteractive: true,
83
+ },
84
+ {
85
+ // Verb-local because `--environment-id` is no longer a global flag (the
86
+ // config-only flow is the supported path). No `customPrompt` and
87
+ // `optionalInNonInteractive: true` so getOption returns undefined when
88
+ // omitted, letting the verb fall back to ms.config.json.
89
+ flags: {
90
+ key: DeleteMaafAppArguments.EnvironmentId.name,
91
+ alias: DeleteMaafAppArguments.EnvironmentId.alias,
92
+ },
93
+ env: DeleteMaafAppArguments.EnvironmentId.envVar,
94
+ description: HelpStrings.app.delete.options.environmentId,
95
+ optionalInNonInteractive: true,
96
+ },
97
+ ]);
98
+ }
99
+ //# sourceMappingURL=DeleteMaafApp.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DeleteMaafApp.js","sourceRoot":"","sources":["../../src/Verbs/DeleteMaafApp.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAGtD,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACvF,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtF,OAAO,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAEzD;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,gBAAkC;IACzE,qBAAqB,CAAC,gBAAgB,CAAC,CAAC;IACxC,MAAM,gBAAgB,CAAC,OAAO,EAAE,CAAC;IAEjC,MAAM,OAAO,GAAG,MAAM,mBAAmB,CAAC,gBAAgB,CAAC,CAAC;IAC5D,0EAA0E;IAC1E,kEAAkE;IAClE,MAAM,aAAa,GAAG,MAAM,oBAAoB,CAAC,gBAAgB,CAAC,CAAC;IAEnE,MAAM,QAAQ,GAAG,MAAM,gBAAgB,CAAC,gBAAgB,EAAE,CAAC;IAC3D,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,UAAU,CAAC,0DAA0D,CAAC,CAAC;IACnF,CAAC;IAED,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;IAC/B,MAAM,KAAK,GAAG,MAAM,gBAAgB,CAAC,SAAS,CAAU,OAAO,EAAE,kBAAkB,CAAC,IAAI,CAAC,CAAC;IAC1F,IAAI,CAAC,KAAK,IAAI,QAAQ,CAAC,WAAW,EAAE,CAAC;QACnC,MAAM,SAAS,GAAG,MAAM,aAAa,CAAC;YACpC,OAAO,EAAE,wCAAwC,OAAO,uBAAuB,aAAa,6EAA6E;SAC1K,CAAC,CAAC;QACH,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,YAAY,CAAC,mBAAmB,CAAC,CAAC;YAClC,OAAO;QACT,CAAC;IACH,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC;QAC/B,QAAQ;QACR,aAAa;QACb,MAAM,EAAE,YAAY,EAAE;QACtB,aAAa,EAAE,EAAE,OAAO,EAAE;KAC3B,CAAC,CAAC;IAEH,IAAI,gBAAgB,CAAC,UAAU,EAAE,EAAE,CAAC;QAClC,gBAAgB,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;QACvD,OAAO;IACT,CAAC;IAED,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QACnB,YAAY,CAAC,QAAQ,OAAO,YAAY,CAAC,CAAC;IAC5C,CAAC;SAAM,CAAC;QACN,YAAY,CAAC,QAAQ,OAAO,uCAAuC,CAAC,CAAC;IACvE,CAAC;AACH,CAAC;AAED,SAAS,qBAAqB,CAAC,gBAAkC;IAC/D,gBAAgB,CAAC,cAAc,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IACpE,gBAAgB,CAAC,WAAW,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC9D,gBAAgB,CAAC,SAAS,CAAC;QACzB,KAAK,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE;QACnC,WAAW,EAAE,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK;KAClD,CAAC,CAAC;IACH,gBAAgB,CAAC,UAAU,CAAC;QAC1B;YACE,KAAK,EAAE;gBACL,GAAG,EAAE,sBAAsB,CAAC,OAAO,CAAC,IAAI;gBACxC,KAAK,EAAE,sBAAsB,CAAC,OAAO,CAAC,KAAK;aAC5C;YACD,GAAG,EAAE,sBAAsB,CAAC,OAAO,CAAC,MAAM;YAC1C,WAAW,EAAE,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG;YAC/C,wBAAwB,EAAE,IAAI;SAC/B;QACD;YACE,wEAAwE;YACxE,iEAAiE;YACjE,uEAAuE;YACvE,yDAAyD;YACzD,KAAK,EAAE;gBACL,GAAG,EAAE,sBAAsB,CAAC,aAAa,CAAC,IAAI;gBAC9C,KAAK,EAAE,sBAAsB,CAAC,aAAa,CAAC,KAAK;aAClD;YACD,GAAG,EAAE,sBAAsB,CAAC,aAAa,CAAC,MAAM;YAChD,WAAW,EAAE,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,aAAa;YACzD,wBAAwB,EAAE,IAAI;SAC/B;KACF,CAAC,CAAC;AACL,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 deployMaafAppAsync(argumentProvider: ArgumentProvider): Promise<void>;
6
+ //# sourceMappingURL=DeployMaafApp.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DeployMaafApp.d.ts","sourceRoot":"","sources":["../../src/Verbs/DeployMaafApp.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAS5D,wBAAsB,kBAAkB,CAAC,gBAAgB,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAwE1F"}
@@ -0,0 +1,96 @@
1
+ /*!
2
+ * Copyright (C) Microsoft Corporation. All rights reserved.
3
+ */
4
+ import { deployAsync } from '@microsoft/apps-actions';
5
+ import { AppConfigFileName } from '@microsoft/apps-common/config';
6
+ import { getCliLogger, getSettings } from '../CliSettings.js';
7
+ import { promptConfirm, resolveAppNameAsync } 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 { hasUncommittedChanges, resolveGitDefaults } from '../Utils/GitUtils.js';
12
+ import { DeployMaafAppArguments } from './VerbConstants.js';
13
+ export async function deployMaafAppAsync(argumentProvider) {
14
+ createOptionSchema(argumentProvider);
15
+ await argumentProvider.runVerb();
16
+ const environmentId = argumentProvider.getEnvironmentId();
17
+ if (!environmentId) {
18
+ throw new UsageError(`No environment ID found. Run this command from a directory with a ${AppConfigFileName} (created by \`ms app create\`).`);
19
+ }
20
+ const tenantId = await argumentProvider.getTenantIdAsync();
21
+ if (!tenantId) {
22
+ throw new UsageError('Unable to determine tenant ID. Ensure you are logged in.');
23
+ }
24
+ const appName = await resolveAppNameAsync(argumentProvider);
25
+ // Resolve commit SHA: --commit flag → current HEAD → error
26
+ const commitFromFlag = await argumentProvider.getOption('commit',
27
+ /* ignorePrompt */ true);
28
+ let commitSha = commitFromFlag;
29
+ let branch;
30
+ let resolvedFromGit = false;
31
+ if (!commitSha) {
32
+ const gitDefaults = resolveGitDefaults();
33
+ if (!gitDefaults) {
34
+ throw new UsageError('Could not determine the latest commit SHA. Use --commit or -c to specify it.');
35
+ }
36
+ commitSha = gitDefaults.commitSha;
37
+ // CI checkouts are typically detached, so we proceed with the SHA either way
38
+ // and only attach the branch name when one is available.
39
+ branch = gitDefaults.detached ? undefined : gitDefaults.branch;
40
+ resolvedFromGit = true;
41
+ }
42
+ if (resolvedFromGit && !argumentProvider.isJsonMode()) {
43
+ printInfo(branch
44
+ ? `Using branch '${branch}' at commit ${commitSha}.`
45
+ : `Detached HEAD at commit ${commitSha}.`);
46
+ }
47
+ if (hasUncommittedChanges() === true) {
48
+ printWarning('There are uncommitted changes in the working tree.');
49
+ if (getSettings().interactive) {
50
+ const proceed = await promptConfirm({ message: 'Deploy anyway?', initialValue: false });
51
+ if (!proceed) {
52
+ printWarning('Deploy cancelled.');
53
+ return;
54
+ }
55
+ }
56
+ }
57
+ const result = await deployAsync({
58
+ tenantId,
59
+ environmentId,
60
+ logger: getCliLogger(),
61
+ actionsParams: { appName, commitSha },
62
+ });
63
+ if (argumentProvider.isJsonMode()) {
64
+ printJsonSuccess(result);
65
+ }
66
+ else {
67
+ printSuccess(`Deployed app '${result.displayName}' (${result.id}).`);
68
+ if (result.commitHash)
69
+ printInfo(`Commit: ${result.commitHash}`);
70
+ }
71
+ }
72
+ function createOptionSchema(argumentProvider) {
73
+ argumentProvider.setDescription(HelpStrings.app.deploy.description);
74
+ argumentProvider.addExamples(HelpStrings.app.deploy.examples);
75
+ argumentProvider.addOptions([
76
+ {
77
+ flags: {
78
+ key: DeployMaafAppArguments.AppName.name,
79
+ alias: DeployMaafAppArguments.AppName.alias,
80
+ },
81
+ env: DeployMaafAppArguments.AppName.envVar,
82
+ description: HelpStrings.app.deploy.options.app,
83
+ optionalInNonInteractive: true,
84
+ },
85
+ {
86
+ flags: {
87
+ key: DeployMaafAppArguments.CommitSha.name,
88
+ alias: DeployMaafAppArguments.CommitSha.alias,
89
+ },
90
+ env: DeployMaafAppArguments.CommitSha.envVar,
91
+ description: HelpStrings.app.deploy.options.commit,
92
+ optionalInNonInteractive: true,
93
+ },
94
+ ]);
95
+ }
96
+ //# sourceMappingURL=DeployMaafApp.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DeployMaafApp.js","sourceRoot":"","sources":["../../src/Verbs/DeployMaafApp.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 devAsync(argumentProvider: ArgumentProvider): Promise<void>;
6
+ //# sourceMappingURL=Dev.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Dev.d.ts","sourceRoot":"","sources":["../../src/Verbs/Dev.ts"],"names":[],"mappings":"AAAA;;GAEG;AAcH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAY5D,wBAAsB,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAsChF"}
@@ -0,0 +1,214 @@
1
+ /*!
2
+ * Copyright (C) Microsoft Corporation. All rights reserved.
3
+ */
4
+ import { spawn } from 'node:child_process';
5
+ import { createRequire } from 'node:module';
6
+ import { setTimeout as delay } from 'node:timers/promises';
7
+ import { pathToFileURL } from 'node:url';
8
+ import { AppConfigFileName } from '@microsoft/apps-common/config';
9
+ import { Clouds, cloudToRegion, createMaafAppDevUrl } from '@microsoft/apps-common/services';
10
+ import chalk from 'chalk';
11
+ import * as fs from 'fs';
12
+ import * as http from 'http';
13
+ import { getSettings } from '../CliSettings.js';
14
+ import { WORKING_DIRECTORY } from '../Constants.js';
15
+ import { HelpStrings } from '../Constants/HelpStrings.js';
16
+ import { ConfigurationError } from '../Errors/CliError.js';
17
+ import { printError, printInfo, printWarning } from '../Utils/ConsoleOutput.js';
18
+ import { detectPackageManager } from '../Utils/DetectPackageManager.js';
19
+ import { readPackageJson } from '../Utils/ReadPackageJson.js';
20
+ import { RunArguments } from './VerbConstants.js';
21
+ const VITE_PLUGIN_NAMES = ['powerApps', 'microsoftApps'];
22
+ export async function devAsync(argumentProvider) {
23
+ const settings = getSettings();
24
+ const { appConfig, fileConfig } = settings;
25
+ createOptionSchema(argumentProvider, appConfig?.localAppUrl);
26
+ await argumentProvider.runVerb();
27
+ const configOnly = await argumentProvider.getOption('configOnly');
28
+ const ac = new AbortController();
29
+ process.once('SIGINT', () => ac.abort());
30
+ if (configOnly) {
31
+ if (await isUsingVitePlugin(WORKING_DIRECTORY)) {
32
+ printWarning('Warning: --config-only is not needed when using the vite plugin. The plugin already serves the config and prints the play URL.');
33
+ }
34
+ await runConfigServerAsync(argumentProvider, fileConfig.appConfigPath, appConfig, ac.signal);
35
+ return;
36
+ }
37
+ const pkg = readPackageJson(WORKING_DIRECTORY);
38
+ if (!pkg.scripts?.dev) {
39
+ throw new ConfigurationError('No "dev" script found in package.json. Add a "dev" script to start your app.');
40
+ }
41
+ if (await isUsingVitePlugin(WORKING_DIRECTORY)) {
42
+ await runDevScriptAsync(WORKING_DIRECTORY, ac.signal, pkg);
43
+ return;
44
+ }
45
+ await Promise.all([
46
+ runDevScriptAsync(WORKING_DIRECTORY, ac.signal, pkg),
47
+ runConfigServerAsync(argumentProvider, fileConfig.appConfigPath, appConfig, ac.signal),
48
+ ]);
49
+ }
50
+ async function runConfigServerAsync(argumentProvider, appConfigPath, appConfig, signal) {
51
+ if (!appConfig) {
52
+ throw new ConfigurationError(`${AppConfigFileName} is required to run an app`);
53
+ }
54
+ if (!appConfig.environmentId) {
55
+ throw new ConfigurationError(`Environment ID is required in ${AppConfigFileName} to run an app`);
56
+ }
57
+ if (!appConfig.cloud) {
58
+ appConfig.cloud = 'public';
59
+ }
60
+ const port = await argumentProvider.getOption('port');
61
+ const appUrl = await argumentProvider.getOption('localAppUrl');
62
+ await startConfigServer(appConfigPath, parseInt(port, 10), appConfig, appUrl, signal);
63
+ }
64
+ async function startConfigServer(appConfigPath, port, appConfig, localAppUrl, signal) {
65
+ return new Promise((resolve, reject) => {
66
+ const server = http.createServer((req, res) => {
67
+ res.setHeader('Access-Control-Allow-Origin', '*');
68
+ res.setHeader('Access-Control-Allow-Methods', 'GET, OPTIONS');
69
+ res.setHeader('Access-Control-Allow-Headers', '*');
70
+ if (req.method === 'OPTIONS') {
71
+ res.writeHead(200);
72
+ res.end();
73
+ return;
74
+ }
75
+ try {
76
+ if (!fs.existsSync(appConfigPath)) {
77
+ res.writeHead(404, { 'Content-Type': 'application/json' });
78
+ res.end(JSON.stringify({ error: `${AppConfigFileName} not found` }));
79
+ return;
80
+ }
81
+ const fileContent = fs.readFileSync(appConfigPath, 'utf8');
82
+ res.writeHead(200, { 'Content-Type': 'application/json' });
83
+ res.end(fileContent);
84
+ }
85
+ catch (error) {
86
+ printError(`Error serving ${AppConfigFileName}: ${error.message}`);
87
+ res.writeHead(500, { 'Content-Type': 'application/json' });
88
+ res.end(JSON.stringify({ error: 'Internal server error' }));
89
+ }
90
+ });
91
+ server.listen(port, 'localhost', async () => {
92
+ await waitForAppUrl(localAppUrl, signal);
93
+ if (!signal.aborted) {
94
+ const region = appConfig.cloud && Clouds.includes(appConfig.cloud)
95
+ ? cloudToRegion(appConfig.cloud)
96
+ : undefined;
97
+ const playUrl = createMaafAppDevUrl(region, appConfig.environmentId, {
98
+ appUrl: localAppUrl,
99
+ appConfigUrl: `http://localhost:${port}`,
100
+ });
101
+ printInfo(`\nReady. You can play your app locally at:\n${chalk.blueBright.bold(` ➜ ${playUrl}`)}`);
102
+ }
103
+ });
104
+ server.on('error', (error) => {
105
+ printError(`Server error: ${error.message}`);
106
+ reject(error);
107
+ });
108
+ signal.addEventListener('abort', () => {
109
+ printInfo(chalk.dim('\nShutting down config server...'));
110
+ server.close(() => {
111
+ printInfo(chalk.dim('Config server stopped.'));
112
+ resolve();
113
+ });
114
+ }, { once: true });
115
+ });
116
+ }
117
+ function createOptionSchema(argumentProvider, localAppUrl) {
118
+ argumentProvider.setDescription(HelpStrings.app.dev.description);
119
+ argumentProvider.addExamples(HelpStrings.app.dev.examples);
120
+ argumentProvider.addOptions([
121
+ {
122
+ flags: {
123
+ key: RunArguments.Port.name,
124
+ alias: RunArguments.Port.alias,
125
+ },
126
+ env: RunArguments.Port.envVar,
127
+ default: RunArguments.Port.initialValue,
128
+ description: HelpStrings.app.dev.options.port,
129
+ },
130
+ {
131
+ flags: {
132
+ key: RunArguments.LocalAppUrl.name,
133
+ alias: RunArguments.LocalAppUrl.alias,
134
+ },
135
+ env: RunArguments.LocalAppUrl.envVar,
136
+ default: localAppUrl || RunArguments.LocalAppUrl.initialValue,
137
+ description: HelpStrings.app.dev.options.localAppUrl,
138
+ },
139
+ ]);
140
+ argumentProvider.addSwitch({
141
+ flags: { key: RunArguments.ConfigOnly.name, alias: RunArguments.ConfigOnly.alias },
142
+ env: RunArguments.ConfigOnly.envVar,
143
+ description: HelpStrings.app.dev.options.configOnly,
144
+ });
145
+ }
146
+ async function waitForAppUrl(appUrl, signal, pollInterval = 300, timeout = 10_000) {
147
+ printInfo(chalk.dim(`Waiting for app to be available at ${appUrl}...`));
148
+ const timeoutSignal = AbortSignal.timeout(timeout);
149
+ const combined = AbortSignal.any([signal, timeoutSignal]);
150
+ try {
151
+ while (!combined.aborted) {
152
+ await delay(pollInterval, undefined, { signal: combined });
153
+ try {
154
+ const response = await fetch(appUrl, { method: 'HEAD' });
155
+ if (response.ok || response.status < 500)
156
+ return;
157
+ }
158
+ catch {
159
+ // Not ready yet — keep polling
160
+ }
161
+ }
162
+ }
163
+ catch {
164
+ // delay() threw AbortError
165
+ }
166
+ finally {
167
+ if (timeoutSignal.aborted) {
168
+ printWarning(`Warning: timed out looking for app running at ${appUrl}`);
169
+ }
170
+ }
171
+ }
172
+ async function isUsingVitePlugin(projectRoot) {
173
+ let loadConfigFromFile;
174
+ try {
175
+ const require = createRequire(`${projectRoot}/package.json`);
176
+ const vitePath = require.resolve('vite');
177
+ const vite = (await import(pathToFileURL(vitePath).href));
178
+ loadConfigFromFile = vite.loadConfigFromFile;
179
+ }
180
+ catch {
181
+ return false;
182
+ }
183
+ try {
184
+ const result = await loadConfigFromFile({ command: 'serve', mode: 'development' }, undefined, projectRoot);
185
+ const plugins = (result?.config?.plugins ?? []).flat();
186
+ return plugins.some((p) => typeof p === 'object' &&
187
+ p !== null &&
188
+ VITE_PLUGIN_NAMES.includes(p.name));
189
+ }
190
+ catch {
191
+ return false;
192
+ }
193
+ }
194
+ async function runDevScriptAsync(projectRoot, signal, pkg) {
195
+ const command = detectPackageManager(projectRoot, pkg);
196
+ return new Promise((resolve, reject) => {
197
+ const child = spawn(command, ['run', 'dev'], {
198
+ cwd: projectRoot,
199
+ stdio: 'inherit',
200
+ shell: true,
201
+ });
202
+ child.on('close', (code, sig) => {
203
+ if (code === 0 || sig === 'SIGINT') {
204
+ resolve();
205
+ }
206
+ else {
207
+ reject(new Error(`Dev server exited unexpectedly with code ${code ?? 'unknown'}.`));
208
+ }
209
+ });
210
+ child.on('error', reject);
211
+ signal.addEventListener('abort', () => child.kill('SIGINT'), { once: true });
212
+ });
213
+ }
214
+ //# sourceMappingURL=Dev.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Dev.js","sourceRoot":"","sources":["../../src/Verbs/Dev.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ /*!
2
+ * Copyright (C) Microsoft Corporation. All rights reserved.
3
+ */
4
+ import type { ArgumentProvider } from '../ArgumentProvider.js';
5
+ /**
6
+ * Search Dataverse actions and functions in a Dataverse environment.
7
+ *
8
+ * @param {ArgumentProvider} argumentProvider
9
+ * @returns {Promise<void>}
10
+ */
11
+ export declare function findDataverseApiAsync(argumentProvider: ArgumentProvider): Promise<void>;
12
+ //# sourceMappingURL=FindDataverseApi.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FindDataverseApi.d.ts","sourceRoot":"","sources":["../../src/Verbs/FindDataverseApi.ts"],"names":[],"mappings":"AAAA;;GAEG;AAQH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAU5D;;;;;GAKG;AACH,wBAAsB,qBAAqB,CAAC,gBAAgB,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAkE7F"}