@pnp/cli-microsoft365 5.9.0-beta.fd6d022 → 6.0.0-beta.01ba480

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 (473) hide show
  1. package/.eslintrc.js +17 -2
  2. package/README.md +5 -0
  3. package/dist/Auth.js +1 -2
  4. package/dist/Command.js +16 -2
  5. package/dist/appInsights.js +2 -0
  6. package/dist/m365/aad/commands/app/app-add.js +40 -17
  7. package/dist/m365/aad/commands/app/app-remove.js +0 -4
  8. package/dist/m365/aad/commands/app/app-role-remove.js +0 -4
  9. package/dist/m365/aad/commands/approleassignment/approleassignment-add.js +11 -11
  10. package/dist/m365/aad/commands/approleassignment/approleassignment-list.js +10 -10
  11. package/dist/m365/aad/commands/approleassignment/approleassignment-remove.js +10 -10
  12. package/dist/m365/aad/commands/o365group/o365group-add.js +2 -7
  13. package/dist/m365/aad/commands/o365group/o365group-recyclebinitem-list.js +6 -6
  14. package/dist/m365/aad/commands/o365group/o365group-recyclebinitem-restore.js +0 -3
  15. package/dist/m365/aad/commands/o365group/o365group-teamify.js +7 -7
  16. package/dist/m365/aad/commands/policy/policy-list.js +6 -6
  17. package/dist/m365/aad/commands/sp/sp-get.js +12 -12
  18. package/dist/m365/aad/commands/user/user-guest-add.js +103 -0
  19. package/dist/m365/aad/commands.js +1 -3
  20. package/dist/m365/cli/commands/config/config-set.js +0 -1
  21. package/dist/m365/commands/status.js +6 -1
  22. package/dist/m365/flow/commands/flow-disable.js +2 -2
  23. package/dist/m365/flow/commands/flow-enable.js +2 -2
  24. package/dist/m365/flow/commands/flow-export.js +5 -5
  25. package/dist/m365/flow/commands/flow-get.js +2 -2
  26. package/dist/m365/flow/commands/flow-list.js +2 -2
  27. package/dist/m365/flow/commands/flow-remove.js +3 -3
  28. package/dist/m365/flow/commands/run/run-cancel.js +6 -6
  29. package/dist/m365/flow/commands/run/run-get.js +4 -4
  30. package/dist/m365/flow/commands/run/run-list.js +4 -4
  31. package/dist/m365/flow/commands/run/run-resubmit.js +7 -7
  32. package/dist/m365/outlook/commands/mail/mail-send.js +55 -34
  33. package/dist/m365/outlook/commands/message/message-get.js +97 -0
  34. package/dist/m365/outlook/commands/message/message-move.js +2 -2
  35. package/dist/m365/outlook/commands.js +2 -2
  36. package/dist/m365/pa/commands/connector/connector-export.js +3 -3
  37. package/dist/m365/pa/commands/connector/connector-list.js +2 -2
  38. package/dist/m365/pa/commands/solution/solution-reference-add.js +7 -7
  39. package/dist/m365/planner/commands/bucket/bucket-add.js +2 -9
  40. package/dist/m365/planner/commands/bucket/bucket-get.js +5 -12
  41. package/dist/m365/planner/commands/bucket/bucket-list.js +2 -9
  42. package/dist/m365/planner/commands/bucket/bucket-remove.js +4 -11
  43. package/dist/m365/planner/commands/bucket/bucket-set.js +4 -11
  44. package/dist/m365/planner/commands/plan/plan-get.js +5 -24
  45. package/dist/m365/planner/commands/task/task-add.js +3 -8
  46. package/dist/m365/planner/commands/task/task-get.js +5 -19
  47. package/dist/m365/planner/commands/task/task-list.js +4 -11
  48. package/dist/m365/planner/commands/task/task-set.js +5 -10
  49. package/dist/m365/planner/commands.js +0 -2
  50. package/dist/m365/pp/commands/Environment.js +3 -0
  51. package/dist/m365/pp/commands/card/card-get.js +110 -0
  52. package/dist/m365/pp/commands/card/card-list.js +68 -0
  53. package/dist/m365/pp/commands/dataverse/dataverse-table-list.js +69 -0
  54. package/dist/m365/pp/commands/environment/environment-get.js +75 -0
  55. package/dist/m365/pp/commands/gateway/gateway-get.js +70 -0
  56. package/dist/m365/pp/commands/solution/Solution.js +3 -0
  57. package/dist/m365/pp/commands/solution/solution-get.js +117 -0
  58. package/dist/m365/pp/commands/solution/solution-list.js +87 -0
  59. package/dist/m365/pp/commands/tenant/tenant-settings-list.js +45 -0
  60. package/dist/m365/pp/commands.js +9 -1
  61. package/dist/m365/spfx/commands/package/package-generate.js +2 -2
  62. package/dist/m365/spfx/commands/project/project-doctor.js +4 -1
  63. package/dist/m365/spfx/commands/project/project-externalize.js +4 -1
  64. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN010001_YORC_version.js +2 -1
  65. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN010002_YORC_isCreatingSolution.js +2 -1
  66. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN010003_YORC_packageManager.js +2 -1
  67. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN010004_YORC_componentType.js +2 -1
  68. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN010005_YORC_environment.js +2 -1
  69. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN010006_YORC_framework.js +3 -2
  70. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN010007_YORC_isDomainIsolated.js +2 -1
  71. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN010008_YORC_nodeVersion.js +2 -1
  72. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN010009_YORC_sdkVersions_microsoft_graph_client.js +56 -0
  73. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN010010_YORC_sdkVersions_teams_js.js +56 -0
  74. package/dist/m365/spfx/commands/project/project-upgrade/upgrade-1.14.0.js +0 -2
  75. package/dist/m365/spfx/commands/project/project-upgrade/{upgrade-1.16.0-beta.1.js → upgrade-1.16.0-beta.2.js} +44 -28
  76. package/dist/m365/spfx/commands/project/project-upgrade.js +1 -1
  77. package/dist/m365/spfx/commands/spfx-doctor.js +54 -9
  78. package/dist/m365/spo/commands/app/SpoAppBaseCommand.js +1 -1
  79. package/dist/m365/spo/commands/app/app-add.js +7 -7
  80. package/dist/m365/spo/commands/app/app-deploy.js +7 -7
  81. package/dist/m365/spo/commands/app/app-get.js +7 -7
  82. package/dist/m365/spo/commands/app/app-install.js +6 -6
  83. package/dist/m365/spo/commands/app/app-list.js +7 -7
  84. package/dist/m365/spo/commands/app/app-remove.js +7 -7
  85. package/dist/m365/spo/commands/app/app-retract.js +7 -7
  86. package/dist/m365/spo/commands/app/app-uninstall.js +6 -6
  87. package/dist/m365/spo/commands/app/app-upgrade.js +6 -6
  88. package/dist/m365/spo/commands/apppage/apppage-set.js +2 -2
  89. package/dist/m365/spo/commands/cdn/cdn-policy-list.js +7 -7
  90. package/dist/m365/spo/commands/cdn/cdn-policy-set.js +7 -7
  91. package/dist/m365/spo/commands/contenttype/contenttype-add.js +82 -43
  92. package/dist/m365/spo/commands/contenttype/contenttype-field-remove.js +53 -21
  93. package/dist/m365/spo/commands/contenttype/contenttype-field-set.js +13 -13
  94. package/dist/m365/spo/commands/contenttype/contenttype-get.js +35 -14
  95. package/dist/m365/spo/commands/customaction/customaction-add.js +3 -3
  96. package/dist/m365/spo/commands/customaction/customaction-clear.js +3 -3
  97. package/dist/m365/spo/commands/customaction/customaction-get.js +5 -4
  98. package/dist/m365/spo/commands/customaction/customaction-list.js +5 -4
  99. package/dist/m365/spo/commands/customaction/customaction-remove.js +6 -5
  100. package/dist/m365/spo/commands/customaction/customaction-set.js +3 -3
  101. package/dist/m365/spo/commands/eventreceiver/EventReceiver.js +3 -0
  102. package/dist/m365/spo/commands/eventreceiver/eventreceiver-remove.js +182 -0
  103. package/dist/m365/spo/commands/feature/feature-disable.js +4 -4
  104. package/dist/m365/spo/commands/feature/feature-enable.js +5 -5
  105. package/dist/m365/spo/commands/feature/feature-list.js +3 -3
  106. package/dist/m365/spo/commands/field/field-add.js +26 -1
  107. package/dist/m365/spo/commands/field/field-get.js +1 -7
  108. package/dist/m365/spo/commands/field/field-remove.js +1 -7
  109. package/dist/m365/spo/commands/field/field-set.js +24 -21
  110. package/dist/m365/spo/commands/file/file-checkin.js +5 -5
  111. package/dist/m365/spo/commands/file/file-checkout.js +5 -5
  112. package/dist/m365/spo/commands/file/file-copy.js +25 -39
  113. package/dist/m365/spo/commands/file/file-move.js +24 -37
  114. package/dist/m365/spo/commands/file/file-rename.js +19 -16
  115. package/dist/m365/spo/commands/file/file-roleassignment-add.js +231 -0
  116. package/dist/m365/spo/commands/file/file-roleassignment-remove.js +180 -0
  117. package/dist/m365/spo/commands/file/file-roleinheritance-break.js +129 -0
  118. package/dist/m365/spo/commands/file/file-roleinheritance-reset.js +1 -1
  119. package/dist/m365/spo/commands/file/file-sharinginfo-get.js +13 -13
  120. package/dist/m365/spo/commands/folder/folder-get.js +6 -6
  121. package/dist/m365/spo/commands/folder/folder-remove.js +3 -3
  122. package/dist/m365/spo/commands/folder/folder-rename.js +4 -4
  123. package/dist/m365/spo/commands/folder/folder-roleassignment-remove.js +168 -0
  124. package/dist/m365/spo/commands/folder/folder-roleinheritance-break.js +104 -0
  125. package/dist/m365/spo/commands/folder/folder-roleinheritance-reset.js +13 -2
  126. package/dist/m365/spo/commands/group/AssociatedGroupPropertiesCollection.js +3 -0
  127. package/dist/m365/spo/commands/group/group-list.js +49 -10
  128. package/dist/m365/spo/commands/hubsite/hubsite-register.js +4 -4
  129. package/dist/m365/spo/commands/hubsite/hubsite-rights-grant.js +4 -4
  130. package/dist/m365/spo/commands/hubsite/hubsite-rights-revoke.js +5 -5
  131. package/dist/m365/spo/commands/knowledgehub/knowledgehub-set.js +4 -4
  132. package/dist/m365/spo/commands/list/list-contenttype-add.js +24 -21
  133. package/dist/m365/spo/commands/list/list-contenttype-default-set.js +59 -47
  134. package/dist/m365/spo/commands/list/list-contenttype-list.js +16 -8
  135. package/dist/m365/spo/commands/list/list-contenttype-remove.js +19 -11
  136. package/dist/m365/spo/commands/list/list-list.js +3 -13
  137. package/dist/m365/spo/commands/list/list-roleassignment-add.js +10 -10
  138. package/dist/m365/spo/commands/list/list-roleassignment-remove.js +8 -8
  139. package/dist/m365/spo/commands/list/list-roleinheritance-break.js +54 -25
  140. package/dist/m365/spo/commands/list/list-roleinheritance-reset.js +50 -21
  141. package/dist/m365/spo/commands/list/list-view-field-add.js +20 -20
  142. package/dist/m365/spo/commands/list/list-view-field-remove.js +11 -11
  143. package/dist/m365/spo/commands/list/list-view-field-set.js +15 -15
  144. package/dist/m365/spo/commands/list/list-view-get.js +9 -9
  145. package/dist/m365/spo/commands/list/list-view-remove.js +11 -11
  146. package/dist/m365/spo/commands/list/list-view-set.js +11 -11
  147. package/dist/m365/spo/commands/list/list-webhook-add.js +19 -11
  148. package/dist/m365/spo/commands/list/list-webhook-get.js +17 -10
  149. package/dist/m365/spo/commands/list/list-webhook-list.js +17 -42
  150. package/dist/m365/spo/commands/list/list-webhook-remove.js +19 -11
  151. package/dist/m365/spo/commands/list/list-webhook-set.js +18 -10
  152. package/dist/m365/spo/commands/listitem/listitem-add.js +24 -14
  153. package/dist/m365/spo/commands/listitem/listitem-attachment-list.js +18 -8
  154. package/dist/m365/spo/commands/listitem/listitem-get.js +18 -8
  155. package/dist/m365/spo/commands/listitem/listitem-isrecord.js +20 -10
  156. package/dist/m365/spo/commands/listitem/listitem-list.js +20 -29
  157. package/dist/m365/spo/commands/listitem/listitem-record-declare.js +23 -16
  158. package/dist/m365/spo/commands/listitem/listitem-record-undeclare.js +27 -24
  159. package/dist/m365/spo/commands/listitem/listitem-remove.js +19 -11
  160. package/dist/m365/spo/commands/listitem/listitem-roleassignment-add.js +239 -0
  161. package/dist/m365/spo/commands/listitem/listitem-roleassignment-remove.js +8 -8
  162. package/dist/m365/spo/commands/listitem/listitem-roleinheritance-break.js +54 -25
  163. package/dist/m365/spo/commands/listitem/listitem-roleinheritance-reset.js +53 -21
  164. package/dist/m365/spo/commands/listitem/listitem-set.js +52 -44
  165. package/dist/m365/spo/commands/page/page-column-get.js +2 -2
  166. package/dist/m365/spo/commands/page/page-column-list.js +2 -2
  167. package/dist/m365/spo/commands/page/page-control-get.js +4 -4
  168. package/dist/m365/spo/commands/page/page-control-list.js +3 -3
  169. package/dist/m365/spo/commands/page/page-control-set.js +3 -3
  170. package/dist/m365/spo/commands/page/page-section-add.js +2 -2
  171. package/dist/m365/spo/commands/page/page-section-get.js +2 -2
  172. package/dist/m365/spo/commands/page/page-section-list.js +2 -2
  173. package/dist/m365/spo/commands/roledefinition/roledefinition-list.js +15 -2
  174. package/dist/m365/spo/commands/serviceprincipal/serviceprincipal-grant-revoke.js +2 -2
  175. package/dist/m365/spo/commands/serviceprincipal/serviceprincipal-permissionrequest-approve.js +4 -4
  176. package/dist/m365/spo/commands/serviceprincipal/serviceprincipal-permissionrequest-deny.js +4 -4
  177. package/dist/m365/spo/commands/site/site-add.js +4 -11
  178. package/dist/m365/spo/commands/site/site-appcatalog-add.js +3 -3
  179. package/dist/m365/spo/commands/site/site-appcatalog-remove.js +3 -3
  180. package/dist/m365/spo/commands/site/site-apppermission-get.js +2 -2
  181. package/dist/m365/spo/commands/site/site-apppermission-remove.js +5 -5
  182. package/dist/m365/spo/commands/site/site-apppermission-set.js +5 -5
  183. package/dist/m365/spo/commands/site/site-chrome-set.js +3 -3
  184. package/dist/m365/spo/commands/site/site-ensure.js +1 -1
  185. package/dist/m365/spo/commands/site/site-groupify.js +3 -3
  186. package/dist/m365/spo/commands/{hubsite/hubsite-connect.js → site/site-hubsite-connect.js} +17 -17
  187. package/dist/m365/spo/commands/{hubsite/hubsite-disconnect.js → site/site-hubsite-disconnect.js} +18 -18
  188. package/dist/m365/spo/commands/{hubsite/hubsite-theme-sync.js → site/site-hubsite-theme-sync.js} +11 -11
  189. package/dist/m365/spo/commands/site/site-list.js +6 -17
  190. package/dist/m365/spo/commands/site/site-rename.js +9 -9
  191. package/dist/m365/spo/commands/sitedesign/sitedesign-rights-grant.js +4 -4
  192. package/dist/m365/spo/commands/sitedesign/sitedesign-rights-list.js +4 -4
  193. package/dist/m365/spo/commands/sitedesign/sitedesign-rights-revoke.js +5 -5
  194. package/dist/m365/spo/commands/sitedesign/sitedesign-task-get.js +4 -4
  195. package/dist/m365/spo/commands/sitedesign/sitedesign-task-remove.js +5 -5
  196. package/dist/m365/spo/commands/tenant/tenant-recyclebinitem-remove.js +5 -5
  197. package/dist/m365/spo/commands/tenant/tenant-recyclebinitem-restore.js +3 -3
  198. package/dist/m365/spo/commands/web/web-add.js +4 -4
  199. package/dist/m365/spo/commands/web/web-get.js +3 -3
  200. package/dist/m365/spo/commands/web/web-list.js +4 -4
  201. package/dist/m365/spo/commands/web/web-reindex.js +8 -8
  202. package/dist/m365/spo/commands/web/web-remove.js +5 -5
  203. package/dist/m365/spo/commands/web/web-roleassignment-add.js +10 -10
  204. package/dist/m365/spo/commands/web/web-roleassignment-remove.js +8 -8
  205. package/dist/m365/spo/commands/web/web-roleinheritance-break.js +100 -0
  206. package/dist/m365/spo/commands/web/web-roleinheritance-reset.js +41 -15
  207. package/dist/m365/spo/commands/web/web-set.js +4 -4
  208. package/dist/m365/spo/commands.js +11 -6
  209. package/dist/m365/teams/commands/app/app-install.js +4 -4
  210. package/dist/m365/teams/commands/app/app-uninstall.js +3 -3
  211. package/dist/m365/teams/commands/channel/channel-add.js +9 -9
  212. package/dist/m365/teams/commands/channel/channel-get.js +10 -10
  213. package/dist/m365/teams/commands/channel/channel-member-add.js +0 -4
  214. package/dist/m365/teams/commands/channel/channel-member-list.js +0 -4
  215. package/dist/m365/teams/commands/channel/channel-member-remove.js +0 -4
  216. package/dist/m365/teams/commands/channel/channel-remove.js +16 -16
  217. package/dist/m365/teams/commands/channel/channel-set.js +7 -7
  218. package/dist/m365/teams/commands/message/message-get.js +3 -3
  219. package/dist/m365/teams/commands/tab/tab-get.js +10 -10
  220. package/dist/m365/teams/commands/tab/tab-remove.js +6 -6
  221. package/dist/m365/teams/commands/team/team-archive.js +3 -13
  222. package/dist/m365/teams/commands/team/team-clone.js +3 -20
  223. package/dist/m365/teams/commands/team/team-remove.js +5 -17
  224. package/dist/m365/teams/commands/team/team-set.js +1 -20
  225. package/dist/m365/teams/commands/team/team-unarchive.js +4 -16
  226. package/dist/m365/teams/commands/user/user-app-add.js +4 -4
  227. package/dist/m365/teams/commands/user/user-app-remove.js +3 -3
  228. package/dist/m365/teams/commands.js +0 -3
  229. package/dist/m365/todo/commands/list/list-get.js +89 -0
  230. package/dist/m365/todo/commands/task/task-add.js +55 -3
  231. package/dist/m365/todo/commands/task/task-get.js +108 -0
  232. package/dist/m365/todo/commands/task/task-set.js +53 -1
  233. package/dist/m365/todo/commands.js +2 -0
  234. package/dist/m365/viva/commands/connections/connections-app-create.js +9 -9
  235. package/dist/m365/yammer/commands/group/group-user-add.js +8 -8
  236. package/dist/m365/yammer/commands/group/group-user-remove.js +11 -11
  237. package/dist/m365/yammer/commands/message/message-like-set.js +5 -5
  238. package/dist/m365/yammer/commands/user/user-get.js +5 -5
  239. package/dist/settingsNames.js +0 -1
  240. package/dist/utils/cache.js +81 -0
  241. package/dist/utils/pid.js +57 -0
  242. package/dist/utils/powerPlatform.js +42 -0
  243. package/docs/docs/_clisettings.md +18 -0
  244. package/docs/docs/cmd/aad/app/app-remove.md +0 -6
  245. package/docs/docs/cmd/aad/app/app-role-remove.md +0 -6
  246. package/docs/docs/cmd/aad/approleassignment/approleassignment-add.md +5 -5
  247. package/docs/docs/cmd/aad/approleassignment/approleassignment-list.md +5 -5
  248. package/docs/docs/cmd/aad/approleassignment/approleassignment-remove.md +5 -5
  249. package/docs/docs/cmd/aad/o365group/o365group-add.md +3 -3
  250. package/docs/docs/cmd/aad/o365group/o365group-recyclebinitem-list.md +7 -7
  251. package/docs/docs/cmd/aad/o365group/o365group-recyclebinitem-restore.md +0 -6
  252. package/docs/docs/cmd/aad/o365group/o365group-teamify.md +4 -4
  253. package/docs/docs/cmd/aad/policy/policy-list.md +2 -2
  254. package/docs/docs/cmd/aad/sp/sp-get.md +5 -5
  255. package/docs/docs/cmd/aad/user/user-guest-add.md +107 -0
  256. package/docs/docs/cmd/adaptivecard/adaptivecard-send.md +3 -0
  257. package/docs/docs/cmd/flow/flow-disable.md +3 -3
  258. package/docs/docs/cmd/flow/flow-enable.md +1 -1
  259. package/docs/docs/cmd/flow/flow-export.md +5 -5
  260. package/docs/docs/cmd/flow/flow-get.md +3 -3
  261. package/docs/docs/cmd/flow/flow-list.md +3 -3
  262. package/docs/docs/cmd/flow/flow-remove.md +5 -5
  263. package/docs/docs/cmd/flow/run/run-cancel.md +3 -3
  264. package/docs/docs/cmd/flow/run/run-get.md +3 -3
  265. package/docs/docs/cmd/flow/run/run-list.md +3 -3
  266. package/docs/docs/cmd/flow/run/run-resubmit.md +4 -4
  267. package/docs/docs/cmd/graph/schemaextension/schemaextension-add.md +4 -11
  268. package/docs/docs/cmd/graph/schemaextension/schemaextension-set.md +4 -10
  269. package/docs/docs/cmd/outlook/mail/mail-send.md +13 -6
  270. package/docs/docs/cmd/outlook/message/message-get.md +48 -0
  271. package/docs/docs/cmd/outlook/message/message-move.md +4 -4
  272. package/docs/docs/cmd/pa/connector/connector-export.md +3 -3
  273. package/docs/docs/cmd/pa/connector/connector-list.md +2 -2
  274. package/docs/docs/cmd/pa/solution/solution-reference-add.md +2 -2
  275. package/docs/docs/cmd/planner/bucket/bucket-add.md +29 -3
  276. package/docs/docs/cmd/planner/bucket/bucket-get.md +29 -3
  277. package/docs/docs/cmd/planner/bucket/bucket-list.md +30 -3
  278. package/docs/docs/cmd/planner/bucket/bucket-remove.md +4 -3
  279. package/docs/docs/cmd/planner/bucket/bucket-set.md +4 -3
  280. package/docs/docs/cmd/planner/plan/plan-add.md +123 -0
  281. package/docs/docs/cmd/planner/plan/plan-get.md +75 -12
  282. package/docs/docs/cmd/planner/plan/plan-list.md +45 -0
  283. package/docs/docs/cmd/planner/plan/plan-remove.md +4 -0
  284. package/docs/docs/cmd/planner/task/task-add.md +0 -3
  285. package/docs/docs/cmd/planner/task/task-get.md +0 -6
  286. package/docs/docs/cmd/planner/task/task-list.md +0 -3
  287. package/docs/docs/cmd/planner/task/task-set.md +0 -3
  288. package/docs/docs/cmd/pp/card/card-get.md +51 -0
  289. package/docs/docs/cmd/pp/card/card-list.md +33 -0
  290. package/docs/docs/cmd/pp/dataverse/dataverse-table-list.md +33 -0
  291. package/docs/docs/cmd/pp/environment/environment-get.md +38 -0
  292. package/docs/docs/cmd/pp/environment/environment-list.md +1 -1
  293. package/docs/docs/cmd/pp/gateway/gateway-get.md +24 -0
  294. package/docs/docs/cmd/pp/solution/solution-get.md +51 -0
  295. package/docs/docs/cmd/pp/solution/solution-list.md +33 -0
  296. package/docs/docs/cmd/pp/tenant/tenant-settings-list.md +26 -0
  297. package/docs/docs/cmd/spfx/package/package-generate.md +2 -2
  298. package/docs/docs/cmd/spfx/project/project-rename.md +1 -14
  299. package/docs/docs/cmd/spfx/project/project-upgrade.md +1 -1
  300. package/docs/docs/cmd/spfx/spfx-doctor.md +10 -1
  301. package/docs/docs/cmd/spo/app/app-add.md +2 -2
  302. package/docs/docs/cmd/spo/app/app-deploy.md +2 -2
  303. package/docs/docs/cmd/spo/app/app-get.md +2 -2
  304. package/docs/docs/cmd/spo/app/app-install.md +2 -2
  305. package/docs/docs/cmd/spo/app/app-list.md +2 -2
  306. package/docs/docs/cmd/spo/app/app-remove.md +2 -2
  307. package/docs/docs/cmd/spo/app/app-retract.md +2 -2
  308. package/docs/docs/cmd/spo/app/app-uninstall.md +2 -2
  309. package/docs/docs/cmd/spo/app/app-upgrade.md +2 -2
  310. package/docs/docs/cmd/spo/apppage/apppage-set.md +2 -2
  311. package/docs/docs/cmd/spo/cdn/cdn-policy-list.md +3 -3
  312. package/docs/docs/cmd/spo/cdn/cdn-policy-set.md +3 -3
  313. package/docs/docs/cmd/spo/contenttype/contenttype-add.md +20 -2
  314. package/docs/docs/cmd/spo/contenttype/contenttype-field-remove.md +22 -4
  315. package/docs/docs/cmd/spo/contenttype/contenttype-field-set.md +4 -4
  316. package/docs/docs/cmd/spo/contenttype/contenttype-get.md +21 -3
  317. package/docs/docs/cmd/spo/customaction/customaction-add.md +13 -10
  318. package/docs/docs/cmd/spo/customaction/customaction-clear.md +4 -4
  319. package/docs/docs/cmd/spo/customaction/customaction-get.md +5 -5
  320. package/docs/docs/cmd/spo/customaction/customaction-list.md +4 -4
  321. package/docs/docs/cmd/spo/customaction/customaction-remove.md +9 -9
  322. package/docs/docs/cmd/spo/customaction/customaction-set.md +10 -9
  323. package/docs/docs/cmd/spo/eventreceiver/eventreceiver-get.md +2 -2
  324. package/docs/docs/cmd/spo/eventreceiver/eventreceiver-remove.md +69 -0
  325. package/docs/docs/cmd/spo/feature/feature-disable.md +4 -4
  326. package/docs/docs/cmd/spo/feature/feature-enable.md +2 -2
  327. package/docs/docs/cmd/spo/feature/feature-list.md +3 -3
  328. package/docs/docs/cmd/spo/field/field-add.md +20 -2
  329. package/docs/docs/cmd/spo/field/field-get.md +0 -3
  330. package/docs/docs/cmd/spo/field/field-remove.md +0 -3
  331. package/docs/docs/cmd/spo/field/field-set.md +15 -6
  332. package/docs/docs/cmd/spo/file/file-checkin.md +6 -6
  333. package/docs/docs/cmd/spo/file/file-checkout.md +4 -4
  334. package/docs/docs/cmd/spo/file/file-roleassignment-add.md +57 -0
  335. package/docs/docs/cmd/spo/file/file-roleassignment-remove.md +54 -0
  336. package/docs/docs/cmd/spo/file/file-roleinheritance-break.md +54 -0
  337. package/docs/docs/cmd/spo/file/file-sharinginfo-get.md +7 -7
  338. package/docs/docs/cmd/spo/folder/folder-get.md +3 -3
  339. package/docs/docs/cmd/spo/folder/folder-remove.md +3 -3
  340. package/docs/docs/cmd/spo/folder/folder-rename.md +2 -2
  341. package/docs/docs/cmd/spo/folder/folder-roleassignment-remove.md +57 -0
  342. package/docs/docs/cmd/spo/folder/folder-roleinheritance-break.md +45 -0
  343. package/docs/docs/cmd/spo/folder/folder-roleinheritance-reset.md +8 -2
  344. package/docs/docs/cmd/spo/group/group-list.md +10 -1
  345. package/docs/docs/cmd/spo/hubsite/hubsite-get.md +3 -3
  346. package/docs/docs/cmd/spo/hubsite/hubsite-register.md +2 -2
  347. package/docs/docs/cmd/spo/hubsite/hubsite-rights-grant.md +4 -4
  348. package/docs/docs/cmd/spo/hubsite/hubsite-rights-revoke.md +3 -3
  349. package/docs/docs/cmd/spo/knowledgehub/knowledgehub-set.md +2 -2
  350. package/docs/docs/cmd/spo/list/list-contenttype-add.md +18 -9
  351. package/docs/docs/cmd/spo/list/list-contenttype-default-set.md +16 -7
  352. package/docs/docs/cmd/spo/list/list-contenttype-list.md +15 -6
  353. package/docs/docs/cmd/spo/list/list-contenttype-remove.md +19 -10
  354. package/docs/docs/cmd/spo/list/list-list.md +0 -3
  355. package/docs/docs/cmd/spo/list/list-roleinheritance-break.md +20 -8
  356. package/docs/docs/cmd/spo/list/list-roleinheritance-reset.md +23 -5
  357. package/docs/docs/cmd/spo/list/list-view-field-add.md +8 -8
  358. package/docs/docs/cmd/spo/list/list-view-field-remove.md +6 -6
  359. package/docs/docs/cmd/spo/list/list-view-field-set.md +7 -7
  360. package/docs/docs/cmd/spo/list/list-view-get.md +7 -7
  361. package/docs/docs/cmd/spo/list/list-view-remove.md +8 -8
  362. package/docs/docs/cmd/spo/list/list-view-set.md +20 -9
  363. package/docs/docs/cmd/spo/list/list-webhook-add.md +15 -16
  364. package/docs/docs/cmd/spo/list/list-webhook-get.md +16 -7
  365. package/docs/docs/cmd/spo/list/list-webhook-list.md +13 -10
  366. package/docs/docs/cmd/spo/list/list-webhook-remove.md +12 -10
  367. package/docs/docs/cmd/spo/list/list-webhook-set.md +14 -12
  368. package/docs/docs/cmd/spo/listitem/listitem-add.md +11 -2
  369. package/docs/docs/cmd/spo/listitem/listitem-attachment-list.md +11 -2
  370. package/docs/docs/cmd/spo/listitem/listitem-get.md +11 -2
  371. package/docs/docs/cmd/spo/listitem/listitem-isrecord.md +12 -2
  372. package/docs/docs/cmd/spo/listitem/listitem-list.md +9 -6
  373. package/docs/docs/cmd/spo/listitem/listitem-record-declare.md +11 -8
  374. package/docs/docs/cmd/spo/listitem/listitem-record-undeclare.md +14 -5
  375. package/docs/docs/cmd/spo/listitem/listitem-remove.md +11 -2
  376. package/docs/docs/cmd/spo/listitem/listitem-roleassignment-add.md +81 -0
  377. package/docs/docs/cmd/spo/listitem/listitem-roleinheritance-break.md +16 -4
  378. package/docs/docs/cmd/spo/listitem/listitem-roleinheritance-reset.md +14 -2
  379. package/docs/docs/cmd/spo/listitem/listitem-set.md +7 -4
  380. package/docs/docs/cmd/spo/page/page-clientsidewebpart-add.md +5 -10
  381. package/docs/docs/cmd/spo/page/page-column-get.md +3 -3
  382. package/docs/docs/cmd/spo/page/page-column-list.md +3 -3
  383. package/docs/docs/cmd/spo/page/page-control-get.md +3 -3
  384. package/docs/docs/cmd/spo/page/page-control-list.md +3 -3
  385. package/docs/docs/cmd/spo/page/page-control-set.md +6 -5
  386. package/docs/docs/cmd/spo/page/page-section-add.md +3 -3
  387. package/docs/docs/cmd/spo/page/page-section-get.md +3 -3
  388. package/docs/docs/cmd/spo/page/page-section-list.md +3 -3
  389. package/docs/docs/cmd/spo/serviceprincipal/serviceprincipal-grant-revoke.md +2 -2
  390. package/docs/docs/cmd/spo/serviceprincipal/serviceprincipal-permissionrequest-approve.md +2 -2
  391. package/docs/docs/cmd/spo/serviceprincipal/serviceprincipal-permissionrequest-deny.md +2 -2
  392. package/docs/docs/cmd/spo/site/site-add.md +2 -5
  393. package/docs/docs/cmd/spo/site/site-appcatalog-add.md +2 -2
  394. package/docs/docs/cmd/spo/site/site-appcatalog-remove.md +2 -2
  395. package/docs/docs/cmd/spo/site/site-apppermission-get.md +2 -2
  396. package/docs/docs/cmd/spo/site/site-apppermission-remove.md +2 -2
  397. package/docs/docs/cmd/spo/site/site-apppermission-set.md +5 -5
  398. package/docs/docs/cmd/spo/site/site-chrome-set.md +4 -4
  399. package/docs/docs/cmd/spo/site/site-groupify.md +5 -11
  400. package/docs/docs/cmd/spo/{hubsite/hubsite-connect.md → site/site-hubsite-connect.md} +7 -7
  401. package/docs/docs/cmd/spo/site/site-hubsite-disconnect.md +42 -0
  402. package/docs/docs/cmd/spo/{hubsite/hubsite-theme-sync.md → site/site-hubsite-theme-sync.md} +5 -5
  403. package/docs/docs/cmd/spo/site/site-list.md +6 -6
  404. package/docs/docs/cmd/spo/site/site-rename.md +6 -6
  405. package/docs/docs/cmd/spo/sitedesign/sitedesign-rights-grant.md +4 -4
  406. package/docs/docs/cmd/spo/sitedesign/sitedesign-rights-list.md +3 -3
  407. package/docs/docs/cmd/spo/sitedesign/sitedesign-rights-revoke.md +3 -3
  408. package/docs/docs/cmd/spo/sitedesign/sitedesign-task-get.md +2 -2
  409. package/docs/docs/cmd/spo/sitedesign/sitedesign-task-remove.md +5 -5
  410. package/docs/docs/cmd/spo/tenant/tenant-recyclebinitem-remove.md +3 -3
  411. package/docs/docs/cmd/spo/tenant/tenant-recyclebinitem-restore.md +6 -3
  412. package/docs/docs/cmd/spo/term/term-add.md +5 -0
  413. package/docs/docs/cmd/spo/term/term-set-add.md +6 -1
  414. package/docs/docs/cmd/spo/web/web-add.md +4 -4
  415. package/docs/docs/cmd/spo/web/web-get.md +3 -3
  416. package/docs/docs/cmd/spo/web/web-list.md +2 -2
  417. package/docs/docs/cmd/spo/web/web-reindex.md +2 -2
  418. package/docs/docs/cmd/spo/web/web-remove.md +2 -2
  419. package/docs/docs/cmd/spo/web/web-roleinheritance-break.md +44 -0
  420. package/docs/docs/cmd/spo/web/web-roleinheritance-reset.md +9 -0
  421. package/docs/docs/cmd/spo/web/web-set.md +9 -9
  422. package/docs/docs/cmd/teams/app/app-install.md +5 -5
  423. package/docs/docs/cmd/teams/app/app-uninstall.md +3 -3
  424. package/docs/docs/cmd/teams/channel/channel-add.md +4 -4
  425. package/docs/docs/cmd/teams/channel/channel-get.md +7 -7
  426. package/docs/docs/cmd/teams/channel/channel-member-add.md +0 -6
  427. package/docs/docs/cmd/teams/channel/channel-member-list.md +0 -6
  428. package/docs/docs/cmd/teams/channel/channel-member-remove.md +0 -6
  429. package/docs/docs/cmd/teams/channel/channel-remove.md +7 -7
  430. package/docs/docs/cmd/teams/channel/channel-set.md +4 -4
  431. package/docs/docs/cmd/teams/message/message-get.md +3 -3
  432. package/docs/docs/cmd/teams/tab/tab-get.md +6 -6
  433. package/docs/docs/cmd/teams/tab/tab-remove.md +4 -4
  434. package/docs/docs/cmd/teams/team/team-archive.md +0 -3
  435. package/docs/docs/cmd/teams/team/team-clone.md +0 -6
  436. package/docs/docs/cmd/teams/team/team-remove.md +0 -3
  437. package/docs/docs/cmd/teams/team/team-set.md +0 -6
  438. package/docs/docs/cmd/teams/team/team-unarchive.md +0 -3
  439. package/docs/docs/cmd/teams/user/user-app-add.md +3 -3
  440. package/docs/docs/cmd/teams/user/user-app-remove.md +3 -3
  441. package/docs/docs/cmd/tenant/id/id-get.md +20 -0
  442. package/docs/docs/cmd/tenant/report/report-activeusercounts.md +35 -0
  443. package/docs/docs/cmd/tenant/report/report-activeuserdetail.md +49 -0
  444. package/docs/docs/cmd/tenant/report/report-office365activationcounts.md +32 -0
  445. package/docs/docs/cmd/tenant/report/report-office365activationsusercounts.md +30 -0
  446. package/docs/docs/cmd/tenant/report/report-office365activationsuserdetail.md +36 -0
  447. package/docs/docs/cmd/tenant/report/report-servicesusercounts.md +41 -0
  448. package/docs/docs/cmd/tenant/security/security-alerts-list.md +105 -0
  449. package/docs/docs/cmd/tenant/serviceannouncement/serviceannouncement-health-get.md +87 -0
  450. package/docs/docs/cmd/tenant/serviceannouncement/serviceannouncement-health-list.md +91 -0
  451. package/docs/docs/cmd/tenant/serviceannouncement/serviceannouncement-healthissue-get.md +62 -0
  452. package/docs/docs/cmd/tenant/serviceannouncement/serviceannouncement-healthissue-list.md +51 -0
  453. package/docs/docs/cmd/tenant/serviceannouncement/serviceannouncement-message-get.md +64 -0
  454. package/docs/docs/cmd/tenant/serviceannouncement/serviceannouncement-message-list.md +52 -0
  455. package/docs/docs/cmd/todo/list/list-get.md +61 -0
  456. package/docs/docs/cmd/todo/task/task-add.md +32 -5
  457. package/docs/docs/cmd/todo/task/task-get.md +75 -0
  458. package/docs/docs/cmd/todo/task/task-set.md +29 -2
  459. package/docs/docs/cmd/viva/connections/connections-app-create.md +2 -2
  460. package/docs/docs/cmd/yammer/group/group-user-add.md +5 -5
  461. package/docs/docs/cmd/yammer/group/group-user-remove.md +5 -5
  462. package/docs/docs/cmd/yammer/message/message-like-set.md +4 -4
  463. package/docs/docs/cmd/yammer/user/user-get.md +2 -2
  464. package/npm-shrinkwrap.json +2 -2
  465. package/package.json +13 -3
  466. package/dist/m365/spfx/commands/project/project-upgrade/rules/FN006006_CFG_PS_features.js +0 -60
  467. package/dist/m365/spo/commands/site/site-classic-add.js +0 -328
  468. package/dist/m365/spo/commands/site/site-classic-list.js +0 -115
  469. package/dist/m365/spo/commands/site/site-classic-set.js +0 -351
  470. package/docs/docs/cmd/spo/hubsite/hubsite-disconnect.md +0 -42
  471. package/docs/docs/cmd/spo/site/site-classic-add.md +0 -93
  472. package/docs/docs/cmd/spo/site/site-classic-list.md +0 -68
  473. package/docs/docs/cmd/spo/site/site-classic-set.md +0 -102
