@pnp/cli-microsoft365 7.0.0-beta.f1037e1 → 7.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (422) hide show
  1. package/.eslintrc.cjs +1 -3
  2. package/README.md +4 -4
  3. package/dist/Auth.js +12 -2
  4. package/dist/Command.js +3 -3
  5. package/dist/GlobalOptions.js +1 -7
  6. package/dist/cli/Cli.js +24 -7
  7. package/dist/m365/aad/commands/app/app-add.js +8 -8
  8. package/dist/m365/aad/commands/app/app-get.js +4 -1
  9. package/dist/m365/aad/commands/app/app-remove.js +3 -1
  10. package/dist/m365/aad/commands/app/app-role-add.js +9 -6
  11. package/dist/m365/aad/commands/app/app-role-list.js +4 -1
  12. package/dist/m365/aad/commands/app/app-role-remove.js +5 -2
  13. package/dist/m365/aad/commands/app/app-set.js +13 -10
  14. package/dist/m365/aad/commands/approleassignment/approleassignment-add.js +11 -6
  15. package/dist/m365/aad/commands/approleassignment/approleassignment-remove.js +4 -4
  16. package/dist/m365/aad/commands/group/group-get.js +4 -4
  17. package/dist/m365/aad/commands/group/group-list.js +1 -23
  18. package/dist/m365/aad/commands/group/group-remove.js +98 -0
  19. package/dist/m365/aad/commands/{o365group/o365group-add.js → m365group/m365group-add.js} +38 -29
  20. package/dist/m365/aad/commands/{o365group/o365group-conversation-list.js → m365group/m365group-conversation-list.js} +15 -10
  21. package/dist/m365/aad/commands/{o365group/o365group-conversation-post-list.js → m365group/m365group-conversation-post-list.js} +18 -14
  22. package/dist/m365/aad/commands/{o365group/o365group-get.js → m365group/m365group-get.js} +14 -10
  23. package/dist/m365/aad/commands/{o365group/o365group-list.js → m365group/m365group-list.js} +13 -28
  24. package/dist/m365/aad/commands/{o365group/o365group-recyclebinitem-clear.js → m365group/m365group-recyclebinitem-clear.js} +15 -15
  25. package/dist/m365/aad/commands/{o365group/o365group-recyclebinitem-list.js → m365group/m365group-recyclebinitem-list.js} +10 -10
  26. package/dist/m365/aad/commands/{o365group/o365group-recyclebinitem-remove.js → m365group/m365group-recyclebinitem-remove.js} +17 -15
  27. package/dist/m365/aad/commands/{o365group/o365group-recyclebinitem-restore.js → m365group/m365group-recyclebinitem-restore.js} +18 -15
  28. package/dist/m365/aad/commands/{o365group/o365group-remove.js → m365group/m365group-remove.js} +17 -12
  29. package/dist/m365/aad/commands/{o365group/o365group-renew.js → m365group/m365group-renew.js} +15 -10
  30. package/dist/m365/aad/commands/{o365group/o365group-report-activitycounts.js → m365group/m365group-report-activitycounts.js} +4 -4
  31. package/dist/m365/aad/commands/{o365group/o365group-report-activitydetail.js → m365group/m365group-report-activitydetail.js} +4 -4
  32. package/dist/m365/aad/commands/{o365group/o365group-report-activityfilecounts.js → m365group/m365group-report-activityfilecounts.js} +4 -4
  33. package/dist/m365/aad/commands/{o365group/o365group-report-activitygroupcounts.js → m365group/m365group-report-activitygroupcounts.js} +4 -4
  34. package/dist/m365/aad/commands/{o365group/o365group-report-activitystorage.js → m365group/m365group-report-activitystorage.js} +4 -4
  35. package/dist/m365/aad/commands/{o365group/o365group-set.js → m365group/m365group-set.js} +22 -17
  36. package/dist/m365/aad/commands/{o365group/o365group-teamify.js → m365group/m365group-teamify.js} +28 -20
  37. package/dist/m365/aad/commands/{o365group/o365group-user-add.js → m365group/m365group-user-add.js} +19 -14
  38. package/dist/m365/aad/commands/{o365group/o365group-user-list.js → m365group/m365group-user-list.js} +17 -12
  39. package/dist/m365/aad/commands/{o365group/o365group-user-remove.js → m365group/m365group-user-remove.js} +19 -14
  40. package/dist/m365/aad/commands/{o365group/o365group-user-set.js → m365group/m365group-user-set.js} +20 -15
  41. package/dist/m365/aad/commands/policy/policy-list.js +5 -5
  42. package/dist/m365/aad/commands/sp/sp-add.js +4 -1
  43. package/dist/m365/aad/commands/sp/sp-get.js +4 -1
  44. package/dist/m365/aad/commands/user/user-get.js +7 -2
  45. package/dist/m365/aad/commands.js +23 -22
  46. package/dist/m365/booking/commands/business/business-get.js +4 -1
  47. package/dist/m365/cli/commands/cli-issue.js +5 -5
  48. package/dist/m365/cli/commands/config/config-get.js +5 -5
  49. package/dist/m365/cli/commands/config/config-list.js +16 -0
  50. package/dist/m365/cli/commands/config/config-reset.js +5 -5
  51. package/dist/m365/cli/commands/config/config-set.js +5 -5
  52. package/dist/m365/cli/commands.js +1 -0
  53. package/dist/m365/commands/login.js +7 -7
  54. package/dist/m365/commands/request.js +1 -1
  55. package/dist/m365/flow/commands/flow-export.js +13 -13
  56. package/dist/m365/flow/commands/owner/owner-ensure.js +5 -5
  57. package/dist/m365/graph/commands/subscription/subscription-add.js +5 -5
  58. package/dist/m365/outlook/commands/message/message-list.js +4 -2
  59. package/dist/m365/outlook/commands/message/message-move.js +4 -2
  60. package/dist/m365/pa/commands/app/app-export.js +7 -7
  61. package/dist/m365/pa/commands/app/app-owner-set.js +5 -5
  62. package/dist/m365/pa/commands/app/app-permission-ensure.js +162 -0
  63. package/dist/m365/pa/commands/app/app-permission-list.js +2 -2
  64. package/dist/m365/pa/commands/app/app-permission-remove.js +153 -0
  65. package/dist/m365/pa/commands/connector/connector-export.js +5 -5
  66. package/dist/m365/pa/commands.js +3 -4
  67. package/dist/m365/planner/commands/bucket/bucket-add.js +6 -3
  68. package/dist/m365/planner/commands/bucket/bucket-get.js +11 -4
  69. package/dist/m365/planner/commands/bucket/bucket-list.js +6 -3
  70. package/dist/m365/planner/commands/bucket/bucket-remove.js +9 -4
  71. package/dist/m365/planner/commands/bucket/bucket-set.js +10 -4
  72. package/dist/m365/planner/commands/plan/plan-add.js +4 -1
  73. package/dist/m365/planner/commands/plan/plan-get.js +5 -3
  74. package/dist/m365/planner/commands/plan/plan-list.js +8 -6
  75. package/dist/m365/planner/commands/plan/plan-remove.js +4 -1
  76. package/dist/m365/planner/commands/plan/plan-set.js +6 -3
  77. package/dist/m365/planner/commands/roster/roster-get.js +4 -1
  78. package/dist/m365/planner/commands/roster/roster-member-add.js +4 -1
  79. package/dist/m365/planner/commands/roster/roster-member-get.js +4 -1
  80. package/dist/m365/planner/commands/roster/roster-member-list.js +4 -1
  81. package/dist/m365/planner/commands/roster/roster-member-remove.js +4 -1
  82. package/dist/m365/planner/commands/roster/roster-plan-list.js +4 -1
  83. package/dist/m365/planner/commands/roster/roster-remove.js +4 -1
  84. package/dist/m365/planner/commands/task/task-add.js +21 -12
  85. package/dist/m365/planner/commands/task/task-checklistitem-add.js +4 -1
  86. package/dist/m365/planner/commands/task/task-checklistitem-list.js +4 -1
  87. package/dist/m365/planner/commands/task/task-checklistitem-remove.js +4 -1
  88. package/dist/m365/planner/commands/task/task-get.js +46 -28
  89. package/dist/m365/planner/commands/task/task-list.js +34 -19
  90. package/dist/m365/planner/commands/task/task-reference-add.js +4 -1
  91. package/dist/m365/planner/commands/task/task-reference-list.js +4 -1
  92. package/dist/m365/planner/commands/task/task-reference-remove.js +4 -1
  93. package/dist/m365/planner/commands/task/task-remove.js +49 -38
  94. package/dist/m365/planner/commands/task/task-set.js +38 -23
  95. package/dist/m365/pp/commands/aibuildermodel/aibuildermodel-get.js +4 -1
  96. package/dist/m365/pp/commands/card/card-get.js +3 -5
  97. package/dist/m365/pp/commands/chatbot/chatbot-get.js +3 -1
  98. package/dist/m365/pp/commands/chatbot/chatbot-list.js +2 -2
  99. package/dist/m365/pp/commands/managementapp/managementapp-add.js +4 -1
  100. package/dist/m365/purview/commands/retentionlabel/retentionlabel-add.js +14 -14
  101. package/dist/m365/search/commands/externalconnection/externalconnection-remove.js +3 -1
  102. package/dist/m365/spfx/commands/package/package-generate.js +15 -15
  103. package/dist/m365/spfx/commands/project/DeployWorkflow.js +55 -0
  104. package/dist/m365/spfx/commands/project/project-doctor/{doctor-1.18.0-beta.1.js → doctor-1.18.0.js} +2 -2
  105. package/dist/m365/spfx/commands/project/project-doctor.js +9 -9
  106. package/dist/m365/spfx/commands/project/project-externalize/rules/PnPJsRule.js +2 -2
  107. package/dist/m365/spfx/commands/project/project-github-workflow-add.js +157 -0
  108. package/dist/m365/spfx/commands/project/project-github-workflow-model.js +2 -0
  109. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN001022_DEP_office_ui_fabric_react.js +1 -1
  110. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN002028_DEVDEP_microsoft_rush_stack_compiler_4_7.js +13 -0
  111. package/dist/m365/spfx/commands/project/project-upgrade/upgrade-1.15.2.js +1 -1
  112. package/dist/m365/spfx/commands/project/project-upgrade/{upgrade-1.18.0-beta.1.js → upgrade-1.18.0.js} +35 -27
  113. package/dist/m365/spfx/commands/project/project-upgrade.js +26 -28
  114. package/dist/m365/spfx/commands/spfx-doctor.js +76 -106
  115. package/dist/m365/spfx/commands.js +1 -0
  116. package/dist/m365/spo/commands/app/SpoAppBaseCommand.js +27 -26
  117. package/dist/m365/spo/commands/app/app-add.js +9 -9
  118. package/dist/m365/spo/commands/applicationcustomizer/applicationcustomizer-add.js +5 -5
  119. package/dist/m365/spo/commands/applicationcustomizer/applicationcustomizer-get.js +5 -3
  120. package/dist/m365/spo/commands/applicationcustomizer/applicationcustomizer-list.js +5 -5
  121. package/dist/m365/spo/commands/applicationcustomizer/applicationcustomizer-remove.js +2 -2
  122. package/dist/m365/spo/commands/applicationcustomizer/applicationcustomizer-set.js +3 -2
  123. package/dist/m365/spo/commands/commandset/commandset-add.js +11 -11
  124. package/dist/m365/spo/commands/commandset/commandset-get.js +12 -10
  125. package/dist/m365/spo/commands/commandset/commandset-list.js +5 -5
  126. package/dist/m365/spo/commands/commandset/commandset-remove.js +7 -6
  127. package/dist/m365/spo/commands/commandset/commandset-set.js +14 -12
  128. package/dist/m365/spo/commands/customaction/customaction-get.js +5 -2
  129. package/dist/m365/spo/commands/customaction/customaction-remove.js +3 -1
  130. package/dist/m365/spo/commands/eventreceiver/eventreceiver-get.js +3 -1
  131. package/dist/m365/spo/commands/file/file-add.js +13 -13
  132. package/dist/m365/spo/commands/file/file-checkin.js +1 -1
  133. package/dist/m365/spo/commands/file/file-checkout.js +1 -1
  134. package/dist/m365/spo/commands/file/file-copy.js +36 -4
  135. package/dist/m365/spo/commands/file/file-get.js +11 -8
  136. package/dist/m365/spo/commands/file/file-list.js +4 -4
  137. package/dist/m365/spo/commands/file/file-move.js +74 -98
  138. package/dist/m365/spo/commands/file/file-remove.js +8 -8
  139. package/dist/m365/spo/commands/file/file-rename.js +2 -2
  140. package/dist/m365/spo/commands/file/file-retentionlabel-ensure.js +1 -1
  141. package/dist/m365/spo/commands/file/file-retentionlabel-remove.js +1 -1
  142. package/dist/m365/spo/commands/file/file-roleassignment-add.js +1 -1
  143. package/dist/m365/spo/commands/file/file-roleassignment-remove.js +1 -1
  144. package/dist/m365/spo/commands/file/file-roleinheritance-break.js +1 -1
  145. package/dist/m365/spo/commands/file/file-roleinheritance-reset.js +1 -1
  146. package/dist/m365/spo/commands/file/file-sharinglink-add.js +8 -8
  147. package/dist/m365/spo/commands/file/file-sharinglink-list.js +5 -5
  148. package/dist/m365/spo/commands/file/file-version-clear.js +3 -3
  149. package/dist/m365/spo/commands/file/file-version-get.js +3 -3
  150. package/dist/m365/spo/commands/file/file-version-list.js +3 -3
  151. package/dist/m365/spo/commands/file/file-version-remove.js +3 -3
  152. package/dist/m365/spo/commands/file/file-version-restore.js +3 -3
  153. package/dist/m365/spo/commands/folder/folder-add.js +2 -4
  154. package/dist/m365/spo/commands/folder/folder-copy.js +89 -45
  155. package/dist/m365/spo/commands/folder/folder-get.js +1 -1
  156. package/dist/m365/spo/commands/folder/folder-list.js +2 -2
  157. package/dist/m365/spo/commands/folder/folder-move.js +89 -47
  158. package/dist/m365/spo/commands/folder/folder-remove.js +7 -4
  159. package/dist/m365/spo/commands/folder/folder-rename.js +13 -17
  160. package/dist/m365/spo/commands/folder/folder-retentionlabel-ensure.js +1 -1
  161. package/dist/m365/spo/commands/folder/folder-retentionlabel-remove.js +1 -1
  162. package/dist/m365/spo/commands/folder/folder-roleassignment-add.js +1 -1
  163. package/dist/m365/spo/commands/folder/folder-roleassignment-remove.js +1 -1
  164. package/dist/m365/spo/commands/folder/folder-roleinheritance-break.js +1 -1
  165. package/dist/m365/spo/commands/folder/folder-roleinheritance-reset.js +1 -1
  166. package/dist/m365/spo/commands/group/group-list.js +0 -1
  167. package/dist/m365/spo/commands/group/group-member-add.js +24 -24
  168. package/dist/m365/spo/commands/hubsite/hubsite-connect.js +7 -4
  169. package/dist/m365/spo/commands/hubsite/hubsite-disconnect.js +4 -1
  170. package/dist/m365/spo/commands/hubsite/hubsite-get.js +3 -1
  171. package/dist/m365/spo/commands/list/list-add.js +4 -4
  172. package/dist/m365/spo/commands/list/list-retentionlabel-ensure.js +2 -24
  173. package/dist/m365/spo/commands/list/list-set.js +4 -4
  174. package/dist/m365/spo/commands/listitem/listitem-add.js +1 -0
  175. package/dist/m365/spo/commands/listitem/listitem-attachment-add.js +127 -0
  176. package/dist/m365/spo/commands/listitem/listitem-attachment-get.js +97 -0
  177. package/dist/m365/spo/commands/listitem/listitem-attachment-remove.js +121 -0
  178. package/dist/m365/spo/commands/listitem/listitem-attachment-set.js +115 -0
  179. package/dist/m365/spo/commands/listitem/listitem-set.js +3 -2
  180. package/dist/m365/spo/commands/navigation/navigation-node-set.js +2 -2
  181. package/dist/m365/spo/commands/orgassetslibrary/orgassetslibrary-add.js +34 -5
  182. package/dist/m365/spo/commands/page/clientsidepages.js +19 -81
  183. package/dist/m365/spo/commands/page/page-get.js +1 -0
  184. package/dist/m365/spo/commands/page/page-list.js +4 -3
  185. package/dist/m365/spo/commands/page/page-section-add.js +56 -21
  186. package/dist/m365/spo/commands/page/page-set.js +13 -2
  187. package/dist/m365/spo/commands/propertybag/propertybag-base.js +63 -59
  188. package/dist/m365/spo/commands/propertybag/propertybag-remove.js +28 -31
  189. package/dist/m365/spo/commands/serviceprincipal/serviceprincipal-set.js +30 -32
  190. package/dist/m365/spo/commands/site/FlowsPolicy.js +7 -0
  191. package/dist/m365/spo/commands/site/site-add.js +114 -161
  192. package/dist/m365/spo/commands/site/site-apppermission-add.js +15 -18
  193. package/dist/m365/spo/commands/site/site-apppermission-remove.js +34 -38
  194. package/dist/m365/spo/commands/site/site-apppermission-set.js +11 -14
  195. package/dist/m365/spo/commands/site/site-commsite-enable.js +34 -5
  196. package/dist/m365/spo/commands/site/site-ensure.js +14 -67
  197. package/dist/m365/spo/commands/site/site-hubsite-disconnect.js +22 -22
  198. package/dist/m365/spo/commands/site/site-list.js +25 -43
  199. package/dist/m365/spo/commands/site/site-recyclebinitem-list.js +6 -6
  200. package/dist/m365/spo/commands/site/site-remove.js +166 -210
  201. package/dist/m365/spo/commands/site/site-set.js +178 -199
  202. package/dist/m365/spo/commands/tenant/tenant-appcatalog-add.js +1 -1
  203. package/dist/m365/spo/commands/tenant/tenant-applicationcustomizer-get.js +12 -7
  204. package/dist/m365/spo/commands/tenant/tenant-applicationcustomizer-list.js +3 -2
  205. package/dist/m365/spo/commands/tenant/tenant-applicationcustomizer-remove.js +2 -1
  206. package/dist/m365/spo/commands/tenant/tenant-applicationcustomizer-set.js +3 -2
  207. package/dist/m365/spo/commands/tenant/tenant-commandset-add.js +8 -8
  208. package/dist/m365/spo/commands/tenant/tenant-commandset-get.js +8 -3
  209. package/dist/m365/spo/commands/tenant/tenant-commandset-list.js +3 -2
  210. package/dist/m365/spo/commands/tenant/tenant-commandset-remove.js +3 -1
  211. package/dist/m365/spo/commands/tenant/tenant-commandset-set.js +8 -8
  212. package/dist/m365/spo/commands/tenant/tenant-settings-set.js +4 -4
  213. package/dist/m365/spo/commands/term/term-get.js +6 -6
  214. package/dist/m365/spo/commands/theme/theme-list.js +1 -9
  215. package/dist/m365/spo/commands/theme/theme-remove.js +24 -24
  216. package/dist/m365/spo/commands/theme/theme-set.js +0 -1
  217. package/dist/m365/spo/commands/user/user-get.js +10 -10
  218. package/dist/m365/spo/commands/user/user-remove.js +27 -27
  219. package/dist/m365/spo/commands/web/web-reindex.js +35 -42
  220. package/dist/m365/spo/commands/web/web-remove.js +21 -21
  221. package/dist/m365/spo/commands/web/web-roleassignment-add.js +16 -31
  222. package/dist/m365/spo/commands/web/web-roleassignment-remove.js +33 -44
  223. package/dist/m365/spo/commands/web/web-roleinheritance-break.js +18 -18
  224. package/dist/m365/spo/commands/web/web-roleinheritance-reset.js +19 -19
  225. package/dist/m365/spo/commands/web/web-set.js +5 -5
  226. package/dist/m365/spo/commands.js +4 -0
  227. package/dist/m365/teams/commands/app/app-list.js +5 -5
  228. package/dist/m365/teams/commands/app/app-remove.js +49 -15
  229. package/dist/m365/teams/commands/channel/channel-add.js +5 -1
  230. package/dist/m365/teams/commands/channel/channel-member-add.js +12 -10
  231. package/dist/m365/teams/commands/channel/channel-member-remove.js +3 -1
  232. package/dist/m365/teams/commands/channel/channel-member-set.js +4 -1
  233. package/dist/m365/teams/commands/chat/chat-get.js +7 -10
  234. package/dist/m365/teams/commands/chat/chat-member-add.js +5 -5
  235. package/dist/m365/teams/commands/chat/chat-message-send.js +8 -10
  236. package/dist/m365/teams/commands/funsettings/funsettings-set.js +4 -4
  237. package/dist/m365/teams/commands/guestsettings/guestsettings-set.js +4 -4
  238. package/dist/m365/teams/commands/meeting/meeting-list.js +101 -51
  239. package/dist/m365/teams/commands/membersettings/membersettings-set.js +4 -4
  240. package/dist/m365/teams/commands/messagingsettings/messagingsettings-set.js +5 -5
  241. package/dist/m365/teams/commands/team/team-clone.js +5 -10
  242. package/dist/m365/teams/commands/team/team-list.js +94 -30
  243. package/dist/m365/teams/commands/team/team-set.js +3 -3
  244. package/dist/m365/tenant/commands/info/info-get.js +83 -0
  245. package/dist/m365/tenant/commands.js +1 -0
  246. package/dist/m365/todo/commands/task/task-add.js +6 -6
  247. package/dist/m365/yammer/commands/message/message-like-set.js +27 -28
  248. package/dist/m365/yammer/commands/message/message-list.js +67 -86
  249. package/dist/m365/yammer/commands/message/message-remove.js +18 -18
  250. package/dist/m365/yammer/commands/yammer-search.js +58 -74
  251. package/dist/utils/aadGroup.js +39 -3
  252. package/dist/utils/formatting.js +7 -0
  253. package/dist/utils/fsUtil.js +5 -0
  254. package/dist/utils/planner.js +4 -3
  255. package/dist/utils/powerPlatform.js +1 -1
  256. package/dist/utils/spo.js +595 -54
  257. package/dist/utils/validation.js +0 -3
  258. package/docs/docs/_clisettings.mdx +2 -2
  259. package/docs/docs/cmd/_global.mdx +1 -1
  260. package/docs/docs/cmd/aad/app/app-set.mdx +15 -15
  261. package/docs/docs/cmd/aad/approleassignment/approleassignment-add.mdx +9 -9
  262. package/docs/docs/cmd/aad/approleassignment/approleassignment-remove.mdx +10 -10
  263. package/docs/docs/cmd/aad/group/group-get.mdx +5 -5
  264. package/docs/docs/cmd/aad/group/group-list.mdx +0 -11
  265. package/docs/docs/cmd/aad/group/group-remove.mdx +44 -0
  266. package/docs/docs/cmd/aad/{o365group/o365group-add.mdx → m365group/m365group-add.mdx} +25 -15
  267. package/docs/docs/cmd/aad/{o365group/o365group-conversation-list.mdx → m365group/m365group-conversation-list.mdx} +4 -4
  268. package/docs/docs/cmd/aad/{o365group/o365group-conversation-post-list.mdx → m365group/m365group-conversation-post-list.mdx} +8 -8
  269. package/docs/docs/cmd/aad/{o365group/o365group-get.mdx → m365group/m365group-get.mdx} +6 -6
  270. package/docs/docs/cmd/aad/{o365group/o365group-list.mdx → m365group/m365group-list.mdx} +12 -29
  271. package/docs/docs/cmd/aad/{o365group/o365group-recyclebinitem-clear.mdx → m365group/m365group-recyclebinitem-clear.mdx} +5 -5
  272. package/docs/docs/cmd/aad/{o365group/o365group-recyclebinitem-list.mdx → m365group/m365group-recyclebinitem-list.mdx} +8 -8
  273. package/docs/docs/cmd/aad/{o365group/o365group-recyclebinitem-remove.mdx → m365group/m365group-recyclebinitem-remove.mdx} +6 -6
  274. package/docs/docs/cmd/aad/{o365group/o365group-recyclebinitem-restore.mdx → m365group/m365group-recyclebinitem-restore.mdx} +6 -6
  275. package/docs/docs/cmd/aad/{o365group/o365group-remove.mdx → m365group/m365group-remove.mdx} +6 -6
  276. package/docs/docs/cmd/aad/{o365group/o365group-renew.mdx → m365group/m365group-renew.mdx} +4 -4
  277. package/docs/docs/cmd/aad/{o365group/o365group-report-activitycounts.mdx → m365group/m365group-report-activitycounts.mdx} +6 -6
  278. package/docs/docs/cmd/aad/{o365group/o365group-report-activitydetail.mdx → m365group/m365group-report-activitydetail.mdx} +7 -7
  279. package/docs/docs/cmd/aad/{o365group/o365group-report-activityfilecounts.mdx → m365group/m365group-report-activityfilecounts.mdx} +6 -6
  280. package/docs/docs/cmd/aad/{o365group/o365group-report-activitygroupcounts.mdx → m365group/m365group-report-activitygroupcounts.mdx} +6 -6
  281. package/docs/docs/cmd/aad/{o365group/o365group-report-activitystorage.mdx → m365group/m365group-report-activitystorage.mdx} +6 -6
  282. package/docs/docs/cmd/aad/{o365group/o365group-set.mdx → m365group/m365group-set.mdx} +8 -8
  283. package/docs/docs/cmd/aad/{o365group/o365group-teamify.mdx → m365group/m365group-teamify.mdx} +5 -5
  284. package/docs/docs/cmd/aad/{o365group/o365group-user-add.mdx → m365group/m365group-user-add.mdx} +5 -5
  285. package/docs/docs/cmd/aad/{o365group/o365group-user-list.mdx → m365group/m365group-user-list.mdx} +7 -7
  286. package/docs/docs/cmd/aad/{o365group/o365group-user-remove.mdx → m365group/m365group-user-remove.mdx} +5 -5
  287. package/docs/docs/cmd/aad/{o365group/o365group-user-set.mdx → m365group/m365group-user-set.mdx} +5 -5
  288. package/docs/docs/cmd/aad/policy/policy-list.mdx +5 -5
  289. package/docs/docs/cmd/aad/user/user-set.mdx +1 -1
  290. package/docs/docs/cmd/cli/config/config-list.mdx +78 -0
  291. package/docs/docs/cmd/flow/flow-enable.mdx +2 -2
  292. package/docs/docs/cmd/flow/flow-export.mdx +11 -11
  293. package/docs/docs/cmd/graph/subscription/subscription-add.mdx +10 -10
  294. package/docs/docs/cmd/login.mdx +6 -0
  295. package/docs/docs/cmd/pa/app/app-export.mdx +5 -5
  296. package/docs/docs/cmd/pa/app/app-permission-ensure.mdx +85 -0
  297. package/docs/docs/cmd/pa/app/app-permission-remove.mdx +74 -0
  298. package/docs/docs/cmd/pa/connector/connector-export.mdx +3 -3
  299. package/docs/docs/cmd/planner/plan/plan-add.mdx +1 -1
  300. package/docs/docs/cmd/planner/task/task-add.mdx +22 -7
  301. package/docs/docs/cmd/planner/task/task-get.mdx +13 -4
  302. package/docs/docs/cmd/planner/task/task-list.mdx +22 -7
  303. package/docs/docs/cmd/planner/task/task-remove.mdx +25 -8
  304. package/docs/docs/cmd/planner/task/task-set.mdx +22 -7
  305. package/docs/docs/cmd/pp/chatbot/chatbot-list.mdx +4 -4
  306. package/docs/docs/cmd/pp/dataverse/dataverse-table-get.mdx +2 -2
  307. package/docs/docs/cmd/pp/dataverse/dataverse-table-list.mdx +2 -2
  308. package/docs/docs/cmd/pp/dataverse/dataverse-table-remove.mdx +3 -3
  309. package/docs/docs/cmd/pp/solution/solution-publisher-get.mdx +2 -2
  310. package/docs/docs/cmd/pp/solution/solution-publisher-remove.mdx +2 -2
  311. package/docs/docs/cmd/spfx/project/project-github-workflow-add.mdx +94 -0
  312. package/docs/docs/cmd/spfx/project/project-upgrade.mdx +1 -1
  313. package/docs/docs/cmd/spo/file/file-add.mdx +1 -1
  314. package/docs/docs/cmd/spo/file/file-checkin.mdx +1 -1
  315. package/docs/docs/cmd/spo/file/file-checkout-undo.mdx +1 -9
  316. package/docs/docs/cmd/spo/file/file-checkout.mdx +1 -1
  317. package/docs/docs/cmd/spo/file/file-copy.mdx +20 -16
  318. package/docs/docs/cmd/spo/file/file-get.mdx +3 -3
  319. package/docs/docs/cmd/spo/file/file-list.mdx +2 -2
  320. package/docs/docs/cmd/spo/file/file-move.mdx +36 -18
  321. package/docs/docs/cmd/spo/file/file-remove.mdx +10 -10
  322. package/docs/docs/cmd/spo/file/file-rename.mdx +3 -3
  323. package/docs/docs/cmd/spo/file/file-retentionlabel-ensure.mdx +2 -2
  324. package/docs/docs/cmd/spo/file/file-retentionlabel-remove.mdx +3 -3
  325. package/docs/docs/cmd/spo/file/file-roleassignment-add.mdx +1 -1
  326. package/docs/docs/cmd/spo/file/file-roleassignment-remove.mdx +1 -1
  327. package/docs/docs/cmd/spo/file/file-roleinheritance-break.mdx +1 -1
  328. package/docs/docs/cmd/spo/file/file-roleinheritance-reset.mdx +1 -1
  329. package/docs/docs/cmd/spo/file/file-sharinginfo-get.mdx +1 -1
  330. package/docs/docs/cmd/spo/file/file-sharinglink-add.mdx +1 -1
  331. package/docs/docs/cmd/spo/file/file-sharinglink-clear.mdx +1 -1
  332. package/docs/docs/cmd/spo/file/file-sharinglink-get.mdx +1 -1
  333. package/docs/docs/cmd/spo/file/file-sharinglink-list.mdx +1 -1
  334. package/docs/docs/cmd/spo/file/file-sharinglink-remove.mdx +1 -1
  335. package/docs/docs/cmd/spo/file/file-sharinglink-set.mdx +1 -1
  336. package/docs/docs/cmd/spo/file/file-version-clear.mdx +3 -3
  337. package/docs/docs/cmd/spo/file/file-version-get.mdx +3 -3
  338. package/docs/docs/cmd/spo/file/file-version-list.mdx +3 -3
  339. package/docs/docs/cmd/spo/file/file-version-remove.mdx +3 -3
  340. package/docs/docs/cmd/spo/file/file-version-restore.mdx +3 -3
  341. package/docs/docs/cmd/spo/folder/folder-add.mdx +76 -1
  342. package/docs/docs/cmd/spo/folder/folder-copy.mdx +39 -12
  343. package/docs/docs/cmd/spo/folder/folder-get.mdx +1 -1
  344. package/docs/docs/cmd/spo/folder/folder-list.mdx +1 -1
  345. package/docs/docs/cmd/spo/folder/folder-move.mdx +40 -13
  346. package/docs/docs/cmd/spo/folder/folder-remove.mdx +1 -1
  347. package/docs/docs/cmd/spo/folder/folder-rename.mdx +5 -1
  348. package/docs/docs/cmd/spo/folder/folder-retentionlabel-ensure.mdx +1 -1
  349. package/docs/docs/cmd/spo/folder/folder-retentionlabel-remove.mdx +1 -1
  350. package/docs/docs/cmd/spo/folder/folder-roleassignment-add.mdx +2 -2
  351. package/docs/docs/cmd/spo/folder/folder-roleassignment-remove.mdx +1 -1
  352. package/docs/docs/cmd/spo/folder/folder-roleinheritance-break.mdx +1 -1
  353. package/docs/docs/cmd/spo/folder/folder-roleinheritance-reset.mdx +1 -1
  354. package/docs/docs/cmd/spo/group/group-member-add.mdx +27 -27
  355. package/docs/docs/cmd/spo/list/list-contenttype-remove.mdx +1 -1
  356. package/docs/docs/cmd/spo/list/list-retentionlabel-ensure.mdx +2 -11
  357. package/docs/docs/cmd/spo/listitem/listitem-add.mdx +2 -5
  358. package/docs/docs/cmd/spo/listitem/listitem-attachment-add.mdx +110 -0
  359. package/docs/docs/cmd/spo/listitem/listitem-attachment-get.mdx +104 -0
  360. package/docs/docs/cmd/spo/listitem/listitem-attachment-list.mdx +1 -1
  361. package/docs/docs/cmd/spo/listitem/listitem-attachment-remove.mdx +58 -0
  362. package/docs/docs/cmd/spo/listitem/listitem-attachment-set.mdx +58 -0
  363. package/docs/docs/cmd/spo/listitem/listitem-set.mdx +2 -5
  364. package/docs/docs/cmd/spo/orgassetslibrary/orgassetslibrary-add.mdx +14 -1
  365. package/docs/docs/cmd/spo/page/page-get.mdx +0 -1
  366. package/docs/docs/cmd/spo/page/page-list.mdx +0 -1
  367. package/docs/docs/cmd/spo/page/page-section-add.mdx +25 -1
  368. package/docs/docs/cmd/spo/page/page-set.mdx +23 -0
  369. package/docs/docs/cmd/spo/site/site-add.mdx +1 -1
  370. package/docs/docs/cmd/spo/site/site-commsite-enable.mdx +11 -2
  371. package/docs/docs/cmd/spo/site/site-ensure.mdx +1 -1
  372. package/docs/docs/cmd/spo/site/site-list.mdx +3 -78
  373. package/docs/docs/cmd/spo/tenant/tenant-applicationcustomizer-add.mdx +1 -1
  374. package/docs/docs/cmd/spo/tenant/tenant-applicationcustomizer-get.mdx +2 -2
  375. package/docs/docs/cmd/spo/tenant/tenant-applicationcustomizer-list.mdx +3 -5
  376. package/docs/docs/cmd/spo/tenant/tenant-applicationcustomizer-remove.mdx +1 -1
  377. package/docs/docs/cmd/spo/tenant/tenant-commandset-add.mdx +1 -1
  378. package/docs/docs/cmd/spo/tenant/tenant-commandset-list.mdx +2 -4
  379. package/docs/docs/cmd/spo/tenant/tenant-commandset-remove.mdx +1 -1
  380. package/docs/docs/cmd/spo/tenant/tenant-commandset-set.mdx +1 -1
  381. package/docs/docs/cmd/spo/user/user-get.mdx +8 -8
  382. package/docs/docs/cmd/teams/app/app-remove.mdx +9 -6
  383. package/docs/docs/cmd/teams/channel/channel-member-add.mdx +4 -4
  384. package/docs/docs/cmd/teams/meeting/meeting-list.mdx +135 -92
  385. package/docs/docs/cmd/teams/team/team-add.mdx +1 -1
  386. package/docs/docs/cmd/teams/team/team-clone.mdx +3 -3
  387. package/docs/docs/cmd/teams/team/team-list.mdx +47 -22
  388. package/docs/docs/cmd/tenant/info/info-get.mdx +101 -0
  389. package/docs/docs/cmd/yammer/network/network-list.mdx +1 -1
  390. package/npm-shrinkwrap.json +310 -1433
  391. package/package.json +23 -28
  392. package/dist/m365/pa/cds-project-mutator.js +0 -91
  393. package/dist/m365/pa/commands/pcf/pcf-init/assets/control/dataset-template/generated/ManifestTypes.d.ts +0 -11
  394. package/dist/m365/pa/commands/pcf/pcf-init/assets/control/dataset-template/template_ControlManifest.Input.xml +0 -31
  395. package/dist/m365/pa/commands/pcf/pcf-init/assets/control/dataset-template/template_index.ts +0 -51
  396. package/dist/m365/pa/commands/pcf/pcf-init/assets/control/field-template/generated/ManifestTypes.d.ts +0 -12
  397. package/dist/m365/pa/commands/pcf/pcf-init/assets/control/field-template/template_ControlManifest.Input.xml +0 -37
  398. package/dist/m365/pa/commands/pcf/pcf-init/assets/control/field-template/template_index.ts +0 -48
  399. package/dist/m365/pa/commands/pcf/pcf-init/assets/control/index.ts +0 -0
  400. package/dist/m365/pa/commands/pcf/pcf-init/assets/control/virtual-dataset-template/template_ControlManifest.Input.xml +0 -31
  401. package/dist/m365/pa/commands/pcf/pcf-init/assets/control/virtual-dataset-template/template_index.tsx +0 -58
  402. package/dist/m365/pa/commands/pcf/pcf-init/assets/control/virtual-field-template/template_ControlManifest.Input.xml +0 -37
  403. package/dist/m365/pa/commands/pcf/pcf-init/assets/control/virtual-field-template/template_index.tsx +0 -55
  404. package/dist/m365/pa/commands/pcf/pcf-init/assets/package.json +0 -19
  405. package/dist/m365/pa/commands/pcf/pcf-init/assets/pcfconfig.json +0 -3
  406. package/dist/m365/pa/commands/pcf/pcf-init/assets/template_.gitignore +0 -14
  407. package/dist/m365/pa/commands/pcf/pcf-init/assets/template_pcfprojecttype.pcfproj +0 -45
  408. package/dist/m365/pa/commands/pcf/pcf-init/pcf-init-variables.js +0 -2
  409. package/dist/m365/pa/commands/pcf/pcf-init.js +0 -120
  410. package/dist/m365/pa/commands/solution/solution-init/assets/Other/Customizations.xml +0 -18
  411. package/dist/m365/pa/commands/solution/solution-init/assets/Other/Relationships.xml +0 -2
  412. package/dist/m365/pa/commands/solution/solution-init/assets/Other/template_Solution.xml +0 -94
  413. package/dist/m365/pa/commands/solution/solution-init/assets/template_.gitignore +0 -2
  414. package/dist/m365/pa/commands/solution/solution-init/assets/template_solutionprojecttype.cdsproj +0 -44
  415. package/dist/m365/pa/commands/solution/solution-init/solution-init-variables.js +0 -2
  416. package/dist/m365/pa/commands/solution/solution-init.js +0 -126
  417. package/dist/m365/pa/commands/solution/solution-reference-add.js +0 -88
  418. package/dist/m365/pa/template-instantiator.js +0 -57
  419. package/docs/docs/cmd/pa/pcf/pcf-init.mdx +0 -56
  420. package/docs/docs/cmd/pa/solution/solution-init.mdx +0 -46
  421. package/docs/docs/cmd/pa/solution/solution-reference-add.mdx +0 -42
  422. /package/dist/m365/aad/commands/{o365group → m365group}/GroupExtended.js +0 -0
