@pnp/cli-microsoft365 7.0.0-beta.a9cf617 → 7.0.0-beta.b7ec1d3

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 (515) hide show
  1. package/dist/Command.js +1 -1
  2. package/dist/cli/Cli.js +23 -8
  3. package/dist/m365/aad/commands/app/app-remove.js +3 -3
  4. package/dist/m365/aad/commands/app/app-role-remove.js +2 -2
  5. package/dist/m365/aad/commands/approleassignment/approleassignment-remove.js +3 -3
  6. package/dist/m365/aad/commands/groupsetting/groupsetting-remove.js +3 -3
  7. package/dist/m365/aad/commands/o365group/o365group-recyclebinitem-clear.js +3 -3
  8. package/dist/m365/aad/commands/o365group/o365group-recyclebinitem-remove.js +3 -3
  9. package/dist/m365/aad/commands/o365group/o365group-remove.js +3 -3
  10. package/dist/m365/aad/commands/o365group/o365group-user-remove.js +3 -3
  11. package/dist/m365/aad/commands/oauth2grant/oauth2grant-remove.js +2 -2
  12. package/dist/m365/aad/commands/siteclassification/siteclassification-disable.js +3 -3
  13. package/dist/m365/aad/commands/user/user-get.js +7 -1
  14. package/dist/m365/aad/commands/user/user-license-remove.js +3 -3
  15. package/dist/m365/aad/commands/user/user-list.js +3 -6
  16. package/dist/m365/aad/commands/user/user-recyclebinitem-clear.js +3 -3
  17. package/dist/m365/aad/commands/user/user-recyclebinitem-remove.js +3 -3
  18. package/dist/m365/aad/commands/user/user-remove.js +3 -3
  19. package/dist/m365/aad/commands/user/user-set.js +20 -20
  20. package/dist/m365/booking/commands/business/business-get.js +14 -15
  21. package/dist/m365/cli/commands/config/config-set.js +1 -1
  22. package/dist/m365/context/commands/context-remove.js +3 -3
  23. package/dist/m365/context/commands/option/option-remove.js +3 -3
  24. package/dist/m365/file/commands/file-list.js +1 -1
  25. package/dist/m365/flow/commands/flow-export.js +1 -1
  26. package/dist/m365/flow/commands/flow-remove.js +3 -3
  27. package/dist/m365/flow/commands/owner/owner-ensure.js +1 -1
  28. package/dist/m365/flow/commands/owner/owner-list.js +1 -1
  29. package/dist/m365/flow/commands/owner/owner-remove.js +4 -4
  30. package/dist/m365/flow/commands/run/run-cancel.js +4 -4
  31. package/dist/m365/flow/commands/run/run-get.js +1 -1
  32. package/dist/m365/flow/commands/run/run-list.js +1 -1
  33. package/dist/m365/flow/commands/run/run-resubmit.js +4 -4
  34. package/dist/m365/graph/commands/schemaextension/schemaextension-remove.js +3 -3
  35. package/dist/m365/pa/commands/app/app-consent-set.js +4 -4
  36. package/dist/m365/pa/commands/app/app-export.js +3 -3
  37. package/dist/m365/pa/commands/app/app-list.js +5 -5
  38. package/dist/m365/pa/commands/app/app-owner-set.js +115 -0
  39. package/dist/m365/pa/commands/app/app-permission-list.js +104 -0
  40. package/dist/m365/pa/commands/app/app-remove.js +3 -3
  41. package/dist/m365/pa/commands.js +2 -0
  42. package/dist/m365/planner/commands/bucket/bucket-add.js +14 -10
  43. package/dist/m365/planner/commands/bucket/bucket-get.js +25 -19
  44. package/dist/m365/planner/commands/bucket/bucket-list.js +14 -10
  45. package/dist/m365/planner/commands/bucket/bucket-remove.js +29 -23
  46. package/dist/m365/planner/commands/bucket/bucket-set.js +26 -28
  47. package/dist/m365/planner/commands/plan/plan-remove.js +3 -3
  48. package/dist/m365/planner/commands/roster/roster-member-add.js +3 -14
  49. package/dist/m365/planner/commands/roster/roster-member-remove.js +4 -4
  50. package/dist/m365/planner/commands/roster/roster-remove.js +3 -3
  51. package/dist/m365/planner/commands/task/task-checklistitem-remove.js +3 -3
  52. package/dist/m365/planner/commands/task/task-reference-remove.js +3 -3
  53. package/dist/m365/planner/commands/task/task-remove.js +3 -3
  54. package/dist/m365/pp/commands/aibuildermodel/aibuildermodel-get.js +2 -2
  55. package/dist/m365/pp/commands/aibuildermodel/aibuildermodel-list.js +2 -2
  56. package/dist/m365/pp/commands/aibuildermodel/aibuildermodel-remove.js +6 -6
  57. package/dist/m365/pp/commands/card/card-clone.js +3 -3
  58. package/dist/m365/pp/commands/card/card-get.js +2 -2
  59. package/dist/m365/pp/commands/card/card-list.js +2 -2
  60. package/dist/m365/pp/commands/card/card-remove.js +6 -6
  61. package/dist/m365/pp/commands/chatbot/chatbot-get.js +2 -2
  62. package/dist/m365/pp/commands/chatbot/chatbot-list.js +3 -3
  63. package/dist/m365/pp/commands/chatbot/chatbot-remove.js +6 -6
  64. package/dist/m365/pp/commands/dataverse/dataverse-table-get.js +2 -2
  65. package/dist/m365/pp/commands/dataverse/dataverse-table-list.js +2 -2
  66. package/dist/m365/pp/commands/dataverse/dataverse-table-remove.js +5 -5
  67. package/dist/m365/pp/commands/dataverse/dataverse-table-row-list.js +2 -2
  68. package/dist/m365/pp/commands/dataverse/dataverse-table-row-remove.js +5 -5
  69. package/dist/m365/pp/commands/solution/solution-get.js +2 -2
  70. package/dist/m365/pp/commands/solution/solution-list.js +2 -2
  71. package/dist/m365/pp/commands/solution/solution-publish.js +3 -3
  72. package/dist/m365/pp/commands/solution/solution-publisher-add.js +2 -2
  73. package/dist/m365/pp/commands/solution/solution-publisher-get.js +2 -2
  74. package/dist/m365/pp/commands/solution/solution-publisher-list.js +2 -2
  75. package/dist/m365/pp/commands/solution/solution-publisher-remove.js +6 -6
  76. package/dist/m365/pp/commands/solution/solution-remove.js +6 -6
  77. package/dist/m365/purview/commands/retentionevent/retentionevent-remove.js +22 -20
  78. package/dist/m365/purview/commands/retentioneventtype/retentioneventtype-remove.js +22 -20
  79. package/dist/m365/purview/commands/retentionlabel/retentionlabel-remove.js +3 -3
  80. package/dist/m365/search/commands/externalconnection/externalconnection-remove.js +38 -37
  81. package/dist/m365/spfx/commands/project/project-externalize/rules/DynamicRule.js +59 -51
  82. package/dist/m365/spo/commands/app/app-remove.js +3 -3
  83. package/dist/m365/spo/commands/app/app-retract.js +3 -3
  84. package/dist/m365/spo/commands/app/app-uninstall.js +3 -3
  85. package/dist/m365/spo/commands/applicationcustomizer/applicationcustomizer-remove.js +3 -3
  86. package/dist/m365/spo/commands/cdn/cdn-origin-remove.js +3 -3
  87. package/dist/m365/spo/commands/commandset/commandset-remove.js +3 -3
  88. package/dist/m365/spo/commands/contenttype/contenttype-field-remove.js +4 -4
  89. package/dist/m365/spo/commands/contenttype/contenttype-field-set.js +1 -1
  90. package/dist/m365/spo/commands/contenttype/contenttype-remove.js +3 -3
  91. package/dist/m365/spo/commands/customaction/customaction-clear.js +3 -3
  92. package/dist/m365/spo/commands/customaction/customaction-remove.js +3 -3
  93. package/dist/m365/spo/commands/eventreceiver/eventreceiver-remove.js +3 -3
  94. package/dist/m365/spo/commands/externaluser/externaluser-list.js +1 -1
  95. package/dist/m365/spo/commands/field/field-remove.js +3 -3
  96. package/dist/m365/spo/commands/file/file-add.js +1 -1
  97. package/dist/m365/spo/commands/file/file-checkin.js +1 -1
  98. package/dist/m365/spo/commands/file/file-checkout-undo.js +4 -4
  99. package/dist/m365/spo/commands/file/file-checkout.js +1 -1
  100. package/dist/m365/spo/commands/file/file-list.js +3 -14
  101. package/dist/m365/spo/commands/file/file-move.js +1 -1
  102. package/dist/m365/spo/commands/file/file-remove.js +3 -3
  103. package/dist/m365/spo/commands/file/file-rename.js +1 -1
  104. package/dist/m365/spo/commands/file/file-retentionlabel-remove.js +4 -4
  105. package/dist/m365/spo/commands/file/file-roleassignment-remove.js +3 -3
  106. package/dist/m365/spo/commands/file/file-roleinheritance-break.js +3 -3
  107. package/dist/m365/spo/commands/file/file-roleinheritance-reset.js +3 -3
  108. package/dist/m365/spo/commands/file/file-sharinginfo-get.js +1 -1
  109. package/dist/m365/spo/commands/file/file-sharinglink-clear.js +3 -3
  110. package/dist/m365/spo/commands/file/file-sharinglink-remove.js +3 -3
  111. package/dist/m365/spo/commands/file/file-version-clear.js +3 -3
  112. package/dist/m365/spo/commands/file/file-version-remove.js +3 -3
  113. package/dist/m365/spo/commands/file/file-version-restore.js +3 -3
  114. package/dist/m365/spo/commands/folder/folder-get.js +1 -1
  115. package/dist/m365/spo/commands/folder/folder-list.js +1 -1
  116. package/dist/m365/spo/commands/folder/folder-remove.js +34 -32
  117. package/dist/m365/spo/commands/folder/folder-rename.js +1 -1
  118. package/dist/m365/spo/commands/folder/folder-retentionlabel-remove.js +5 -5
  119. package/dist/m365/spo/commands/folder/folder-roleassignment-add.js +1 -1
  120. package/dist/m365/spo/commands/folder/folder-roleassignment-remove.js +4 -4
  121. package/dist/m365/spo/commands/folder/folder-roleinheritance-break.js +4 -4
  122. package/dist/m365/spo/commands/folder/folder-roleinheritance-reset.js +4 -4
  123. package/dist/m365/spo/commands/group/group-member-remove.js +3 -3
  124. package/dist/m365/spo/commands/group/group-remove.js +3 -3
  125. package/dist/m365/spo/commands/homesite/homesite-remove.js +3 -3
  126. package/dist/m365/spo/commands/hubsite/hubsite-data-get.js +1 -1
  127. package/dist/m365/spo/commands/hubsite/hubsite-disconnect.js +2 -2
  128. package/dist/m365/spo/commands/hubsite/hubsite-rights-revoke.js +3 -3
  129. package/dist/m365/spo/commands/hubsite/hubsite-unregister.js +3 -3
  130. package/dist/m365/spo/commands/knowledgehub/knowledgehub-remove.js +3 -3
  131. package/dist/m365/spo/commands/list/list-add.js +0 -9
  132. package/dist/m365/spo/commands/list/list-contenttype-remove.js +3 -3
  133. package/dist/m365/spo/commands/list/list-list.js +1 -1
  134. package/dist/m365/spo/commands/list/list-remove.js +3 -3
  135. package/dist/m365/spo/commands/list/list-retentionlabel-ensure.js +0 -4
  136. package/dist/m365/spo/commands/list/list-retentionlabel-get.js +0 -4
  137. package/dist/m365/spo/commands/list/list-retentionlabel-remove.js +3 -3
  138. package/dist/m365/spo/commands/list/list-roleassignment-add.js +9 -47
  139. package/dist/m365/spo/commands/list/list-roleassignment-remove.js +3 -3
  140. package/dist/m365/spo/commands/list/list-roleinheritance-break.js +3 -3
  141. package/dist/m365/spo/commands/list/list-roleinheritance-reset.js +3 -3
  142. package/dist/m365/spo/commands/list/list-set.js +0 -9
  143. package/dist/m365/spo/commands/list/list-view-field-remove.js +3 -3
  144. package/dist/m365/spo/commands/list/list-view-remove.js +3 -3
  145. package/dist/m365/spo/commands/list/list-webhook-remove.js +3 -3
  146. package/dist/m365/spo/commands/listitem/listitem-add.js +1 -1
  147. package/dist/m365/spo/commands/listitem/listitem-attachment-list.js +4 -4
  148. package/dist/m365/spo/commands/listitem/listitem-list.js +1 -1
  149. package/dist/m365/spo/commands/listitem/listitem-remove.js +3 -3
  150. package/dist/m365/spo/commands/listitem/listitem-retentionlabel-remove.js +3 -3
  151. package/dist/m365/spo/commands/listitem/listitem-roleassignment-remove.js +3 -3
  152. package/dist/m365/spo/commands/listitem/listitem-roleinheritance-break.js +3 -3
  153. package/dist/m365/spo/commands/listitem/listitem-roleinheritance-reset.js +3 -3
  154. package/dist/m365/spo/commands/navigation/navigation-node-remove.js +3 -3
  155. package/dist/m365/spo/commands/orgassetslibrary/orgassetslibrary-remove.js +2 -2
  156. package/dist/m365/spo/commands/orgnewssite/orgnewssite-remove.js +3 -3
  157. package/dist/m365/spo/commands/page/page-remove.js +35 -33
  158. package/dist/m365/spo/commands/propertybag/propertybag-get.js +1 -1
  159. package/dist/m365/spo/commands/propertybag/propertybag-list.js +1 -1
  160. package/dist/m365/spo/commands/propertybag/propertybag-remove.js +4 -4
  161. package/dist/m365/spo/commands/propertybag/propertybag-set.js +1 -1
  162. package/dist/m365/spo/commands/roledefinition/roledefinition-remove.js +28 -26
  163. package/dist/m365/spo/commands/serviceprincipal/serviceprincipal-set.js +2 -2
  164. package/dist/m365/spo/commands/site/site-apppermission-add.js +3 -3
  165. package/dist/m365/spo/commands/site/site-apppermission-remove.js +3 -3
  166. package/dist/m365/spo/commands/site/site-commsite-enable.js +9 -18
  167. package/dist/m365/spo/commands/site/site-hubsite-disconnect.js +3 -3
  168. package/dist/m365/spo/commands/site/site-list.js +1 -1
  169. package/dist/m365/spo/commands/site/site-recyclebinitem-clear.js +3 -3
  170. package/dist/m365/spo/commands/site/site-recyclebinitem-move.js +3 -3
  171. package/dist/m365/spo/commands/site/site-recyclebinitem-remove.js +3 -3
  172. package/dist/m365/spo/commands/site/site-remove.js +3 -3
  173. package/dist/m365/spo/commands/site/site-set.js +10 -2
  174. package/dist/m365/spo/commands/sitedesign/sitedesign-remove.js +3 -3
  175. package/dist/m365/spo/commands/sitedesign/sitedesign-rights-revoke.js +3 -3
  176. package/dist/m365/spo/commands/sitedesign/sitedesign-task-remove.js +3 -3
  177. package/dist/m365/spo/commands/sitescript/sitescript-remove.js +3 -3
  178. package/dist/m365/spo/commands/storageentity/storageentity-remove.js +3 -3
  179. package/dist/m365/spo/commands/tenant/tenant-appcatalog-add.js +12 -15
  180. package/dist/m365/spo/commands/tenant/tenant-applicationcustomizer-remove.js +3 -3
  181. package/dist/m365/spo/commands/tenant/tenant-applicationcustomizer-set.js +80 -2
  182. package/dist/m365/spo/commands/tenant/tenant-commandset-remove.js +3 -3
  183. package/dist/m365/spo/commands/tenant/tenant-commandset-set.js +107 -24
  184. package/dist/m365/spo/commands/tenant/tenant-recyclebinitem-remove.js +51 -51
  185. package/dist/m365/spo/commands/theme/theme-get.js +1 -2
  186. package/dist/m365/spo/commands/theme/theme-remove.js +3 -3
  187. package/dist/m365/spo/commands/user/user-get.js +5 -5
  188. package/dist/m365/spo/commands/user/user-remove.js +3 -3
  189. package/dist/m365/spo/commands/web/web-remove.js +3 -3
  190. package/dist/m365/spo/commands/web/web-roleassignment-remove.js +3 -3
  191. package/dist/m365/spo/commands/web/web-roleinheritance-break.js +3 -3
  192. package/dist/m365/spo/commands/web/web-roleinheritance-reset.js +3 -3
  193. package/dist/m365/spo/commands.js +0 -2
  194. package/dist/m365/teams/commands/app/app-remove.js +3 -3
  195. package/dist/m365/teams/commands/app/app-uninstall.js +3 -3
  196. package/dist/m365/teams/commands/cache/cache-remove.js +3 -3
  197. package/dist/m365/teams/commands/channel/channel-member-remove.js +3 -3
  198. package/dist/m365/teams/commands/channel/channel-remove.js +3 -3
  199. package/dist/m365/teams/commands/chat/chat-get.js +4 -4
  200. package/dist/m365/teams/commands/chat/chat-member-add.js +117 -0
  201. package/dist/m365/teams/commands/chat/chat-member-remove.js +3 -3
  202. package/dist/m365/teams/commands/chat/chat-message-send.js +4 -4
  203. package/dist/m365/teams/commands/meeting/meeting-get.js +16 -24
  204. package/dist/m365/teams/commands/meeting/meeting-list.js +2 -15
  205. package/dist/m365/teams/commands/tab/tab-remove.js +6 -6
  206. package/dist/m365/teams/commands/team/team-app-list.js +1 -1
  207. package/dist/m365/teams/commands/team/team-remove.js +3 -3
  208. package/dist/m365/teams/commands/user/user-app-remove.js +3 -3
  209. package/dist/m365/teams/commands.js +1 -0
  210. package/dist/m365/todo/commands/list/list-remove.js +3 -3
  211. package/dist/m365/todo/commands/task/task-remove.js +3 -3
  212. package/dist/m365/yammer/commands/group/group-user-remove.js +3 -3
  213. package/dist/m365/yammer/commands/message/message-like-set.js +3 -3
  214. package/dist/m365/yammer/commands/message/message-list.js +1 -1
  215. package/dist/m365/yammer/commands/message/message-remove.js +3 -3
  216. package/dist/utils/spo.js +74 -0
  217. package/docs/docs/_clisettings.mdx +1 -1
  218. package/docs/docs/cmd/_global.mdx +1 -1
  219. package/docs/docs/cmd/aad/app/app-remove.mdx +2 -2
  220. package/docs/docs/cmd/aad/app/app-role-remove.mdx +2 -2
  221. package/docs/docs/cmd/aad/approleassignment/approleassignment-remove.mdx +1 -1
  222. package/docs/docs/cmd/aad/groupsetting/groupsetting-remove.mdx +2 -2
  223. package/docs/docs/cmd/aad/o365group/o365group-recyclebinitem-clear.mdx +2 -2
  224. package/docs/docs/cmd/aad/o365group/o365group-recyclebinitem-remove.mdx +2 -2
  225. package/docs/docs/cmd/aad/o365group/o365group-remove.mdx +3 -3
  226. package/docs/docs/cmd/aad/o365group/o365group-report-activitycounts.mdx +1 -1
  227. package/docs/docs/cmd/aad/o365group/o365group-report-activitydetail.mdx +1 -1
  228. package/docs/docs/cmd/aad/o365group/o365group-report-activityfilecounts.mdx +1 -1
  229. package/docs/docs/cmd/aad/o365group/o365group-report-activitygroupcounts.mdx +1 -1
  230. package/docs/docs/cmd/aad/o365group/o365group-report-activitystorage.mdx +1 -1
  231. package/docs/docs/cmd/aad/o365group/o365group-user-remove.mdx +2 -2
  232. package/docs/docs/cmd/aad/oauth2grant/oauth2grant-remove.mdx +2 -2
  233. package/docs/docs/cmd/aad/siteclassification/siteclassification-disable.mdx +2 -2
  234. package/docs/docs/cmd/aad/user/user-get.mdx +118 -25
  235. package/docs/docs/cmd/aad/user/user-license-remove.mdx +1 -1
  236. package/docs/docs/cmd/aad/user/user-list.mdx +0 -9
  237. package/docs/docs/cmd/aad/user/user-recyclebinitem-clear.mdx +2 -2
  238. package/docs/docs/cmd/aad/user/user-recyclebinitem-remove.mdx +2 -2
  239. package/docs/docs/cmd/aad/user/user-remove.mdx +1 -1
  240. package/docs/docs/cmd/aad/user/user-set.mdx +11 -11
  241. package/docs/docs/cmd/context/context-remove.mdx +2 -2
  242. package/docs/docs/cmd/context/option/option-remove.mdx +2 -2
  243. package/docs/docs/cmd/file/file-list.mdx +1 -1
  244. package/docs/docs/cmd/flow/flow-export.mdx +1 -1
  245. package/docs/docs/cmd/flow/flow-remove.mdx +3 -3
  246. package/docs/docs/cmd/flow/owner/owner-ensure.mdx +1 -1
  247. package/docs/docs/cmd/flow/owner/owner-list.mdx +1 -1
  248. package/docs/docs/cmd/flow/owner/owner-remove.mdx +3 -3
  249. package/docs/docs/cmd/flow/run/run-cancel.mdx +1 -1
  250. package/docs/docs/cmd/flow/run/run-get.mdx +1 -1
  251. package/docs/docs/cmd/flow/run/run-list.mdx +1 -1
  252. package/docs/docs/cmd/flow/run/run-resubmit.mdx +3 -3
  253. package/docs/docs/cmd/graph/schemaextension/schemaextension-remove.mdx +2 -2
  254. package/docs/docs/cmd/onedrive/report/report-activityfilecounts.mdx +1 -1
  255. package/docs/docs/cmd/onedrive/report/report-activityusercounts.mdx +1 -1
  256. package/docs/docs/cmd/onedrive/report/report-activityuserdetail.mdx +1 -1
  257. package/docs/docs/cmd/onedrive/report/report-usageaccountcounts.mdx +1 -1
  258. package/docs/docs/cmd/onedrive/report/report-usageaccountdetail.mdx +1 -1
  259. package/docs/docs/cmd/onedrive/report/report-usagefilecounts.mdx +1 -1
  260. package/docs/docs/cmd/onedrive/report/report-usagestorage.mdx +1 -1
  261. package/docs/docs/cmd/outlook/report/report-mailactivitycounts.mdx +1 -1
  262. package/docs/docs/cmd/outlook/report/report-mailactivityusercounts.mdx +1 -1
  263. package/docs/docs/cmd/outlook/report/report-mailactivityuserdetail.mdx +1 -1
  264. package/docs/docs/cmd/outlook/report/report-mailappusageappsusercounts.mdx +1 -1
  265. package/docs/docs/cmd/outlook/report/report-mailappusageusercounts.mdx +1 -1
  266. package/docs/docs/cmd/outlook/report/report-mailappusageuserdetail.mdx +1 -1
  267. package/docs/docs/cmd/outlook/report/report-mailappusageversionsusercounts.mdx +1 -1
  268. package/docs/docs/cmd/outlook/report/report-mailboxusagedetail.mdx +1 -1
  269. package/docs/docs/cmd/outlook/report/report-mailboxusagemailboxcount.mdx +1 -1
  270. package/docs/docs/cmd/outlook/report/report-mailboxusagequotastatusmailboxcounts.mdx +1 -1
  271. package/docs/docs/cmd/outlook/report/report-mailboxusagestorage.mdx +1 -1
  272. package/docs/docs/cmd/pa/app/app-consent-set.mdx +4 -4
  273. package/docs/docs/cmd/pa/app/app-export.mdx +3 -3
  274. package/docs/docs/cmd/pa/app/app-list.mdx +2 -2
  275. package/docs/docs/cmd/pa/app/app-owner-set.mdx +60 -0
  276. package/docs/docs/cmd/pa/app/app-permission-list.mdx +132 -0
  277. package/docs/docs/cmd/pa/app/app-remove.mdx +2 -2
  278. package/docs/docs/cmd/planner/bucket/bucket-add.mdx +21 -4
  279. package/docs/docs/cmd/planner/bucket/bucket-get.mdx +22 -5
  280. package/docs/docs/cmd/planner/bucket/bucket-list.mdx +21 -4
  281. package/docs/docs/cmd/planner/bucket/bucket-remove.mdx +23 -6
  282. package/docs/docs/cmd/planner/bucket/bucket-set.mdx +22 -5
  283. package/docs/docs/cmd/planner/plan/plan-remove.mdx +2 -2
  284. package/docs/docs/cmd/planner/roster/roster-member-remove.mdx +2 -2
  285. package/docs/docs/cmd/planner/roster/roster-remove.mdx +2 -2
  286. package/docs/docs/cmd/planner/task/task-checklistitem-remove.mdx +2 -2
  287. package/docs/docs/cmd/planner/task/task-reference-remove.mdx +1 -1
  288. package/docs/docs/cmd/planner/task/task-remove.mdx +2 -2
  289. package/docs/docs/cmd/pp/aibuildermodel/aibuildermodel-get.mdx +4 -4
  290. package/docs/docs/cmd/pp/aibuildermodel/aibuildermodel-list.mdx +4 -4
  291. package/docs/docs/cmd/pp/aibuildermodel/aibuildermodel-remove.mdx +5 -5
  292. package/docs/docs/cmd/pp/card/card-clone.mdx +6 -6
  293. package/docs/docs/cmd/pp/card/card-get.mdx +6 -6
  294. package/docs/docs/cmd/pp/card/card-list.mdx +4 -4
  295. package/docs/docs/cmd/pp/card/card-remove.mdx +10 -10
  296. package/docs/docs/cmd/pp/chatbot/chatbot-get.mdx +6 -6
  297. package/docs/docs/cmd/pp/chatbot/chatbot-list.mdx +4 -4
  298. package/docs/docs/cmd/pp/chatbot/chatbot-remove.mdx +5 -5
  299. package/docs/docs/cmd/pp/dataverse/dataverse-table-get.mdx +2 -2
  300. package/docs/docs/cmd/pp/dataverse/dataverse-table-list.mdx +2 -2
  301. package/docs/docs/cmd/pp/dataverse/dataverse-table-remove.mdx +3 -3
  302. package/docs/docs/cmd/pp/dataverse/dataverse-table-row-list.mdx +5 -5
  303. package/docs/docs/cmd/pp/dataverse/dataverse-table-row-remove.mdx +6 -6
  304. package/docs/docs/cmd/pp/solution/solution-get.mdx +6 -6
  305. package/docs/docs/cmd/pp/solution/solution-list.mdx +4 -4
  306. package/docs/docs/cmd/pp/solution/solution-publish.mdx +4 -4
  307. package/docs/docs/cmd/pp/solution/solution-publisher-add.mdx +3 -3
  308. package/docs/docs/cmd/pp/solution/solution-publisher-get.mdx +6 -6
  309. package/docs/docs/cmd/pp/solution/solution-publisher-list.mdx +4 -4
  310. package/docs/docs/cmd/pp/solution/solution-publisher-remove.mdx +6 -6
  311. package/docs/docs/cmd/pp/solution/solution-remove.mdx +10 -10
  312. package/docs/docs/cmd/purview/retentionevent/retentionevent-remove.mdx +1 -1
  313. package/docs/docs/cmd/purview/retentioneventtype/retentioneventtype-remove.mdx +1 -1
  314. package/docs/docs/cmd/purview/retentionlabel/retentionlabel-remove.mdx +1 -1
  315. package/docs/docs/cmd/search/externalconnection/externalconnection-remove.mdx +2 -2
  316. package/docs/docs/cmd/skype/report/report-activitycounts.mdx +1 -1
  317. package/docs/docs/cmd/skype/report/report-activityusercounts.mdx +1 -1
  318. package/docs/docs/cmd/skype/report/report-activityuserdetail.mdx +1 -1
  319. package/docs/docs/cmd/spfx/project/project-externalize.mdx +1 -1
  320. package/docs/docs/cmd/spfx/project/project-upgrade.mdx +1 -1
  321. package/docs/docs/cmd/spo/app/app-remove.mdx +2 -2
  322. package/docs/docs/cmd/spo/app/app-retract.mdx +2 -2
  323. package/docs/docs/cmd/spo/app/app-uninstall.mdx +1 -1
  324. package/docs/docs/cmd/spo/applicationcustomizer/applicationcustomizer-remove.mdx +4 -4
  325. package/docs/docs/cmd/spo/cdn/cdn-origin-remove.mdx +1 -1
  326. package/docs/docs/cmd/spo/commandset/commandset-remove.mdx +1 -1
  327. package/docs/docs/cmd/spo/contenttype/contenttype-field-remove.mdx +3 -3
  328. package/docs/docs/cmd/spo/contenttype/contenttype-field-set.mdx +1 -1
  329. package/docs/docs/cmd/spo/contenttype/contenttype-remove.mdx +3 -3
  330. package/docs/docs/cmd/spo/customaction/customaction-clear.mdx +2 -2
  331. package/docs/docs/cmd/spo/customaction/customaction-remove.mdx +3 -3
  332. package/docs/docs/cmd/spo/eventreceiver/eventreceiver-remove.mdx +1 -1
  333. package/docs/docs/cmd/spo/externaluser/externaluser-list.mdx +1 -1
  334. package/docs/docs/cmd/spo/field/field-remove.mdx +1 -1
  335. package/docs/docs/cmd/spo/file/file-add.mdx +1 -1
  336. package/docs/docs/cmd/spo/file/file-checkin.mdx +1 -1
  337. package/docs/docs/cmd/spo/file/file-checkout-undo.mdx +3 -3
  338. package/docs/docs/cmd/spo/file/file-checkout.mdx +1 -1
  339. package/docs/docs/cmd/spo/file/file-list.mdx +5 -9
  340. package/docs/docs/cmd/spo/file/file-remove.mdx +1 -1
  341. package/docs/docs/cmd/spo/file/file-retentionlabel-ensure.mdx +1 -1
  342. package/docs/docs/cmd/spo/file/file-retentionlabel-remove.mdx +1 -1
  343. package/docs/docs/cmd/spo/file/file-roleassignment-remove.mdx +1 -1
  344. package/docs/docs/cmd/spo/file/file-roleinheritance-break.mdx +1 -1
  345. package/docs/docs/cmd/spo/file/file-roleinheritance-reset.mdx +2 -2
  346. package/docs/docs/cmd/spo/file/file-sharinginfo-get.mdx +1 -1
  347. package/docs/docs/cmd/spo/file/file-sharinglink-clear.mdx +2 -2
  348. package/docs/docs/cmd/spo/file/file-sharinglink-remove.mdx +2 -2
  349. package/docs/docs/cmd/spo/file/file-version-clear.mdx +3 -3
  350. package/docs/docs/cmd/spo/file/file-version-remove.mdx +3 -3
  351. package/docs/docs/cmd/spo/file/file-version-restore.mdx +3 -3
  352. package/docs/docs/cmd/spo/folder/folder-get.mdx +1 -1
  353. package/docs/docs/cmd/spo/folder/folder-list.mdx +1 -1
  354. package/docs/docs/cmd/spo/folder/folder-remove.mdx +2 -2
  355. package/docs/docs/cmd/spo/folder/folder-rename.mdx +1 -1
  356. package/docs/docs/cmd/spo/folder/folder-retentionlabel-remove.mdx +1 -1
  357. package/docs/docs/cmd/spo/folder/folder-roleassignment-add.mdx +1 -1
  358. package/docs/docs/cmd/spo/folder/folder-roleassignment-remove.mdx +3 -3
  359. package/docs/docs/cmd/spo/folder/folder-roleinheritance-break.mdx +4 -4
  360. package/docs/docs/cmd/spo/folder/folder-roleinheritance-reset.mdx +4 -4
  361. package/docs/docs/cmd/spo/group/group-remove.mdx +1 -1
  362. package/docs/docs/cmd/spo/homesite/homesite-remove.mdx +2 -2
  363. package/docs/docs/cmd/spo/hubsite/hubsite-data-get.mdx +2 -2
  364. package/docs/docs/cmd/spo/hubsite/hubsite-disconnect.mdx +1 -1
  365. package/docs/docs/cmd/spo/hubsite/hubsite-rights-revoke.mdx +2 -2
  366. package/docs/docs/cmd/spo/hubsite/hubsite-unregister.mdx +2 -2
  367. package/docs/docs/cmd/spo/knowledgehub/knowledgehub-remove.mdx +2 -2
  368. package/docs/docs/cmd/spo/list/list-add.mdx +0 -3
  369. package/docs/docs/cmd/spo/list/list-contenttype-remove.mdx +2 -2
  370. package/docs/docs/cmd/spo/list/list-list.mdx +1 -1
  371. package/docs/docs/cmd/spo/list/list-remove.mdx +1 -1
  372. package/docs/docs/cmd/spo/list/list-retentionlabel-ensure.mdx +0 -6
  373. package/docs/docs/cmd/spo/list/list-retentionlabel-get.mdx +0 -6
  374. package/docs/docs/cmd/spo/list/list-retentionlabel-remove.mdx +2 -2
  375. package/docs/docs/cmd/spo/list/list-roleassignment-remove.mdx +1 -1
  376. package/docs/docs/cmd/spo/list/list-roleinheritance-break.mdx +2 -2
  377. package/docs/docs/cmd/spo/list/list-roleinheritance-reset.mdx +2 -2
  378. package/docs/docs/cmd/spo/list/list-set.mdx +0 -3
  379. package/docs/docs/cmd/spo/list/list-view-remove.mdx +2 -2
  380. package/docs/docs/cmd/spo/list/list-webhook-remove.mdx +2 -2
  381. package/docs/docs/cmd/spo/listitem/listitem-add.mdx +1 -1
  382. package/docs/docs/cmd/spo/listitem/listitem-attachment-list.mdx +7 -7
  383. package/docs/docs/cmd/spo/listitem/listitem-list.mdx +1 -1
  384. package/docs/docs/cmd/spo/listitem/listitem-remove.mdx +1 -1
  385. package/docs/docs/cmd/spo/listitem/listitem-retentionlabel-remove.mdx +1 -1
  386. package/docs/docs/cmd/spo/listitem/listitem-roleassignment-remove.mdx +2 -2
  387. package/docs/docs/cmd/spo/listitem/listitem-roleinheritance-break.mdx +2 -2
  388. package/docs/docs/cmd/spo/listitem/listitem-roleinheritance-reset.mdx +2 -2
  389. package/docs/docs/cmd/spo/navigation/navigation-node-remove.mdx +2 -2
  390. package/docs/docs/cmd/spo/orgassetslibrary/orgassetslibrary-remove.mdx +3 -3
  391. package/docs/docs/cmd/spo/orgnewssite/orgnewssite-remove.mdx +2 -2
  392. package/docs/docs/cmd/spo/page/page-remove.mdx +3 -3
  393. package/docs/docs/cmd/spo/propertybag/propertybag-get.mdx +1 -1
  394. package/docs/docs/cmd/spo/propertybag/propertybag-list.mdx +1 -1
  395. package/docs/docs/cmd/spo/propertybag/propertybag-remove.mdx +3 -3
  396. package/docs/docs/cmd/spo/propertybag/propertybag-set.mdx +1 -1
  397. package/docs/docs/cmd/spo/report/report-activityfilecounts.mdx +1 -1
  398. package/docs/docs/cmd/spo/report/report-activitypages.mdx +1 -1
  399. package/docs/docs/cmd/spo/report/report-activityusercounts.mdx +1 -1
  400. package/docs/docs/cmd/spo/report/report-activityuserdetail.mdx +1 -1
  401. package/docs/docs/cmd/spo/report/report-siteusagedetail.mdx +1 -1
  402. package/docs/docs/cmd/spo/report/report-siteusagefilecounts.mdx +1 -1
  403. package/docs/docs/cmd/spo/report/report-siteusagepages.mdx +1 -1
  404. package/docs/docs/cmd/spo/report/report-siteusagesitecounts.mdx +1 -1
  405. package/docs/docs/cmd/spo/report/report-siteusagestorage.mdx +1 -1
  406. package/docs/docs/cmd/spo/roledefinition/roledefinition-remove.mdx +2 -2
  407. package/docs/docs/cmd/spo/serviceprincipal/serviceprincipal-set.mdx +2 -2
  408. package/docs/docs/cmd/spo/site/site-add.mdx +35 -0
  409. package/docs/docs/cmd/spo/site/site-appcatalog-add.mdx +5 -1
  410. package/docs/docs/cmd/spo/site/site-appcatalog-list.mdx +14 -0
  411. package/docs/docs/cmd/spo/site/site-appcatalog-remove.mdx +4 -0
  412. package/docs/docs/cmd/spo/site/site-apppermission-add.mdx +68 -0
  413. package/docs/docs/cmd/spo/site/site-apppermission-get.mdx +55 -0
  414. package/docs/docs/cmd/spo/site/site-apppermission-list.mdx +55 -0
  415. package/docs/docs/cmd/spo/site/site-apppermission-remove.mdx +5 -1
  416. package/docs/docs/cmd/spo/site/site-apppermission-set.mdx +66 -0
  417. package/docs/docs/cmd/spo/site/site-chrome-set.mdx +4 -0
  418. package/docs/docs/cmd/spo/site/site-commsite-enable.mdx +11 -1
  419. package/docs/docs/cmd/spo/site/site-ensure.mdx +70 -0
  420. package/docs/docs/cmd/spo/site/site-get.mdx +179 -0
  421. package/docs/docs/cmd/spo/site/site-groupify.mdx +54 -0
  422. package/docs/docs/cmd/spo/site/site-hubsite-connect.mdx +4 -0
  423. package/docs/docs/cmd/spo/site/site-hubsite-disconnect.mdx +6 -2
  424. package/docs/docs/cmd/spo/site/site-hubsite-theme-sync.mdx +5 -1
  425. package/docs/docs/cmd/spo/site/site-inplacerecordsmanagement-set.mdx +4 -0
  426. package/docs/docs/cmd/spo/site/site-list.mdx +305 -2
  427. package/docs/docs/cmd/spo/site/site-recyclebinitem-clear.mdx +1 -1
  428. package/docs/docs/cmd/spo/site/site-recyclebinitem-list.mdx +80 -0
  429. package/docs/docs/cmd/spo/site/site-recyclebinitem-move.mdx +1 -1
  430. package/docs/docs/cmd/spo/site/site-recyclebinitem-remove.mdx +2 -2
  431. package/docs/docs/cmd/spo/site/site-recyclebinitem-restore.mdx +4 -0
  432. package/docs/docs/cmd/spo/site/site-remove.mdx +5 -1
  433. package/docs/docs/cmd/spo/site/site-rename.mdx +92 -0
  434. package/docs/docs/cmd/spo/site/site-set.mdx +13 -0
  435. package/docs/docs/cmd/spo/sitedesign/sitedesign-add.mdx +116 -0
  436. package/docs/docs/cmd/spo/sitedesign/sitedesign-apply.mdx +125 -0
  437. package/docs/docs/cmd/spo/sitedesign/sitedesign-get.mdx +117 -0
  438. package/docs/docs/cmd/spo/sitedesign/sitedesign-list.mdx +94 -0
  439. package/docs/docs/cmd/spo/sitedesign/sitedesign-remove.mdx +6 -2
  440. package/docs/docs/cmd/spo/sitedesign/sitedesign-rights-grant.mdx +4 -0
  441. package/docs/docs/cmd/spo/sitedesign/sitedesign-rights-list.mdx +54 -0
  442. package/docs/docs/cmd/spo/sitedesign/sitedesign-rights-revoke.mdx +6 -2
  443. package/docs/docs/cmd/spo/sitedesign/sitedesign-run-list.mdx +66 -0
  444. package/docs/docs/cmd/spo/sitedesign/sitedesign-run-status-get.mdx +65 -0
  445. package/docs/docs/cmd/spo/sitedesign/sitedesign-set.mdx +117 -0
  446. package/docs/docs/cmd/spo/sitedesign/sitedesign-task-get.mdx +61 -0
  447. package/docs/docs/cmd/spo/sitedesign/sitedesign-task-list.mdx +60 -0
  448. package/docs/docs/cmd/spo/sitedesign/sitedesign-task-remove.mdx +6 -2
  449. package/docs/docs/cmd/spo/sitescript/sitescript-add.mdx +75 -0
  450. package/docs/docs/cmd/spo/sitescript/sitescript-get.mdx +62 -0
  451. package/docs/docs/cmd/spo/sitescript/sitescript-list.mdx +60 -0
  452. package/docs/docs/cmd/spo/sitescript/sitescript-remove.mdx +6 -2
  453. package/docs/docs/cmd/spo/sitescript/sitescript-set.mdx +63 -0
  454. package/docs/docs/cmd/spo/storageentity/storageentity-get.mdx +53 -0
  455. package/docs/docs/cmd/spo/storageentity/storageentity-list.mdx +54 -0
  456. package/docs/docs/cmd/spo/storageentity/storageentity-remove.mdx +6 -2
  457. package/docs/docs/cmd/spo/storageentity/storageentity-set.mdx +4 -0
  458. package/docs/docs/cmd/spo/tenant/tenant-appcatalog-add.mdx +4 -0
  459. package/docs/docs/cmd/spo/tenant/tenant-appcatalogurl-get.mdx +35 -0
  460. package/docs/docs/cmd/spo/tenant/tenant-applicationcustomizer-remove.mdx +1 -1
  461. package/docs/docs/cmd/spo/tenant/tenant-applicationcustomizer-set.mdx +12 -3
  462. package/docs/docs/cmd/spo/tenant/tenant-commandset-remove.mdx +1 -1
  463. package/docs/docs/cmd/spo/tenant/tenant-commandset-set.mdx +23 -11
  464. package/docs/docs/cmd/spo/tenant/tenant-recyclebinitem-list.mdx +67 -0
  465. package/docs/docs/cmd/spo/tenant/tenant-recyclebinitem-remove.mdx +5 -1
  466. package/docs/docs/cmd/spo/tenant/tenant-recyclebinitem-restore.mdx +50 -0
  467. package/docs/docs/cmd/spo/tenant/tenant-settings-list.mdx +729 -0
  468. package/docs/docs/cmd/spo/tenant/tenant-settings-set.mdx +5 -0
  469. package/docs/docs/cmd/spo/theme/theme-apply.mdx +35 -0
  470. package/docs/docs/cmd/spo/theme/theme-get.mdx +74 -0
  471. package/docs/docs/cmd/spo/theme/theme-list.mdx +52 -0
  472. package/docs/docs/cmd/spo/theme/theme-remove.mdx +6 -2
  473. package/docs/docs/cmd/spo/theme/theme-set.mdx +4 -0
  474. package/docs/docs/cmd/spo/user/user-get.mdx +6 -6
  475. package/docs/docs/cmd/spo/user/user-remove.mdx +2 -2
  476. package/docs/docs/cmd/spo/web/web-remove.mdx +2 -2
  477. package/docs/docs/cmd/spo/web/web-roleassignment-remove.mdx +2 -2
  478. package/docs/docs/cmd/spo/web/web-roleinheritance-break.mdx +1 -1
  479. package/docs/docs/cmd/spo/web/web-roleinheritance-reset.mdx +2 -2
  480. package/docs/docs/cmd/teams/app/app-remove.mdx +2 -2
  481. package/docs/docs/cmd/teams/app/app-uninstall.mdx +1 -1
  482. package/docs/docs/cmd/teams/cache/cache-remove.mdx +1 -1
  483. package/docs/docs/cmd/teams/channel/channel-member-remove.mdx +1 -1
  484. package/docs/docs/cmd/teams/channel/channel-remove.mdx +3 -3
  485. package/docs/docs/cmd/teams/chat/chat-member-add.mdx +66 -0
  486. package/docs/docs/cmd/teams/chat/chat-member-remove.mdx +2 -2
  487. package/docs/docs/cmd/teams/report/report-deviceusagedistributionusercounts.mdx +1 -1
  488. package/docs/docs/cmd/teams/report/report-deviceusageusercounts.mdx +1 -1
  489. package/docs/docs/cmd/teams/report/report-deviceusageuserdetail.mdx +1 -1
  490. package/docs/docs/cmd/teams/report/report-useractivitycounts.mdx +1 -1
  491. package/docs/docs/cmd/teams/report/report-useractivityusercounts.mdx +1 -1
  492. package/docs/docs/cmd/teams/report/report-useractivityuserdetail.mdx +1 -1
  493. package/docs/docs/cmd/teams/tab/tab-remove.mdx +2 -2
  494. package/docs/docs/cmd/teams/team/team-remove.mdx +2 -2
  495. package/docs/docs/cmd/teams/user/user-app-remove.mdx +1 -1
  496. package/docs/docs/cmd/tenant/report/report-activeusercounts.mdx +1 -1
  497. package/docs/docs/cmd/tenant/report/report-activeuserdetail.mdx +1 -1
  498. package/docs/docs/cmd/tenant/report/report-servicesusercounts.mdx +1 -1
  499. package/docs/docs/cmd/todo/list/list-remove.mdx +2 -2
  500. package/docs/docs/cmd/todo/task/task-remove.mdx +1 -1
  501. package/docs/docs/cmd/yammer/group/group-user-remove.mdx +2 -2
  502. package/docs/docs/cmd/yammer/message/message-like-set.mdx +2 -2
  503. package/docs/docs/cmd/yammer/message/message-list.mdx +1 -1
  504. package/docs/docs/cmd/yammer/message/message-remove.mdx +2 -2
  505. package/docs/docs/cmd/yammer/report/report-activitycounts.mdx +1 -1
  506. package/docs/docs/cmd/yammer/report/report-activityusercounts.mdx +1 -1
  507. package/docs/docs/cmd/yammer/report/report-activityuserdetail.mdx +1 -1
  508. package/docs/docs/cmd/yammer/report/report-deviceusagedistributionusercounts.mdx +1 -1
  509. package/docs/docs/cmd/yammer/report/report-deviceusageusercounts.mdx +1 -1
  510. package/docs/docs/cmd/yammer/report/report-deviceusageuserdetail.mdx +1 -1
  511. package/docs/docs/cmd/yammer/report/report-groupsactivitycounts.mdx +1 -1
  512. package/docs/docs/cmd/yammer/report/report-groupsactivitydetail.mdx +1 -1
  513. package/docs/docs/cmd/yammer/report/report-groupsactivitygroupcounts.mdx +1 -1
  514. package/npm-shrinkwrap.json +212 -212
  515. package/package.json +10 -10
