@microsoft/managed-apps-cli 0.14.0 → 0.17.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 (196) hide show
  1. package/README.md +3 -1
  2. package/dist/Authentication/NoOpAuthenticationProvider.d.ts +25 -0
  3. package/dist/Authentication/NoOpAuthenticationProvider.d.ts.map +1 -0
  4. package/dist/Authentication/NoOpAuthenticationProvider.js +31 -0
  5. package/dist/Authentication/NoOpAuthenticationProvider.js.map +1 -0
  6. package/dist/Cli.d.ts.map +1 -1
  7. package/dist/Cli.js +20 -1
  8. package/dist/Cli.js.map +1 -1
  9. package/dist/CliSettings.d.ts +2 -1
  10. package/dist/CliSettings.d.ts.map +1 -1
  11. package/dist/CliSettings.js +3 -2
  12. package/dist/CliSettings.js.map +1 -1
  13. package/dist/Constants/CommandRegistry.d.ts.map +1 -1
  14. package/dist/Constants/CommandRegistry.js +13 -5
  15. package/dist/Constants/CommandRegistry.js.map +1 -1
  16. package/dist/Constants/HelpStrings.d.ts +13 -0
  17. package/dist/Constants/HelpStrings.d.ts.map +1 -1
  18. package/dist/Constants/HelpStrings.js +29 -9
  19. package/dist/Constants/HelpStrings.js.map +1 -1
  20. package/dist/Constants.d.ts +1 -0
  21. package/dist/Constants.d.ts.map +1 -1
  22. package/dist/Constants.js +4 -0
  23. package/dist/Constants.js.map +1 -1
  24. package/dist/HttpClient/CliHttpClient.d.ts.map +1 -1
  25. package/dist/HttpClient/CliHttpClient.js +27 -1
  26. package/dist/HttpClient/CliHttpClient.js.map +1 -1
  27. package/dist/Logger/CliLogger.d.ts +1 -1
  28. package/dist/Logger/CliLogger.d.ts.map +1 -1
  29. package/dist/Logger/CliLogger.js +19 -4
  30. package/dist/Logger/CliLogger.js.map +1 -1
  31. package/dist/Logger/OneDSWriter.d.ts +0 -1
  32. package/dist/Logger/OneDSWriter.d.ts.map +1 -1
  33. package/dist/Logger/OneDSWriter.js +5 -3
  34. package/dist/Logger/OneDSWriter.js.map +1 -1
  35. package/dist/Testing/MockFetch.d.ts +23 -0
  36. package/dist/Testing/MockFetch.d.ts.map +1 -0
  37. package/dist/Testing/MockFetch.js +177 -0
  38. package/dist/Testing/MockFetch.js.map +1 -0
  39. package/dist/Testing/MockRoutes.d.ts +34 -0
  40. package/dist/Testing/MockRoutes.d.ts.map +1 -0
  41. package/dist/Testing/MockRoutes.js +226 -0
  42. package/dist/Testing/MockRoutes.js.map +1 -0
  43. package/dist/Testing/fixtures/connectors/commondataserviceforapps.d.ts +6 -0
  44. package/dist/Testing/fixtures/connectors/commondataserviceforapps.d.ts.map +1 -0
  45. package/dist/Testing/fixtures/connectors/commondataserviceforapps.js +25 -0
  46. package/dist/Testing/fixtures/connectors/commondataserviceforapps.js.map +1 -0
  47. package/dist/Testing/fixtures/connectors/dataverseContactEntity.d.ts +6 -0
  48. package/dist/Testing/fixtures/connectors/dataverseContactEntity.d.ts.map +1 -0
  49. package/dist/Testing/fixtures/connectors/dataverseContactEntity.js +55 -0
  50. package/dist/Testing/fixtures/connectors/dataverseContactEntity.js.map +1 -0
  51. package/dist/Testing/fixtures/connectors/excelonlinebusiness.d.ts +6 -0
  52. package/dist/Testing/fixtures/connectors/excelonlinebusiness.d.ts.map +1 -0
  53. package/dist/Testing/fixtures/connectors/excelonlinebusiness.js +1970 -0
  54. package/dist/Testing/fixtures/connectors/excelonlinebusiness.js.map +1 -0
  55. package/dist/Testing/fixtures/connectors/kusto.d.ts +6 -0
  56. package/dist/Testing/fixtures/connectors/kusto.d.ts.map +1 -0
  57. package/dist/Testing/fixtures/connectors/kusto.js +1333 -0
  58. package/dist/Testing/fixtures/connectors/kusto.js.map +1 -0
  59. package/dist/Testing/fixtures/connectors/msnweather.d.ts +6 -0
  60. package/dist/Testing/fixtures/connectors/msnweather.d.ts.map +1 -0
  61. package/dist/Testing/fixtures/connectors/msnweather.js +917 -0
  62. package/dist/Testing/fixtures/connectors/msnweather.js.map +1 -0
  63. package/dist/Testing/fixtures/connectors/office365groups.d.ts +6 -0
  64. package/dist/Testing/fixtures/connectors/office365groups.d.ts.map +1 -0
  65. package/dist/Testing/fixtures/connectors/office365groups.js +2144 -0
  66. package/dist/Testing/fixtures/connectors/office365groups.js.map +1 -0
  67. package/dist/Testing/fixtures/connectors/office365users.d.ts +6 -0
  68. package/dist/Testing/fixtures/connectors/office365users.d.ts.map +1 -0
  69. package/dist/Testing/fixtures/connectors/office365users.js +1969 -0
  70. package/dist/Testing/fixtures/connectors/office365users.js.map +1 -0
  71. package/dist/Testing/fixtures/connectors/onedriveforbusiness.d.ts +6 -0
  72. package/dist/Testing/fixtures/connectors/onedriveforbusiness.d.ts.map +1 -0
  73. package/dist/Testing/fixtures/connectors/onedriveforbusiness.js +4873 -0
  74. package/dist/Testing/fixtures/connectors/onedriveforbusiness.js.map +1 -0
  75. package/dist/Testing/fixtures/connectors/powerappsforappmakers.d.ts +6 -0
  76. package/dist/Testing/fixtures/connectors/powerappsforappmakers.d.ts.map +1 -0
  77. package/dist/Testing/fixtures/connectors/powerappsforappmakers.js +4682 -0
  78. package/dist/Testing/fixtures/connectors/powerappsforappmakers.js.map +1 -0
  79. package/dist/Testing/fixtures/connectors/sharepointTestListMetadata.d.ts +6 -0
  80. package/dist/Testing/fixtures/connectors/sharepointTestListMetadata.d.ts.map +1 -0
  81. package/dist/Testing/fixtures/connectors/sharepointTestListMetadata.js +1078 -0
  82. package/dist/Testing/fixtures/connectors/sharepointTestListMetadata.js.map +1 -0
  83. package/dist/Testing/fixtures/connectors/sharepointonline.d.ts +6 -0
  84. package/dist/Testing/fixtures/connectors/sharepointonline.d.ts.map +1 -0
  85. package/dist/Testing/fixtures/connectors/sharepointonline.js +28 -0
  86. package/dist/Testing/fixtures/connectors/sharepointonline.js.map +1 -0
  87. package/dist/Testing/fixtures/connectors/teams.d.ts +6 -0
  88. package/dist/Testing/fixtures/connectors/teams.d.ts.map +1 -0
  89. package/dist/Testing/fixtures/connectors/teams.js +9987 -0
  90. package/dist/Testing/fixtures/connectors/teams.js.map +1 -0
  91. package/dist/Testing/fixtures/connectors/translatorv2.d.ts +6 -0
  92. package/dist/Testing/fixtures/connectors/translatorv2.d.ts.map +1 -0
  93. package/dist/Testing/fixtures/connectors/translatorv2.js +307 -0
  94. package/dist/Testing/fixtures/connectors/translatorv2.js.map +1 -0
  95. package/dist/Testing/fixtures/index.d.ts +23 -0
  96. package/dist/Testing/fixtures/index.d.ts.map +1 -0
  97. package/dist/Testing/fixtures/index.js +96 -0
  98. package/dist/Testing/fixtures/index.js.map +1 -0
  99. package/dist/Types/Cli.types.d.ts +8 -0
  100. package/dist/Types/Cli.types.d.ts.map +1 -1
  101. package/dist/Utils/EnvVars.d.ts +1 -1
  102. package/dist/Utils/EnvVars.d.ts.map +1 -1
  103. package/dist/Utils/EnvVars.js.map +1 -1
  104. package/dist/Utils/GitUtils.d.ts +8 -4
  105. package/dist/Utils/GitUtils.d.ts.map +1 -1
  106. package/dist/Utils/GitUtils.js +15 -8
  107. package/dist/Utils/GitUtils.js.map +1 -1
  108. package/dist/Utils/MaafAppConfig.d.ts +2 -0
  109. package/dist/Utils/MaafAppConfig.d.ts.map +1 -1
  110. package/dist/Utils/MaafAppConfig.js +6 -0
  111. package/dist/Utils/MaafAppConfig.js.map +1 -1
  112. package/dist/Utils/RepoOption.d.ts +1 -0
  113. package/dist/Utils/RepoOption.d.ts.map +1 -1
  114. package/dist/Utils/RepoOption.js +14 -0
  115. package/dist/Utils/RepoOption.js.map +1 -1
  116. package/dist/Utils/ShareAccessRouting.d.ts +78 -0
  117. package/dist/Utils/ShareAccessRouting.d.ts.map +1 -0
  118. package/dist/Utils/ShareAccessRouting.js +93 -0
  119. package/dist/Utils/ShareAccessRouting.js.map +1 -0
  120. package/dist/Verbs/AddConnector.d.ts +6 -6
  121. package/dist/Verbs/AddConnector.d.ts.map +1 -1
  122. package/dist/Verbs/AddConnector.js +45 -29
  123. package/dist/Verbs/AddConnector.js.map +1 -1
  124. package/dist/Verbs/AddConnectorFlows.d.ts +9 -2
  125. package/dist/Verbs/AddConnectorFlows.d.ts.map +1 -1
  126. package/dist/Verbs/AddConnectorFlows.js +26 -7
  127. package/dist/Verbs/AddConnectorFlows.js.map +1 -1
  128. package/dist/Verbs/ConnectorHelpers.d.ts.map +1 -1
  129. package/dist/Verbs/ConnectorHelpers.js +0 -7
  130. package/dist/Verbs/ConnectorHelpers.js.map +1 -1
  131. package/dist/Verbs/CreateMaafApp.d.ts +8 -16
  132. package/dist/Verbs/CreateMaafApp.d.ts.map +1 -1
  133. package/dist/Verbs/CreateMaafApp.js +217 -90
  134. package/dist/Verbs/CreateMaafApp.js.map +1 -1
  135. package/dist/Verbs/DeleteMaafApp.d.ts +13 -9
  136. package/dist/Verbs/DeleteMaafApp.d.ts.map +1 -1
  137. package/dist/Verbs/DeleteMaafApp.js +41 -21
  138. package/dist/Verbs/DeleteMaafApp.js.map +1 -1
  139. package/dist/Verbs/DeployMaafApp.d.ts.map +1 -1
  140. package/dist/Verbs/DeployMaafApp.js +32 -7
  141. package/dist/Verbs/DeployMaafApp.js.map +1 -1
  142. package/dist/Verbs/FindDataverseApi.d.ts.map +1 -1
  143. package/dist/Verbs/FindDataverseApi.js +1 -15
  144. package/dist/Verbs/FindDataverseApi.js.map +1 -1
  145. package/dist/Verbs/GetMaafApp.d.ts.map +1 -1
  146. package/dist/Verbs/GetMaafApp.js +18 -6
  147. package/dist/Verbs/GetMaafApp.js.map +1 -1
  148. package/dist/Verbs/Init.d.ts.map +1 -1
  149. package/dist/Verbs/Init.js +53 -1
  150. package/dist/Verbs/Init.js.map +1 -1
  151. package/dist/Verbs/ListConnectionReferences.d.ts.map +1 -1
  152. package/dist/Verbs/ListConnectionReferences.js +1 -15
  153. package/dist/Verbs/ListConnectionReferences.js.map +1 -1
  154. package/dist/Verbs/ListDatasets.d.ts.map +1 -1
  155. package/dist/Verbs/ListDatasets.js +1 -15
  156. package/dist/Verbs/ListDatasets.js.map +1 -1
  157. package/dist/Verbs/ListEnvironmentVariables.d.ts.map +1 -1
  158. package/dist/Verbs/ListEnvironmentVariables.js +1 -15
  159. package/dist/Verbs/ListEnvironmentVariables.js.map +1 -1
  160. package/dist/Verbs/ListFlows.d.ts.map +1 -1
  161. package/dist/Verbs/ListFlows.js +1 -15
  162. package/dist/Verbs/ListFlows.js.map +1 -1
  163. package/dist/Verbs/ListSqlStoredProcedures.d.ts.map +1 -1
  164. package/dist/Verbs/ListSqlStoredProcedures.js +1 -15
  165. package/dist/Verbs/ListSqlStoredProcedures.js.map +1 -1
  166. package/dist/Verbs/ListTables.d.ts.map +1 -1
  167. package/dist/Verbs/ListTables.js +1 -15
  168. package/dist/Verbs/ListTables.js.map +1 -1
  169. package/dist/Verbs/MaafAppPermissions.d.ts +8 -17
  170. package/dist/Verbs/MaafAppPermissions.d.ts.map +1 -1
  171. package/dist/Verbs/MaafAppPermissions.js +84 -91
  172. package/dist/Verbs/MaafAppPermissions.js.map +1 -1
  173. package/dist/Verbs/Pack.d.ts +1 -1
  174. package/dist/Verbs/Pack.d.ts.map +1 -1
  175. package/dist/Verbs/Pack.js +109 -1
  176. package/dist/Verbs/Pack.js.map +1 -1
  177. package/dist/Verbs/RefreshDataSource.d.ts +10 -9
  178. package/dist/Verbs/RefreshDataSource.d.ts.map +1 -1
  179. package/dist/Verbs/RefreshDataSource.js +24 -23
  180. package/dist/Verbs/RefreshDataSource.js.map +1 -1
  181. package/dist/Verbs/RemoveDataSource.d.ts.map +1 -1
  182. package/dist/Verbs/RemoveDataSource.js +17 -3
  183. package/dist/Verbs/RemoveDataSource.js.map +1 -1
  184. package/dist/Verbs/ShareList.d.ts +10 -0
  185. package/dist/Verbs/ShareList.d.ts.map +1 -0
  186. package/dist/Verbs/ShareList.js +254 -0
  187. package/dist/Verbs/ShareList.js.map +1 -0
  188. package/dist/Verbs/VerbConstants.d.ts +44 -0
  189. package/dist/Verbs/VerbConstants.d.ts.map +1 -1
  190. package/dist/Verbs/VerbConstants.js +28 -0
  191. package/dist/Verbs/VerbConstants.js.map +1 -1
  192. package/dist/Verbs/index.d.ts +1 -0
  193. package/dist/Verbs/index.d.ts.map +1 -1
  194. package/dist/Verbs/index.js +1 -0
  195. package/dist/Verbs/index.js.map +1 -1
  196. package/package.json +4 -4