@@ -19,6 +19,7 @@ const config_1 = require("../../../../config");
19
19
  const request_1 = require("../../../../request");
20
20
  const formatting_1 = require("../../../../utils/formatting");
21
21
  const spo_1 = require("../../../../utils/spo");
22
+ const urlUtil_1 = require("../../../../utils/urlUtil");
22
23
  const validation_1 = require("../../../../utils/validation");
23
24
  const SpoCommand_1 = require("../../../base/SpoCommand");
24
25
  const commands_1 = require("../../commands");
@@ -42,29 +43,30 @@ class SpoFieldSetCommand extends SpoCommand_1.default {
42
43
  }
43
44
  commandAction(logger, args) {
44
45
  return __awaiter(this, void 0, void 0, function* () {
45
- if (args.options.name) {
46
- this.warn(logger, `Option 'name' is deprecated. Please use 'title' instead.`);
47
- }
48
46
  try {
49
47
  const reqDigest = yield spo_1.spo.getRequestDigest(args.options.webUrl);
50
48
  const requestDigest = reqDigest.FormDigestValue;
51
- let list = undefined;
52
- if (args.options.listId || args.options.listTitle) {
53
- const listQuery = args.options.listId ?
54
- `<Method Id="663" ParentId="7" Name="GetById"><Parameters><Parameter Type="Guid">${formatting_1.formatting.escapeXml(args.options.listId)}</Parameter></Parameters></Method>` :
55
- `<Method Id="663" ParentId="7" Name="GetByTitle"><Parameters><Parameter Type="String">${formatting_1.formatting.escapeXml(args.options.listTitle)}</Parameter></Parameters></Method>`;
49
+ let fieldsParentIdentity = '<Property Id="5" ParentId="3" Name="Web" /><StaticProperty Id="3" TypeId="{3747adcd-a3c3-41b9-bfab-4a64dd2f1e0a}" Name="Current" />';
50
+ if (args.options.listId || args.options.listTitle || args.options.listUrl) {
51
+ let requestData = '';
52
+ if (args.options.listId) {
53
+ requestData = `<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="664" ObjectPathId="663" /><Query Id="665" ObjectPathId="663"><Query SelectAllProperties="false"><Properties /></Query></Query></Actions><ObjectPaths><Method Id="663" ParentId="7" Name="GetById"><Parameters><Parameter Type="Guid">${formatting_1.formatting.escapeXml(args.options.listId)}</Parameter></Parameters></Method><Property Id="7" ParentId="5" Name="Lists" /><Property Id="5" ParentId="3" Name="Web" /><StaticProperty Id="3" TypeId="{3747adcd-a3c3-41b9-bfab-4a64dd2f1e0a}" Name="Current" /></ObjectPaths></Request>`;
54
+ }
55
+ else if (args.options.listTitle) {
56
+ requestData = `<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="664" ObjectPathId="663" /><Query Id="665" ObjectPathId="663"><Query SelectAllProperties="false"><Properties /></Query></Query></Actions><ObjectPaths><Method Id="663" ParentId="7" Name="GetByTitle"><Parameters><Parameter Type="String">${formatting_1.formatting.escapeXml(args.options.listTitle)}</Parameter></Parameters></Method><Property Id="7" ParentId="5" Name="Lists" /><Property Id="5" ParentId="3" Name="Web" /><StaticProperty Id="3" TypeId="{3747adcd-a3c3-41b9-bfab-4a64dd2f1e0a}" Name="Current" /></ObjectPaths></Request>`;
57
+ }
58
+ else if (args.options.listUrl) {
59
+ const listServerRelativeUrl = urlUtil_1.urlUtil.getServerRelativePath(args.options.webUrl, args.options.listUrl);
60
+ requestData = `<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="2" ObjectPathId="1" /><ObjectPath Id="4" ObjectPathId="3" /><ObjectPath Id="6" ObjectPathId="5" /><Query Id="7" ObjectPathId="5"><Query SelectAllProperties="true"><Properties /></Query></Query></Actions><ObjectPaths><StaticProperty Id="1" TypeId="{3747adcd-a3c3-41b9-bfab-4a64dd2f1e0a}" Name="Current" /><Property Id="3" ParentId="1" Name="Web" /><Method Id="5" ParentId="3" Name="GetList"><Parameters><Parameter Type="String">${listServerRelativeUrl}</Parameter></Parameters></Method></ObjectPaths></Request>`;
61
+ }
56
62
  const requestOptions = {
57
63
  url: `${args.options.webUrl}/_vti_bin/client.svc/ProcessQuery`,
58
64
  headers: {
59
65
  'X-RequestDigest': requestDigest
60
66
  },
61
- 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="664" ObjectPathId="663" /><Query Id="665" ObjectPathId="663"><Query SelectAllProperties="false"><Properties /></Query></Query></Actions><ObjectPaths>${listQuery}<Property Id="7" ParentId="5" Name="Lists" /><Property Id="5" ParentId="3" Name="Web" /><StaticProperty Id="3" TypeId="{3747adcd-a3c3-41b9-bfab-4a64dd2f1e0a}" Name="Current" /></ObjectPaths></Request>`
67
+ data: requestData
62
68
  };
63
- list = yield request_1.default.post(requestOptions);
64
- }
65
- // by default retrieve the column from the site
66
- let fieldsParentIdentity = '<Property Id="5" ParentId="3" Name="Web" /><StaticProperty Id="3" TypeId="{3747adcd-a3c3-41b9-bfab-4a64dd2f1e0a}" Name="Current" />';
67
- if (list) {
69
+ const list = yield request_1.default.post(requestOptions);
68
70
  const json = JSON.parse(list);
69
71
  const response = json[0];
70
72
  if (response.ErrorInfo) {
@@ -116,8 +118,8 @@ class SpoFieldSetCommand extends SpoCommand_1.default {
116
118
  'webUrl',
117
119
  'listId',
118
120
  'listTitle',
121
+ 'listUrl',
119
122
  'id',
120
- 'name',
121
123
  'title',
122
124
  'updateExistingLists',
123
125
  'debug',
@@ -136,9 +138,9 @@ _SpoFieldSetCommand_instances = new WeakSet(), _SpoFieldSetCommand_initTelemetry
136
138
  Object.assign(this.telemetryProperties, {
137
139
  id: typeof args.options.id !== 'undefined',
138
140
  title: typeof args.options.title !== 'undefined',
139
- name: typeof args.options.name !== 'undefined',
140
141
  listId: typeof args.options.listId !== 'undefined',
141
142
  listTitle: typeof args.options.listTitle !== 'undefined',
143
+ listUrl: typeof args.options.listUrl !== 'undefined',
142
144
  updateExistingLists: !!args.options.updateExistingLists
143
145
  });
144
146
  });
@@ -150,9 +152,9 @@ _SpoFieldSetCommand_instances = new WeakSet(), _SpoFieldSetCommand_initTelemetry
150
152
  }, {
151
153
  option: '--listTitle [listTitle]'
152
154
  }, {
153
- option: '-i, --id [id]'
155
+ option: '--listUrl [listUrl]'
154
156
  }, {
155
- option: '-n, --name [name]'
157
+ option: '-i, --id [id]'
156
158
  }, {
157
159
  option: '-t, --title [title]'
158
160
  }, {
@@ -164,8 +166,9 @@ _SpoFieldSetCommand_instances = new WeakSet(), _SpoFieldSetCommand_initTelemetry
164
166
  if (isValidSharePointUrl !== true) {
165
167
  return isValidSharePointUrl;
166
168
  }
167
- if (args.options.listId && args.options.listTitle) {
168
- return `Specify listId or listTitle but not both`;
169
+ const listOptions = [args.options.listId, args.options.listTitle, args.options.listUrl];
170
+ if (listOptions.some(item => item !== undefined) && listOptions.filter(item => item !== undefined).length > 1) {
171
+ return `Specify either list id or title or list url, but not multiple`;
169
172
  }
170
173
  if (args.options.listId &&
171
174
  !validation_1.validation.isValidGuid(args.options.listId)) {
@@ -178,7 +181,7 @@ _SpoFieldSetCommand_instances = new WeakSet(), _SpoFieldSetCommand_initTelemetry
178
181
  return true;
179
182
  }));
180
183
  }, _SpoFieldSetCommand_initOptionSets = function _SpoFieldSetCommand_initOptionSets() {
181
- this.optionSets.push(['id', 'title', 'name']);
184
+ this.optionSets.push(['id', 'title']);
182
185
  };
183
186
  module.exports = new SpoFieldSetCommand();
184
187
  //# sourceMappingURL=field-set.js.map
@@ -60,8 +60,8 @@ class SpoFileCheckinCommand extends SpoCommand_1.default {
60
60
  if (args.options.id) {
61
61
  requestUrl = `${args.options.webUrl}/_api/web/GetFileById('${encodeURIComponent(args.options.id)}')/checkin(comment='${comment}',checkintype=${type})`;
62
62
  }
63
- if (args.options.fileUrl) {
64
- requestUrl = `${args.options.webUrl}/_api/web/GetFileByServerRelativeUrl('${encodeURIComponent(args.options.fileUrl)}')/checkin(comment='${comment}',checkintype=${type})`;
63
+ if (args.options.url) {
64
+ requestUrl = `${args.options.webUrl}/_api/web/GetFileByServerRelativeUrl('${encodeURIComponent(args.options.url)}')/checkin(comment='${comment}',checkintype=${type})`;
65
65
  }
66
66
  const requestOptions = {
67
67
  url: requestUrl,
@@ -83,7 +83,7 @@ _SpoFileCheckinCommand_instances = new WeakSet(), _SpoFileCheckinCommand_initTel
83
83
  this.telemetry.push((args) => {
84
84
  Object.assign(this.telemetryProperties, {
85
85
  id: (!(!args.options.id)).toString(),
86
- url: (!(!args.options.fileUrl)).toString(),
86
+ url: (!(!args.options.url)).toString(),
87
87
  type: args.options.type || 'Major',
88
88
  comment: typeof args.options.comment !== 'undefined'
89
89
  });
@@ -92,7 +92,7 @@ _SpoFileCheckinCommand_instances = new WeakSet(), _SpoFileCheckinCommand_initTel
92
92
  this.options.unshift({
93
93
  option: '-u, --webUrl <webUrl>'
94
94
  }, {
95
- option: '-f, --fileUrl [fileUrl]'
95
+ option: '-f, --url [url]'
96
96
  }, {
97
97
  option: '-i, --id [id]'
98
98
  }, {
@@ -125,7 +125,7 @@ _SpoFileCheckinCommand_instances = new WeakSet(), _SpoFileCheckinCommand_initTel
125
125
  return true;
126
126
  }));
127
127
  }, _SpoFileCheckinCommand_initOptionSets = function _SpoFileCheckinCommand_initOptionSets() {
128
- this.optionSets.push(['fileUrl', 'id']);
128
+ this.optionSets.push(['url', 'id']);
129
129
  };
130
130
  module.exports = new SpoFileCheckinCommand();
131
131
  //# sourceMappingURL=file-checkin.js.map
@@ -40,8 +40,8 @@ class SpoFileCheckoutCommand extends SpoCommand_1.default {
40
40
  if (args.options.id) {
41
41
  requestUrl = `${args.options.webUrl}/_api/web/GetFileById('${encodeURIComponent(args.options.id)}')/checkout`;
42
42
  }
43
- if (args.options.fileUrl) {
44
- requestUrl = `${args.options.webUrl}/_api/web/GetFileByServerRelativeUrl('${encodeURIComponent(args.options.fileUrl)}')/checkout`;
43
+ if (args.options.url) {
44
+ requestUrl = `${args.options.webUrl}/_api/web/GetFileByServerRelativeUrl('${encodeURIComponent(args.options.url)}')/checkout`;
45
45
  }
46
46
  const requestOptions = {
47
47
  url: requestUrl,
@@ -63,14 +63,14 @@ _SpoFileCheckoutCommand_instances = new WeakSet(), _SpoFileCheckoutCommand_initT
63
63
  this.telemetry.push((args) => {
64
64
  Object.assign(this.telemetryProperties, {
65
65
  id: (!(!args.options.id)).toString(),
66
- fileUrl: (!(!args.options.fileUrl)).toString()
66
+ url: (!(!args.options.url)).toString()
67
67
  });
68
68
  });
69
69
  }, _SpoFileCheckoutCommand_initOptions = function _SpoFileCheckoutCommand_initOptions() {
70
70
  this.options.unshift({
71
71
  option: '-u, --webUrl <webUrl>'
72
72
  }, {
73
- option: '-f, --fileUrl [fileUrl]'
73
+ option: '-f, --url [url]'
74
74
  }, {
75
75
  option: '-i, --id [id]'
76
76
  });
@@ -88,7 +88,7 @@ _SpoFileCheckoutCommand_instances = new WeakSet(), _SpoFileCheckoutCommand_initT
88
88
  return true;
89
89
  }));
90
90
  }, _SpoFileCheckoutCommand_initOptionSets = function _SpoFileCheckoutCommand_initOptionSets() {
91
- this.optionSets.push(['id', 'fileUrl']);
91
+ this.optionSets.push(['id', 'url']);
92
92
  };
93
93
  module.exports = new SpoFileCheckoutCommand();
94
94
  //# sourceMappingURL=file-checkout.js.map
@@ -16,12 +16,14 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
16
16
  var _SpoFileCopyCommand_instances, _SpoFileCopyCommand_initTelemetry, _SpoFileCopyCommand_initOptions, _SpoFileCopyCommand_initValidators;
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
18
  const url = require("url");
19
+ const Cli_1 = require("../../../../cli/Cli");
19
20
  const request_1 = require("../../../../request");
20
21
  const spo_1 = require("../../../../utils/spo");
21
22
  const urlUtil_1 = require("../../../../utils/urlUtil");
22
23
  const validation_1 = require("../../../../utils/validation");
23
24
  const SpoCommand_1 = require("../../../base/SpoCommand");
24
25
  const commands_1 = require("../../commands");
26
+ const removeCommand = require('./file-remove');
25
27
  class SpoFileCopyCommand extends SpoCommand_1.default {
26
28
  constructor() {
27
29
  super();
@@ -123,50 +125,34 @@ class SpoFileCopyCommand extends SpoCommand_1.default {
123
125
  * Moves file in the site recycle bin
124
126
  */
125
127
  recycleFile(tenantUrl, targetUrl, filename, logger) {
126
- return new Promise((resolve, reject) => {
128
+ return __awaiter(this, void 0, void 0, function* () {
127
129
  const targetFolderAbsoluteUrl = urlUtil_1.urlUtil.urlCombine(tenantUrl, targetUrl);
128
- // since the target WebFullUrl is unknown we can use getRequestDigestForSite
130
+ // since the target WebFullUrl is unknown we can use getRequestDigest
129
131
  // to get it from target folder absolute url.
130
132
  // Similar approach used here Microsoft.SharePoint.Client.Web.WebUrlFromFolderUrlDirect
131
- spo_1.spo
132
- .getRequestDigest(targetFolderAbsoluteUrl)
133
- .then((contextResponse) => {
134
- if (this.debug) {
135
- logger.logToStderr(`contextResponse.WebFullUrl: ${contextResponse.WebFullUrl}`);
136
- }
137
- if (targetUrl.charAt(0) !== '/') {
138
- targetUrl = `/${targetUrl}`;
133
+ const contextResponse = yield spo_1.spo.getRequestDigest(targetFolderAbsoluteUrl);
134
+ if (this.debug) {
135
+ logger.logToStderr(`contextResponse.WebFullUrl: ${contextResponse.WebFullUrl}`);
136
+ }
137
+ const targetFileServerRelativeUrl = `${urlUtil_1.urlUtil.getServerRelativePath(contextResponse.WebFullUrl, targetUrl)}/${filename}`;
138
+ const removeOptions = {
139
+ webUrl: contextResponse.WebFullUrl,
140
+ url: targetFileServerRelativeUrl,
141
+ recycle: true,
142
+ confirm: true,
143
+ debug: this.debug,
144
+ verbose: this.verbose
145
+ };
146
+ try {
147
+ yield Cli_1.Cli.executeCommand(removeCommand, { options: Object.assign(Object.assign({}, removeOptions), { _: [] }) });
148
+ }
149
+ catch (err) {
150
+ if (err.error !== undefined && err.error.message !== undefined && err.error.message.includes('does not exist')) {
139
151
  }
140
- if (targetUrl.lastIndexOf('/') !== targetUrl.length - 1) {
141
- targetUrl = `${targetUrl}/`;
152
+ else {
153
+ throw err;
142
154
  }
143
- const requestUrl = `${contextResponse.WebFullUrl}/_api/web/GetFileByServerRelativeUrl('${encodeURIComponent(`${targetUrl}${filename}`)}')/recycle()`;
144
- const requestOptions = {
145
- url: requestUrl,
146
- method: 'POST',
147
- headers: {
148
- 'X-HTTP-Method': 'DELETE',
149
- 'If-Match': '*',
150
- 'accept': 'application/json;odata=nometadata'
151
- },
152
- responseType: 'json'
153
- };
154
- request_1.default.post(requestOptions)
155
- .then(() => {
156
- resolve();
157
- })
158
- .catch((err) => {
159
- if (err.statusCode === 404) {
160
- // file does not exist so can proceed
161
- return resolve();
162
- }
163
- if (this.debug) {
164
- logger.logToStderr(`recycleFile error...`);
165
- logger.logToStderr(err);
166
- }
167
- reject(err);
168
- });
169
- }, (e) => reject(e));
155
+ }
170
156
  });
171
157
  }
172
158
  }
@@ -16,12 +16,14 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
16
16
  var _SpoFileMoveCommand_instances, _SpoFileMoveCommand_initTelemetry, _SpoFileMoveCommand_initOptions, _SpoFileMoveCommand_initValidators;
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
18
  const url = require("url");
19
+ const Cli_1 = require("../../../../cli/Cli");
19
20
  const request_1 = require("../../../../request");
20
21
  const spo_1 = require("../../../../utils/spo");
21
22
  const urlUtil_1 = require("../../../../utils/urlUtil");
22
23
  const validation_1 = require("../../../../utils/validation");
23
24
  const SpoCommand_1 = require("../../../base/SpoCommand");
24
25
  const commands_1 = require("../../commands");
26
+ const removeCommand = require('./file-remove');
25
27
  class SpoFileMoveCommand extends SpoCommand_1.default {
26
28
  constructor() {
27
29
  super();
@@ -124,49 +126,34 @@ class SpoFileMoveCommand extends SpoCommand_1.default {
124
126
  * Moves file in the site recycle bin
125
127
  */
126
128
  recycleFile(tenantUrl, targetUrl, filename, logger) {
127
- return new Promise((resolve, reject) => {
129
+ return __awaiter(this, void 0, void 0, function* () {
128
130
  const targetFolderAbsoluteUrl = urlUtil_1.urlUtil.urlCombine(tenantUrl, targetUrl);
129
131
  // since the target WebFullUrl is unknown we can use getRequestDigest
130
132
  // to get it from target folder absolute url.
131
133
  // Similar approach used here Microsoft.SharePoint.Client.Web.WebUrlFromFolderUrlDirect
132
- spo_1.spo.getRequestDigest(targetFolderAbsoluteUrl)
133
- .then((contextResponse) => {
134
- if (this.debug) {
135
- logger.logToStderr(`contextResponse.WebFullUrl: ${contextResponse.WebFullUrl}`);
136
- }
137
- if (targetUrl.charAt(0) !== '/') {
138
- targetUrl = `/${targetUrl}`;
134
+ const contextResponse = yield spo_1.spo.getRequestDigest(targetFolderAbsoluteUrl);
135
+ if (this.debug) {
136
+ logger.logToStderr(`contextResponse.WebFullUrl: ${contextResponse.WebFullUrl}`);
137
+ }
138
+ const targetFileServerRelativeUrl = `${urlUtil_1.urlUtil.getServerRelativePath(contextResponse.WebFullUrl, targetUrl)}/${filename}`;
139
+ const removeOptions = {
140
+ webUrl: contextResponse.WebFullUrl,
141
+ url: targetFileServerRelativeUrl,
142
+ recycle: true,
143
+ confirm: true,
144
+ debug: this.debug,
145
+ verbose: this.verbose
146
+ };
147
+ try {
148
+ yield Cli_1.Cli.executeCommand(removeCommand, { options: Object.assign(Object.assign({}, removeOptions), { _: [] }) });
149
+ }
150
+ catch (err) {
151
+ if (err.error !== undefined && err.error.message !== undefined && err.error.message.includes('does not exist')) {
139
152
  }
140
- if (targetUrl.lastIndexOf('/') !== targetUrl.length - 1) {
141
- targetUrl = `${targetUrl}/`;
153
+ else {
154
+ throw err;
142
155
  }
143
- const requestUrl = `${contextResponse.WebFullUrl}/_api/web/GetFileByServerRelativeUrl('${encodeURIComponent(`${targetUrl}${filename}`)}')/recycle()`;
144
- const requestOptions = {
145
- url: requestUrl,
146
- method: 'POST',
147
- headers: {
148
- 'X-HTTP-Method': 'DELETE',
149
- 'If-Match': '*',
150
- 'accept': 'application/json;odata=nometadata'
151
- },
152
- responseType: 'json'
153
- };
154
- request_1.default.post(requestOptions)
155
- .then(() => {
156
- resolve();
157
- })
158
- .catch((err) => {
159
- if (err.statusCode === 404) {
160
- // file does not exist so can proceed
161
- return resolve();
162
- }
163
- if (this.debug) {
164
- logger.logToStderr(`recycleFile error...`);
165
- logger.logToStderr(err);
166
- }
167
- reject(err);
168
- });
169
- }, (e) => reject(e));
156
+ }
170
157
  });
171
158
  }
172
159
  }
@@ -79,23 +79,26 @@ class SpoFileRenameCommand extends SpoCommand_1.default {
79
79
  return request_1.default.get(requestOptions);
80
80
  }
81
81
  deleteFile(webUrl, sourceUrl, targetFileName) {
82
- const targetFileServerRelativeUrl = `${urlUtil_1.urlUtil.getServerRelativePath(webUrl, sourceUrl.substring(0, sourceUrl.lastIndexOf('/')))}/${targetFileName}`;
83
- const options = {
84
- webUrl: webUrl,
85
- url: targetFileServerRelativeUrl,
86
- recycle: true,
87
- confirm: true,
88
- debug: this.debug,
89
- verbose: this.verbose
90
- };
91
- return Cli_1.Cli.executeCommandWithOutput(removeCommand, { options: Object.assign(Object.assign({}, options), { _: [] }) })
92
- .then(_ => {
93
- return Promise.resolve();
94
- }, (err) => {
95
- if (err.error !== null && err.error.message !== null && err.error.message.includes('does not exist')) {
96
- return Promise.resolve();
82
+ return __awaiter(this, void 0, void 0, function* () {
83
+ const targetFileServerRelativeUrl = `${urlUtil_1.urlUtil.getServerRelativePath(webUrl, sourceUrl.substring(0, sourceUrl.lastIndexOf('/')))}/${targetFileName}`;
84
+ const removeOptions = {
85
+ webUrl: webUrl,
86
+ url: targetFileServerRelativeUrl,
87
+ recycle: true,
88
+ confirm: true,
89
+ debug: this.debug,
90
+ verbose: this.verbose
91
+ };
92
+ try {
93
+ yield Cli_1.Cli.executeCommand(removeCommand, { options: Object.assign(Object.assign({}, removeOptions), { _: [] }) });
94
+ }
95
+ catch (err) {
96
+ if (err.error !== undefined && err.error.message !== undefined && err.error.message.includes('does not exist')) {
97
+ }
98
+ else {
99
+ throw err;
100
+ }
97
101
  }
98
- return Promise.reject(err);
99
102
  });
100
103
  }
101
104
  }
@@ -0,0 +1,231 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
12
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
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
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
15
+ };
16
+ var _SpoFileRoleAssignmentAddCommand_instances, _SpoFileRoleAssignmentAddCommand_initTelemetry, _SpoFileRoleAssignmentAddCommand_initOptions, _SpoFileRoleAssignmentAddCommand_initValidators, _SpoFileRoleAssignmentAddCommand_initOptionSets;
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ const Cli_1 = require("../../../../cli/Cli");
19
+ const SpoUserGetCommand = require("../user/user-get");
20
+ const SpoGroupGetCommand = require("../group/group-get");
21
+ const SpoRoleDefinitionListCommand = require("../roledefinition/roledefinition-list");
22
+ const SpoFileGetCommand = require("./file-get");
23
+ const request_1 = require("../../../../request");
24
+ const validation_1 = require("../../../../utils/validation");
25
+ const formatting_1 = require("../../../../utils/formatting");
26
+ const SpoCommand_1 = require("../../../base/SpoCommand");
27
+ const commands_1 = require("../../commands");
28
+ class SpoFileRoleAssignmentAddCommand extends SpoCommand_1.default {
29
+ constructor() {
30
+ super();
31
+ _SpoFileRoleAssignmentAddCommand_instances.add(this);
32
+ __classPrivateFieldGet(this, _SpoFileRoleAssignmentAddCommand_instances, "m", _SpoFileRoleAssignmentAddCommand_initTelemetry).call(this);
33
+ __classPrivateFieldGet(this, _SpoFileRoleAssignmentAddCommand_instances, "m", _SpoFileRoleAssignmentAddCommand_initOptions).call(this);
34
+ __classPrivateFieldGet(this, _SpoFileRoleAssignmentAddCommand_instances, "m", _SpoFileRoleAssignmentAddCommand_initValidators).call(this);
35
+ __classPrivateFieldGet(this, _SpoFileRoleAssignmentAddCommand_instances, "m", _SpoFileRoleAssignmentAddCommand_initOptionSets).call(this);
36
+ }
37
+ get name() {
38
+ return commands_1.default.FILE_ROLEASSIGNMENT_ADD;
39
+ }
40
+ get description() {
41
+ return 'Adds a role assignment to the specified file.';
42
+ }
43
+ commandAction(logger, args) {
44
+ return __awaiter(this, void 0, void 0, function* () {
45
+ if (this.verbose) {
46
+ logger.logToStderr(`Adding role assignment to file in site at ${args.options.webUrl}...`);
47
+ }
48
+ try {
49
+ const fileUrl = yield this.getFileURL(args);
50
+ const roleDefinitionId = yield this.getRoleDefinitionId(args.options);
51
+ if (args.options.upn) {
52
+ const upnPrincipalId = yield this.getUserPrincipalId(args.options);
53
+ yield this.addRoleAssignment(fileUrl, args.options.webUrl, upnPrincipalId, roleDefinitionId);
54
+ }
55
+ else if (args.options.groupName) {
56
+ const groupPrincipalId = yield this.getGroupPrincipalId(args.options);
57
+ yield this.addRoleAssignment(fileUrl, args.options.webUrl, groupPrincipalId, roleDefinitionId);
58
+ }
59
+ else {
60
+ yield this.addRoleAssignment(fileUrl, args.options.webUrl, args.options.principalId, roleDefinitionId);
61
+ }
62
+ }
63
+ catch (err) {
64
+ this.handleRejectedODataJsonPromise(err);
65
+ }
66
+ });
67
+ }
68
+ addRoleAssignment(fileUrl, webUrl, principalId, roleDefinitionId) {
69
+ return __awaiter(this, void 0, void 0, function* () {
70
+ try {
71
+ const requestOptions = {
72
+ url: `${webUrl}/_api/web/GetFileByServerRelativeUrl('${formatting_1.formatting.encodeQueryParameter(fileUrl)}')/ListItemAllFields/roleassignments/addroleassignment(principalid='${principalId}',roledefid='${roleDefinitionId}')`,
73
+ method: 'POST',
74
+ headers: {
75
+ 'accept': 'application/json;odata=nometadata',
76
+ 'content-type': 'application/json'
77
+ },
78
+ responseType: 'json'
79
+ };
80
+ yield request_1.default.post(requestOptions);
81
+ }
82
+ catch (err) {
83
+ return Promise.reject(err);
84
+ }
85
+ });
86
+ }
87
+ getRoleDefinitionId(options) {
88
+ return __awaiter(this, void 0, void 0, function* () {
89
+ if (!options.roleDefinitionName) {
90
+ return options.roleDefinitionId;
91
+ }
92
+ try {
93
+ const roleDefinitionListCommandOptions = {
94
+ webUrl: options.webUrl,
95
+ output: 'json',
96
+ debug: this.debug,
97
+ verbose: this.verbose
98
+ };
99
+ const output = yield Cli_1.Cli.executeCommandWithOutput(SpoRoleDefinitionListCommand, { options: Object.assign(Object.assign({}, roleDefinitionListCommandOptions), { _: [] }) });
100
+ const getRoleDefinitionListOutput = JSON.parse(output.stdout);
101
+ const roleDefinitionId = getRoleDefinitionListOutput.find((role) => role.Name === options.roleDefinitionName).Id;
102
+ return roleDefinitionId;
103
+ }
104
+ catch (err) {
105
+ return Promise.reject(err);
106
+ }
107
+ });
108
+ }
109
+ getGroupPrincipalId(options) {
110
+ return __awaiter(this, void 0, void 0, function* () {
111
+ try {
112
+ const groupGetCommandOptions = {
113
+ webUrl: options.webUrl,
114
+ name: options.groupName,
115
+ output: 'json',
116
+ debug: this.debug,
117
+ verbose: this.verbose
118
+ };
119
+ const output = yield Cli_1.Cli.executeCommandWithOutput(SpoGroupGetCommand, { options: Object.assign(Object.assign({}, groupGetCommandOptions), { _: [] }) });
120
+ const getGroupOutput = JSON.parse(output.stdout);
121
+ return getGroupOutput.Id;
122
+ }
123
+ catch (err) {
124
+ return Promise.reject(err);
125
+ }
126
+ });
127
+ }
128
+ getUserPrincipalId(options) {
129
+ return __awaiter(this, void 0, void 0, function* () {
130
+ try {
131
+ const userGetCommandOptions = {
132
+ webUrl: options.webUrl,
133
+ email: options.upn,
134
+ id: undefined,
135
+ output: 'json',
136
+ debug: this.debug,
137
+ verbose: this.verbose
138
+ };
139
+ const output = yield Cli_1.Cli.executeCommandWithOutput(SpoUserGetCommand, { options: Object.assign(Object.assign({}, userGetCommandOptions), { _: [] }) });
140
+ const getUserOutput = JSON.parse(output.stdout);
141
+ return getUserOutput.Id;
142
+ }
143
+ catch (err) {
144
+ return Promise.reject(err);
145
+ }
146
+ });
147
+ }
148
+ getFileURL(args) {
149
+ return __awaiter(this, void 0, void 0, function* () {
150
+ if (args.options.fileUrl) {
151
+ return args.options.fileUrl;
152
+ }
153
+ const options = {
154
+ webUrl: args.options.webUrl,
155
+ id: args.options.fileId,
156
+ output: 'json',
157
+ debug: this.debug,
158
+ verbose: this.verbose
159
+ };
160
+ const output = yield Cli_1.Cli.executeCommandWithOutput(SpoFileGetCommand, { options: Object.assign(Object.assign({}, options), { _: [] }) });
161
+ const getFileOutput = JSON.parse(output.stdout);
162
+ return getFileOutput.ServerRelativeUrl;
163
+ });
164
+ }
165
+ }
166
+ _SpoFileRoleAssignmentAddCommand_instances = new WeakSet(), _SpoFileRoleAssignmentAddCommand_initTelemetry = function _SpoFileRoleAssignmentAddCommand_initTelemetry() {
167
+ this.telemetry.push((args) => {
168
+ Object.assign(this.telemetryProperties, {
169
+ fileUrl: typeof args.options.fileUrl !== 'undefined',
170
+ fileId: typeof args.options.fileId !== 'undefined',
171
+ principalId: typeof args.options.principalId !== 'undefined',
172
+ upn: typeof args.options.upn !== 'undefined',
173
+ groupName: typeof args.options.groupName !== 'undefined',
174
+ roleDefinitionId: typeof args.options.roleDefinitionId !== 'undefined',
175
+ roleDefinitionName: typeof args.options.roleDefinitionName !== 'undefined'
176
+ });
177
+ });
178
+ }, _SpoFileRoleAssignmentAddCommand_initOptions = function _SpoFileRoleAssignmentAddCommand_initOptions() {
179
+ this.options.unshift({
180
+ option: '-u, --webUrl <webUrl>'
181
+ }, {
182
+ option: '--fileUrl [fileUrl]'
183
+ }, {
184
+ option: 'i, --fileId [fileId]'
185
+ }, {
186
+ option: '--principalId [principalId]'
187
+ }, {
188
+ option: '--upn [upn]'
189
+ }, {
190
+ option: '--groupName [groupName]'
191
+ }, {
192
+ option: '--roleDefinitionId [roleDefinitionId]'
193
+ }, {
194
+ option: '--roleDefinitionName [roleDefinitionName]'
195
+ });
196
+ }, _SpoFileRoleAssignmentAddCommand_initValidators = function _SpoFileRoleAssignmentAddCommand_initValidators() {
197
+ this.validators.push((args) => __awaiter(this, void 0, void 0, function* () {
198
+ const isValidSharePointUrl = validation_1.validation.isValidSharePointUrl(args.options.webUrl);
199
+ if (isValidSharePointUrl !== true) {
200
+ return isValidSharePointUrl;
201
+ }
202
+ if (args.options.fileId && !validation_1.validation.isValidGuid(args.options.fileId)) {
203
+ return `${args.options.fileId} is not a valid GUID`;
204
+ }
205
+ if (args.options.principalId && isNaN(args.options.principalId)) {
206
+ return `Specified principalId ${args.options.principalId} is not a number`;
207
+ }
208
+ if (args.options.roleDefinitionId && isNaN(args.options.roleDefinitionId)) {
209
+ return `Specified roleDefinitionId ${args.options.roleDefinitionId} is not a number`;
210
+ }
211
+ const principalOptions = [args.options.principalId, args.options.upn, args.options.groupName];
212
+ if (!principalOptions.some(item => item !== undefined)) {
213
+ return `Specify either principalId, upn or groupName`;
214
+ }
215
+ if (principalOptions.filter(item => item !== undefined).length > 1) {
216
+ return `Specify either principalId, upn or groupName but not multiple`;
217
+ }
218
+ const roleDefinitionOptions = [args.options.roleDefinitionId, args.options.roleDefinitionName];
219
+ if (!roleDefinitionOptions.some(item => item !== undefined)) {
220
+ return `Specify either roleDefinitionId or roleDefinitionName`;
221
+ }
222
+ if (roleDefinitionOptions.filter(item => item !== undefined).length > 1) {
223
+ return `Specify either roleDefinitionId or roleDefinitionName but not multiple`;
224
+ }
225
+ return true;
226
+ }));
227
+ }, _SpoFileRoleAssignmentAddCommand_initOptionSets = function _SpoFileRoleAssignmentAddCommand_initOptionSets() {
228
+ this.optionSets.push(['fileId', 'fileUrl']);
229
+ };
230
+ module.exports = new SpoFileRoleAssignmentAddCommand();
231
+ //# sourceMappingURL=file-roleassignment-add.js.map