@pnp/cli-microsoft365 10.0.0-beta.0b765ef → 10.0.0-beta.303b62c

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 (214) hide show
  1. package/.eslintrc.cjs +1 -0
  2. package/allCommands.json +1 -1
  3. package/allCommandsFull.json +1 -1
  4. package/dist/appInsights.js +6 -4
  5. package/dist/m365/commands/login.js +122 -69
  6. package/dist/m365/commands/setup.js +1 -1
  7. package/dist/m365/entra/commands/administrativeunit/administrativeunit-add.js +0 -5
  8. package/dist/m365/entra/commands/administrativeunit/administrativeunit-get.js +0 -5
  9. package/dist/m365/entra/commands/administrativeunit/administrativeunit-list.js +0 -5
  10. package/dist/m365/entra/commands/administrativeunit/administrativeunit-member-add.js +0 -5
  11. package/dist/m365/entra/commands/administrativeunit/administrativeunit-member-get.js +0 -5
  12. package/dist/m365/entra/commands/administrativeunit/administrativeunit-member-list.js +0 -5
  13. package/dist/m365/entra/commands/administrativeunit/administrativeunit-remove.js +0 -5
  14. package/dist/m365/entra/commands/app/app-add.js +0 -5
  15. package/dist/m365/entra/commands/app/app-get.js +0 -5
  16. package/dist/m365/entra/commands/app/app-list.js +0 -5
  17. package/dist/m365/entra/commands/app/app-permission-add.js +0 -5
  18. package/dist/m365/entra/commands/app/app-remove.js +0 -5
  19. package/dist/m365/entra/commands/app/app-role-add.js +0 -5
  20. package/dist/m365/entra/commands/app/app-role-list.js +0 -5
  21. package/dist/m365/entra/commands/app/app-role-remove.js +0 -5
  22. package/dist/m365/entra/commands/app/app-set.js +0 -5
  23. package/dist/m365/entra/commands/approleassignment/approleassignment-add.js +0 -5
  24. package/dist/m365/entra/commands/approleassignment/approleassignment-list.js +0 -5
  25. package/dist/m365/entra/commands/approleassignment/approleassignment-remove.js +0 -5
  26. package/dist/m365/entra/commands/enterpriseapp/enterpriseapp-add.js +0 -5
  27. package/dist/m365/entra/commands/enterpriseapp/enterpriseapp-get.js +0 -5
  28. package/dist/m365/entra/commands/enterpriseapp/enterpriseapp-list.js +0 -5
  29. package/dist/m365/entra/commands/group/group-add.js +0 -4
  30. package/dist/m365/entra/commands/group/group-get.js +0 -5
  31. package/dist/m365/entra/commands/group/group-list.js +0 -5
  32. package/dist/m365/entra/commands/group/group-member-list.js +0 -5
  33. package/dist/m365/entra/commands/group/group-remove.js +0 -5
  34. package/dist/m365/entra/commands/groupsetting/groupsetting-add.js +0 -5
  35. package/dist/m365/entra/commands/groupsetting/groupsetting-get.js +0 -5
  36. package/dist/m365/entra/commands/groupsetting/groupsetting-list.js +0 -5
  37. package/dist/m365/entra/commands/groupsetting/groupsetting-remove.js +0 -5
  38. package/dist/m365/entra/commands/groupsetting/groupsetting-set.js +0 -5
  39. package/dist/m365/entra/commands/groupsettingtemplate/groupsettingtemplate-get.js +0 -5
  40. package/dist/m365/entra/commands/groupsettingtemplate/groupsettingtemplate-list.js +0 -5
  41. package/dist/m365/entra/commands/license/license-list.js +0 -5
  42. package/dist/m365/entra/commands/m365group/m365group-add.js +0 -5
  43. package/dist/m365/entra/commands/m365group/m365group-conversation-list.js +0 -5
  44. package/dist/m365/entra/commands/m365group/m365group-conversation-post-list.js +0 -5
  45. package/dist/m365/entra/commands/m365group/m365group-get.js +0 -5
  46. package/dist/m365/entra/commands/m365group/m365group-list.js +0 -5
  47. package/dist/m365/entra/commands/m365group/m365group-recyclebinitem-clear.js +0 -5
  48. package/dist/m365/entra/commands/m365group/m365group-recyclebinitem-list.js +0 -5
  49. package/dist/m365/entra/commands/m365group/m365group-recyclebinitem-remove.js +0 -5
  50. package/dist/m365/entra/commands/m365group/m365group-recyclebinitem-restore.js +0 -5
  51. package/dist/m365/entra/commands/m365group/m365group-remove.js +0 -5
  52. package/dist/m365/entra/commands/m365group/m365group-renew.js +0 -5
  53. package/dist/m365/entra/commands/m365group/m365group-report-activitycounts.js +0 -4
  54. package/dist/m365/entra/commands/m365group/m365group-report-activitydetail.js +0 -4
  55. package/dist/m365/entra/commands/m365group/m365group-report-activityfilecounts.js +0 -4
  56. package/dist/m365/entra/commands/m365group/m365group-report-activitygroupcounts.js +0 -4
  57. package/dist/m365/entra/commands/m365group/m365group-report-activitystorage.js +0 -4
  58. package/dist/m365/entra/commands/m365group/m365group-set.js +138 -73
  59. package/dist/m365/entra/commands/m365group/m365group-teamify.js +0 -5
  60. package/dist/m365/entra/commands/m365group/m365group-user-add.js +0 -6
  61. package/dist/m365/entra/commands/m365group/m365group-user-list.js +0 -5
  62. package/dist/m365/entra/commands/m365group/m365group-user-remove.js +84 -62
  63. package/dist/m365/entra/commands/m365group/m365group-user-set.js +3 -15
  64. package/dist/m365/entra/commands/oauth2grant/oauth2grant-add.js +0 -5
  65. package/dist/m365/entra/commands/oauth2grant/oauth2grant-list.js +0 -5
  66. package/dist/m365/entra/commands/oauth2grant/oauth2grant-remove.js +0 -5
  67. package/dist/m365/entra/commands/oauth2grant/oauth2grant-set.js +0 -5
  68. package/dist/m365/entra/commands/policy/policy-list.js +0 -5
  69. package/dist/m365/entra/commands/siteclassification/siteclassification-disable.js +0 -5
  70. package/dist/m365/entra/commands/siteclassification/siteclassification-enable.js +0 -5
  71. package/dist/m365/entra/commands/siteclassification/siteclassification-get.js +0 -5
  72. package/dist/m365/entra/commands/siteclassification/siteclassification-set.js +0 -5
  73. package/dist/m365/entra/commands/user/user-add.js +0 -5
  74. package/dist/m365/entra/commands/user/user-get.js +0 -5
  75. package/dist/m365/entra/commands/user/user-guest-add.js +0 -5
  76. package/dist/m365/entra/commands/user/user-hibp.js +0 -5
  77. package/dist/m365/entra/commands/user/user-license-add.js +0 -5
  78. package/dist/m365/entra/commands/user/user-license-list.js +0 -5
  79. package/dist/m365/entra/commands/user/user-license-remove.js +0 -5
  80. package/dist/m365/entra/commands/user/user-list.js +0 -5
  81. package/dist/m365/entra/commands/user/user-password-validate.js +0 -5
  82. package/dist/m365/entra/commands/user/user-recyclebinitem-clear.js +0 -5
  83. package/dist/m365/entra/commands/user/user-recyclebinitem-list.js +0 -5
  84. package/dist/m365/entra/commands/user/user-recyclebinitem-remove.js +0 -5
  85. package/dist/m365/entra/commands/user/user-recyclebinitem-restore.js +0 -5
  86. package/dist/m365/entra/commands/user/user-registrationdetails-list.js +0 -4
  87. package/dist/m365/entra/commands/user/user-remove.js +0 -5
  88. package/dist/m365/entra/commands/user/user-set.js +0 -5
  89. package/dist/m365/entra/commands/user/user-signin-list.js +0 -5
  90. package/dist/m365/file/commands/file-move.js +4 -4
  91. package/dist/m365/spo/commands/file/file-copy.js +6 -6
  92. package/dist/m365/spo/commands/file/file-move.js +6 -6
  93. package/dist/m365/spo/commands/file/file-remove.js +7 -1
  94. package/dist/m365/spo/commands/folder/folder-copy.js +43 -35
  95. package/dist/m365/spo/commands/folder/folder-move.js +43 -35
  96. package/dist/m365/spo/commands/group/group-member-add.js +3 -23
  97. package/dist/m365/spo/commands/group/group-member-remove.js +1 -18
  98. package/dist/m365/spo/commands/list/list-remove.js +14 -4
  99. package/dist/m365/spo/commands/page/page-publish.js +54 -0
  100. package/dist/m365/spo/commands/tenant/tenant-site-membership-list.js +118 -0
  101. package/dist/m365/spo/commands/user/user-ensure.js +1 -11
  102. package/dist/m365/spo/commands/userprofile/userprofile-get.js +1 -1
  103. package/dist/m365/spo/commands.js +2 -0
  104. package/dist/m365/spp/commands/model/model-list.js +57 -0
  105. package/dist/m365/spp/commands.js +2 -1
  106. package/dist/m365/teams/commands/channel/channel-get.js +15 -50
  107. package/dist/m365/teams/commands/team/team-get.js +16 -21
  108. package/dist/telemetryRunner.js +2 -2
  109. package/dist/utils/spo.js +90 -21
  110. package/dist/utils/spp.js +22 -0
  111. package/dist/utils/teams.js +47 -5
  112. package/dist/utils/timersUtil.js +2 -1
  113. package/dist/utils/zod.js +11 -2
  114. package/docs/docs/cmd/entra/administrativeunit/administrativeunit-add.mdx +0 -6
  115. package/docs/docs/cmd/entra/administrativeunit/administrativeunit-get.mdx +0 -6
  116. package/docs/docs/cmd/entra/administrativeunit/administrativeunit-list.mdx +0 -6
  117. package/docs/docs/cmd/entra/administrativeunit/administrativeunit-member-add.mdx +0 -6
  118. package/docs/docs/cmd/entra/administrativeunit/administrativeunit-member-get.mdx +0 -6
  119. package/docs/docs/cmd/entra/administrativeunit/administrativeunit-member-list.mdx +0 -6
  120. package/docs/docs/cmd/entra/administrativeunit/administrativeunit-remove.mdx +0 -6
  121. package/docs/docs/cmd/entra/app/app-add.mdx +0 -1
  122. package/docs/docs/cmd/entra/app/app-get.mdx +0 -1
  123. package/docs/docs/cmd/entra/app/app-list.mdx +0 -1
  124. package/docs/docs/cmd/entra/app/app-permission-add.mdx +0 -1
  125. package/docs/docs/cmd/entra/app/app-permission-list.mdx +0 -6
  126. package/docs/docs/cmd/entra/app/app-remove.mdx +0 -1
  127. package/docs/docs/cmd/entra/app/app-role-add.mdx +0 -1
  128. package/docs/docs/cmd/entra/app/app-role-list.mdx +0 -1
  129. package/docs/docs/cmd/entra/app/app-role-remove.mdx +0 -1
  130. package/docs/docs/cmd/entra/app/app-set.mdx +0 -1
  131. package/docs/docs/cmd/entra/approleassignment/approleassignment-add.mdx +0 -6
  132. package/docs/docs/cmd/entra/approleassignment/approleassignment-list.mdx +0 -6
  133. package/docs/docs/cmd/entra/approleassignment/approleassignment-remove.mdx +0 -6
  134. package/docs/docs/cmd/entra/enterpriseapp/enterpriseapp-add.mdx +0 -1
  135. package/docs/docs/cmd/entra/enterpriseapp/enterpriseapp-get.mdx +0 -1
  136. package/docs/docs/cmd/entra/enterpriseapp/enterpriseapp-list.mdx +0 -1
  137. package/docs/docs/cmd/entra/group/group-add.mdx +0 -6
  138. package/docs/docs/cmd/entra/group/group-get.mdx +0 -6
  139. package/docs/docs/cmd/entra/group/group-list.mdx +0 -6
  140. package/docs/docs/cmd/entra/group/group-member-list.mdx +0 -6
  141. package/docs/docs/cmd/entra/group/group-remove.mdx +0 -6
  142. package/docs/docs/cmd/entra/groupsetting/groupsetting-add.mdx +0 -6
  143. package/docs/docs/cmd/entra/groupsetting/groupsetting-get.mdx +0 -6
  144. package/docs/docs/cmd/entra/groupsetting/groupsetting-list.mdx +0 -6
  145. package/docs/docs/cmd/entra/groupsetting/groupsetting-remove.mdx +0 -6
  146. package/docs/docs/cmd/entra/groupsetting/groupsetting-set.mdx +0 -6
  147. package/docs/docs/cmd/entra/groupsettingtemplate/groupsettingtemplate-get.mdx +0 -6
  148. package/docs/docs/cmd/entra/groupsettingtemplate/groupsettingtemplate-list.mdx +0 -6
  149. package/docs/docs/cmd/entra/license/license-list.mdx +0 -6
  150. package/docs/docs/cmd/entra/m365group/m365group-add.mdx +0 -6
  151. package/docs/docs/cmd/entra/m365group/m365group-conversation-list.mdx +0 -6
  152. package/docs/docs/cmd/entra/m365group/m365group-conversation-post-list.mdx +0 -6
  153. package/docs/docs/cmd/entra/m365group/m365group-get.mdx +0 -6
  154. package/docs/docs/cmd/entra/m365group/m365group-list.mdx +0 -6
  155. package/docs/docs/cmd/entra/m365group/m365group-recyclebinitem-clear.mdx +0 -6
  156. package/docs/docs/cmd/entra/m365group/m365group-recyclebinitem-list.mdx +0 -6
  157. package/docs/docs/cmd/entra/m365group/m365group-recyclebinitem-remove.mdx +0 -6
  158. package/docs/docs/cmd/entra/m365group/m365group-recyclebinitem-restore.mdx +0 -6
  159. package/docs/docs/cmd/entra/m365group/m365group-remove.mdx +0 -6
  160. package/docs/docs/cmd/entra/m365group/m365group-renew.mdx +0 -6
  161. package/docs/docs/cmd/entra/m365group/m365group-report-activitycounts.mdx +0 -6
  162. package/docs/docs/cmd/entra/m365group/m365group-report-activitydetail.mdx +0 -6
  163. package/docs/docs/cmd/entra/m365group/m365group-report-activityfilecounts.mdx +0 -6
  164. package/docs/docs/cmd/entra/m365group/m365group-report-activitygroupcounts.mdx +2 -8
  165. package/docs/docs/cmd/entra/m365group/m365group-report-activitystorage.mdx +2 -8
  166. package/docs/docs/cmd/entra/m365group/m365group-set.mdx +34 -22
  167. package/docs/docs/cmd/entra/m365group/m365group-teamify.mdx +5 -11
  168. package/docs/docs/cmd/entra/m365group/m365group-user-add.mdx +5 -11
  169. package/docs/docs/cmd/entra/m365group/m365group-user-list.mdx +0 -12
  170. package/docs/docs/cmd/entra/m365group/m365group-user-remove.mdx +26 -21
  171. package/docs/docs/cmd/entra/m365group/m365group-user-set.mdx +4 -17
  172. package/docs/docs/cmd/entra/oauth2grant/oauth2grant-add.mdx +3 -9
  173. package/docs/docs/cmd/entra/oauth2grant/oauth2grant-list.mdx +1 -7
  174. package/docs/docs/cmd/entra/oauth2grant/oauth2grant-remove.mdx +4 -10
  175. package/docs/docs/cmd/entra/oauth2grant/oauth2grant-set.mdx +3 -9
  176. package/docs/docs/cmd/entra/policy/policy-list.mdx +3 -9
  177. package/docs/docs/cmd/entra/siteclassification/siteclassification-disable.mdx +3 -9
  178. package/docs/docs/cmd/entra/siteclassification/siteclassification-enable.mdx +7 -13
  179. package/docs/docs/cmd/entra/siteclassification/siteclassification-get.mdx +1 -7
  180. package/docs/docs/cmd/entra/siteclassification/siteclassification-set.mdx +8 -14
  181. package/docs/docs/cmd/entra/user/user-add.mdx +4 -10
  182. package/docs/docs/cmd/entra/user/user-get.mdx +7 -13
  183. package/docs/docs/cmd/entra/user/user-guest-add.mdx +3 -9
  184. package/docs/docs/cmd/entra/user/user-hibp.mdx +2 -8
  185. package/docs/docs/cmd/entra/user/user-license-add.mdx +0 -6
  186. package/docs/docs/cmd/entra/user/user-license-list.mdx +0 -6
  187. package/docs/docs/cmd/entra/user/user-license-remove.mdx +2 -8
  188. package/docs/docs/cmd/entra/user/user-list.mdx +1 -7
  189. package/docs/docs/cmd/entra/user/user-password-validate.mdx +1 -7
  190. package/docs/docs/cmd/entra/user/user-recyclebinitem-clear.mdx +2 -8
  191. package/docs/docs/cmd/entra/user/user-recyclebinitem-list.mdx +0 -6
  192. package/docs/docs/cmd/entra/user/user-recyclebinitem-remove.mdx +2 -8
  193. package/docs/docs/cmd/entra/user/user-recyclebinitem-restore.mdx +0 -6
  194. package/docs/docs/cmd/entra/user/user-registrationdetails-list.mdx +7 -13
  195. package/docs/docs/cmd/entra/user/user-remove.mdx +2 -8
  196. package/docs/docs/cmd/entra/user/user-set.mdx +0 -6
  197. package/docs/docs/cmd/entra/user/user-signin-list.mdx +9 -15
  198. package/docs/docs/cmd/login.mdx +9 -0
  199. package/docs/docs/cmd/spo/file/file-move.mdx +1 -3
  200. package/docs/docs/cmd/spo/file/file-remove.mdx +13 -4
  201. package/docs/docs/cmd/spo/folder/folder-copy.mdx +84 -13
  202. package/docs/docs/cmd/spo/folder/folder-move.mdx +84 -13
  203. package/docs/docs/cmd/spo/group/group-member-add.mdx +8 -14
  204. package/docs/docs/cmd/spo/group/group-member-remove.mdx +5 -11
  205. package/docs/docs/cmd/spo/list/list-remove.mdx +10 -1
  206. package/docs/docs/cmd/spo/page/page-publish.mdx +41 -0
  207. package/docs/docs/cmd/spo/site/site-sharingpermission-set.mdx +1 -1
  208. package/docs/docs/cmd/spo/tenant/tenant-site-membership-list.mdx +122 -0
  209. package/docs/docs/cmd/spo/user/user-ensure.mdx +2 -5
  210. package/docs/docs/cmd/spp/model/model-list.mdx +140 -0
  211. package/npm-shrinkwrap.json +2059 -389
  212. package/package.json +15 -15
  213. package/dist/m365/entra/aadCommands.js +0 -89
  214. package/dist/utils/driveUtil.js +0 -51
