@pnp/cli-microsoft365 11.0.0-beta.677f8d3 → 11.0.0-beta.d3d8993

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 (86) hide show
  1. package/allCommands.json +1 -1
  2. package/allCommandsFull.json +1 -1
  3. package/dist/Command.js +4 -0
  4. package/dist/config.js +1 -0
  5. package/dist/m365/adaptivecard/commands/adaptivecard-send.js +1 -1
  6. package/dist/m365/entra/commands/administrativeunit/administrativeunit-add.js +13 -27
  7. package/dist/m365/entra/commands/administrativeunit/administrativeunit-get.js +18 -43
  8. package/dist/m365/entra/commands/administrativeunit/administrativeunit-list.js +10 -21
  9. package/dist/m365/entra/commands/administrativeunit/administrativeunit-remove.js +25 -49
  10. package/dist/m365/entra/commands/group/group-member-add.js +6 -27
  11. package/dist/m365/entra/commands/group/group-member-set.js +5 -26
  12. package/dist/m365/entra/commands/m365group/m365group-get.js +1 -7
  13. package/dist/m365/entra/commands/m365group/m365group-list.js +1 -7
  14. package/dist/m365/entra/commands/pim/pim-role-assignment-eligibility-list.js +1 -7
  15. package/dist/m365/entra/commands/pim/pim-role-assignment-list.js +1 -7
  16. package/dist/m365/entra/commands/pim/pim-role-request-list.js +1 -7
  17. package/dist/m365/flow/commands/flow-list.js +7 -14
  18. package/dist/m365/flow/commands/run/run-get.js +1 -7
  19. package/dist/m365/graph/commands/openextension/openextension-add.js +2 -2
  20. package/dist/m365/graph/commands/openextension/openextension-set.js +2 -6
  21. package/dist/m365/graph/commands/subscription/subscription-add.js +3 -10
  22. package/dist/m365/pp/commands/solution/solution-publisher-list.js +1 -8
  23. package/dist/m365/purview/commands/threatassessment/threatassessment-get.js +1 -7
  24. package/dist/m365/spe/commands/container/container-add.js +1 -3
  25. package/dist/m365/spe/commands/container/container-list.js +1 -3
  26. package/dist/m365/spe/commands/container/container-recyclebinitem-list.js +1 -3
  27. package/dist/m365/spe/commands/container/container-recyclebinitem-restore.js +1 -3
  28. package/dist/m365/spe/commands/container/container-remove.js +1 -3
  29. package/dist/m365/spe/commands/containertype/containertype-add.js +67 -90
  30. package/dist/m365/spe/commands/containertype/containertype-get.js +53 -81
  31. package/dist/m365/spe/commands/containertype/containertype-list.js +8 -19
  32. package/dist/m365/spe/commands/containertype/containertype-remove.js +27 -5
  33. package/dist/m365/spo/commands/file/file-move.js +2 -8
  34. package/dist/m365/spo/commands/homesite/homesite-add.js +26 -2
  35. package/dist/m365/spo/commands/hubsite/hubsite-get.js +4 -13
  36. package/dist/m365/spo/commands/hubsite/hubsite-list.js +1 -8
  37. package/dist/m365/spo/commands/{tenant/tenant-site-archive.js → site/site-archive.js} +14 -14
  38. package/dist/m365/spo/commands/{tenant/tenant-site-list.js → site/site-list.js} +16 -27
  39. package/dist/m365/spo/commands/{tenant/tenant-site-membership-list.js → site/site-membership-list.js} +15 -15
  40. package/dist/m365/spo/commands/{tenant/tenant-site-rename.js → site/site-rename.js} +14 -14
  41. package/dist/m365/spo/commands/{tenant/tenant-site-unarchive.js → site/site-unarchive.js} +14 -14
  42. package/dist/m365/spo/commands/term/term-list.js +1 -7
  43. package/dist/m365/spo/commands.js +4 -5
  44. package/dist/m365/teams/commands/chat/chat-member-add.js +3 -9
  45. package/dist/m365/viva/commands/engage/engage-network-list.js +1 -7
  46. package/dist/utils/spe.js +5 -39
  47. package/docs/docs/cmd/entra/group/group-member-add.mdx +7 -26
  48. package/docs/docs/cmd/entra/group/group-member-set.mdx +5 -23
  49. package/docs/docs/cmd/entra/m365group/m365group-get.mdx +0 -3
  50. package/docs/docs/cmd/entra/m365group/m365group-list.mdx +0 -3
  51. package/docs/docs/cmd/entra/pim/pim-role-assignment-eligibility-list.mdx +0 -3
  52. package/docs/docs/cmd/entra/pim/pim-role-assignment-list.mdx +0 -3
  53. package/docs/docs/cmd/entra/pim/pim-role-request-list.mdx +0 -3
  54. package/docs/docs/cmd/flow/flow-list.mdx +0 -3
  55. package/docs/docs/cmd/flow/run/run-get.mdx +0 -3
  56. package/docs/docs/cmd/graph/subscription/subscription-add.mdx +0 -3
  57. package/docs/docs/cmd/pp/solution/solution-publisher-list.mdx +0 -3
  58. package/docs/docs/cmd/purview/threatassessment/threatassessment-get.mdx +0 -3
  59. package/docs/docs/cmd/spe/container/container-activate.mdx +21 -0
  60. package/docs/docs/cmd/spe/container/container-add.mdx +29 -0
  61. package/docs/docs/cmd/spe/container/container-get.mdx +20 -1
  62. package/docs/docs/cmd/spe/container/container-list.mdx +29 -0
  63. package/docs/docs/cmd/spe/container/container-permission-list.mdx +19 -0
  64. package/docs/docs/cmd/spe/container/container-recyclebinitem-list.mdx +29 -0
  65. package/docs/docs/cmd/spe/container/container-recyclebinitem-restore.mdx +31 -0
  66. package/docs/docs/cmd/spe/container/container-remove.mdx +31 -0
  67. package/docs/docs/cmd/spe/containertype/containertype-add.mdx +111 -55
  68. package/docs/docs/cmd/spe/containertype/containertype-get.mdx +69 -38
  69. package/docs/docs/cmd/spe/containertype/containertype-list.mdx +59 -31
  70. package/docs/docs/cmd/spe/containertype/containertype-remove.mdx +31 -4
  71. package/docs/docs/cmd/spo/file/file-move.mdx +0 -3
  72. package/docs/docs/cmd/spo/homesite/homesite-add.mdx +13 -4
  73. package/docs/docs/cmd/spo/homesite/homesite-set.mdx +1 -1
  74. package/docs/docs/cmd/spo/hubsite/hubsite-get.mdx +0 -3
  75. package/docs/docs/cmd/spo/hubsite/hubsite-list.mdx +0 -3
  76. package/docs/docs/cmd/spo/{tenant/tenant-site-archive.mdx → site/site-archive.mdx} +4 -4
  77. package/docs/docs/cmd/spo/{tenant/tenant-site-list.mdx → site/site-list.mdx} +7 -16
  78. package/docs/docs/cmd/spo/{tenant/tenant-site-membership-list.mdx → site/site-membership-list.mdx} +5 -5
  79. package/docs/docs/cmd/spo/{tenant/tenant-site-rename.mdx → site/site-rename.mdx} +7 -7
  80. package/docs/docs/cmd/spo/{tenant/tenant-site-unarchive.mdx → site/site-unarchive.mdx} +4 -4
  81. package/docs/docs/cmd/spo/term/term-list.mdx +0 -3
  82. package/docs/docs/cmd/teams/chat/chat-member-add.mdx +2 -5
  83. package/docs/docs/cmd/viva/engage/engage-network-list.mdx +0 -3
  84. package/package.json +1 -1
  85. package/dist/m365/spo/commands/tenant/SPOTenantSitePropertiesEnumerable.js +0 -2
  86. package/dist/m365/spo/commands/tenant/TenantSiteProperties.js +0 -2
