@microsoft/managed-apps-cli 0.9.2 → 0.10.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 (133) hide show
  1. package/README.md +23 -43
  2. package/dist/ArgumentProvider.d.ts.map +1 -1
  3. package/dist/ArgumentProvider.js +3 -0
  4. package/dist/ArgumentProvider.js.map +1 -1
  5. package/dist/Authentication/NodeMsalAuthenticationProvider.js +20 -1
  6. package/dist/Authentication/NodeMsalAuthenticationProvider.js.map +1 -1
  7. package/dist/Cli.d.ts.map +1 -1
  8. package/dist/Cli.js +12 -2
  9. package/dist/Cli.js.map +1 -1
  10. package/dist/Constants/CommandRegistry.d.ts.map +1 -1
  11. package/dist/Constants/CommandRegistry.js +5 -24
  12. package/dist/Constants/CommandRegistry.js.map +1 -1
  13. package/dist/Constants/HelpStrings.d.ts +8 -7
  14. package/dist/Constants/HelpStrings.d.ts.map +1 -1
  15. package/dist/Constants/HelpStrings.js +78 -73
  16. package/dist/Constants/HelpStrings.js.map +1 -1
  17. package/dist/Constants.d.ts +1 -1
  18. package/dist/Constants.d.ts.map +1 -1
  19. package/dist/Constants.js +4 -9
  20. package/dist/Constants.js.map +1 -1
  21. package/dist/Errors/GitHubErrorMap.d.ts +43 -14
  22. package/dist/Errors/GitHubErrorMap.d.ts.map +1 -1
  23. package/dist/Errors/GitHubErrorMap.js +188 -147
  24. package/dist/Errors/GitHubErrorMap.js.map +1 -1
  25. package/dist/Logger/CliLogger.d.ts +1 -0
  26. package/dist/Logger/CliLogger.d.ts.map +1 -1
  27. package/dist/Logger/CliLogger.js +5 -3
  28. package/dist/Logger/CliLogger.js.map +1 -1
  29. package/dist/Types/Argument.types.d.ts +1 -0
  30. package/dist/Types/Argument.types.d.ts.map +1 -1
  31. package/dist/Utils/DcfRecovery.d.ts +7 -7
  32. package/dist/Utils/DcfRecovery.d.ts.map +1 -1
  33. package/dist/Utils/DcfRecovery.js +17 -37
  34. package/dist/Utils/DcfRecovery.js.map +1 -1
  35. package/dist/Utils/DownloadTemplate.d.ts +45 -0
  36. package/dist/Utils/DownloadTemplate.d.ts.map +1 -0
  37. package/dist/Utils/DownloadTemplate.js +159 -0
  38. package/dist/Utils/DownloadTemplate.js.map +1 -0
  39. package/dist/Utils/EnvVars.d.ts +1 -1
  40. package/dist/Utils/EnvVars.d.ts.map +1 -1
  41. package/dist/Utils/GitVersionChecker.d.ts +38 -0
  42. package/dist/Utils/GitVersionChecker.d.ts.map +1 -0
  43. package/dist/Utils/GitVersionChecker.js +61 -0
  44. package/dist/Utils/GitVersionChecker.js.map +1 -0
  45. package/dist/Utils/MaafAppConfig.d.ts +22 -0
  46. package/dist/Utils/MaafAppConfig.d.ts.map +1 -0
  47. package/dist/Utils/MaafAppConfig.js +32 -0
  48. package/dist/Utils/MaafAppConfig.js.map +1 -0
  49. package/dist/Utils/NodeVersionChecker.d.ts +3 -6
  50. package/dist/Utils/NodeVersionChecker.d.ts.map +1 -1
  51. package/dist/Utils/NodeVersionChecker.js +9 -26
  52. package/dist/Utils/NodeVersionChecker.js.map +1 -1
  53. package/dist/Utils/Paging.d.ts +5 -0
  54. package/dist/Utils/Paging.d.ts.map +1 -1
  55. package/dist/Utils/Paging.js +29 -0
  56. package/dist/Utils/Paging.js.map +1 -1
  57. package/dist/Utils/PinCli.d.ts +28 -0
  58. package/dist/Utils/PinCli.d.ts.map +1 -0
  59. package/dist/Utils/PinCli.js +58 -0
  60. package/dist/Utils/PinCli.js.map +1 -0
  61. package/dist/Utils/RepoOption.d.ts +35 -0
  62. package/dist/Utils/RepoOption.d.ts.map +1 -0
  63. package/dist/Utils/RepoOption.js +36 -0
  64. package/dist/Utils/RepoOption.js.map +1 -0
  65. package/dist/Utils/Spinner.d.ts.map +1 -1
  66. package/dist/Utils/Spinner.js +3 -0
  67. package/dist/Utils/Spinner.js.map +1 -1
  68. package/dist/Verbs/AddAction.js +6 -6
  69. package/dist/Verbs/AddAction.js.map +1 -1
  70. package/dist/Verbs/AddConnector.d.ts +5 -3
  71. package/dist/Verbs/AddConnector.d.ts.map +1 -1
  72. package/dist/Verbs/AddConnector.js +45 -11
  73. package/dist/Verbs/AddConnector.js.map +1 -1
  74. package/dist/Verbs/AddConnectorFlows.d.ts +27 -14
  75. package/dist/Verbs/AddConnectorFlows.d.ts.map +1 -1
  76. package/dist/Verbs/AddConnectorFlows.js +70 -20
  77. package/dist/Verbs/AddConnectorFlows.js.map +1 -1
  78. package/dist/Verbs/AddDataSource.d.ts +3 -4
  79. package/dist/Verbs/AddDataSource.d.ts.map +1 -1
  80. package/dist/Verbs/AddDataSource.js +9 -20
  81. package/dist/Verbs/AddDataSource.js.map +1 -1
  82. package/dist/Verbs/AddTable.js +6 -6
  83. package/dist/Verbs/AddTable.js.map +1 -1
  84. package/dist/Verbs/AuthStatus.d.ts.map +1 -1
  85. package/dist/Verbs/AuthStatus.js +7 -4
  86. package/dist/Verbs/AuthStatus.js.map +1 -1
  87. package/dist/Verbs/BuildMaafApp.js +1 -1
  88. package/dist/Verbs/BuildMaafApp.js.map +1 -1
  89. package/dist/Verbs/ConnectorHelpers.d.ts +3 -4
  90. package/dist/Verbs/ConnectorHelpers.d.ts.map +1 -1
  91. package/dist/Verbs/ConnectorHelpers.js +8 -9
  92. package/dist/Verbs/ConnectorHelpers.js.map +1 -1
  93. package/dist/Verbs/CreateMaafApp.d.ts +0 -29
  94. package/dist/Verbs/CreateMaafApp.d.ts.map +1 -1
  95. package/dist/Verbs/CreateMaafApp.js +100 -171
  96. package/dist/Verbs/CreateMaafApp.js.map +1 -1
  97. package/dist/Verbs/DeleteDataSource.js +6 -6
  98. package/dist/Verbs/DeleteDataSource.js.map +1 -1
  99. package/dist/Verbs/DeployMaafApp.d.ts.map +1 -1
  100. package/dist/Verbs/DeployMaafApp.js +4 -4
  101. package/dist/Verbs/DeployMaafApp.js.map +1 -1
  102. package/dist/Verbs/Dev.js +1 -1
  103. package/dist/Verbs/Dev.js.map +1 -1
  104. package/dist/Verbs/GetMaafBuildStatus.d.ts.map +1 -1
  105. package/dist/Verbs/GetMaafBuildStatus.js +52 -3
  106. package/dist/Verbs/GetMaafBuildStatus.js.map +1 -1
  107. package/dist/Verbs/GetSettings.js +1 -1
  108. package/dist/Verbs/GetSettings.js.map +1 -1
  109. package/dist/Verbs/Init.d.ts.map +1 -1
  110. package/dist/Verbs/Init.js +166 -58
  111. package/dist/Verbs/Init.js.map +1 -1
  112. package/dist/Verbs/ListConnectorActions.js +12 -9
  113. package/dist/Verbs/ListConnectorActions.js.map +1 -1
  114. package/dist/Verbs/ListConnectors.js +2 -2
  115. package/dist/Verbs/ListConnectors.js.map +1 -1
  116. package/dist/Verbs/ListMaafApps.js +3 -3
  117. package/dist/Verbs/ListMaafApps.js.map +1 -1
  118. package/dist/Verbs/MaafAppPermissions.js +2 -2
  119. package/dist/Verbs/MaafAppPermissions.js.map +1 -1
  120. package/dist/Verbs/RefreshDataSource.js +1 -1
  121. package/dist/Verbs/RefreshDataSource.js.map +1 -1
  122. package/dist/Verbs/RefreshGitAuth.d.ts.map +1 -1
  123. package/dist/Verbs/RefreshGitAuth.js +3 -15
  124. package/dist/Verbs/RefreshGitAuth.js.map +1 -1
  125. package/dist/Verbs/SetSetting.js +2 -2
  126. package/dist/Verbs/SetSetting.js.map +1 -1
  127. package/dist/Verbs/ShowMaafApp.js +2 -2
  128. package/dist/Verbs/ShowMaafApp.js.map +1 -1
  129. package/dist/Verbs/VerbConstants.d.ts +19 -22
  130. package/dist/Verbs/VerbConstants.d.ts.map +1 -1
  131. package/dist/Verbs/VerbConstants.js +19 -22
  132. package/dist/Verbs/VerbConstants.js.map +1 -1
  133. package/package.json +10 -8