@@ -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 auth from '../../../../Auth.js';
13
- import aadCommands from '../../aadCommands.js';
14
13
  class EntraUserLicenseListCommand extends GraphCommand {
15
14
  get name() {
16
15
  return commands.USER_LICENSE_LIST;
@@ -18,9 +17,6 @@ class EntraUserLicenseListCommand extends GraphCommand {
18
17
  get description() {
19
18
  return 'Lists the license details for a given user';
20
19
  }
21
- alias() {
22
- return [aadCommands.USER_LICENSE_LIST];
23
- }
24
20
  defaultProperties() {
25
21
  return ['id', 'skuId', 'skuPartNumber'];
26
22
  }
@@ -34,7 +30,6 @@ class EntraUserLicenseListCommand extends GraphCommand {
34
30
  }
35
31
  async commandAction(logger, args) {
36
32
  const isAppOnlyAccessToken = accessToken.isAppOnlyAccessToken(auth.connection.accessTokens[this.resource].accessToken);
37
- await this.showDeprecationWarning(logger, aadCommands.USER_LICENSE_LIST, commands.USER_LICENSE_LIST);
38
33
  if (isAppOnlyAccessToken && !args.options.userId && !args.options.userName) {
39
34
  this.handleError(`Specify at least 'userId' or 'userName' when using application permissions.`);
40
35
  }
@@ -9,7 +9,6 @@ import request from '../../../../request.js';
9
9
  import { validation } from '../../../../utils/validation.js';
10
10
  import { cli } from '../../../../cli/cli.js';
11
11
  import GraphCommand from '../../../base/GraphCommand.js';
12
- import aadCommands from '../../aadCommands.js';
13
12
  class EntraUserLicenseRemoveCommand extends GraphCommand {
14
13
  get name() {
15
14
  return commands.USER_LICENSE_REMOVE;
@@ -17,9 +16,6 @@ class EntraUserLicenseRemoveCommand extends GraphCommand {
17
16
  get description() {
18
17
  return 'Removes a license from a user';
19
18
  }
20
- alias() {
21
- return [aadCommands.USER_LICENSE_REMOVE];
22
- }
23
19
  constructor() {
24
20
  super();
25
21
  _EntraUserLicenseRemoveCommand_instances.add(this);
@@ -29,7 +25,6 @@ class EntraUserLicenseRemoveCommand extends GraphCommand {
29
25
  __classPrivateFieldGet(this, _EntraUserLicenseRemoveCommand_instances, "m", _EntraUserLicenseRemoveCommand_initOptionSets).call(this);
30
26
  }
31
27
  async commandAction(logger, args) {
32
- await this.showDeprecationWarning(logger, aadCommands.USER_LICENSE_REMOVE, commands.USER_LICENSE_REMOVE);
33
28
  if (this.verbose) {
34
29
  await logger.logToStderr(`Removing the licenses for the user '${args.options.userId || args.options.userName}'...`);
35
30
  }
@@ -8,7 +8,6 @@ import { formatting } from '../../../../utils/formatting.js';
8
8
  import { odata } from '../../../../utils/odata.js';
9
9
  import GraphCommand from '../../../base/GraphCommand.js';
10
10
  import commands from '../../commands.js';
11
- import aadCommands from '../../aadCommands.js';
12
11
  class EntraUserListCommand extends GraphCommand {
13
12
  get name() {
14
13
  return commands.USER_LIST;
@@ -16,9 +15,6 @@ class EntraUserListCommand extends GraphCommand {
16
15
  get description() {
17
16
  return 'Lists users matching specified criteria';
18
17
  }
19
- alias() {
20
- return [aadCommands.USER_LIST];
21
- }
22
18
  allowUnknownOptions() {
23
19
  return true;
24
20
  }
@@ -34,7 +30,6 @@ class EntraUserListCommand extends GraphCommand {
34
30
  __classPrivateFieldGet(this, _EntraUserListCommand_instances, "m", _EntraUserListCommand_initTypes).call(this);
35
31
  }
36
32
  async commandAction(logger, args) {
37
- await this.showDeprecationWarning(logger, aadCommands.USER_LIST, commands.USER_LIST);
38
33
  try {
39
34
  let url = `${this.resource}/v1.0/users`;
40
35
  if (args.options.properties) {
@@ -6,7 +6,6 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
6
6
  var _EntraUserPasswordValidateCommand_instances, _EntraUserPasswordValidateCommand_initOptions;
7
7
  import request from '../../../../request.js';
8
8
  import GraphCommand from '../../../base/GraphCommand.js';
9
- import aadCommands from '../../aadCommands.js';
10
9
  import commands from '../../commands.js';
11
10
  class EntraUserPasswordValidateCommand extends GraphCommand {
12
11
  get name() {
@@ -15,16 +14,12 @@ class EntraUserPasswordValidateCommand extends GraphCommand {
15
14
  get description() {
16
15
  return "Check a user's password against the organization's password validation policy";
17
16
  }
18
- alias() {
19
- return [aadCommands.USER_PASSWORD_VALIDATE];
20
- }
21
17
  constructor() {
22
18
  super();
23
19
  _EntraUserPasswordValidateCommand_instances.add(this);
24
20
  __classPrivateFieldGet(this, _EntraUserPasswordValidateCommand_instances, "m", _EntraUserPasswordValidateCommand_initOptions).call(this);
25
21
  }
26
22
  async commandAction(logger, args) {
27
- await this.showDeprecationWarning(logger, aadCommands.USER_PASSWORD_VALIDATE, commands.USER_PASSWORD_VALIDATE);
28
23
  try {
29
24
  const requestOptions = {
30
25
  url: `${this.resource}/beta/users/validatePassword`,
@@ -9,7 +9,6 @@ import request from '../../../../request.js';
9
9
  import { odata } from '../../../../utils/odata.js';
10
10
  import GraphCommand from '../../../base/GraphCommand.js';
11
11
  import commands from '../../commands.js';
12
- import aadCommands from '../../aadCommands.js';
13
12
  class EntraUserRecycleBinItemClearCommand extends GraphCommand {
14
13
  get name() {
15
14
  return commands.USER_RECYCLEBINITEM_CLEAR;
@@ -17,9 +16,6 @@ class EntraUserRecycleBinItemClearCommand extends GraphCommand {
17
16
  get description() {
18
17
  return 'Removes all users from the tenant recycle bin';
19
18
  }
20
- alias() {
21
- return [aadCommands.USER_RECYCLEBINITEM_CLEAR];
22
- }
23
19
  constructor() {
24
20
  super();
25
21
  _EntraUserRecycleBinItemClearCommand_instances.add(this);
@@ -27,7 +23,6 @@ class EntraUserRecycleBinItemClearCommand extends GraphCommand {
27
23
  __classPrivateFieldGet(this, _EntraUserRecycleBinItemClearCommand_instances, "m", _EntraUserRecycleBinItemClearCommand_initOptions).call(this);
28
24
  }
29
25
  async commandAction(logger, args) {
30
- await this.showDeprecationWarning(logger, aadCommands.USER_RECYCLEBINITEM_CLEAR, commands.USER_RECYCLEBINITEM_CLEAR);
31
26
  const clearRecycleBinUsers = async () => {
32
27
  try {
33
28
  const users = await odata.getAllItems(`${this.resource}/v1.0/directory/deletedItems/microsoft.graph.user?$select=id`);
@@ -1,7 +1,6 @@
1
1
  import { odata } from '../../../../utils/odata.js';
2
2
  import GraphCommand from '../../../base/GraphCommand.js';
3
3
  import commands from '../../commands.js';
4
- import aadCommands from '../../aadCommands.js';
5
4
  class EntraUserRecycleBinItemListCommand extends GraphCommand {
6
5
  get name() {
7
6
  return commands.USER_RECYCLEBINITEM_LIST;
@@ -9,14 +8,10 @@ class EntraUserRecycleBinItemListCommand extends GraphCommand {
9
8
  get description() {
10
9
  return 'Lists users from the recycle bin in the current tenant';
11
10
  }
12
- alias() {
13
- return [aadCommands.USER_RECYCLEBINITEM_LIST];
14
- }
15
11
  defaultProperties() {
16
12
  return ['id', 'displayName', 'userPrincipalName'];
17
13
  }
18
14
  async commandAction(logger) {
19
- await this.showDeprecationWarning(logger, aadCommands.USER_RECYCLEBINITEM_LIST, commands.USER_RECYCLEBINITEM_LIST);
20
15
  if (this.verbose) {
21
16
  await logger.logToStderr('Retrieving users from the recycle bin...');
22
17
  }
@@ -8,7 +8,6 @@ import { cli } from '../../../../cli/cli.js';
8
8
  import request from '../../../../request.js';
9
9
  import { validation } from '../../../../utils/validation.js';
10
10
  import GraphCommand from '../../../base/GraphCommand.js';
11
- import aadCommands from '../../aadCommands.js';
12
11
  import commands from '../../commands.js';
13
12
  class EntraUserRecycleBinItemRemoveCommand extends GraphCommand {
14
13
  get name() {
@@ -17,9 +16,6 @@ class EntraUserRecycleBinItemRemoveCommand extends GraphCommand {
17
16
  get description() {
18
17
  return 'Removes a user from the recycle bin in the current tenant';
19
18
  }
20
- alias() {
21
- return [aadCommands.USER_RECYCLEBINITEM_REMOVE];
22
- }
23
19
  constructor() {
24
20
  super();
25
21
  _EntraUserRecycleBinItemRemoveCommand_instances.add(this);
@@ -28,7 +24,6 @@ class EntraUserRecycleBinItemRemoveCommand extends GraphCommand {
28
24
  __classPrivateFieldGet(this, _EntraUserRecycleBinItemRemoveCommand_instances, "m", _EntraUserRecycleBinItemRemoveCommand_initValidators).call(this);
29
25
  }
30
26
  async commandAction(logger, args) {
31
- await this.showDeprecationWarning(logger, aadCommands.USER_RECYCLEBINITEM_REMOVE, commands.USER_RECYCLEBINITEM_REMOVE);
32
27
  const clearRecycleBinItem = async () => {
33
28
  if (this.verbose) {
34
29
  await logger.logToStderr(`Permanently deleting user with id ${args.options.id} from Microsoft Entra ID`);
@@ -8,7 +8,6 @@ import request from '../../../../request.js';
8
8
  import { validation } from '../../../../utils/validation.js';
9
9
  import GraphCommand from '../../../base/GraphCommand.js';
10
10
  import commands from '../../commands.js';
11
- import aadCommands from '../../aadCommands.js';
12
11
  class EntraUserRecycleBinItemRestoreCommand extends GraphCommand {
13
12
  get name() {
14
13
  return commands.USER_RECYCLEBINITEM_RESTORE;
@@ -16,9 +15,6 @@ class EntraUserRecycleBinItemRestoreCommand extends GraphCommand {
16
15
  get description() {
17
16
  return 'Restores a user from the tenant recycle bin';
18
17
  }
19
- alias() {
20
- return [aadCommands.USER_RECYCLEBINITEM_RESTORE];
21
- }
22
18
  constructor() {
23
19
  super();
24
20
  _EntraUserRecycleBinItemRestoreCommand_instances.add(this);
@@ -26,7 +22,6 @@ class EntraUserRecycleBinItemRestoreCommand extends GraphCommand {
26
22
  __classPrivateFieldGet(this, _EntraUserRecycleBinItemRestoreCommand_instances, "m", _EntraUserRecycleBinItemRestoreCommand_initValidators).call(this);
27
23
  }
28
24
  async commandAction(logger, args) {
29
- await this.showDeprecationWarning(logger, aadCommands.USER_RECYCLEBINITEM_RESTORE, commands.USER_RECYCLEBINITEM_RESTORE);
30
25
  if (this.verbose) {
31
26
  await logger.logToStderr(`Restoring user with id ${args.options.id} from the recycle bin.`);
32
27
  }
@@ -6,7 +6,6 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
6
6
  var _EntraUserRegistrationDetailsListCommand_instances, _EntraUserRegistrationDetailsListCommand_initTelemetry, _EntraUserRegistrationDetailsListCommand_initOptions, _EntraUserRegistrationDetailsListCommand_initValidators;
7
7
  import GraphCommand from '../../../base/GraphCommand.js';
8
8
  import commands from '../../commands.js';
9
- import aadCommands from '../../aadCommands.js';
10
9
  import { odata } from '../../../../utils/odata.js';
11
10
  import { entraUser } from '../../../../utils/entraUser.js';
12
11
  import { validation } from '../../../../utils/validation.js';
@@ -20,9 +19,6 @@ class EntraUserRegistrationDetailsListCommand extends GraphCommand {
20
19
  get description() {
21
20
  return 'Retrieves a list of the authentication methods registered for users';
22
21
  }
23
- alias() {
24
- return [aadCommands.USER_REGISTRATIONDETAILS_LIST];
25
- }
26
22
  defaultProperties() {
27
23
  return ['userPrincipalName', 'methodsRegistered', 'lastUpdatedDateTime'];
28
24
  }
@@ -9,7 +9,6 @@ import request from '../../../../request.js';
9
9
  import { validation } from '../../../../utils/validation.js';
10
10
  import { cli } from '../../../../cli/cli.js';
11
11
  import GraphCommand from '../../../base/GraphCommand.js';
12
- import aadCommands from '../../aadCommands.js';
13
12
  class EntraUserRemoveCommand extends GraphCommand {
14
13
  get name() {
15
14
  return commands.USER_REMOVE;
@@ -17,9 +16,6 @@ class EntraUserRemoveCommand extends GraphCommand {
17
16
  get description() {
18
17
  return 'Removes a specific user';
19
18
  }
20
- alias() {
21
- return [aadCommands.USER_REMOVE];
22
- }
23
19
  constructor() {
24
20
  super();
25
21
  _EntraUserRemoveCommand_instances.add(this);
@@ -29,7 +25,6 @@ class EntraUserRemoveCommand extends GraphCommand {
29
25
  __classPrivateFieldGet(this, _EntraUserRemoveCommand_instances, "m", _EntraUserRemoveCommand_initOptionSets).call(this);
30
26
  }
31
27
  async commandAction(logger, args) {
32
- await this.showDeprecationWarning(logger, aadCommands.USER_REMOVE, commands.USER_REMOVE);
33
28
  if (this.verbose) {
34
29
  await logger.logToStderr(`Removing user '${args.options.id || args.options.userName}'...`);
35
30
  }
@@ -10,7 +10,6 @@ import { accessToken } from '../../../../utils/accessToken.js';
10
10
  import { formatting } from '../../../../utils/formatting.js';
11
11
  import { validation } from '../../../../utils/validation.js';
12
12
  import GraphCommand from '../../../base/GraphCommand.js';
13
- import aadCommands from '../../aadCommands.js';
14
13
  import commands from '../../commands.js';
15
14
  class EntraUserSetCommand extends GraphCommand {
16
15
  get name() {
@@ -19,9 +18,6 @@ class EntraUserSetCommand extends GraphCommand {
19
18
  get description() {
20
19
  return 'Updates information about the specified user';
21
20
  }
22
- alias() {
23
- return [aadCommands.USER_SET];
24
- }
25
21
  allowUnknownOptions() {
26
22
  return true;
27
23
  }
@@ -35,7 +31,6 @@ class EntraUserSetCommand extends GraphCommand {
35
31
  __classPrivateFieldGet(this, _EntraUserSetCommand_instances, "m", _EntraUserSetCommand_initOptionSets).call(this);
36
32
  }
37
33
  async commandAction(logger, args) {
38
- await this.showDeprecationWarning(logger, aadCommands.USER_SET, commands.USER_SET);
39
34
  try {
40
35
  if (args.options.currentPassword) {
41
36
  if (args.options.id && args.options.id !== accessToken.getUserIdFromAccessToken(auth.connection.accessTokens[auth.defaultResource].accessToken)) {
@@ -9,7 +9,6 @@ import { odata } from '../../../../utils/odata.js';
9
9
  import { validation } from '../../../../utils/validation.js';
10
10
  import GraphCommand from '../../../base/GraphCommand.js';
11
11
  import commands from '../../commands.js';
12
- import aadCommands from '../../aadCommands.js';
13
12
  class EntraUserSigninListCommand extends GraphCommand {
14
13
  get name() {
15
14
  return commands.USER_SIGNIN_LIST;
@@ -17,9 +16,6 @@ class EntraUserSigninListCommand extends GraphCommand {
17
16
  get description() {
18
17
  return 'Retrieves the Entra ID user sign-ins for the tenant';
19
18
  }
20
- alias() {
21
- return [aadCommands.USER_SIGNIN_LIST];
22
- }
23
19
  constructor() {
24
20
  super();
25
21
  _EntraUserSigninListCommand_instances.add(this);
@@ -31,7 +27,6 @@ class EntraUserSigninListCommand extends GraphCommand {
31
27
  return ['id', 'userPrincipalName', 'appId', 'appDisplayName', 'createdDateTime'];
32
28
  }
33
29
  async commandAction(logger, args) {
34
- await this.showDeprecationWarning(logger, aadCommands.USER_SIGNIN_LIST, commands.USER_SIGNIN_LIST);
35
30
  try {
36
31
  let endpoint = `${this.resource}/v1.0/auditLogs/signIns`;
37
32
  let filter = "";
@@ -10,7 +10,7 @@ import commands from '../commands.js';
10
10
  import request from '../../../request.js';
11
11
  import { spo } from '../../../utils/spo.js';
12
12
  import { urlUtil } from '../../../utils/urlUtil.js';
13
- import { driveUtil } from '../../../utils/driveUtil.js';
13
+ import { drive } from '../../../utils/drive.js';
14
14
  import { validation } from '../../../utils/validation.js';
15
15
  class FileMoveCommand extends GraphCommand {
16
16
  get name() {
@@ -60,9 +60,9 @@ class FileMoveCommand extends GraphCommand {
60
60
  }
61
61
  async getDriveIdAndItemId(webUrl, folderUrl, sourceUrl, logger, verbose) {
62
62
  const siteId = await spo.getSiteId(webUrl, logger, verbose);
63
- const drive = await driveUtil.getDriveByUrl(siteId, new URL(folderUrl));
64
- const itemId = await driveUtil.getDriveItemId(drive, new URL(folderUrl));
65
- return { driveId: drive.id, itemId };
63
+ const driveDetails = await drive.getDriveByUrl(siteId, new URL(folderUrl), logger, verbose);
64
+ const itemId = await drive.getDriveItemId(driveDetails, new URL(folderUrl), logger, verbose);
65
+ return { driveId: driveDetails.id, itemId };
66
66
  }
67
67
  getRequestOptions(sourceDriveId, sourceItemId, targetDriveId, targetItemId, newName, sourcePath, nameConflictBehavior) {
68
68
  const apiUrl = sourceDriveId === targetDriveId
@@ -5,7 +5,7 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
5
5
  };
6
6
  var _SpoFileCopyCommand_instances, _SpoFileCopyCommand_initTelemetry, _SpoFileCopyCommand_initOptions, _SpoFileCopyCommand_initValidators, _SpoFileCopyCommand_initOptionSets, _SpoFileCopyCommand_initTypes;
7
7
  import request from '../../../../request.js';
8
- import { CreateCopyJobsNameConflictBehavior, spo } from '../../../../utils/spo.js';
8
+ import { CreateFileCopyJobsNameConflictBehavior, spo } from '../../../../utils/spo.js';
9
9
  import { urlUtil } from '../../../../utils/urlUtil.js';
10
10
  import { validation } from '../../../../utils/validation.js';
11
11
  import SpoCommand from '../../../base/SpoCommand.js';
@@ -43,7 +43,7 @@ class SpoFileCopyCommand extends SpoCommand {
43
43
  if (newName && !newName.includes('.')) {
44
44
  newName += sourceServerRelativePath.substring(sourceServerRelativePath.lastIndexOf('.'));
45
45
  }
46
- const copyJobResponse = await spo.createCopyJob(args.options.webUrl, sourcePath, destinationPath, {
46
+ const copyJobResponse = await spo.createFileCopyJob(args.options.webUrl, sourcePath, destinationPath, {
47
47
  nameConflictBehavior: this.getNameConflictBehaviorValue(args.options.nameConflictBehavior),
48
48
  bypassSharedLock: !!args.options.bypassSharedLock,
49
49
  ignoreVersionHistory: !!args.options.ignoreVersionHistory,
@@ -97,13 +97,13 @@ class SpoFileCopyCommand extends SpoCommand {
97
97
  getNameConflictBehaviorValue(nameConflictBehavior) {
98
98
  switch (nameConflictBehavior?.toLowerCase()) {
99
99
  case 'fail':
100
- return CreateCopyJobsNameConflictBehavior.Fail;
100
+ return CreateFileCopyJobsNameConflictBehavior.Fail;
101
101
  case 'replace':
102
- return CreateCopyJobsNameConflictBehavior.Replace;
102
+ return CreateFileCopyJobsNameConflictBehavior.Replace;
103
103
  case 'rename':
104
- return CreateCopyJobsNameConflictBehavior.Rename;
104
+ return CreateFileCopyJobsNameConflictBehavior.Rename;
105
105
  default:
106
- return CreateCopyJobsNameConflictBehavior.Fail;
106
+ return CreateFileCopyJobsNameConflictBehavior.Fail;
107
107
  }
108
108
  }
109
109
  getAbsoluteUrl(webUrl, url) {
@@ -5,7 +5,7 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
5
5
  };
6
6
  var _SpoFileMoveCommand_instances, _SpoFileMoveCommand_initTelemetry, _SpoFileMoveCommand_initOptions, _SpoFileMoveCommand_initValidators, _SpoFileMoveCommand_initOptionSets, _SpoFileMoveCommand_initTypes;
7
7
  import request from '../../../../request.js';
8
- import { CreateCopyJobsNameConflictBehavior, spo } from '../../../../utils/spo.js';
8
+ import { CreateFileCopyJobsNameConflictBehavior, spo } from '../../../../utils/spo.js';
9
9
  import { urlUtil } from '../../../../utils/urlUtil.js';
10
10
  import { validation } from '../../../../utils/validation.js';
11
11
  import SpoCommand from '../../../base/SpoCommand.js';
@@ -43,7 +43,7 @@ class SpoFileMoveCommand extends SpoCommand {
43
43
  if (newName && !newName.includes('.')) {
44
44
  newName += sourceServerRelativePath.substring(sourceServerRelativePath.lastIndexOf('.'));
45
45
  }
46
- const copyJobResponse = await spo.createCopyJob(args.options.webUrl, sourcePath, destinationPath, {
46
+ const copyJobResponse = await spo.createFileCopyJob(args.options.webUrl, sourcePath, destinationPath, {
47
47
  nameConflictBehavior: this.getNameConflictBehaviorValue(args.options.nameConflictBehavior),
48
48
  bypassSharedLock: !!args.options.bypassSharedLock,
49
49
  includeItemPermissions: !!args.options.includeItemPermissions,
@@ -97,13 +97,13 @@ class SpoFileMoveCommand extends SpoCommand {
97
97
  getNameConflictBehaviorValue(nameConflictBehavior) {
98
98
  switch (nameConflictBehavior?.toLowerCase()) {
99
99
  case 'fail':
100
- return CreateCopyJobsNameConflictBehavior.Fail;
100
+ return CreateFileCopyJobsNameConflictBehavior.Fail;
101
101
  case 'replace':
102
- return CreateCopyJobsNameConflictBehavior.Replace;
102
+ return CreateFileCopyJobsNameConflictBehavior.Replace;
103
103
  case 'rename':
104
- return CreateCopyJobsNameConflictBehavior.Rename;
104
+ return CreateFileCopyJobsNameConflictBehavior.Rename;
105
105
  default:
106
- return CreateCopyJobsNameConflictBehavior.Fail;
106
+ return CreateFileCopyJobsNameConflictBehavior.Fail;
107
107
  }
108
108
  }
109
109
  getAbsoluteUrl(webUrl, url) {
@@ -59,6 +59,9 @@ class SpoFileRemoveCommand extends SpoCommand {
59
59
  },
60
60
  responseType: 'json'
61
61
  };
62
+ if (args.options.bypassSharedLock) {
63
+ requestOptions.headers.Prefer = 'bypass-shared-lock';
64
+ }
62
65
  try {
63
66
  await request.post(requestOptions);
64
67
  }
@@ -83,6 +86,7 @@ _SpoFileRemoveCommand_instances = new WeakSet(), _SpoFileRemoveCommand_initTelem
83
86
  id: typeof args.options.id !== 'undefined',
84
87
  url: typeof args.options.url !== 'undefined',
85
88
  recycle: !!args.options.recycle,
89
+ bypassSharedLock: !!args.options.bypassSharedLock,
86
90
  force: !!args.options.force
87
91
  });
88
92
  });
@@ -95,6 +99,8 @@ _SpoFileRemoveCommand_instances = new WeakSet(), _SpoFileRemoveCommand_initTelem
95
99
  option: '--url [url]'
96
100
  }, {
97
101
  option: '--recycle'
102
+ }, {
103
+ option: '--bypassSharedLock'
98
104
  }, {
99
105
  option: '-f, --force'
100
106
  });
@@ -114,7 +120,7 @@ _SpoFileRemoveCommand_instances = new WeakSet(), _SpoFileRemoveCommand_initTelem
114
120
  this.optionSets.push({ options: ['id', 'url'] });
115
121
  }, _SpoFileRemoveCommand_initTypes = function _SpoFileRemoveCommand_initTypes() {
116
122
  this.types.string.push('webUrl', 'id', 'url');
117
- this.types.boolean.push('recycle', 'force');
123
+ this.types.boolean.push('recycle', 'bypassSharedLock', 'force');
118
124
  };
119
125
  export default new SpoFileRemoveCommand();
120
126
  //# sourceMappingURL=file-remove.js.map
@@ -5,6 +5,7 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
5
5
  };
6
6
  var _SpoFolderCopyCommand_instances, _SpoFolderCopyCommand_initTelemetry, _SpoFolderCopyCommand_initOptions, _SpoFolderCopyCommand_initValidators, _SpoFolderCopyCommand_initOptionSets, _SpoFolderCopyCommand_initTypes;
7
7
  import request from '../../../../request.js';
8
+ import { CreateFolderCopyJobsNameConflictBehavior, spo } from '../../../../utils/spo.js';
8
9
  import { urlUtil } from '../../../../utils/urlUtil.js';
9
10
  import { validation } from '../../../../utils/validation.js';
10
11
  import SpoCommand from '../../../base/SpoCommand.js';
@@ -31,45 +32,54 @@ class SpoFolderCopyCommand extends SpoCommand {
31
32
  }
32
33
  async commandAction(logger, args) {
33
34
  try {
34
- const sourcePath = await this.getSourcePath(logger, args.options);
35
+ const sourceServerRelativePath = await this.getSourcePath(logger, args.options);
36
+ const sourcePath = this.getAbsoluteUrl(args.options.webUrl, sourceServerRelativePath);
37
+ const destinationPath = this.getAbsoluteUrl(args.options.webUrl, args.options.targetUrl);
35
38
  if (this.verbose) {
36
- await logger.logToStderr(`Copying folder ${sourcePath} to ${args.options.targetUrl}...`);
39
+ await logger.logToStderr(`Copying folder '${sourcePath}' to '${destinationPath}'...`);
37
40
  }
38
- const absoluteSourcePath = this.getAbsoluteUrl(args.options.webUrl, sourcePath);
39
- let absoluteTargetPath = this.getAbsoluteUrl(args.options.webUrl, args.options.targetUrl) + '/';
40
- if (args.options.newName) {
41
- absoluteTargetPath += args.options.newName;
41
+ const copyJobResponse = await spo.createFolderCopyJob(args.options.webUrl, sourcePath, destinationPath, {
42
+ nameConflictBehavior: this.getNameConflictBehaviorValue(args.options.nameConflictBehavior),
43
+ newName: args.options.newName,
44
+ operation: 'copy'
45
+ });
46
+ if (args.options.skipWait) {
47
+ return;
42
48
  }
43
- else {
44
- // Keep the original folder name
45
- absoluteTargetPath += sourcePath.substring(sourcePath.lastIndexOf('/') + 1);
49
+ if (this.verbose) {
50
+ await logger.logToStderr('Waiting for the copy job to complete...');
51
+ }
52
+ const copyJobResult = await spo.getCopyJobResult(args.options.webUrl, copyJobResponse);
53
+ if (this.verbose) {
54
+ await logger.logToStderr('Getting information about the destination folder...');
46
55
  }
56
+ // Get destination folder data
57
+ const siteRelativeDestinationFolder = '/' + copyJobResult.TargetObjectSiteRelativeUrl.substring(0, copyJobResult.TargetObjectSiteRelativeUrl.lastIndexOf('/'));
58
+ const absoluteWebUrl = destinationPath.substring(0, destinationPath.toLowerCase().lastIndexOf(siteRelativeDestinationFolder.toLowerCase()));
47
59
  const requestOptions = {
48
- url: `${args.options.webUrl}/_api/SP.MoveCopyUtil.CopyFolderByPath`,
60
+ url: `${absoluteWebUrl}/_api/Web/GetFolderById('${copyJobResult.TargetObjectUniqueId}')`,
49
61
  headers: {
50
62
  accept: 'application/json;odata=nometadata'
51
63
  },
52
- responseType: 'json',
53
- data: {
54
- srcPath: {
55
- DecodedUrl: absoluteSourcePath
56
- },
57
- destPath: {
58
- DecodedUrl: absoluteTargetPath
59
- },
60
- options: {
61
- KeepBoth: args.options.nameConflictBehavior === 'rename',
62
- ShouldBypassSharedLocks: !!args.options.bypassSharedLock,
63
- ResetAuthorAndCreatedOnCopy: !!args.options.resetAuthorAndCreated
64
- }
65
- }
64
+ responseType: 'json'
66
65
  };
67
- await request.post(requestOptions);
66
+ const destinationFile = await request.get(requestOptions);
67
+ await logger.log(destinationFile);
68
68
  }
69
69
  catch (err) {
70
70
  this.handleRejectedODataJsonPromise(err);
71
71
  }
72
72
  }
73
+ getNameConflictBehaviorValue(nameConflictBehavior) {
74
+ switch (nameConflictBehavior?.toLowerCase()) {
75
+ case 'fail':
76
+ return CreateFolderCopyJobsNameConflictBehavior.Fail;
77
+ case 'rename':
78
+ return CreateFolderCopyJobsNameConflictBehavior.Rename;
79
+ default:
80
+ return CreateFolderCopyJobsNameConflictBehavior.Fail;
81
+ }
82
+ }
73
83
  async getSourcePath(logger, options) {
74
84
  if (options.sourceUrl) {
75
85
  return urlUtil.getServerRelativePath(options.webUrl, options.sourceUrl);
@@ -78,17 +88,18 @@ class SpoFolderCopyCommand extends SpoCommand {
78
88
  await logger.logToStderr(`Retrieving server-relative path for folder with ID '${options.sourceId}'...`);
79
89
  }
80
90
  const requestOptions = {
81
- url: `${options.webUrl}/_api/Web/GetFolderById('${options.sourceId}')?$select=ServerRelativePath`,
91
+ url: `${options.webUrl}/_api/Web/GetFolderById('${options.sourceId}')/ServerRelativePath`,
82
92
  headers: {
83
93
  accept: 'application/json;odata=nometadata'
84
94
  },
85
95
  responseType: 'json'
86
96
  };
87
- const file = await request.get(requestOptions);
88
- return file.ServerRelativePath.DecodedUrl;
97
+ const path = await request.get(requestOptions);
98
+ return path.DecodedUrl;
89
99
  }
90
100
  getAbsoluteUrl(webUrl, url) {
91
- return url.startsWith('https://') ? url : urlUtil.getAbsoluteUrl(webUrl, url);
101
+ const result = url.startsWith('https://') ? url : urlUtil.getAbsoluteUrl(webUrl, url);
102
+ return urlUtil.removeTrailingSlashes(result);
92
103
  }
93
104
  }
94
105
  _SpoFolderCopyCommand_instances = new WeakSet(), _SpoFolderCopyCommand_initTelemetry = function _SpoFolderCopyCommand_initTelemetry() {
@@ -98,8 +109,7 @@ _SpoFolderCopyCommand_instances = new WeakSet(), _SpoFolderCopyCommand_initTelem
98
109
  sourceId: typeof args.options.sourceId !== 'undefined',
99
110
  newName: typeof args.options.newName !== 'undefined',
100
111
  nameConflictBehavior: typeof args.options.nameConflictBehavior !== 'undefined',
101
- resetAuthorAndCreated: !!args.options.resetAuthorAndCreated,
102
- bypassSharedLock: !!args.options.bypassSharedLock
112
+ skipWait: !!args.options.skipWait
103
113
  });
104
114
  });
105
115
  }, _SpoFolderCopyCommand_initOptions = function _SpoFolderCopyCommand_initOptions() {
@@ -117,9 +127,7 @@ _SpoFolderCopyCommand_instances = new WeakSet(), _SpoFolderCopyCommand_initTelem
117
127
  option: '--nameConflictBehavior [nameConflictBehavior]',
118
128
  autocomplete: this.nameConflictBehaviorOptions
119
129
  }, {
120
- option: '--resetAuthorAndCreated'
121
- }, {
122
- option: '--bypassSharedLock'
130
+ option: '--skipWait'
123
131
  });
124
132
  }, _SpoFolderCopyCommand_initValidators = function _SpoFolderCopyCommand_initValidators() {
125
133
  this.validators.push(async (args) => {
@@ -139,7 +147,7 @@ _SpoFolderCopyCommand_instances = new WeakSet(), _SpoFolderCopyCommand_initTelem
139
147
  this.optionSets.push({ options: ['sourceUrl', 'sourceId'] });
140
148
  }, _SpoFolderCopyCommand_initTypes = function _SpoFolderCopyCommand_initTypes() {
141
149
  this.types.string.push('webUrl', 'sourceUrl', 'sourceId', 'targetUrl', 'newName', 'nameConflictBehavior');
142
- this.types.boolean.push('resetAuthorAndCreated', 'bypassSharedLock');
150
+ this.types.boolean.push('skipWait');
143
151
  };
144
152
  export default new SpoFolderCopyCommand();
145
153
  //# sourceMappingURL=folder-copy.js.map