@pnp/cli-microsoft365 5.8.0-beta.421ec27 → 5.8.0-beta.4873e17

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 (520) hide show
  1. package/dist/Command.js +48 -35
  2. package/dist/cli/Cli.js +30 -24
  3. package/dist/m365/aad/commands/app/app-add.js +30 -30
  4. package/dist/m365/aad/commands/app/app-get.js +12 -9
  5. package/dist/m365/aad/commands/app/app-remove.js +34 -35
  6. package/dist/m365/aad/commands/app/app-role-add.js +29 -26
  7. package/dist/m365/aad/commands/app/app-role-list.js +20 -8
  8. package/dist/m365/aad/commands/app/app-role-remove.js +23 -22
  9. package/dist/m365/aad/commands/app/app-set.js +12 -7
  10. package/dist/m365/aad/commands/approleassignment/approleassignment-add.js +89 -93
  11. package/dist/m365/aad/commands/approleassignment/approleassignment-list.js +38 -38
  12. package/dist/m365/aad/commands/approleassignment/approleassignment-remove.js +89 -91
  13. package/dist/m365/aad/commands/group/group-list.js +35 -23
  14. package/dist/m365/aad/commands/groupsetting/groupsetting-add.js +33 -32
  15. package/dist/m365/aad/commands/groupsetting/groupsetting-get.js +17 -14
  16. package/dist/m365/aad/commands/groupsetting/groupsetting-list.js +19 -7
  17. package/dist/m365/aad/commands/groupsetting/groupsetting-remove.js +30 -29
  18. package/dist/m365/aad/commands/groupsetting/groupsetting-set.js +33 -30
  19. package/dist/m365/aad/commands/groupsettingtemplate/groupsettingtemplate-get.js +14 -13
  20. package/dist/m365/aad/commands/groupsettingtemplate/groupsettingtemplate-list.js +19 -7
  21. package/dist/m365/aad/commands/o365group/o365group-add.js +85 -96
  22. package/dist/m365/aad/commands/o365group/o365group-conversation-list.js +10 -7
  23. package/dist/m365/aad/commands/o365group/o365group-conversation-post-list.js +11 -10
  24. package/dist/m365/aad/commands/o365group/o365group-get.js +20 -25
  25. package/dist/m365/aad/commands/o365group/o365group-list.js +38 -43
  26. package/dist/m365/aad/commands/o365group/o365group-recyclebinitem-clear.js +31 -19
  27. package/dist/m365/aad/commands/o365group/o365group-recyclebinitem-list.js +24 -12
  28. package/dist/m365/aad/commands/o365group/o365group-recyclebinitem-remove.js +30 -33
  29. package/dist/m365/aad/commands/o365group/o365group-recyclebinitem-restore.js +21 -18
  30. package/dist/m365/aad/commands/o365group/o365group-remove.js +38 -40
  31. package/dist/m365/aad/commands/o365group/o365group-renew.js +17 -12
  32. package/dist/m365/aad/commands/o365group/o365group-set.js +96 -114
  33. package/dist/m365/aad/commands/o365group/o365group-teamify.js +31 -28
  34. package/dist/m365/aad/commands/o365group/o365group-user-add.js +27 -24
  35. package/dist/m365/aad/commands/o365group/o365group-user-list.js +15 -17
  36. package/dist/m365/aad/commands/o365group/o365group-user-remove.js +57 -60
  37. package/dist/m365/aad/commands/o365group/o365group-user-set.js +59 -60
  38. package/dist/m365/aad/commands/oauth2grant/oauth2grant-add.js +25 -20
  39. package/dist/m365/aad/commands/oauth2grant/oauth2grant-list.js +21 -18
  40. package/dist/m365/aad/commands/oauth2grant/oauth2grant-remove.js +41 -31
  41. package/dist/m365/aad/commands/oauth2grant/oauth2grant-set.js +30 -16
  42. package/dist/m365/aad/commands/policy/policy-list.js +22 -23
  43. package/dist/m365/aad/commands/siteclassification/siteclassification-disable.js +60 -52
  44. package/dist/m365/aad/commands/siteclassification/siteclassification-enable.js +84 -72
  45. package/dist/m365/aad/commands/siteclassification/siteclassification-get.js +66 -57
  46. package/dist/m365/aad/commands/siteclassification/siteclassification-set.js +96 -93
  47. package/dist/m365/aad/commands/sp/sp-add.js +22 -21
  48. package/dist/m365/aad/commands/sp/sp-get.js +22 -21
  49. package/dist/m365/aad/commands/user/user-get.js +37 -37
  50. package/dist/m365/aad/commands/user/user-hibp.js +21 -22
  51. package/dist/m365/aad/commands/user/user-list.js +31 -21
  52. package/dist/m365/aad/commands/user/user-password-validate.js +29 -17
  53. package/dist/m365/aad/commands/user/user-set.js +18 -13
  54. package/dist/m365/aad/commands/user/user-signin-list.js +24 -21
  55. package/dist/m365/adaptivecard/commands/adaptivecard-send.js +39 -37
  56. package/dist/m365/app/commands/app-get.js +27 -15
  57. package/dist/m365/app/commands/app-open.js +18 -3
  58. package/dist/m365/app/commands/permission/permission-list.js +17 -15
  59. package/dist/m365/base/AnonymousCommand.js +14 -3
  60. package/dist/m365/base/AppCommand.js +51 -44
  61. package/dist/m365/base/DateAndPeriodBasedReport.js +7 -5
  62. package/dist/m365/base/PeriodBasedReport.js +23 -16
  63. package/dist/m365/base/SpoCommand.js +13 -9
  64. package/dist/m365/base/YammerCommand.js +4 -4
  65. package/dist/m365/booking/commands/business/business-get.js +27 -17
  66. package/dist/m365/booking/commands/business/business-list.js +20 -11
  67. package/dist/m365/cli/commands/cli-consent.js +15 -12
  68. package/dist/m365/cli/commands/cli-doctor.js +35 -25
  69. package/dist/m365/cli/commands/cli-issue.js +15 -15
  70. package/dist/m365/cli/commands/cli-reconsent.js +30 -18
  71. package/dist/m365/cli/commands/completion/completion-clink-update.js +13 -3
  72. package/dist/m365/cli/commands/completion/completion-pwsh-setup.js +47 -38
  73. package/dist/m365/cli/commands/completion/completion-pwsh-update.js +16 -6
  74. package/dist/m365/cli/commands/completion/completion-sh-setup.js +21 -11
  75. package/dist/m365/cli/commands/completion/completion-sh-update.js +16 -6
  76. package/dist/m365/cli/commands/config/config-get.js +4 -3
  77. package/dist/m365/cli/commands/config/config-reset.js +9 -8
  78. package/dist/m365/cli/commands/config/config-set.js +20 -19
  79. package/dist/m365/commands/login.js +66 -63
  80. package/dist/m365/commands/logout.js +34 -23
  81. package/dist/m365/commands/request.js +56 -59
  82. package/dist/m365/commands/status.js +49 -27
  83. package/dist/m365/commands/version.js +13 -3
  84. package/dist/m365/file/commands/convert/convert-pdf.js +58 -53
  85. package/dist/m365/file/commands/file-add.js +14 -9
  86. package/dist/m365/file/commands/file-list.js +27 -30
  87. package/dist/m365/flow/commands/environment/environment-get.js +34 -22
  88. package/dist/m365/flow/commands/environment/environment-list.js +33 -21
  89. package/dist/m365/flow/commands/flow-disable.js +28 -14
  90. package/dist/m365/flow/commands/flow-enable.js +28 -14
  91. package/dist/m365/flow/commands/flow-export.js +102 -102
  92. package/dist/m365/flow/commands/flow-get.js +33 -21
  93. package/dist/m365/flow/commands/flow-list.js +28 -16
  94. package/dist/m365/flow/commands/flow-remove.js +38 -42
  95. package/dist/m365/flow/commands/run/run-cancel.js +32 -31
  96. package/dist/m365/flow/commands/run/run-get.js +33 -21
  97. package/dist/m365/flow/commands/run/run-list.js +31 -19
  98. package/dist/m365/flow/commands/run/run-resubmit.js +36 -37
  99. package/dist/m365/graph/Changelog.js +3 -0
  100. package/dist/m365/graph/commands/changelog/changelog-list.js +163 -0
  101. package/dist/m365/graph/commands/schemaextension/schemaextension-add.js +30 -27
  102. package/dist/m365/graph/commands/schemaextension/schemaextension-get.js +30 -17
  103. package/dist/m365/graph/commands/schemaextension/schemaextension-list.js +38 -34
  104. package/dist/m365/graph/commands/schemaextension/schemaextension-remove.js +42 -31
  105. package/dist/m365/graph/commands/schemaextension/schemaextension-set.js +57 -54
  106. package/dist/m365/graph/commands/subscription/subscription-add.js +28 -25
  107. package/dist/m365/graph/commands.js +1 -0
  108. package/dist/m365/onedrive/commands/onedrive-list.js +23 -13
  109. package/dist/m365/onenote/commands/notebook/notebook-list.js +11 -11
  110. package/dist/m365/outlook/commands/mail/mail-send.js +73 -31
  111. package/dist/m365/outlook/commands/message/message-list.js +21 -11
  112. package/dist/m365/outlook/commands/message/message-move.js +33 -25
  113. package/dist/m365/outlook/commands/room/room-list.js +23 -11
  114. package/dist/m365/outlook/commands/roomlist/roomlist-list.js +19 -7
  115. package/dist/m365/pa/commands/app/app-get.js +41 -42
  116. package/dist/m365/pa/commands/app/app-list.js +19 -16
  117. package/dist/m365/pa/commands/app/app-remove.js +38 -38
  118. package/dist/m365/pa/commands/connector/connector-export.js +102 -104
  119. package/dist/m365/pa/commands/connector/connector-list.js +28 -16
  120. package/dist/m365/pa/commands/environment/environment-get.js +34 -22
  121. package/dist/m365/pa/commands/environment/environment-list.js +33 -21
  122. package/dist/m365/pa/commands/pcf/pcf-init.js +35 -34
  123. package/dist/m365/pa/commands/solution/solution-init.js +48 -47
  124. package/dist/m365/pa/commands/solution/solution-reference-add.js +15 -14
  125. package/dist/m365/planner/commands/bucket/bucket-add.js +31 -30
  126. package/dist/m365/planner/commands/bucket/bucket-get.js +19 -16
  127. package/dist/m365/planner/commands/bucket/bucket-list.js +19 -16
  128. package/dist/m365/planner/commands/bucket/bucket-remove.js +39 -40
  129. package/dist/m365/planner/commands/bucket/bucket-set.js +32 -29
  130. package/dist/m365/planner/commands/plan/plan-add.js +27 -26
  131. package/dist/m365/planner/commands/plan/plan-get.js +31 -32
  132. package/dist/m365/planner/commands/plan/plan-list.js +16 -13
  133. package/dist/m365/planner/commands/plan/plan-remove.js +34 -37
  134. package/dist/m365/planner/commands/task/task-add.js +43 -48
  135. package/dist/m365/planner/commands/task/task-checklistitem-add.js +47 -37
  136. package/dist/m365/planner/commands/task/task-checklistitem-list.js +35 -21
  137. package/dist/m365/planner/commands/task/task-checklistitem-remove.js +51 -41
  138. package/dist/m365/planner/commands/task/task-get.js +25 -22
  139. package/dist/m365/planner/commands/task/task-list.js +48 -58
  140. package/dist/m365/planner/commands/task/task-reference-add.js +24 -23
  141. package/dist/m365/planner/commands/task/task-reference-list.js +30 -18
  142. package/dist/m365/planner/commands/task/task-reference-remove.js +39 -40
  143. package/dist/m365/planner/commands/task/task-remove.js +31 -32
  144. package/dist/m365/planner/commands/task/task-set.js +34 -39
  145. package/dist/m365/planner/commands/tenant/tenant-settings-list.js +26 -14
  146. package/dist/m365/planner/commands/tenant/tenant-settings-set.js +25 -22
  147. package/dist/m365/pp/commands/environment/environment-list.js +41 -29
  148. package/dist/m365/pp/commands/gateway/gateway-list.js +29 -17
  149. package/dist/m365/pp/commands/managementapp/managementapp-add.js +19 -18
  150. package/dist/m365/pp/commands/managementapp/managementapp-list.js +20 -8
  151. package/dist/m365/search/commands/externalconnection/externalconnection-add.js +29 -24
  152. package/dist/m365/search/commands/externalconnection/externalconnection-get.js +37 -28
  153. package/dist/m365/search/commands/externalconnection/externalconnection-list.js +19 -7
  154. package/dist/m365/search/commands/externalconnection/externalconnection-remove.js +39 -32
  155. package/dist/m365/spfx/commands/package/package-generate.js +104 -97
  156. package/dist/m365/spfx/commands/project/project-doctor/doctor-1.16.0-beta.1.js +23 -0
  157. package/dist/m365/spfx/commands/project/project-doctor.js +101 -103
  158. package/dist/m365/spfx/commands/project/project-externalize.js +45 -38
  159. package/dist/m365/spfx/commands/project/project-rename.js +38 -30
  160. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN010008_YORC_nodeVersion.js +1 -1
  161. package/dist/m365/spfx/commands/project/project-upgrade.js +173 -179
  162. package/dist/m365/spfx/commands/spfx-doctor.js +132 -126
  163. package/dist/m365/spo/commands/app/app-add.js +31 -32
  164. package/dist/m365/spo/commands/app/app-deploy.js +37 -38
  165. package/dist/m365/spo/commands/app/app-get.js +39 -40
  166. package/dist/m365/spo/commands/app/app-install.js +18 -13
  167. package/dist/m365/spo/commands/app/app-instance-list.js +25 -21
  168. package/dist/m365/spo/commands/app/app-list.js +29 -32
  169. package/dist/m365/spo/commands/app/app-remove.js +33 -36
  170. package/dist/m365/spo/commands/app/app-retract.js +33 -36
  171. package/dist/m365/spo/commands/app/app-teamspackage-download.js +42 -43
  172. package/dist/m365/spo/commands/app/app-uninstall.js +31 -30
  173. package/dist/m365/spo/commands/app/app-upgrade.js +18 -13
  174. package/dist/m365/spo/commands/apppage/apppage-add.js +38 -39
  175. package/dist/m365/spo/commands/apppage/apppage-set.js +20 -15
  176. package/dist/m365/spo/commands/cdn/cdn-get.js +35 -41
  177. package/dist/m365/spo/commands/cdn/cdn-origin-add.js +29 -37
  178. package/dist/m365/spo/commands/cdn/cdn-origin-list.js +33 -39
  179. package/dist/m365/spo/commands/cdn/cdn-origin-remove.js +43 -57
  180. package/dist/m365/spo/commands/cdn/cdn-policy-list.js +41 -48
  181. package/dist/m365/spo/commands/cdn/cdn-policy-set.js +36 -45
  182. package/dist/m365/spo/commands/cdn/cdn-set.js +63 -67
  183. package/dist/m365/spo/commands/contenttype/contenttype-add.js +48 -53
  184. package/dist/m365/spo/commands/contenttype/contenttype-field-remove.js +94 -112
  185. package/dist/m365/spo/commands/contenttype/contenttype-field-set.js +120 -146
  186. package/dist/m365/spo/commands/contenttype/contenttype-get.js +35 -34
  187. package/dist/m365/spo/commands/contenttype/contenttype-list.js +21 -18
  188. package/dist/m365/spo/commands/contenttype/contenttype-remove.js +62 -66
  189. package/dist/m365/spo/commands/contenttype/contenttype-set.js +166 -0
  190. package/dist/m365/spo/commands/contenttypehub/contenttypehub-get.js +50 -47
  191. package/dist/m365/spo/commands/customaction/customaction-add.js +43 -40
  192. package/dist/m365/spo/commands/customaction/customaction-clear.js +27 -25
  193. package/dist/m365/spo/commands/customaction/customaction-get.js +40 -35
  194. package/dist/m365/spo/commands/customaction/customaction-list.js +28 -23
  195. package/dist/m365/spo/commands/customaction/customaction-remove.js +32 -31
  196. package/dist/m365/spo/commands/customaction/customaction-set.js +21 -16
  197. package/dist/m365/spo/commands/eventreceiver/eventreceiver-get.js +42 -39
  198. package/dist/m365/spo/commands/eventreceiver/eventreceiver-list.js +35 -32
  199. package/dist/m365/spo/commands/externaluser/externaluser-list.js +51 -56
  200. package/dist/m365/spo/commands/feature/feature-disable.js +26 -21
  201. package/dist/m365/spo/commands/feature/feature-enable.js +26 -21
  202. package/dist/m365/spo/commands/feature/feature-list.js +23 -20
  203. package/dist/m365/spo/commands/field/field-add.js +25 -24
  204. package/dist/m365/spo/commands/field/field-get.js +39 -36
  205. package/dist/m365/spo/commands/field/field-list.js +28 -25
  206. package/dist/m365/spo/commands/field/field-remove.js +83 -86
  207. package/dist/m365/spo/commands/field/field-set.js +64 -70
  208. package/dist/m365/spo/commands/file/file-add.js +153 -175
  209. package/dist/m365/spo/commands/file/file-checkin.js +36 -31
  210. package/dist/m365/spo/commands/file/file-checkout.js +23 -18
  211. package/dist/m365/spo/commands/file/file-copy.js +61 -63
  212. package/dist/m365/spo/commands/file/file-get.js +64 -66
  213. package/dist/m365/spo/commands/file/file-list.js +13 -8
  214. package/dist/m365/spo/commands/file/file-move.js +60 -62
  215. package/dist/m365/spo/commands/file/file-remove.js +54 -56
  216. package/dist/m365/spo/commands/file/file-rename.js +29 -31
  217. package/dist/m365/spo/commands/file/file-sharinginfo-get.js +45 -43
  218. package/dist/m365/spo/commands/folder/folder-add.js +26 -23
  219. package/dist/m365/spo/commands/folder/folder-copy.js +45 -42
  220. package/dist/m365/spo/commands/folder/folder-get.js +23 -23
  221. package/dist/m365/spo/commands/folder/folder-list.js +22 -19
  222. package/dist/m365/spo/commands/folder/folder-move.js +46 -43
  223. package/dist/m365/spo/commands/folder/folder-remove.js +40 -39
  224. package/dist/m365/spo/commands/folder/folder-rename.js +30 -36
  225. package/dist/m365/spo/commands/group/group-add.js +25 -22
  226. package/dist/m365/spo/commands/group/group-get.js +40 -37
  227. package/dist/m365/spo/commands/group/group-list.js +21 -18
  228. package/dist/m365/spo/commands/group/group-remove.js +46 -49
  229. package/dist/m365/spo/commands/group/group-set.js +26 -21
  230. package/dist/m365/spo/commands/group/group-user-add.js +30 -34
  231. package/dist/m365/spo/commands/group/group-user-list.js +23 -20
  232. package/dist/m365/spo/commands/group/group-user-remove.js +39 -40
  233. package/dist/m365/spo/commands/hidedefaultthemes/hidedefaultthemes-get.js +29 -19
  234. package/dist/m365/spo/commands/hidedefaultthemes/hidedefaultthemes-set.js +22 -19
  235. package/dist/m365/spo/commands/homesite/homesite-get.js +28 -18
  236. package/dist/m365/spo/commands/homesite/homesite-remove.js +48 -47
  237. package/dist/m365/spo/commands/homesite/homesite-set.js +24 -29
  238. package/dist/m365/spo/commands/hubsite/hubsite-connect.js +18 -15
  239. package/dist/m365/spo/commands/hubsite/hubsite-data-get.js +25 -22
  240. package/dist/m365/spo/commands/hubsite/hubsite-disconnect.js +34 -35
  241. package/dist/m365/spo/commands/hubsite/hubsite-get.js +18 -32
  242. package/dist/m365/spo/commands/hubsite/hubsite-list.js +64 -62
  243. package/dist/m365/spo/commands/hubsite/hubsite-register.js +19 -18
  244. package/dist/m365/spo/commands/hubsite/hubsite-rights-grant.js +29 -34
  245. package/dist/m365/spo/commands/hubsite/hubsite-rights-revoke.js +43 -52
  246. package/dist/m365/spo/commands/hubsite/hubsite-set.js +34 -39
  247. package/dist/m365/spo/commands/hubsite/hubsite-theme-sync.js +19 -14
  248. package/dist/m365/spo/commands/hubsite/hubsite-unregister.js +31 -32
  249. package/dist/m365/spo/commands/knowledgehub/knowledgehub-get.js +34 -31
  250. package/dist/m365/spo/commands/knowledgehub/knowledgehub-remove.js +50 -51
  251. package/dist/m365/spo/commands/knowledgehub/knowledgehub-set.js +25 -31
  252. package/dist/m365/spo/commands/list/list-add.js +23 -20
  253. package/dist/m365/spo/commands/list/list-contenttype-add.js +30 -27
  254. package/dist/m365/spo/commands/list/list-contenttype-default-set.js +56 -57
  255. package/dist/m365/spo/commands/list/list-contenttype-list.js +29 -26
  256. package/dist/m365/spo/commands/list/list-contenttype-remove.js +41 -43
  257. package/dist/m365/spo/commands/list/list-get.js +33 -30
  258. package/dist/m365/spo/commands/list/list-label-get.js +46 -48
  259. package/dist/m365/spo/commands/list/list-label-set.js +46 -44
  260. package/dist/m365/spo/commands/list/list-list.js +25 -22
  261. package/dist/m365/spo/commands/list/list-remove.js +41 -43
  262. package/dist/m365/spo/commands/list/list-roleassignment-add.js +35 -36
  263. package/dist/m365/spo/commands/list/list-roleassignment-remove.js +50 -52
  264. package/dist/m365/spo/commands/list/list-roleinheritance-break.js +32 -27
  265. package/dist/m365/spo/commands/list/list-roleinheritance-reset.js +28 -23
  266. package/dist/m365/spo/commands/list/list-set.js +25 -22
  267. package/dist/m365/spo/commands/list/list-sitescript-get.js +49 -52
  268. package/dist/m365/spo/commands/list/list-view-add.js +29 -26
  269. package/dist/m365/spo/commands/list/list-view-field-add.js +47 -48
  270. package/dist/m365/spo/commands/list/list-view-field-remove.js +40 -43
  271. package/dist/m365/spo/commands/list/list-view-field-set.js +28 -25
  272. package/dist/m365/spo/commands/list/list-view-get.js +30 -27
  273. package/dist/m365/spo/commands/list/list-view-list.js +28 -25
  274. package/dist/m365/spo/commands/list/list-view-remove.js +40 -41
  275. package/dist/m365/spo/commands/list/list-view-set.js +25 -22
  276. package/dist/m365/spo/commands/list/list-webhook-add.js +39 -38
  277. package/dist/m365/spo/commands/list/list-webhook-get.js +29 -28
  278. package/dist/m365/spo/commands/list/list-webhook-list.js +47 -44
  279. package/dist/m365/spo/commands/list/list-webhook-remove.js +41 -44
  280. package/dist/m365/spo/commands/list/list-webhook-set.js +35 -34
  281. package/dist/m365/spo/commands/listitem/listitem-add.js +100 -109
  282. package/dist/m365/spo/commands/listitem/listitem-attachment-list.js +28 -25
  283. package/dist/m365/spo/commands/listitem/listitem-get.js +28 -25
  284. package/dist/m365/spo/commands/listitem/listitem-isrecord.js +63 -66
  285. package/dist/m365/spo/commands/listitem/listitem-list.js +63 -70
  286. package/dist/m365/spo/commands/listitem/listitem-record-declare.js +49 -51
  287. package/dist/m365/spo/commands/listitem/listitem-record-undeclare.js +49 -51
  288. package/dist/m365/spo/commands/listitem/listitem-remove.js +46 -47
  289. package/dist/m365/spo/commands/listitem/listitem-roleassignment-remove.js +51 -53
  290. package/dist/m365/spo/commands/listitem/listitem-roleinheritance-break.js +32 -27
  291. package/dist/m365/spo/commands/listitem/listitem-roleinheritance-reset.js +25 -20
  292. package/dist/m365/spo/commands/listitem/listitem-set.js +141 -160
  293. package/dist/m365/spo/commands/mail/mail-send.js +48 -43
  294. package/dist/m365/spo/commands/navigation/navigation-node-add.js +29 -26
  295. package/dist/m365/spo/commands/navigation/navigation-node-list.js +26 -23
  296. package/dist/m365/spo/commands/navigation/navigation-node-remove.js +34 -35
  297. package/dist/m365/spo/commands/orgassetslibrary/orgassetslibrary-add.js +26 -30
  298. package/dist/m365/spo/commands/orgassetslibrary/orgassetslibrary-list.js +48 -44
  299. package/dist/m365/spo/commands/orgassetslibrary/orgassetslibrary-remove.js +48 -48
  300. package/dist/m365/spo/commands/orgnewssite/orgnewssite-list.js +34 -30
  301. package/dist/m365/spo/commands/orgnewssite/orgnewssite-remove.js +36 -47
  302. package/dist/m365/spo/commands/orgnewssite/orgnewssite-set.js +22 -27
  303. package/dist/m365/spo/commands/page/page-add.js +193 -216
  304. package/dist/m365/spo/commands/page/page-clientsidewebpart-add.js +183 -186
  305. package/dist/m365/spo/commands/page/page-column-get.js +23 -20
  306. package/dist/m365/spo/commands/page/page-column-list.js +18 -15
  307. package/dist/m365/spo/commands/page/page-control-get.js +36 -33
  308. package/dist/m365/spo/commands/page/page-control-list.js +33 -30
  309. package/dist/m365/spo/commands/page/page-control-set.js +97 -97
  310. package/dist/m365/spo/commands/page/page-copy.js +51 -51
  311. package/dist/m365/spo/commands/page/page-get.js +49 -51
  312. package/dist/m365/spo/commands/page/page-header-set.js +228 -232
  313. package/dist/m365/spo/commands/page/page-list.js +40 -39
  314. package/dist/m365/spo/commands/page/page-remove.js +43 -44
  315. package/dist/m365/spo/commands/page/page-section-add.js +66 -68
  316. package/dist/m365/spo/commands/page/page-section-get.js +14 -11
  317. package/dist/m365/spo/commands/page/page-section-list.js +23 -20
  318. package/dist/m365/spo/commands/page/page-set.js +215 -236
  319. package/dist/m365/spo/commands/page/page-template-list.js +24 -25
  320. package/dist/m365/spo/commands/page/page-text-add.js +40 -40
  321. package/dist/m365/spo/commands/propertybag/propertybag-get.js +24 -22
  322. package/dist/m365/spo/commands/propertybag/propertybag-list.js +19 -17
  323. package/dist/m365/spo/commands/propertybag/propertybag-remove.js +30 -36
  324. package/dist/m365/spo/commands/propertybag/propertybag-set.js +22 -27
  325. package/dist/m365/spo/commands/roledefinition/roledefinition-add.js +117 -0
  326. package/dist/m365/spo/commands/roledefinition/roledefinition-get.js +25 -22
  327. package/dist/m365/spo/commands/roledefinition/roledefinition-list.js +20 -17
  328. package/dist/m365/spo/commands/roledefinition/roledefinition-remove.js +35 -34
  329. package/dist/m365/spo/commands/serviceprincipal/serviceprincipal-grant-add.js +38 -34
  330. package/dist/m365/spo/commands/serviceprincipal/serviceprincipal-grant-list.js +42 -38
  331. package/dist/m365/spo/commands/serviceprincipal/serviceprincipal-grant-revoke.js +33 -29
  332. package/dist/m365/spo/commands/serviceprincipal/serviceprincipal-permissionrequest-approve.js +29 -34
  333. package/dist/m365/spo/commands/serviceprincipal/serviceprincipal-permissionrequest-deny.js +24 -29
  334. package/dist/m365/spo/commands/serviceprincipal/serviceprincipal-permissionrequest-list.js +44 -40
  335. package/dist/m365/spo/commands/serviceprincipal/serviceprincipal-set.js +45 -54
  336. package/dist/m365/spo/commands/site/site-add.js +177 -189
  337. package/dist/m365/spo/commands/site/site-appcatalog-add.js +29 -34
  338. package/dist/m365/spo/commands/site/site-appcatalog-remove.js +29 -34
  339. package/dist/m365/spo/commands/site/site-apppermission-add.js +66 -34
  340. package/dist/m365/spo/commands/site/site-apppermission-get.js +19 -16
  341. package/dist/m365/spo/commands/site/site-apppermission-list.js +15 -17
  342. package/dist/m365/spo/commands/site/site-apppermission-remove.js +29 -35
  343. package/dist/m365/spo/commands/site/site-apppermission-set.js +30 -29
  344. package/dist/m365/spo/commands/site/site-chrome-set.js +50 -45
  345. package/dist/m365/spo/commands/site/site-classic-add.js +66 -82
  346. package/dist/m365/spo/commands/site/site-classic-list.js +27 -19
  347. package/dist/m365/spo/commands/site/site-classic-set.js +168 -186
  348. package/dist/m365/spo/commands/site/site-commsite-enable.js +25 -30
  349. package/dist/m365/spo/commands/site/site-ensure.js +38 -28
  350. package/dist/m365/spo/commands/site/site-get.js +17 -14
  351. package/dist/m365/spo/commands/site/site-groupify.js +35 -32
  352. package/dist/m365/spo/commands/site/site-inplacerecordsmanagement-set.js +24 -19
  353. package/dist/m365/spo/commands/site/site-list.js +17 -18
  354. package/dist/m365/spo/commands/site/site-recyclebinitem-list.js +27 -24
  355. package/dist/m365/spo/commands/site/site-recyclebinitem-restore.js +31 -24
  356. package/dist/m365/spo/commands/site/site-remove.js +49 -58
  357. package/dist/m365/spo/commands/site/site-rename.js +65 -76
  358. package/dist/m365/spo/commands/site/site-set.js +26 -32
  359. package/dist/m365/spo/commands/sitedesign/sitedesign-add.js +37 -40
  360. package/dist/m365/spo/commands/sitedesign/sitedesign-apply.js +27 -26
  361. package/dist/m365/spo/commands/sitedesign/sitedesign-get.js +23 -26
  362. package/dist/m365/spo/commands/sitedesign/sitedesign-list.js +27 -17
  363. package/dist/m365/spo/commands/sitedesign/sitedesign-remove.js +34 -39
  364. package/dist/m365/spo/commands/sitedesign/sitedesign-rights-grant.js +26 -27
  365. package/dist/m365/spo/commands/sitedesign/sitedesign-rights-list.js +25 -28
  366. package/dist/m365/spo/commands/sitedesign/sitedesign-rights-revoke.js +37 -42
  367. package/dist/m365/spo/commands/sitedesign/sitedesign-run-list.js +27 -23
  368. package/dist/m365/spo/commands/sitedesign/sitedesign-run-status-get.js +22 -18
  369. package/dist/m365/spo/commands/sitedesign/sitedesign-set.js +49 -48
  370. package/dist/m365/spo/commands/sitedesign/sitedesign-task-get.js +22 -21
  371. package/dist/m365/spo/commands/sitedesign/sitedesign-task-list.js +17 -13
  372. package/dist/m365/spo/commands/sitedesign/sitedesign-task-remove.js +33 -34
  373. package/dist/m365/spo/commands/sitescript/sitescript-add.js +22 -25
  374. package/dist/m365/spo/commands/sitescript/sitescript-get.js +22 -25
  375. package/dist/m365/spo/commands/sitescript/sitescript-list.js +30 -24
  376. package/dist/m365/spo/commands/sitescript/sitescript-remove.js +34 -39
  377. package/dist/m365/spo/commands/sitescript/sitescript-set.js +35 -38
  378. package/dist/m365/spo/commands/spo-get.js +16 -6
  379. package/dist/m365/spo/commands/spo-search.js +19 -20
  380. package/dist/m365/spo/commands/spo-set.js +9 -7
  381. package/dist/m365/spo/commands/storageentity/storageentity-get.js +36 -26
  382. package/dist/m365/spo/commands/storageentity/storageentity-list.js +34 -36
  383. package/dist/m365/spo/commands/storageentity/storageentity-remove.js +38 -48
  384. package/dist/m365/spo/commands/storageentity/storageentity-set.js +29 -34
  385. package/dist/m365/spo/commands/tenant/tenant-appcatalog-add.js +15 -16
  386. package/dist/m365/spo/commands/tenant/tenant-appcatalogurl-get.js +31 -21
  387. package/dist/m365/spo/commands/tenant/tenant-recyclebinitem-list.js +38 -34
  388. package/dist/m365/spo/commands/tenant/tenant-recyclebinitem-remove.js +51 -59
  389. package/dist/m365/spo/commands/tenant/tenant-recyclebinitem-restore.js +21 -20
  390. package/dist/m365/spo/commands/tenant/tenant-settings-list.js +56 -52
  391. package/dist/m365/spo/commands/tenant/tenant-settings-set.js +54 -65
  392. package/dist/m365/spo/commands/term/term-add.js +91 -98
  393. package/dist/m365/spo/commands/term/term-get.js +43 -49
  394. package/dist/m365/spo/commands/term/term-group-add.js +70 -79
  395. package/dist/m365/spo/commands/term/term-group-get.js +32 -37
  396. package/dist/m365/spo/commands/term/term-group-list.js +42 -38
  397. package/dist/m365/spo/commands/term/term-list.js +35 -40
  398. package/dist/m365/spo/commands/term/term-set-add.js +79 -86
  399. package/dist/m365/spo/commands/term/term-set-get.js +33 -38
  400. package/dist/m365/spo/commands/term/term-set-list.js +35 -40
  401. package/dist/m365/spo/commands/theme/theme-apply.js +52 -58
  402. package/dist/m365/spo/commands/theme/theme-get.js +37 -33
  403. package/dist/m365/spo/commands/theme/theme-list.js +35 -25
  404. package/dist/m365/spo/commands/theme/theme-remove.js +45 -37
  405. package/dist/m365/spo/commands/theme/theme-set.js +29 -32
  406. package/dist/m365/spo/commands/user/user-get.js +31 -28
  407. package/dist/m365/spo/commands/user/user-list.js +23 -20
  408. package/dist/m365/spo/commands/user/user-remove.js +39 -38
  409. package/dist/m365/spo/commands/userprofile/userprofile-get.js +22 -22
  410. package/dist/m365/spo/commands/userprofile/userprofile-set.js +41 -33
  411. package/dist/m365/spo/commands/web/web-add.js +71 -97
  412. package/dist/m365/spo/commands/web/web-clientsidewebpart-list.js +29 -26
  413. package/dist/m365/spo/commands/web/web-get.js +21 -18
  414. package/dist/m365/spo/commands/web/web-installedlanguage-list.js +20 -17
  415. package/dist/m365/spo/commands/web/web-list.js +24 -21
  416. package/dist/m365/spo/commands/web/web-reindex.js +40 -52
  417. package/dist/m365/spo/commands/web/web-remove.js +33 -32
  418. package/dist/m365/spo/commands/web/web-roleassignment-add.js +24 -25
  419. package/dist/m365/spo/commands/web/web-roleassignment-remove.js +39 -41
  420. package/dist/m365/spo/commands/web/web-roleinheritance-reset.js +21 -16
  421. package/dist/m365/spo/commands/web/web-set.js +51 -46
  422. package/dist/m365/spo/commands.js +2 -0
  423. package/dist/m365/teams/commands/app/app-install.js +27 -24
  424. package/dist/m365/teams/commands/app/app-list.js +16 -13
  425. package/dist/m365/teams/commands/app/app-publish.js +23 -20
  426. package/dist/m365/teams/commands/app/app-remove.js +29 -28
  427. package/dist/m365/teams/commands/app/app-uninstall.js +28 -27
  428. package/dist/m365/teams/commands/app/app-update.js +21 -18
  429. package/dist/m365/teams/commands/cache/cache-remove.js +24 -23
  430. package/dist/m365/teams/commands/channel/channel-add.js +11 -8
  431. package/dist/m365/teams/commands/channel/channel-get.js +24 -26
  432. package/dist/m365/teams/commands/channel/channel-list.js +14 -13
  433. package/dist/m365/teams/commands/channel/channel-member-add.js +18 -23
  434. package/dist/m365/teams/commands/channel/channel-member-list.js +21 -23
  435. package/dist/m365/teams/commands/channel/channel-member-remove.js +26 -25
  436. package/dist/m365/teams/commands/channel/channel-member-set.js +25 -30
  437. package/dist/m365/teams/commands/channel/channel-remove.js +54 -57
  438. package/dist/m365/teams/commands/channel/channel-set.js +27 -24
  439. package/dist/m365/teams/commands/chat/chat-get.js +11 -8
  440. package/dist/m365/teams/commands/chat/chat-list.js +12 -9
  441. package/dist/m365/teams/commands/chat/chat-member-list.js +11 -8
  442. package/dist/m365/teams/commands/chat/chat-message-list.js +27 -24
  443. package/dist/m365/teams/commands/chat/chat-message-send.js +10 -7
  444. package/dist/m365/teams/commands/funsettings/funsettings-list.js +17 -14
  445. package/dist/m365/teams/commands/funsettings/funsettings-set.js +26 -21
  446. package/dist/m365/teams/commands/guestsettings/guestsettings-list.js +17 -14
  447. package/dist/m365/teams/commands/guestsettings/guestsettings-set.js +23 -18
  448. package/dist/m365/teams/commands/membersettings/membersettings-list.js +17 -14
  449. package/dist/m365/teams/commands/membersettings/membersettings-set.js +23 -18
  450. package/dist/m365/teams/commands/message/message-get.js +17 -14
  451. package/dist/m365/teams/commands/message/message-list.js +16 -13
  452. package/dist/m365/teams/commands/message/message-reply-list.js +15 -12
  453. package/dist/m365/teams/commands/messagingsettings/messagingsettings-list.js +17 -14
  454. package/dist/m365/teams/commands/messagingsettings/messagingsettings-set.js +23 -18
  455. package/dist/m365/teams/commands/report/report-directroutingcalls.js +18 -15
  456. package/dist/m365/teams/commands/report/report-pstncalls.js +18 -15
  457. package/dist/m365/teams/commands/tab/tab-add.js +20 -17
  458. package/dist/m365/teams/commands/tab/tab-get.js +21 -26
  459. package/dist/m365/teams/commands/tab/tab-list.js +14 -11
  460. package/dist/m365/teams/commands/tab/tab-remove.js +29 -26
  461. package/dist/m365/teams/commands/team/team-add.js +53 -55
  462. package/dist/m365/teams/commands/team/team-archive.js +26 -23
  463. package/dist/m365/teams/commands/team/team-clone.js +40 -35
  464. package/dist/m365/teams/commands/team/team-get.js +18 -17
  465. package/dist/m365/teams/commands/team/team-list.js +28 -18
  466. package/dist/m365/teams/commands/team/team-remove.js +34 -35
  467. package/dist/m365/teams/commands/team/team-set.js +26 -21
  468. package/dist/m365/teams/commands/team/team-unarchive.js +23 -20
  469. package/dist/m365/teams/commands/user/user-app-add.js +20 -15
  470. package/dist/m365/teams/commands/user/user-app-list.js +27 -28
  471. package/dist/m365/teams/commands/user/user-app-remove.js +30 -29
  472. package/dist/m365/teams/commands/user/user-list.js +16 -18
  473. package/dist/m365/tenant/commands/id/id-get.js +36 -25
  474. package/dist/m365/tenant/commands/report/report-office365activationcounts.js +37 -23
  475. package/dist/m365/tenant/commands/report/report-office365activationsusercounts.js +37 -23
  476. package/dist/m365/tenant/commands/report/report-office365activationsuserdetail.js +37 -23
  477. package/dist/m365/tenant/commands/security/security-alerts-list.js +19 -7
  478. package/dist/m365/tenant/commands/serviceannouncement/serviceannouncement-health-get.js +19 -7
  479. package/dist/m365/tenant/commands/serviceannouncement/serviceannouncement-health-list.js +19 -7
  480. package/dist/m365/tenant/commands/serviceannouncement/serviceannouncement-healthissue-get.js +26 -14
  481. package/dist/m365/tenant/commands/serviceannouncement/serviceannouncement-healthissue-list.js +23 -11
  482. package/dist/m365/tenant/commands/serviceannouncement/serviceannouncement-message-get.js +20 -17
  483. package/dist/m365/tenant/commands/serviceannouncement/serviceannouncement-message-list.js +23 -11
  484. package/dist/m365/todo/commands/list/list-add.js +31 -19
  485. package/dist/m365/todo/commands/list/list-list.js +19 -7
  486. package/dist/m365/todo/commands/list/list-remove.js +56 -48
  487. package/dist/m365/todo/commands/list/list-set.js +34 -22
  488. package/dist/m365/todo/commands/task/task-add.js +32 -22
  489. package/dist/m365/todo/commands/task/task-list.js +32 -22
  490. package/dist/m365/todo/commands/task/task-remove.js +56 -48
  491. package/dist/m365/todo/commands/task/task-set.js +22 -21
  492. package/dist/m365/util/commands/accesstoken/accesstoken-get.js +26 -14
  493. package/dist/m365/viva/commands/connections/connections-app-create.js +102 -104
  494. package/dist/m365/yammer/commands/group/group-list.js +11 -8
  495. package/dist/m365/yammer/commands/group/group-user-add.js +21 -16
  496. package/dist/m365/yammer/commands/group/group-user-remove.js +38 -37
  497. package/dist/m365/yammer/commands/message/message-add.js +27 -24
  498. package/dist/m365/yammer/commands/message/message-get.js +18 -15
  499. package/dist/m365/yammer/commands/message/message-like-set.js +44 -45
  500. package/dist/m365/yammer/commands/message/message-list.js +24 -21
  501. package/dist/m365/yammer/commands/message/message-remove.js +30 -29
  502. package/dist/m365/yammer/commands/network/network-list.js +29 -17
  503. package/dist/m365/yammer/commands/user/user-get.js +25 -22
  504. package/dist/m365/yammer/commands/user/user-list.js +11 -8
  505. package/dist/m365/yammer/commands/yammer-search.js +76 -73
  506. package/dist/utils/fsUtil.js +2 -4
  507. package/dist/utils/md.js +1 -1
  508. package/docs/docs/cmd/graph/changelog/changelog-list.md +53 -0
  509. package/docs/docs/cmd/outlook/mail/mail-send.md +68 -10
  510. package/docs/docs/cmd/pp/environment/environment-list.md +1 -1
  511. package/docs/docs/cmd/spfx/spfx-doctor.md +3 -3
  512. package/docs/docs/cmd/spo/contenttype/contenttype-set.md +45 -0
  513. package/docs/docs/cmd/spo/list/list-roleassignment-add.md +2 -2
  514. package/docs/docs/cmd/spo/list/list-roleassignment-remove.md +2 -2
  515. package/docs/docs/cmd/spo/listitem/listitem-roleassignment-remove.md +2 -2
  516. package/docs/docs/cmd/spo/roledefinition/roledefinition-add.md +43 -0
  517. package/docs/docs/cmd/spo/site/site-apppermission-add.md +1 -1
  518. package/docs/docs/cmd/spo/site/site-apppermission-set.md +1 -1
  519. package/docs/docs/cmd/spo/web/web-roleassignment-add.md +2 -2
  520. package/package.json +2 -1