@@ -1,38 +1,21 @@
1
1
  /*!
2
2
  * Copyright (C) Microsoft Corporation. All rights reserved.
3
3
  */
4
+ import semver from 'semver';
4
5
  import packageJson from '../../package.json' with { type: 'json' };
5
6
  import { printWarning } from './ConsoleOutput.js';
6
7
  /**
7
- * Best-effort guard: warn (never throw) when the running Node.js is older than the
8
- * minimum declared in this package's `engines.node`. Mirrors `scripts/check-bun-version.ts`.
9
- * Emits via `printWarning` — stderr, so it can't corrupt a `--json` stdout envelope, with
10
- * NO_COLOR/TTY handled by `styleText`.
8
+ * Best-effort guard: warn (never throw) when the running Node.js doesn't satisfy this package's
9
+ * `engines.node` range. Mirrors `scripts/check-bun-version.ts`. Emits via `printWarning` — stderr,
10
+ * so it can't corrupt a `--json` stdout envelope, with NO_COLOR/TTY handled by `styleText`.
11
11
  */
12
12
  export function warnIfNodeVersionUnsupported() {
13
- const required = packageJson.engines?.node;
14
- if (!required)
13
+ const required = packageJson.engines.node;
14
+ // `semver` lets the engine be any valid range (e.g. `>=24.11.0`, or `^24 || >=26` to allow 24 and
15
+ // 26 but not 25). An invalid range counts as unsupported; the check never throws.
16
+ if (Boolean(semver.validRange(required)) && semver.satisfies(process.versions.node, required)) {
15
17
  return;
16
- const requiredParts = parseVersion(required);
17
- if (requiredParts.length === 0)
18
- return;
19
- if (!isVersionLower(parseVersion(process.versions.node), requiredParts))
20
- return;
21
- printWarning(`Warning: Your Node.js version ${process.versions.node} doesn't match required version ${required}; please upgrade Node.js.`);
22
- }
23
- /** Parse the leading `major.minor.patch` out of a version or range string (`>=24.5.0` → `[24, 5, 0]`). */
24
- export function parseVersion(value) {
25
- const match = value.match(/(\d+)(?:\.(\d+))?(?:\.(\d+))?/);
26
- return match ? [Number(match[1]), Number(match[2] ?? 0), Number(match[3] ?? 0)] : [];
27
- }
28
- /** True when `actual` is strictly older than `required`, compared by major, then minor, then patch. */
29
- function isVersionLower(actual, required) {
30
- for (let i = 0; i < 3; i++) {
31
- const a = actual[i] ?? 0;
32
- const r = required[i] ?? 0;
33
- if (a !== r)
34
- return a < r;
35
18
  }
36
- return false;
19
+ printWarning(`Warning: Your Node.js version ${process.versions.node} doesn't match requirement ${required}; Please install a compatible Node.js version.`);
37
20
  }
38
21
  //# sourceMappingURL=NodeVersionChecker.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"NodeVersionChecker.js","sourceRoot":"","sources":["../../src/Utils/NodeVersionChecker.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,WAAW,MAAM,oBAAoB,CAAC,OAAO,IAAI,EAAE,MAAM,EAAE,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C;;;;;GAKG;AACH,MAAM,UAAU,4BAA4B;IAC1C,MAAM,QAAQ,GAAG,WAAW,CAAC,OAAO,EAAE,IAAI,CAAC;IAC3C,IAAI,CAAC,QAAQ;QAAE,OAAO;IAEtB,MAAM,aAAa,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC;IAC7C,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO;IACvC,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,aAAa,CAAC;QAAE,OAAO;IAEhF,YAAY,CACV,iCAAiC,OAAO,CAAC,QAAQ,CAAC,IAAI,mCAAmC,QAAQ,2BAA2B,CAC7H,CAAC;AACJ,CAAC;AAED,0GAA0G;AAC1G,MAAM,UAAU,YAAY,CAAC,KAAa;IACxC,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC;IAC3D,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACvF,CAAC;AAED,uGAAuG;AACvG,SAAS,cAAc,CAAC,MAAgB,EAAE,QAAkB;IAC1D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3B,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACzB,MAAM,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAC3B,IAAI,CAAC,KAAK,CAAC;YAAE,OAAO,CAAC,GAAG,CAAC,CAAC;IAC5B,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"NodeVersionChecker.js","sourceRoot":"","sources":["../../src/Utils/NodeVersionChecker.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,MAAM,MAAM,QAAQ,CAAC;AAE5B,OAAO,WAAW,MAAM,oBAAoB,CAAC,OAAO,IAAI,EAAE,MAAM,EAAE,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C;;;;GAIG;AACH,MAAM,UAAU,4BAA4B;IAC1C,MAAM,QAAQ,GAAG,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC;IAC1C,kGAAkG;IAClG,kFAAkF;IAClF,IAAI,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,IAAI,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,EAAE,CAAC;QAC9F,OAAO;IACT,CAAC;IAED,YAAY,CACV,iCAAiC,OAAO,CAAC,QAAQ,CAAC,IAAI,8BAA8B,QAAQ,gDAAgD,CAC7I,CAAC;AACJ,CAAC"}
@@ -8,6 +8,11 @@ export declare const PAGE_SIZE = 20;
8
8
  * Enter/Space = continue, Esc/q = exit, Ctrl+C = process exit.
9
9
  */
10
10
  export declare function waitForPageKey(): Promise<'continue' | 'exit'>;
11
+ /**
12
+ * Prints a paginated text blob in TTY mode (PAGE_SIZE lines per page,
13
+ * Enter/Esc to navigate) or the full text in non-TTY/piped mode.
14
+ */
15
+ export declare function printPagedText(text: string): Promise<void>;
11
16
  /**
12
17
  * Prints a paginated table in TTY mode (20 rows per page, Enter/Esc to navigate)
13
18
  * or a single full table in non-TTY/piped mode.
@@ -1 +1 @@
1
- {"version":3,"file":"Paging.d.ts","sourceRoot":"","sources":["../../src/Utils/Paging.ts"],"names":[],"mappings":"AAAA;;GAEG;AAMH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAGjD,eAAO,MAAM,SAAS,KAAK,CAAC;AAE5B;;;GAGG;AACH,wBAAsB,cAAc,IAAI,OAAO,CAAC,UAAU,GAAG,MAAM,CAAC,CA2BnE;AAED;;;GAGG;AACH,wBAAsB,eAAe,CAAC,OAAO,EAAE;IAC7C,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,OAAO,EAAE,SAAS,EAAE,CAAC;IACrB,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;CACpB,GAAG,OAAO,CAAC,IAAI,CAAC,CA4BhB"}
1
+ {"version":3,"file":"Paging.d.ts","sourceRoot":"","sources":["../../src/Utils/Paging.ts"],"names":[],"mappings":"AAAA;;GAEG;AAMH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAGjD,eAAO,MAAM,SAAS,KAAK,CAAC;AAE5B;;;GAGG;AACH,wBAAsB,cAAc,IAAI,OAAO,CAAC,UAAU,GAAG,MAAM,CAAC,CA2BnE;AAED;;;GAGG;AACH,wBAAsB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CA4BhE;AAED;;;GAGG;AACH,wBAAsB,eAAe,CAAC,OAAO,EAAE;IAC7C,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,OAAO,EAAE,SAAS,EAAE,CAAC;IACrB,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;CACpB,GAAG,OAAO,CAAC,IAAI,CAAC,CA4BhB"}
@@ -35,6 +35,35 @@ export async function waitForPageKey() {
35
35
  process.stdin.on('keypress', handler);
36
36
  });
37
37
  }
38
+ /**
39
+ * Prints a paginated text blob in TTY mode (PAGE_SIZE lines per page,
40
+ * Enter/Esc to navigate) or the full text in non-TTY/piped mode.
41
+ */
42
+ export async function printPagedText(text) {
43
+ const lines = text.split(/\r?\n/);
44
+ if (!process.stdout.isTTY) {
45
+ for (const line of lines) {
46
+ console.log(line);
47
+ }
48
+ return;
49
+ }
50
+ const total = lines.length;
51
+ const totalPages = Math.max(1, Math.ceil(total / PAGE_SIZE));
52
+ for (let page = 0; page < totalPages; page++) {
53
+ const start = page * PAGE_SIZE;
54
+ const pageLines = lines.slice(start, start + PAGE_SIZE);
55
+ const isLastPage = page === totalPages - 1;
56
+ for (const line of pageLines) {
57
+ console.log(line);
58
+ }
59
+ if (isLastPage)
60
+ break;
61
+ console.log(styleText('dim', ' Press Enter for more, Esc or q to exit'));
62
+ const action = await waitForPageKey();
63
+ if (action === 'exit')
64
+ break;
65
+ }
66
+ }
38
67
  /**
39
68
  * Prints a paginated table in TTY mode (20 rows per page, Enter/Esc to navigate)
40
69
  * or a single full table in non-TTY/piped mode.
@@ -1 +1 @@
1
- {"version":3,"file":"Paging.js","sourceRoot":"","sources":["../../src/Utils/Paging.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Paging.js","sourceRoot":"","sources":["../../src/Utils/Paging.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,28 @@
1
+ /*!
2
+ * Copyright (C) Microsoft Corporation. All rights reserved.
3
+ */
4
+ /**
5
+ * Pins the running CLI into an app's `package.json` as a `devDependency` at the
6
+ * exact version of the CLI executing the command (read from this package's own
7
+ * manifest, so it always matches the running CLI).
8
+ *
9
+ * Used by `ms app create` (right after the template is scaffolded) and `ms app
10
+ * init` (binding an existing project) so the app carries a project-local `ms` at
11
+ * the version it was set up with — which `npx ms` / `pnpm exec` / `bun x` resolve
12
+ * ahead of any globally-installed CLI. The app therefore keeps building and
13
+ * deploying against the CLI it was created with, even if the developer's global
14
+ * CLI later moves to an incompatible version.
15
+ *
16
+ * Best-effort and non-fatal — the server-side app already exists by the time this
17
+ * runs:
18
+ * - No `package.json` in `appDir` (e.g. `ms app create` with a custom
19
+ * `--template` that isn't an npm project) → nothing to pin; return quietly.
20
+ * - Read / parse / write failure → warn (outside `--json` mode) and continue;
21
+ * the user can add the pin by hand.
22
+ *
23
+ * The entry overwrites any existing CLI `devDependencies` entry, and
24
+ * `devDependencies` is re-sorted alphabetically to match the npm convention so a
25
+ * later `install --save` won't reshuffle the file.
26
+ */
27
+ export declare function pinCliIntoAppPackageJson(appDir: string, jsonMode: boolean): void;
28
+ //# sourceMappingURL=PinCli.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PinCli.d.ts","sourceRoot":"","sources":["../../src/Utils/PinCli.ts"],"names":[],"mappings":"AAAA;;GAEG;AAQH;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,GAAG,IAAI,CAiChF"}
@@ -0,0 +1,58 @@
1
+ /*!
2
+ * Copyright (C) Microsoft Corporation. All rights reserved.
3
+ */
4
+ import * as fs from 'fs';
5
+ import * as path from 'path';
6
+ import packageJson from '../../package.json' with { type: 'json' };
7
+ import { printWarning } from './ConsoleOutput.js';
8
+ /**
9
+ * Pins the running CLI into an app's `package.json` as a `devDependency` at the
10
+ * exact version of the CLI executing the command (read from this package's own
11
+ * manifest, so it always matches the running CLI).
12
+ *
13
+ * Used by `ms app create` (right after the template is scaffolded) and `ms app
14
+ * init` (binding an existing project) so the app carries a project-local `ms` at
15
+ * the version it was set up with — which `npx ms` / `pnpm exec` / `bun x` resolve
16
+ * ahead of any globally-installed CLI. The app therefore keeps building and
17
+ * deploying against the CLI it was created with, even if the developer's global
18
+ * CLI later moves to an incompatible version.
19
+ *
20
+ * Best-effort and non-fatal — the server-side app already exists by the time this
21
+ * runs:
22
+ * - No `package.json` in `appDir` (e.g. `ms app create` with a custom
23
+ * `--template` that isn't an npm project) → nothing to pin; return quietly.
24
+ * - Read / parse / write failure → warn (outside `--json` mode) and continue;
25
+ * the user can add the pin by hand.
26
+ *
27
+ * The entry overwrites any existing CLI `devDependencies` entry, and
28
+ * `devDependencies` is re-sorted alphabetically to match the npm convention so a
29
+ * later `install --save` won't reshuffle the file.
30
+ */
31
+ export function pinCliIntoAppPackageJson(appDir, jsonMode) {
32
+ const packageJsonPath = path.join(appDir, 'package.json');
33
+ // existsSync gate keeps the common "not an npm project" case off the warning
34
+ // path below — only genuine read/parse/write failures should warn.
35
+ if (!fs.existsSync(packageJsonPath)) {
36
+ return;
37
+ }
38
+ try {
39
+ const manifest = JSON.parse(fs.readFileSync(packageJsonPath, 'utf8'));
40
+ manifest.devDependencies = Object.fromEntries(Object.entries({
41
+ ...manifest.devDependencies,
42
+ [packageJson.name]: packageJson.version,
43
+ // Explicit 'en' locale keeps the sort order deterministic across hosts
44
+ // (a bare localeCompare follows the machine's default collation).
45
+ }).sort(([a], [b]) => a.localeCompare(b, 'en')));
46
+ // JSON.stringify drops the trailing newline every scaffolder emits; re-add it.
47
+ fs.writeFileSync(packageJsonPath, `${JSON.stringify(manifest, null, 2)}\n`);
48
+ }
49
+ catch (err) {
50
+ if (!jsonMode) {
51
+ printWarning(`Could not pin '${packageJson.name}' into ${packageJsonPath} ` +
52
+ `(${err instanceof Error ? err.message : String(err)}). Add ` +
53
+ `"${packageJson.name}": "${packageJson.version}" to devDependencies manually ` +
54
+ `to get a project-local CLI.`);
55
+ }
56
+ }
57
+ }
58
+ //# sourceMappingURL=PinCli.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PinCli.js","sourceRoot":"","sources":["../../src/Utils/PinCli.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAE7B,OAAO,WAAW,MAAM,oBAAoB,CAAC,OAAO,IAAI,EAAE,MAAM,EAAE,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,UAAU,wBAAwB,CAAC,MAAc,EAAE,QAAiB;IACxE,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IAC1D,6EAA6E;IAC7E,mEAAmE;IACnE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;QACpC,OAAO;IACT,CAAC;IAED,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,eAAe,EAAE,MAAM,CAAC,CAGnE,CAAC;QACF,QAAQ,CAAC,eAAe,GAAG,MAAM,CAAC,WAAW,CAC3C,MAAM,CAAC,OAAO,CAAC;YACb,GAAG,QAAQ,CAAC,eAAe;YAC3B,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,WAAW,CAAC,OAAO;YACvC,uEAAuE;YACvE,kEAAkE;SACnE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAChD,CAAC;QACF,+EAA+E;QAC/E,EAAE,CAAC,aAAa,CAAC,eAAe,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;IAC9E,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,YAAY,CACV,kBAAkB,WAAW,CAAC,IAAI,UAAU,eAAe,GAAG;gBAC5D,IAAI,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS;gBAC7D,IAAI,WAAW,CAAC,IAAI,OAAO,WAAW,CAAC,OAAO,gCAAgC;gBAC9E,6BAA6B,CAChC,CAAC;QACJ,CAAC;IACH,CAAC;AACH,CAAC"}
@@ -0,0 +1,35 @@
1
+ /*!
2
+ * Copyright (C) Microsoft Corporation. All rights reserved.
3
+ */
4
+ import type { RepoType } from '@microsoft/managed-apps-common/config';
5
+ /**
6
+ * Result of parsing the `--repo` flag value.
7
+ *
8
+ * - `native` (default): MAAF auto-provisions a platform-managed git repo, no remote URL.
9
+ * - `none`: source-control-free; no platform-managed repo, no remote URL.
10
+ * - `github`: bound to an external GitHub Enterprise repo at `remoteUrl`.
11
+ *
12
+ * `remoteUrl` is populated only when `repoType === 'github'`. This is a flat
13
+ * interface (not a discriminated union), so `if (repoType === 'github')` does NOT
14
+ * auto-narrow `remoteUrl` to `string`; github-branch use sites assert `remoteUrl!`.
15
+ */
16
+ export interface RepoSelection {
17
+ repoType: RepoType;
18
+ remoteUrl: string | undefined;
19
+ }
20
+ /**
21
+ * Maps the raw `--repo` flag value to a `(repoType, remoteUrl)` pair.
22
+ * - omitted / empty → `native` (default GRS-backed flow)
23
+ * - `none` (case-insensitive) → `none` (no GRS, no local setup)
24
+ * - any other non-empty value → `github` (external GHE binding, the trimmed value
25
+ * flows through as `remoteUrl` to the action and the eventual git clone)
26
+ *
27
+ * Runtime invariant: `remoteUrl` is set iff `repoType === 'github'`. Consumers
28
+ * branch on `repoType` and assert `remoteUrl!` at github use sites — see
29
+ * `RepoSelection` for why narrowing is not automatic.
30
+ *
31
+ * Lives in `Utils/` (not `Verbs/CreateMaafApp.ts`) so the lightweight `app init`
32
+ * verb can call it without pulling in `giget`/`child_process` from CreateMaafApp.
33
+ */
34
+ export declare function parseRepoOption(rawRepoValue: string | undefined): RepoSelection;
35
+ //# sourceMappingURL=RepoOption.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RepoOption.d.ts","sourceRoot":"","sources":["../../src/Utils/RepoOption.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,uCAAuC,CAAC;AAWtE;;;;;;;;;;GAUG;AACH,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,QAAQ,CAAC;IACnB,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;CAC/B;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,eAAe,CAAC,YAAY,EAAE,MAAM,GAAG,SAAS,GAAG,aAAa,CAS/E"}
@@ -0,0 +1,36 @@
1
+ /*!
2
+ * Copyright (C) Microsoft Corporation. All rights reserved.
3
+ */
4
+ /**
5
+ * Sentinel value for `--repo` that selects the no-source-control flow: just create the
6
+ * server-side app record, write `ms.config.json` with `repoType: 'none'`, and skip every
7
+ * local-setup step (git init/clone, template overlay, GCM config) plus the server-side
8
+ * GRS auto-provisioning. Comparison is case-insensitive — `none`, `None`, `NONE` all
9
+ * select this flow. Any other non-empty `--repo` value is treated as a remote URL.
10
+ */
11
+ const REPO_NONE_SENTINEL = 'none';
12
+ /**
13
+ * Maps the raw `--repo` flag value to a `(repoType, remoteUrl)` pair.
14
+ * - omitted / empty → `native` (default GRS-backed flow)
15
+ * - `none` (case-insensitive) → `none` (no GRS, no local setup)
16
+ * - any other non-empty value → `github` (external GHE binding, the trimmed value
17
+ * flows through as `remoteUrl` to the action and the eventual git clone)
18
+ *
19
+ * Runtime invariant: `remoteUrl` is set iff `repoType === 'github'`. Consumers
20
+ * branch on `repoType` and assert `remoteUrl!` at github use sites — see
21
+ * `RepoSelection` for why narrowing is not automatic.
22
+ *
23
+ * Lives in `Utils/` (not `Verbs/CreateMaafApp.ts`) so the lightweight `app init`
24
+ * verb can call it without pulling in `giget`/`child_process` from CreateMaafApp.
25
+ */
26
+ export function parseRepoOption(rawRepoValue) {
27
+ if (rawRepoValue === undefined || rawRepoValue === '') {
28
+ return { repoType: 'native', remoteUrl: undefined };
29
+ }
30
+ const trimmed = rawRepoValue.trim();
31
+ if (trimmed.toLowerCase() === REPO_NONE_SENTINEL) {
32
+ return { repoType: 'none', remoteUrl: undefined };
33
+ }
34
+ return { repoType: 'github', remoteUrl: trimmed };
35
+ }
36
+ //# sourceMappingURL=RepoOption.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RepoOption.js","sourceRoot":"","sources":["../../src/Utils/RepoOption.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH;;;;;;GAMG;AACH,MAAM,kBAAkB,GAAG,MAAM,CAAC;AAkBlC;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,eAAe,CAAC,YAAgC;IAC9D,IAAI,YAAY,KAAK,SAAS,IAAI,YAAY,KAAK,EAAE,EAAE,CAAC;QACtD,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC;IACtD,CAAC;IACD,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,EAAE,CAAC;IACpC,IAAI,OAAO,CAAC,WAAW,EAAE,KAAK,kBAAkB,EAAE,CAAC;QACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC;IACpD,CAAC;IACD,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC;AACpD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Spinner.d.ts","sourceRoot":"","sources":["../../src/Utils/Spinner.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,qBAAa,UAAU;IACrB,OAAO,CAAC,MAAM,CAA+C;IAC7D,OAAO,CAAC,WAAW,CAAK;IACxB,OAAO,CAAC,MAAM,CAAM;IAEpB,OAAO,CAAC,OAAO;IAQf,OAAO,CAAC,cAAc,CAGpB;IAEF,OAAO,CAAC,aAAa,CAKnB;IAEF,OAAO,CAAC,cAAc,CAIpB;IAEF,OAAO,CAAC,wBAAwB,CAK9B;IAEF,OAAO,CAAC,yBAAyB,CAI/B;IAEF,KAAK,CAAC,KAAK,SAAK,GAAG,IAAI;IAqBvB;;;;OAIG;IACH,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAK1B,IAAI,IAAI,IAAI;CAcb"}
1
+ {"version":3,"file":"Spinner.d.ts","sourceRoot":"","sources":["../../src/Utils/Spinner.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,qBAAa,UAAU;IACrB,OAAO,CAAC,MAAM,CAA+C;IAC7D,OAAO,CAAC,WAAW,CAAK;IACxB,OAAO,CAAC,MAAM,CAAM;IAEpB,OAAO,CAAC,OAAO;IAQf,OAAO,CAAC,cAAc,CAGpB;IAEF,OAAO,CAAC,aAAa,CAKnB;IAEF,OAAO,CAAC,cAAc,CAIpB;IAEF,OAAO,CAAC,wBAAwB,CAK9B;IAEF,OAAO,CAAC,yBAAyB,CAI/B;IAEF,KAAK,CAAC,KAAK,SAAK,GAAG,IAAI;IAwBvB;;;;OAIG;IACH,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAK1B,IAAI,IAAI,IAAI;CAcb"}
@@ -58,6 +58,9 @@ export class CliSpinner {
58
58
  process.once('SIGTERM', this._handleSIGTERM);
59
59
  process.once('uncaughtException', this._handleUncaughtException);
60
60
  process.once('unhandledRejection', this._handleUnhandledRejection);
61
+ // Paint the first frame immediately so a sync check that blocks the event
62
+ // loop still shows the current status line right away.
63
+ this._render();
61
64
  this._timer = setInterval(() => {
62
65
  this._render();
63
66
  this._frameIndex = (this._frameIndex + 1) % SPINNER_FRAMES.length;
@@ -1 +1 @@
1
- {"version":3,"file":"Spinner.js","sourceRoot":"","sources":["../../src/Utils/Spinner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Spinner.js","sourceRoot":"","sources":["../../src/Utils/Spinner.ts"],"names":[],"mappings":"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"}
@@ -10,11 +10,11 @@ export async function addActionAsync(argumentProvider) {
10
10
  createOptionSchema(argumentProvider);
11
11
  await argumentProvider.runVerb();
12
12
  // Commander converts kebab-case flags to camelCase attribute names — use camelCase here.
13
- const apiId = await argumentProvider.getOption('apiId');
13
+ const apiId = await argumentProvider.getOption('connector');
14
14
  const connectionIdFlag = await argumentProvider.getOption('connectionId', true);
15
15
  const skipCodegen = !!(await argumentProvider.getOption('skipCodegen', true));
16
16
  const useV1Codegen = !!(await argumentProvider.getOption('useV1Codegen', true));
17
- // ── Preflight: connector + DLP policy (throws on not-found or blocked) ────
17
+ // ── Preflight: connector + connector policy (throws on not-found or blocked) ──
18
18
  const { connector, policy } = await runConnectorDlpPreflightAsync(argumentProvider, apiId);
19
19
  await runAddActionFlowAsync({
20
20
  argumentProvider,
@@ -31,10 +31,10 @@ function createOptionSchema(argumentProvider) {
31
31
  argumentProvider.addExamples(HelpStrings.app.add.action.examples);
32
32
  argumentProvider.addOptions([
33
33
  createDefaultStringOption({
34
- flags: { key: SharedArguments.ApiId.name },
35
- env: SharedArguments.ApiId.envVar,
36
- message: SharedArguments.ApiId.promptMessage,
37
- description: HelpStrings.app.add.action.options.apiId,
34
+ flags: { key: SharedArguments.Connector.name },
35
+ env: SharedArguments.Connector.envVar,
36
+ message: SharedArguments.Connector.promptMessage,
37
+ description: HelpStrings.app.add.action.options.connector,
38
38
  }),
39
39
  {
40
40
  flags: { key: SharedArguments.ConnectionId.name, alias: SharedArguments.ConnectionId.alias },
@@ -1 +1 @@
1
- {"version":3,"file":"AddAction.js","sourceRoot":"","sources":["../../src/Verbs/AddAction.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,yBAAyB,EAAE,MAAM,aAAa,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAE,6BAA6B,EAAE,MAAM,oBAAoB,CAAC;AACnE,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAEtE,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,gBAAkC;IACrE,kBAAkB,CAAC,gBAAgB,CAAC,CAAC;IACrC,MAAM,gBAAgB,CAAC,OAAO,EAAE,CAAC;IAEjC,yFAAyF;IACzF,MAAM,KAAK,GAAG,MAAM,gBAAgB,CAAC,SAAS,CAAS,OAAO,CAAC,CAAC;IAChE,MAAM,gBAAgB,GAAG,MAAM,gBAAgB,CAAC,SAAS,CAAS,cAAc,EAAE,IAAI,CAAC,CAAC;IACxF,MAAM,WAAW,GAAG,CAAC,CAAC,CAAC,MAAM,gBAAgB,CAAC,SAAS,CAAU,aAAa,EAAE,IAAI,CAAC,CAAC,CAAC;IACvF,MAAM,YAAY,GAAG,CAAC,CAAC,CAAC,MAAM,gBAAgB,CAAC,SAAS,CAAU,cAAc,EAAE,IAAI,CAAC,CAAC,CAAC;IAEzF,6EAA6E;IAC7E,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,MAAM,6BAA6B,CAAC,gBAAgB,EAAE,KAAK,CAAC,CAAC;IAE3F,MAAM,qBAAqB,CAAC;QAC1B,gBAAgB;QAChB,SAAS;QACT,KAAK;QACL,gBAAgB;QAChB,WAAW;QACX,YAAY;QACZ,MAAM;KACP,CAAC,CAAC;AACL,CAAC;AAED,SAAS,kBAAkB,CAAC,gBAAkC;IAC5D,gBAAgB,CAAC,cAAc,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IACxE,gBAAgB,CAAC,WAAW,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAClE,gBAAgB,CAAC,UAAU,CAAC;QAC1B,yBAAyB,CAAC;YACxB,KAAK,EAAE,EAAE,GAAG,EAAE,eAAe,CAAC,KAAK,CAAC,IAAI,EAAE;YAC1C,GAAG,EAAE,eAAe,CAAC,KAAK,CAAC,MAAM;YACjC,OAAO,EAAE,eAAe,CAAC,KAAK,CAAC,aAAa;YAC5C,WAAW,EAAE,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK;SACtD,CAAC;QACF;YACE,KAAK,EAAE,EAAE,GAAG,EAAE,eAAe,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,EAAE,eAAe,CAAC,YAAY,CAAC,KAAK,EAAE;YAC5F,GAAG,EAAE,eAAe,CAAC,YAAY,CAAC,MAAM;YACxC,WAAW,EAAE,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY;YAC5D,wBAAwB,EAAE,IAAI;SAC/B;KACF,CAAC,CAAC;IACH,gBAAgB,CAAC,SAAS,CAAC;QACzB,KAAK,EAAE,EAAE,GAAG,EAAE,kBAAkB,CAAC,WAAW,CAAC,IAAI,EAAE;QACnD,GAAG,EAAE,kBAAkB,CAAC,WAAW,CAAC,GAAG;QACvC,WAAW,EAAE,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW;KAC5D,CAAC,CAAC;IACH,gBAAgB,CAAC,SAAS,CAAC;QACzB,KAAK,EAAE,EAAE,GAAG,EAAE,kBAAkB,CAAC,YAAY,CAAC,IAAI,EAAE;QACpD,GAAG,EAAE,kBAAkB,CAAC,YAAY,CAAC,GAAG;QACxC,WAAW,EAAE,gDAAgD;QAC7D,MAAM,EAAE,IAAI;KACb,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"AddAction.js","sourceRoot":"","sources":["../../src/Verbs/AddAction.ts"],"names":[],"mappings":"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"}
@@ -8,7 +8,7 @@ import type { ArgumentProvider } from '../ArgumentProvider.js';
8
8
  * connector's capabilities.
9
9
  *
10
10
  * Decision matrix:
11
- * 1. Run DLP preflight (single source of truth for DLP enforcement).
11
+ * 1. Run connector-policy preflight (single source of truth for policy enforcement).
12
12
  * 2. Determine `isTabular` from connector capabilities.
13
13
  * 3. Resolve mode:
14
14
  * - Non-tabular + `--as table` → UsageError
@@ -16,8 +16,10 @@ import type { ArgumentProvider } from '../ArgumentProvider.js';
16
16
  * - Tabular + `--as` given → mode = flag value
17
17
  * - Tabular + interactive (no `--as`) → promptConfirm yes/no
18
18
  * - Tabular + non-interactive + no `--as` → UsageError
19
- * 4. Reject `--dataset` / `--table` if mode resolved to action (silent
20
- * ignore would mask copy/paste bugs in CI).
19
+ * 4. Reject `--dataset` / `--table` if mode resolved to action, EXCEPT
20
+ * for the Common Data Service for Apps connector where `--table` is
21
+ * re-interpreted as the Dataverse logical name (paired with
22
+ * `--dataverse-environment-id`).
21
23
  * 5. Delegate to the appropriate shared flow helper.
22
24
  */
23
25
  export declare function addConnectorAsync(argumentProvider: ArgumentProvider): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"AddConnector.d.ts","sourceRoot":"","sources":["../../src/Verbs/AddConnector.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAe5D;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,iBAAiB,CAAC,gBAAgB,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAgEzF"}
1
+ {"version":3,"file":"AddConnector.d.ts","sourceRoot":"","sources":["../../src/Verbs/AddConnector.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAkB5D;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAsB,iBAAiB,CAAC,gBAAgB,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAgGzF"}
@@ -8,13 +8,15 @@ import { UsageError } from '../Errors/CliError.js';
8
8
  import { isTabularConnector, runAddActionFlowAsync, runAddTableFlowAsync, } from './AddConnectorFlows.js';
9
9
  import { runConnectorDlpPreflightAsync } from './ConnectorHelpers.js';
10
10
  import { AddConnectorArguments, SharedArguments } from './VerbConstants.js';
11
+ const COMMON_DATA_SERVICE_FOR_APPS_API_ID = 'shared_commondataserviceforapps';
12
+ const DATAVERSE_PAIR_ERROR = '--dataverse-environment-id and --table must be specified together for the Common Data Service for Apps connector. Provide both or neither.';
11
13
  /**
12
14
  * `ms app add connector` — a single entry point that adds a connector to
13
15
  * the app and picks the right shape (table or action) based on the
14
16
  * connector's capabilities.
15
17
  *
16
18
  * Decision matrix:
17
- * 1. Run DLP preflight (single source of truth for DLP enforcement).
19
+ * 1. Run connector-policy preflight (single source of truth for policy enforcement).
18
20
  * 2. Determine `isTabular` from connector capabilities.
19
21
  * 3. Resolve mode:
20
22
  * - Non-tabular + `--as table` → UsageError
@@ -22,18 +24,21 @@ import { AddConnectorArguments, SharedArguments } from './VerbConstants.js';
22
24
  * - Tabular + `--as` given → mode = flag value
23
25
  * - Tabular + interactive (no `--as`) → promptConfirm yes/no
24
26
  * - Tabular + non-interactive + no `--as` → UsageError
25
- * 4. Reject `--dataset` / `--table` if mode resolved to action (silent
26
- * ignore would mask copy/paste bugs in CI).
27
+ * 4. Reject `--dataset` / `--table` if mode resolved to action, EXCEPT
28
+ * for the Common Data Service for Apps connector where `--table` is
29
+ * re-interpreted as the Dataverse logical name (paired with
30
+ * `--dataverse-environment-id`).
27
31
  * 5. Delegate to the appropriate shared flow helper.
28
32
  */
29
33
  export async function addConnectorAsync(argumentProvider) {
30
34
  createOptionSchema(argumentProvider);
31
35
  await argumentProvider.runVerb();
32
- const apiId = await argumentProvider.getOption('apiId');
36
+ const apiId = await argumentProvider.getOption('connector');
33
37
  const connectionIdFlag = await argumentProvider.getOption('connectionId', true);
34
38
  const datasetFlag = await argumentProvider.getOption('dataset', true);
35
39
  const tableFlag = await argumentProvider.getOption('table', true);
36
40
  const asFlagRaw = await argumentProvider.getOption('as', true);
41
+ const dataverseEnvironmentIdFlag = await argumentProvider.getOption('dataverseEnvironmentId', true);
37
42
  const skipCodegen = !!(await argumentProvider.getOption('skipCodegen', true));
38
43
  const useV1Codegen = !!(await argumentProvider.getOption('useV1Codegen', true));
39
44
  // ── Validate `--as` value (if provided) ────────────────────────────────────
@@ -45,7 +50,7 @@ export async function addConnectorAsync(argumentProvider) {
45
50
  }
46
51
  asFlag = normalized;
47
52
  }
48
- // ── Preflight: connector + DLP policy (throws on not-found or blocked) ────
53
+ // ── Preflight: connector + connector policy (throws on not-found or blocked) ──
49
54
  const { connector, policy } = await runConnectorDlpPreflightAsync(argumentProvider, apiId);
50
55
  const connectorLabel = connector.properties.displayName ?? apiId;
51
56
  const isTabular = isTabularConnector(connector);
@@ -55,8 +60,29 @@ export async function addConnectorAsync(argumentProvider) {
55
60
  asFlag,
56
61
  connectorLabel,
57
62
  });
58
- // ── Reject contradictory flags when adding actions ────────────────────────
59
- if (mode === 'action' && (datasetFlag || tableFlag)) {
63
+ const isCommonDataServiceForApps = apiId.toLowerCase() === COMMON_DATA_SERVICE_FOR_APPS_API_ID ||
64
+ apiId.toLowerCase().endsWith(`/${COMMON_DATA_SERVICE_FOR_APPS_API_ID}`);
65
+ // ── CDS connector special case: reinterpret --table as Dataverse logical name ─
66
+ // For the Common Data Service for Apps connector, `--table` (existing flag) carries
67
+ // the Dataverse entity logical name and pairs with `--dataverse-environment-id`. The
68
+ // connector is non-tabular, so we land here only in action mode.
69
+ let dataverseEnvironmentId;
70
+ let dataverseTable;
71
+ if (isCommonDataServiceForApps && mode === 'action') {
72
+ if (datasetFlag) {
73
+ throw new UsageError('--dataset is not used with the Common Data Service for Apps connector. Use --table to specify a Dataverse logical name.');
74
+ }
75
+ dataverseEnvironmentId = dataverseEnvironmentIdFlag;
76
+ dataverseTable = tableFlag;
77
+ if (!getSettings().interactive && !!dataverseEnvironmentId !== !!dataverseTable) {
78
+ throw new UsageError(DATAVERSE_PAIR_ERROR);
79
+ }
80
+ }
81
+ else if (!isCommonDataServiceForApps && dataverseEnvironmentIdFlag) {
82
+ throw new UsageError('--dataverse-environment-id can only be used with --connector shared_commondataserviceforapps.');
83
+ }
84
+ // ── Reject contradictory flags when adding actions (CDS already handled above) ─
85
+ if (mode === 'action' && !isCommonDataServiceForApps && (datasetFlag || tableFlag)) {
60
86
  throw new UsageError(`--dataset and --table cannot be used with --as action. Re-run with --as table, or omit those flags.`);
61
87
  }
62
88
  // ── Dispatch ──────────────────────────────────────────────────────────────
@@ -81,6 +107,8 @@ export async function addConnectorAsync(argumentProvider) {
81
107
  skipCodegen,
82
108
  useV1Codegen,
83
109
  policy,
110
+ dataverseEnvironmentId,
111
+ dataverseTable,
84
112
  });
85
113
  }
86
114
  }
@@ -111,10 +139,10 @@ function createOptionSchema(argumentProvider) {
111
139
  argumentProvider.addExamples(HelpStrings.app.add.connector.examples);
112
140
  argumentProvider.addOptions([
113
141
  createDefaultStringOption({
114
- flags: { key: SharedArguments.ApiId.name },
115
- env: SharedArguments.ApiId.envVar,
116
- message: SharedArguments.ApiId.promptMessage,
117
- description: HelpStrings.app.add.connector.options.apiId,
142
+ flags: { key: SharedArguments.Connector.name },
143
+ env: SharedArguments.Connector.envVar,
144
+ message: SharedArguments.Connector.promptMessage,
145
+ description: HelpStrings.app.add.connector.options.connector,
118
146
  }),
119
147
  {
120
148
  flags: { key: SharedArguments.ConnectionId.name, alias: SharedArguments.ConnectionId.alias },
@@ -140,6 +168,12 @@ function createOptionSchema(argumentProvider) {
140
168
  description: HelpStrings.app.add.connector.options.as,
141
169
  optionalInNonInteractive: true,
142
170
  },
171
+ {
172
+ flags: { key: AddConnectorArguments.DataverseEnvironmentId.name },
173
+ env: AddConnectorArguments.DataverseEnvironmentId.envVar,
174
+ description: HelpStrings.app.add.connector.options.dataverseEnvironmentId,
175
+ optionalInNonInteractive: true,
176
+ },
143
177
  ]);
144
178
  argumentProvider.addSwitch({
145
179
  flags: { key: AddConnectorArguments.SkipCodegen.name },
@@ -1 +1 @@
1
- {"version":3,"file":"AddConnector.js","sourceRoot":"","sources":["../../src/Verbs/AddConnector.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AddConnector.js","sourceRoot":"","sources":["../../src/Verbs/AddConnector.ts"],"names":[],"mappings":"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"}