@@ -30,9 +30,6 @@ class EntraPimRoleRequestListCommand extends GraphCommand {
30
30
  __classPrivateFieldGet(this, _EntraPimRoleRequestListCommand_instances, "m", _EntraPimRoleRequestListCommand_initOptionSets).call(this);
31
31
  }
32
32
  async commandAction(logger, args) {
33
- if (args.options.includePrincipalDetails) {
34
- await this.warn(logger, `Parameter 'includePrincipalDetails' is deprecated. Please use 'withPrincipalDetails' instead`);
35
- }
36
33
  if (this.verbose) {
37
34
  await logger.logToStderr(`Retrieving list of PIM roles requests for ${args.options.userId || args.options.userName || args.options.groupId || args.options.groupName || 'all users'}...`);
38
35
  }
@@ -54,7 +51,7 @@ class EntraPimRoleRequestListCommand extends GraphCommand {
54
51
  queryParameters.push(`$filter=${filters.join(' and ')}`);
55
52
  }
56
53
  expands.push('roleDefinition($select=displayName)');
57
- if (args.options.includePrincipalDetails || args.options.withPrincipalDetails) {
54
+ if (args.options.withPrincipalDetails) {
58
55
  expands.push('principal');
59
56
  }
60
57
  queryParameters.push(`$expand=${expands.join(',')}`);
@@ -103,7 +100,6 @@ _EntraPimRoleRequestListCommand_instances = new WeakSet(), _EntraPimRoleRequestL
103
100
  groupName: typeof args.options.groupName !== 'undefined',
104
101
  createdDateTime: typeof args.options.createdDateTime !== 'undefined',
105
102
  status: typeof args.options.status !== 'undefined',
106
- includePrincipalDetails: !!args.options.includePrincipalDetails,
107
103
  withPrincipalDetails: !!args.options.withPrincipalDetails
108
104
  });
109
105
  });
@@ -121,8 +117,6 @@ _EntraPimRoleRequestListCommand_instances = new WeakSet(), _EntraPimRoleRequestL
121
117
  }, {
122
118
  option: '-s, --status [status]',
123
119
  autocomplete: this.allowedStatuses
124
- }, {
125
- option: '--includePrincipalDetails'
126
120
  }, {
127
121
  option: '--withPrincipalDetails'
128
122
  });
@@ -28,33 +28,29 @@ class FlowListCommand extends PowerAutomateCommand {
28
28
  __classPrivateFieldGet(this, _FlowListCommand_instances, "m", _FlowListCommand_initTypes).call(this);
29
29
  }