@@ -36,204 +36,201 @@ class SpoPageClientSideWebPartAddCommand extends SpoCommand_1.default {
36
36
  get description() {
37
37
  return 'Adds a client-side web part to a modern page';
38
38
  }
39
- commandAction(logger, args, cb) {
40
- let canvasContent;
41
- let layoutWebpartsContent = "";
42
- let authorByline = [""];
43
- let bannerImageUrl = "";
44
- let description = "";
45
- let title = "";
46
- let topicHeader = "";
47
- const pageData = {};
48
- let pageFullName = args.options.pageName;
49
- if (args.options.pageName.indexOf('.aspx') < 0) {
50
- pageFullName += '.aspx';
51
- }
52
- if (this.verbose) {
53
- logger.logToStderr(`Retrieving page information...`);
54
- }
55
- const requestOptions = {
56
- url: `${args.options.webUrl}/_api/sitepages/pages/GetByUrl('sitepages/${encodeURIComponent(pageFullName)}')`,
57
- headers: {
58
- 'accept': 'application/json;odata=nometadata'
59
- },
60
- responseType: 'json'
61
- };
62
- request_1.default
63
- .get(requestOptions)
64
- .then((res) => {
65
- if (res.IsPageCheckedOutToCurrentUser) {
66
- return Promise.resolve(res);
67
- }
68
- const requestOptions = {
69
- url: `${args.options.webUrl}/_api/sitepages/pages/GetByUrl('sitepages/${encodeURIComponent(pageFullName)}')/checkoutpage`,
70
- headers: {
71
- 'accept': 'application/json;odata=nometadata'
72
- },
73
- responseType: 'json'
74
- };
75
- return request_1.default.post(requestOptions);
76
- })
77
- .then((res) => {
78
- if (res) {
79
- layoutWebpartsContent = res.LayoutWebpartsContent;
80
- authorByline = res.AuthorByline;
81
- bannerImageUrl = res.BannerImageUrl;
82
- description = res.Description;
83
- title = res.Title;
84
- topicHeader = res.TopicHeader;
85
- }
86
- if (this.verbose) {
87
- logger.logToStderr(`Retrieving definition for web part ${args.options.webPartId ||
88
- args.options.standardWebPart}...`);
39
+ commandAction(logger, args) {
40
+ return __awaiter(this, void 0, void 0, function* () {
41
+ let canvasContent;
42
+ let layoutWebpartsContent = "";
43
+ let authorByline = [""];
44
+ let bannerImageUrl = "";
45
+ let description = "";
46
+ let title = "";
47
+ let topicHeader = "";
48
+ const pageData = {};
49
+ let pageFullName = args.options.pageName;
50
+ if (args.options.pageName.indexOf('.aspx') < 0) {
51
+ pageFullName += '.aspx';
89
52
  }
90
- canvasContent = JSON.parse(res.CanvasContent1 || "[{\"controlType\":0,\"pageSettingsSlice\":{\"isDefaultDescription\":true,\"isDefaultThumbnail\":true}}]");
91
- // Get the WebPart according to arguments
92
- return this.getWebPart(logger, args);
93
- })
94
- .then((webPart) => {
95
53
  if (this.verbose) {
96
- logger.logToStderr(`Setting client-side web part layout and properties...`);
54
+ logger.logToStderr(`Retrieving page information...`);
97
55
  }
98
- this.setWebPartProperties(webPart, logger, args);
99
- // if no section exists (canvasContent array only has 1 default object), add a default section (1 col)
100
- if (canvasContent.length === 1) {
101
- const defaultSection = {
102
- position: {
103
- controlIndex: 1,
104
- sectionIndex: 1,
105
- zoneIndex: 1,
106
- sectionFactor: 12,
107
- layoutIndex: 1
56
+ try {
57
+ let requestOptions = {
58
+ url: `${args.options.webUrl}/_api/sitepages/pages/GetByUrl('sitepages/${encodeURIComponent(pageFullName)}')`,
59
+ headers: {
60
+ 'accept': 'application/json;odata=nometadata'
108
61
  },
109
- emphasis: {},
110
- displayMode: 2
62
+ responseType: 'json'
111
63
  };
112
- canvasContent.unshift(defaultSection);
113
- }
114
- // get unique zoneIndex values given each section can have 1 or more
115
- // columns each assigned to the zoneIndex of the corresponding section
116
- const zoneIndices = canvasContent
117
- .filter(c => c.position)
118
- .map(c => c.position.zoneIndex)
119
- .filter((value, index, array) => {
120
- return array.indexOf(value) === index;
121
- })
122
- .sort((a, b) => a - b);
123
- // get section number. if not specified, get the last section
124
- const section = args.options.section || zoneIndices.length;
125
- if (section > zoneIndices.length) {
126
- return Promise.reject(`Invalid section '${section}'`);
127
- }
128
- // zoneIndex that represents the section where the web part should be added
129
- const zoneIndex = zoneIndices[section - 1];
130
- const column = args.options.column || 1;
131
- // we need the index of the control in the array so that we know which
132
- // item to replace or where to add the web part
133
- const controlIndex = canvasContent
134
- .findIndex(c => c.position &&
135
- c.position.zoneIndex === zoneIndex &&
136
- c.position.sectionIndex === column);
137
- if (controlIndex === -1) {
138
- return Promise.reject(`Invalid column '${args.options.column}'`);
139
- }
140
- // get the first control that matches section and column
141
- // if it's a empty column, it should be replaced with the web part
142
- // if it's a web part, then we need to determine if there are other
143
- // web parts and where in the array the new web part should be put
144
- const control = canvasContent[controlIndex];
145
- const webPartControl = this.extend({
146
- controlType: 3,
147
- displayMode: 2,
148
- id: webPart.id,
149
- position: Object.assign({}, control.position),
150
- webPartId: webPart.webPartId,
151
- emphasis: {}
152
- }, webPart);
153
- if (!control.controlType) {
154
- // it's an empty column so we need to replace it with the web part
155
- // ignore the specified order
156
- webPartControl.position.controlIndex = 1;
157
- canvasContent.splice(controlIndex, 1, webPartControl);
158
- }
159
- else {
160
- // it's a web part so we should find out where to put the web part in
161
- // the array of page controls
162
- // get web part index values to determine where to add the current
163
- // web part
164
- const controlIndices = canvasContent
165
- .filter(c => c.position &&
166
- c.position.zoneIndex === zoneIndex &&
167
- c.position.sectionIndex === column)
168
- .map(c => c.position.controlIndex)
64
+ let page = yield request_1.default.get(requestOptions);
65
+ if (!page.IsPageCheckedOutToCurrentUser) {
66
+ const requestOptions = {
67
+ url: `${args.options.webUrl}/_api/sitepages/pages/GetByUrl('sitepages/${encodeURIComponent(pageFullName)}')/checkoutpage`,
68
+ headers: {
69
+ 'accept': 'application/json;odata=nometadata'
70
+ },
71
+ responseType: 'json'
72
+ };
73
+ page = yield request_1.default.post(requestOptions);
74
+ }
75
+ if (page) {
76
+ layoutWebpartsContent = page.LayoutWebpartsContent;
77
+ authorByline = page.AuthorByline;
78
+ bannerImageUrl = page.BannerImageUrl;
79
+ description = page.Description;
80
+ title = page.Title;
81
+ topicHeader = page.TopicHeader;
82
+ }
83
+ if (this.verbose) {
84
+ logger.logToStderr(`Retrieving definition for web part ${args.options.webPartId ||
85
+ args.options.standardWebPart}...`);
86
+ }
87
+ canvasContent = JSON.parse(page.CanvasContent1 || "[{\"controlType\":0,\"pageSettingsSlice\":{\"isDefaultDescription\":true,\"isDefaultThumbnail\":true}}]");
88
+ // Get the WebPart according to arguments
89
+ const webPart = yield this.getWebPart(logger, args);
90
+ if (this.verbose) {
91
+ logger.logToStderr(`Setting client-side web part layout and properties...`);
92
+ }
93
+ this.setWebPartProperties(webPart, logger, args);
94
+ // if no section exists (canvasContent array only has 1 default object), add a default section (1 col)
95
+ if (canvasContent.length === 1) {
96
+ const defaultSection = {
97
+ position: {
98
+ controlIndex: 1,
99
+ sectionIndex: 1,
100
+ zoneIndex: 1,
101
+ sectionFactor: 12,
102
+ layoutIndex: 1
103
+ },
104
+ emphasis: {},
105
+ displayMode: 2
106
+ };
107
+ canvasContent.unshift(defaultSection);
108
+ }
109
+ // get unique zoneIndex values given each section can have 1 or more
110
+ // columns each assigned to the zoneIndex of the corresponding section
111
+ const zoneIndices = canvasContent
112
+ .filter(c => c.position)
113
+ .map(c => c.position.zoneIndex)
114
+ .filter((value, index, array) => {
115
+ return array.indexOf(value) === index;
116
+ })
169
117
  .sort((a, b) => a - b);
170
- // get the controlIndex of the web part before each the new web part
171
- // should be added
172
- if (!args.options.order ||
173
- args.options.order > controlIndices.length) {
174
- const controlIndex = controlIndices.pop();
175
- const webPartIndex = canvasContent
176
- .findIndex(c => c.position &&
177
- c.position.zoneIndex === zoneIndex &&
178
- c.position.sectionIndex === column &&
179
- c.position.controlIndex === controlIndex);
180
- canvasContent.splice(webPartIndex + 1, 0, webPartControl);
118
+ // get section number. if not specified, get the last section
119
+ const section = args.options.section || zoneIndices.length;
120
+ if (section > zoneIndices.length) {
121
+ return Promise.reject(`Invalid section '${section}'`);
122
+ }
123
+ // zoneIndex that represents the section where the web part should be added
124
+ const zoneIndex = zoneIndices[section - 1];
125
+ const column = args.options.column || 1;
126
+ // we need the index of the control in the array so that we know which
127
+ // item to replace or where to add the web part
128
+ const controlIndex = canvasContent
129
+ .findIndex(c => c.position &&
130
+ c.position.zoneIndex === zoneIndex &&
131
+ c.position.sectionIndex === column);
132
+ if (controlIndex === -1) {
133
+ return Promise.reject(`Invalid column '${args.options.column}'`);
134
+ }
135
+ // get the first control that matches section and column
136
+ // if it's a empty column, it should be replaced with the web part
137
+ // if it's a web part, then we need to determine if there are other
138
+ // web parts and where in the array the new web part should be put
139
+ const control = canvasContent[controlIndex];
140
+ const webPartControl = this.extend({
141
+ controlType: 3,
142
+ displayMode: 2,
143
+ id: webPart.id,
144
+ position: Object.assign({}, control.position),
145
+ webPartId: webPart.webPartId,
146
+ emphasis: {}
147
+ }, webPart);
148
+ if (!control.controlType) {
149
+ // it's an empty column so we need to replace it with the web part
150
+ // ignore the specified order
151
+ webPartControl.position.controlIndex = 1;
152
+ canvasContent.splice(controlIndex, 1, webPartControl);
181
153
  }
182
154
  else {
183
- const controlIndex = controlIndices[args.options.order - 1];
184
- const webPartIndex = canvasContent
185
- .findIndex(c => c.position &&
155
+ // it's a web part so we should find out where to put the web part in
156
+ // the array of page controls
157
+ // get web part index values to determine where to add the current
158
+ // web part
159
+ const controlIndices = canvasContent
160
+ .filter(c => c.position &&
161
+ c.position.zoneIndex === zoneIndex &&
162
+ c.position.sectionIndex === column)
163
+ .map(c => c.position.controlIndex)
164
+ .sort((a, b) => a - b);
165
+ // get the controlIndex of the web part before each the new web part
166
+ // should be added
167
+ if (!args.options.order ||
168
+ args.options.order > controlIndices.length) {
169
+ const controlIndex = controlIndices.pop();
170
+ const webPartIndex = canvasContent
171
+ .findIndex(c => c.position &&
172
+ c.position.zoneIndex === zoneIndex &&
173
+ c.position.sectionIndex === column &&
174
+ c.position.controlIndex === controlIndex);
175
+ canvasContent.splice(webPartIndex + 1, 0, webPartControl);
176
+ }
177
+ else {
178
+ const controlIndex = controlIndices[args.options.order - 1];
179
+ const webPartIndex = canvasContent
180
+ .findIndex(c => c.position &&
181
+ c.position.zoneIndex === zoneIndex &&
182
+ c.position.sectionIndex === column &&
183
+ c.position.controlIndex === controlIndex);
184
+ canvasContent.splice(webPartIndex, 0, webPartControl);
185
+ }
186
+ // reset order to ensure there are no gaps
187
+ const webPartsInColumn = canvasContent
188
+ .filter(c => c.position &&
186
189
  c.position.zoneIndex === zoneIndex &&
187
- c.position.sectionIndex === column &&
188
- c.position.controlIndex === controlIndex);
189
- canvasContent.splice(webPartIndex, 0, webPartControl);
190
+ c.position.sectionIndex === column);
191
+ let i = 1;
192
+ webPartsInColumn.forEach(w => {
193
+ w.position.controlIndex = i++;
194
+ });
190
195
  }
191
- // reset order to ensure there are no gaps
192
- const webPartsInColumn = canvasContent
193
- .filter(c => c.position &&
194
- c.position.zoneIndex === zoneIndex &&
195
- c.position.sectionIndex === column);
196
- let i = 1;
197
- webPartsInColumn.forEach(w => {
198
- w.position.controlIndex = i++;
199
- });
200
- }
201
- if (authorByline) {
202
- pageData.AuthorByline = authorByline;
203
- }
204
- if (bannerImageUrl) {
205
- pageData.BannerImageUrl = bannerImageUrl;
206
- }
207
- if (description) {
208
- pageData.Description = description;
209
- }
210
- if (title) {
211
- pageData.Title = title;
212
- }
213
- if (topicHeader) {
214
- pageData.TopicHeader = topicHeader;
215
- }
216
- if (layoutWebpartsContent) {
217
- pageData.LayoutWebpartsContent = layoutWebpartsContent;
196
+ if (authorByline) {
197
+ pageData.AuthorByline = authorByline;
198
+ }
199
+ if (bannerImageUrl) {
200
+ pageData.BannerImageUrl = bannerImageUrl;
201
+ }
202
+ if (description) {
203
+ pageData.Description = description;
204
+ }
205
+ if (title) {
206
+ pageData.Title = title;
207
+ }
208
+ if (topicHeader) {
209
+ pageData.TopicHeader = topicHeader;
210
+ }
211
+ if (layoutWebpartsContent) {
212
+ pageData.LayoutWebpartsContent = layoutWebpartsContent;
213
+ }
214
+ if (canvasContent) {
215
+ pageData.CanvasContent1 = JSON.stringify(canvasContent);
216
+ }
217
+ requestOptions = {
218
+ url: `${args.options.webUrl}/_api/sitepages/pages/GetByUrl('sitepages/${encodeURIComponent(pageFullName)}')/SavePageAsDraft`,
219
+ headers: {
220
+ 'X-HTTP-Method': 'MERGE',
221
+ 'IF-MATCH': '*',
222
+ 'content-type': 'application/json;odata=nometadata',
223
+ accept: 'application/json;odata=nometadata'
224
+ },
225
+ data: pageData,
226
+ responseType: 'json'
227
+ };
228
+ yield request_1.default.post(requestOptions);
218
229
  }
219
- if (canvasContent) {
220
- pageData.CanvasContent1 = JSON.stringify(canvasContent);
230
+ catch (err) {
231
+ this.handleRejectedODataJsonPromise(err);
221
232
  }
222
- const requestOptions = {
223
- url: `${args.options.webUrl}/_api/sitepages/pages/GetByUrl('sitepages/${encodeURIComponent(pageFullName)}')/SavePageAsDraft`,
224
- headers: {
225
- 'X-HTTP-Method': 'MERGE',
226
- 'IF-MATCH': '*',
227
- 'content-type': 'application/json;odata=nometadata',
228
- accept: 'application/json;odata=nometadata'
229
- },
230
- data: pageData,
231
- responseType: 'json'
232
- };
233
- return request_1.default.post(requestOptions);
234
- })
235
- .then(_ => cb())
236
- .catch((err) => this.handleRejectedODataJsonPromise(err, logger, cb));
233
+ });
237
234
  }
238
235
  getWebPart(logger, args) {
239
236
  return new Promise((resolve, reject) => {
@@ -32,29 +32,32 @@ class SpoPageColumnGetCommand extends SpoCommand_1.default {
32
32
  get description() {
33
33
  return 'Get information about a specific column of a modern page';
34
34
  }
35
- commandAction(logger, args, cb) {
36
- Page_1.Page
37
- .getPage(args.options.name, args.options.webUrl, logger, this.debug, this.verbose)
38
- .then((clientSidePage) => {
39
- const sections = clientSidePage.sections
40
- .filter(section => section.order === args.options.section);
41
- if (sections.length) {
42
- const isJSONOutput = args.options.output === 'json';
43
- const columns = sections[0].columns.filter(col => col.order === args.options.column);
44
- if (columns.length) {
45
- const column = Page_1.Page.getColumnsInformation(columns[0], isJSONOutput);
46
- column.controls = columns[0].controls
47
- .map(control => Page_1.Page.getControlsInformation(control, isJSONOutput));
48
- if (!isJSONOutput) {
49
- column.controls = column.controls
50
- .map(control => `${control.id} (${control.title})`)
51
- .join(', ');
35
+ commandAction(logger, args) {
36
+ return __awaiter(this, void 0, void 0, function* () {
37
+ try {
38
+ const clientSidePage = yield Page_1.Page.getPage(args.options.name, args.options.webUrl, logger, this.debug, this.verbose);
39
+ const sections = clientSidePage.sections
40
+ .filter(section => section.order === args.options.section);
41
+ if (sections.length) {
42
+ const isJSONOutput = args.options.output === 'json';
43
+ const columns = sections[0].columns.filter(col => col.order === args.options.column);
44
+ if (columns.length) {
45
+ const column = Page_1.Page.getColumnsInformation(columns[0], isJSONOutput);
46
+ column.controls = columns[0].controls
47
+ .map(control => Page_1.Page.getControlsInformation(control, isJSONOutput));
48
+ if (!isJSONOutput) {
49
+ column.controls = column.controls
50
+ .map(control => `${control.id} (${control.title})`)
51
+ .join(', ');
52
+ }
53
+ logger.log(column);
52
54
  }
53
- logger.log(column);
54
55
  }
55
56
  }
56
- cb();
57
- }, (err) => this.handleRejectedODataJsonPromise(err, logger, cb));
57
+ catch (err) {
58
+ this.handleRejectedODataJsonPromise(err);
59
+ }
60
+ });
58
61
  }
59
62
  }
60
63
  _SpoPageColumnGetCommand_instances = new WeakSet(), _SpoPageColumnGetCommand_initOptions = function _SpoPageColumnGetCommand_initOptions() {
@@ -32,22 +32,25 @@ class SpoPageColumnListCommand extends SpoCommand_1.default {
32
32
  get description() {
33
33
  return 'Lists columns in the specific section of a modern page';
34
34
  }
35
- commandAction(logger, args, cb) {
36
- Page_1.Page
37
- .getPage(args.options.name, args.options.webUrl, logger, this.debug, this.verbose)
38
- .then((clientSidePage) => {
39
- const sections = clientSidePage.sections
40
- .filter(section => section.order === args.options.section);
41
- if (sections.length) {
42
- const isJSONOutput = args.options.output === 'json';
43
- logger.log(sections[0].columns.map(c => {
44
- const column = Page_1.Page.getColumnsInformation(c, isJSONOutput);
45
- column.controls = c.controls.length;
46
- return column;
47
- }));
35
+ commandAction(logger, args) {
36
+ return __awaiter(this, void 0, void 0, function* () {
37
+ try {
38
+ const clientSidePage = yield Page_1.Page.getPage(args.options.name, args.options.webUrl, logger, this.debug, this.verbose);
39
+ const sections = clientSidePage.sections
40
+ .filter(section => section.order === args.options.section);
41
+ if (sections.length) {
42
+ const isJSONOutput = args.options.output === 'json';
43
+ logger.log(sections[0].columns.map(c => {
44
+ const column = Page_1.Page.getColumnsInformation(c, isJSONOutput);
45
+ column.controls = c.controls.length;
46
+ return column;
47
+ }));
48
+ }
48
49
  }
49
- cb();
50
- }, (err) => this.handleRejectedODataJsonPromise(err, logger, cb));
50
+ catch (err) {
51
+ this.handleRejectedODataJsonPromise(err);
52
+ }
53
+ });
51
54
  }
52
55
  }
53
56
  _SpoPageColumnListCommand_instances = new WeakSet(), _SpoPageColumnListCommand_initOptions = function _SpoPageColumnListCommand_initOptions() {
@@ -33,42 +33,45 @@ class SpoPageControlGetCommand extends SpoCommand_1.default {
33
33
  get description() {
34
34
  return 'Gets information about the specific control on a modern page';
35
35
  }
36
- commandAction(logger, args, cb) {
37
- let pageName = args.options.name;
38
- if (args.options.name.indexOf('.aspx') < 0) {
39
- pageName += '.aspx';
40
- }
41
- const requestOptions = {
42
- url: `${args.options.webUrl}/_api/SitePages/Pages/GetByUrl('sitepages/${encodeURIComponent(pageName)}')`,
43
- headers: {
44
- accept: 'application/json;odata=nometadata'
45
- },
46
- responseType: 'json'
47
- };
48
- request_1.default
49
- .get(requestOptions)
50
- .then((clientSidePage) => {
51
- var _a;
52
- const canvasData = clientSidePage.CanvasContent1 ? JSON.parse(clientSidePage.CanvasContent1) : [];
53
- const control = canvasData.find(c => { var _a; return ((_a = c.id) === null || _a === void 0 ? void 0 : _a.toLowerCase()) === args.options.id.toLowerCase(); });
54
- if (control) {
55
- const controlData = {
56
- id: control.id,
57
- type: (0, pageMethods_1.getControlTypeDisplayName)(control.controlType || 0),
58
- title: (_a = control.webPartData) === null || _a === void 0 ? void 0 : _a.title,
59
- controlType: control.controlType,
60
- order: control.position.sectionIndex,
61
- controlData: Object.assign({}, control)
62
- };
63
- logger.log(controlData);
36
+ commandAction(logger, args) {
37
+ var _a;
38
+ return __awaiter(this, void 0, void 0, function* () {
39
+ let pageName = args.options.name;
40
+ if (args.options.name.indexOf('.aspx') < 0) {
41
+ pageName += '.aspx';
64
42
  }
65
- else {
66
- if (this.verbose) {
67
- logger.logToStderr(`Control with ID ${args.options.id} not found on page ${args.options.name}`);
43
+ const requestOptions = {
44
+ url: `${args.options.webUrl}/_api/SitePages/Pages/GetByUrl('sitepages/${encodeURIComponent(pageName)}')`,
45
+ headers: {
46
+ accept: 'application/json;odata=nometadata'
47
+ },
48
+ responseType: 'json'
49
+ };
50
+ try {
51
+ const clientSidePage = yield request_1.default.get(requestOptions);
52
+ const canvasData = clientSidePage.CanvasContent1 ? JSON.parse(clientSidePage.CanvasContent1) : [];
53
+ const control = canvasData.find(c => { var _a; return ((_a = c.id) === null || _a === void 0 ? void 0 : _a.toLowerCase()) === args.options.id.toLowerCase(); });
54
+ if (control) {
55
+ const controlData = {
56
+ id: control.id,
57
+ type: (0, pageMethods_1.getControlTypeDisplayName)(control.controlType || 0),
58
+ title: (_a = control.webPartData) === null || _a === void 0 ? void 0 : _a.title,
59
+ controlType: control.controlType,
60
+ order: control.position.sectionIndex,
61
+ controlData: Object.assign({}, control)
62
+ };
63
+ logger.log(controlData);
64
+ }
65
+ else {
66
+ if (this.verbose) {
67
+ logger.logToStderr(`Control with ID ${args.options.id} not found on page ${args.options.name}`);
68
+ }
68
69
  }
69
70
  }
70
- cb();
71
- }, (err) => this.handleRejectedODataJsonPromise(err, logger, cb));
71
+ catch (err) {
72
+ this.handleRejectedODataJsonPromise(err);
73
+ }
74
+ });
72
75
  }
73
76
  }
74
77
  _SpoPageControlGetCommand_instances = new WeakSet(), _SpoPageControlGetCommand_initOptions = function _SpoPageControlGetCommand_initOptions() {
@@ -36,36 +36,39 @@ class SpoPageControlListCommand extends SpoCommand_1.default {
36
36
  defaultProperties() {
37
37
  return ['id', 'type', 'title'];
38
38
  }
39
- commandAction(logger, args, cb) {
40
- let pageName = args.options.name;
41
- if (args.options.name.indexOf('.aspx') < 0) {
42
- pageName += '.aspx';
43
- }
44
- const requestOptions = {
45
- url: `${args.options.webUrl}/_api/SitePages/Pages/GetByUrl('sitepages/${encodeURIComponent(pageName)}')`,
46
- headers: {
47
- accept: 'application/json;odata=nometadata'
48
- },
49
- responseType: 'json'
50
- };
51
- request_1.default
52
- .get(requestOptions)
53
- .then((clientSidePage) => {
54
- const canvasData = clientSidePage.CanvasContent1 ? JSON.parse(clientSidePage.CanvasContent1) : [];
55
- const controls = canvasData.filter(c => c.position).map(c => {
56
- var _a;
57
- return {
58
- id: c.id,
59
- type: (0, pageMethods_1.getControlTypeDisplayName)(c.controlType || 0),
60
- title: (_a = c.webPartData) === null || _a === void 0 ? void 0 : _a.title,
61
- controlType: c.controlType,
62
- order: c.position.sectionIndex,
63
- controlData: Object.assign({}, c)
64
- };
65
- });
66
- logger.log(JSON.parse(JSON.stringify(controls)));
67
- cb();
68
- }, (err) => this.handleRejectedODataJsonPromise(err, logger, cb));
39
+ commandAction(logger, args) {
40
+ return __awaiter(this, void 0, void 0, function* () {
41
+ let pageName = args.options.name;
42
+ if (args.options.name.indexOf('.aspx') < 0) {
43
+ pageName += '.aspx';
44
+ }
45
+ const requestOptions = {
46
+ url: `${args.options.webUrl}/_api/SitePages/Pages/GetByUrl('sitepages/${encodeURIComponent(pageName)}')`,
47
+ headers: {
48
+ accept: 'application/json;odata=nometadata'
49
+ },
50
+ responseType: 'json'
51
+ };
52
+ try {
53
+ const clientSidePage = yield request_1.default.get(requestOptions);
54
+ const canvasData = clientSidePage.CanvasContent1 ? JSON.parse(clientSidePage.CanvasContent1) : [];
55
+ const controls = canvasData.filter(c => c.position).map(c => {
56
+ var _a;
57
+ return {
58
+ id: c.id,
59
+ type: (0, pageMethods_1.getControlTypeDisplayName)(c.controlType || 0),
60
+ title: (_a = c.webPartData) === null || _a === void 0 ? void 0 : _a.title,
61
+ controlType: c.controlType,
62
+ order: c.position.sectionIndex,
63
+ controlData: Object.assign({}, c)
64
+ };
65
+ });
66
+ logger.log(JSON.parse(JSON.stringify(controls)));
67
+ }
68
+ catch (err) {
69
+ this.handleRejectedODataJsonPromise(err);
70
+ }
71
+ });
69
72
  }
70
73
  }
71
74
  _SpoPageControlListCommand_instances = new WeakSet(), _SpoPageControlListCommand_initOptions = function _SpoPageControlListCommand_initOptions() {