@pnp/cli-microsoft365 10.0.0-beta.e925c1c → 10.0.0-beta.fd332f4

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 (362) hide show
  1. package/.eslintrc.cjs +1 -0
  2. package/allCommands.json +1 -1
  3. package/allCommandsFull.json +1 -1
  4. package/dist/Auth.js +6 -4
  5. package/dist/AuthServer.js +7 -7
  6. package/dist/Command.js +4 -1
  7. package/dist/api.js +1 -1
  8. package/dist/appInsights.js +6 -4
  9. package/dist/config.js +1 -0
  10. package/dist/m365/base/PowerAutomateCommand.js +1 -1
  11. package/dist/m365/cli/commands/cli-doctor.js +2 -2
  12. package/dist/m365/cli/commands/config/config-set.js +0 -1
  13. package/dist/m365/cli/commands.js +1 -2
  14. package/dist/m365/commands/login.js +122 -69
  15. package/dist/m365/commands/setup.js +1 -1
  16. package/dist/m365/commands/setupPresets.js +2 -4
  17. package/dist/m365/entra/commands/administrativeunit/administrativeunit-add.js +0 -5
  18. package/dist/m365/entra/commands/administrativeunit/administrativeunit-get.js +0 -5
  19. package/dist/m365/entra/commands/administrativeunit/administrativeunit-list.js +0 -5
  20. package/dist/m365/entra/commands/administrativeunit/administrativeunit-member-add.js +0 -5
  21. package/dist/m365/entra/commands/administrativeunit/administrativeunit-member-get.js +0 -5
  22. package/dist/m365/entra/commands/administrativeunit/administrativeunit-member-list.js +0 -5
  23. package/dist/m365/entra/commands/administrativeunit/administrativeunit-remove.js +0 -5
  24. package/dist/m365/entra/commands/app/app-add.js +0 -5
  25. package/dist/m365/entra/commands/app/app-get.js +0 -5
  26. package/dist/m365/entra/commands/app/app-list.js +0 -5
  27. package/dist/m365/entra/commands/app/app-permission-add.js +0 -5
  28. package/dist/m365/entra/commands/app/app-remove.js +0 -5
  29. package/dist/m365/entra/commands/app/app-role-add.js +0 -5
  30. package/dist/m365/entra/commands/app/app-role-list.js +0 -5
  31. package/dist/m365/entra/commands/app/app-role-remove.js +0 -5
  32. package/dist/m365/entra/commands/app/app-set.js +0 -5
  33. package/dist/m365/entra/commands/approleassignment/approleassignment-add.js +0 -5
  34. package/dist/m365/entra/commands/approleassignment/approleassignment-list.js +0 -5
  35. package/dist/m365/entra/commands/approleassignment/approleassignment-remove.js +0 -5
  36. package/dist/m365/entra/commands/enterpriseapp/enterpriseapp-add.js +0 -5
  37. package/dist/m365/entra/commands/enterpriseapp/enterpriseapp-get.js +0 -5
  38. package/dist/m365/entra/commands/enterpriseapp/enterpriseapp-list.js +0 -5
  39. package/dist/m365/entra/commands/group/group-add.js +0 -4
  40. package/dist/m365/entra/commands/group/group-get.js +0 -5
  41. package/dist/m365/entra/commands/group/group-list.js +0 -5
  42. package/dist/m365/entra/commands/group/{group-user-add.js → group-member-add.js} +18 -18
  43. package/dist/m365/entra/commands/group/{group-user-list.js → group-member-list.js} +16 -21
  44. package/dist/m365/entra/commands/group/{group-user-set.js → group-member-set.js} +19 -19
  45. package/dist/m365/entra/commands/group/group-remove.js +0 -5
  46. package/dist/m365/entra/commands/groupsetting/groupsetting-add.js +0 -5
  47. package/dist/m365/entra/commands/groupsetting/groupsetting-get.js +0 -5
  48. package/dist/m365/entra/commands/groupsetting/groupsetting-list.js +0 -5
  49. package/dist/m365/entra/commands/groupsetting/groupsetting-remove.js +0 -5
  50. package/dist/m365/entra/commands/groupsetting/groupsetting-set.js +0 -5
  51. package/dist/m365/entra/commands/groupsettingtemplate/groupsettingtemplate-get.js +0 -5
  52. package/dist/m365/entra/commands/groupsettingtemplate/groupsettingtemplate-list.js +0 -5
  53. package/dist/m365/entra/commands/license/license-list.js +0 -5
  54. package/dist/m365/entra/commands/m365group/m365group-add.js +0 -5
  55. package/dist/m365/entra/commands/m365group/m365group-conversation-list.js +0 -5
  56. package/dist/m365/entra/commands/m365group/m365group-conversation-post-list.js +0 -5
  57. package/dist/m365/entra/commands/m365group/m365group-get.js +0 -5
  58. package/dist/m365/entra/commands/m365group/m365group-list.js +0 -5
  59. package/dist/m365/entra/commands/m365group/m365group-recyclebinitem-clear.js +0 -5
  60. package/dist/m365/entra/commands/m365group/m365group-recyclebinitem-list.js +0 -5
  61. package/dist/m365/entra/commands/m365group/m365group-recyclebinitem-remove.js +0 -5
  62. package/dist/m365/entra/commands/m365group/m365group-recyclebinitem-restore.js +0 -5
  63. package/dist/m365/entra/commands/m365group/m365group-remove.js +0 -5
  64. package/dist/m365/entra/commands/m365group/m365group-renew.js +0 -5
  65. package/dist/m365/entra/commands/m365group/m365group-report-activitycounts.js +0 -4
  66. package/dist/m365/entra/commands/m365group/m365group-report-activitydetail.js +0 -4
  67. package/dist/m365/entra/commands/m365group/m365group-report-activityfilecounts.js +0 -4
  68. package/dist/m365/entra/commands/m365group/m365group-report-activitygroupcounts.js +0 -4
  69. package/dist/m365/entra/commands/m365group/m365group-report-activitystorage.js +0 -4
  70. package/dist/m365/entra/commands/m365group/m365group-set.js +159 -86
  71. package/dist/m365/entra/commands/m365group/m365group-teamify.js +0 -5
  72. package/dist/m365/entra/commands/m365group/m365group-user-add.js +5 -18
  73. package/dist/m365/entra/commands/m365group/m365group-user-list.js +0 -5
  74. package/dist/m365/entra/commands/m365group/m365group-user-remove.js +84 -62
  75. package/dist/m365/entra/commands/m365group/m365group-user-set.js +3 -15
  76. package/dist/m365/entra/commands/oauth2grant/oauth2grant-add.js +0 -5
  77. package/dist/m365/entra/commands/oauth2grant/oauth2grant-list.js +3 -17
  78. package/dist/m365/entra/commands/oauth2grant/oauth2grant-remove.js +0 -5
  79. package/dist/m365/entra/commands/oauth2grant/oauth2grant-set.js +0 -5
  80. package/dist/m365/entra/commands/policy/policy-list.js +0 -5
  81. package/dist/m365/entra/commands/siteclassification/siteclassification-disable.js +0 -5
  82. package/dist/m365/entra/commands/siteclassification/siteclassification-enable.js +0 -5
  83. package/dist/m365/entra/commands/siteclassification/siteclassification-get.js +0 -5
  84. package/dist/m365/entra/commands/siteclassification/siteclassification-set.js +0 -5
  85. package/dist/m365/entra/commands/user/user-add.js +0 -5
  86. package/dist/m365/entra/commands/user/user-get.js +0 -5
  87. package/dist/m365/entra/commands/user/user-guest-add.js +0 -5
  88. package/dist/m365/entra/commands/user/user-hibp.js +0 -5
  89. package/dist/m365/entra/commands/user/user-license-add.js +0 -5
  90. package/dist/m365/entra/commands/user/user-license-list.js +0 -5
  91. package/dist/m365/entra/commands/user/user-license-remove.js +0 -5
  92. package/dist/m365/entra/commands/user/user-list.js +0 -5
  93. package/dist/m365/entra/commands/user/user-password-validate.js +0 -5
  94. package/dist/m365/entra/commands/user/user-recyclebinitem-clear.js +0 -5
  95. package/dist/m365/entra/commands/user/user-recyclebinitem-list.js +0 -5
  96. package/dist/m365/entra/commands/user/user-recyclebinitem-remove.js +0 -5
  97. package/dist/m365/entra/commands/user/user-recyclebinitem-restore.js +0 -5
  98. package/dist/m365/entra/commands/user/user-registrationdetails-list.js +0 -4
  99. package/dist/m365/entra/commands/user/user-remove.js +0 -5
  100. package/dist/m365/entra/commands/user/user-set.js +0 -5
  101. package/dist/m365/entra/commands/user/user-signin-list.js +0 -5
  102. package/dist/m365/entra/commands.js +3 -3
  103. package/dist/m365/external/commands/item/item-add.js +2 -5
  104. package/dist/m365/file/commands/file-move.js +135 -0
  105. package/dist/m365/file/commands.js +2 -1
  106. package/dist/m365/flow/commands/environment/environment-get.js +1 -1
  107. package/dist/m365/flow/commands/environment/environment-list.js +2 -2
  108. package/dist/m365/flow/commands/flow-disable.js +1 -1
  109. package/dist/m365/flow/commands/flow-enable.js +1 -1
  110. package/dist/m365/flow/commands/flow-export.js +17 -16
  111. package/dist/m365/flow/commands/flow-get.js +1 -1
  112. package/dist/m365/flow/commands/flow-list.js +1 -1
  113. package/dist/m365/flow/commands/flow-remove.js +1 -1
  114. package/dist/m365/flow/commands/owner/owner-ensure.js +1 -1
  115. package/dist/m365/flow/commands/owner/owner-list.js +1 -1
  116. package/dist/m365/flow/commands/owner/owner-remove.js +1 -1
  117. package/dist/m365/flow/commands/recyclebinitem/recyclebinitem-list.js +47 -0
  118. package/dist/m365/flow/commands/recyclebinitem/recyclebinitem-restore.js +48 -0
  119. package/dist/m365/flow/commands/run/run-cancel.js +1 -1
  120. package/dist/m365/flow/commands/run/run-get.js +1 -1
  121. package/dist/m365/flow/commands/run/run-list.js +1 -1
  122. package/dist/m365/flow/commands/run/run-resubmit.js +2 -2
  123. package/dist/m365/flow/commands.js +2 -0
  124. package/dist/m365/pa/commands/app/app-list.js +1 -6
  125. package/dist/m365/pa/commands/connector/connector-list.js +1 -6
  126. package/dist/m365/pa/commands/environment/environment-list.js +1 -1
  127. package/dist/m365/pp/commands/environment/environment-list.js +1 -1
  128. package/dist/m365/spfx/commands/project/project-doctor/doctor-1.20.0.js +27 -0
  129. package/dist/m365/spfx/commands/project/project-doctor/rules/FN002021_DEVDEP_rushstack_eslint_config.js +10 -0
  130. package/dist/m365/spfx/commands/project/project-doctor.js +2 -1
  131. package/dist/m365/spfx/commands/project/project-upgrade/upgrade-1.20.0.js +59 -0
  132. package/dist/m365/spfx/commands/project/project-upgrade.js +2 -1
  133. package/dist/m365/spfx/commands/spfx-doctor.js +15 -0
  134. package/dist/m365/spo/commands/app/app-instance-list.js +3 -18
  135. package/dist/m365/spo/commands/app/app-list.js +1 -8
  136. package/dist/m365/spo/commands/contenttype/contenttype-field-remove.js +8 -8
  137. package/dist/m365/spo/commands/contenttype/contenttype-field-set.js +2 -2
  138. package/dist/m365/spo/commands/feature/feature-list.js +1 -8
  139. package/dist/m365/spo/commands/file/file-copy.js +11 -7
  140. package/dist/m365/spo/commands/file/file-move.js +55 -33
  141. package/dist/m365/spo/commands/file/file-remove.js +7 -1
  142. package/dist/m365/spo/commands/file/file-roleassignment-add.js +17 -54
  143. package/dist/m365/spo/commands/file/file-roleassignment-remove.js +13 -40
  144. package/dist/m365/spo/commands/file/file-roleinheritance-break.js +5 -13
  145. package/dist/m365/spo/commands/file/file-roleinheritance-reset.js +5 -13
  146. package/dist/m365/spo/commands/folder/folder-copy.js +43 -35
  147. package/dist/m365/spo/commands/folder/folder-move.js +43 -35
  148. package/dist/m365/spo/commands/folder/folder-sharinglink-add.js +143 -0
  149. package/dist/m365/spo/commands/folder/folder-sharinglink-clear.js +111 -0
  150. package/dist/m365/spo/commands/folder/folder-sharinglink-remove.js +95 -0
  151. package/dist/m365/spo/commands/group/group-member-add.js +3 -23
  152. package/dist/m365/spo/commands/group/group-member-remove.js +1 -18
  153. package/dist/m365/spo/commands/list/list-get.js +17 -4
  154. package/dist/m365/spo/commands/list/list-remove.js +14 -4
  155. package/dist/m365/spo/commands/list/list-webhook-list.js +1 -6
  156. package/dist/m365/spo/commands/listitem/listitem-attachment-list.js +1 -8
  157. package/dist/m365/spo/commands/page/page-list.js +1 -1
  158. package/dist/m365/spo/commands/page/page-remove.js +37 -16
  159. package/dist/m365/spo/commands/page/page-section-add.js +185 -34
  160. package/dist/m365/spo/commands/page/page-template-list.js +1 -3
  161. package/dist/m365/spo/commands/site/SiteAdmin.js +2 -0
  162. package/dist/m365/spo/commands/site/site-admin-add.js +252 -0
  163. package/dist/m365/spo/commands/site/site-admin-list.js +10 -36
  164. package/dist/m365/spo/commands/site/site-admin-remove.js +194 -0
  165. package/dist/m365/spo/commands/site/site-sharingpermission-set.js +68 -0
  166. package/dist/m365/spo/commands/sitescript/sitescript-get.js +3 -2
  167. package/dist/m365/spo/commands/sitescript/sitescript-list.js +1 -3
  168. package/dist/m365/spo/commands/tenant/tenant-site-membership-list.js +118 -0
  169. package/dist/m365/spo/commands/{site/site-rename.js → tenant/tenant-site-rename.js} +29 -32
  170. package/dist/m365/spo/commands/theme/theme-list.js +1 -1
  171. package/dist/m365/spo/commands/user/user-ensure.js +1 -11
  172. package/dist/m365/spo/commands/user/user-get.js +67 -9
  173. package/dist/m365/spo/commands/userprofile/userprofile-get.js +1 -1
  174. package/dist/m365/spo/commands/web/web-clientsidewebpart-list.js +1 -6
  175. package/dist/m365/spo/commands.js +8 -1
  176. package/dist/m365/spp/commands/contentcenter/contentcenter-list.js +56 -0
  177. package/dist/m365/spp/commands/model/model-list.js +57 -0
  178. package/dist/m365/spp/commands.js +6 -0
  179. package/dist/m365/teams/MeetingTranscript.js +2 -0
  180. package/dist/m365/teams/commands/channel/channel-get.js +15 -50
  181. package/dist/m365/teams/commands/meeting/meeting-transcript-get.js +152 -0
  182. package/dist/m365/teams/commands/tab/tab-list.js +5 -3
  183. package/dist/m365/teams/commands/team/team-get.js +16 -21
  184. package/dist/m365/teams/commands.js +1 -0
  185. package/dist/m365/viva/commands/engage/Community.js +2 -0
  186. package/dist/m365/viva/commands/engage/engage-community-list.js +28 -0
  187. package/dist/m365/viva/commands.js +1 -0
  188. package/dist/request.js +46 -61
  189. package/dist/settingsNames.js +0 -1
  190. package/dist/telemetryRunner.js +2 -2
  191. package/dist/utils/spo.js +166 -29
  192. package/dist/utils/spp.js +22 -0
  193. package/dist/utils/teams.js +47 -5
  194. package/dist/utils/timersUtil.js +13 -0
  195. package/dist/utils/urlUtil.js +8 -0
  196. package/dist/utils/zod.js +12 -3
  197. package/docs/docs/_clisettings.mdx +0 -1
  198. package/docs/docs/cmd/cli/cli-doctor.mdx +24 -23
  199. package/docs/docs/cmd/entra/administrativeunit/administrativeunit-add.mdx +0 -6
  200. package/docs/docs/cmd/entra/administrativeunit/administrativeunit-get.mdx +0 -6
  201. package/docs/docs/cmd/entra/administrativeunit/administrativeunit-list.mdx +0 -6
  202. package/docs/docs/cmd/entra/administrativeunit/administrativeunit-member-add.mdx +0 -6
  203. package/docs/docs/cmd/entra/administrativeunit/administrativeunit-member-get.mdx +0 -6
  204. package/docs/docs/cmd/entra/administrativeunit/administrativeunit-member-list.mdx +0 -6
  205. package/docs/docs/cmd/entra/administrativeunit/administrativeunit-remove.mdx +0 -6
  206. package/docs/docs/cmd/entra/app/app-add.mdx +0 -1
  207. package/docs/docs/cmd/entra/app/app-get.mdx +0 -1
  208. package/docs/docs/cmd/entra/app/app-list.mdx +0 -1
  209. package/docs/docs/cmd/entra/app/app-permission-add.mdx +0 -1
  210. package/docs/docs/cmd/entra/app/app-permission-list.mdx +0 -6
  211. package/docs/docs/cmd/entra/app/app-remove.mdx +0 -1
  212. package/docs/docs/cmd/entra/app/app-role-add.mdx +0 -1
  213. package/docs/docs/cmd/entra/app/app-role-list.mdx +0 -1
  214. package/docs/docs/cmd/entra/app/app-role-remove.mdx +0 -1
  215. package/docs/docs/cmd/entra/app/app-set.mdx +0 -1
  216. package/docs/docs/cmd/entra/approleassignment/approleassignment-add.mdx +0 -6
  217. package/docs/docs/cmd/entra/approleassignment/approleassignment-list.mdx +0 -6
  218. package/docs/docs/cmd/entra/approleassignment/approleassignment-remove.mdx +0 -6
  219. package/docs/docs/cmd/entra/enterpriseapp/enterpriseapp-add.mdx +0 -1
  220. package/docs/docs/cmd/entra/enterpriseapp/enterpriseapp-get.mdx +0 -1
  221. package/docs/docs/cmd/entra/enterpriseapp/enterpriseapp-list.mdx +0 -1
  222. package/docs/docs/cmd/entra/group/group-add.mdx +0 -6
  223. package/docs/docs/cmd/entra/group/group-get.mdx +0 -6
  224. package/docs/docs/cmd/entra/group/group-list.mdx +0 -6
  225. package/docs/docs/cmd/entra/group/group-member-add.mdx +62 -0
  226. package/docs/docs/cmd/entra/group/{group-user-list.mdx → group-member-list.mdx} +14 -20
  227. package/docs/docs/cmd/entra/group/group-member-set.mdx +62 -0
  228. package/docs/docs/cmd/entra/group/group-remove.mdx +0 -6
  229. package/docs/docs/cmd/entra/groupsetting/groupsetting-add.mdx +0 -6
  230. package/docs/docs/cmd/entra/groupsetting/groupsetting-get.mdx +0 -6
  231. package/docs/docs/cmd/entra/groupsetting/groupsetting-list.mdx +0 -6
  232. package/docs/docs/cmd/entra/groupsetting/groupsetting-remove.mdx +0 -6
  233. package/docs/docs/cmd/entra/groupsetting/groupsetting-set.mdx +0 -6
  234. package/docs/docs/cmd/entra/groupsettingtemplate/groupsettingtemplate-get.mdx +0 -6
  235. package/docs/docs/cmd/entra/groupsettingtemplate/groupsettingtemplate-list.mdx +0 -6
  236. package/docs/docs/cmd/entra/license/license-list.mdx +0 -6
  237. package/docs/docs/cmd/entra/m365group/m365group-add.mdx +0 -6
  238. package/docs/docs/cmd/entra/m365group/m365group-conversation-list.mdx +0 -6
  239. package/docs/docs/cmd/entra/m365group/m365group-conversation-post-list.mdx +0 -6
  240. package/docs/docs/cmd/entra/m365group/m365group-get.mdx +0 -6
  241. package/docs/docs/cmd/entra/m365group/m365group-list.mdx +0 -6
  242. package/docs/docs/cmd/entra/m365group/m365group-recyclebinitem-clear.mdx +0 -6
  243. package/docs/docs/cmd/entra/m365group/m365group-recyclebinitem-list.mdx +0 -6
  244. package/docs/docs/cmd/entra/m365group/m365group-recyclebinitem-remove.mdx +0 -6
  245. package/docs/docs/cmd/entra/m365group/m365group-recyclebinitem-restore.mdx +0 -6
  246. package/docs/docs/cmd/entra/m365group/m365group-remove.mdx +0 -6
  247. package/docs/docs/cmd/entra/m365group/m365group-renew.mdx +0 -6
  248. package/docs/docs/cmd/entra/m365group/m365group-report-activitycounts.mdx +0 -6
  249. package/docs/docs/cmd/entra/m365group/m365group-report-activitydetail.mdx +0 -6
  250. package/docs/docs/cmd/entra/m365group/m365group-report-activityfilecounts.mdx +0 -6
  251. package/docs/docs/cmd/entra/m365group/m365group-report-activitygroupcounts.mdx +2 -8
  252. package/docs/docs/cmd/entra/m365group/m365group-report-activitystorage.mdx +3 -9
  253. package/docs/docs/cmd/entra/m365group/m365group-set.mdx +38 -23
  254. package/docs/docs/cmd/entra/m365group/m365group-teamify.mdx +5 -11
  255. package/docs/docs/cmd/entra/m365group/m365group-user-add.mdx +5 -14
  256. package/docs/docs/cmd/entra/m365group/m365group-user-list.mdx +0 -12
  257. package/docs/docs/cmd/entra/m365group/m365group-user-remove.mdx +26 -21
  258. package/docs/docs/cmd/entra/m365group/m365group-user-set.mdx +4 -17
  259. package/docs/docs/cmd/entra/oauth2grant/oauth2grant-add.mdx +3 -9
  260. package/docs/docs/cmd/entra/oauth2grant/oauth2grant-list.mdx +1 -7
  261. package/docs/docs/cmd/entra/oauth2grant/oauth2grant-remove.mdx +4 -10
  262. package/docs/docs/cmd/entra/oauth2grant/oauth2grant-set.mdx +3 -9
  263. package/docs/docs/cmd/entra/policy/policy-list.mdx +3 -9
  264. package/docs/docs/cmd/entra/siteclassification/siteclassification-disable.mdx +3 -9
  265. package/docs/docs/cmd/entra/siteclassification/siteclassification-enable.mdx +7 -13
  266. package/docs/docs/cmd/entra/siteclassification/siteclassification-get.mdx +1 -7
  267. package/docs/docs/cmd/entra/siteclassification/siteclassification-set.mdx +8 -14
  268. package/docs/docs/cmd/entra/user/user-add.mdx +4 -10
  269. package/docs/docs/cmd/entra/user/user-get.mdx +7 -13
  270. package/docs/docs/cmd/entra/user/user-guest-add.mdx +3 -9
  271. package/docs/docs/cmd/entra/user/user-hibp.mdx +2 -8
  272. package/docs/docs/cmd/entra/user/user-license-add.mdx +0 -6
  273. package/docs/docs/cmd/entra/user/user-license-list.mdx +0 -6
  274. package/docs/docs/cmd/entra/user/user-license-remove.mdx +2 -8
  275. package/docs/docs/cmd/entra/user/user-list.mdx +1 -7
  276. package/docs/docs/cmd/entra/user/user-password-validate.mdx +1 -7
  277. package/docs/docs/cmd/entra/user/user-recyclebinitem-clear.mdx +2 -8
  278. package/docs/docs/cmd/entra/user/user-recyclebinitem-list.mdx +0 -6
  279. package/docs/docs/cmd/entra/user/user-recyclebinitem-remove.mdx +2 -8
  280. package/docs/docs/cmd/entra/user/user-recyclebinitem-restore.mdx +0 -6
  281. package/docs/docs/cmd/entra/user/user-registrationdetails-list.mdx +7 -13
  282. package/docs/docs/cmd/entra/user/user-remove.mdx +2 -8
  283. package/docs/docs/cmd/entra/user/user-set.mdx +0 -6
  284. package/docs/docs/cmd/entra/user/user-signin-list.mdx +9 -15
  285. package/docs/docs/cmd/external/item/item-add.mdx +3 -3
  286. package/docs/docs/cmd/file/file-move.mdx +79 -0
  287. package/docs/docs/cmd/flow/recyclebinitem/recyclebinitem-list.mdx +132 -0
  288. package/docs/docs/cmd/flow/recyclebinitem/recyclebinitem-restore.mdx +55 -0
  289. package/docs/docs/cmd/login.mdx +9 -0
  290. package/docs/docs/cmd/setup.mdx +1 -3
  291. package/docs/docs/cmd/spfx/project/project-upgrade.mdx +1 -1
  292. package/docs/docs/cmd/spo/cdn/cdn-get.mdx +1 -1
  293. package/docs/docs/cmd/spo/cdn/cdn-origin-add.mdx +1 -1
  294. package/docs/docs/cmd/spo/cdn/cdn-origin-list.mdx +1 -1
  295. package/docs/docs/cmd/spo/cdn/cdn-origin-remove.mdx +1 -1
  296. package/docs/docs/cmd/spo/cdn/cdn-policy-list.mdx +1 -1
  297. package/docs/docs/cmd/spo/cdn/cdn-policy-set.mdx +1 -1
  298. package/docs/docs/cmd/spo/contenttype/contenttype-field-remove.mdx +7 -7
  299. package/docs/docs/cmd/spo/contenttype/contenttype-field-set.mdx +2 -2
  300. package/docs/docs/cmd/spo/externaluser/externaluser-list.mdx +1 -1
  301. package/docs/docs/cmd/spo/file/file-move.mdx +116 -11
  302. package/docs/docs/cmd/spo/file/file-remove.mdx +13 -4
  303. package/docs/docs/cmd/spo/folder/folder-copy.mdx +84 -13
  304. package/docs/docs/cmd/spo/folder/folder-move.mdx +84 -13
  305. package/docs/docs/cmd/spo/folder/folder-sharinglink-add.mdx +125 -0
  306. package/docs/docs/cmd/spo/folder/folder-sharinglink-clear.mdx +50 -0
  307. package/docs/docs/cmd/spo/folder/folder-sharinglink-remove.mdx +50 -0
  308. package/docs/docs/cmd/spo/group/group-member-add.mdx +8 -14
  309. package/docs/docs/cmd/spo/group/group-member-remove.mdx +5 -11
  310. package/docs/docs/cmd/spo/hidedefaultthemes/hidedefaultthemes-get.mdx +1 -1
  311. package/docs/docs/cmd/spo/hidedefaultthemes/hidedefaultthemes-set.mdx +1 -1
  312. package/docs/docs/cmd/spo/homesite/homesite-remove.mdx +1 -1
  313. package/docs/docs/cmd/spo/knowledgehub/knowledgehub-get.mdx +1 -1
  314. package/docs/docs/cmd/spo/knowledgehub/knowledgehub-remove.mdx +1 -1
  315. package/docs/docs/cmd/spo/knowledgehub/knowledgehub-set.mdx +1 -1
  316. package/docs/docs/cmd/spo/list/list-remove.mdx +10 -1
  317. package/docs/docs/cmd/spo/orgassetslibrary/orgassetslibrary-add.mdx +1 -1
  318. package/docs/docs/cmd/spo/orgassetslibrary/orgassetslibrary-list.mdx +1 -1
  319. package/docs/docs/cmd/spo/orgassetslibrary/orgassetslibrary-remove.mdx +1 -1
  320. package/docs/docs/cmd/spo/orgnewssite/orgnewssite-list.mdx +1 -1
  321. package/docs/docs/cmd/spo/orgnewssite/orgnewssite-remove.mdx +1 -1
  322. package/docs/docs/cmd/spo/orgnewssite/orgnewssite-set.mdx +1 -1
  323. package/docs/docs/cmd/spo/page/page-remove.mdx +30 -12
  324. package/docs/docs/cmd/spo/page/page-section-add.mdx +57 -2
  325. package/docs/docs/cmd/spo/site/site-admin-add.mdx +67 -0
  326. package/docs/docs/cmd/spo/site/site-admin-list.mdx +64 -12
  327. package/docs/docs/cmd/spo/site/site-admin-remove.mdx +67 -0
  328. package/docs/docs/cmd/spo/site/site-appcatalog-add.mdx +1 -1
  329. package/docs/docs/cmd/spo/site/site-appcatalog-remove.mdx +1 -1
  330. package/docs/docs/cmd/spo/site/site-commsite-enable.mdx +1 -1
  331. package/docs/docs/cmd/spo/site/site-list.mdx +6 -4
  332. package/docs/docs/cmd/spo/site/site-set.mdx +1 -1
  333. package/docs/docs/cmd/spo/site/site-sharingpermission-set.mdx +58 -0
  334. package/docs/docs/cmd/spo/sitescript/sitescript-get.mdx +14 -1
  335. package/docs/docs/cmd/spo/storageentity/storageentity-remove.mdx +1 -1
  336. package/docs/docs/cmd/spo/storageentity/storageentity-set.mdx +1 -1
  337. package/docs/docs/cmd/spo/tenant/tenant-appcatalog-add.mdx +1 -1
  338. package/docs/docs/cmd/spo/tenant/tenant-appcatalogurl-get.mdx +1 -1
  339. package/docs/docs/cmd/spo/tenant/tenant-recyclebinitem-list.mdx +1 -1
  340. package/docs/docs/cmd/spo/tenant/tenant-recyclebinitem-remove.mdx +1 -1
  341. package/docs/docs/cmd/spo/tenant/tenant-settings-list.mdx +1 -1
  342. package/docs/docs/cmd/spo/tenant/tenant-site-membership-list.mdx +122 -0
  343. package/docs/docs/cmd/spo/{site/site-rename.mdx → tenant/tenant-site-rename.mdx} +7 -7
  344. package/docs/docs/cmd/spo/theme/theme-apply.mdx +1 -1
  345. package/docs/docs/cmd/spo/theme/theme-get.mdx +1 -1
  346. package/docs/docs/cmd/spo/theme/theme-list.mdx +1 -1
  347. package/docs/docs/cmd/spo/theme/theme-remove.mdx +1 -1
  348. package/docs/docs/cmd/spo/theme/theme-set.mdx +1 -1
  349. package/docs/docs/cmd/spo/user/user-ensure.mdx +2 -5
  350. package/docs/docs/cmd/spo/user/user-get.mdx +35 -9
  351. package/docs/docs/cmd/spp/contentcenter/contentcenter-list.mdx +287 -0
  352. package/docs/docs/cmd/spp/model/model-list.mdx +140 -0
  353. package/docs/docs/cmd/teams/meeting/meeting-transcript-get.mdx +132 -0
  354. package/docs/docs/cmd/teams/tab/tab-list.mdx +1 -2
  355. package/docs/docs/cmd/viva/engage/engage-community-list.mdx +81 -0
  356. package/npm-shrinkwrap.json +2215 -717
  357. package/package.json +20 -21
  358. package/dist/m365/cli/commands/cli-reconsent.js +0 -29
  359. package/dist/m365/entra/aadCommands.js +0 -89
  360. package/docs/docs/cmd/cli/cli-reconsent.mdx +0 -62
  361. package/docs/docs/cmd/entra/group/group-user-add.mdx +0 -62
  362. package/docs/docs/cmd/entra/group/group-user-set.mdx +0 -62