@@ -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 _SpoTenantCommandSetAddCommand_instances, _SpoTenantCommandSetAddCommand_initTelemetry, _SpoTenantCommandSetAddCommand_initOptions, _SpoTenantCommandSetAddCommand_initValidators;
6
+ var _SpoTenantCommandSetAddCommand_instances, _a, _SpoTenantCommandSetAddCommand_initTelemetry, _SpoTenantCommandSetAddCommand_initOptions, _SpoTenantCommandSetAddCommand_initValidators;
7
7
  import { Cli } from '../../../../cli/Cli.js';
8
8
  import { urlUtil } from '../../../../utils/urlUtil.js';
9
9
  import { validation } from '../../../../utils/validation.js';
@@ -149,7 +149,7 @@ class SpoTenantCommandSetAddCommand extends SpoCommand {
149
149
  }
150
150
  }
151
151
  }
152
- _SpoTenantCommandSetAddCommand_instances = new WeakSet(), _SpoTenantCommandSetAddCommand_initTelemetry = function _SpoTenantCommandSetAddCommand_initTelemetry() {
152
+ _a = SpoTenantCommandSetAddCommand, _SpoTenantCommandSetAddCommand_instances = new WeakSet(), _SpoTenantCommandSetAddCommand_initTelemetry = function _SpoTenantCommandSetAddCommand_initTelemetry() {
153
153
  this.telemetry.push((args) => {
154
154
  Object.assign(this.telemetryProperties, {
155
155
  listType: args.options.listType,
@@ -163,7 +163,7 @@ _SpoTenantCommandSetAddCommand_instances = new WeakSet(), _SpoTenantCommandSetAd
163
163
  option: '-t, --title <title>'
164
164
  }, {
165
165
  option: '-l, --listType <listType>',
166
- autocomplete: SpoTenantCommandSetAddCommand.listTypes
166
+ autocomplete: _a.listTypes
167
167
  }, {
168
168
  option: '-i, --clientSideComponentId <clientSideComponentId>'
169
169
  }, {
@@ -172,18 +172,18 @@ _SpoTenantCommandSetAddCommand_instances = new WeakSet(), _SpoTenantCommandSetAd
172
172
  option: '-w, --webTemplate [webTemplate]'
173
173
  }, {
174
174
  option: '--location [location]',
175
- autocomplete: SpoTenantCommandSetAddCommand.locations
175
+ autocomplete: _a.locations
176
176
  });
177
177
  }, _SpoTenantCommandSetAddCommand_initValidators = function _SpoTenantCommandSetAddCommand_initValidators() {
178
178
  this.validators.push(async (args) => {
179
179
  if (!validation.isValidGuid(args.options.clientSideComponentId)) {
180
180
  return `${args.options.clientSideComponentId} is not a valid GUID`;
181
181
  }
182
- if (SpoTenantCommandSetAddCommand.listTypes.indexOf(args.options.listType) < 0) {
183
- return `${args.options.listType} is not a valid list type. Allowed values are ${SpoTenantCommandSetAddCommand.listTypes.join(', ')}`;
182
+ if (_a.listTypes.indexOf(args.options.listType) < 0) {
183
+ return `${args.options.listType} is not a valid list type. Allowed values are ${_a.listTypes.join(', ')}`;
184
184
  }
185
- if (args.options.location && SpoTenantCommandSetAddCommand.locations.indexOf(args.options.location) < 0) {
186
- return `${args.options.location} is not a valid location. Allowed values are ${SpoTenantCommandSetAddCommand.locations.join(', ')}`;
185
+ if (args.options.location && _a.locations.indexOf(args.options.location) < 0) {
186
+ return `${args.options.location} is not a valid location. Allowed values are ${_a.locations.join(', ')}`;
187
187
  }
188
188
  return true;
189
189
  });
@@ -4,6 +4,7 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
4
4
  return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
5
5
  };
6
6
  var _SpoTenantCommandSetGetCommand_instances, _SpoTenantCommandSetGetCommand_initTelemetry, _SpoTenantCommandSetGetCommand_initOptions, _SpoTenantCommandSetGetCommand_initValidators, _SpoTenantCommandSetGetCommand_initOptionSets;
7
+ import { Cli } from '../../../../cli/Cli.js';
7
8
  import { CommandError } from '../../../../Command.js';
8
9
  import request from '../../../../request.js';
9
10
  import { formatting } from '../../../../utils/formatting.js';
@@ -53,11 +54,15 @@ class SpoTenantCommandSetGetCommand extends SpoCommand {
53
54
  try {
54
55
  const listItemInstances = await request.get(reqOptions);
55
56
  if (listItemInstances?.value.length > 0) {
57
+ listItemInstances.value.forEach(v => delete v['ID']);
56
58
  if (listItemInstances.value.length > 1) {
57
- throw `Multiple ListView Command Sets with ${args.options.title || args.options.clientSideComponentId} were found. Please disambiguate (IDs): ${listItemInstances.value.map(item => item.Id).join(', ')}`;
59
+ const resultAsKeyValuePair = formatting.convertArrayToHashTable('Id', listItemInstances.value);
60
+ const result = await Cli.handleMultipleResultsFound(`Multiple ListView Command Sets with ${args.options.title || args.options.clientSideComponentId} were found.`, resultAsKeyValuePair);
61
+ await logger.log(result);
62
+ }
63
+ else {
64
+ await logger.log(listItemInstances.value[0]);
58
65
  }
59
- listItemInstances.value.forEach(v => delete v['ID']);
60
- await logger.log(listItemInstances.value[0]);
61
66
  }
62
67
  else {
63
68
  throw 'The specified ListView Command Set was not found';
@@ -25,8 +25,9 @@ class SpoTenantCommandSetListCommand extends SpoCommand {
25
25
  }
26
26
  const listServerRelativeUrl = urlUtil.getServerRelativePath(appCatalogUrl, '/lists/TenantWideExtensions');
27
27
  try {
28
- const response = await odata.getAllItems(`${appCatalogUrl}/_api/web/GetList('${formatting.encodeQueryParameter(listServerRelativeUrl)}')/items?$filter=startswith(TenantWideExtensionLocation, 'ClientSideExtension.ListViewCommandSet')`);
29
- await logger.log(response);
28
+ const listItems = await odata.getAllItems(`${appCatalogUrl}/_api/web/GetList('${formatting.encodeQueryParameter(listServerRelativeUrl)}')/items?$filter=startswith(TenantWideExtensionLocation, 'ClientSideExtension.ListViewCommandSet')`);
29
+ listItems.forEach(i => delete i.ID);
30
+ await logger.log(listItems);
30
31
  }
31
32
  catch (err) {
32
33
  this.handleRejectedODataJsonPromise(err);
@@ -90,7 +90,9 @@ class SpoTenantCommandSetRemoveCommand extends SpoCommand {
90
90
  throw 'The specified command set was not found';
91
91
  }
92
92
  if (listItemInstances.length > 1) {
93
- throw `Multiple command sets with ${args.options.title || args.options.clientSideComponentId} were found. Please disambiguate (IDs): ${listItemInstances.map(item => item.Id).join(', ')}`;
93
+ const resultAsKeyValuePair = formatting.convertArrayToHashTable('Id', listItemInstances);
94
+ const result = await Cli.handleMultipleResultsFound(`Multiple command sets with ${args.options.title || args.options.clientSideComponentId} were found.`, resultAsKeyValuePair);
95
+ return result.Id;
94
96
  }
95
97
  return listItemInstances[0].Id;
96
98
  }
@@ -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 _SpoTenantCommandSetSetCommand_instances, _SpoTenantCommandSetSetCommand_initTelemetry, _SpoTenantCommandSetSetCommand_initOptions, _SpoTenantCommandSetSetCommand_initValidators;
6
+ var _SpoTenantCommandSetSetCommand_instances, _a, _SpoTenantCommandSetSetCommand_initTelemetry, _SpoTenantCommandSetSetCommand_initOptions, _SpoTenantCommandSetSetCommand_initValidators;
7
7
  import request from '../../../../request.js';
8
8
  import { formatting } from '../../../../utils/formatting.js';
9
9
  import { spo } from '../../../../utils/spo.js';
@@ -129,7 +129,7 @@ class SpoTenantCommandSetSetCommand extends SpoCommand {
129
129
  }
130
130
  }
131
131
  }
132
- _SpoTenantCommandSetSetCommand_instances = new WeakSet(), _SpoTenantCommandSetSetCommand_initTelemetry = function _SpoTenantCommandSetSetCommand_initTelemetry() {
132
+ _a = SpoTenantCommandSetSetCommand, _SpoTenantCommandSetSetCommand_instances = new WeakSet(), _SpoTenantCommandSetSetCommand_initTelemetry = function _SpoTenantCommandSetSetCommand_initTelemetry() {
133
133
  this.telemetry.push((args) => {
134
134
  Object.assign(this.telemetryProperties, {
135
135
  newTitle: typeof args.options.newTitle !== 'undefined',
@@ -147,7 +147,7 @@ _SpoTenantCommandSetSetCommand_instances = new WeakSet(), _SpoTenantCommandSetSe
147
147
  option: '-t, --newTitle [newTitle]'
148
148
  }, {
149
149
  option: '-l, --listType [listType]',
150
- autocomplete: SpoTenantCommandSetSetCommand.listTypes
150
+ autocomplete: _a.listTypes
151
151
  }, {
152
152
  option: '-c, --clientSideComponentId [clientSideComponentId]'
153
153
  }, {
@@ -156,7 +156,7 @@ _SpoTenantCommandSetSetCommand_instances = new WeakSet(), _SpoTenantCommandSetSe
156
156
  option: '-w, --webTemplate [webTemplate]'
157
157
  }, {
158
158
  option: '--location [location]',
159
- autocomplete: SpoTenantCommandSetSetCommand.locations
159
+ autocomplete: _a.locations
160
160
  });
161
161
  }, _SpoTenantCommandSetSetCommand_initValidators = function _SpoTenantCommandSetSetCommand_initValidators() {
162
162
  this.validators.push(async (args) => {
@@ -171,11 +171,11 @@ _SpoTenantCommandSetSetCommand_instances = new WeakSet(), _SpoTenantCommandSetSe
171
171
  if (args.options.clientSideComponentId && !validation.isValidGuid(args.options.clientSideComponentId)) {
172
172
  return `${args.options.clientSideComponentId} is not a valid GUID`;
173
173
  }
174
- if (args.options.listType && SpoTenantCommandSetSetCommand.listTypes.indexOf(args.options.listType) < 0) {
175
- return `${args.options.listType} is not a valid list type. Allowed values are ${SpoTenantCommandSetSetCommand.listTypes.join(', ')}`;
174
+ if (args.options.listType && _a.listTypes.indexOf(args.options.listType) < 0) {
175
+ return `${args.options.listType} is not a valid list type. Allowed values are ${_a.listTypes.join(', ')}`;
176
176
  }
177
- if (args.options.location && SpoTenantCommandSetSetCommand.locations.indexOf(args.options.location) < 0) {
178
- return `${args.options.location} is not a valid location. Allowed values are ${SpoTenantCommandSetSetCommand.locations.join(', ')}`;
177
+ if (args.options.location && _a.locations.indexOf(args.options.location) < 0) {
178
+ return `${args.options.location} is not a valid location. Allowed values are ${_a.locations.join(', ')}`;
179
179
  }
180
180
  return true;
181
181
  });
@@ -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 _SpoTenantSettingsSetCommand_instances, _SpoTenantSettingsSetCommand_initTelemetry, _SpoTenantSettingsSetCommand_initOptions, _SpoTenantSettingsSetCommand_initValidators, _SpoTenantSettingsSetCommand_initTypes;
6
+ var _SpoTenantSettingsSetCommand_instances, _a, _SpoTenantSettingsSetCommand_initTelemetry, _SpoTenantSettingsSetCommand_initOptions, _SpoTenantSettingsSetCommand_initValidators, _SpoTenantSettingsSetCommand_initTypes;
7
7
  import config from '../../../../config.js';
8
8
  import request from '../../../../request.js';
9
9
  import { formatting } from '../../../../utils/formatting.js';
@@ -132,7 +132,7 @@ class SpoTenantSettingsSetCommand extends SpoCommand {
132
132
  }
133
133
  }
134
134
  }
135
- _SpoTenantSettingsSetCommand_instances = new WeakSet(), _SpoTenantSettingsSetCommand_initTelemetry = function _SpoTenantSettingsSetCommand_initTelemetry() {
135
+ _a = SpoTenantSettingsSetCommand, _SpoTenantSettingsSetCommand_instances = new WeakSet(), _SpoTenantSettingsSetCommand_initTelemetry = function _SpoTenantSettingsSetCommand_initTelemetry() {
136
136
  this.telemetry.push((args) => {
137
137
  const telemetryProps = {
138
138
  MinCompatibilityLevel: (!(!args.options.MinCompatibilityLevel)).toString(),
@@ -167,7 +167,7 @@ _SpoTenantSettingsSetCommand_instances = new WeakSet(), _SpoTenantSettingsSetCom
167
167
  AllowedDomainListForSyncClient: (!(!args.options.AllowedDomainListForSyncClient)).toString()
168
168
  };
169
169
  // add boolean values
170
- SpoTenantSettingsSetCommand.booleanOptions.forEach(o => {
170
+ _a.booleanOptions.forEach(o => {
171
171
  const value = args.options[o];
172
172
  if (value !== undefined) {
173
173
  telemetryProps[o] = value;
@@ -439,7 +439,7 @@ _SpoTenantSettingsSetCommand_instances = new WeakSet(), _SpoTenantSettingsSetCom
439
439
  return true;
440
440
  });
441
441
  }, _SpoTenantSettingsSetCommand_initTypes = function _SpoTenantSettingsSetCommand_initTypes() {
442
- this.types.boolean.push(...SpoTenantSettingsSetCommand.booleanOptions);
442
+ this.types.boolean.push(..._a.booleanOptions);
443
443
  };
444
444
  SpoTenantSettingsSetCommand.booleanOptions = [
445
445
  'ExternalServicesEnabled',
@@ -4,7 +4,7 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
4
4
  return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
5
5
  };
6
6
  var _SpoTermGetCommand_instances, _SpoTermGetCommand_initTelemetry, _SpoTermGetCommand_initOptions, _SpoTermGetCommand_initValidators, _SpoTermGetCommand_initOptionSets;
7
- import os from 'os';
7
+ import { Cli } from '../../../../cli/Cli.js';
8
8
  import config from '../../../../config.js';
9
9
  import request from '../../../../request.js';
10
10
  import { formatting } from '../../../../utils/formatting.js';
@@ -52,12 +52,12 @@ class SpoTermGetCommand extends SpoCommand {
52
52
  throw `Term with name '${args.options.name}' could not be found.`;
53
53
  }
54
54
  if (terms._Child_Items_.length > 1) {
55
- const disambiguationText = terms._Child_Items_.map(c => {
56
- return `- ${this.getTermId(c.Id)} - ${c.PathOfTerm}`;
57
- }).join(os.EOL);
58
- throw new Error(`Multiple terms with the specific term name found. Please disambiguate:${os.EOL}${disambiguationText}`);
55
+ const resultAsKeyValuePair = formatting.convertArrayToHashTable('Id', terms._Child_Items_);
56
+ term = await Cli.handleMultipleResultsFound(`Multiple terms with the specific term name found.`, resultAsKeyValuePair);
57
+ }
58
+ else {
59
+ term = terms._Child_Items_[0];
59
60
  }
60
- term = terms._Child_Items_[0];
61
61
  }
62
62
  else {
63
63
  term = csomResponse;
@@ -26,15 +26,7 @@ class SpoThemeListCommand extends SpoCommand {
26
26
  responseType: 'json'
27
27
  };
28
28
  const rawRes = await request.post(requestOptions);
29
- const themePreviews = rawRes.themePreviews;
30
- if (themePreviews && themePreviews.length > 0) {
31
- await logger.log(themePreviews);
32
- }
33
- else {
34
- if (this.verbose) {
35
- await logger.logToStderr('No themes found');
36
- }
37
- }
29
+ await logger.log(rawRes.themePreviews);
38
30
  }
39
31
  catch (err) {
40
32
  this.handleRejectedODataJsonPromise(err);
@@ -23,30 +23,8 @@ class SpoThemeRemoveCommand extends SpoCommand {
23
23
  __classPrivateFieldGet(this, _SpoThemeRemoveCommand_instances, "m", _SpoThemeRemoveCommand_initOptions).call(this);
24
24
  }
25
25
  async commandAction(logger, args) {
26
- const removeTheme = async () => {
27
- try {
28
- const spoAdminUrl = await spo.getSpoAdminUrl(logger, this.debug);
29
- if (this.verbose) {
30
- await logger.logToStderr(`Removing theme from tenant...`);
31
- }
32
- const requestOptions = {
33
- url: `${spoAdminUrl}/_api/thememanager/DeleteTenantTheme`,
34
- headers: {
35
- 'accept': 'application/json;odata=nometadata'
36
- },
37
- data: {
38
- name: args.options.name
39
- },
40
- responseType: 'json'
41
- };
42
- await request.post(requestOptions);
43
- }
44
- catch (err) {
45
- this.handleRejectedODataJsonPromise(err);
46
- }
47
- };
48
26
  if (args.options.force) {
49
- await removeTheme();
27
+ await this.removeTheme(logger, args.options);
50
28
  }
51
29
  else {
52
30
  const result = await Cli.prompt({
@@ -56,8 +34,30 @@ class SpoThemeRemoveCommand extends SpoCommand {
56
34
  message: `Are you sure you want to remove the theme`
57
35
  });
58
36
  if (result.continue) {
59
- await removeTheme();
37
+ await this.removeTheme(logger, args.options);
38
+ }
39
+ }
40
+ }
41
+ async removeTheme(logger, options) {
42
+ try {
43
+ const spoAdminUrl = await spo.getSpoAdminUrl(logger, this.debug);
44
+ if (this.verbose) {
45
+ await logger.logToStderr(`Removing theme from tenant...`);
60
46
  }
47
+ const requestOptions = {
48
+ url: `${spoAdminUrl}/_api/thememanager/DeleteTenantTheme`,
49
+ headers: {
50
+ 'accept': 'application/json;odata=nometadata'
51
+ },
52
+ data: {
53
+ name: options.name
54
+ },
55
+ responseType: 'json'
56
+ };
57
+ await request.post(requestOptions);
58
+ }
59
+ catch (err) {
60
+ this.handleRejectedODataJsonPromise(err);
61
61
  }
62
62
  }
63
63
  }
@@ -49,7 +49,6 @@ class SpoThemeSetCommand extends SpoCommand {
49
49
  if (contents && contents.ErrorInfo) {
50
50
  throw contents.ErrorInfo.ErrorMessage || 'ClientSvc unknown error';
51
51
  }
52
- return Promise.resolve();
53
52
  }
54
53
  catch (err) {
55
54
  this.handleRejectedPromise(err);
@@ -26,23 +26,23 @@ class SpoUserGetCommand extends SpoCommand {
26
26
  }
27
27
  async commandAction(logger, args) {
28
28
  if (this.verbose) {
29
- await logger.logToStderr(`Retrieving information for list in site at ${args.options.webUrl}...`);
29
+ await logger.logToStderr(`Retrieving information for user in site '${args.options.webUrl}'...`);
30
30
  }
31
31
  let requestUrl = '';
32
32
  if (args.options.id) {
33
- requestUrl = `${args.options.webUrl}/_api/web/siteusers/GetById('${formatting.encodeQueryParameter(args.options.id)}')`;
33
+ requestUrl = `${args.options.webUrl}/_api/web/siteusers/GetById('${formatting.encodeQueryParameter(args.options.id.toString())}')`;
34
34
  }
35
35
  else if (args.options.email) {
36
36
  requestUrl = `${args.options.webUrl}/_api/web/siteusers/GetByEmail('${formatting.encodeQueryParameter(args.options.email)}')`;
37
37
  }
38
- else if (args.options.userName) {
39
- requestUrl = `${args.options.webUrl}/_api/web/siteusers/GetByLoginName('${formatting.encodeQueryParameter(args.options.userName)}')`;
38
+ else if (args.options.loginName) {
39
+ requestUrl = `${args.options.webUrl}/_api/web/siteusers/GetByLoginName('${formatting.encodeQueryParameter(args.options.loginName)}')`;
40
40
  }
41
41
  const requestOptions = {
42
42
  url: requestUrl,
43
43
  method: 'GET',
44
44
  headers: {
45
- 'accept': 'application/json;odata=nometadata'
45
+ accept: 'application/json;odata=nometadata'
46
46
  },
47
47
  responseType: 'json'
48
48
  };
@@ -58,9 +58,9 @@ class SpoUserGetCommand extends SpoCommand {
58
58
  _SpoUserGetCommand_instances = new WeakSet(), _SpoUserGetCommand_initTelemetry = function _SpoUserGetCommand_initTelemetry() {
59
59
  this.telemetry.push((args) => {
60
60
  Object.assign(this.telemetryProperties, {
61
- id: (!(!args.options.id)).toString(),
62
- email: (!(!args.options.email)).toString(),
63
- userName: (!(!args.options.userName)).toString()
61
+ id: typeof args.options.id !== 'undefined',
62
+ email: typeof args.options.email !== 'undefined',
63
+ loginName: typeof args.options.loginName !== 'undefined'
64
64
  });
65
65
  });
66
66
  }, _SpoUserGetCommand_initOptions = function _SpoUserGetCommand_initOptions() {
@@ -71,7 +71,7 @@ _SpoUserGetCommand_instances = new WeakSet(), _SpoUserGetCommand_initTelemetry =
71
71
  }, {
72
72
  option: '--email [email]'
73
73
  }, {
74
- option: '--userName [userName]'
74
+ option: '--loginName [loginName]'
75
75
  });
76
76
  }, _SpoUserGetCommand_initValidators = function _SpoUserGetCommand_initValidators() {
77
77
  this.validators.push(async (args) => {
@@ -82,7 +82,7 @@ _SpoUserGetCommand_instances = new WeakSet(), _SpoUserGetCommand_initTelemetry =
82
82
  return validation.isValidSharePointUrl(args.options.webUrl);
83
83
  });
84
84
  }, _SpoUserGetCommand_initOptionSets = function _SpoUserGetCommand_initOptionSets() {
85
- this.optionSets.push({ options: ['id', 'email', 'userName'] });
85
+ this.optionSets.push({ options: ['id', 'email', 'loginName'] });
86
86
  };
87
87
  export default new SpoUserGetCommand();
88
88
  //# sourceMappingURL=user-get.js.map
@@ -26,33 +26,8 @@ class SpoUserRemoveCommand extends SpoCommand {
26
26
  __classPrivateFieldGet(this, _SpoUserRemoveCommand_instances, "m", _SpoUserRemoveCommand_initOptionSets).call(this);
27
27
  }
28
28
  async commandAction(logger, args) {
29
- const removeUser = async () => {
30
- if (this.verbose) {
31
- await logger.logToStderr(`Removing user from subsite ${args.options.webUrl} ...`);
32
- }
33
- let requestUrl = '';
34
- if (args.options.id) {
35
- requestUrl = `${encodeURI(args.options.webUrl)}/_api/web/siteusers/removebyid(${args.options.id})`;
36
- }
37
- if (args.options.loginName) {
38
- requestUrl = `${encodeURI(args.options.webUrl)}/_api/web/siteusers/removeByLoginName('${formatting.encodeQueryParameter(args.options.loginName)}')`;
39
- }
40
- const requestOptions = {
41
- url: requestUrl,
42
- headers: {
43
- accept: 'application/json;odata=nometadata'
44
- },
45
- responseType: 'json'
46
- };
47
- try {
48
- await request.post(requestOptions);
49
- }
50
- catch (err) {
51
- this.handleRejectedODataJsonPromise(err);
52
- }
53
- };
54
29
  if (args.options.force) {
55
- await removeUser();
30
+ await this.removeUser(logger, args.options);
56
31
  }
57
32
  else {
58
33
  const result = await Cli.prompt({
@@ -62,10 +37,35 @@ class SpoUserRemoveCommand extends SpoCommand {
62
37
  message: `Are you sure you want to remove specified user from the site ${args.options.webUrl}`
63
38
  });
64
39
  if (result.continue) {
65
- await removeUser();
40
+ await this.removeUser(logger, args.options);
66
41
  }
67
42
  }
68
43
  }
44
+ async removeUser(logger, options) {
45
+ if (this.verbose) {
46
+ await logger.logToStderr(`Removing user from subsite ${options.webUrl} ...`);
47
+ }
48
+ let requestUrl = `${encodeURI(options.webUrl)}/_api/web/siteusers/`;
49
+ if (options.id) {
50
+ requestUrl += `removebyid(${options.id})`;
51
+ }
52
+ else if (options.loginName) {
53
+ requestUrl += `removeByLoginName('${formatting.encodeQueryParameter(options.loginName)}')`;
54
+ }
55
+ const requestOptions = {
56
+ url: requestUrl,
57
+ headers: {
58
+ accept: 'application/json;odata=nometadata'
59
+ },
60
+ responseType: 'json'
61
+ };
62
+ try {
63
+ await request.post(requestOptions);
64
+ }
65
+ catch (err) {
66
+ this.handleRejectedODataJsonPromise(err);
67
+ }
68
+ }
69
69
  }
70
70
  _SpoUserRemoveCommand_instances = new WeakSet(), _SpoUserRemoveCommand_initTelemetry = function _SpoUserRemoveCommand_initTelemetry() {
71
71
  this.telemetry.push((args) => {
@@ -66,50 +66,43 @@ class SpoWebReindexCommand extends SpoCommand {
66
66
  this.handleRejectedPromise(err);
67
67
  }
68
68
  }
69
- reindexLists(webUrl, requestDigest, logger, webIdentityResp) {
70
- return new Promise((resolve, reject) => {
71
- (async () => {
72
- if (this.debug) {
73
- await logger.logToStderr(`Retrieving information about lists...`);
74
- }
75
- const requestOptions = {
76
- url: `${webUrl}/_api/web/lists?$select=NoCrawl,Title,RootFolder/Properties,RootFolder/ServerRelativeUrl&$expand=RootFolder/Properties`,
77
- headers: {
78
- 'accept': 'application/json;odata=nometadata'
79
- },
80
- responseType: 'json'
81
- };
82
- return request.get(requestOptions);
83
- })()
84
- .then((lists) => {
85
- const promises = lists.value.map(l => this.reindexList(l, webUrl, requestDigest, webIdentityResp, logger));
86
- return Promise.all(promises);
87
- })
88
- .then(() => {
89
- resolve();
90
- }, (err) => reject(err));
91
- });
69
+ async reindexLists(webUrl, requestDigest, logger, webIdentityResp) {
70
+ try {
71
+ if (this.debug) {
72
+ await logger.logToStderr(`Retrieving information about lists...`);
73
+ }
74
+ const requestOptions = {
75
+ url: `${webUrl}/_api/web/lists?$select=NoCrawl,Title,RootFolder/Properties,RootFolder/ServerRelativeUrl&$expand=RootFolder/Properties`,
76
+ headers: {
77
+ 'accept': 'application/json;odata=nometadata'
78
+ },
79
+ responseType: 'json'
80
+ };
81
+ const lists = await request.get(requestOptions);
82
+ const promises = lists.value.map(l => this.reindexList(l, webUrl, requestDigest, webIdentityResp, logger));
83
+ await Promise.all(promises);
84
+ }
85
+ catch (err) {
86
+ throw err;
87
+ }
92
88
  }
93
- reindexList(list, webUrl, requestDigest, webIdentityResp, logger) {
94
- return new Promise(async (resolve, reject) => {
95
- if (list.NoCrawl) {
96
- if (this.debug) {
97
- await logger.logToStderr(`List ${list.Title} is excluded from crawling`);
98
- }
99
- resolve();
100
- return;
89
+ async reindexList(list, webUrl, requestDigest, webIdentityResp, logger) {
90
+ if (list.NoCrawl) {
91
+ if (this.debug) {
92
+ await logger.logToStderr(`List ${list.Title} is excluded from crawling`);
101
93
  }
102
- spo
103
- .getFolderIdentity(webIdentityResp.objectIdentity, webUrl, list.RootFolder.ServerRelativeUrl, requestDigest)
104
- .then((folderIdentityResp) => {
105
- let searchversion = list.RootFolder.Properties.vti_x005f_searchversion || 0;
106
- searchversion++;
107
- return SpoPropertyBagBaseCommand.setProperty('vti_searchversion', searchversion.toString(), webUrl, requestDigest, folderIdentityResp, logger, this.debug, list.RootFolder.ServerRelativeUrl);
108
- })
109
- .then(() => {
110
- resolve();
111
- }, (err) => reject(err));
112
- });
94
+ return;
95
+ }
96
+ try {
97
+ const folderIdentityResp = await spo.getFolderIdentity(webIdentityResp.objectIdentity, webUrl, list.RootFolder.ServerRelativeUrl, requestDigest);
98
+ let searchversion = list.RootFolder.Properties.vti_x005f_searchversion || 0;
99
+ searchversion++;
100
+ await SpoPropertyBagBaseCommand.setProperty('vti_searchversion', searchversion.toString(), webUrl, requestDigest, folderIdentityResp, logger, this.debug, list.RootFolder.ServerRelativeUrl);
101
+ return;
102
+ }
103
+ catch (err) {
104
+ throw (err);
105
+ }
113
106
  }
114
107
  }
115
108
  _SpoWebReindexCommand_instances = new WeakSet(), _SpoWebReindexCommand_initOptions = function _SpoWebReindexCommand_initOptions() {
@@ -24,27 +24,8 @@ class SpoWebRemoveCommand extends SpoCommand {
24
24
  __classPrivateFieldGet(this, _SpoWebRemoveCommand_instances, "m", _SpoWebRemoveCommand_initValidators).call(this);
25
25
  }
26
26
  async commandAction(logger, args) {
27
- const removeWeb = async () => {
28
- const requestOptions = {
29
- url: `${encodeURI(args.options.url)}/_api/web`,
30
- headers: {
31
- accept: 'application/json;odata=nometadata',
32
- 'X-HTTP-Method': 'DELETE'
33
- },
34
- responseType: 'json'
35
- };
36
- if (this.verbose) {
37
- await logger.logToStderr(`Deleting subsite ${args.options.url} ...`);
38
- }
39
- try {
40
- await request.post(requestOptions);
41
- }
42
- catch (err) {
43
- this.handleRejectedODataJsonPromise(err);
44
- }
45
- };
46
27
  if (args.options.force) {
47
- await removeWeb();
28
+ await this.removeWeb(logger, args.options.url);
48
29
  }
49
30
  else {
50
31
  const result = await Cli.prompt({
@@ -54,10 +35,29 @@ class SpoWebRemoveCommand extends SpoCommand {
54
35
  message: `Are you sure you want to remove the subsite ${args.options.url}`
55
36
  });
56
37
  if (result.continue) {
57
- await removeWeb();
38
+ await this.removeWeb(logger, args.options.url);
58
39
  }
59
40
  }
60
41
  }
42
+ async removeWeb(logger, url) {
43
+ const requestOptions = {
44
+ url: `${encodeURI(url)}/_api/web`,
45
+ headers: {
46
+ accept: 'application/json;odata=nometadata',
47
+ 'X-HTTP-Method': 'DELETE'
48
+ },
49
+ responseType: 'json'
50
+ };
51
+ if (this.verbose) {
52
+ await logger.logToStderr(`Deleting subsite ${url} ...`);
53
+ }
54
+ try {
55
+ await request.post(requestOptions);
56
+ }
57
+ catch (err) {
58
+ this.handleRejectedODataJsonPromise(err);
59
+ }
60
+ }
61
61
  }
62
62
  _SpoWebRemoveCommand_instances = new WeakSet(), _SpoWebRemoveCommand_initTelemetry = function _SpoWebRemoveCommand_initTelemetry() {
63
63
  this.telemetry.push((args) => {