@@ -62,7 +62,8 @@ class SpoTenantAppCatalogAddCommand extends SpoCommand_1.default {
62
62
  });
63
63
  }
64
64
  ensureNoExistingSite(url, force, logger) {
65
- return new Promise((resolve, reject) => {
65
+ var _a, _b;
66
+ return __awaiter(this, void 0, void 0, function* () {
66
67
  if (this.verbose) {
67
68
  logger.logToStderr(`Checking if site ${url} exists...`);
68
69
  }
@@ -74,14 +75,13 @@ class SpoTenantAppCatalogAddCommand extends SpoCommand_1.default {
74
75
  _: []
75
76
  }
76
77
  };
77
- Cli_1.Cli
78
- .executeCommandWithOutput(spoSiteGetCommand, siteGetOptions)
79
- .then(() => {
78
+ try {
79
+ yield Cli_1.Cli.executeCommandWithOutput(spoSiteGetCommand, siteGetOptions);
80
80
  if (this.verbose) {
81
81
  logger.logToStderr(`Found site ${url}`);
82
82
  }
83
83
  if (!force) {
84
- return reject(new Command_1.CommandError(`Another site exists at ${url}`));
84
+ throw new Command_1.CommandError(`Another site exists at ${url}`);
85
85
  }
86
86
  if (this.verbose) {
87
87
  logger.logToStderr(`Deleting site ${url}...`);
@@ -94,20 +94,17 @@ class SpoTenantAppCatalogAddCommand extends SpoCommand_1.default {
94
94
  verbose: this.verbose,
95
95
  debug: this.debug
96
96
  };
97
- Cli_1.Cli
98
- .executeCommand(spoSiteRemoveCommand, { options: Object.assign(Object.assign({}, siteRemoveOptions), { _: [] }) })
99
- .then(() => resolve(), (err) => reject(err));
100
- }, (err) => {
101
- if (err.error.message !== 'File Not Found.' && err.error.message !== '404 FILE NOT FOUND') {
102
- // some other error occurred
103
- return reject(err.error);
97
+ yield Cli_1.Cli.executeCommand(spoSiteRemoveCommand, { options: Object.assign(Object.assign({}, siteRemoveOptions), { _: [] }) });
98
+ }
99
+ catch (err) {
100
+ if (((_a = err.error) === null || _a === void 0 ? void 0 : _a.message) !== 'File not Found' && ((_b = err.error) === null || _b === void 0 ? void 0 : _b.message) !== '404 FILE NOT FOUND') {
101
+ throw err.error || err;
104
102
  }
105
103
  if (this.verbose) {
106
104
  logger.logToStderr(`No site found at ${url}`);
107
105
  }
108
- // site not found. continue
109
- resolve();
110
- });
106
+ // Site not found. Continue
107
+ }
111
108
  });
112
109
  }
113
110
  createAppCatalog(options, logger) {
@@ -42,7 +42,7 @@ class SpoTenantApplicationCustomizerRemoveCommand extends SpoCommand_1.default {
42
42
  commandAction(logger, args) {
43
43
  return __awaiter(this, void 0, void 0, function* () {
44
44
  try {
45
- if (args.options.confirm) {
45
+ if (args.options.force) {
46
46
  return yield this.removeTenantApplicationCustomizer(logger, args);
47
47
  }
48
48
  const result = yield Cli_1.Cli.prompt({
@@ -117,7 +117,7 @@ _SpoTenantApplicationCustomizerRemoveCommand_instances = new WeakSet(), _SpoTena
117
117
  title: typeof args.options.title !== 'undefined',
118
118
  id: typeof args.options.id !== 'undefined',
119
119
  clientSideComponentId: typeof args.options.clientSideComponentId !== 'undefined',
120
- confirm: !!args.options.confirm
120
+ force: !!args.options.force
121
121
  });
122
122
  });
123
123
  }, _SpoTenantApplicationCustomizerRemoveCommand_initOptions = function _SpoTenantApplicationCustomizerRemoveCommand_initOptions() {
@@ -128,7 +128,7 @@ _SpoTenantApplicationCustomizerRemoveCommand_instances = new WeakSet(), _SpoTena
128
128
  }, {
129
129
  option: '-c, --clientSideComponentId [clientSideComponentId]'
130
130
  }, {
131
- option: '--confirm'
131
+ option: '-f, --force'
132
132
  });
133
133
  }, _SpoTenantApplicationCustomizerRemoveCommand_initValidators = function _SpoTenantApplicationCustomizerRemoveCommand_initValidators() {
134
134
  this.validators.push((args) => __awaiter(this, void 0, void 0, function* () {
@@ -23,6 +23,8 @@ const validation_1 = require("../../../../utils/validation");
23
23
  const SpoCommand_1 = require("../../../base/SpoCommand");
24
24
  const commands_1 = require("../../commands");
25
25
  const os = require("os");
26
+ const Cli_1 = require("../../../../cli/Cli");
27
+ const spoListItemListCommand = require("../listitem/listitem-list");
26
28
  const request_1 = require("../../../../request");
27
29
  class SpoTenantApplicationCustomizerSetCommand extends SpoCommand_1.default {
28
30
  get name() {
@@ -46,6 +48,20 @@ class SpoTenantApplicationCustomizerSetCommand extends SpoCommand_1.default {
46
48
  if (!appCatalogUrl) {
47
49
  throw 'No app catalog URL found';
48
50
  }
51
+ if (args.options.newClientSideComponentId !== undefined) {
52
+ const componentManifest = yield this.getComponentManifest(appCatalogUrl, args.options.newClientSideComponentId, logger);
53
+ const clientComponentManifest = JSON.parse(componentManifest.ClientComponentManifest);
54
+ if (clientComponentManifest.extensionType !== "ApplicationCustomizer") {
55
+ throw `The extension type of this component is not of type 'ApplicationCustomizer' but of type '${clientComponentManifest.extensionType}'`;
56
+ }
57
+ const solution = yield this.getSolutionFromAppCatalog(appCatalogUrl, componentManifest.SolutionId, logger);
58
+ if (!solution.ContainsTenantWideExtension) {
59
+ throw `The solution does not contain an extension that can be deployed to all sites. Make sure that you've entered the correct component Id.`;
60
+ }
61
+ else if (!solution.SkipFeatureDeployment) {
62
+ throw 'The solution has not been deployed to all sites. Make sure to deploy this solution to all sites.';
63
+ }
64
+ }
49
65
  const listServerRelativeUrl = urlUtil_1.urlUtil.getServerRelativePath(appCatalogUrl, '/lists/TenantWideExtensions');
50
66
  const listItemId = yield this.getListItemId(appCatalogUrl, args.options, listServerRelativeUrl, logger);
51
67
  yield this.updateTenantWideExtension(appCatalogUrl, args.options, listServerRelativeUrl, listItemId, logger);
@@ -72,9 +88,59 @@ class SpoTenantApplicationCustomizerSetCommand extends SpoCommand_1.default {
72
88
  return listItemInstances[0].Id;
73
89
  });
74
90
  }
91
+ getComponentManifest(appCatalogUrl, clientSideComponentId, logger) {
92
+ return __awaiter(this, void 0, void 0, function* () {
93
+ if (this.verbose) {
94
+ logger.logToStderr('Retrieving component manifest item from the ComponentManifests list on the app catalog site so that we get the solution id');
95
+ }
96
+ const camlQuery = `<View><ViewFields><FieldRef Name='ClientComponentId'></FieldRef><FieldRef Name='SolutionId'></FieldRef><FieldRef Name='ClientComponentManifest'></FieldRef></ViewFields><Query><Where><Eq><FieldRef Name='ClientComponentId' /><Value Type='Guid'>${clientSideComponentId}</Value></Eq></Where></Query></View>`;
97
+ const commandOptions = {
98
+ webUrl: appCatalogUrl,
99
+ listUrl: `${urlUtil_1.urlUtil.getServerRelativeSiteUrl(appCatalogUrl)}/Lists/ComponentManifests`,
100
+ camlQuery: camlQuery,
101
+ verbose: this.verbose,
102
+ debug: this.debug,
103
+ output: 'json'
104
+ };
105
+ const output = yield Cli_1.Cli.executeCommandWithOutput(spoListItemListCommand, { options: Object.assign(Object.assign({}, commandOptions), { _: [] }) });
106
+ if (this.verbose) {
107
+ logger.logToStderr(output.stderr);
108
+ }
109
+ const outputParsed = JSON.parse(output.stdout);
110
+ if (outputParsed.length === 0) {
111
+ throw 'No component found with the specified clientSideComponentId found in the component manifest list. Make sure that the application is added to the application catalog';
112
+ }
113
+ return outputParsed[0];
114
+ });
115
+ }
116
+ getSolutionFromAppCatalog(appCatalogUrl, solutionId, logger) {
117
+ return __awaiter(this, void 0, void 0, function* () {
118
+ if (this.verbose) {
119
+ logger.logToStderr(`Retrieving solution with id ${solutionId} from the application catalog`);
120
+ }
121
+ const camlQuery = `<View><ViewFields><FieldRef Name='SkipFeatureDeployment'></FieldRef><FieldRef Name='ContainsTenantWideExtension'></FieldRef></ViewFields><Query><Where><Eq><FieldRef Name='AppProductID' /><Value Type='Guid'>${solutionId}</Value></Eq></Where></Query></View>`;
122
+ const commandOptions = {
123
+ webUrl: appCatalogUrl,
124
+ listUrl: `${urlUtil_1.urlUtil.getServerRelativeSiteUrl(appCatalogUrl)}/AppCatalog`,
125
+ camlQuery: camlQuery,
126
+ verbose: this.verbose,
127
+ debug: this.debug,
128
+ output: 'json'
129
+ };
130
+ const output = yield Cli_1.Cli.executeCommandWithOutput(spoListItemListCommand, { options: Object.assign(Object.assign({}, commandOptions), { _: [] }) });
131
+ if (this.verbose) {
132
+ logger.logToStderr(output.stderr);
133
+ }
134
+ const outputParsed = JSON.parse(output.stdout);
135
+ if (outputParsed.length === 0) {
136
+ throw `No component found with the solution id ${solutionId}. Make sure that the solution is available in the app catalog`;
137
+ }
138
+ return outputParsed[0];
139
+ });
140
+ }
75
141
  updateTenantWideExtension(appCatalogUrl, options, listServerRelativeUrl, itemId, logger) {
76
142
  return __awaiter(this, void 0, void 0, function* () {
77
- const { title, id, clientSideComponentId, newTitle, clientSideComponentProperties, webTemplate } = options;
143
+ const { title, id, clientSideComponentId, newTitle, newClientSideComponentId, clientSideComponentProperties, webTemplate } = options;
78
144
  if (this.verbose) {
79
145
  logger.logToStderr(`Updating tenant-wide application customizer: "${title || id || clientSideComponentId}"...`);
80
146
  }
@@ -85,6 +151,12 @@ class SpoTenantApplicationCustomizerSetCommand extends SpoCommand_1.default {
85
151
  FieldValue: newTitle
86
152
  });
87
153
  }
154
+ if (newClientSideComponentId !== undefined) {
155
+ formValues.push({
156
+ FieldName: 'TenantWideExtensionComponentId',
157
+ FieldValue: newClientSideComponentId
158
+ });
159
+ }
88
160
  if (clientSideComponentProperties !== undefined) {
89
161
  formValues.push({
90
162
  FieldName: 'TenantWideExtensionComponentProperties',
@@ -118,6 +190,7 @@ _SpoTenantApplicationCustomizerSetCommand_instances = new WeakSet(), _SpoTenantA
118
190
  id: typeof args.options.id !== 'undefined',
119
191
  clientSideComponentId: typeof args.options.clientSideComponentId !== 'undefined',
120
192
  newTitle: typeof args.options.newTitle !== 'undefined',
193
+ newClientSideComponentId: typeof args.options.newClientSideComponentId !== 'undefined',
121
194
  clientSideComponentProperties: typeof args.options.clientSideComponentProperties !== 'undefined',
122
195
  webTemplate: typeof args.options.webTemplate !== 'undefined'
123
196
  });
@@ -131,6 +204,8 @@ _SpoTenantApplicationCustomizerSetCommand_instances = new WeakSet(), _SpoTenantA
131
204
  option: '-c, --clientSideComponentId [clientSideComponentId]'
132
205
  }, {
133
206
  option: '--newTitle [newTitle]'
207
+ }, {
208
+ option: '--newClientSideComponentId [newClientSideComponentId]'
134
209
  }, {
135
210
  option: '-p, --clientSideComponentProperties [clientSideComponentProperties]'
136
211
  }, {
@@ -144,7 +219,10 @@ _SpoTenantApplicationCustomizerSetCommand_instances = new WeakSet(), _SpoTenantA
144
219
  if (args.options.clientSideComponentId && !validation_1.validation.isValidGuid(args.options.clientSideComponentId)) {
145
220
  return `${args.options.clientSideComponentId} is not a valid GUID`;
146
221
  }
147
- if (!args.options.newTitle && !args.options.clientSideComponentProperties && !args.options.webTemplate) {
222
+ if (args.options.newClientSideComponentId && !validation_1.validation.isValidGuid(args.options.newClientSideComponentId)) {
223
+ return `${args.options.newClientSideComponentId} is not a valid GUID`;
224
+ }
225
+ if (!args.options.newTitle && !args.options.newClientSideComponentId && !args.options.clientSideComponentProperties && !args.options.webTemplate) {
148
226
  return `Please specify an option to be updated`;
149
227
  }
150
228
  return true;
@@ -42,7 +42,7 @@ class SpoTenantCommandSetRemoveCommand extends SpoCommand_1.default {
42
42
  commandAction(logger, args) {
43
43
  return __awaiter(this, void 0, void 0, function* () {
44
44
  try {
45
- if (args.options.confirm) {
45
+ if (args.options.force) {
46
46
  return yield this.removeTenantCommandSet(logger, args);
47
47
  }
48
48
  const result = yield Cli_1.Cli.prompt({
@@ -118,7 +118,7 @@ _SpoTenantCommandSetRemoveCommand_instances = new WeakSet(), _SpoTenantCommandSe
118
118
  title: typeof args.options.title !== 'undefined',
119
119
  id: typeof args.options.id !== 'undefined',
120
120
  clientSideComponentId: typeof args.options.clientSideComponentId !== 'undefined',
121
- confirm: !!args.options.confirm
121
+ force: !!args.options.force
122
122
  });
123
123
  });
124
124
  }, _SpoTenantCommandSetRemoveCommand_initOptions = function _SpoTenantCommandSetRemoveCommand_initOptions() {
@@ -129,7 +129,7 @@ _SpoTenantCommandSetRemoveCommand_instances = new WeakSet(), _SpoTenantCommandSe
129
129
  }, {
130
130
  option: '-c, --clientSideComponentId [clientSideComponentId]'
131
131
  }, {
132
- option: '--confirm'
132
+ option: '-f, --force'
133
133
  });
134
134
  }, _SpoTenantCommandSetRemoveCommand_initValidators = function _SpoTenantCommandSetRemoveCommand_initValidators() {
135
135
  this.validators.push((args) => __awaiter(this, void 0, void 0, function* () {
@@ -13,15 +13,19 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
13
13
  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");
14
14
  return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
15
15
  };
16
- var _SpoTenantCommandSetSetCommand_instances, _SpoTenantCommandSetSetCommand_initTelemetry, _SpoTenantCommandSetSetCommand_initOptions, _SpoTenantCommandSetSetCommand_initValidators;
16
+ var _SpoTenantCommandSetSetCommand_instances, _SpoTenantCommandSetSetCommand_initTelemetry, _SpoTenantCommandSetSetCommand_initOptions, _SpoTenantCommandSetSetCommand_initValidators, _SpoTenantCommandSetSetCommand_initOptionSets;
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
18
  const validation_1 = require("../../../../utils/validation");
19
19
  const SpoCommand_1 = require("../../../base/SpoCommand");
20
20
  const commands_1 = require("../../commands");
21
+ const os = require("os");
21
22
  const urlUtil_1 = require("../../../../utils/urlUtil");
23
+ const Cli_1 = require("../../../../cli/Cli");
24
+ const spoListItemListCommand = require("../listitem/listitem-list");
22
25
  const request_1 = require("../../../../request");
23
26
  const formatting_1 = require("../../../../utils/formatting");
24
27
  const spo_1 = require("../../../../utils/spo");
28
+ const odata_1 = require("../../../../utils/odata");
25
29
  class SpoTenantCommandSetSetCommand extends SpoCommand_1.default {
26
30
  get name() {
27
31
  return commands_1.default.TENANT_COMMANDSET_SET;
@@ -35,6 +39,7 @@ class SpoTenantCommandSetSetCommand extends SpoCommand_1.default {
35
39
  __classPrivateFieldGet(this, _SpoTenantCommandSetSetCommand_instances, "m", _SpoTenantCommandSetSetCommand_initTelemetry).call(this);
36
40
  __classPrivateFieldGet(this, _SpoTenantCommandSetSetCommand_instances, "m", _SpoTenantCommandSetSetCommand_initOptions).call(this);
37
41
  __classPrivateFieldGet(this, _SpoTenantCommandSetSetCommand_instances, "m", _SpoTenantCommandSetSetCommand_initValidators).call(this);
42
+ __classPrivateFieldGet(this, _SpoTenantCommandSetSetCommand_instances, "m", _SpoTenantCommandSetSetCommand_initOptionSets).call(this);
38
43
  }
39
44
  commandAction(logger, args) {
40
45
  return __awaiter(this, void 0, void 0, function* () {
@@ -43,34 +48,97 @@ class SpoTenantCommandSetSetCommand extends SpoCommand_1.default {
43
48
  if (!appCatalogUrl) {
44
49
  throw 'No app catalog URL found';
45
50
  }
46
- const listServerRelativeUrl = urlUtil_1.urlUtil.getServerRelativePath(appCatalogUrl, '/lists/TenantWideExtensions');
47
- const listItem = yield this.getListItemById(logger, appCatalogUrl, listServerRelativeUrl, args.options.id);
48
- if (listItem.TenantWideExtensionLocation.indexOf("ClientSideExtension.ListViewCommandSet") === -1) {
49
- throw 'The item is not a ListViewCommandSet';
51
+ if (args.options.newClientSideComponentId !== undefined) {
52
+ const componentManifest = yield this.getComponentManifest(appCatalogUrl, args.options.newClientSideComponentId, logger);
53
+ const clientComponentManifest = JSON.parse(componentManifest.ClientComponentManifest);
54
+ if (clientComponentManifest.extensionType !== "ListViewCommandSet") {
55
+ throw `The extension type of this component is not of type 'ListViewCommandSet' but of type '${clientComponentManifest.extensionType}'`;
56
+ }
57
+ const solution = yield this.getSolutionFromAppCatalog(appCatalogUrl, componentManifest.SolutionId, logger);
58
+ if (!solution.ContainsTenantWideExtension) {
59
+ throw `The solution does not contain an extension that can be deployed to all sites. Make sure that you've entered the correct component Id.`;
60
+ }
61
+ else if (!solution.SkipFeatureDeployment) {
62
+ throw 'The solution has not been deployed to all sites. Make sure to deploy this solution to all sites.';
63
+ }
50
64
  }
51
- yield this.updateTenantWideExtension(appCatalogUrl, args.options, listServerRelativeUrl, logger);
65
+ const listServerRelativeUrl = urlUtil_1.urlUtil.getServerRelativePath(appCatalogUrl, '/lists/TenantWideExtensions');
66
+ const listItemId = yield this.getListItemId(appCatalogUrl, args.options, listServerRelativeUrl, logger);
67
+ yield this.updateTenantWideExtension(logger, appCatalogUrl, args.options, listServerRelativeUrl, listItemId);
52
68
  }
53
69
  catch (err) {
54
70
  this.handleRejectedODataJsonPromise(err);
55
71
  }
56
72
  });
57
73
  }
58
- getListItemById(logger, webUrl, listServerRelativeUrl, id) {
74
+ getComponentManifest(appCatalogUrl, clientSideComponentId, logger) {
59
75
  return __awaiter(this, void 0, void 0, function* () {
60
76
  if (this.verbose) {
61
- logger.logToStderr(`Getting the list item by id ${id}`);
77
+ logger.logToStderr('Retrieving component manifest item from the ComponentManifests list on the app catalog site so that we get the solution id');
62
78
  }
63
- const reqOptions = {
64
- url: `${webUrl}/_api/web/GetList('${formatting_1.formatting.encodeQueryParameter(listServerRelativeUrl)}')/Items(${id})`,
65
- headers: {
66
- 'accept': 'application/json;odata=nometadata'
67
- },
68
- responseType: 'json'
79
+ const camlQuery = `<View><ViewFields><FieldRef Name='ClientComponentId'></FieldRef><FieldRef Name='SolutionId'></FieldRef><FieldRef Name='ClientComponentManifest'></FieldRef></ViewFields><Query><Where><Eq><FieldRef Name='ClientComponentId' /><Value Type='Guid'>${clientSideComponentId}</Value></Eq></Where></Query></View>`;
80
+ const commandOptions = {
81
+ webUrl: appCatalogUrl,
82
+ listUrl: `${urlUtil_1.urlUtil.getServerRelativeSiteUrl(appCatalogUrl)}/Lists/ComponentManifests`,
83
+ camlQuery: camlQuery,
84
+ verbose: this.verbose,
85
+ debug: this.debug,
86
+ output: 'json'
69
87
  };
70
- return yield request_1.default.get(reqOptions);
88
+ const output = yield Cli_1.Cli.executeCommandWithOutput(spoListItemListCommand, { options: Object.assign(Object.assign({}, commandOptions), { _: [] }) });
89
+ if (this.verbose) {
90
+ logger.logToStderr(output.stderr);
91
+ }
92
+ const outputParsed = JSON.parse(output.stdout);
93
+ if (outputParsed.length === 0) {
94
+ throw 'No component found with the specified clientSideComponentId found in the component manifest list. Make sure that the application is added to the application catalog';
95
+ }
96
+ return outputParsed[0];
71
97
  });
72
98
  }
73
- updateTenantWideExtension(appCatalogUrl, options, listServerRelativeUrl, logger) {
99
+ getSolutionFromAppCatalog(appCatalogUrl, solutionId, logger) {
100
+ return __awaiter(this, void 0, void 0, function* () {
101
+ if (this.verbose) {
102
+ logger.logToStderr(`Retrieving solution with id ${solutionId} from the application catalog`);
103
+ }
104
+ const camlQuery = `<View><ViewFields><FieldRef Name='SkipFeatureDeployment'></FieldRef><FieldRef Name='ContainsTenantWideExtension'></FieldRef></ViewFields><Query><Where><Eq><FieldRef Name='AppProductID' /><Value Type='Guid'>${solutionId}</Value></Eq></Where></Query></View>`;
105
+ const commandOptions = {
106
+ webUrl: appCatalogUrl,
107
+ listUrl: `${urlUtil_1.urlUtil.getServerRelativeSiteUrl(appCatalogUrl)}/AppCatalog`,
108
+ camlQuery: camlQuery,
109
+ verbose: this.verbose,
110
+ debug: this.debug,
111
+ output: 'json'
112
+ };
113
+ const output = yield Cli_1.Cli.executeCommandWithOutput(spoListItemListCommand, { options: Object.assign(Object.assign({}, commandOptions), { _: [] }) });
114
+ if (this.verbose) {
115
+ logger.logToStderr(output.stderr);
116
+ }
117
+ const outputParsed = JSON.parse(output.stdout);
118
+ if (outputParsed.length === 0) {
119
+ throw `No component found with the solution id ${solutionId}. Make sure that the solution is available in the app catalog`;
120
+ }
121
+ return outputParsed[0];
122
+ });
123
+ }
124
+ getListItemId(appCatalogUrl, options, listServerRelativeUrl, logger) {
125
+ return __awaiter(this, void 0, void 0, function* () {
126
+ const { title, id, clientSideComponentId } = options;
127
+ const filter = title ? `Title eq '${title}'` : id ? `Id eq '${id}'` : `TenantWideExtensionComponentId eq '${clientSideComponentId}'`;
128
+ if (this.verbose) {
129
+ logger.logToStderr(`Getting tenant-wide listview commandset: "${title || id || clientSideComponentId}"...`);
130
+ }
131
+ const listItemInstances = yield odata_1.odata.getAllItems(`${appCatalogUrl}/_api/web/GetList('${formatting_1.formatting.encodeQueryParameter(listServerRelativeUrl)}')/Items?$filter=startswith(TenantWideExtensionLocation, 'ClientSideExtension.ListViewCommandSet') and ${filter}`);
132
+ if (!listItemInstances || listItemInstances.length === 0) {
133
+ throw 'The specified listview commandset was not found';
134
+ }
135
+ if (listItemInstances.length > 1) {
136
+ throw `Multiple listview commandsets with ${title ? `title '${title}'` : `ClientSideComponentId '${clientSideComponentId}'`} found. Please disambiguate using IDs: ${os.EOL}${listItemInstances.map(item => `- ${item.Id}`).join(os.EOL)}`;
137
+ }
138
+ return listItemInstances[0].Id;
139
+ });
140
+ }
141
+ updateTenantWideExtension(logger, appCatalogUrl, options, listServerRelativeUrl, listItemId) {
74
142
  return __awaiter(this, void 0, void 0, function* () {
75
143
  if (this.verbose) {
76
144
  logger.logToStderr('Updating tenant wide extension to the TenantWideExtensions list');
@@ -82,10 +150,10 @@ class SpoTenantCommandSetSetCommand extends SpoCommand_1.default {
82
150
  FieldValue: options.newTitle
83
151
  });
84
152
  }
85
- if (options.clientSideComponentId !== undefined) {
153
+ if (options.newClientSideComponentId !== undefined) {
86
154
  formValues.push({
87
155
  FieldName: 'TenantWideExtensionComponentId',
88
- FieldValue: options.clientSideComponentId
156
+ FieldValue: options.newClientSideComponentId
89
157
  });
90
158
  }
91
159
  if (options.location !== undefined) {
@@ -113,7 +181,7 @@ class SpoTenantCommandSetSetCommand extends SpoCommand_1.default {
113
181
  });
114
182
  }
115
183
  const requestOptions = {
116
- url: `${appCatalogUrl}/_api/web/GetList('${formatting_1.formatting.encodeQueryParameter(listServerRelativeUrl)}')/Items(${options.id})/ValidateUpdateListItem()`,
184
+ url: `${appCatalogUrl}/_api/web/GetList('${formatting_1.formatting.encodeQueryParameter(listServerRelativeUrl)}')/Items(${listItemId})/ValidateUpdateListItem()`,
117
185
  headers: {
118
186
  'accept': 'application/json;odata=nometadata'
119
187
  },
@@ -149,9 +217,12 @@ class SpoTenantCommandSetSetCommand extends SpoCommand_1.default {
149
217
  _SpoTenantCommandSetSetCommand_instances = new WeakSet(), _SpoTenantCommandSetSetCommand_initTelemetry = function _SpoTenantCommandSetSetCommand_initTelemetry() {
150
218
  this.telemetry.push((args) => {
151
219
  Object.assign(this.telemetryProperties, {
220
+ title: typeof args.options.title !== 'undefined',
221
+ id: typeof args.options.id !== 'undefined',
222
+ clientSideComponentId: typeof args.options.clientSideComponentId !== 'undefined',
152
223
  newTitle: typeof args.options.newTitle !== 'undefined',
153
224
  listType: args.options.listType,
154
- clientSideComponentId: typeof args.options.clientSideComponentId !== 'undefined',
225
+ newClientSideComponentId: typeof args.options.newClientSideComponentId !== 'undefined',
155
226
  clientSideComponentProperties: typeof args.options.clientSideComponentProperties !== 'undefined',
156
227
  webTemplate: typeof args.options.webTemplate !== 'undefined',
157
228
  location: args.options.location
@@ -159,14 +230,18 @@ _SpoTenantCommandSetSetCommand_instances = new WeakSet(), _SpoTenantCommandSetSe
159
230
  });
160
231
  }, _SpoTenantCommandSetSetCommand_initOptions = function _SpoTenantCommandSetSetCommand_initOptions() {
161
232
  this.options.unshift({
162
- option: '-i, --id <id>'
233
+ option: '-i, --id [id]'
234
+ }, {
235
+ option: '-t, --title [title]'
236
+ }, {
237
+ option: '-c, --clientSideComponentId [clientSideComponentId]'
163
238
  }, {
164
- option: '-t, --newTitle [newTitle]'
239
+ option: '--newTitle [newTitle]'
165
240
  }, {
166
241
  option: '-l, --listType [listType]',
167
242
  autocomplete: SpoTenantCommandSetSetCommand.listTypes
168
243
  }, {
169
- option: '-c, --clientSideComponentId [clientSideComponentId]'
244
+ option: '--newClientSideComponentId [newClientSideComponentId]'
170
245
  }, {
171
246
  option: '-p, --clientSideComponentProperties [clientSideComponentProperties]'
172
247
  }, {
@@ -179,15 +254,21 @@ _SpoTenantCommandSetSetCommand_instances = new WeakSet(), _SpoTenantCommandSetSe
179
254
  this.validators.push((args) => __awaiter(this, void 0, void 0, function* () {
180
255
  if (!args.options.newTitle &&
181
256
  !args.options.listType &&
182
- !args.options.clientSideComponentId &&
257
+ !args.options.newClientSideComponentId &&
183
258
  !args.options.clientSideComponentProperties &&
184
259
  !args.options.webTemplate &&
185
260
  !args.options.location) {
186
261
  return 'Specify at least one property to update';
187
262
  }
263
+ if (args.options.id && isNaN(parseInt(args.options.id))) {
264
+ return `${args.options.id} is not a number`;
265
+ }
188
266
  if (args.options.clientSideComponentId && !validation_1.validation.isValidGuid(args.options.clientSideComponentId)) {
189
267
  return `${args.options.clientSideComponentId} is not a valid GUID`;
190
268
  }
269
+ if (args.options.newClientSideComponentId && !validation_1.validation.isValidGuid(args.options.newClientSideComponentId)) {
270
+ return `${args.options.newClientSideComponentId} is not a valid GUID`;
271
+ }
191
272
  if (args.options.listType && SpoTenantCommandSetSetCommand.listTypes.indexOf(args.options.listType) < 0) {
192
273
  return `${args.options.listType} is not a valid list type. Allowed values are ${SpoTenantCommandSetSetCommand.listTypes.join(', ')}`;
193
274
  }
@@ -196,6 +277,8 @@ _SpoTenantCommandSetSetCommand_instances = new WeakSet(), _SpoTenantCommandSetSe
196
277
  }
197
278
  return true;
198
279
  }));
280
+ }, _SpoTenantCommandSetSetCommand_initOptionSets = function _SpoTenantCommandSetSetCommand_initOptionSets() {
281
+ this.optionSets.push({ options: ['title', 'id', 'clientSideComponentId'] });
199
282
  };
200
283
  SpoTenantCommandSetSetCommand.listTypes = ['List', 'Library', 'SitePages'];
201
284
  SpoTenantCommandSetSetCommand.locations = ['ContextMenu', 'CommandBar', 'Both'];
@@ -39,54 +39,8 @@ class SpoTenantRecycleBinItemRemoveCommand extends SpoCommand_1.default {
39
39
  }
40
40
  commandAction(logger, args) {
41
41
  return __awaiter(this, void 0, void 0, function* () {
42
- const removeDeletedSite = () => __awaiter(this, void 0, void 0, function* () {
43
- try {
44
- this.spoAdminUrl = yield spo_1.spo.getSpoAdminUrl(logger, this.debug);
45
- const res = yield spo_1.spo.ensureFormDigest(this.spoAdminUrl, logger, this.context, this.debug);
46
- if (this.verbose) {
47
- logger.logToStderr(`Removing deleted site collection ${args.options.siteUrl}...`);
48
- }
49
- const requestOptions = {
50
- url: `${this.spoAdminUrl}/_vti_bin/client.svc/ProcessQuery`,
51
- headers: {
52
- 'X-RequestDigest': res.FormDigestValue
53
- },
54
- data: `<Request AddExpandoFieldTypeSuffix="true" SchemaVersion="15.0.0.0" LibraryVersion="16.0.0.0" ApplicationName="${config_1.default.applicationName}" xmlns="http://schemas.microsoft.com/sharepoint/clientquery/2009"><Actions><ObjectPath Id="16" ObjectPathId="15" /><Query Id="17" ObjectPathId="15"><Query SelectAllProperties="false"><Properties><Property Name="PollingInterval" ScalarProperty="true" /><Property Name="IsComplete" ScalarProperty="true" /></Properties></Query></Query></Actions><ObjectPaths><Method Id="15" ParentId="1" Name="RemoveDeletedSite"><Parameters><Parameter Type="String">${formatting_1.formatting.escapeXml(args.options.siteUrl)}</Parameter></Parameters></Method><Constructor Id="1" TypeId="{268004ae-ef6b-4e9b-8425-127220d84719}" /></ObjectPaths></Request>`
55
- };
56
- const processQuery = yield request_1.default.post(requestOptions);
57
- const json = JSON.parse(processQuery);
58
- const response = json[0];
59
- if (response.ErrorInfo) {
60
- throw response.ErrorInfo.ErrorMessage;
61
- }
62
- else {
63
- const operation = json[json.length - 1];
64
- const isComplete = operation.IsComplete;
65
- if (!args.options.wait || isComplete) {
66
- return;
67
- }
68
- yield new Promise((resolve, reject) => {
69
- setTimeout(() => {
70
- spo_1.spo.waitUntilFinished({
71
- operationId: JSON.stringify(operation._ObjectIdentity_),
72
- siteUrl: this.spoAdminUrl,
73
- resolve,
74
- reject,
75
- logger,
76
- currentContext: this.context,
77
- debug: this.debug,
78
- verbose: this.verbose
79
- });
80
- }, operation.PollingInterval);
81
- });
82
- }
83
- }
84
- catch (err) {
85
- this.handleRejectedODataJsonPromise(err);
86
- }
87
- });
88
- if (args.options.confirm) {
89
- yield removeDeletedSite();
42
+ if (args.options.force) {
43
+ yield this.removeDeletedSite(logger, args);
90
44
  }
91
45
  else {
92
46
  const result = yield Cli_1.Cli.prompt({
@@ -96,17 +50,63 @@ class SpoTenantRecycleBinItemRemoveCommand extends SpoCommand_1.default {
96
50
  message: `Are you sure you want to remove the deleted site collection ${args.options.siteUrl} from tenant recycle bin?`
97
51
  });
98
52
  if (result.continue) {
99
- yield removeDeletedSite();
53
+ yield this.removeDeletedSite(logger, args);
100
54
  }
101
55
  }
102
56
  });
103
57
  }
58
+ removeDeletedSite(logger, args) {
59
+ return __awaiter(this, void 0, void 0, function* () {
60
+ try {
61
+ const spoAdminUrl = yield spo_1.spo.getSpoAdminUrl(logger, this.debug);
62
+ const res = yield spo_1.spo.ensureFormDigest(spoAdminUrl, logger, this.context, this.debug);
63
+ if (this.verbose) {
64
+ logger.logToStderr(`Removing deleted site collection ${args.options.siteUrl}...`);
65
+ }
66
+ const requestOptions = {
67
+ url: `${spoAdminUrl}/_vti_bin/client.svc/ProcessQuery`,
68
+ headers: {
69
+ 'X-RequestDigest': res.FormDigestValue
70
+ },
71
+ data: `<Request AddExpandoFieldTypeSuffix="true" SchemaVersion="15.0.0.0" LibraryVersion="16.0.0.0" ApplicationName="${config_1.default.applicationName}" xmlns="http://schemas.microsoft.com/sharepoint/clientquery/2009"><Actions><ObjectPath Id="16" ObjectPathId="15" /><Query Id="17" ObjectPathId="15"><Query SelectAllProperties="false"><Properties><Property Name="PollingInterval" ScalarProperty="true" /><Property Name="IsComplete" ScalarProperty="true" /></Properties></Query></Query></Actions><ObjectPaths><Method Id="15" ParentId="1" Name="RemoveDeletedSite"><Parameters><Parameter Type="String">${formatting_1.formatting.escapeXml(args.options.siteUrl)}</Parameter></Parameters></Method><Constructor Id="1" TypeId="{268004ae-ef6b-4e9b-8425-127220d84719}" /></ObjectPaths></Request>`
72
+ };
73
+ const processQuery = yield request_1.default.post(requestOptions);
74
+ const json = JSON.parse(processQuery);
75
+ const response = json[0];
76
+ if (response.ErrorInfo) {
77
+ throw response.ErrorInfo.ErrorMessage;
78
+ }
79
+ const operation = json[json.length - 1];
80
+ const isComplete = operation.IsComplete;
81
+ if (!args.options.wait || isComplete) {
82
+ return;
83
+ }
84
+ yield new Promise((resolve, reject) => {
85
+ setTimeout(() => {
86
+ spo_1.spo.waitUntilFinished({
87
+ operationId: JSON.stringify(operation._ObjectIdentity_),
88
+ siteUrl: spoAdminUrl,
89
+ resolve,
90
+ reject,
91
+ logger,
92
+ currentContext: this.context,
93
+ debug: this.debug,
94
+ verbose: this.verbose
95
+ });
96
+ }, operation.PollingInterval);
97
+ });
98
+ }
99
+ catch (err) {
100
+ this.handleRejectedODataJsonPromise(err);
101
+ }
102
+ });
103
+ }
104
104
  }
105
105
  _SpoTenantRecycleBinItemRemoveCommand_instances = new WeakSet(), _SpoTenantRecycleBinItemRemoveCommand_initTelemetry = function _SpoTenantRecycleBinItemRemoveCommand_initTelemetry() {
106
106
  this.telemetry.push((args) => {
107
107
  Object.assign(this.telemetryProperties, {
108
108
  wait: typeof args.options.wait !== 'undefined',
109
- confirm: typeof args.options.confirm !== 'undefined'
109
+ force: typeof args.options.force !== 'undefined'
110
110
  });
111
111
  });
112
112
  }, _SpoTenantRecycleBinItemRemoveCommand_initOptions = function _SpoTenantRecycleBinItemRemoveCommand_initOptions() {
@@ -115,7 +115,7 @@ _SpoTenantRecycleBinItemRemoveCommand_instances = new WeakSet(), _SpoTenantRecyc
115
115
  }, {
116
116
  option: '--wait'
117
117
  }, {
118
- option: '--confirm'
118
+ option: '-f, --force'
119
119
  });
120
120
  }, _SpoTenantRecycleBinItemRemoveCommand_initValidators = function _SpoTenantRecycleBinItemRemoveCommand_initValidators() {
121
121
  this.validators.push((args) => __awaiter(this, void 0, void 0, function* () { return validation_1.validation.isValidSharePointUrl(args.options.siteUrl); }));
@@ -54,8 +54,7 @@ class SpoThemeGetCommand extends SpoCommand_1.default {
54
54
  if (contents && contents.ErrorInfo) {
55
55
  throw contents.ErrorInfo.ErrorMessage || 'ClientSvc unknown error';
56
56
  }
57
- const json2 = yield Promise.resolve(json);
58
- const theme = json2[6];
57
+ const theme = json[6];
59
58
  delete theme._ObjectType_;
60
59
  logger.log(theme);
61
60
  }