@@ -1,5 +1,4 @@
1
1
  import PeriodBasedReport from '../../../base/PeriodBasedReport.js';
2
- import aadCommands from '../../aadCommands.js';
3
2
  import commands from '../../commands.js';
4
3
  class M365GroupReportActivityFileCountsCommand extends PeriodBasedReport {
5
4
  get name() {
@@ -8,9 +7,6 @@ class M365GroupReportActivityFileCountsCommand extends PeriodBasedReport {
8
7
  get description() {
9
8
  return 'Get the total number of files and how many of them were active across all group sites associated with an Microsoft 365 Group';
10
9
  }
11
- alias() {
12
- return [aadCommands.M365GROUP_REPORT_ACTIVITYFILECOUNTS];
13
- }
14
10
  get usageEndpoint() {
15
11
  return 'getOffice365GroupsActivityFileCounts';
16
12
  }
@@ -1,5 +1,4 @@
1
1
  import PeriodBasedReport from '../../../base/PeriodBasedReport.js';
2
- import aadCommands from '../../aadCommands.js';
3
2
  import commands from '../../commands.js';
4
3
  class M365GroupReportActivityGroupCountsCommand extends PeriodBasedReport {
5
4
  get name() {
@@ -8,9 +7,6 @@ class M365GroupReportActivityGroupCountsCommand extends PeriodBasedReport {
8
7
  get description() {
9
8
  return 'Get the daily total number of groups and how many of them were active based on email conversations, Viva Engage posts, and SharePoint file activities';
10
9
  }
11
- alias() {
12
- return [aadCommands.M365GROUP_REPORT_ACTIVITYGROUPCOUNTS];
13
- }
14
10
  get usageEndpoint() {
15
11
  return 'getOffice365GroupsActivityGroupCounts';
16
12
  }
@@ -1,5 +1,4 @@
1
1
  import PeriodBasedReport from '../../../base/PeriodBasedReport.js';
2
- import aadCommands from '../../aadCommands.js';
3
2
  import commands from '../../commands.js';
4
3
  class M365GroupReportActivityStorageCommand extends PeriodBasedReport {
5
4
  get name() {
@@ -8,9 +7,6 @@ class M365GroupReportActivityStorageCommand extends PeriodBasedReport {
8
7
  get description() {
9
8
  return 'Get the total storage used across all group mailboxes and group sites';
10
9
  }
11
- alias() {
12
- return [aadCommands.M365GROUP_REPORT_ACTIVITYSTORAGE];
13
- }
14
10
  get usageEndpoint() {
15
11
  return 'getOffice365GroupsActivityStorage';
16
12
  }
@@ -3,7 +3,7 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
3
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
4
  return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
5
5
  };
6
- var _EntraM365GroupSetCommand_instances, _EntraM365GroupSetCommand_initTelemetry, _EntraM365GroupSetCommand_initOptions, _EntraM365GroupSetCommand_initTypes, _EntraM365GroupSetCommand_initValidators;
6
+ var _EntraM365GroupSetCommand_instances, _EntraM365GroupSetCommand_initTelemetry, _EntraM365GroupSetCommand_initOptions, _EntraM365GroupSetCommand_initOptionSets, _EntraM365GroupSetCommand_initTypes, _EntraM365GroupSetCommand_initValidators;
7
7
  import { setTimeout } from 'timers/promises';
8
8
  import fs from 'fs';
9
9
  import path from 'path';
@@ -12,9 +12,11 @@ import { validation } from '../../../../utils/validation.js';
12
12
  import GraphCommand from '../../../base/GraphCommand.js';
13
13
  import commands from '../../commands.js';
14
14
  import { entraGroup } from '../../../../utils/entraGroup.js';
15
- import aadCommands from '../../aadCommands.js';
16
15
  import { accessToken } from '../../../../utils/accessToken.js';
17
16
  import auth from '../../../../Auth.js';
17
+ import { entraUser } from '../../../../utils/entraUser.js';
18
+ import { formatting } from '../../../../utils/formatting.js';
19
+ import { odata } from '../../../../utils/odata.js';
18
20
  class EntraM365GroupSetCommand extends GraphCommand {
19
21
  get name() {
20
22
  return commands.M365GROUP_SET;
@@ -22,41 +24,39 @@ class EntraM365GroupSetCommand extends GraphCommand {
22
24
  get description() {
23
25
  return 'Updates Microsoft 365 Group properties';
24
26
  }
25
- alias() {
26
- return [aadCommands.M365GROUP_SET];
27
- }
28
27
  constructor() {
29
28
  super();
30
29
  _EntraM365GroupSetCommand_instances.add(this);
31
30
  this.pollingInterval = 500;
32
31
  __classPrivateFieldGet(this, _EntraM365GroupSetCommand_instances, "m", _EntraM365GroupSetCommand_initTelemetry).call(this);
33
32
  __classPrivateFieldGet(this, _EntraM365GroupSetCommand_instances, "m", _EntraM365GroupSetCommand_initOptions).call(this);
34
- __classPrivateFieldGet(this, _EntraM365GroupSetCommand_instances, "m", _EntraM365GroupSetCommand_initTypes).call(this);
35
33
  __classPrivateFieldGet(this, _EntraM365GroupSetCommand_instances, "m", _EntraM365GroupSetCommand_initValidators).call(this);
34
+ __classPrivateFieldGet(this, _EntraM365GroupSetCommand_instances, "m", _EntraM365GroupSetCommand_initOptionSets).call(this);
35
+ __classPrivateFieldGet(this, _EntraM365GroupSetCommand_instances, "m", _EntraM365GroupSetCommand_initTypes).call(this);
36
36
  }
37
37
  async commandAction(logger, args) {
38
- await this.showDeprecationWarning(logger, aadCommands.M365GROUP_SET, commands.M365GROUP_SET);
39
38
  try {
40
39
  if ((args.options.allowExternalSenders !== undefined || args.options.autoSubscribeNewMembers !== undefined) && accessToken.isAppOnlyAccessToken(auth.connection.accessTokens[auth.defaultResource].accessToken)) {
41
40
  throw `Option 'allowExternalSenders' and 'autoSubscribeNewMembers' can only be used when using delegated permissions.`;
42
41
  }
43
- const isUnifiedGroup = await entraGroup.isUnifiedGroup(args.options.id);
42
+ const groupId = args.options.id || await entraGroup.getGroupIdByDisplayName(args.options.displayName);
43
+ const isUnifiedGroup = await entraGroup.isUnifiedGroup(groupId);
44
44
  if (!isUnifiedGroup) {
45
- throw Error(`Specified group with id '${args.options.id}' is not a Microsoft 365 group.`);
45
+ throw Error(`Specified group with id '${groupId}' is not a Microsoft 365 group.`);
46
46
  }
47
47
  if (this.verbose) {
48
- await logger.logToStderr(`Updating Microsoft 365 Group ${args.options.id}...`);
48
+ await logger.logToStderr(`Updating Microsoft 365 Group ${args.options.id || args.options.displayName}...`);
49
49
  }
50
- if (args.options.displayName || args.options.description !== undefined || args.options.isPrivate !== undefined) {
50
+ if (args.options.newDisplayName || args.options.description !== undefined || args.options.isPrivate !== undefined) {
51
51
  const update = {
52
- displayName: args.options.displayName,
52
+ displayName: args.options.newDisplayName,
53
53
  description: args.options.description !== '' ? args.options.description : null
54
54
  };
55
55
  if (args.options.isPrivate !== undefined) {
56
56
  update.visibility = args.options.isPrivate ? 'Private' : 'Public';
57
57
  }
58
58
  const requestOptions = {
59
- url: `${this.resource}/v1.0/groups/${args.options.id}`,
59
+ url: `${this.resource}/v1.0/groups/${groupId}`,
60
60
  headers: {
61
61
  'accept': 'application/json;odata.metadata=none'
62
62
  },
@@ -74,7 +74,7 @@ class EntraM365GroupSetCommand extends GraphCommand {
74
74
  hideFromOutlookClients: args.options.hideFromOutlookClients
75
75
  };
76
76
  const requestOptions = {
77
- url: `${this.resource}/v1.0/groups/${args.options.id}`,
77
+ url: `${this.resource}/v1.0/groups/${groupId}`,
78
78
  headers: {
79
79
  accept: 'application/json;odata.metadata=none'
80
80
  },
@@ -89,7 +89,7 @@ class EntraM365GroupSetCommand extends GraphCommand {
89
89
  await logger.logToStderr(`Setting group logo ${fullPath}...`);
90
90
  }
91
91
  const requestOptions = {
92
- url: `${this.resource}/v1.0/groups/${args.options.id}/photo/$value`,
92
+ url: `${this.resource}/v1.0/groups/${groupId}/photo/$value`,
93
93
  headers: {
94
94
  'content-type': this.getImageContentType(fullPath)
95
95
  },
@@ -100,59 +100,13 @@ class EntraM365GroupSetCommand extends GraphCommand {
100
100
  else if (this.debug) {
101
101
  await logger.logToStderr('logoPath not set. Skipping');
102
102
  }
103
- if (args.options.owners) {
104
- const owners = args.options.owners.split(',').map(o => o.trim());
105
- if (this.verbose) {
106
- await logger.logToStderr('Retrieving user information to set group owners...');
107
- }
108
- const requestOptions = {
109
- url: `${this.resource}/v1.0/users?$filter=${owners.map(o => `userPrincipalName eq '${o}'`).join(' or ')}&$select=id`,
110
- headers: {
111
- 'content-type': 'application/json'
112
- },
113
- responseType: 'json'
114
- };
115
- const res = await request.get(requestOptions);
116
- await Promise.all(res.value.map(u => request.post({
117
- url: `${this.resource}/v1.0/groups/${args.options.id}/owners/$ref`,
118
- headers: {
119
- 'content-type': 'application/json'
120
- },
121
- responseType: 'json',
122
- data: {
123
- "@odata.id": `https://graph.microsoft.com/v1.0/users/${u.id}`
124
- }
125
- })));
126
- }
127
- else if (this.debug) {
128
- await logger.logToStderr('Owners not set. Skipping');
129
- }
130
- if (args.options.members) {
131
- const members = args.options.members.split(',').map(o => o.trim());
132
- if (this.verbose) {
133
- await logger.logToStderr('Retrieving user information to set group members...');
134
- }
135
- const requestOptions = {
136
- url: `${this.resource}/v1.0/users?$filter=${members.map(o => `userPrincipalName eq '${o}'`).join(' or ')}&$select=id`,
137
- headers: {
138
- 'content-type': 'application/json'
139
- },
140
- responseType: 'json'
141
- };
142
- const res = await request.get(requestOptions);
143
- await Promise.all(res.value.map(u => request.post({
144
- url: `${this.resource}/v1.0/groups/${args.options.id}/members/$ref`,
145
- headers: {
146
- 'content-type': 'application/json'
147
- },
148
- responseType: 'json',
149
- data: {
150
- "@odata.id": `https://graph.microsoft.com/v1.0/users/${u.id}`
151
- }
152
- })));
103
+ const ownerIds = await this.getUserIds(logger, args.options.ownerIds, args.options.ownerUserNames);
104
+ const memberIds = await this.getUserIds(logger, args.options.memberIds, args.options.memberUserNames);
105
+ if (ownerIds.length > 0) {
106
+ await this.updateUsers(logger, groupId, 'owners', ownerIds);
153
107
  }
154
- else if (this.debug) {
155
- await logger.logToStderr('Members not set. Skipping');
108
+ if (memberIds.length > 0) {
109
+ await this.updateUsers(logger, groupId, 'members', memberIds);
156
110
  }
157
111
  }
158
112
  catch (err) {
@@ -184,14 +138,99 @@ class EntraM365GroupSetCommand extends GraphCommand {
184
138
  return 'image/jpeg';
185
139
  }
186
140
  }
141
+ async getUserIds(logger, userIds, userNames) {
142
+ if (userIds) {
143
+ return formatting.splitAndTrim(userIds);
144
+ }
145
+ if (userNames) {
146
+ if (this.verbose) {
147
+ await logger.logToStderr(`Retrieving user IDs...`);
148
+ }
149
+ return entraUser.getUserIdsByUpns(formatting.splitAndTrim(userNames));
150
+ }
151
+ return [];
152
+ }
153
+ async updateUsers(logger, groupId, role, userIds) {
154
+ const groupUsers = await odata.getAllItems(`${this.resource}/v1.0/groups/${groupId}/${role}/microsoft.graph.user?$select=id`);
155
+ const userIdsToAdd = userIds.filter(userId => !groupUsers.some(groupUser => groupUser.id === userId));
156
+ const userIdsToRemove = groupUsers.filter(groupUser => !userIds.some(userId => groupUser.id === userId)).map(user => user.id);
157
+ if (this.verbose) {
158
+ await logger.logToStderr(`Adding ${userIdsToAdd.length} ${role}...`);
159
+ }
160
+ for (let i = 0; i < userIdsToAdd.length; i += 400) {
161
+ const userIdsBatch = userIdsToAdd.slice(i, i + 400);
162
+ const batchRequestOptions = this.getBatchRequestOptions();
163
+ // only 20 requests per one batch are allowed
164
+ for (let j = 0; j < userIdsBatch.length; j += 20) {
165
+ // only 20 users can be added in one request
166
+ const userIdsChunk = userIdsBatch.slice(j, j + 20);
167
+ batchRequestOptions.data.requests.push({
168
+ id: j + 1,
169
+ method: 'PATCH',
170
+ url: `/groups/${groupId}`,
171
+ headers: {
172
+ 'content-type': 'application/json;odata.metadata=none',
173
+ accept: 'application/json;odata.metadata=none'
174
+ },
175
+ body: {
176
+ [`${role}@odata.bind`]: userIdsChunk.map(u => `${this.resource}/v1.0/directoryObjects/${u}`)
177
+ }
178
+ });
179
+ }
180
+ const res = await request.post(batchRequestOptions);
181
+ for (const response of res.responses) {
182
+ if (response.status !== 204) {
183
+ throw response.body;
184
+ }
185
+ }
186
+ }
187
+ if (this.verbose) {
188
+ await logger.logToStderr(`Removing ${userIdsToRemove.length} ${role}...`);
189
+ }
190
+ for (let i = 0; i < userIdsToRemove.length; i += 20) {
191
+ const userIdsBatch = userIdsToRemove.slice(i, i + 20);
192
+ const batchRequestOptions = this.getBatchRequestOptions();
193
+ userIdsBatch.map(userId => {
194
+ batchRequestOptions.data.requests.push({
195
+ id: userId,
196
+ method: 'DELETE',
197
+ url: `/groups/${groupId}/${role}/${userId}/$ref`
198
+ });
199
+ });
200
+ const res = await request.post(batchRequestOptions);
201
+ for (const response of res.responses) {
202
+ if (response.status !== 204) {
203
+ throw response.body;
204
+ }
205
+ }
206
+ }
207
+ }
208
+ getBatchRequestOptions() {
209
+ const requestOptions = {
210
+ url: `${this.resource}/v1.0/$batch`,
211
+ headers: {
212
+ 'content-type': 'application/json;odata.metadata=none',
213
+ accept: 'application/json;odata.metadata=none'
214
+ },
215
+ responseType: 'json',
216
+ data: {
217
+ requests: []
218
+ }
219
+ };
220
+ return requestOptions;
221
+ }
187
222
  }
188
223
  _EntraM365GroupSetCommand_instances = new WeakSet(), _EntraM365GroupSetCommand_initTelemetry = function _EntraM365GroupSetCommand_initTelemetry() {
189
224
  this.telemetry.push((args) => {
190
225
  Object.assign(this.telemetryProperties, {
226
+ id: typeof args.options.id !== 'undefined',
191
227
  displayName: typeof args.options.displayName !== 'undefined',
228
+ newDisplayName: typeof args.options.newDisplayName !== 'undefined',
192
229
  description: typeof args.options.description !== 'undefined',
193
- owners: typeof args.options.owners !== 'undefined',
194
- members: typeof args.options.members !== 'undefined',
230
+ ownerIds: typeof args.options.ownerIds !== 'undefined',
231
+ ownerUserNames: typeof args.options.ownerUserNames !== 'undefined',
232
+ memberIds: typeof args.options.memberIds !== 'undefined',
233
+ memberUserNames: typeof args.options.memberUserNames !== 'undefined',
195
234
  isPrivate: !!args.options.isPrivate,
196
235
  logoPath: typeof args.options.logoPath !== 'undefined',
197
236
  allowExternalSenders: !!args.options.allowExternalSenders,
@@ -202,15 +241,21 @@ _EntraM365GroupSetCommand_instances = new WeakSet(), _EntraM365GroupSetCommand_i
202
241
  });
203
242
  }, _EntraM365GroupSetCommand_initOptions = function _EntraM365GroupSetCommand_initOptions() {
204
243
  this.options.unshift({
205
- option: '-i, --id <id>'
244
+ option: '-i, --id [id]'
206
245
  }, {
207
246
  option: '-n, --displayName [displayName]'
247
+ }, {
248
+ option: '--newDisplayName [newDisplayName]'
208
249
  }, {
209
250
  option: '-d, --description [description]'
210
251
  }, {
211
- option: '--owners [owners]'
252
+ option: '--ownerIds [ownerIds]'
212
253
  }, {
213
- option: '--members [members]'
254
+ option: '--ownerUserNames [ownerUserNames]'
255
+ }, {
256
+ option: '--memberIds [memberIds]'
257
+ }, {
258
+ option: '--memberUserNames [memberUserNames]'
214
259
  }, {
215
260
  option: '--isPrivate [isPrivate]',
216
261
  autocomplete: ['true', 'false']
@@ -229,36 +274,64 @@ _EntraM365GroupSetCommand_instances = new WeakSet(), _EntraM365GroupSetCommand_i
229
274
  option: '--hideFromOutlookClients [hideFromOutlookClients]',
230
275
  autocomplete: ['true', 'false']
231
276
  });
277
+ }, _EntraM365GroupSetCommand_initOptionSets = function _EntraM365GroupSetCommand_initOptionSets() {
278
+ this.optionSets.push({ options: ['id', 'displayName'] });
279
+ this.optionSets.push({
280
+ options: ['ownerIds', 'ownerUserNames'],
281
+ runsWhen: (args) => {
282
+ return args.options.ownerIds !== undefined || args.options.ownerUserNames !== undefined;
283
+ }
284
+ });
285
+ this.optionSets.push({
286
+ options: ['memberIds', 'memberUserNames'],
287
+ runsWhen: (args) => {
288
+ return args.options.memberIds !== undefined || args.options.memberUserNames !== undefined;
289
+ }
290
+ });
232
291
  }, _EntraM365GroupSetCommand_initTypes = function _EntraM365GroupSetCommand_initTypes() {
233
292
  this.types.boolean.push('isPrivate', 'allowEternalSenders', 'autoSubscribeNewMembers', 'hideFromAddressLists', 'hideFromOutlookClients');
234
- this.types.string.push('id', 'displayName', 'description', 'owners', 'members', 'logoPath');
293
+ this.types.string.push('id', 'displayName', 'newDisplayName', 'description', 'ownerIds', 'ownerUserNames', 'memberIds', 'memberUserNames', 'logoPath');
235
294
  }, _EntraM365GroupSetCommand_initValidators = function _EntraM365GroupSetCommand_initValidators() {
236
295
  this.validators.push(async (args) => {
237
- if (!args.options.displayName &&
296
+ if (!args.options.newDisplayName &&
238
297
  args.options.description === undefined &&
239
- !args.options.members &&
240
- !args.options.owners &&
298
+ args.options.ownerIds === undefined &&
299
+ args.options.ownerUserNames === undefined &&
300
+ args.options.memberIds === undefined &&
301
+ args.options.memberUserNames === undefined &&
241
302
  args.options.isPrivate === undefined &&
242
- !args.options.logoPath &&
303
+ args.options.logoPath === undefined &&
243
304
  args.options.allowExternalSenders === undefined &&
244
305
  args.options.autoSubscribeNewMembers === undefined &&
245
306
  args.options.hideFromAddressLists === undefined &&
246
307
  args.options.hideFromOutlookClients === undefined) {
247
308
  return 'Specify at least one option to update.';
248
309
  }
249
- if (!validation.isValidGuid(args.options.id)) {
310
+ if (args.options.id && !validation.isValidGuid(args.options.id)) {
250
311
  return `${args.options.id} is not a valid GUID`;
251
312
  }
252
- if (args.options.owners) {
253
- const isValidArray = validation.isValidUserPrincipalNameArray(args.options.owners);
254
- if (isValidArray !== true) {
255
- return `Option 'owners' contains one or more invalid UPNs: ${isValidArray}.`;
313
+ if (args.options.ownerIds) {
314
+ const isValidGUIDArrayResult = validation.isValidGuidArray(args.options.ownerIds);
315
+ if (isValidGUIDArrayResult !== true) {
316
+ return `The following GUIDs are invalid for the option 'ownerIds': ${isValidGUIDArrayResult}.`;
317
+ }
318
+ }
319
+ if (args.options.ownerUserNames) {
320
+ const isValidUPNArrayResult = validation.isValidUserPrincipalNameArray(args.options.ownerUserNames);
321
+ if (isValidUPNArrayResult !== true) {
322
+ return `The following user principal names are invalid for the option 'ownerUserNames': ${isValidUPNArrayResult}.`;
323
+ }
324
+ }
325
+ if (args.options.memberIds) {
326
+ const isValidGUIDArrayResult = validation.isValidGuidArray(args.options.memberIds);
327
+ if (isValidGUIDArrayResult !== true) {
328
+ return `The following GUIDs are invalid for the option 'memberIds': ${isValidGUIDArrayResult}.`;
256
329
  }
257
330
  }
258
- if (args.options.members) {
259
- const isValidArray = validation.isValidUserPrincipalNameArray(args.options.members);
260
- if (isValidArray !== true) {
261
- return `Option 'members' contains one or more invalid UPNs: ${isValidArray}.`;
331
+ if (args.options.memberUserNames) {
332
+ const isValidUPNArrayResult = validation.isValidUserPrincipalNameArray(args.options.memberUserNames);
333
+ if (isValidUPNArrayResult !== true) {
334
+ return `The following user principal names are invalid for the option 'memberUserNames': ${isValidUPNArrayResult}.`;
262
335
  }
263
336
  }
264
337
  if (args.options.logoPath) {
@@ -10,7 +10,6 @@ import { entraGroup } from '../../../../utils/entraGroup.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 EntraM365GroupTeamifyCommand extends GraphCommand {
16
15
  get name() {
@@ -19,9 +18,6 @@ class EntraM365GroupTeamifyCommand extends GraphCommand {
19
18
  get description() {
20
19
  return 'Creates a new Microsoft Teams team under existing Microsoft 365 group';
21
20
  }
22
- alias() {
23
- return [aadCommands.M365GROUP_TEAMIFY];
24
- }
25
21
  constructor() {
26
22
  super();
27
23
  _EntraM365GroupTeamifyCommand_instances.add(this);
@@ -54,7 +50,6 @@ class EntraM365GroupTeamifyCommand extends GraphCommand {
54
50
  return groupItem.id;
55
51
  }
56
52
  async commandAction(logger, args) {
57
- await this.showDeprecationWarning(logger, aadCommands.M365GROUP_TEAMIFY, commands.M365GROUP_TEAMIFY);
58
53
  try {
59
54
  const groupId = await this.getGroupId(args.options);
60
55
  const isUnifiedGroup = await entraGroup.isUnifiedGroup(groupId);
@@ -9,8 +9,6 @@ import { entraGroup } from '../../../../utils/entraGroup.js';
9
9
  import { validation } from '../../../../utils/validation.js';
10
10
  import { formatting } from '../../../../utils/formatting.js';
11
11
  import GraphCommand from '../../../base/GraphCommand.js';
12
- import teamsCommands from '../../../teams/commands.js';
13
- import aadCommands from '../../aadCommands.js';
14
12
  import { entraUser } from '../../../../utils/entraUser.js';
15
13
  import commands from '../../commands.js';
16
14
  class EntraM365GroupUserAddCommand extends GraphCommand {
@@ -20,9 +18,6 @@ class EntraM365GroupUserAddCommand extends GraphCommand {
20
18
  get description() {
21
19
  return 'Adds user to specified Microsoft 365 Group or Microsoft Teams team';
22
20
  }
23
- alias() {
24
- return [teamsCommands.USER_ADD, aadCommands.M365GROUP_USER_ADD];
25
- }
26
21
  constructor() {
27
22
  super();
28
23
  _EntraM365GroupUserAddCommand_instances.add(this);
@@ -34,20 +29,15 @@ class EntraM365GroupUserAddCommand extends GraphCommand {
34
29
  __classPrivateFieldGet(this, _EntraM365GroupUserAddCommand_instances, "m", _EntraM365GroupUserAddCommand_initTypes).call(this);
35
30
  }
36
31
  async commandAction(logger, args) {
37
- await this.showDeprecationWarning(logger, aadCommands.M365GROUP_USER_ADD, commands.M365GROUP_USER_ADD);
38
- if (args.options.userName) {
39
- await this.warn(logger, `Option 'userName' is deprecated. Please use 'ids' or 'userNames' instead.`);
40
- }
41
32
  try {
42
- const userNames = args.options.userNames || args.options.userName;
43
33
  const providedGroupId = await this.getGroupId(logger, args);
44
34
  const isUnifiedGroup = await entraGroup.isUnifiedGroup(providedGroupId);
45
35
  if (!isUnifiedGroup) {
46
36
  throw Error(`Specified group with id '${providedGroupId}' is not a Microsoft 365 group.`);
47
37
  }
48
- const userIds = await this.getUserIds(logger, args.options.ids, userNames);
38
+ const userIds = await this.getUserIds(logger, args.options.ids, args.options.userNames);
49
39
  if (this.verbose) {
50
- await logger.logToStderr(`Adding user(s) ${args.options.ids || userNames} to group ${args.options.groupId || args.options.groupName || args.options.teamId || args.options.teamName}...`);
40
+ await logger.logToStderr(`Adding user(s) ${args.options.ids || args.options.userNames} to group ${args.options.groupId || args.options.groupName || args.options.teamId || args.options.teamName}...`);
51
41
  }
52
42
  await this.addUsers(providedGroupId, userIds, args.options.role);
53
43
  }
@@ -122,14 +112,11 @@ _EntraM365GroupUserAddCommand_instances = new WeakSet(), _EntraM365GroupUserAddC
122
112
  teamName: typeof args.options.teamName !== 'undefined',
123
113
  groupName: typeof args.options.groupName !== 'undefined',
124
114
  ids: typeof args.options.ids !== 'undefined',
125
- userNames: typeof args.options.userNames !== 'undefined',
126
- userName: typeof args.options.userName !== 'undefined'
115
+ userNames: typeof args.options.userNames !== 'undefined'
127
116
  });
128
117
  });
129
118
  }, _EntraM365GroupUserAddCommand_initOptions = function _EntraM365GroupUserAddCommand_initOptions() {
130
119
  this.options.unshift({
131
- option: '-n, --userName [userName]'
132
- }, {
133
120
  option: '--ids [ids]'
134
121
  }, {
135
122
  option: '--userNames [userNames]'
@@ -172,9 +159,9 @@ _EntraM365GroupUserAddCommand_instances = new WeakSet(), _EntraM365GroupUserAddC
172
159
  });
173
160
  }, _EntraM365GroupUserAddCommand_initOptionSets = function _EntraM365GroupUserAddCommand_initOptionSets() {
174
161
  this.optionSets.push({ options: ['groupId', 'groupName', 'teamId', 'teamName'] });
175
- this.optionSets.push({ options: ['userName', 'ids', 'userNames'] });
162
+ this.optionSets.push({ options: ['ids', 'userNames'] });
176
163
  }, _EntraM365GroupUserAddCommand_initTypes = function _EntraM365GroupUserAddCommand_initTypes() {
177
- this.types.string.push('userName', 'ids', 'userNames', 'groupId', 'groupName', 'teamId', 'teamName', 'role');
164
+ this.types.string.push('ids', 'userNames', 'groupId', 'groupName', 'teamId', 'teamName', 'role');
178
165
  };
179
166
  export default new EntraM365GroupUserAddCommand();
180
167
  //# sourceMappingURL=m365group-user-add.js.map
@@ -9,7 +9,6 @@ import { validation } from '../../../../utils/validation.js';
9
9
  import GraphCommand from '../../../base/GraphCommand.js';
10
10
  import commands from '../../commands.js';
11
11
  import { entraGroup } from '../../../../utils/entraGroup.js';
12
- import aadCommands from '../../aadCommands.js';
13
12
  class EntraM365GroupUserListCommand extends GraphCommand {
14
13
  get name() {
15
14
  return commands.M365GROUP_USER_LIST;
@@ -17,9 +16,6 @@ class EntraM365GroupUserListCommand extends GraphCommand {
17
16
  get description() {
18
17
  return "Lists users for the specified Microsoft 365 group";
19
18
  }
20
- alias() {
21
- return [aadCommands.M365GROUP_USER_LIST];
22
- }
23
19
  constructor() {
24
20
  super();
25
21
  _EntraM365GroupUserListCommand_instances.add(this);
@@ -29,7 +25,6 @@ class EntraM365GroupUserListCommand extends GraphCommand {
29
25
  __classPrivateFieldGet(this, _EntraM365GroupUserListCommand_instances, "m", _EntraM365GroupUserListCommand_initValidators).call(this);
30
26
  }
31
27
  async commandAction(logger, args) {
32
- await this.showDeprecationWarning(logger, aadCommands.M365GROUP_USER_LIST, commands.M365GROUP_USER_LIST);
33
28
  try {
34
29
  const groupId = await this.getGroupId(args.options, logger);
35
30
  const isUnifiedGroup = await entraGroup.isUnifiedGroup(groupId);