@pnp/cli-microsoft365 11.9.0-beta.8c1ee05 → 11.9.0-beta.9bd71dd

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 (153) hide show
  1. package/.devcontainer/Dockerfile +2 -2
  2. package/.devproxy/api-specs/sharepoint.yaml +166 -0
  3. package/allCommands.json +1 -1
  4. package/allCommandsFull.json +1 -1
  5. package/dist/m365/cli/commands/app/app-reconsent.js +8 -0
  6. package/dist/m365/cli/commands/cli-consent.js +8 -31
  7. package/dist/m365/cli/commands/cli-doctor.js +6 -1
  8. package/dist/m365/cli/commands/cli-issue.js +8 -36
  9. package/dist/m365/cli/commands/completion/completion-clink-update.js +8 -0
  10. package/dist/m365/cli/commands/completion/completion-pwsh-setup.js +8 -16
  11. package/dist/m365/cli/commands/completion/completion-pwsh-update.js +8 -0
  12. package/dist/m365/cli/commands/completion/completion-sh-setup.js +8 -0
  13. package/dist/m365/cli/commands/completion/completion-sh-update.js +8 -0
  14. package/dist/m365/cli/commands/config/config-get.js +9 -32
  15. package/dist/m365/cli/commands/config/config-list.js +8 -0
  16. package/dist/m365/cli/commands/config/config-reset.js +9 -34
  17. package/dist/m365/cli/commands/config/config-set.js +86 -70
  18. package/dist/m365/commands/request.js +26 -60
  19. package/dist/m365/commands/search.js +59 -77
  20. package/dist/m365/commands/setup.js +16 -31
  21. package/dist/m365/commands/version.js +6 -0
  22. package/dist/m365/connection/commands/connection-remove.js +9 -29
  23. package/dist/m365/connection/commands/connection-use.js +8 -26
  24. package/dist/m365/context/commands/context-init.js +6 -0
  25. package/dist/m365/context/commands/option/option-set.js +9 -18
  26. package/dist/m365/entra/commands/administrativeunit/administrativeunit-member-add.js +32 -63
  27. package/dist/m365/entra/commands/administrativeunit/administrativeunit-member-get.js +21 -45
  28. package/dist/m365/entra/commands/administrativeunit/administrativeunit-member-list.js +32 -53
  29. package/dist/m365/entra/commands/administrativeunit/administrativeunit-member-remove.js +34 -74
  30. package/dist/m365/entra/commands/administrativeunit/administrativeunit-roleassignment-add.js +37 -57
  31. package/dist/m365/entra/commands/approleassignment/approleassignment-add.js +23 -48
  32. package/dist/m365/entra/commands/approleassignment/approleassignment-list.js +20 -43
  33. package/dist/m365/entra/commands/approleassignment/approleassignment-remove.js +24 -51
  34. package/dist/m365/entra/commands/enterpriseapp/enterpriseapp-add.js +20 -43
  35. package/dist/m365/entra/commands/enterpriseapp/enterpriseapp-get.js +20 -43
  36. package/dist/m365/entra/commands/enterpriseapp/enterpriseapp-list.js +9 -25
  37. package/dist/m365/entra/commands/enterpriseapp/enterpriseapp-remove.js +21 -50
  38. package/dist/m365/entra/commands/groupsetting/groupsetting-add.js +9 -25
  39. package/dist/m365/entra/commands/groupsetting/groupsetting-get.js +8 -24
  40. package/dist/m365/entra/commands/groupsetting/groupsetting-list.js +6 -0
  41. package/dist/m365/entra/commands/groupsetting/groupsetting-remove.js +9 -33
  42. package/dist/m365/entra/commands/groupsetting/groupsetting-set.js +8 -24
  43. package/dist/m365/entra/commands/groupsettingtemplate/groupsettingtemplate-get.js +19 -38
  44. package/dist/m365/entra/commands/groupsettingtemplate/groupsettingtemplate-list.js +6 -0
  45. package/dist/m365/entra/commands/multitenant/multitenant-get.js +8 -1
  46. package/dist/m365/entra/commands/multitenant/multitenant-remove.js +8 -22
  47. package/dist/m365/entra/commands/multitenant/multitenant-set.js +15 -36
  48. package/dist/m365/entra/commands/oauth2grant/oauth2grant-add.js +10 -31
  49. package/dist/m365/entra/commands/oauth2grant/oauth2grant-list.js +8 -24
  50. package/dist/m365/entra/commands/oauth2grant/oauth2grant-remove.js +9 -17
  51. package/dist/m365/entra/commands/oauth2grant/oauth2grant-set.js +9 -17
  52. package/dist/m365/entra/commands/pim/pim-role-assignment-add.js +68 -114
  53. package/dist/m365/entra/commands/pim/pim-role-assignment-eligibility-list.js +28 -55
  54. package/dist/m365/entra/commands/pim/pim-role-assignment-list.js +30 -57
  55. package/dist/m365/entra/commands/pim/pim-role-assignment-remove.js +50 -90
  56. package/dist/m365/entra/commands/pim/pim-role-request-list.js +36 -69
  57. package/dist/m365/entra/commands/policy/policy-list.js +13 -56
  58. package/dist/m365/entra/commands/user/user-add.js +39 -118
  59. package/dist/m365/entra/commands/user/user-get.js +24 -49
  60. package/dist/m365/entra/commands/user/user-groupmembership-list.js +25 -48
  61. package/dist/m365/entra/commands/user/user-guest-add.js +14 -39
  62. package/dist/m365/entra/commands/user/user-hibp.js +12 -34
  63. package/dist/m365/entra/commands/user/user-license-add.js +23 -42
  64. package/dist/m365/entra/commands/user/user-license-list.js +21 -42
  65. package/dist/m365/entra/commands/user/user-license-remove.js +25 -47
  66. package/dist/m365/entra/commands/user/user-list.js +12 -39
  67. package/dist/m365/entra/commands/user/user-password-validate.js +8 -15
  68. package/dist/m365/entra/commands/user/user-recyclebinitem-clear.js +8 -22
  69. package/dist/m365/entra/commands/user/user-recyclebinitem-remove.js +9 -33
  70. package/dist/m365/entra/commands/user/user-recyclebinitem-restore.js +8 -24
  71. package/dist/m365/entra/commands/user/user-registrationdetails-list.js +43 -113
  72. package/dist/m365/entra/commands/user/user-remove.js +22 -42
  73. package/dist/m365/entra/commands/user/user-set.js +69 -149
  74. package/dist/m365/entra/commands/user/user-signin-list.js +22 -51
  75. package/dist/m365/external/commands/connection/connection-add.js +40 -65
  76. package/dist/m365/external/commands/connection/connection-doctor.js +14 -30
  77. package/dist/m365/external/commands/connection/connection-get.js +19 -28
  78. package/dist/m365/external/commands/connection/connection-remove.js +20 -25
  79. package/dist/m365/external/commands/connection/connection-schema-add.js +53 -42
  80. package/dist/m365/external/commands/connection/connection-urltoitemresolver-add.js +12 -23
  81. package/dist/m365/external/commands/item/item-add.js +37 -60
  82. package/dist/m365/file/commands/convert/convert-pdf.js +18 -33
  83. package/dist/m365/file/commands/file-add.js +28 -34
  84. package/dist/m365/file/commands/file-copy.js +18 -34
  85. package/dist/m365/file/commands/file-list.js +18 -24
  86. package/dist/m365/file/commands/file-move.js +22 -35
  87. package/dist/m365/flow/commands/flow-disable.js +10 -26
  88. package/dist/m365/flow/commands/flow-enable.js +10 -26
  89. package/dist/m365/flow/commands/flow-export.js +45 -71
  90. package/dist/m365/flow/commands/flow-get.js +10 -26
  91. package/dist/m365/flow/commands/flow-list.js +17 -48
  92. package/dist/m365/flow/commands/flow-remove.js +11 -38
  93. package/dist/m365/flow/commands/owner/owner-ensure.js +30 -65
  94. package/dist/m365/flow/commands/owner/owner-list.js +10 -35
  95. package/dist/m365/flow/commands/owner/owner-remove.js +30 -61
  96. package/dist/m365/flow/commands/run/run-cancel.js +11 -37
  97. package/dist/m365/flow/commands/run/run-get.js +12 -43
  98. package/dist/m365/flow/commands/run/run-list.js +29 -61
  99. package/dist/m365/flow/commands/run/run-resubmit.js +11 -37
  100. package/dist/m365/graph/commands/changelog/changelog-list.js +68 -67
  101. package/dist/m365/graph/commands/schemaextension/schemaextension-add.js +25 -31
  102. package/dist/m365/graph/commands/schemaextension/schemaextension-get.js +8 -15
  103. package/dist/m365/graph/commands/schemaextension/schemaextension-list.js +26 -50
  104. package/dist/m365/graph/commands/schemaextension/schemaextension-remove.js +9 -24
  105. package/dist/m365/graph/commands/schemaextension/schemaextension-set.js +32 -53
  106. package/dist/m365/graph/commands/subscription/subscription-add.js +63 -89
  107. package/dist/m365/outlook/commands/calendar/calendar-get.js +1 -1
  108. package/dist/m365/outlook/commands/calendar/calendar-list.js +64 -0
  109. package/dist/m365/outlook/commands/mail/mail-send.js +55 -84
  110. package/dist/m365/outlook/commands/message/message-get.js +27 -27
  111. package/dist/m365/outlook/commands/message/message-list.js +53 -80
  112. package/dist/m365/outlook/commands/message/message-move.js +43 -40
  113. package/dist/m365/outlook/commands/message/message-remove.js +17 -45
  114. package/dist/m365/outlook/commands.js +1 -0
  115. package/dist/m365/spe/commands/container/container-get.js +54 -26
  116. package/dist/m365/spe/commands/container/container-permission-list.js +43 -4
  117. package/dist/m365/spe/commands/container/container-set.js +77 -0
  118. package/dist/m365/spe/commands.js +1 -0
  119. package/dist/m365/spo/commands/file/file-unarchive.js +83 -0
  120. package/dist/m365/spo/commands/folder/folder-archive.js +89 -0
  121. package/dist/m365/spo/commands/list/list-sensitivitylabel-remove.js +83 -0
  122. package/dist/m365/spo/commands.js +3 -0
  123. package/dist/m365/viva/commands/engage/engage-role-member-add.js +79 -0
  124. package/dist/m365/viva/commands.js +1 -0
  125. package/docs/docs/cmd/outlook/calendar/calendar-get.mdx +7 -7
  126. package/docs/docs/cmd/outlook/calendar/calendar-list.mdx +155 -0
  127. package/docs/docs/cmd/spe/container/container-get.mdx +24 -3
  128. package/docs/docs/cmd/spe/container/container-permission-list.mdx +24 -3
  129. package/docs/docs/cmd/spe/container/container-set.mdx +160 -0
  130. package/docs/docs/cmd/spo/app/app-add.mdx +19 -0
  131. package/docs/docs/cmd/spo/app/app-deploy.mdx +21 -0
  132. package/docs/docs/cmd/spo/app/app-get.mdx +19 -0
  133. package/docs/docs/cmd/spo/app/app-install.mdx +21 -0
  134. package/docs/docs/cmd/spo/app/app-instance-list.mdx +19 -0
  135. package/docs/docs/cmd/spo/app/app-list.mdx +19 -0
  136. package/docs/docs/cmd/spo/app/app-remove.mdx +21 -0
  137. package/docs/docs/cmd/spo/app/app-retract.mdx +21 -0
  138. package/docs/docs/cmd/spo/app/app-teamspackage-download.mdx +21 -0
  139. package/docs/docs/cmd/spo/app/app-uninstall.mdx +21 -0
  140. package/docs/docs/cmd/spo/app/app-upgrade.mdx +21 -0
  141. package/docs/docs/cmd/spo/apppage/apppage-add.mdx +19 -1
  142. package/docs/docs/cmd/spo/apppage/apppage-set.mdx +21 -0
  143. package/docs/docs/cmd/spo/commandset/commandset-add.mdx +19 -0
  144. package/docs/docs/cmd/spo/commandset/commandset-get.mdx +19 -0
  145. package/docs/docs/cmd/spo/commandset/commandset-list.mdx +19 -0
  146. package/docs/docs/cmd/spo/commandset/commandset-remove.mdx +21 -0
  147. package/docs/docs/cmd/spo/commandset/commandset-set.mdx +21 -0
  148. package/docs/docs/cmd/spo/file/file-unarchive.mdx +68 -0
  149. package/docs/docs/cmd/spo/folder/folder-archive.mdx +73 -0
  150. package/docs/docs/cmd/spo/list/list-sensitivitylabel-remove.mdx +77 -0
  151. package/docs/docs/cmd/viva/engage/engage-role-member-add.mdx +76 -0
  152. package/npm-shrinkwrap.json +280 -128
  153. package/package.json +18 -18