@@ -11,6 +11,7 @@ import { HelpStrings } from '../Constants/HelpStrings.js';
11
11
  import { UsageError } from '../Errors/CliError.js';
12
12
  import { printInfo, printJsonSuccess, printSuccess, printWarning } from '../Utils/ConsoleOutput.js';
13
13
  import { toRepoDetails } from '../Utils/RepoDetails.js';
14
+ import { externalRepositoryWarning, noRepositoryLinkedMessage, parseAccessLevel, resolveAppForEditAsync, resolveRepoType, } from '../Utils/ShareAccessRouting.js';
14
15
  import { ShareMaafAppArguments, UnshareMaafAppArguments } from './VerbConstants.js';
15
16
  /**
16
17
  * Implements `ms app share` and `ms app unshare` — adds or removes role
@@ -24,8 +25,12 @@ import { ShareMaafAppArguments, UnshareMaafAppArguments } from './VerbConstants.
24
25
  * 2. Require a loaded `ms.config.json`.
25
26
  * 3. Resolve `environmentId` (`--environment-id` flag wins; otherwise from config),
26
27
  * tenantId, and the requested access level (`--access play|edit`, default `play`).
27
- * 4. Read the comma-separated principals positional; resolve email-shaped inputs
28
- * to AAD object ids via Graph, pass GUID-shaped inputs through unchanged.
28
+ * 4. Read the comma-separated principals positional and resolve each entry:
29
+ * - GUID-shaped inputs pass through unchanged.
30
+ * - For app-scope share (`play`, or `edit` on a non-native repo), email-shaped
31
+ * inputs are passed straight through on `principal.email`.
32
+ * - For the GRS share path and every unshare path, email-shaped inputs are
33
+ * resolved to AAD object ids via Graph.
29
34
  * 5. Dispatch to the matching share/unshare path:
30
35
  * - `play` → MAAF `modifyRoleAssignments` (`MicrosoftAppReader` at app scope).
31
36
  * - `edit` + `repoType === 'native'` → fetch the app's `repositoryId` then
@@ -63,15 +68,17 @@ export async function executeMaafAppPermissionsAsync(argumentProvider, mode) {
63
68
  if (inputs.length === 0) {
64
69
  throw new UsageError('Provide at least one user or group as a comma-separated list (AAD object IDs or email addresses).');
65
70
  }
71
+ const emailPassthrough = mode === 'share' && (access === 'play' || repoType !== 'native');
66
72
  // Top-level scenario that ties together every server call the verb makes:
67
- // Graph principal resolution (`ResolvePrincipalByEmail` per email), optional
68
- // app-info fetch (`GetMaafApp`) when the edit path needs the `repositoryId`,
69
- // and the final modify call (one of `ModifyMaafRoleAssignments`,
70
- // `ModifyGrsRepositoryRoleAssignments`, `UnshareMaafAppByPrincipals`, or
71
- // `UnshareGrsRepoByPrincipals`). Each of those actions already emits its own
72
- // wire-scoped scenario; this scenario captures the verb-level outcome plus
73
- // the routing decision (scope/role) so we can correlate. All properties are
74
- // PII-safe — counts and routing flags only, no emails / GUIDs / app names.
73
+ // Graph principal resolution (`ResolvePrincipalByEmail` per email, skipped on
74
+ // the email-passthrough share path), optional app-info fetch (`GetMaafApp`)
75
+ // when the edit path needs the `repositoryId`, and the final modify call (one
76
+ // of `ModifyMaafRoleAssignments`, `ModifyGrsRepositoryRoleAssignments`,
77
+ // `UnshareMaafAppByPrincipals`, or `UnshareGrsRepoByPrincipals`). Each of those
78
+ // actions already emits its own wire-scoped scenario; this scenario captures
79
+ // the verb-level outcome plus the routing decision (scope/role) so we can
80
+ // correlate. All properties are PII-safe — counts and routing flags only, no
81
+ // emails / GUIDs / app names.
75
82
  const logger = getCliLogger();
76
83
  const scenario = logger.trackScenario('MaafApp.SharePermissions', {
77
84
  mode,
@@ -83,15 +90,17 @@ export async function executeMaafAppPermissionsAsync(argumentProvider, mode) {
83
90
  // Failures (bad shape, no Graph match, transport error) are collected here so
84
91
  // we can warn the user but still proceed with the entries that resolved.
85
92
  const failures = [];
86
- const refs = await resolveAllAsync(inputs, failures);
87
- // Verb-level summary of the Graph fan-out. Each underlying lookup also
88
- // emits a `ResolvePrincipalByEmail` scenario; this event makes the
89
- // aggregate result queryable per share/unshare invocation.
93
+ const refs = await resolveAllAsync(inputs, failures, emailPassthrough);
94
+ // Verb-level summary of the principal resolution fan-out. On the Graph paths
95
+ // each underlying lookup also emits a `ResolvePrincipalByEmail` scenario; on
96
+ // the email-passthrough share path no Graph call is made and entries resolve
97
+ // locally. This event makes the aggregate result queryable per invocation.
90
98
  logger.trackActivityEvent('MaafApp.SharePermissions.PrincipalResolution', {
91
99
  mode,
92
100
  inputCount: inputs.length,
93
101
  resolvedCount: refs.length,
94
102
  failedCount: failures.length,
103
+ emailPassthrough,
95
104
  });
96
105
  // If nothing resolved, the operation has no inputs to apply — abort with a
97
106
  // single error listing every failure rather than calling the RP with an empty
@@ -183,12 +192,6 @@ export async function executeMaafAppPermissionsAsync(argumentProvider, mode) {
183
192
  throw error;
184
193
  }
185
194
  }
186
- const noRepositoryLinkedMessage = 'Cannot share source code — no repository linked.\n\n' +
187
- "This app has no linked repository, so source code isn't stored on the platform. " +
188
- "To collaborate on code, run 'ms app init' to create an app instance with a repo, " +
189
- 'or share the source with your collaborator directly.';
190
- const externalRepositoryWarning = 'This app is not backed by a platform managed repo. ' +
191
- 'Repository access must be configured in the external repository.';
192
195
  async function shareDispatchAsync(inputs) {
193
196
  const { tenantId, environmentId, appName, access, refs, repoType, jsonMode } = inputs;
194
197
  if (access === 'play') {
@@ -232,8 +235,9 @@ async function shareDispatchAsync(inputs) {
232
235
  }
233
236
  async function unshareDispatchAsync(inputs) {
234
237
  const { tenantId, environmentId, appName, access, refs, repoType, jsonMode } = inputs;
235
- const principalIds = refs.map((r) => r.id);
236
- const refsByPrincipalId = new Map(refs.map((r) => [r.id, r]));
238
+ // Unshare never uses email passthrough, so every ref carries a resolved id.
239
+ const principalIds = refs.map(requirePrincipalIdForUnshare);
240
+ const refsByPrincipalId = new Map(refs.map((r) => [requirePrincipalIdForUnshare(r), r]));
237
241
  if (access === 'edit' && repoType === 'none') {
238
242
  throw new UsageError(noRepositoryLinkedMessage);
239
243
  }
@@ -281,44 +285,11 @@ async function unshareDispatchAsync(inputs) {
281
285
  { id: s.principalObjectId, input: s.principalObjectId }),
282
286
  };
283
287
  }
284
- /**
285
- * Resolves the effective {@link RepoType} from an `AppConfig`.
286
- *
287
- * Hard rule: if `repoType` is missing AND the config carries a (non-empty,
288
- * non-zero-GUID) `repositoryId`, refuse to guess - the user must re-run
289
- * `app init` to migrate the config. When both are missing we treat it as
290
- * `'none'`: there is no repo-scope to act on, and the app-scope fallback in
291
- * the share/unshare dispatchers handles edit correctly.
292
- */
293
- function resolveRepoType(appConfig) {
294
- if (appConfig.repoType) {
295
- return appConfig.repoType;
296
- }
297
- const hasRepoId = !!appConfig.repositoryId && appConfig.repositoryId !== '00000000-0000-0000-0000-000000000000';
298
- if (hasRepoId) {
299
- throw new UsageError(`${AppConfigFileName} is missing the 'repoType' field but has a 'repositoryId' set. ` +
300
- `This usually means the file was written by an older CLI. ` +
301
- `Re-run "${CLI_BINARY_NAME} app init" to migrate the config, then retry.`);
288
+ function requirePrincipalIdForUnshare(ref) {
289
+ if (!ref.id) {
290
+ throw new UsageError(`Could not resolve '${ref.input}' to an AAD object ID. Unshare requires object IDs.`);
302
291
  }
303
- return 'none';
304
- }
305
- /**
306
- * Fetches the app definition via the info action and validates it carries a
307
- * `repositoryId`. Used by the `edit` access paths to drive the GRS repo-scope
308
- * share/unshare endpoints; the returned definition is also reused to surface
309
- * the post-share repository details (avoiding a second GET on the native path).
310
- */
311
- async function resolveAppForEditAsync(args) {
312
- const app = await infoAsync({
313
- tenantId: args.tenantId,
314
- environmentId: args.environmentId,
315
- logger: getCliLogger(),
316
- actionsParams: { appName: args.appName },
317
- });
318
- if (!app.repositoryId) {
319
- throw new UsageError(`App '${args.appName}' has no associated repository, so edit access cannot be modified.`);
320
- }
321
- return app;
292
+ return ref.id;
322
293
  }
323
294
  /**
324
295
  * Best-effort resolution of the app's repository details
@@ -358,22 +329,6 @@ function printRepoDetails(details) {
358
329
  printInfo(`Clone URL: ${details.cloneUrl}`);
359
330
  }
360
331
  }
361
- /**
362
- * Parses the `--access` flag value. Defaults to `'play'` when omitted so the
363
- * verb keeps its pre-flag behaviour for callers that haven't migrated. Throws
364
- * a `UsageError` on any other value — Commander.js doesn't enforce enum
365
- * membership by default and we want a precise error message.
366
- *
367
- * `play` and `edit` are the only externally visible levels. The role and scope
368
- * the level resolves to are decided downstream (see {@link MaafAppAccessLevel}).
369
- */
370
- function parseAccessLevel(raw) {
371
- const value = (raw ?? 'play').trim().toLowerCase();
372
- if (value === 'play' || value === 'edit') {
373
- return value;
374
- }
375
- throw new UsageError(`Unknown --access value '${raw}'. Use 'play' (default — app access) or 'edit' (edit access).`);
376
- }
377
332
  /**
378
333
  * Splits a comma-separated string into a deduplicated, trimmed list of inputs.
379
334
  * Each entry is either an AAD object id (GUID) or an email address. Empty
@@ -391,20 +346,24 @@ function parseInputs(raw) {
391
346
  return [...seen];
392
347
  }
393
348
  /**
394
- * Resolves a list of principal inputs to AAD object ids. GUIDs pass through
395
- * unchanged; anything containing `@` is treated as an email and resolved via
396
- * Microsoft Graph.
349
+ * Resolves a list of principal inputs to {@link ResolvedRef}s. GUIDs pass
350
+ * through unchanged. Email-shaped inputs are handled one of two ways:
351
+ *
352
+ * - `emailPassthrough === true` (app-scope share): the email is carried
353
+ * verbatim on the ref (`{ input, email }`, no `id`).
354
+ * - `emailPassthrough === false` (GRS share, any unshare): the email is
355
+ * resolved to an AAD object id via Microsoft Graph.
397
356
  *
398
- * Per-entry failures (malformed input, no Graph match, transport error like
399
- * 403 on the group lookup) are pushed to the shared `failures` array rather
400
- * than throwing, so one bad email doesn't kill an otherwise-valid batch.
357
+ * Per-entry failures (malformed input, no Graph match, transport error like a
358
+ * 403 on the group lookup) are pushed to the shared `failures` array rather than
359
+ * throwing, so one bad entry doesn't kill an otherwise-valid batch.
401
360
  *
402
- * Resolution runs Graph calls in parallel (`Promise.all`), with an in-flight
403
- * map coalescing concurrent requests for the same email. The cache deduplicates
361
+ * Graph resolution runs in parallel (`Promise.all`), with an in-flight map
362
+ * coalescing concurrent requests for the same email. The cache deduplicates
404
363
  * within a single invocation (e.g. the same email listed twice round-trips Graph
405
364
  * once).
406
365
  */
407
- async function resolveAllAsync(inputs, failures) {
366
+ async function resolveAllAsync(inputs, failures, emailPassthrough) {
408
367
  const cache = new Map();
409
368
  const inFlight = new Map();
410
369
  const settled = await Promise.all(inputs.map(async (input) => {
@@ -424,6 +383,11 @@ async function resolveAllAsync(inputs, failures) {
424
383
  });
425
384
  return null;
426
385
  }
386
+ if (emailPassthrough) {
387
+ const ref = { input, email: input };
388
+ cache.set(cacheKey, ref);
389
+ return ref;
390
+ }
427
391
  try {
428
392
  let resolution = inFlight.get(cacheKey);
429
393
  if (!resolution) {
@@ -456,7 +420,18 @@ async function resolveAllAsync(inputs, failures) {
456
420
  return null;
457
421
  }
458
422
  }));
459
- return settled.filter((r) => r !== null);
423
+ const resolved = settled.filter((r) => r !== null);
424
+ // Collapse duplicate refs that survived the concurrent fan-out.
425
+ const deduped = [];
426
+ const seenKeys = new Set();
427
+ for (const ref of resolved) {
428
+ const key = (ref.id ?? ref.email ?? ref.input).toLowerCase();
429
+ if (seenKeys.has(key))
430
+ continue;
431
+ seenKeys.add(key);
432
+ deduped.push(ref);
433
+ }
434
+ return deduped;
460
435
  }
461
436
  /**
462
437
  * Renders the failure list as a single multi-line message. The intro line
@@ -541,19 +516,31 @@ function looksLikeEmail(input) {
541
516
  /**
542
517
  * Builds a `MaafAppPermission` from a resolved reference. The `name` field is a
543
518
  * display label echoed back unchanged on the response — we prefer the friendly
544
- * displayName from Graph, fall back to the original input. Setting `principal.email`
545
- * (when the user supplied one) keeps the wire payload self-describing for server
546
- * logs even though the response strips it.
519
+ * displayName from Graph, fall back to the original input (which for the
520
+ * email-passthrough path is the email itself).
521
+
547
522
  */
548
523
  function toMaafPermissionEntry(ref, role) {
549
524
  return {
550
525
  name: ref.displayName ?? ref.input,
551
526
  properties: {
552
527
  roleName: role,
553
- principal: ref.email ? { id: ref.id, email: ref.email } : { id: ref.id },
528
+ principal: buildMaafPrincipal(ref),
554
529
  },
555
530
  };
556
531
  }
532
+ /**
533
+ * Maps a {@link ResolvedRef} to a {@link MaafPrincipal}. Prefers the AAD object
534
+ * id when present; otherwise emits an email-only principal for the server to
535
+ * resolve. `resolveAllAsync` guarantees at least one of `id`/`email` is set, so
536
+ * the final `email` is always defined when `id` is absent.
537
+ */
538
+ function buildMaafPrincipal(ref) {
539
+ if (ref.id) {
540
+ return ref.email ? { id: ref.id, email: ref.email } : { id: ref.id };
541
+ }
542
+ return { email: ref.email ?? ref.input };
543
+ }
557
544
  /**
558
545
  * Builds a `GrsRepoPermission` from a resolved reference for the `edit` access
559
546
  * path. Mirrors {@link toMaafPermissionEntry} — same `name` semantics, same
@@ -563,11 +550,14 @@ function toMaafPermissionEntry(ref, role) {
563
550
  * even when the user originally provided one.
564
551
  */
565
552
  function toGrsPermissionEntry(ref) {
553
+ // The GRS share path only runs for native-repo edit, which never uses email
554
+ // passthrough, so `ref.id` is always resolved here.
555
+ const id = ref.id ?? ref.input;
566
556
  return {
567
557
  name: ref.displayName ?? ref.input,
568
558
  properties: {
569
559
  roleName: GrsRepositoryContributorRoleName,
570
- principal: ref.type ? { id: ref.id, type: ref.type } : { id: ref.id },
560
+ principal: ref.type ? { id, type: ref.type } : { id },
571
561
  },
572
562
  };
573
563
  }
@@ -577,9 +567,12 @@ function toGrsPermissionEntry(ref) {
577
567
  * useful for stderr warnings, but redundant in structured JSON where consumers
578
568
  * already have the original list) and exposes only `id` plus a friendly
579
569
  * `label` (Graph displayName when available, else the input).
570
+ *
571
+ * Only the unshare path populates these arrays, and unshare always resolves
572
+ * ids, so `ref.id` is present here.
580
573
  */
581
574
  function toJsonRef(ref) {
582
- return { id: ref.id, label: ref.displayName ?? ref.input };
575
+ return { id: ref.id ?? ref.input, label: ref.displayName ?? ref.input };
583
576
  }
584
577
  /**
585
578
  * For share, the granted count comes from the server echo (the spec lets the
@@ -1 +1 @@
1
- {"version":3,"file":"MaafAppPermissions.js","sourceRoot":"","sources":["../../src/Verbs/MaafAppPermissions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MaafAppPermissions.js","sourceRoot":"","sources":["../../src/Verbs/MaafAppPermissions.ts"],"names":[],"mappings":"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"}
@@ -35,7 +35,7 @@ export interface PackResult {
35
35
  appId: string;
36
36
  /** Root of the packed output: `<projectRoot>/.{CLI_BINARY_NAME}/packed/`. */
37
37
  packedFolder: string;
38
- /** Per-app folder `<packedFolder>/apps/<appId>/` containing ms.config.json, manifest.json, dataSources.json, and client/. */
38
+ /** Per-app folder `<packedFolder>/apps/<appId>/` containing ms.config.json, manifest.json, optional dataSchema.json, optional dataSources.json, and client/. */
39
39
  packAppOutputDir: string;
40
40
  /** Per-app client folder inside `packedFolder` containing the copied build output. */
41
41
  packClientOutputDir: string;
@@ -1 +1 @@
1
- {"version":3,"file":"Pack.d.ts","sourceRoot":"","sources":["../../src/Verbs/Pack.ts"],"names":[],"mappings":"AAAA;;GAEG;AAMH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uCAAuC,CAAC;AAOvE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAsB5D;;;;;;;;;;GAUG;AACH,MAAM,WAAW,WAAW;IAC1B,qFAAqF;IACrF,aAAa,EAAE,MAAM,CAAC;IACtB,+EAA+E;IAC/E,YAAY,EAAE,MAAM,CAAC;IACrB,qFAAqF;IACrF,aAAa,EAAE,MAAM,CAAC;IACtB,+FAA+F;IAC/F,oBAAoB,EAAE,MAAM,CAAC;IAC7B,2FAA2F;IAC3F,iBAAiB,EAAE,MAAM,CAAC;IAC1B,kFAAkF;IAClF,kBAAkB,EAAE,MAAM,CAAC;IAC3B,4EAA4E;IAC5E,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,UAAU;IACzB,6CAA6C;IAC7C,KAAK,EAAE,MAAM,CAAC;IACd,6EAA6E;IAC7E,YAAY,EAAE,MAAM,CAAC;IACrB,6HAA6H;IAC7H,gBAAgB,EAAE,MAAM,CAAC;IACzB,sFAAsF;IACtF,mBAAmB,EAAE,MAAM,CAAC;IAC5B,2DAA2D;IAC3D,OAAO,EAAE,WAAW,CAAC;CACtB;AAED,MAAM,WAAW,WAAW;IAC1B;;;;;OAKG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CACrC,SAAS,EAAE,SAAS,GACnB,OAAO,CAAC,SAAS,IAAI,SAAS,GAC/B,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,GAAG,cAAc,GAAG,iBAAiB,CAAC,CAAC,CAY5E;AAED;;;;GAIG;AACH,wBAAsB,oBAAoB,CAAC,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC,UAAU,CAAC,CAkKzF;AA8ED,wBAAsB,SAAS,CAAC,gBAAgB,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAejF"}
1
+ {"version":3,"file":"Pack.d.ts","sourceRoot":"","sources":["../../src/Verbs/Pack.ts"],"names":[],"mappings":"AAAA;;GAEG;AAMH,OAAO,KAAK,EAAE,SAAS,EAAgB,MAAM,uCAAuC,CAAC;AAYrF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAyB5D;;;;;;;;;;GAUG;AACH,MAAM,WAAW,WAAW;IAC1B,qFAAqF;IACrF,aAAa,EAAE,MAAM,CAAC;IACtB,+EAA+E;IAC/E,YAAY,EAAE,MAAM,CAAC;IACrB,qFAAqF;IACrF,aAAa,EAAE,MAAM,CAAC;IACtB,+FAA+F;IAC/F,oBAAoB,EAAE,MAAM,CAAC;IAC7B,2FAA2F;IAC3F,iBAAiB,EAAE,MAAM,CAAC;IAC1B,kFAAkF;IAClF,kBAAkB,EAAE,MAAM,CAAC;IAC3B,4EAA4E;IAC5E,OAAO,EAAE,MAAM,CAAC;CACjB;AAOD,MAAM,WAAW,UAAU;IACzB,6CAA6C;IAC7C,KAAK,EAAE,MAAM,CAAC;IACd,6EAA6E;IAC7E,YAAY,EAAE,MAAM,CAAC;IACrB,gKAAgK;IAChK,gBAAgB,EAAE,MAAM,CAAC;IACzB,sFAAsF;IACtF,mBAAmB,EAAE,MAAM,CAAC;IAC5B,2DAA2D;IAC3D,OAAO,EAAE,WAAW,CAAC;CACtB;AAED,MAAM,WAAW,WAAW;IAC1B;;;;;OAKG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CACrC,SAAS,EAAE,SAAS,GACnB,OAAO,CAAC,SAAS,IAAI,SAAS,GAC/B,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,GAAG,cAAc,GAAG,iBAAiB,CAAC,CAAC,CAY5E;AA0ID;;;;GAIG;AACH,wBAAsB,oBAAoB,CAAC,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC,UAAU,CAAC,CAiLzF;AA8ED,wBAAsB,SAAS,CAAC,gBAAgB,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAejF"}
@@ -4,7 +4,7 @@
4
4
  import * as fsp from 'node:fs/promises';
5
5
  import * as path from 'node:path';
6
6
  import { GENERATED_FOLDERNAME } from '@microsoft/managed-apps-codegen';
7
- import { AppConfigFileName } from '@microsoft/managed-apps-common/config';
7
+ import { AppConfigFileName, parseStageOverlayFile, resolveStageConfig, STAGE_CONFIG_FILE_REGEX, } from '@microsoft/managed-apps-common/config';
8
8
  import { PACK_MANIFEST_VERSION } from '@microsoft/managed-apps-common/types';
9
9
  import JSON5 from 'json5';
10
10
  import packageJson from '../../package.json' with { type: 'json' };
@@ -20,6 +20,8 @@ import { CliSpinner } from '../Utils/Spinner.js';
20
20
  const CLIENT_DIRECTORY_NAME = 'client';
21
21
  const MANIFEST_FILENAME = 'manifest.json';
22
22
  const DATA_SOURCES_JSON_FILENAME = 'dataSources.json';
23
+ const DATA_SCHEMA_FILENAME = 'dataSchema.json';
24
+ const MAX_DATA_SCHEMA_SIZE_BYTES = 10 * 1024 * 1024;
23
25
  /**
24
26
  * Validates the pack-related fields of `ms.config.json` (`buildPath`,
25
27
  * `buildCommand`, `buildEntryPoint`) without performing any I/O. Call this before
@@ -40,6 +42,102 @@ export function assertPackPreconditions(appConfig) {
40
42
  throw new ConfigurationError(`buildEntryPoint is required in ${AppConfigFileName} to pack an app`);
41
43
  }
42
44
  }
45
+ async function loadDataSchemaAsync(projectRoot, data) {
46
+ if (data === undefined) {
47
+ return undefined;
48
+ }
49
+ if (data === null || typeof data !== 'object') {
50
+ throw new ConfigurationError(`data must be an object with a schemaPath string: ${JSON.stringify(data)}`);
51
+ }
52
+ const schemaPath = 'schemaPath' in data ? data.schemaPath : undefined;
53
+ if (typeof schemaPath !== 'string') {
54
+ throw new ConfigurationError(`data.schemaPath must be a string: ${JSON.stringify(schemaPath)}`);
55
+ }
56
+ if (!schemaPath.trim()) {
57
+ throw new ConfigurationError(`data.schemaPath must not be empty: "${schemaPath}"`);
58
+ }
59
+ if (path.isAbsolute(schemaPath)) {
60
+ throw new ConfigurationError(`data.schemaPath must be relative to the project root: "${schemaPath}"`);
61
+ }
62
+ const resolvedSchemaPath = path.resolve(projectRoot, schemaPath);
63
+ const relativeSchemaPath = path.relative(projectRoot, resolvedSchemaPath);
64
+ if (relativeSchemaPath === '..' ||
65
+ relativeSchemaPath.startsWith(`..${path.sep}`) ||
66
+ path.isAbsolute(relativeSchemaPath)) {
67
+ throw new ConfigurationError(`data.schemaPath must not resolve outside the project root: "${schemaPath}"`);
68
+ }
69
+ let schemaStat;
70
+ try {
71
+ schemaStat = await fsp.stat(resolvedSchemaPath);
72
+ }
73
+ catch (error) {
74
+ throw new ConfigurationError(`Unable to access data.schemaPath "${schemaPath}": ${error.message}`);
75
+ }
76
+ if (!schemaStat.isFile()) {
77
+ throw new ConfigurationError(`data.schemaPath must reference a regular file: "${schemaPath}"`);
78
+ }
79
+ if (schemaStat.size > MAX_DATA_SCHEMA_SIZE_BYTES) {
80
+ throw new ConfigurationError(`data.schemaPath "${schemaPath}" is ${schemaStat.size} bytes, which exceeds the ${MAX_DATA_SCHEMA_SIZE_BYTES / (1024 * 1024)} MB limit`);
81
+ }
82
+ let schemaBuffer;
83
+ try {
84
+ schemaBuffer = await fsp.readFile(resolvedSchemaPath);
85
+ }
86
+ catch (error) {
87
+ throw new ConfigurationError(`Unable to read data.schemaPath "${schemaPath}": ${error.message}`);
88
+ }
89
+ try {
90
+ JSON.parse(schemaBuffer.toString('utf8'));
91
+ }
92
+ catch (error) {
93
+ throw new ConfigurationError(`data.schemaPath "${schemaPath}" must contain valid JSON: ${error.message}`);
94
+ }
95
+ return schemaBuffer;
96
+ }
97
+ /**
98
+ * Discovers `ms.config.<stage>.json` files in `projectRoot`, validates each as a legal
99
+ * stage overlay of `baseConfig`, and returns the fully-resolved (self-contained) effective
100
+ * config for each stage.
101
+ *
102
+ * Invalid stage filenames are silently ignored by the discovery filter.
103
+ */
104
+ async function discoverAndResolveStageConfigsAsync(projectRoot, baseConfig) {
105
+ const entries = await fsp.readdir(projectRoot, { withFileTypes: true });
106
+ const stageFiles = entries
107
+ .filter((entry) => entry.isFile() && STAGE_CONFIG_FILE_REGEX.test(entry.name))
108
+ .map((entry) => entry.name)
109
+ .sort();
110
+ if (stageFiles.length === 0) {
111
+ return [];
112
+ }
113
+ const results = [];
114
+ for (const stageFile of stageFiles) {
115
+ const stageName = STAGE_CONFIG_FILE_REGEX.exec(stageFile)[1];
116
+ let stageContent;
117
+ try {
118
+ stageContent = await fsp.readFile(path.join(projectRoot, stageFile), 'utf-8');
119
+ }
120
+ catch (e) {
121
+ throw new ConfigurationError(`Failed to read stage config: ${stageFile}: ${e.message}`);
122
+ }
123
+ let stageOverlay;
124
+ try {
125
+ stageOverlay = parseStageOverlayFile(stageContent);
126
+ }
127
+ catch (e) {
128
+ throw new ConfigurationError(`${stageFile}: ${e.message}`);
129
+ }
130
+ let resolvedConfig;
131
+ try {
132
+ ({ config: resolvedConfig } = resolveStageConfig(baseConfig, stageOverlay));
133
+ }
134
+ catch (e) {
135
+ throw new ConfigurationError(`${stageFile} contains invalid overrides:\n${e.message}`);
136
+ }
137
+ results.push({ stageName, resolvedConfig });
138
+ }
139
+ return results;
140
+ }
43
141
  /**
44
142
  * Runs the configured build command and copies its output into the canonical packed
45
143
  * layout `<projectRoot>/.{CLI_BINARY_NAME}/packed/apps/<appId>/client/`. Returns the
@@ -62,6 +160,7 @@ export async function packAppArtifactAsync(options = {}) {
62
160
  const packedFolder = path.join(projectRoot, `.${CLI_BINARY_NAME}`, 'packed');
63
161
  const packAppOutputDir = path.join(packedFolder, 'apps', appId);
64
162
  const packClientOutputDir = path.join(packAppOutputDir, CLIENT_DIRECTORY_NAME);
163
+ const dataSchema = await loadDataSchemaAsync(projectRoot, appConfig.data);
65
164
  // Validate functions config up-front so a missing directory fails before the
66
165
  // build runs.
67
166
  const functionsBaseDirectory = appConfig.functions?.baseDirectory
@@ -70,6 +169,7 @@ export async function packAppArtifactAsync(options = {}) {
70
169
  if (functionsBaseDirectory !== undefined) {
71
170
  await assertFunctionsDirectoryExists(functionsBaseDirectory);
72
171
  }
172
+ const stageConfigs = await discoverAndResolveStageConfigsAsync(projectRoot, appConfig);
73
173
  if (!quiet) {
74
174
  printInfo(`Running: ${buildCommand}`);
75
175
  }
@@ -93,7 +193,14 @@ export async function packAppArtifactAsync(options = {}) {
93
193
  await fsp.mkdir(packClientOutputDir, { recursive: true });
94
194
  await fsp.cp(resolvedBuildPath, packClientOutputDir, { recursive: true });
95
195
  await fsp.copyFile(path.resolve(fileConfig.appConfigPath), path.join(packAppOutputDir, AppConfigFileName));
196
+ if (dataSchema !== undefined) {
197
+ await fsp.writeFile(path.join(packAppOutputDir, DATA_SCHEMA_FILENAME), dataSchema);
198
+ }
96
199
  clientCopyMs = Date.now() - clientCopyStart;
200
+ // Write a fully-resolved (self-contained) config for each stage overlay present.
201
+ for (const { stageName, resolvedConfig } of stageConfigs) {
202
+ await fsp.writeFile(path.join(packAppOutputDir, `ms.config.${stageName}.json`), JSON.stringify(resolvedConfig, null, 2));
203
+ }
97
204
  const dataSourcesStart = Date.now();
98
205
  const dataSourcesJson = await extractDataSourcesAsync(projectRoot, packAppOutputDir, {
99
206
  quiet,
@@ -145,6 +252,7 @@ export async function packAppArtifactAsync(options = {}) {
145
252
  }
146
253
  : {}),
147
254
  ...(iconFileName ? { iconPath: iconFileName } : {}),
255
+ ...(dataSchema !== undefined ? { dataSchemaPath: DATA_SCHEMA_FILENAME } : {}),
148
256
  routes,
149
257
  };
150
258
  const manifestContent = JSON.stringify(manifest, null, 2);
@@ -1 +1 @@
1
- {"version":3,"file":"Pack.js","sourceRoot":"","sources":["../../src/Verbs/Pack.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Pack.js","sourceRoot":"","sources":["../../src/Verbs/Pack.ts"],"names":[],"mappings":"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"}
@@ -3,18 +3,19 @@
3
3
  */
4
4
  import type { ArgumentProvider } from '../ArgumentProvider.js';
5
5
  /**
6
- * `ms app refresh data-source` — regenerate TypeScript for the app's data sources.
6
+ * `ms app refresh data-source` — bring the app's generated data-source code back in sync.
7
7
  *
8
- * Only the `--offline` path is available today: it regenerates the models, services, and
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
9
13
  * `dataSources.ts` from the local schema files under `.ms/schemas/` (scanned recursively,
10
- * matching `*.Schema.json` by basename), without
11
- * contacting the service (no network, no authentication). This is the codegen half of a
12
- * refresh and is used by the code-app → managed-app migration to re-emit generated code from
13
- * ported schemas.
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.
14
17
  *
15
- * Online refresh (re-fetching schema metadata from the service) is not yet implemented;
16
- * invoking without `--offline` returns a UsageError. When it ships, the default (no-flag)
17
- * path will perform the online re-fetch and `--offline` will remain the local-only subset.
18
+ * `--name` targets a single data source in either mode; omit it to refresh all.
18
19
  */
19
20
  export declare function refreshDataSourceAsync(argumentProvider: ArgumentProvider): Promise<void>;
20
21
  //# sourceMappingURL=RefreshDataSource.d.ts.map