30
30
  async commandAction(logger, args) {
31
- if (args.options.includeSolutions) {
32
- await this.warn(logger, `Parameter 'includeSolutions' is deprecated. Please use 'withSolutions' instead`);
33
- }
34
31
  if (this.verbose) {
35
32
  await logger.logToStderr(`Getting Power Automate flows${args.options.asAdmin ? ' as admin' : ''} in environment '${args.options.environmentName}'...`);
36
33
  }
37
34
  try {
38
- const { environmentName, asAdmin, sharingStatus, includeSolutions, withSolutions } = args.options;
35
+ const { environmentName, asAdmin, sharingStatus, withSolutions } = args.options;
39
36
  let items = [];
40
- const shouldIncludeSolutions = withSolutions || includeSolutions;
41
37
  if (sharingStatus === 'personal') {
42
- const url = this.getApiUrl(environmentName, asAdmin, shouldIncludeSolutions, 'personal');
38
+ const url = this.getApiUrl(environmentName, asAdmin, withSolutions, 'personal');
43
39
  items = await odata.getAllItems(url);
44
40
  }
45
41
  else if (sharingStatus === 'sharedWithMe') {
46
- const url = this.getApiUrl(environmentName, asAdmin, shouldIncludeSolutions, 'team');
42
+ const url = this.getApiUrl(environmentName, asAdmin, withSolutions, 'team');
47
43
  items = await odata.getAllItems(url);
48
44
  }
49
45
  else if (sharingStatus === 'all') {
50
- let url = this.getApiUrl(environmentName, asAdmin, shouldIncludeSolutions, 'personal');
46
+ let url = this.getApiUrl(environmentName, asAdmin, withSolutions, 'personal');
51
47
  items = await odata.getAllItems(url);
52
- url = this.getApiUrl(environmentName, asAdmin, shouldIncludeSolutions, 'team');
48
+ url = this.getApiUrl(environmentName, asAdmin, withSolutions, 'team');
53
49
  const teamFlows = await odata.getAllItems(url);
54
50
  items = items.concat(teamFlows);
55
51
  }
56
52
  else {
57
- const url = this.getApiUrl(environmentName, asAdmin, shouldIncludeSolutions);
53
+ const url = this.getApiUrl(environmentName, asAdmin, withSolutions);
58
54
  items = await odata.getAllItems(url);
59
55
  }
60
56
  // Remove duplicates
@@ -84,7 +80,6 @@ _FlowListCommand_instances = new WeakSet(), _FlowListCommand_initTelemetry = fun
84
80
  this.telemetry.push((args) => {
85
81
  Object.assign(this.telemetryProperties, {
86
82
  sharingStatus: typeof args.options.sharingStatus !== 'undefined',
87
- includeSolutions: !!args.options.includeSolutions,
88
83
  withSolutions: !!args.options.withSolutions,
89
84
  asAdmin: !!args.options.asAdmin
90
85
  });
@@ -95,8 +90,6 @@ _FlowListCommand_instances = new WeakSet(), _FlowListCommand_initTelemetry = fun
95
90
  }, {
96
91
  option: '--sharingStatus [sharingStatus]',
97
92
  autocomplete: this.allowedSharingStatuses
98
- }, {
99
- option: '--includeSolutions'
100
93
  }, {
101
94
  option: '--withSolutions'
102
95
  }, {
@@ -114,7 +107,7 @@ _FlowListCommand_instances = new WeakSet(), _FlowListCommand_initTelemetry = fun
114
107
  });
115
108
  }, _FlowListCommand_initTypes = function _FlowListCommand_initTypes() {
116
109
  this.types.string.push('environmentName', 'sharingStatus');
117
- this.types.boolean.push('includeSolutions', 'withSolutions', 'asAdmin');
110
+ this.types.boolean.push('withSolutions', 'asAdmin');
118
111
  };
119
112
  export default new FlowListCommand();
120
113
  //# sourceMappingURL=flow-list.js.map
@@ -27,9 +27,6 @@ class FlowRunGetCommand extends PowerAutomateCommand {
27
27
  if (this.verbose) {
28
28
  await logger.logToStderr(`Retrieving information about run ${args.options.name} of Microsoft Flow ${args.options.flowName}...`);
29
29
  }
30
- if (args.options.includeTriggerInformation) {
31
- await this.warn(logger, `Parameter 'includeTriggerInformation' is deprecated. Please use 'withTrigger' instead`);
32
- }
33
30
  const actionsParameter = args.options.withActions ? '$expand=properties%2Factions&' : '';
34
31
  const requestOptions = {
35
32
  url: `${PowerAutomateCommand.resource}/providers/Microsoft.ProcessSimple/environments/${formatting.encodeQueryParameter(args.options.environmentName)}/flows/${formatting.encodeQueryParameter(args.options.flowName)}/runs/${formatting.encodeQueryParameter(args.options.name)}?${actionsParameter}api-version=2016-11-01`,
@@ -44,7 +41,7 @@ class FlowRunGetCommand extends PowerAutomateCommand {
44
41
  res.endTime = res.properties.endTime || '';
45
42
  res.status = res.properties.status;
46
43
  res.triggerName = res.properties.trigger.name;
47
- if ((args.options.includeTriggerInformation || args.options.withTrigger) && res.properties.trigger.outputsLink) {
44
+ if (args.options.withTrigger && res.properties.trigger.outputsLink) {
48
45
  res.triggerInformation = await this.getTriggerInformation(res);
49
46
  }
50
47
  if (!!args.options.withActions) {
@@ -96,8 +93,6 @@ _FlowRunGetCommand_instances = new WeakSet(), _FlowRunGetCommand_initOptions = f
96
93
  option: '--flowName <flowName>'
97
94
  }, {
98
95
  option: '-e, --environmentName <environmentName>'
99
- }, {
100
- option: '--includeTriggerInformation'
101
96
  }, {
102
97
  option: '--withTrigger'
103
98
  }, {
@@ -116,7 +111,6 @@ _FlowRunGetCommand_instances = new WeakSet(), _FlowRunGetCommand_initOptions = f
116
111
  }, _FlowRunGetCommand_initTelemetry = function _FlowRunGetCommand_initTelemetry() {
117
112
  this.telemetry.push((args) => {
118
113
  Object.assign(this.telemetryProperties, {
119
- includeTriggerInformation: !!args.options.includeTriggerInformation,
120
114
  withTrigger: !!args.options.withTrigger,
121
115
  withActions: typeof args.options.withActions !== 'undefined'
122
116
  });
@@ -12,7 +12,7 @@ const options = globalOptionsZod
12
12
  resourceId: zod.alias('i', z.string()),
13
13
  resourceType: zod.alias('t', z.enum(['user', 'group', 'device', 'organization']))
14
14
  })
15
- .and(z.any());
15
+ .passthrough();
16
16
  class GraphOpenExtensionAddCommand extends GraphCommand {
17
17
  get name() {
18
18
  return commands.OPENEXTENSION_ADD;
@@ -38,7 +38,7 @@ class GraphOpenExtensionAddCommand extends GraphCommand {
38
38
  try {
39
39
  const requestBody = {};
40
40
  requestBody["extensionName"] = args.options.name;
41
- const unknownOptions = optionsUtils.getUnknownOptions(args.options, this.options);
41
+ const unknownOptions = optionsUtils.getUnknownOptions(args.options, zod.schemaToOptions(this.schema));
42
42
  const unknownOptionsNames = Object.getOwnPropertyNames(unknownOptions);
43
43
  unknownOptionsNames.forEach(async (o) => {
44
44
  try {
@@ -13,11 +13,10 @@ const options = globalOptionsZod
13
13
  resourceType: zod.alias('t', z.enum(['user', 'group', 'device', 'organization'])),
14
14
  keepUnchangedProperties: zod.alias('k', z.boolean().optional())
15
15
  })
16
- .and(z.any());
16
+ .passthrough();
17
17
  class GraphOpenExtensionSetCommand extends GraphCommand {
18
18
  constructor() {
19
19
  super(...arguments);
20
- this.commandOptions = ['keepUnchangedProperties', 'resourceType', 'resourceId', 'name'];
21
20
  this.defaultOpenExtensionProperties = ['id', 'extensionName'];
22
21
  }
23
22
  get name() {
@@ -46,12 +45,9 @@ class GraphOpenExtensionSetCommand extends GraphCommand {
46
45
  const currentExtensionNames = Object.getOwnPropertyNames(currentExtension);
47
46
  const requestBody = {};
48
47
  requestBody["@odata.type"] = '#microsoft.graph.openTypeExtension';
49
- const unknownOptions = optionsUtils.getUnknownOptions(args.options, this.options);
48
+ const unknownOptions = optionsUtils.getUnknownOptions(args.options, zod.schemaToOptions(this.schema));
50
49
  const unknownOptionsNames = Object.getOwnPropertyNames(unknownOptions);
51
50
  unknownOptionsNames.forEach(async (option) => {
52
- if (this.commandOptions.includes(option)) {
53
- return;
54
- }
55
51
  const value = unknownOptions[option];
56
52
  if (value === "") {
57
53
  requestBody[option] = null;
@@ -49,7 +49,7 @@ class GraphSubscriptionAddCommand extends GraphCommand {
49
49
  notificationUrl: args.options.notificationUrl,
50
50
  expirationDateTime: await this.getExpirationDateTimeOrDefault(logger, args),
51
51
  clientState: args.options.clientState,
52
- includeResourceData: args.options.withResourceData || args.options.includeResourceData,
52
+ includeResourceData: args.options.withResourceData,
53
53
  encryptionCertificate: args.options.encryptionCertificate,
54
54
  encryptionCertificateId: args.options.encryptionCertificateId,
55
55
  lifecycleNotificationUrl: args.options.lifecycleNotificationUrl,
@@ -66,9 +66,6 @@ class GraphSubscriptionAddCommand extends GraphCommand {
66
66
  responseType: 'json'
67
67
  };
68
68
  try {
69
- if (args.options.includeResourceData) {
70
- await this.warn(logger, `Parameter 'includeResourceData' is deprecated. Please use 'withResourceData' instead`);
71
- }
72
69
  const res = await request.post(requestOptions);
73
70
  await logger.log(res);
74
71
  }
@@ -135,7 +132,6 @@ _GraphSubscriptionAddCommand_instances = new WeakSet(), _GraphSubscriptionAddCom
135
132
  lifecycleNotificationUrl: typeof args.options.lifecycleNotificationUrl !== 'undefined',
136
133
  notificationUrlAppId: typeof args.options.notificationUrlAppId !== 'undefined',
137
134
  latestTLSVersion: typeof args.options.latestTLSVersion !== 'undefined',
138
- includeResourceData: !!args.options.includeResourceData,
139
135
  withResourceData: !!args.options.withResourceData,
140
136
  encryptionCertificate: typeof args.options.encryptionCertificate !== 'undefined',
141
137
  encryptionCertificateId: typeof args.options.encryptionCertificateId !== 'undefined'
@@ -160,8 +156,6 @@ _GraphSubscriptionAddCommand_instances = new WeakSet(), _GraphSubscriptionAddCom
160
156
  }, {
161
157
  option: '--latestTLSVersion [latestTLSVersion]',
162
158
  autocomplete: this.allowedTlsVersions
163
- }, {
164
- option: '--includeResourceData [includeResourceData]'
165
159
  }, {
166
160
  option: '--withResourceData [withResourceData]'
167
161
  }, {
@@ -193,11 +187,10 @@ _GraphSubscriptionAddCommand_instances = new WeakSet(), _GraphSubscriptionAddCom
193
187
  if (args.options.latestTLSVersion && this.allowedTlsVersions.map(x => x.toLowerCase()).indexOf(args.options.latestTLSVersion.toLowerCase()) === -1) {
194
188
  return `${args.options.latestTLSVersion} is not a valid TLS version. Allowed values are ${this.allowedTlsVersions.join(', ')}`;
195
189
  }
196
- const shouldIncludeResourceData = args.options.includeResourceData || args.options.withResourceData;
197
- if (shouldIncludeResourceData && !args.options.encryptionCertificate) {
190
+ if (args.options.withResourceData && !args.options.encryptionCertificate) {
198
191
  return `The 'encryptionCertificate' options is required to include the changed resource data`;
199
192
  }
200
- if (shouldIncludeResourceData && !args.options.encryptionCertificateId) {
193
+ if (args.options.withResourceData && !args.options.encryptionCertificateId) {
201
194
  return `The 'encryptionCertificateId' options is required to include the changed resource data`;
202
195
  }
203
196
  if (args.options.notificationUrlAppId && !validation.isValidGuid(args.options.notificationUrlAppId)) {
@@ -25,17 +25,13 @@ class PpSolutionPublisherListCommand extends PowerPlatformCommand {
25
25
  __classPrivateFieldGet(this, _PpSolutionPublisherListCommand_instances, "m", _PpSolutionPublisherListCommand_initOptions).call(this);
26
26
  }
27
27
  async commandAction(logger, args) {
28
- if (args.options.includeMicrosoftPublishers) {
29
- await this.warn(logger, `Parameter 'includeMicrosoftPublishers' is deprecated. Please use 'withMicrosoftPublishers' instead`);
30
- }
31
28
  if (this.verbose) {
32
29
  await logger.logToStderr(`Retrieving list of publishers...`);
33
30
  }
34
31
  try {
35
32
  const dynamicsApiUrl = await powerPlatform.getDynamicsInstanceApiUrl(args.options.environmentName, args.options.asAdmin);
36
- const shouldIncludeMicrosoftPublishers = args.options.withMicrosoftPublishers || args.options.includeMicrosoftPublishers;
37
33
  const requestOptions = {
38
- url: `${dynamicsApiUrl}/api/data/v9.0/publishers?$select=publisherid,uniquename,friendlyname,versionnumber,isreadonly,description,customizationprefix,customizationoptionvalueprefix${!shouldIncludeMicrosoftPublishers ? `&$filter=publisherid ne 'd21aab70-79e7-11dd-8874-00188b01e34f'` : ''}&api-version=9.1`,
34
+ url: `${dynamicsApiUrl}/api/data/v9.0/publishers?$select=publisherid,uniquename,friendlyname,versionnumber,isreadonly,description,customizationprefix,customizationoptionvalueprefix${!args.options.withMicrosoftPublishers ? `&$filter=publisherid ne 'd21aab70-79e7-11dd-8874-00188b01e34f'` : ''}&api-version=9.1`,
39
35
  headers: {
40
36
  accept: 'application/json;odata.metadata=none'
41
37
  },
@@ -52,7 +48,6 @@ class PpSolutionPublisherListCommand extends PowerPlatformCommand {
52
48
  _PpSolutionPublisherListCommand_instances = new WeakSet(), _PpSolutionPublisherListCommand_initTelemetry = function _PpSolutionPublisherListCommand_initTelemetry() {
53
49
  this.telemetry.push((args) => {
54
50
  Object.assign(this.telemetryProperties, {
55
- includeMicrosoftPublishers: typeof args.options.includeMicrosoftPublishers !== 'undefined',
56
51
  withMicrosoftPublishers: typeof args.options.withMicrosoftPublishers !== 'undefined',
57
52
  asAdmin: !!args.options.asAdmin
58
53
  });
@@ -60,8 +55,6 @@ _PpSolutionPublisherListCommand_instances = new WeakSet(), _PpSolutionPublisherL
60
55
  }, _PpSolutionPublisherListCommand_initOptions = function _PpSolutionPublisherListCommand_initOptions() {
61
56
  this.options.unshift({
62
57
  option: '-e, --environmentName <environmentName>'
63
- }, {
64
- option: '--includeMicrosoftPublishers'
65
58
  }, {
66
59
  option: '--withMicrosoftPublishers'
67
60
  }, {
@@ -24,15 +24,11 @@ class PurviewThreatAssessmentGetCommand extends GraphCommand {
24
24
  }
25
25
  async commandAction(logger, args) {
26
26
  try {
27
- if (args.options.includeResults) {
28
- await this.warn(logger, `Parameter 'includeResults' is deprecated. Please use 'withResults' instead`);
29
- }
30
27
  if (this.verbose) {
31
28
  await logger.logToStderr(`Retrieving threat assessment with id ${args.options.id}`);
32
29
  }
33
- const shouldIncludeResults = args.options.includeResults || args.options.withResults;
34
30
  const requestOptions = {
35
- url: `${this.resource}/v1.0/informationProtection/threatAssessmentRequests/${args.options.id}${shouldIncludeResults ? '?$expand=results' : ''}`,
31
+ url: `${this.resource}/v1.0/informationProtection/threatAssessmentRequests/${args.options.id}${args.options.withResults ? '?$expand=results' : ''}`,
36
32
  headers: {
37
33
  accept: 'application/json;odata.metadata=none'
38
34
  },
@@ -56,8 +52,6 @@ _PurviewThreatAssessmentGetCommand_instances = new WeakSet(), _PurviewThreatAsse
56
52
  }, _PurviewThreatAssessmentGetCommand_initOptions = function _PurviewThreatAssessmentGetCommand_initOptions() {
57
53
  this.options.unshift({
58
54
  option: '-i, --id <id>'
59
- }, {
60
- option: '--includeResults'
61
55
  }, {
62
56
  option: '--withResults'
63
57
  });
@@ -4,7 +4,6 @@ import { zod } from '../../../../utils/zod.js';
4
4
  import commands from '../../commands.js';
5
5
  import { validation } from '../../../../utils/validation.js';
6
6
  import { spe } from '../../../../utils/spe.js';
7
- import { spo } from '../../../../utils/spo.js';
8
7
  import GraphCommand from '../../../base/GraphCommand.js';
9
8
  import request from '../../../../request.js';
10
9
  const options = globalOptionsZod
@@ -77,8 +76,7 @@ class SpeContainerAddCommand extends GraphCommand {
77
76
  if (this.verbose) {
78
77
  await logger.logToStderr(`Getting container type with name '${options.containerTypeName}'...`);
79
78
  }
80
- const adminUrl = await spo.getSpoAdminUrl(logger, this.verbose);
81
- return spe.getContainerTypeIdByName(adminUrl, options.containerTypeName);
79
+ return spe.getContainerTypeIdByName(options.containerTypeName);
82
80
  }
83
81
  }
84
82
  export default new SpeContainerAddCommand();
@@ -10,7 +10,6 @@ import { validation } from '../../../../utils/validation.js';
10
10
  import GraphCommand from '../../../base/GraphCommand.js';
11
11
  import commands from '../../commands.js';
12
12
  import { spe } from '../../../../utils/spe.js';
13
- import { spo } from '../../../../utils/spo.js';
14
13
  class SpeContainerListCommand extends GraphCommand {
15
14
  get name() {
16
15
  return commands.CONTAINER_LIST;
@@ -47,8 +46,7 @@ class SpeContainerListCommand extends GraphCommand {
47
46
  if (options.containerTypeId) {
48
47
  return options.containerTypeId;
49
48
  }
50
- const spoAdminUrl = await spo.getSpoAdminUrl(logger, this.debug);
51
- return spe.getContainerTypeIdByName(spoAdminUrl, options.containerTypeName);
49
+ return spe.getContainerTypeIdByName(options.containerTypeName);
52
50
  }
53
51
  }
54
52
  _SpeContainerListCommand_instances = new WeakSet(), _SpeContainerListCommand_initTelemetry = function _SpeContainerListCommand_initTelemetry() {
@@ -2,7 +2,6 @@ import { globalOptionsZod } from '../../../../Command.js';
2
2
  import { z } from 'zod';
3
3
  import commands from '../../commands.js';
4
4
  import { validation } from '../../../../utils/validation.js';
5
- import { spo } from '../../../../utils/spo.js';
6
5
  import GraphCommand from '../../../base/GraphCommand.js';
7
6
  import { spe } from '../../../../utils/spe.js';
8
7
  import { odata } from '../../../../utils/odata.js';
@@ -54,8 +53,7 @@ class SpeContainerRecycleBinItemListCommand extends GraphCommand {
54
53
  if (this.verbose) {
55
54
  await logger.logToStderr(`Retrieving container type id for container type '${options.containerTypeName}'...`);
56
55
  }
57
- const adminUrl = await spo.getSpoAdminUrl(logger, this.verbose);
58
- return spe.getContainerTypeIdByName(adminUrl, options.containerTypeName);
56
+ return spe.getContainerTypeIdByName(options.containerTypeName);
59
57
  }
60
58
  }
61
59
  export default new SpeContainerRecycleBinItemListCommand();
@@ -2,7 +2,6 @@ import { globalOptionsZod } from '../../../../Command.js';
2
2
  import { z } from 'zod';
3
3
  import commands from '../../commands.js';
4
4
  import { validation } from '../../../../utils/validation.js';
5
- import { spo } from '../../../../utils/spo.js';
6
5
  import GraphCommand from '../../../base/GraphCommand.js';
7
6
  import { spe } from '../../../../utils/spe.js';
8
7
  import { odata } from '../../../../utils/odata.js';
@@ -88,8 +87,7 @@ class SpeContainerRecycleBinItemRestoreCommand extends GraphCommand {
88
87
  if (this.verbose) {
89
88
  await logger.logToStderr(`Getting container type with name '${options.containerTypeName}'...`);
90
89
  }
91
- const adminUrl = await spo.getSpoAdminUrl(logger, this.verbose);
92
- return spe.getContainerTypeIdByName(adminUrl, options.containerTypeName);
90
+ return spe.getContainerTypeIdByName(options.containerTypeName);
93
91
  }
94
92
  }
95
93
  export default new SpeContainerRecycleBinItemRestoreCommand();
@@ -4,7 +4,6 @@ import { zod } from '../../../../utils/zod.js';
4
4
  import commands from '../../commands.js';
5
5
  import { validation } from '../../../../utils/validation.js';
6
6
  import { spe } from '../../../../utils/spe.js';
7
- import { spo } from '../../../../utils/spo.js';
8
7
  import GraphCommand from '../../../base/GraphCommand.js';
9
8
  import request from '../../../../request.js';
10
9
  import { cli } from '../../../../cli/cli.js';
@@ -91,8 +90,7 @@ class SpeContainerRemoveCommand extends GraphCommand {
91
90
  if (this.verbose) {
92
91
  await logger.logToStderr(`Getting container type with name '${options.containerTypeName}'...`);
93
92
  }
94
- const adminUrl = await spo.getSpoAdminUrl(logger, this.verbose);
95
- return spe.getContainerTypeIdByName(adminUrl, options.containerTypeName);
93
+ return spe.getContainerTypeIdByName(options.containerTypeName);
96
94
  }
97
95
  }
98
96
  export default new SpeContainerRemoveCommand();
@@ -1,115 +1,92 @@
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 _SpeContainerTypeAddCommand_instances, _SpeContainerTypeAddCommand_initTelemetry, _SpeContainerTypeAddCommand_initOptions, _SpeContainerTypeAddCommand_initValidators;
7
- import config from '../../../../config.js';
1
+ import { globalOptionsZod } from '../../../../Command.js';
2
+ import { z } from 'zod';
3
+ import { zod } from '../../../../utils/zod.js';
8
4
  import request from '../../../../request.js';
9
- import { spo } from '../../../../utils/spo.js';
10
5
  import { validation } from '../../../../utils/validation.js';
11
- import SpoCommand from '../../../base/SpoCommand.js';
6
+ import GraphDelegatedCommand from '../../../base/GraphDelegatedCommand.js';
12
7
  import commands from '../../commands.js';
13
- class SpeContainerTypeAddCommand extends SpoCommand {
8
+ import Auth from '../../../../Auth.js';
9
+ const consumingTenantOverridablesOptions = ['urlTemplate', 'isDiscoverabilityEnabled', 'isSearchEnabled', 'isItemVersioningEnabled', 'itemMajorVersionLimit', 'maxStoragePerContainerInBytes'];
10
+ const options = globalOptionsZod
11
+ .extend({
12
+ name: zod.alias('n', z.string()),
13
+ appId: z.string()
14
+ .refine(id => validation.isValidGuid(id), id => ({
15
+ message: `'${id}' is not a valid GUID.`
16
+ })).optional(),
17
+ billingType: z.enum(['standard', 'trial', 'directToCustomer']).default('standard'),
18
+ consumingTenantOverridables: z.string()
19
+ .refine(values => values.split(',').every(v => consumingTenantOverridablesOptions.includes(v.trim())), values => ({
20
+ message: `'${values}' is not a valid value. Valid options are: ${consumingTenantOverridablesOptions.join(', ')}.`
21
+ })).optional(),
22
+ isDiscoverabilityEnabled: z.boolean().optional(),
23
+ isItemVersioningEnabled: z.boolean().optional(),
24
+ isSearchEnabled: z.boolean().optional(),
25
+ isSharingRestricted: z.boolean().optional(),
26
+ itemMajorVersionLimit: z.number()
27
+ .refine(n => validation.isValidPositiveInteger(n), n => ({
28
+ message: `'${n}' is not a valid positive integer.`
29
+ })).optional(),
30
+ maxStoragePerContainerInBytes: z.number()
31
+ .refine(n => validation.isValidPositiveInteger(n), n => ({
32
+ message: `'${n}' is not a valid positive integer.`
33
+ })).optional(),
34
+ sharingCapability: z.enum(['disabled', 'externalUserSharingOnly', 'externalUserAndGuestSharing', 'existingExternalUserSharingOnly']).optional(),
35
+ urlTemplate: z.string().optional()
36
+ })
37
+ .strict();
38
+ class SpeContainerTypeAddCommand extends GraphDelegatedCommand {
14
39
  get name() {
15
40
  return commands.CONTAINERTYPE_ADD;
16
41
  }
17
42
  get description() {
18
- return 'Creates a new Container Type for your app';
43
+ return 'Creates a new container type';
19
44
  }
20
- constructor() {
21
- super();
22
- _SpeContainerTypeAddCommand_instances.add(this);
23
- __classPrivateFieldGet(this, _SpeContainerTypeAddCommand_instances, "m", _SpeContainerTypeAddCommand_initTelemetry).call(this);
24
- __classPrivateFieldGet(this, _SpeContainerTypeAddCommand_instances, "m", _SpeContainerTypeAddCommand_initOptions).call(this);
25
- __classPrivateFieldGet(this, _SpeContainerTypeAddCommand_instances, "m", _SpeContainerTypeAddCommand_initValidators).call(this);
45
+ get schema() {
46
+ return options;
47
+ }
48
+ getRefinedSchema(schema) {
49
+ return schema
50
+ .refine(options => !options.itemMajorVersionLimit || options.isItemVersioningEnabled !== false, {
51
+ message: `Cannot set itemMajorVersionLimit when isItemVersioningEnabled is false.`
52
+ });
26
53
  }
27
54
  async commandAction(logger, args) {
28
55
  try {
29
56
  if (this.verbose) {
30
- await logger.logToStderr(`Creating a new Container Type for your app with name ${args.options.name}`);
57
+ await logger.logToStderr(`Creating a new Container Type for your app with name '${args.options.name}'.`);
31
58
  }
32
- const adminUrl = await spo.getSpoAdminUrl(logger, this.debug);
33
- const requestBody = this.getRequestBody(args.options);
34
- const formDigestInfo = await spo.ensureFormDigest(adminUrl, logger, undefined, this.debug);
59
+ const appId = args.options.appId ?? Auth.connection.appId;
35
60
  const requestOptions = {
36
- url: `${adminUrl}/_vti_bin/client.svc/ProcessQuery`,
61
+ url: `${this.resource}/beta/storage/fileStorage/containerTypes`,
37
62
  headers: {
38
- 'X-RequestDigest': formDigestInfo.FormDigestValue
63
+ accept: 'application/json;odata.metadata=none'
39
64
  },
40
- data: requestBody
65
+ responseType: 'json',
66
+ data: {
67
+ name: args.options.name,
68
+ owningAppId: appId,
69
+ billingClassification: args.options.billingType,
70
+ settings: {
71
+ consumingTenantOverridables: args.options.consumingTenantOverridables?.split(',').map(s => s.trim()).join(','),
72
+ isDiscoverabilityEnabled: args.options.isDiscoverabilityEnabled,
73
+ isItemVersioningEnabled: args.options.isItemVersioningEnabled,
74
+ isSearchEnabled: args.options.isSearchEnabled,
75
+ isSharingRestricted: args.options.isSharingRestricted,
76
+ itemMajorVersionLimit: args.options.itemMajorVersionLimit,
77
+ maxStoragePerContainerInBytes: args.options.maxStoragePerContainerInBytes,
78
+ sharingCapability: args.options.sharingCapability,
79
+ urlTemplate: args.options.urlTemplate
80
+ }
81
+ }
41
82
  };
42
- const res = await request.post(requestOptions);
43
- const json = JSON.parse(res);
44
- const response = json[0];
45
- if (response.ErrorInfo) {
46
- throw response.ErrorInfo.ErrorMessage;
47
- }
48
- const result = json.pop();
49
- delete result._ObjectType_;
50
- result.SPContainerTypeBillingClassification = args.options.trial ? 'Trial' : 'Standard';
51
- result.AzureSubscriptionId = this.replaceString(result.AzureSubscriptionId);
52
- result.OwningAppId = this.replaceString(result.OwningAppId);
53
- result.OwningTenantId = this.replaceString(result.OwningTenantId);
54
- result.ContainerTypeId = this.replaceString(result.ContainerTypeId);
55
- await logger.log(result);
83
+ const response = await request.post(requestOptions);
84
+ await logger.log(response);
56
85
  }
57
86
  catch (err) {
58
87
  this.handleRejectedODataJsonPromise(err);
59
88
  }
60
89
  }
61
- replaceString(s) {
62
- return s.replace('/Guid(', '').replace(')/', '');
63
- }
64
- getRequestBody(options) {
65
- if (options.trial) {
66
- return `<Request AddExpandoFieldTypeSuffix="true" SchemaVersion="15.0.0.0" LibraryVersion="16.0.0.0" ApplicationName="${config.applicationName}" xmlns="http://schemas.microsoft.com/sharepoint/clientquery/2009"><Actions><ObjectPath Id="4" ObjectPathId="3" /><Method Name="NewSPOContainerType" Id="5" ObjectPathId="3"><Parameters><Parameter TypeId="{5466648e-c306-441b-9df4-c09deef25cb1}"><Property Name="AzureSubscriptionId" Type="Guid">{00000000-0000-0000-0000-000000000000}</Property><Property Name="ContainerTypeId" Type="Guid">{00000000-0000-0000-0000-000000000000}</Property><Property Name="CreationDate" Type="Null" /><Property Name="DisplayName" Type="String">${options.name}</Property><Property Name="ExpiryDate" Type="Null" /><Property Name="IsBillingProfileRequired" Type="Boolean">false</Property><Property Name="OwningAppId" Type="Guid">{${options.applicationId}}</Property><Property Name="OwningTenantId" Type="Guid">{00000000-0000-0000-0000-000000000000}</Property><Property Name="Region" Type="Null" /><Property Name="ResourceGroup" Type="Null" /><Property Name="SPContainerTypeBillingClassification" Type="Enum">1</Property></Parameter></Parameters></Method></Actions><ObjectPaths><Constructor Id="3" TypeId="{268004ae-ef6b-4e9b-8425-127220d84719}" /></ObjectPaths></Request>`;
67
- }
68
- return `<Request AddExpandoFieldTypeSuffix="true" SchemaVersion="15.0.0.0" LibraryVersion="16.0.0.0" ApplicationName="${config.applicationName}" xmlns="http://schemas.microsoft.com/sharepoint/clientquery/2009"><Actions><Method Name="NewSPOContainerType" Id="4" ObjectPathId="1"><Parameters><Parameter TypeId="{5466648e-c306-441b-9df4-c09deef25cb1}"><Property Name="AzureSubscriptionId" Type="Guid">{${options.azureSubscriptionId}}</Property><Property Name="ContainerTypeId" Type="Guid">{00000000-0000-0000-0000-000000000000}</Property><Property Name="CreationDate" Type="Null" /><Property Name="DisplayName" Type="String">${options.name}</Property><Property Name="ExpiryDate" Type="Null" /><Property Name="IsBillingProfileRequired" Type="Boolean">false</Property><Property Name="OwningAppId" Type="Guid">{${options.applicationId}}</Property><Property Name="OwningTenantId" Type="Guid">{00000000-0000-0000-0000-000000000000}</Property><Property Name="Region" Type="String">${options.region}</Property><Property Name="ResourceGroup" Type="String">${options.resourceGroup}</Property><Property Name="SPContainerTypeBillingClassification" Type="Enum">0</Property></Parameter></Parameters></Method></Actions><ObjectPaths><Constructor Id="1" TypeId="{268004ae-ef6b-4e9b-8425-127220d84719}" /></ObjectPaths></Request>`;
69
- }
70
90
  }
71
- _SpeContainerTypeAddCommand_instances = new WeakSet(), _SpeContainerTypeAddCommand_initTelemetry = function _SpeContainerTypeAddCommand_initTelemetry() {
72
- this.telemetry.push((args) => {
73
- Object.assign(this.telemetryProperties, {
74
- trial: !!args.options.trial,
75
- azureSubscriptionId: typeof args.options.azureSubscriptionId !== 'undefined',
76
- resourceGroup: typeof args.options.resourceGroup !== 'undefined',
77
- region: typeof args.options.region !== 'undefined'
78
- });
79
- });
80
- }, _SpeContainerTypeAddCommand_initOptions = function _SpeContainerTypeAddCommand_initOptions() {
81
- this.options.unshift({
82
- option: '-n, --name <name>'
83
- }, {
84
- option: '--applicationId <applicationId>'
85
- }, {
86
- option: '--trial'
87
- }, {
88
- option: '--azureSubscriptionId [azureSubscriptionId]'
89
- }, {
90
- option: '--resourceGroup [resourceGroup]'
91
- }, {
92
- option: '--region [region]'
93
- });
94
- }, _SpeContainerTypeAddCommand_initValidators = function _SpeContainerTypeAddCommand_initValidators() {
95
- this.validators.push(async (args) => {
96
- if (!validation.isValidGuid(args.options.applicationId)) {
97
- return `${args.options.applicationId} is not a valid GUID for option applicationId.`;
98
- }
99
- if (args.options.trial === undefined && !args.options.azureSubscriptionId) {
100
- return 'You must specify the azureSubscriptionId when creating a non-trial environment.';
101
- }
102
- if (args.options.trial === undefined && !args.options.resourceGroup) {
103
- return 'You must specify the resourceGroup when creating a non-trial environment.';
104
- }
105
- if (args.options.trial === undefined && !args.options.region) {
106
- return 'You must specify the region when creating a non-trial environment.';
107
- }
108
- if (args.options.azureSubscriptionId && !validation.isValidGuid(args.options.azureSubscriptionId)) {
109
- return `${args.options.azureSubscriptionId} is not a valid GUID for option azureSubscriptionId.`;
110
- }
111
- return true;
112
- });
113
- };
114
91
  export default new SpeContainerTypeAddCommand();
115
92
  //# sourceMappingURL=containertype-add.js.map