@@ -1,17 +1,25 @@
1
- var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
2
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
3
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
4
- return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
5
- };
6
- var _FlowExportCommand_instances, _FlowExportCommand_initTelemetry, _FlowExportCommand_initOptions, _FlowExportCommand_initValidators;
7
1
  import fs from 'fs';
8
2
  import path from 'path';
3
+ import { z } from 'zod';
4
+ import { globalOptionsZod } from '../../../Command.js';
9
5
  import request from '../../../request.js';
10
6
  import { formatting } from '../../../utils/formatting.js';
11
- import { validation } from '../../../utils/validation.js';
12
7
  import PowerPlatformCommand from '../../base/PowerPlatformCommand.js';
13
8
  import commands from '../commands.js';
14
9
  import PowerAutomateCommand from '../../base/PowerAutomateCommand.js';
10
+ export const options = z.strictObject({
11
+ ...globalOptionsZod.shape,
12
+ environmentName: z.string().alias('e'),
13
+ name: z.uuid().alias('n'),
14
+ packageDisplayName: z.string().optional().alias('d'),
15
+ packageDescription: z.string().optional(),
16
+ packageCreatedBy: z.string().optional().alias('c'),
17
+ packageSourceEnvironment: z.string().optional().alias('s'),
18
+ format: z.string().transform(v => v.toLowerCase()).pipe(z.enum(['json', 'zip'], {
19
+ error: 'Option format must be json or zip. Default is zip'
20
+ })).optional().alias('f'),
21
+ path: z.string().optional().alias('p')
22
+ });
15
23
  class FlowExportCommand extends PowerPlatformCommand {
16
24
  get name() {
17
25
  return commands.EXPORT;
@@ -19,12 +27,36 @@ class FlowExportCommand extends PowerPlatformCommand {
19
27
  get description() {
20
28
  return 'Exports the specified Microsoft Flow as a file';
21
29
  }
22
- constructor() {
23
- super();
24
- _FlowExportCommand_instances.add(this);
25
- __classPrivateFieldGet(this, _FlowExportCommand_instances, "m", _FlowExportCommand_initTelemetry).call(this);
26
- __classPrivateFieldGet(this, _FlowExportCommand_instances, "m", _FlowExportCommand_initOptions).call(this);
27
- __classPrivateFieldGet(this, _FlowExportCommand_instances, "m", _FlowExportCommand_initValidators).call(this);
30
+ get schema() {
31
+ return options;
32
+ }
33
+ getRefinedSchema(schema) {
34
+ return schema
35
+ .refine(options => options.format !== 'json' || !options.packageCreatedBy, {
36
+ error: 'packageCreatedBy cannot be specified with output of json',
37
+ path: ['packageCreatedBy']
38
+ })
39
+ .refine(options => options.format !== 'json' || !options.packageDescription, {
40
+ error: 'packageDescription cannot be specified with output of json',
41
+ path: ['packageDescription']
42
+ })
43
+ .refine(options => options.format !== 'json' || !options.packageDisplayName, {
44
+ error: 'packageDisplayName cannot be specified with output of json',
45
+ path: ['packageDisplayName']
46
+ })
47
+ .refine(options => options.format !== 'json' || !options.packageSourceEnvironment, {
48
+ error: 'packageSourceEnvironment cannot be specified with output of json',
49
+ path: ['packageSourceEnvironment']
50
+ })
51
+ .refine(options => {
52
+ if (options.path) {
53
+ return fs.existsSync(path.dirname(options.path));
54
+ }
55
+ return true;
56
+ }, {
57
+ error: 'Specified path where to save the file does not exist',
58
+ path: ['path']
59
+ });
28
60
  }
29
61
  async commandAction(logger, args) {
30
62
  const formatArgument = args.options.format?.toLowerCase() || '';
@@ -139,63 +171,5 @@ class FlowExportCommand extends PowerPlatformCommand {
139
171
  }
140
172
  }
141
173
  }
142
- _FlowExportCommand_instances = new WeakSet(), _FlowExportCommand_initTelemetry = function _FlowExportCommand_initTelemetry() {
143
- this.telemetry.push((args) => {
144
- Object.assign(this.telemetryProperties, {
145
- packageDisplayName: typeof args.options.packageDisplayName !== 'undefined',
146
- packageDescription: typeof args.options.packageDescription !== 'undefined',
147
- packageCreatedBy: typeof args.options.packageCreatedBy !== 'undefined',
148
- packageSourceEnvironment: typeof args.options.packageSourceEnvironment !== 'undefined',
149
- format: args.options.format,
150
- path: typeof args.options.path !== 'undefined'
151
- });
152
- });
153
- }, _FlowExportCommand_initOptions = function _FlowExportCommand_initOptions() {
154
- this.options.unshift({
155
- option: '-n, --name <name>'
156
- }, {
157
- option: '-e, --environmentName <environmentName>'
158
- }, {
159
- option: '-d, --packageDisplayName [packageDisplayName]'
160
- }, {
161
- option: '--packageDescription [packageDescription]'
162
- }, {
163
- option: '-c, --packageCreatedBy [packageCreatedBy]'
164
- }, {
165
- option: '-s, --packageSourceEnvironment [packageSourceEnvironment]'
166
- }, {
167
- option: '-f, --format [format]'
168
- }, {
169
- option: '-p, --path [path]'
170
- });
171
- }, _FlowExportCommand_initValidators = function _FlowExportCommand_initValidators() {
172
- this.validators.push(async (args) => {
173
- const lowerCaseFormat = args.options.format ? args.options.format.toLowerCase() : '';
174
- if (!validation.isValidGuid(args.options.name)) {
175
- return `${args.options.name} is not a valid GUID`;
176
- }
177
- if (args.options.format && (lowerCaseFormat !== 'json' && lowerCaseFormat !== 'zip')) {
178
- return 'Option format must be json or zip. Default is zip';
179
- }
180
- if (lowerCaseFormat === 'json') {
181
- if (args.options.packageCreatedBy) {
182
- return 'packageCreatedBy cannot be specified with output of json';
183
- }
184
- if (args.options.packageDescription) {
185
- return 'packageDescription cannot be specified with output of json';
186
- }
187
- if (args.options.packageDisplayName) {
188
- return 'packageDisplayName cannot be specified with output of json';
189
- }
190
- if (args.options.packageSourceEnvironment) {
191
- return 'packageSourceEnvironment cannot be specified with output of json';
192
- }
193
- }
194
- if (args.options.path && !fs.existsSync(path.dirname(args.options.path))) {
195
- return 'Specified path where to save the file does not exist';
196
- }
197
- return true;
198
- });
199
- };
200
174
  export default new FlowExportCommand();
201
175
  //# sourceMappingURL=flow-export.js.map
@@ -1,13 +1,15 @@
1
- var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
2
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
3
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
4
- return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
5
- };
6
- var _FlowGetCommand_instances, _FlowGetCommand_initTelemetry, _FlowGetCommand_initOptions;
1
+ import { z } from 'zod';
2
+ import { globalOptionsZod } from '../../../Command.js';
7
3
  import request from '../../../request.js';
8
4
  import { formatting } from '../../../utils/formatting.js';
9
5
  import PowerAutomateCommand from '../../base/PowerAutomateCommand.js';
10
6
  import commands from '../commands.js';
7
+ export const options = z.strictObject({
8
+ ...globalOptionsZod.shape,
9
+ environmentName: z.string().alias('e'),
10
+ name: z.string().alias('n'),
11
+ asAdmin: z.boolean().optional()
12
+ });
11
13
  class FlowGetCommand extends PowerAutomateCommand {
12
14
  get name() {
13
15
  return commands.GET;
@@ -15,11 +17,8 @@ class FlowGetCommand extends PowerAutomateCommand {
15
17
  get description() {
16
18
  return 'Gets information about the specified Microsoft Flow';
17
19
  }
18
- constructor() {
19
- super();
20
- _FlowGetCommand_instances.add(this);
21
- __classPrivateFieldGet(this, _FlowGetCommand_instances, "m", _FlowGetCommand_initTelemetry).call(this);
22
- __classPrivateFieldGet(this, _FlowGetCommand_instances, "m", _FlowGetCommand_initOptions).call(this);
20
+ get schema() {
21
+ return options;
23
22
  }
24
23
  async commandAction(logger, args) {
25
24
  if (this.verbose) {
@@ -45,20 +44,5 @@ class FlowGetCommand extends PowerAutomateCommand {
45
44
  }
46
45
  }
47
46
  }
48
- _FlowGetCommand_instances = new WeakSet(), _FlowGetCommand_initTelemetry = function _FlowGetCommand_initTelemetry() {
49
- this.telemetry.push((args) => {
50
- Object.assign(this.telemetryProperties, {
51
- asAdmin: !!args.options.asAdmin
52
- });
53
- });
54
- }, _FlowGetCommand_initOptions = function _FlowGetCommand_initOptions() {
55
- this.options.unshift({
56
- option: '-n, --name <name>'
57
- }, {
58
- option: '-e, --environmentName <environmentName>'
59
- }, {
60
- option: '--asAdmin'
61
- });
62
- };
63
47
  export default new FlowGetCommand();
64
48
  //# sourceMappingURL=flow-get.js.map
@@ -1,13 +1,16 @@
1
- var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
2
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
3
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
4
- return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
5
- };
6
- var _FlowListCommand_instances, _FlowListCommand_initTelemetry, _FlowListCommand_initOptions, _FlowListCommand_initValidators, _FlowListCommand_initTypes;
1
+ import { z } from 'zod';
2
+ import { globalOptionsZod } from '../../../Command.js';
7
3
  import { formatting } from '../../../utils/formatting.js';
8
4
  import { odata } from '../../../utils/odata.js';
9
5
  import PowerAutomateCommand from '../../base/PowerAutomateCommand.js';
10
6
  import commands from '../commands.js';
7
+ export const options = z.strictObject({
8
+ ...globalOptionsZod.shape,
9
+ environmentName: z.string().alias('e'),
10
+ sharingStatus: z.enum(['all', 'personal', 'ownedByMe', 'sharedWithMe']).optional(),
11
+ withSolutions: z.boolean().optional(),
12
+ asAdmin: z.boolean().optional()
13
+ });
11
14
  class FlowListCommand extends PowerAutomateCommand {
12
15
  get name() {
13
16
  return commands.LIST;
@@ -15,18 +18,17 @@ class FlowListCommand extends PowerAutomateCommand {
15
18
  get description() {
16
19
  return 'Lists Power Automate flows in the given environment';
17
20
  }
21
+ get schema() {
22
+ return options;
23
+ }
24
+ getRefinedSchema(schema) {
25
+ return schema.refine(options => !(options.asAdmin && options.sharingStatus), {
26
+ error: 'The options asAdmin and sharingStatus cannot be specified together.'
27
+ });
28
+ }
18
29
  defaultProperties() {
19
30
  return ['name', 'displayName'];
20
31
  }
21
- constructor() {
22
- super();
23
- _FlowListCommand_instances.add(this);
24
- this.allowedSharingStatuses = ['all', 'personal', 'ownedByMe', 'sharedWithMe'];
25
- __classPrivateFieldGet(this, _FlowListCommand_instances, "m", _FlowListCommand_initTelemetry).call(this);
26
- __classPrivateFieldGet(this, _FlowListCommand_instances, "m", _FlowListCommand_initOptions).call(this);
27
- __classPrivateFieldGet(this, _FlowListCommand_instances, "m", _FlowListCommand_initValidators).call(this);
28
- __classPrivateFieldGet(this, _FlowListCommand_instances, "m", _FlowListCommand_initTypes).call(this);
29
- }
30
32
  async commandAction(logger, args) {
31
33
  if (this.verbose) {
32
34
  await logger.logToStderr(`Getting Power Automate flows${args.options.asAdmin ? ' as admin' : ''} in environment '${args.options.environmentName}'...`);
@@ -76,38 +78,5 @@ class FlowListCommand extends PowerAutomateCommand {
76
78
  return `${baseEndpoint}${asAdmin ? adminSegment : environmentSegment}${flowsEndpoint}${filterQuery}${includeQuery}`;
77
79
  }
78
80
  }
79
- _FlowListCommand_instances = new WeakSet(), _FlowListCommand_initTelemetry = function _FlowListCommand_initTelemetry() {
80
- this.telemetry.push((args) => {
81
- Object.assign(this.telemetryProperties, {
82
- sharingStatus: typeof args.options.sharingStatus !== 'undefined',
83
- withSolutions: !!args.options.withSolutions,
84
- asAdmin: !!args.options.asAdmin
85
- });
86
- });
87
- }, _FlowListCommand_initOptions = function _FlowListCommand_initOptions() {
88
- this.options.unshift({
89
- option: '-e, --environmentName <environmentName>'
90
- }, {
91
- option: '--sharingStatus [sharingStatus]',
92
- autocomplete: this.allowedSharingStatuses
93
- }, {
94
- option: '--withSolutions'
95
- }, {
96
- option: '--asAdmin'
97
- });
98
- }, _FlowListCommand_initValidators = function _FlowListCommand_initValidators() {
99
- this.validators.push(async (args) => {
100
- if (args.options.asAdmin && args.options.sharingStatus) {
101
- return `The options asAdmin and sharingStatus cannot be specified together.`;
102
- }
103
- if (args.options.sharingStatus && !this.allowedSharingStatuses.some(status => status === args.options.sharingStatus)) {
104
- return `${args.options.sharingStatus} is not a valid sharing status. Allowed values are: ${this.allowedSharingStatuses.join(', ')}`;
105
- }
106
- return true;
107
- });
108
- }, _FlowListCommand_initTypes = function _FlowListCommand_initTypes() {
109
- this.types.string.push('environmentName', 'sharingStatus');
110
- this.types.boolean.push('withSolutions', 'asAdmin');
111
- };
112
81
  export default new FlowListCommand();
113
82
  //# sourceMappingURL=flow-list.js.map
@@ -1,15 +1,17 @@
1
- var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
2
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
3
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
4
- return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
5
- };
6
- var _FlowRemoveCommand_instances, _FlowRemoveCommand_initTelemetry, _FlowRemoveCommand_initOptions, _FlowRemoveCommand_initValidators;
1
+ import { z } from 'zod';
7
2
  import { cli } from '../../../cli/cli.js';
3
+ import { globalOptionsZod } from '../../../Command.js';
8
4
  import request from '../../../request.js';
9
5
  import { formatting } from '../../../utils/formatting.js';
10
- import { validation } from '../../../utils/validation.js';
11
6
  import commands from '../commands.js';
12
7
  import PowerAutomateCommand from '../../base/PowerAutomateCommand.js';
8
+ export const options = z.strictObject({
9
+ ...globalOptionsZod.shape,
10
+ name: z.uuid().alias('n'),
11
+ environmentName: z.string().alias('e'),
12
+ asAdmin: z.boolean().optional(),
13
+ force: z.boolean().optional().alias('f')
14
+ });
13
15
  class FlowRemoveCommand extends PowerAutomateCommand {
14
16
  get name() {
15
17
  return commands.REMOVE;
@@ -17,12 +19,8 @@ class FlowRemoveCommand extends PowerAutomateCommand {
17
19
  get description() {
18
20
  return 'Removes the specified Microsoft Flow';
19
21
  }
20
- constructor() {
21
- super();
22
- _FlowRemoveCommand_instances.add(this);
23
- __classPrivateFieldGet(this, _FlowRemoveCommand_instances, "m", _FlowRemoveCommand_initTelemetry).call(this);
24
- __classPrivateFieldGet(this, _FlowRemoveCommand_instances, "m", _FlowRemoveCommand_initOptions).call(this);
25
- __classPrivateFieldGet(this, _FlowRemoveCommand_instances, "m", _FlowRemoveCommand_initValidators).call(this);
22
+ get schema() {
23
+ return options;
26
24
  }
27
25
  async commandAction(logger, args) {
28
26
  if (this.verbose) {
@@ -60,30 +58,5 @@ class FlowRemoveCommand extends PowerAutomateCommand {
60
58
  }
61
59
  }
62
60
  }
63
- _FlowRemoveCommand_instances = new WeakSet(), _FlowRemoveCommand_initTelemetry = function _FlowRemoveCommand_initTelemetry() {
64
- this.telemetry.push((args) => {
65
- Object.assign(this.telemetryProperties, {
66
- asAdmin: !!args.options.asAdmin,
67
- force: !!args.options.force
68
- });
69
- });
70
- }, _FlowRemoveCommand_initOptions = function _FlowRemoveCommand_initOptions() {
71
- this.options.unshift({
72
- option: '-n, --name <name>'
73
- }, {
74
- option: '-e, --environmentName <environmentName>'
75
- }, {
76
- option: '--asAdmin'
77
- }, {
78
- option: '-f, --force'
79
- });
80
- }, _FlowRemoveCommand_initValidators = function _FlowRemoveCommand_initValidators() {
81
- this.validators.push(async (args) => {
82
- if (!validation.isValidGuid(args.options.name)) {
83
- return `${args.options.name} is not a valid GUID`;
84
- }
85
- return true;
86
- });
87
- };
88
61
  export default new FlowRemoveCommand();
89
62
  //# sourceMappingURL=flow-remove.js.map
@@ -1,9 +1,5 @@
1
- var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
2
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
3
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
4
- return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
5
- };
6
- var _FlowOwnerEnsureCommand_instances, _a, _FlowOwnerEnsureCommand_initTelemetry, _FlowOwnerEnsureCommand_initOptions, _FlowOwnerEnsureCommand_initOptionSets, _FlowOwnerEnsureCommand_initValidators;
1
+ import { z } from 'zod';
2
+ import { globalOptionsZod } from '../../../../Command.js';
7
3
  import request from '../../../../request.js';
8
4
  import { entraGroup } from '../../../../utils/entraGroup.js';
9
5
  import { entraUser } from '../../../../utils/entraUser.js';
@@ -11,6 +7,23 @@ import { formatting } from '../../../../utils/formatting.js';
11
7
  import { validation } from '../../../../utils/validation.js';
12
8
  import PowerAutomateCommand from '../../../base/PowerAutomateCommand.js';
13
9
  import commands from '../../commands.js';
10
+ export const options = z.strictObject({
11
+ ...globalOptionsZod.shape,
12
+ flowName: z.uuid(),
13
+ environmentName: z.string().alias('e'),
14
+ roleName: z.enum(['CanView', 'CanEdit']),
15
+ userId: z.string().refine(id => validation.isValidGuid(id), {
16
+ error: e => `'${e.input}' is not a valid GUID.`
17
+ }).optional(),
18
+ userName: z.string().refine(name => validation.isValidUserPrincipalName(name), {
19
+ error: e => `'${e.input}' is not a valid userName.`
20
+ }).optional(),
21
+ groupId: z.string().refine(id => validation.isValidGuid(id), {
22
+ error: e => `'${e.input}' is not a valid GUID.`
23
+ }).optional(),
24
+ groupName: z.string().optional(),
25
+ asAdmin: z.boolean().optional()
26
+ });
14
27
  class FlowOwnerEnsureCommand extends PowerAutomateCommand {
15
28
  get name() {
16
29
  return commands.OWNER_ENSURE;
@@ -18,13 +31,17 @@ class FlowOwnerEnsureCommand extends PowerAutomateCommand {
18
31
  get description() {
19
32
  return 'Assigns/updates permissions to a Power Automate flow';
20
33
  }
21
- constructor() {
22
- super();
23
- _FlowOwnerEnsureCommand_instances.add(this);
24
- __classPrivateFieldGet(this, _FlowOwnerEnsureCommand_instances, "m", _FlowOwnerEnsureCommand_initTelemetry).call(this);
25
- __classPrivateFieldGet(this, _FlowOwnerEnsureCommand_instances, "m", _FlowOwnerEnsureCommand_initOptions).call(this);
26
- __classPrivateFieldGet(this, _FlowOwnerEnsureCommand_instances, "m", _FlowOwnerEnsureCommand_initValidators).call(this);
27
- __classPrivateFieldGet(this, _FlowOwnerEnsureCommand_instances, "m", _FlowOwnerEnsureCommand_initOptionSets).call(this);
34
+ get schema() {
35
+ return options;
36
+ }
37
+ getRefinedSchema(schema) {
38
+ return schema.refine(options => [options.userId, options.userName, options.groupId, options.groupName].filter(x => x !== undefined).length === 1, {
39
+ error: 'Specify either userId, userName, groupId, or groupName, but not multiple.',
40
+ params: {
41
+ customCode: 'optionSet',
42
+ options: ['userId', 'userName', 'groupId', 'groupName']
43
+ }
44
+ });
28
45
  }
29
46
  async commandAction(logger, args) {
30
47
  try {
@@ -78,57 +95,5 @@ class FlowOwnerEnsureCommand extends PowerAutomateCommand {
78
95
  }
79
96
  }
80
97
  }
81
- _a = FlowOwnerEnsureCommand, _FlowOwnerEnsureCommand_instances = new WeakSet(), _FlowOwnerEnsureCommand_initTelemetry = function _FlowOwnerEnsureCommand_initTelemetry() {
82
- this.telemetry.push((args) => {
83
- Object.assign(this.telemetryProperties, {
84
- asAdmin: !!args.options.asAdmin,
85
- userId: typeof args.options.userId !== 'undefined',
86
- userName: typeof args.options.userName !== 'undefined',
87
- groupId: typeof args.options.groupId !== 'undefined',
88
- groupName: typeof args.options.groupName !== 'undefined'
89
- });
90
- });
91
- }, _FlowOwnerEnsureCommand_initOptions = function _FlowOwnerEnsureCommand_initOptions() {
92
- this.options.unshift({
93
- option: '-e, --environmentName <environmentName>'
94
- }, {
95
- option: '--flowName <flowName>'
96
- }, {
97
- option: '--userId [userId]'
98
- }, {
99
- option: '--userName [userName]'
100
- }, {
101
- option: '--groupId [groupId]'
102
- }, {
103
- option: '--groupName [groupName]'
104
- }, {
105
- option: '--roleName <roleName>',
106
- autocomplete: _a.allowedRoleNames
107
- }, {
108
- option: '--asAdmin'
109
- });
110
- }, _FlowOwnerEnsureCommand_initOptionSets = function _FlowOwnerEnsureCommand_initOptionSets() {
111
- this.optionSets.push({ options: ['userId', 'userName', 'groupId', 'groupName'] });
112
- }, _FlowOwnerEnsureCommand_initValidators = function _FlowOwnerEnsureCommand_initValidators() {
113
- this.validators.push(async (args) => {
114
- if (!validation.isValidGuid(args.options.flowName)) {
115
- return `${args.options.flowName} is not a valid GUID.`;
116
- }
117
- if (args.options.userId && !validation.isValidGuid(args.options.userId)) {
118
- return `${args.options.userId} is not a valid GUID.`;
119
- }
120
- if (args.options.userName && !validation.isValidUserPrincipalName(args.options.userName)) {
121
- return `${args.options.userName} is not a valid userName.`;
122
- }
123
- if (args.options.groupId && !validation.isValidGuid(args.options.groupId)) {
124
- return `${args.options.groupId} is not a valid GUID.`;
125
- }
126
- if (_a.allowedRoleNames.indexOf(args.options.roleName) === -1) {
127
- return `${args.options.roleName} is not a valid roleName. Valid values are: ${_a.allowedRoleNames.join(', ')}`;
128
- }
129
- return true;
130
- });
131
- };
132
- FlowOwnerEnsureCommand.allowedRoleNames = ['CanView', 'CanEdit'];
133
98
  export default new FlowOwnerEnsureCommand();
134
99
  //# sourceMappingURL=owner-ensure.js.map
@@ -1,15 +1,16 @@
1
- var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
2
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
3
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
4
- return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
5
- };
6
- var _FlowOwnerListCommand_instances, _FlowOwnerListCommand_initTelemetry, _FlowOwnerListCommand_initOptions, _FlowOwnerListCommand_initValidators;
1
+ import { z } from 'zod';
7
2
  import { cli } from '../../../../cli/cli.js';
3
+ import { globalOptionsZod } from '../../../../Command.js';
8
4
  import { formatting } from '../../../../utils/formatting.js';
9
5
  import { odata } from '../../../../utils/odata.js';
10
- import { validation } from '../../../../utils/validation.js';
11
6
  import PowerAutomateCommand from '../../../base/PowerAutomateCommand.js';
12
7
  import commands from '../../commands.js';
8
+ export const options = z.strictObject({
9
+ ...globalOptionsZod.shape,
10
+ flowName: z.uuid(),
11
+ environmentName: z.string().alias('e'),
12
+ asAdmin: z.boolean().optional()
13
+ });
13
14
  class FlowOwnerListCommand extends PowerAutomateCommand {
14
15
  get name() {
15
16
  return commands.OWNER_LIST;
@@ -20,12 +21,8 @@ class FlowOwnerListCommand extends PowerAutomateCommand {
20
21
  defaultProperties() {
21
22
  return ['roleName', 'id', 'type'];
22
23
  }
23
- constructor() {
24
- super();
25
- _FlowOwnerListCommand_instances.add(this);
26
- __classPrivateFieldGet(this, _FlowOwnerListCommand_instances, "m", _FlowOwnerListCommand_initTelemetry).call(this);
27
- __classPrivateFieldGet(this, _FlowOwnerListCommand_instances, "m", _FlowOwnerListCommand_initOptions).call(this);
28
- __classPrivateFieldGet(this, _FlowOwnerListCommand_instances, "m", _FlowOwnerListCommand_initValidators).call(this);
24
+ get schema() {
25
+ return options;
29
26
  }
30
27
  async commandAction(logger, args) {
31
28
  try {
@@ -50,27 +47,5 @@ class FlowOwnerListCommand extends PowerAutomateCommand {
50
47
  }
51
48
  }
52
49
  }
53
- _FlowOwnerListCommand_instances = new WeakSet(), _FlowOwnerListCommand_initTelemetry = function _FlowOwnerListCommand_initTelemetry() {
54
- this.telemetry.push((args) => {
55
- Object.assign(this.telemetryProperties, {
56
- asAdmin: !!args.options.asAdmin
57
- });
58
- });
59
- }, _FlowOwnerListCommand_initOptions = function _FlowOwnerListCommand_initOptions() {
60
- this.options.unshift({
61
- option: '-e, --environmentName <environmentName>'
62
- }, {
63
- option: '--flowName <flowName>'
64
- }, {
65
- option: '--asAdmin'
66
- });
67
- }, _FlowOwnerListCommand_initValidators = function _FlowOwnerListCommand_initValidators() {
68
- this.validators.push(async (args) => {
69
- if (!validation.isValidGuid(args.options.flowName)) {
70
- return `${args.options.flowName} is not a valid GUID.`;
71
- }
72
- return true;
73
- });
74
- };
75
50
  export default new FlowOwnerListCommand();
76
51
  //# sourceMappingURL=owner-list.js.map
@@ -1,10 +1,6 @@
1
- var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
2
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
3
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
4
- return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
5
- };
6
- var _FlowOwnerRemoveCommand_instances, _FlowOwnerRemoveCommand_initTelemetry, _FlowOwnerRemoveCommand_initOptions, _FlowOwnerRemoveCommand_initValidators, _FlowOwnerRemoveCommand_initOptionSets;
1
+ import { z } from 'zod';
7
2
  import { cli } from '../../../../cli/cli.js';
3
+ import { globalOptionsZod } from '../../../../Command.js';
8
4
  import request from '../../../../request.js';
9
5
  import { entraGroup } from '../../../../utils/entraGroup.js';
10
6
  import { entraUser } from '../../../../utils/entraUser.js';
@@ -12,6 +8,23 @@ import { formatting } from '../../../../utils/formatting.js';
12
8
  import { validation } from '../../../../utils/validation.js';
13
9
  import PowerAutomateCommand from '../../../base/PowerAutomateCommand.js';
14
10
  import commands from '../../commands.js';
11
+ export const options = z.strictObject({
12
+ ...globalOptionsZod.shape,
13
+ flowName: z.uuid(),
14
+ environmentName: z.string().alias('e'),
15
+ userId: z.string().refine(id => validation.isValidGuid(id), {
16
+ error: e => `'${e.input}' is not a valid GUID.`
17
+ }).optional(),
18
+ userName: z.string().refine(name => validation.isValidUserPrincipalName(name), {
19
+ error: e => `'${e.input}' is not a valid userName.`
20
+ }).optional(),
21
+ groupId: z.string().refine(id => validation.isValidGuid(id), {
22
+ error: e => `'${e.input}' is not a valid GUID.`
23
+ }).optional(),
24
+ groupName: z.string().optional(),
25
+ asAdmin: z.boolean().optional(),
26
+ force: z.boolean().optional().alias('f')
27
+ });
15
28
  class FlowOwnerRemoveCommand extends PowerAutomateCommand {
16
29
  get name() {
17
30
  return commands.OWNER_REMOVE;
@@ -19,13 +32,17 @@ class FlowOwnerRemoveCommand extends PowerAutomateCommand {
19
32
  get description() {
20
33
  return 'Removes owner permissions to a Power Automate flow';
21
34
  }
22
- constructor() {
23
- super();
24
- _FlowOwnerRemoveCommand_instances.add(this);
25
- __classPrivateFieldGet(this, _FlowOwnerRemoveCommand_instances, "m", _FlowOwnerRemoveCommand_initTelemetry).call(this);
26
- __classPrivateFieldGet(this, _FlowOwnerRemoveCommand_instances, "m", _FlowOwnerRemoveCommand_initOptions).call(this);
27
- __classPrivateFieldGet(this, _FlowOwnerRemoveCommand_instances, "m", _FlowOwnerRemoveCommand_initValidators).call(this);
28
- __classPrivateFieldGet(this, _FlowOwnerRemoveCommand_instances, "m", _FlowOwnerRemoveCommand_initOptionSets).call(this);
35
+ get schema() {
36
+ return options;
37
+ }
38
+ getRefinedSchema(schema) {
39
+ return schema.refine(options => [options.userId, options.userName, options.groupId, options.groupName].filter(x => x !== undefined).length === 1, {
40
+ error: 'Specify either userId, userName, groupId, or groupName, but not multiple.',
41
+ params: {
42
+ customCode: 'optionSet',
43
+ options: ['userId', 'userName', 'groupId', 'groupName']
44
+ }
45
+ });
29
46
  }
30
47
  async commandAction(logger, args) {
31
48
  try {
@@ -77,53 +94,5 @@ class FlowOwnerRemoveCommand extends PowerAutomateCommand {
77
94
  }
78
95
  }
79
96
  }
80
- _FlowOwnerRemoveCommand_instances = new WeakSet(), _FlowOwnerRemoveCommand_initTelemetry = function _FlowOwnerRemoveCommand_initTelemetry() {
81
- this.telemetry.push((args) => {
82
- Object.assign(this.telemetryProperties, {
83
- userId: typeof args.options.userId !== 'undefined',
84
- userName: typeof args.options.userName !== 'undefined',
85
- groupId: typeof args.options.groupId !== 'undefined',
86
- groupName: typeof args.options.groupName !== 'undefined',
87
- asAdmin: !!args.options.asAdmin,
88
- force: !!args.options.force
89
- });
90
- });
91
- }, _FlowOwnerRemoveCommand_initOptions = function _FlowOwnerRemoveCommand_initOptions() {
92
- this.options.unshift({
93
- option: '-e, --environmentName <environmentName>'
94
- }, {
95
- option: '--flowName <flowName>'
96
- }, {
97
- option: '--userId [userId]'
98
- }, {
99
- option: '--userName [userName]'
100
- }, {
101
- option: '--groupId [groupId]'
102
- }, {
103
- option: '--groupName [groupName]'
104
- }, {
105
- option: '--asAdmin'
106
- }, {
107
- option: '-f, --force'
108
- });
109
- }, _FlowOwnerRemoveCommand_initValidators = function _FlowOwnerRemoveCommand_initValidators() {
110
- this.validators.push(async (args) => {
111
- if (!validation.isValidGuid(args.options.flowName)) {
112
- return `${args.options.flowName} is not a valid GUID.`;
113
- }
114
- if (args.options.userId && !validation.isValidGuid(args.options.userId)) {
115
- return `${args.options.userId} is not a valid GUID.`;
116
- }
117
- if (args.options.userName && !validation.isValidUserPrincipalName(args.options.userName)) {
118
- return `${args.options.userName} is not a valid userName.`;
119
- }
120
- if (args.options.groupId && !validation.isValidGuid(args.options.groupId)) {
121
- return `${args.options.groupId} is not a valid GUID.`;
122
- }
123
- return true;
124
- });
125
- }, _FlowOwnerRemoveCommand_initOptionSets = function _FlowOwnerRemoveCommand_initOptionSets() {
126
- this.optionSets.push({ options: ['userId', 'userName', 'groupId', 'groupName'] });
127
- };
128
97
  export default new FlowOwnerRemoveCommand();
129
98
  //# sourceMappingURL=owner-remove.js.map